I have the need to replicate specific blobs of data across basically the entire organization.. often. In the past we’ve been doing some fairly smart yet still unicast methods of distributing the data. However, the sheer number of machines is making our current algorythm feel the pain. The obvious answer is multicast, or at least, broadcast, the data.

It seems that multicast tools for file replication are still at a stage of infancy. After digging around, I did find a tool that came close to what I needed - a tool called “udpcast”. First, strengths: 1, it seems to work (!). 2, it is simple to implement, and folks know I happen to like simple. 3, license is friendly for my work environment.

It has FEC built in (forward error correction), so we can simply spew it into the broadcast ethernet network and anyone who’s listening, can take it. If they mangle or drop a packet, they are still likely to get the entire package, due to the built in redundancy. And, for our purposes, if we don’t get it, well, it is not the end of the world. We’ll get it next time.

On the downside, it seems to have no security paranoia. It has no resource limits for maximum size of the output file, and handles timing out poorly. It also moves just one blob of data, so you’re likely to pass a tarball or something around. Given that there is no authentication and any host on the net can blast packets, one has to add in data validation.

Overall, though, this tool does seem to show promise…

[permalink] · Blog ·