  We consider the problem of data exchange by a group of closely-located
wireless nodes. In this problem each node holds a set of packets and needs to
obtain all the packets held by other nodes. Each of the nodes can broadcast the
packets in its possession (or a combination thereof) via a noiseless broadcast
channel of capacity one packet per channel use. The goal is to minimize the
total number of transmissions needed to satisfy the demands of all the nodes,
assuming that they can cooperate with each other and are fully aware of the
packet sets available to other nodes. This problem arises in several practical
settings, such as peer-to-peer systems and wireless data broadcast. In this
paper, we establish upper and lower bounds on the optimal number of
transmissions and present an efficient algorithm with provable performance
guarantees. The effectiveness of our algorithms is established through
numerical simulations.
