A system and method for data distribution is disclosed. A bulletin board
is employed to maintain a list of requests from nodes in the system. The
requests indicate data requested and identify the node making the
request. Nodes are able to post requests for data as long as they
maintain a minimum performance level. Additionally, the nodes
periodically check in with the bulletin board and receive the list of
requests from the bulletin board. On determining to satisfy a particular
request by a node, the node (serving node) contacts a requesting node
(identified in the request) and transfers the requested data to the
requesting node. After successful completion of the transfer, the
requesting node reports to the bulletin board that the node has filled
the request and the request is removed from the list of requests.