# An Adaptive Hierarchical Hybrid Multicast Based on Information-Centric Networking
## 1 Introduction  
With the development of the internet, people are more concerned about information itself rather than where to obtain it. A large number of information-centric services have emerged, such as software updates, video conferencing, multiplayer online games, distance education, and live broadcast. These services put forward scalable communication needs from an information producer to many interested information consumers. Due to the advantages of saving network and server resources, multicast is more suitable for these services than unicast. However, traditional IP multicast methods (such as PIM-SM [1], DVMRP [2], SSM [3], etc.) need to establish a stateful delivery tree for each group, and on-tree routers need to maintain the multicast forwarding state. The number of multicast forwarding states increases with the number of groups, which limits the scalability and adoption of traditional IP multicast methods [4]. In order to improve the scalability, some stateless multicast methods (such as Xcast [5], DOM [6], BIER [7], etc.) are proposed. For each group, the stateless multicast establishes a stateless delivery tree, in which the root node encapsulates destinations into the multicast packet header, and intermediate nodes directly forward the multicast packet according todestinations in the header without the need to maintain the forwarding state. However, there are still some problems in stateless multicast. First, the root node needs to track destinations information and attach destinations information into the header for the multicast packet, which brings a huge load to the root node. Second, the intermediate router needs to process the destinations information in the header when forwarding the multicast packet, which increases the forwarding cost. Third, the header size increases with the group size, which increases bandwidth consumption. As the most representative stateless multicast method, BIER [7] encodes the destinations into a bit string to reduce the header length. However, when the network size is larger than the length of the bit string, BIER needs to divide destinations into different Set Identifiers (SIs) and copy a packet for each SI, which leads to packet redundancy [8]. In addition, both stateful multicast and stateless multicast forward multicast flow from the root node to a set of receivers along the shortest path tree, which leads to overload of some nodes and links. Information-Centric Networking (ICN) [9; 10; 11] was proposed to meet the new requirements of the internet and transmit information more efficiently. Some clean-slate ICN methods use the name-based routing mechanism [12], such as Named Data Networking (NDN) [13]. Due to the need for routers to store a large amount of routing states of information objects, the scalability of these methods is low. Besides, these ICN methods cannot be deployed on a large scale due to the high deployment costs [14]. Some other ICN methods (such as MobilityFirst [15]) that use the name resolution mechanism can coexist with existing IP networks to achieve incremental deployment [16]. These methods use a name resolution system (NRS) to map names to locators and then route requests to the source based on the locator. In this paper, we propose an adaptive hierarchical hybrid multicast (AHHM) approach based on ICN to improve the scalability of multicast. AHHM is designed as a two-layer structure, in which the upper layer establishes a stateful main tree and the lower layer establishes several stateless sub trees. To balance the forwarding overhead and forwarding states, AHHM uses the stateless mode on routers with more states and uses the stateful mode on routers with fewer states. By adaptively adding stateless sub trees rooted at different MJNs, the destinations information that needs to be tracked is balanced to different roots of sub trees. The router on the main tree is defined as the multicast join node (MJN). AHHM uses the NRS to maintain the mapping between each multicast group name and MJNs.