How to update a large network of computers
noodle: http://en.wikipedia.org/wiki/BitTorrent (i would link to the protocol but the link doesn't show up correctly here)there are probably better options, but this one is already implemented and likely wouldn't be that hard to make work for your situation.  might require you writing something yourself to suit your needs, or you might be able to find a turnkey solution.