<figure><img src="image_1.png" /></figure>

HAL
open science

# Novel Branching-Router based Multicast Routing Protocol with Mobility Support

Zhiwei Yan, Jong Hyouk Lee, Sean Shen, Chunming Qiao

► To cite this version:

Zhiwei Yan, Jong Hyouk Lee, Sean Shen, Chunming Qiao. Novel Branching-Router based Multicast Routing Protocol with Mobility Support. IEEE Transactions on Parallel and Distributed Systems, 2012, 24 (10), pp.2060-2068. 10.1109/TPDS.2012.305. hal-00948360

HAL Id: hal-00948360

https://hal.science/hal-00948360

Submitted on 14 Jun 2021

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Novel Branching-Router-Based Multicast
Routing Protocol with Mobility Support

Zhiwei Yan, Jong-Hyouk Lee, Sean Shen,
and Chunming Qiao

**Abstract**—To cope with challenging problems faced by traditional multicast routing protocols, many branching-router (BR)-based multicast routing schemes with desirable features have been proposed. However, the current BR-based methods still lack efficient multicast management and suffer from a long join latency, leading to a disappointing mobility performance. In this paper, we propose a novel BR-based multicast architecture with a corresponding multicast routing protocol supporting multicast receiver mobility. In the proposed multicast architecture, a new management entity called multicast controller (MC) is used to handle most of the multicast management-related tasks, while other routers in the network construct a multicast tree according to the proposed Branching-Router-based Multicast routing protocol with Mobility support (BRMM). Besides, the fast handover of multicast service can be supported by BRMM through the pre-establishment of temporary multicast paths. Through extensive simulation and analysis, we show that BRMM outperforms existing protocols and has many other attractive features.

**Index Terms**—Multicast, mobility, branching router

## 1 INTRODUCTION

MULTICAST is a term associated with the network support for efficient data delivery to multiple interested recipients. Its service model is defined as follows: Let $H$ be the set of all IP hosts and $E_G$ be a subset of $H$, set $E_G$ forms a multicast group with a group identifier known as its address $G$, if and only if:

* members of $H$ may join and leave $E_G$ at any time;

* members of $H$ can communicate unidirectionally with all members of $E_G$, using only $G$. This requirement suggests that a host does not need to be a member of a multicast group to send data to that particular group.

Efficient multicast places the least amount of burden on network and end-host resources when compared with other methods to disseminate data to a group of recipients. The demand for multicast communication from networking applications has been growing at an accelerated pace. For instance, video conferencing, online gaming, software distribution, and so on, can all benefit from multicast.

With traditional multicast routing protocols, a router on a multicast tree maintains forwarding-state information for

a multicast group to determine how to forward multicast packets for the group, even if it is not a member router. Since a router may be on multiple multicast trees and the forwarding-state information for each multicast group may often change as well, scalability problem is a serious concern.

To reduce forwarding states at non-branching routers (non-BRs) and to address the scalability problem of traditional multicast routing protocols, several BR-based schemes have been proposed [1], [2], [3], [4] (their detailed descriptions can be found in Appendix A, which can be found on the Computer Society Digital Library at http://doi.ieeecomputersociety.org/10.1109/TPDS.2012.305). A common goal of such schemes is to release some intermediate routers from maintaining multicast related states. Then, a multicast tree is identified by its branching points, and data are delivered from one branching point to another using native unicast routing protocols. The main motivation here is that in a typical sparse multicast tree, the majority of routers are relay routers that forward incoming packets to the same outgoing interface. In the BR-based protocols, only BRs keep multicast forwarding table (MFT) entries and all non-BRs forward multicast data packets use unicast forwarding. As a result, these protocols require less memory than the traditional approaches. The BR-based multicast has many other important features such as incremental deployability, high tree availability, no need for domain-wide address allocation mechanisms, possibility of performing access control at a sender's site, and tree construction in the forwarding direction. Among them, incremental deployability is a vital feature. More specifically, traditional multicast routing protocols require every router in the network to implement the protocol functionalities. In contrast, BR-based protocols have native support for incremental deployment. Since all packets have unicast destination addresses, routers that do not implement the protocol will forward the packets in unicast manner. In

* Z. Yan and S. Shen are with the China Internet Network Information Center, Computer Network Information Center, Chinese Academy of Sciences, Beijing 100190, P.R. China.
E-mail: {yanzhiwei, shenshuo}@cmic.cn.

* J.-H. Lee is with the Department of Computer Software Engineering, Sangmyung University, Cheonan, 330-720, Republic of Korea.
E-mail: jonghyouk@ieee.org.

* C. Qiao is with the Department of Computer Science and Engineering, State University of New York at Buffalo, Buffalo, NY 14260-2000.
E-mail: qiao@cse.buffalo.edu.
other words, although a router cannot act as a BR, it still can
take part in multicast data distribution.

Although the BR-based multicast protocols outperform the conventional multicast approaches in many aspects, several challenges are still open. By building upon the prior work, a comprehensive and novel multicast architecture is proposed in this paper to improve the multicast efficiency, management, mobility, and so on. In the proposed multicast architecture, a multicast controller (MC) is deployed for multicast management. It uses multicast identifiers (MIs) that contain more information than the traditional multicast IP addresses. Based on this multicast architecture, the Branching-Router-based Multicast routing protocol with Mobility support (BRMM) is also proposed. In BRMM, four types of signaling messages are used to establish and maintain the shortest path tree (SPT) of the multicast routing. To speed up the multicast join process and support the fast mobility of multicast receivers, a temporary state is used to immediately transmit the multicast packets to the receiver once its handover is finished. From simulation and analysis results, we find that our proposed BRMM outperforms other existing protocols from many aspects and thus is a promising scheme for both fixed and mobile multicast services.

The rest of this paper is organized as follows: In Section 2, the proposed BR-based multicast architecture and protocol are presented. Then, in Section 3, simulation results are presented in which BRMM is compared with NBM and SEM. Section 4 concludes this paper. Note that the supplement of this paper contains the following: 1) related work on the existing IP multicast routing protocols and schemes in Appendix A, available in the online supplemental material; 2) examples of BRMM's multicast tree construction and maintenance in Appendix B, available in the online supplemental material; and 3) performance metric analysis in Appendix C, available in the online supplemental material.

# 2 BRANCHING-ROUTER-BASED MULTICAST ROUTING PROTOCOL WITH MOBILITY SUPPORT

In this section, we first describe our design requirements of BRMM and then present its architecture and operations in detail.

## 2.1 Requirements

The proposed BRMM fulfills the following requirements:

*   **Fast join and leave:** The receiver who wants to enjoy the multicast service and the receiver who moves during the multicast session could receive the multicast packets as soon as possible. Besides, the router should immediately stop sending packets to the receiver who wants to leave the multicast group.

*   **Minimize the signaling cost:** To construct and maintain the multicast tree, the signaling messages are necessary. However, the signaling message exchange should be simple and the cost should be as low as possible.

<figure><img src="image_3.png" /><figcaption>Fig. 1. Proposed multicast architecture.</figcaption></figure>

*   **Efficient packet transmission:** Packets have unicast destination addresses. The routers that only act as BRs for a specific group are responsible for creating packet copies with modified destination addresses. Besides, the multicast packets should be transmitted through the SPT from the source to the receiver.

*   **Comprehensive multicast management:** Strict multicast source and receiver management and multicast quality of service (QoS) can be easily deployed. In this way, the direction and scope of multicast data propagation can be controllable as far as the large number of multicast data is concerned.

## 2.2 Multicast Architecture

Fig. 1 illustrates the proposed multicast architecture. It has three different types of entities: BR, non-BR, and MC. The BR is responsible for receiving the multicast packets from an upstream BR (uBR) and transmitting them to a downstream BR (dBR) in a unicast manner. The non-BR has no multicast related tasks but only transmits packets as an ordinary router does.

To manage the multicast service, the MC is deployed and is responsible for multicast management-related tasks such as multicast address management, authentication of multicast service, and group membership management. Each MC may be owned by an Internet service provider (ISP), who provides multicast services and centralizes most of the service management related tasks on the MC. For simplicity, BRMM's operation procedures are illustrated in this paper as an intradomain multicast routing protocol in which just one MC would be deployed. However, as an ISP may own more than one MC for serving their customers in different geographic regions, BRMM can be extended as an interdomain multicast routing protocol with the support of cooperation between different MCs. Besides, an MC may be extended to perform other necessary tasks if needed, such as transmission bandwidth management and traffic scheduling [5].

## 2.3 Management of Multicast Service

The architecture shown in Fig. 1 provides a multicast management model so that multicast services become more controllable, manageable, and operable. Below, we describe its main functional aspects in terms of multicast address allocation, and multicast source management, multicast receiver management.
<table><caption>Fig. 2. Format of MI.</caption><thead><tr><th>MAC Address of Source</th><th>Group ID</th><th>Service</th><th>Priority</th><th>Reserved</th></tr></thead><tbody><tr><td>48-bit</td><td>16-bit</td><td>8-bit</td><td>8-bit</td><td>48-bit</td></tr></tbody></table>

### 2.3.1 Multicast Address Allocation

A multicast source is a content server that sends multicast information in a relatively fixed period. Thus, a multicast source should be dynamically allocated a multicast address to send a specific type of multicast flow. The MC manages the allocation and reclamation of multicast addresses denoted by multicast identifiers. It allocates a specific MI when a multicast service is requested for creation and reclaims the MI when the service is requested for termination to guarantee no conflicts between various multicast flows.

Fig. 2 shows the format of MI. It does not only differentiate multicast services as it contains extended information. In particular, an MI is 128-bit long and has five parts:

* To present the source, its media access control (MAC) address is contained in the MI as the 48-bit "MAC of source" field.

* The second part is the 16-bit "Group ID" field that identifies a special group provided by the same source.

* The third part is the 8-bit "Type of service" field of this multicast group, such as video conferencing, online game, software distribution, and so on.

* The fourth part is the 8-bit "Priority" field of this multicast service. In this way, the BR can differentiate the service and apply multicast QoS policy. A larger value of "Priority" means a more urgent service and should be allocated more resources for the multicast service supporting.

* The last part is the 48-bit "Reserved" field for the future extensions.

### 2.3.2 Multicast Source Management

The edge router in the Internet should have the responsibility to cooperate with the MC for the multicast service management.

We assume that the access router (AR) at the source node is the first router to forward the multicast packets from the source, and it may support the wired or wireless access. The AR of the source can use a configuration file containing authentication result, service duration time, service type, and so on to filter the packets to manage the multicast source. In particular, before a multicast service is created, the multicast source must submit a request to its AR. When the AR receives that request, it should redirect that request message to the MC for the source authentication. After the successful source authentication, the MC assigns an MI and a permitted duration time for this source. The MC then configures these parameters as an entry of multicast source authority list. In addition, the MC returns the authentication result to the AR that will establish the configuration file. When a multicast service is terminated by the source, the source must submit a request again, asking the MC to reclaim the MI and the timer.

<table><caption>Fig. 3. Format of BRMM message header.</caption><thead><tr><th>BRMM Version</th><th>Type</th><th>B</th><th>Timer</th><th>Checksum</th></tr></thead><tbody><tr><td colspan="5">MI</td></tr><tr><td colspan="5">Address of the dBR</td></tr><tr><td colspan="5">Address of the uBR</td></tr><tr><td colspan="5">Address of the parent of the uBR</td></tr></tbody></table>

### 2.3.3 Multicast Receiver Management

The AR of the receiver is also responsible for performing authentication and authorization to the receiver who wishes to enjoy a multicast service to control the multicast receiver and to collect accounting information. The authentication and authorization of a multicast receiver must ensure that only the requested and authorized multicast receivers can receive the multicast traffic over the network.

The AR must detect the join message originated by the receiver to perform the multicast join. When detecting that a receiver sends a leave message or learning via the timer that a receiver leaves a multicast group, the AR stops forwarding the traffic to the receiver and reports the leaving state and accounting information to the MC.

## 2.4 BRMM Routing

In BRMM, four types of signaling messages are defined: Join, Tree, Select, and Leave. The basic message header of BRMM is illustrated in Fig. 3. When it is used in the signaling message, it should be examined hop by hop unless the router is not BRMM capable. The header also acts as an extended routing header contained in the multicast packets. In this case, it is only examined by the destination node, which is either a BR or a receiver.

The 4-bit "BRMM Version" field denotes the protocol version. The 3-bit "Type" field denotes the four types of the signaling messages:

* 001 is for the Join message, which is sent from the receiver to the source and used for the multicast tree establishment and multicast state refreshment.

* 010 is for the Tree message, which is sent from the source to the receiver and used as the response of join message.

* 011 is for the Select message, which is used to reselect the BR.

* 100 is for the Leave message, which is sent from the receiver to the source for the multicast termination.

The "B" field is a 1-bit flag identifying whether the node sending the message is a BR: 1 denotes "yes" and 0 denotes "no." The "MI" field denotes the associated multicast service, and the last three fields are the addresses of the related dBR, uBR and ancestor uBR, respectively.

To construct the multicast tree and forward the multicast packets accordingly, every BR maintains a multicast state table (MST) as shown in Fig. 4. The "S" field is the source address of this multicast service. The "MI" field is used to identify the multicast service. To aggregate the multicast state, the receiver's AR (called AR for simplicity in the following description) acts as a BR when at least one receiver in its subnet joins the multicast group. In this way,
<figure><img src="image_4.png" /><figcaption>Fig. 4. MST of BR.</figcaption></figure>

the AR is the BR at the lowest layer. The "Timer0" field is only used by the AR to refresh the SPT. Before the timer in the "Timer0" field expires, the AR should send a Join message to the source presented in the "S" field to refresh the SPT. The "uBR" and "dBR" fields are the addresses of upstream BR and downstream BR of this BR, respectively. The addresses of uBR and dBR are learned during the multicast join process. Corresponding to uBR and every dBR in the MST, each timer in the "Timer1" and "Timer2" fields is used to update the corresponding states.

Besides, the "T" flag field is maintained in the entries of dBR list. When a BR receives the Join message from an AR, the BR adds it to the dBR list and sets the "T" flag to 1 first, and then the BR starts to transmit packets to the AR temporarily. When the timer at the "Timer2" field expires and the BR receives no Tree/Join message, the state is deleted and the BR stops transmitting packets to the dBR.

If the Tree message sent to the AR is received by the BR before the timer in the "Timer2" field expires, the BR recognizes that the SPT to the AR traverses itself. Then, the BR sets the "T" flag to 0 and continues to send packets to the AR. If another Join message is received before the timer of the "Timer2" field expires and the BR finds that the SPT to the AR is still not established, the BR maintains "T" flag to be 1 and continues to send packets to the AR because that means the SPT establishment for the new joiner is failed. If the BR cannot receive the Tree message after three times of the timer duration, the state of AR is deleted and the BR stops transmitting packets to the AR.

## 2.4.1 Multicast Join Process

When a receiver wants to subscribe to a multicast group identified by the MI field, it sends out a Join message to its attached AR. When the AR receives the *Join(0,MI,MN)* message (for simplicity, we only consider three parts in a signaling message: B flag, MI, and Address of dBR), it recognizes that a receiver as the mobile node (i.e., MN)<fnref n="1" /> want to join the group identified by the MI. Then, the AR reconstructs a Join message as *Join(1,MI,AR)* and sends it to the source if the AR has no state of the multicast group. The address of the source is learned during the receiver authentication process, which is stored in the MC as the "MI → Multicast source IP" mapping entry.

When the first BR in the reverse path receives the Join message from the AR, it adds the AR into the dBR list and sets the corresponding "T" flag to 1. At the same time, the BR forwards the Join message to the source. When the source receives this message finally, it realizes that the AR wants to join the group identified by MI. Then, the source checks whether the outgoing interfaces of this AR and its current dBR (C-dBR) are identical (initially, the first AR who joins the multicast group is the first C-dBR of the

<figure><img src="image_5.png" /><figcaption>Fig. 5. Process of Tree message.</figcaption></figure>

source). If not, the source recognizes that the AR should act as a new BR. Then, the source sends the Tree message to the AR to construct the SPT from the source to the AR. At the same time, the C-dBR of the source is carried in the Tree message.

All the BRMM capable intermediate routers should refresh their dBR and uBR lists when they act as BRs after the operations illustrated in Fig. 5, which are described below.

The intermediate router R in Fig. 5 first checks whether it is the C-dBR when the Tree message arrives. If the intermediate router is the C-dBR and the AR is not stored in its dBR list, the intermediate router will check whether there is dBR in its dBR list has the same outgoing interface with the AR. If so, a new branch may exist in the downstream and then the intermediate router replaces the C-dBR with the dBR in the Tree message. Otherwise, it means that the AR is a new branch, and the intermediate router thus inserts the AR into its dBR list directly. If the AR is already in its MST and the "T" flag set as 1, the intermediate router changes the "T" flag set to be 0.

If the intermediate router is not the C-dBR, it checks whether the outgoing interfaces of the AR and the C-dBR are the same. If not, the intermediate router takes itself as a new BR of the C-dBR and the AR. In addition, the intermediate router first sends a Select message to uBR (the source address of the Tree message) to announce its self-selection to be the new BR. When the uBR receives this Select message, it updates its C-dBR to be this intermediate router. Furthermore, the intermediate router continues sending the Tree message to the AR to construct the SPT. A Tree message is also sent to the old C-dBR to update the old C-dBR's MST because the intermediate router acts as the new uBR of the old C-dBR from now on.

When the AR and the old C-dBR receive the Tree messages finally, the C-dBR in the current Tree message is inserted to their uBR lists. When uBR receives the Select message, it refreshes its dBR list and replaces its C-dBR with the intermediate router.

An example is given in Appendix B, available in the online supplemental material, to illustrate the procedure in detail.

## 2.4.2 Multicast Leave Process

When the MN wants to leave the multicast group identified by the MI, it sends a Leave message to the attached AR. The AR then stops the packet transmission to the MN and sends

<footnote n="1">1. To visually describe the procedure of BRMM when the receiver is a mobile terminal, we here use the term, mobile node, to uniformly denote the multicast receiver.</footnote>
<figure><img src="image_6.png" /><figcaption>Fig. 6. Process of Leave message.</figcaption></figure>

another Leave message to the MC. In the leave message, the "Timer" field contains the serving time of the MN. When the AR finds that there is no attaching node in the multicast group, it sends a Leave message to its uBR.

When AR's uBR receives the Leave message, the process shown in Fig. 6 is performed. For instance, it finds that the AR should not act as a BR anymore and thus deletes the AR from its dBR list. If there is only one dBR (denoted by BR1 in Fig. 6) left in the dBR list after the deletion of the AR, it should not act as a BR anymore and then it reconstructs a Select message and sends to its uBR. In the Select message, the address of BR1 is contained. When the uBR receives the Select message, it will update its dBR list accordingly to contain the BR1 as its dBR.

### 2.4.3 Packet Delivery

When the source starts sending packets, the state of the corresponding MI is examined. A packet is directly forwarded to the dBRs of the source in unicast manner. When the subsequent dBRs receive the packet, the same operation is repeated. Thus, if a router receiving the packet is not the dBR nor BRMM capable, the BRMM header is not examined. The router thus forwards the packet to the specified destination in a unicast manner.

### 2.4.4 Tree Maintenance

When the Tree message travels from a source to a receiver, the multicast state is constructed in the related BRs. After this process, the multicast tree should be refreshed periodically to keep it alive and timely detect the failure cases.

After the shortest path is established from a source to a receiver in BRMM, the receiver sends out the Join message to the AR to update its state actively, or the AR queries the state of the receiver passively as specified in Internet group management protocol (IGMP) or multicast listener discovery (MLD). The signaling message sent to the dBR is a Tree message to refresh the state of the "Timer1" field. When the state is not refreshed for three times of the timer duration in the "Timer1" field, the dBR considers that the path fails and the dBR sends out a Join message directly to its ancestor (i.e., parent of its uBR), and then the process just becomes as the new join of dBR. The timer in the "Timer0" field of the AR is used to refresh the SPT from the source to the AR. In this way, the AR actively sends a Join message to the source to adapt the topology change and the shortest path change. The responded Tree message refreshes the states of the bypassed BRs and the shortest path can be updated. So, the timer value in the "Timer0" field is longer than that in the "Timer1" field to decrease the signaling cost.

<figure><img src="image_7.png" /><figcaption>Fig. 7. Mobility support in BRMM.</figcaption></figure>

This scheme maintains the BRMM tree recursively. The link failure can be detected and multicast tree can be reconstructed as soon as possible. At the same time, the SPT can always be refreshed. An example is presented in Appendix B, available in the online supplemental material.

### 2.4.5 Mobility Support

The basic operation of the mobility support in BRMM is illustrated in Fig. 7. When the MN moves from AR1 to AR2, BRMM employs a link layer (L2) movement detection to predict the MN's next location. As shown in Fig. 7(1), once the MN enters an overlapped area of the boundary cells of two subnets, it receives an L2 beacon from a new access point (AP) as shown in Step 1. Immediately, the MN notifies the current AR (i.e., AR1) about the possible handover by sending a handover initiate signaling message, which contains the MAC address of the new AP as shown in Step 2. Note that in this case, the MN is not yet connected to the radio link of the new AR (i.e., AR2) and is still connected to the old AP. Hence, when AR1 receives the handover initiate signaling message, it sends a Join message to its uBR instead of AR2 to join the multicast group identified by the MI and the address of AR2 is contained in the Join message as shown in Step 3.

When the uBR receives this message, it recognizes that AR2 wants to join the multicast group identified by the MI. Then, AR2 is added into the dBR list of the uBR and the "T" flag is set to 1, because AR2 is not contained in its current dBR list. Besides, as shown in Step 4, the uBR sends a Join message to the source to establish AR2's SPT in advance. At the same time, the uBR sends the multicast packets and a Tree message to AR2 as shown in Step 5. Because the MN is not attached to AR2 at this moment, the multicast packets are buffered at AR2. Note that the size of the buffer is dependent on the special configuration and QoS policy. Specifically, the L2 handover is first launched by the MN as shown in Fig. 7(2). The MN then attaches to the new AP and sends the Join message to AR2 as shown in Step 6. After that, AR2 checks the state of the multicast group identified by the MI. Since AR2 has the multicast state corresponding to the MI, the following packets can be forwarded to the MN.

As shown in Step 7, AR2 waits for the Tree message sent from the source. At the same time, it refreshes the temporary state in the uBR to receive the packets from the uBR continually. After receiving the Tree message sent from the source as shown in Step 8, AR2 stops the refreshment of multicast state and the following packets are transmitted
<table><caption>TABLE 1
Simulation Scenarios</caption><thead><tr><td>Scenario</td><td># of routers</td><td># of leaf nodes</td></tr></thead><tbody><tr><td>scenario 1 (200 nodes)</td><td>147</td><td>53</td></tr><tr><td>scenario 2 (2000 nodes)</td><td>1470</td><td>530</td></tr></tbody></table>

through the SPT. The BR will delete the temporary state of AR2 after the timeout or after receiving the Leave message sent from AR2.

BRMM may provide a significant reduction in the handover latency of mobile multicast because the current BR is used as a temporary uBR and also achieve a similar effect as the approach presented in [6], which dynamically recognizes mobility. In other words, the optimized mobility performance of BRMM depends on the density of the serving BRs. When there are many serving BRs, the average distance between the uBR and new AR is short and the MN can be served more quickly. However, the handover process of the MN is just the new join process when the previous AR (i.e., AR1) and new AR (i.e., AR2) have no common BR except the source node in the extreme case.

# 3 SIMULATION AND ANALYSIS

In this section, we evaluate the performance of BRMM and compare it with existing schemes. We mainly study the performance improvement of BRMM compared with NBM [3] and SEM [4], because all the three schemes are completely BR-based schemes. The introduction of NBM and SEM with other multicast schemes is provided in Appendix A, available in the online supplemental material. The related performance metric analysis and calculation are given in Appendix C, available in the online supplemental material. The simulation study was conducted in NS v2.31 [7], and we separately implemented the SEM, NBM, and BRMM under the Agent of NS v2.31.

## 3.1 Simulation Scenarios

The topology is randomly generated using nem [8], and the average node degree of generated topology is fixed at 3.5. To study the protocols in different cases, we set up two different simulation scenarios with 200 and 2,000 nodes separately as shown in Table 1. Without loss of generality, we assume that only one receiver is connected to each AR in the topology. The presence of one or many receivers

attached to an AR through IGMP or MLD does not influence the cost of the tree, so we do not consider the aggregation provided by the multicast service at the local network level. We chose a single and fixed node to act as the multicast source and each member would join the multicast session at different random time. The identities of the group members (i.e., the source and receivers) were selected randomly in each simulation run. We run each simulation scenario for 50 times and present the average results for different protocols.

## 3.2 Cost of Tree Maintenance

Figs. 8a and 8b show the tree maintenance cost in each scenario separately.

As shown in Figs. 8a and 8b, the local refreshment of NBM consumes the least number of refreshing messages. When the number of receivers is very small, the three schemes consume the similar number of signaling messages because the aggregation degree is low in this case, and the local refreshment is nearly equal to the refreshment from the receiver to the source. However, with the increasing of the joined receivers, the local refreshment can save more signaling messages because the number of BRs increases.

Although BRMM consumes less signaling messages compared with SEM owing to the decreased number of refreshments from the receiver to the source, it still consumes more signaling messages compared with NBM for the SPT refreshment process.

## 3.3 Cost during the Multicast Join

Figs. 8c and 8d show the cost for the multicast join in the 200 nodes and 2,000 nodes scenarios separately. The density of multicast refers to the ratio between the joined number of routers and the total number of routers [9].

The increased value of the multicast density means more receivers join into the same multicast group. As shown in Figs. 8c and 8d, the larger number of receivers means that the tree construction message is larger in SEM, which induces higher cost accordingly. In NBM, the optimized join process decreases the cost significantly because only the next BR has to be contained in the tree construction message. However, the join process has to be executed between the receiver and the source, although a bypassed router has joined the multicast group. So, the cost is almost maintained in an unchanged value. However, in the

<figure><img src="image_8.png" /><figcaption>Fig. 8. Tree maintenance cost and multicast join cost.</figcaption></figure>
<figure><img src="image_9.png" /><figcaption>Fig. 9. First join latency and handover latency.</figcaption></figure>

2,000 nodes scenario, more routers are deployed in the network. Then, the average hops between the leaf router and the source node increases, which induces higher cost. Then, the proposed BRMM utilizes the existing multicast routers to speed up the join process and cut down the cost during the join process. We can find from Figs. 8c and 8d, with the increase of the multicast density, the cost of BRMM decreases owing to the shortened path between the receiver and its nearest upper layer BR.

## 3.4 Latency

The following two kinds of latency, namely join latency and handover latency, are considered:

* For the receiver who joins the multicast group for the first time, the latency is defined to be the time from the moment that the receiver sends out the join message to the moment that the receiver receives the first multicast packet.

* For the receiver who changes its point of attachment from one AR to another AR, the latency is defined to be the time from the moment that it cannot receive any multicast packet from the old AR to the moment that it receives the first packet from the new AR [10].

### 3.4.1 Join Latency for the First Time

For NBM and SEM, the receiver must send a Join message uninterrupted to the source to join the multicast group. To establish the SPT from the source to the receiver, another signaling message should be sent from the source to the receiver so that the join process is completed. Accordingly, the join latency of NBM and SEM equals to the round trip time (RTT) between the source and the receiver. However, the join latency of BRMM equals to the RTT between the receiver and the nearest existing BR.

As shown in Figs. 9a and 9b, the join latency of BRMM is lower than that of NBM owing to the temporary join process. Besides, with the increasing of joined receivers, the average join latency of BRMM decreases owing to the shortened path between the receiver and the temporary uBR. However, the receivers always exchange the signaling message with the source to join the multicast group in NBM and SEM, and then the join latency is nearly unchanged with the number of joined receivers. Besides, due to the increased number of receivers, the join latency of SEM increases. The reason is that even when a single node joins

the multicast group, all the receivers have to be included in the signaling message sent by the source to refresh the multicast tree and the BRs, which causes the increase of processing latency.

Compared with the result shown in Fig. 9a, the join latency shown in Fig. 9b is higher due to the large topology with 2,000 nodes and the enlarged distance between the receivers and the source. The increasing rates of join latency with the increased number of receivers in SEM and NBM are more obvious in this result. That is because more receivers have to join the multicast group and heavier signaling messages should be processed. The average join latency of BRMM, NBM, and SEM is listed in Table 2. As shown, BRMM could reduce the join latency more than 20 percent compared with NBM and SEM.

### 3.4.2 Handover Latency for the Mobile Receiver

To evaluate the handover latency of an MN (i.e., mobile receiver), we assume that the last hop between the receiver and the AR is a wireless link, and every AR thus implements with AP functionalities. The latency and bandwidth of the WLAN link are set to 1 ms and 2 Mbps separately. In our simulation, the MN moves between two neighbor APs with the coverage of 100 m. To manifest the mobility performance of BRMM, we set different multicast densities in our simulation that denotes percentages of receivers joined the same multicast group.

Figs. 9c and 9d plot the results of handover latency in two scenarios, separately. As shown, BRMM can reduce the handover latency significantly with the increasing of the multicast density. That is because when the density of multicast is small, the distance between the uBR of previous AR and the new AR is far. However, with the increasing of the multicast density, more BRs exist in the network and the new AR can join the multicast group through the temporary uBR more quickly.

For SEM and NBM, there is no mobility support so that the handover requires a new join process for the MN.

<table><caption>TABLE 2
Average Join Latency</caption><thead><tr><td>Scenario</td><td>BRMM</td><td>NBM</td><td>SEM</td></tr></thead><tbody><tr><td>scenario 1</td><td>2.14 ms</td><td>2.68 ms</td><td>2.83 ms</td></tr><tr><td>scenario 2</td><td>2.39 ms</td><td>3.17 ms</td><td>3.44 ms</td></tr></tbody></table>
<figure><img src="image_10.png" /><figcaption>Fig. 10. Overhead of MC: Number of signaling messages processed by the MC versus number of receivers.</figcaption></figure>

Besides, more receivers exist in the larger scenario, so the handover latency of SEM induces longer handover latency compared with NBM as shown in Fig. 9d.

The handover latency seems to have no relationship with the density of multicast. However, the latency in the scenario 2 (2,000 nodes) is larger than that in the scenario 1 (200 nodes) due to the prolonged path between the receiver and the source.

## 3.5 Overhead of MC

The overhead of MC (i.e., the number of signaling messages processed by the MC) is studied here, and the simulation results are illustrated in Fig. 10.

When a new receiver wants to join the multicast group, the AR of the receiver corresponds with the MC for the new receiver's authentication and "MI → Multicast source IP" mapping query. When the receiver terminates the multicast service, the AR of the receiver reports the leaving state and accounting information to the MC.

As shown in Fig. 10, the overhead of MC proportionally increases when the number of joined receivers increases. In other words, the overhead of MC is increased as the multicast scope enlarges and the number of receivers increases. To avoid traffic jam around the MC, it is required that the MC should be capable of handling multiple multicast tasks simultaneously and processing the multicast management related information efficiently. One example is an adaptation of a multiprocessor or a cluster computer architecture [5].

## 3.6 Efficiency of the Multicast Path When a BR Fails

To efficiently transmit multicast packets, BRMM establishes the SPT from the source to the receiver as like SEM and NBM. However, SEM maintains the multicast path by periodically sending refreshment messages that cause heavy signaling load. In the case of NBM, the tree maintenance is locally processed and the signaling cost is thus reduced as shown in Figs. 8a and 8b, but it does not always guarantee the shortest path from the source to the receiver because the failure is locally repaired based on the signaling exchange between the BR and its ancestor BR, without the refreshment from the multicast source.

To assess the efficiency of the shortest path when a BR failure happens, we consider the efficiency of the multicast path $E^*$ as

<table><caption>TABLE 3
Comparison of the Average Efficiency</caption><thead><tr><td>Scenario</td><td>BRMM</td><td>NBM</td></tr></thead><tbody><tr><td>scenario 1</td><td>0.951</td><td>0.755</td></tr><tr><td>scenario 2</td><td>0.945</td><td>0.723</td></tr></tbody></table>

$$E^* = \frac{L(S, rec.) \text{ in the SPT}}{L(S, rec.) \text{ in the new path}}$$

where $L(S, rec.)$ is the number of bypassed routers from the multicast source to the receiver. Note that the detailed explanation and related example are provided in Appendix C, available in the online supplemental material.

The average efficiency under the different scenarios is shown in Table 3. The larger value of $E^*$ means that the multicast route is closer to the SPT. As shown, BRMM maintains a more optimized route than NBM in both the scenarios, and the average improvement of BRMM is about 20 percent compared with NBM.

# 4 CONCLUSION

In this paper, we have proposed a novel multicast approach, BRMM, which uses an efficient method to construct multicast tree and deliver multicast packets with mobility support. BRMM uses four types of messages to construct and maintain the multicast tree. To make the multicast more controllable, secure, and manageable, the MC has been introduced to support the multicast management. The tree construction process in BRMM is similar to that in NBM. However, owing to the temporary multicast state maintenance in the nearest BR, BRMM decreases the join latency significantly. BRMM can also guarantee the shortest path even when the BR failure happens. In addition, BRMM supports a fast handover procedure and optimized join process. Our results have shown that the temporary state used in BRMM speeds up the multicast join process and supports the mobility of multicast receivers with a better performance. Besides, the SPT can always be established and maintained with a lower signaling cost.

# ACKNOWLEDGMENTS

The authors thank anonymous reviewers for their constructive comments and suggestions that resulted in a vastly improved paper. J.-H. Lee is the corresponding author.

# REFERENCES

[1] I. Stoica, T.S.E. Ng, and H. Zhang, "REUNITE: A Recursive Unicast Approach to Multicast," Proc. IEEE INFOCOM, pp. 1644-1653, Mar. 2000.

[2] L.H.M.K. Costa, S. Fdida, and O. Duarte, "Hop by Hop Multicast Routing Protocol," Proc. ACM SIGCOMM, pp. 249-259, Aug. 2001.

[3] M. Bag-Mohammadi and N. Yazdani, "Next Branch Multicast (NBM) Routing Protocol," Computer Networks, vol. 49, no. 6, pp. 878-897, Dec. 2005.

[4] A. Boudani and B. Cousin, "SEM: A New Small Group Multicast Routing Protocol," Proc. Int'l Conf. Telecomm. (ICT), pp. 450-455, Feb. 2003.
[5] Y. Yang, J. Wang, and M. Yang, "A Service-Centric Multicast Architecture and Routing Protocol," *IEEE Trans. Parallel and Distributed Systems*, vol. 19, no. 1, pp. 35-51, Jan. 2008.

[6] J. Xie and I.F. Akyildiz, "A Novel Distributed Dynamic Location Management Scheme for Minimizing Signaling Costs in Mobile IP," *IEEE Trans. Mobile Computing*, vol. 1, no. 3, pp. 163-175, July-Sept. 2002.

[7] K. Fall and K. Varadhan, "The Ns Manual," http://www.isi.edu/nsnam/ns/ns-documentation.html, 2013.

[8] D. Magoni and J.-J. Pansiot, "Internet Topology Modeler Based on Map Sampling," *Proc. IEEE Int'l Symp. Computers Comm. (ISCC)*, pp. 1021-1027, July 2002.

[9] J.F. Guan, H.C. Zhou, Y.J. Qin, and H.K. Zhang, "Multi-Hop Multicast Listener Discovery Protocol," *Proc. IET Int'l Conf. Wireless, Mobile and Multimedia Networks (ICWMMN)*, pp. 422-425, Oct. 2008.

[10] J. Xie and U. Narayanan, "Performance Analysis of Mobility Support in IPv4/IPv6 Mixed Wireless Networks," *IEEE Trans. Vehicular Technology*, vol. 59, no. 2, pp. 962-973, Feb. 2010.