Revisiting Optimization Based Rate Allocation for Application Layer Multicast : Distributed Model and Approaches

Multicast is an efficient method to deliver data to a large number of receivers. In this paper, we revisit the topic of distributed and optimal rate allocation in application layer multicast. First, we propose a fully distributed network model based on our observation and assumptions, and form an optimization problem to maximize the aggregate utilities of all receivers. Second, we propose a novel primal approach an d a typical dual approach as well as the accordingly designed algorithms that solve the optimization problem. Third, we extend the algorithms to an asynchronous setting to match the reali ty of large networks. Finally, we evaluate the performance of t he proposed two algorithms in terms of aggregate utility, time complexity (convergence rate), and messaging complexity. Extensive experiments show that both proposed algorithms genera te minimal messaging overhead, and that they are optimal in ter ms of overall utility for multicast applications. I. I NTRODUCTION IP multicast is a networking technology, addressing the problem of efficient delivery of data over the Internet to a la rge number of receivers. Application examples using multicast technologies are real-time IPTV, distance learning and onl ine game, etc. Unfortunately, IP multicast is still not yet wide ly deployed in the public Internet, mainly due to technical and commercial deployment issues in the inter-domain multicas case. To overcome the deployment problems, a new type of multicast solution was developed: application-layer mult icast ([4], [5] and its references)or overlay multicast. In appli cat onlayer multicast, end hosts implement the multicast functio nality without relying on the support from the underlying IP routers. In addition, application-layer multicast enable s the flexibility of adding higher layer functionality, such as ra te scaling at intermediate nodes. To deal with the diverse and changing network conditions for the multicast streaming channel, rate control protocol s are used to adapt the sending rate such that the current availabl e network resources are neither overloaded nor underutilize d. However, in existing rate control approaches for applicati on layer multicast, intermediate nodes determine the downstr eam rate without considering the application quality and infor mation from neighbor and parent nodes. For example in End System Multicast [4], the rate for each flow is calculated locally using the unicast TCP-friendly rate control algori thm (TFRC) [1], considering neither the structure of the multic ast tree nor the streaming quality. Moreover, for rate allocati on algorithms to be efficient, they have to be fully distributed o allow the multicast sessions to scale up to very large sizes. Therefore, the challenge is to develop timal and distributed rate allocation algorithms for multicast sessions, with the goal to optimize the overall utility of all receiving nod es. In the mean time, these algorithms have to minimize the messaging overhead in the multicast tree. It is commonly believed that application data could be sent multiple times over the same physical link in application la yer multicast [5][24][4]. In particular, bottleneck links may be shared by different level nodes in the tree. Contrary to this common sense, our observation is only sibling flows may traverse the same physical links. In other words, flows were n ot going through the same physical links with non-sibling flows (such as with their parent flow, children flows or uncle flows etc.). Based on this observation, we propose a fully distributed network model for application layer multicast sessions usi ng a utility-pricing model [2][13][18], which was proposed as an analytical tool for rate allocation mechanisms. We also formulate and solve an optimization problem to optimize the aggregate utility for the multicast session. Specifically, we describe two approaches that solve the optimization proble m, namely an originally proposed primal algorithm (a feasible direction algorithm) and a typical dual algorithm. Note tha t the algorithms solely rely on the coordination of neighbour nod es and do not require IP routers to compute and communicate link prices. With the help of extensive experiments, we evaluate and compare the performance of the proposed primal and the dual algorithm in terms of aggregate utility, time complexi ty (convergence rate), and messaging complexity. We summariz e the properties of the two algorithms: 1) Both algorithms maximize the overall utility in the multicast tree; 2 2) The dual algorithm converges faster but introduces oscil lations whereas the primal algorithm converges slower while being more stable; 3) Most importantly, both algorithms are fully distributed with the very small messaging overhead and thus, in terms of message complexity, are more applicable for large multicast systems. The rest of this paper is organized as follows. In section II, we briefly review the related work in rate allocation for IP multicast and application layer multicast. In section II I, we introduce in great detail the distributed and optimal rat e allocation for multicast sessions including the network mo del, the primal and the dual algorithm. We extend the algorithms t o asynchronous environments which better reflects the realit y of large networks in section IV. Section V presents the evaluat ion and comparison of algorithms and validation of assumptions . Finally, we conclude the paper in section VI.