A Peer-to-Peer Tree Based Reliable Multicast Protocol.
Min Yang, Yuanyuan Yang · 2006
Reliable multicast is critical to multicast based applications as it provides reliability over the unreliable network. Although the prima- ry function of reliable multicast is loss recovery and flow control which are similar to that of reliable unicast, the inherent property of multicast that multiple receivers coexist in one multicast session imposes new challenges such as acknowledge implosion and poor scalability. Among existing reli- able multicast protocols, tree based reliable multicast protocols can achieve the reliability in a scalable fashion. They group the receivers into a hierar- chy called the ACK tree and the ACK/NACK messages and retransmitted packets are transmitted between adjacent levels. Since current tree based reliable multicast protocols construct the ACK tree based on the multicast tree which is constructed by the multicast routing protocol, the protocol performance greatly depends on the multicast tree. In this paper, we pro- pose a peer-to-peer (P2P) tree based reliable multicast protocol which con- structs the ACK tree in a flexible way as the multicast tree is constructed in a P2P system. In our protocol, any two receivers can be adjacent nodes in the ACK tree. The ACK tree construction process is based on a heuris- tic function which is designed to minimize the retransmission delay. The child node sends ACK/NACK to the parent node and receives retransmit- ted packets from the parent node. Our protocol uses window based flow control. The window in the parent node will not advance unless the parent node receives all the ACKs from its child nodes. We conducted extensive simulations to evaluate the protocol. The simulation results show that our protocol achieves good scalability with low retransmission delay and high throughput.