MULTIMOB Group H. Asaeda Internet-Draft Keio University Intended status: Standards Track P. Seite Expires: August 28, 2011 France Telecom J. Xia Huawei February 24, 2011 PMIPv6 Extensions for Multicast draft-asaeda-multimob-pmip6-extension-05 Abstract This document describes Proxy Mobile IPv6 (PMIPv6) extensions to support IP multicast. The Mobile Access Gateway (MAG) and the Local Mobility Anchor (LMA) are the mobility entities defined in the PMIPv6 protocol. The proposed protocol extension provides; 1) a dedicated multicast tunnel (M-Tunnel) between LMA and MAG, and 2) local routing to deliver IP multicast packets for mobile nodes. This document defines the roles of LMA and MAG to support IP multicast for the mobile nodes. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on August 28, 2011. Copyright Notice Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of Asaeda, et al. Expires August 28, 2011 [Page 1] Internet-Draft PMIPv6 Extensions for Multicast February 2011 publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Asaeda, et al. Expires August 28, 2011 [Page 2] Internet-Draft PMIPv6 Extensions for Multicast February 2011 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Conventions and Terminology . . . . . . . . . . . . . . . . . 6 3. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1. Multicast Communication in PMIPv6 . . . . . . . . . . . . 7 3.2. Multicast Tunnel (M-Tunnel) . . . . . . . . . . . . . . . 8 3.3. Protocol Sequence for Multicast Channel Subscription . . . 9 4. Local Mobility Anchor Operation . . . . . . . . . . . . . . . 12 4.1. LMA Operating As PIM-SM Router . . . . . . . . . . . . . . 12 4.2. LMA Operating As MLD Proxy . . . . . . . . . . . . . . . . 12 5. Mobile Access Gateway Operation . . . . . . . . . . . . . . . 13 5.1. MAG Operating As MLD Proxy . . . . . . . . . . . . . . . . 13 5.2. MAG Operating As PIM-SM Router . . . . . . . . . . . . . . 13 6. Mobile Node Operation . . . . . . . . . . . . . . . . . . . . 15 7. Handover Process . . . . . . . . . . . . . . . . . . . . . . . 16 7.1. MAG Operating As MLD Proxy . . . . . . . . . . . . . . . . 16 7.2. MAG Operating As PIM-SM Router . . . . . . . . . . . . . . 19 7.3. Multicast Context Transfer Data Format . . . . . . . . . . 22 7.4. Proxy Binding Update with Multicast Extension . . . . . . 23 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27 9. Security Considerations . . . . . . . . . . . . . . . . . . . 28 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 29 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 30 11.1. Normative References . . . . . . . . . . . . . . . . . . . 30 11.2. Informative References . . . . . . . . . . . . . . . . . . 31 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 32 Asaeda, et al. Expires August 28, 2011 [Page 3] Internet-Draft PMIPv6 Extensions for Multicast February 2011 1. Introduction Proxy Mobile IPv6 (PMIPv6) [2] enables network-based mobility for IPv6 mobile nodes (MNs) that do not implement any mobility protocols. The Local Mobility Anchor (LMA) is the topological anchor point to manages the mobile node's binding state. The Mobile Access Gateway (MAG) is an access router or gateway that manages the mobility- related signaling for an MN. An MN is attached to the Proxy Mobile IPv6 Domain (PMIPv6-Domain) that includes LMA and MAG(s), and is able to receive data coming from outside of the PMIPv6-Domain through LMA and MAG. Network-based mobility support for unicast is addressed in [2], while multicast support in PMIPv6 is not discussed in it. Since LMA and MAG set up a bi-directional tunnel for each mobile node and forwards all mobile node's traffic according to [2], it highly wastes network resources when a large number of mobile nodes join/subscribe the same multicast sessions/channels, because independent data copies of the same multicast packet are delivered to the subscriber nodes in a unicast manner through MAG. The base solution described in [14] provides options for deploying multicast listener functions in PMIPv6-Domains without modifying mobility and multicast protocol standards. However, in this specification, MAG MUST act as an MLD proxy and hence MUST dedicate a tunnel link between LMA and MAG to an incoming interface for all multicast traffic. This limitation does not allow to use PIM-SM native routing on MAG, does not enable local routing, and does not support source mobility. Furthermore, although it would be able to minimize the join latency for mobile nodes attached to a new network by tuning the Startup Query Interval value for the new MAG as proposed in [17], the base solution does not provide any seamless handover mechanism with a context transfer function. This document describes PMIPv6 extensions to support IP multicast communication for mobile nodes in PMIPv6-Domain. The proposed protocol extension provides; 1) a dedicated bi-directional multicast tunnel (M-Tunnel) between LMA and MAG, 2) seamless handover, and 3) local routing to deliver IP multicast packets for mobile nodes when MAG acts as a router. When MAG acts as a router (see Section 5.2), multicast source mobility can be enabled in PMIPv6-Domain. However, multicast listener mobility is mainly focused on in this document; therefore the detail description of source mobility is out of scope of this document. This document assumes that LMA must be capable of forwarding multicast packets through MAG toward the corresponding mobile nodes. This condition requires LMA to attach multicast networks and enable Asaeda, et al. Expires August 28, 2011 [Page 4] Internet-Draft PMIPv6 Extensions for Multicast February 2011 either the Protocol-Independent Multicast - Sparse Mode (PIM-SM) multicast routing protocol [3] or MLD proxy [8] function. MAG must maintain multicast membership status for the attached mobile nodes at the edge and forwards the multicast data from LMA to the member nodes. This condition requires MAG to support MLD [4], whether it acts as a PIM-SM router or MLD proxy. Each mobile node will connect MAG with a point-to-point access link. On the other hands, this document does not cover the scenario in which a single LMA or MAG enables both a PIM-SM routing protocol and MLD proxy function simultaneously. Therefore, handover for mobile nodes between a PIM-SM capable MAG to MLD proxy MAG is out of scope of this document. It is assumed that all MAGs in the PMIPv6-Domain behave in the same way, either acting as a PIM-SM router or MLD proxy. Seamless handover is also considered in this document. When a mobile node receiving multicast data detaches from the current MAG and attaches to a new MAG, the node should be able to continuously receive the multicast data through the new MAG. The handover procedure guarantees multicast session continuity and avoids extra packet loss and session disruption. Context transfer will be the required function to support seamless handover, while its effective procedure should be taken into account interaction with multicast communication protocols. The PMIPv6 extension proposed in this document does not require to change unicast communication methods or protocols defined in [2], and therefore both unicast and multicast communications for mobile nodes in PMIPv6-Domain are enabled after all. Asaeda, et al. Expires August 28, 2011 [Page 5] Internet-Draft PMIPv6 Extensions for Multicast February 2011 2. Conventions and Terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT","SHOULD", "SHOULD NOT", "RECOMMENDED","MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [1]. The following terms used in this document are to be interpreted as defined in the Proxy Mobile IPv6 specification [2]; Mobile Access Gateway (MAG), Local Mobility Anchor (LMA), Mobile Node (MN), Proxy Mobile IPv6 Domain (PMIPv6-Domain), LMA Address (LMAA), Proxy Care-of Address (Proxy-CoA), Mobile Node's Home Network Prefix (MN-HNP), Mobile Node Identifier (MN-Identifier), Proxy Binding Update (PBU), and Proxy Binding Acknowledgement (PBA). As defined in [8], "upstream interface" or "host interface" is an MLD proxy device's interface in the direction of the root of the tree. Each of an MLD proxy device's interfaces that is not in the direction of the root of the tree is called "downstream interface" or "router interface". The Context Transfer Protocol (CXTP) specification [11] describes the mechanism that allows better support for minimizes service disruption during handover. In this document, CXTP is adopted for the multicast context transfer protocol in PMIPv6, and "Multicast-Context Transfer Data (M-CTD)" is defined as the new terminology for transferring MLD state from previously attached MAG (p-MAG) to newly attached MAG (n-MAG). A Proxy Binding Update with multicast extension (PBU-M) newly defined in this document is also used to request the LMA to forward multicast data. Mobile Node's Policy Profile includes "multicast channel information", whose contents are the same one M-CTD contains, and the mandatory fields of the Policy Profile specified in [2]. Mobile node's Policy Profile is provided by "policy store" whose definition is the same as of [2], or by CXTP. Asaeda, et al. Expires August 28, 2011 [Page 6] Internet-Draft PMIPv6 Extensions for Multicast February 2011 3. Overview 3.1. Multicast Communication in PMIPv6 Required components to enable IP multicast are multicast routing protocols and host-and-router communication protocols. This document assumes PIM-SM [3] as the multicast routing protocol and MLDv2 [4] or LW-MLDv2 [5] as the host-and-router communication protocol. The architecture of a Proxy Mobile IPv6 domain is shown in Figure 1. LMA and MAG are the core functional entities in PMIPv6-Domain. The entire PMIPv6-Domain appears as a single link from the perspective of each mobile node. +---------+ | Content | | Source | +---------+ | *** *** *** *** *** * ** ** ** ** * * * * Fixed Internet * * * * ** ** ** ** * *** *** *** *** *** / \ +----+ +----+ |LMA1| |LMA2| +----+ +----+ LMAA1 -> | | <-- LMAA2 | | \\ //\\ \\ // \\ \\ // \\ \\ // \\ \\ // \\ \\ // \\ Proxy-CoA1--> | | <-- Proxy-CoA2 +----+ +----+ |MAG1|---{MN2} |MAG2| +----+ | +----+ | | | MN-HNP1 --> | MN-HNP2 | <-- MN-HNP3, MN-HNP4 {MN1} {MN3} Figure 1: Proxy Mobile IPv6 Domain Asaeda, et al. Expires August 28, 2011 [Page 7] Internet-Draft PMIPv6 Extensions for Multicast February 2011 When a mobile node wants to subscribe/unsubscribe a multicast channel, it sends MLD Report messages with specifying sender and multicast addresses to the access link. The attached MAG detects this membership information and transfers the information to the corresponding LMA over a multicast tunnel (M-Tunnel described in the next section) when needed, or transfers the information to the adjacent multicast router. When an LMA receives the membership information with MLD Report messages or with PIM Join/Prune messages, it coordinates the corresponding multicast routing tree if necessary. This operation requires multicast routing protocols or proxy functions for LMA. When a MAG detects mobile node's handover, it can proceed the seamless handover procedures. Since both PMIPv6 and multicast protocols (i.e., MLD and PIM-SM) do not have the functions for handover in the original protocol specifications, external functions or protocols such as CXTP [11] can be additionally used with PMIPv6 Proxy Binding Update (PBU). 3.2. Multicast Tunnel (M-Tunnel) MC1 \ \--> MC2---->LMA===MC1,MC2 for MNs====>MAG MC: Multicast packets, ==>: M-Tunnel Figure 2: Multicast channel subscription through M-Tunnel M-Tunnel is a bi-directional tunnel dedicated for MLD message and IP multicast data transmissions between LMA and MAG. It aggregates the same MLD and multicast packets and can transmit different multicast channel data as shown in Figure 2. The format of the tunneled multicast packet forwarded from LMA is shown below. "S" and "G" are the same notation used for (S,G) multicast channel. IPv6 header (src= LMAA, dst= Proxy-CoA) /* Tunnel Header */ IPv6 header (src= S, dst= G) /* Packet Header */ Upper layer protocols /* Packet Content*/ Figure 3: Tunneled multicast packet from LMA to MAG When an MLD message is sent from MAG to LMA, the src and dst addresses of tunnel header will be replaced to Proxy-CoA and LMAA, Asaeda, et al. Expires August 28, 2011 [Page 8] Internet-Draft PMIPv6 Extensions for Multicast February 2011 respectively. To convey an MLD message, the src address of the packet header is changed to either LMA's or MAG's link-local address and the dst address of the packet header is assigned based on the MLD's condition. (See Section 5.1.15 and 5.2.14 of [4].) M-Tunnel can be dynamically created along with the multicast subscription state. The manner of this "dynamic M-Tunnel" creation is similar to the manner of a subscriber's bi-directional tunnel creation described in Section 5.6.1 of [2]. MAG initiates M-Tunnel establishment when a mobile node, which is the first subscriber of multicast channels, attaches to the PMIPv6-Domain, and maintains the M-Tunnel as active until the last subscriber mobile node terminates its multicast channel subscription. On the other hand, instead of dynamically creating the M-Tunnel and tearing it down on an "on-demand" basis, an M-Tunnel can be pre- established without detecting a multicast channel subscription request from a mobile node and kept while the MAG is running. This "static M-Tunnel" creation is usually done in a bootstrap phase of MAG. Administrators or operators shall decide whether dynamic or static M-Tunnel is chosen in their network by the configuration. Such decision may be implementation dependent. Note that, in each case, M-Tunnel is not per mobile node basis, but per MAG basis; it is shared with all mobile nodes attached to MAG. 3.3. Protocol Sequence for Multicast Channel Subscription Upon multicast data reception, a mobile node sends MLD Report messages including source and multicast addresses. Although MLDv2 specification [4] permits to use the unspecified address (::) for a host whose interface has not acquired a valid link-local address yet, MLDv2 Report messages MUST be sent with a valid IPv6 link-local source address in PMIPv6 as defined in [9]. As well, MLDv2 Report messages MAY be sent with an IP destination address of FF02:0:0:0:0: 0:0:16, to which all MLDv2-capable multicast routers listen, but the IP unicast address of the attached MAG SHALL be used in many cases as explained in [9]. An MLD proxy [8] can simplify the implementation of multicast data forwarding. By not supporting complicated multicast routing protocols, it reduces the implementation cost and the operational overhead. Reducing the operational overhead will also contribute to faster routing convergence. Another advantage is that an MLD proxy can be independent of the multicast routing protocol used by the core network routers. Asaeda, et al. Expires August 28, 2011 [Page 9] Internet-Draft PMIPv6 Extensions for Multicast February 2011 When a MAG operates as an MLD proxy and receives MLD Report messages from attached mobile nodes, it sends MLD messages on behalf of the mobile nodes. MLD messages are always transferred over the M-Tunnel as seen in Figure 4. MAG operating as an MLD proxy always registers "downstream interface (or router interface)" upon MLD message reception, but does not send MLD Report when the received source and multicast addresses have been already reported to the same LMA through the same "upstream interface (or host interface)". MN1 MN2 MAG LMA | | | | |------MLD Report--------->| | | (S1,G1) join | MLD Report | | | |===== M-Tunnel ===>| | | | |---> PIM (S1,G1) join | | | | | |--MLD Report-->| | | | (S2,G2) join | MLD Report | | | |===== M-Tunnel ===>| | | | |---> PIM (S2,G2) join | | | | | |--MLD Report-->| | | | (S1,G1) join | | | | | | Figure 4: MLD Report Messages Transmission When a MAG operates as a PIM-SM router and receives MLD report messages from attached mobile nodes, it joins the multicast delivery tree by sending PIM join messages to its neighboring routers. At the same time, the MAG sends MLD report messages with the Hold extension [9] with the corresponding multicast channel information to the LMA (Figure 5). When receiving the MLD Hold, the LMA joins the multicast delivery tree but does not forward multicast data to the MAG. The idea is to make the LMA ready to forward data. When a mobile node changes the network, it will be able to continuously receive multicast data from the LMA, until a new MAG completes the handover routing update (detailed in Section 7). Asaeda, et al. Expires August 28, 2011 [Page 10] Internet-Draft PMIPv6 Extensions for Multicast February 2011 MN1 MN2 MAG LMA | | | | |------MLD Report--------->| | | (S1,G1) join |---> PIM (S1,G1) join | | | | | | | MLD Hold | | | |===== M-Tunnel ===>| | | | |---> PIM (S1,G1) join | | | | (No data forwarding) | |--MLD Report-->| | | | (S2,G2) join |---> PIM (S2,G2) join | | | | | | | MLD Hold | | | |===== M-Tunnel ===>| | | | |---> PIM (S2,G2) join | | | | (No data forwarding) | |--MLD Report-->| | | | (S1,G1) join | | | | | | Figure 5: MLD Report Messages Transmission when MAG acts as a router Whether a MAG works as an MLD proxy or a PIM-SM router, it MAY store multicast channel information reported by attached mobile nodes in the MN's Policy Profile (as defined in [2]). This information may be used by the new MAG during the handover process (see Section 7). Asaeda, et al. Expires August 28, 2011 [Page 11] Internet-Draft PMIPv6 Extensions for Multicast February 2011 4. Local Mobility Anchor Operation 4.1. LMA Operating As PIM-SM Router An LMA is responsible for maintaining the mobile node's reachability state and is the topological anchor point for the mobile node's home network prefix(es). When an LMA acts as a PIM-SM [3] multicast router, it serves MAGs as listener nodes when the MAGs act as MLD proxies, or as downstream routers when the MAGs act as PIM-SM routers. Each MAG is connected through an M-Tunnel for multicast communication. An LMA sets up the multicast state and joins the group. Multicast packets are tunneled to a MAG that requested to receive the corresponding multicast session after being received by the LMA. The MAG forwards these packets to the mobile node according to the multicast listener state in the MAG. 4.2. LMA Operating As MLD Proxy An LMA may act as an MLD proxy [8]. When LMA acts as an MLD proxy, multicast data is forwarded from outside to mobile nodes through an M-Tunnel to MAG. When LMA acts as an MLD proxy, the attached MAGs must also act as an MLD proxy. Asaeda, et al. Expires August 28, 2011 [Page 12] Internet-Draft PMIPv6 Extensions for Multicast February 2011 5. Mobile Access Gateway Operation The mobile access gateway (MAG) is the entity that performs the mobility management on behalf of a mobile node. MAG is responsible for detecting the mobile node's movements to and from the access link. 5.1. MAG Operating As MLD Proxy [2] supports only point-to-point access link types for MAG and MN connection; hence an MN and a MAG are the only two nodes on an access link, where the link is assumed to be multicast capable. Since a MAG will deal with mobile nodes' membership states reported by a large number of the downstream mobile nodes with MLD Report messages, the protocol scalability must be taken into account. A MAG acting as an MLD proxy sends MLD Query messages to all or some of attached mobile nodes. After MAG receives MLD Report messages from the mobile nodes, it forwards the MLD Report messages on behalf of these mobile nodes to LMA. Mobile nodes send MLD messages with their link-local address to MAG, and MAG forwards the MLD messages through the M-Tunnel to LMA with the MAG's link-local address. An MLD proxy requires that the upstream and downstream interfaces MUST be statistically configured. As well, MAG MUST configure an upstream interface that is the interface MLD Report messages are sent to LMA and downstream interfaces that are the interfaces MLD Report messages are received from mobile nodes. This upstream interface is the M-Tunnel end-point at the MAG. 5.2. MAG Operating As PIM-SM Router The optimal multicast routing path does not always include LMA, especially in local routing as described in Section 6.10.3 of [2]. The local routing option is designed to support node-to-node communication within PMIPv6-Domain where a local content source exists. To enable local routing, MAG MUST run multicast routing protocols to attach the optimal multicast routing path. This document assume use of PIM-SM [3] as the supported multicast routing protocol. Because of its implementation or operational costs, operators may not want to support PIM-SM on MAG. However, an MLD proxy requires to statically configure its upstream interface, which is an M-Tunnel as specified in Section 5.1, to receive all multicast data. Therefore, if operators take into account the case that an upstream interface for the optimized multicast path is NOT an M-Tunnel to LMA but other Asaeda, et al. Expires August 28, 2011 [Page 13] Internet-Draft PMIPv6 Extensions for Multicast February 2011 interface, and want MAG to "dynamically select" optimized routing path, MAG MUST act as a PIM-SM router. Asaeda, et al. Expires August 28, 2011 [Page 14] Internet-Draft PMIPv6 Extensions for Multicast February 2011 6. Mobile Node Operation Mobile nodes attached to MAG can behave as the regular receiver hosts. A mobile node sends MLD messages to MAG when it wants to subscribe and unsubscribe IP multicast channels. And mobile nodes do not change their behaviors whether MAG is acting as an MLD proxy or a PIM-SM router. All MLD related considerations are described in [9], which will give some advantage for its resource saving and seamless handover for PMIPv6 multicast. PMIPv6 [2] also covers network mobility where a mobile node is a router. However, to avoid the complexity, in this document, the mobile router should behave as an MLD proxy [8] but should not act as a PIM-SM router, when the mobile router needs to forward multicast data to its downstream nodes. Asaeda, et al. Expires August 28, 2011 [Page 15] Internet-Draft PMIPv6 Extensions for Multicast February 2011 7. Handover Process MAG is responsible for detecting the mobile node's movements to and from the access link and for initiating binding registrations to the mobile node's LMA. MAG tracks the mobile node's movements to and from the access link and for signaling the mobile node's LMA. In PMIPv6, it SHOULD NOT require for mobile nodes to initiate to re- subscribe multicast channels, and MAG SHOULD keep multicast channel subscription status for mobile nodes even if they attach a different MAG in PMIPv6-Domain. In this section, mobility handover procedures are described. 7.1. MAG Operating As MLD Proxy When MAG operates as an MLD proxy, there are two possible ways to proceed MLD listener handover; MLD listener handover with CXTP and MLD listener handover with MN's Policy Profile. A Proxy Binding Update with multicast extension (PBU-M) (defined in Section 7.4) is always used to request the LMA to forward multicast data. The MLD listener handover with CXTP shown in Figure 6 is defined as follows. 1. Whenever MN attaches to n-MAG, the n-MAG requests multicast context transfer to p-MAG. The n-MAG identifies the p-MAG using the same mechanism described in [12]: either the MN or the new access network provides the AP-ID of the previous network to the n-MAG. This information is used by the n-MAG to identify the p-MAG. 2. p-MAG provides the multicast states corresponding to the moving MN-Identifier to n-MAG. p-MAG utilizes a context transfer protocol to deliver MN's Policy Profile to n-MAG, and sends Multicast Context Transfer Data (M-CTD) (defined in Section 7.3) to n-MAG. 3. n-MAG records MN's Policy Profile including multicast channel information. 4. If there are multicast channels the MN has subscribed but the n-MAG has not yet subscribed, n-MAG prepares the PBU-M including (C) flag (specified in Section 7.4) and multicast channel information, and transmits the PBU-M to LMA. 5. If the received PBA message has the Status field value set to 0 (Proxy Binding Update accepted) and if there is no existing M-Tunnel to that LMA, the n-MAG establishes an M-Tunnel for forwarding corresponding multicast data. Asaeda, et al. Expires August 28, 2011 [Page 16] Internet-Draft PMIPv6 Extensions for Multicast February 2011 6. LMA forwards requested multicast data through an M-Tunnel between the LMA and n-MAG. MN p-MAG n-MAG LMA | | | | |-MLD Report->| MLD Report | | |============= M-Tunnel ===========>| | | | |---> PIM join | | Multicast data | |<------------|<============ M-Tunnel ============| | | | | Detach | | | | | | | Attach | | | | | | | |------------RS-------------->| | | |<---CT-Req-----| | | | | | | |-----CXTP----->| | | | M-CTD | MLD Report | | | |-------PBU-M------>| | | | | | | |<-------PBA--------| | | | | |<-----------RA---------------| | | | | | | | | Multicast data | |<----------------------------|<==== M-Tunnel ====| | | | | |<---------MLD Query----------| MLD Report | |----------MLD Report-------->|===== M-Tunnel ===>| | | | | Figure 6: MLD listener handover with CXTP After MN attaches to n-MAG, the multicast data will be delivered to the MN immediately. MN's multicast membership state is maintained with MLD Query and Report messages exchanged by MN and n-MAG. Mobile node's multicast state is kept in MN's Policy Profile. If MN's Policy Profile is stored in a policy store [2], it is not necessary to use a context transfer protocol between p-MAG and n-MAG. In such a case, n-MAG obtains MN's multicast state by the same mechanism used to acquire MN-ID and Policy Profile during MN's attachment process [2]. The procedures for MLD listener handover with MN's Policy Profile Asaeda, et al. Expires August 28, 2011 [Page 17] Internet-Draft PMIPv6 Extensions for Multicast February 2011 (Figure 7) are shown as follows. 1. Whenever MN attaches to n-MAG, the n-MAG obtains the MN- Identifier and learns multicast channel information described in Mobile Node's Policy Profile associated to this MN-Identifier. 2. If there are multicast channels the MN has subscribed but the n-MAG has not yet subscribed, n-MAG prepares the PBU-M including (C) flag and multicast channel information, and transmits the PBU-M to LMA. 3. If the received PBA message has the Status field value set to 0 and if there is no existing M-Tunnel to that LMA, the n-MAG establishes an M-Tunnel for forwarding corresponding multicast data. 4. LMA forwards requested multicast data through an M-Tunnel between the LMA and n-MAG. MN p-MAG n-MAG LMA | | | | |-MLD Report->| MLD Report | | |============= M-Tunnel ===========>| | | | |---> PIM join | | Multicast data | |<------------|<============ M-Tunnel ============| | | | | Detach | | | | | | | Attach | MN attachment event | | | (Acquire MN-Id and Profile) | | | | | |------------RS-------------->| | | | | MLD Report | | | |-------PBU-M------>| | | | | | | |<-------PBA--------| | | | | |<-----------RA---------------| | | | | | | | | Multicast data | |<----------------------------|<==== M-Tunnel ====| | | | | |<---------MLD Query----------| MLD Report | |----------MLD Report-------->|===== M-Tunnel ===>| | | | | Asaeda, et al. Expires August 28, 2011 [Page 18] Internet-Draft PMIPv6 Extensions for Multicast February 2011 Figure 7: MLD listener handover with MN's Policy Profile 7.2. MAG Operating As PIM-SM Router MAG operating PIM-SM multicast routing protocol joins the multicast delivery tree when an attached mobile node subscribes a multicast channel. In order to reduce handover latency, LMA forwards multicast data to n-MAG until n-MAG has completed to join the multicast delivery tree. A Proxy Binding Update with multicast extension (PBU-M) is always used to request the LMA to forward multicast data. When MAG operates PIM-SM routing protocol, leveraging CXTP is the possible handover scenario with the following procedures. 1. Whenever MN attaches to n-MAG, the n-MAG requests multicast context transfer to p-MAG. The n-MAG identifies p-MAG as described in Section 7.1. 2. p-MAG provides the multicast states corresponding to the moving MN-Identifier to n-MAG. p-MAG utilizes a context transfer protocol to deliver MN's Policy Profile to n-MAG, and sends M-CTD to n-MAG. 3. n-MAG records MN's Policy Profile including multicast channel information. 4. If there are multicast channels the MN has subscribed but the n-MAG has not yet subscribed, n-MAG joins the corresponding multicast channels, prepares the PBU-M including (C) flag and multicast channel information, and transmits the PBU-M to LMA. 5. If the received PBA message has the Status field value set to 0 and if there is no existing M-Tunnel to that LMA, the n-MAG establishes an M-Tunnel for forwarding corresponding multicast data. 6. LMA forwards requested multicast data through an M-Tunnel between the LMA and n-MAG. 7. Whenever n-MAG joins the multicast delivery tree, it notifies the LMA to stop forwarding the data, switches to the optimal multicast routing path, and forwards the multicast data. Asaeda, et al. Expires August 28, 2011 [Page 19] Internet-Draft PMIPv6 Extensions for Multicast February 2011 MN p-MAG n-MAG LMA | | | | |--MLD Report->| MLD Hold | | |=========== M-Tunnel =============>| | |---> PIM join | |---> PIM join | | | | |<--Multicast--| | | | data | | | Detach | | | | | | | Attach | | | | | | | |-------------RS-------------->| | | | | | | |<---CT-Req-----| | | | | | | |-----CXTP----->| | | | M-CTD |---> PIM join | | | | | | | | MLD Report (join) | | | |-------PBU-M------>| | | | | | | |<-------PBA--------| | | | | |<------------RA---------------| | | | | | | | | Multicast data | | | |<==== M-Tunnel ====| |<-------Multicast data--------| | | | | | | | Join process completed | | | | | | | | MLD Hold | | | |-------PBU-M------>| | | | | |<-------Multicast data--------| | | | | | Figure 8: PIM-SM handover with CXTP The following procedures are for PIM-SM handover using MN's Policy Profile. 1. Whenever MN attaches to n-MAG, the n-MAG obtains the MN- Identifier and learns multicast channel information described in Mobile Node's Policy Profile associated to this MN-Identifier. Asaeda, et al. Expires August 28, 2011 [Page 20] Internet-Draft PMIPv6 Extensions for Multicast February 2011 2. If there are multicast channels the MN has subscribed but the n-MAG has not yet subscribed, n-MAG joins the corresponding multicast channels, prepares the PBU-M including (C) flag and multicast channel information, and transmits the PBU-M to LMA. 3. If the received PBA message has the Status field value set to 0 and if there is no existing M-Tunnel to that LMA, the n-MAG establishes an M-Tunnel for forwarding corresponding multicast data. 4. LMA forwards requested multicast data through an M-Tunnel between the LMA and n-MAG. 5. Whenever n-MAG joins the multicast delivery tree, it notifies the LMA to stop forwarding the data, switches to the optimal multicast routing path, and forwards the multicast data. Asaeda, et al. Expires August 28, 2011 [Page 21] Internet-Draft PMIPv6 Extensions for Multicast February 2011 MN p-MAG n-MAG LMA | | | | |--MLD Report->| | | | | MLD Hold | | |=========== M-Tunnel =============>| | |---> PIM join | |---> PIM join | | | | |<--Multicast--| | | | data | | | | | | | Detach | | | | | | | Attach | MN attachment event | | | (Acquire MN-Id and Profile) | |-------------RS-------------->| | | | |---> PIM join | | | | | | | | MLD Report (join) | | | |-------PBU-M------>| | | | | | | |<-------PBA--------| | | | | |<------------RA---------------| | | | | | | | | Multicast data | | | |<==== M-Tunnel ====| |<-------Multicast data--------| | | | | | | | Join process completed | | | | | | | | MLD Hold | | | |-------PBU-M------>| | | | | |<-------Multicast data--------| | | | | | Figure 9: PIM-SM handover with MN's Policy Profile 7.3. Multicast Context Transfer Data Format The following information included in M-CTD is used to distinguish mobile node's membership status. 1. Receiver address - indicates the address of the MN sending the Current-State Report. Asaeda, et al. Expires August 28, 2011 [Page 22] Internet-Draft PMIPv6 Extensions for Multicast February 2011 2. Filter mode - indicates either INCLUDE or EXCLUDE as defined in [4]. 3. Source addresses and multicast address - indicates the address pairs the MN has joined. To cooperate with CXTP, an IGMP/MLD-based explicit membership tracking function [13] MUST be enabled on MAG (whether the MAG behaves as a router or proxy). The explicit tracking function enables a router to keep track of downstream multicast membership state created by downstream hosts attached on the router's link. Since [13] does not maintain information of an (S,G) join request with EXCLUDE filter mode, when the "Filter mode" is EXCLUDE, "Source address" MUST be "Null". 7.4. Proxy Binding Update with Multicast Extension 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence # | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |A|H|L|K|M|R|P|C| Reserved | Lifetime | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Mobility options . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 10: Proxy Binding Update Message with Multicast Extension A Binding Update message that is sent by MAG to LMA is referred to as the "Proxy Binding Update" message. A new flag (C) is included in the Proxy Binding Update message with Multicast extension (PBU-M). The rest of the Binding Update message format remains the same as defined in [10] and with the additional (R), (M), and (P) flags, as specified in [15], [16], and [2], respectively. Multicast Channel Subscription Flag A new flag (C) is included in the Binding Update message to indicate to LMA that the Binding Update message is a multicast channel subscription. When (C) flag is specified in PBU-M message, the mobility options field includes the same information of MLDv2 Report message [4]: Asaeda, et al. Expires August 28, 2011 [Page 23] Internet-Draft PMIPv6 Extensions for Multicast February 2011 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = 143 | Reserved | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved |Nr of Mcast Address Records (M)| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Multicast Address Record [1] . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Multicast Address Record [2] . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | . | . . . | . | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Multicast Address Record [M] . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 11 Each Multicast Address Record has the following internal format: Asaeda, et al. Expires August 28, 2011 [Page 24] Internet-Draft PMIPv6 Extensions for Multicast February 2011 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Record Type | Aux Data Len | Number of Sources (N) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | * * | | * Multicast Address * | | * * | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | * * | | * Source Address [1] * | | * * | | +- -+ | | * * | | * Source Address [2] * | | * * | | +- -+ . . . . . . . . . +- -+ | | * * | | * Source Address [N] * | | * * | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Auxiliary Data . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 12 Asaeda, et al. Expires August 28, 2011 [Page 25] Internet-Draft PMIPv6 Extensions for Multicast February 2011 All the above fields contain data with the same definitions in [4]. Asaeda, et al. Expires August 28, 2011 [Page 26] Internet-Draft PMIPv6 Extensions for Multicast February 2011 8. IANA Considerations This document creates a new registry for the flags in the Binding Update message called the "Binding Update Flags". The following flags are reserved: (A) 0x8000 [RFC3775] (H) 0x4000 [RFC3775] (L) 0x2000 [RFC3775] (K) 0x1000 [RFC3775] (M) 0x0800 [RFC4140] (R) 0x0400 [RFC3963] (P) 0x0200 [RFC5213] This document reserves a new flag (C) for "Proxy Binding Update with Multicast Extension" as described in Section 7.4 as follows: (C) 0x0100 The rest of the values in the 16-bit field are reserved. New values can be assigned by Standards Action or IESG approval. Asaeda, et al. Expires August 28, 2011 [Page 27] Internet-Draft PMIPv6 Extensions for Multicast February 2011 9. Security Considerations TBD. Asaeda, et al. Expires August 28, 2011 [Page 28] Internet-Draft PMIPv6 Extensions for Multicast February 2011 10. Acknowledgements Many of the specifications described in this document are discussed and provided by the multimob mailing-list. Asaeda, et al. Expires August 28, 2011 [Page 29] Internet-Draft PMIPv6 Extensions for Multicast February 2011 11. References 11.1. Normative References [1] Bradner, S., "Key words for use in RFCs to indicate requirement levels", RFC 2119, March 1997. [2] Gundavelli, S, Ed., Leung, K., Devarapalli, V., Chowdhury, K., and B. Patil, "Proxy Mobile IPv6", RFC 5213, August 2008. [3] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas, "Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised)", RFC 4601, August 2006. [4] Vida, R. and L. Costa, "Multicast Listener Discovery Version 2 (MLDv2) for IPv6", RFC 3810, June 2004. [5] Liu, H., Cao, W., and H. Asaeda, "Lightweight IGMPv3 and MLDv2 Protocols", draft-ietf-mboned-lightweight-igmpv3-mldv2-05.txt (work in progress), May 2009. [6] Deering, S., Fenner, W., and B. Haberman, "Multicast Listener Discovery (MLD) for IPv6", RFC 2710, October 1999. [7] Holbrook, H. and B. Cain, "Source-Specific Multicast for IP", RFC 4607, August 2006. [8] Fenner, B., He, H., Haberman, B., and H. Sandick, "Internet Group Management Protocol (IGMP) / Multicast Listener Discovery (MLD)-Based Multicast Forwarding ("IGMP/MLD Proxying")", RFC 4605, August 2006. [9] Asaeda, H. and T. Schmidt, "IGMP and MLD Extensions for Mobile Hosts and Routers", draft-asaeda-multimob-igmp-mld-mobility-extensions-03.txt (work in progress), July 2009. [10] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in IPv6", RFC 3775, June 2004. [11] Loughney, Ed., J., Nakhjiri, M., Perkins, C., and R. Koodli, "Context Transfer Protocol (CXTP)", RFC 4067, July 2005. [12] Yokota, H., Chowdhury, K., Koodli, R., Patil, B., and F. Xia, "Fast Handovers for Proxy Mobile IPv6", RFC 5949, September 2010. Asaeda, et al. Expires August 28, 2011 [Page 30] Internet-Draft PMIPv6 Extensions for Multicast February 2011 [13] Asaeda, H. and Y. Uchida, "IGMP/MLD-Based Explicit Membership Tracking Function for Multicast Routers", draft-asaeda-mboned-explicit-tracking-01.txt (work in progress), October 2010. [14] Schmidt, T., Waehlisch, M., and S. Krishnan, "Base Deployment for Multicast Listener Support in PMIPv6 Domains", draft-ietf-multimob-pmipv6-base-solution-07.txt (work in progress), December 2010. 11.2. Informative References [15] Devarapalli, V., Wakikawa, R., Petrescu, A., and P. Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963, January 2005. [16] Soliman, H., Castelluccia, C., El Malki, K., and L. Bellier, "Hierarchical Mobile IPv6 Mobility Management (HMIPv6)", RFC 4140, August 2005. [17] Asaeda, H., Uchida, Y., Liu, H., and Q. Wu, "Tuning the Behavior of IGMP and MLD for Mobile Hosts and Routers", draft-asaeda-multimob-igmp-mld-optimization-05.txt (work in progress), February 2011. Asaeda, et al. Expires August 28, 2011 [Page 31] Internet-Draft PMIPv6 Extensions for Multicast February 2011 Authors' Addresses Hitoshi Asaeda Keio University Graduate School of Media and Governance 5322 Endo Fujisawa, Kanagawa 252-0816 Japan Email: asaeda@wide.ad.jp URI: http://www.sfc.wide.ad.jp/~asaeda/ Pierrick Seite France Telecom 4, rue du Clos Courtel BP 91226, Cesson-Sevigne 35512 France Email: pierrick.seite@orange-ftgroup.com Jinwei Xia Huawei Technologies Co., Ltd. Huihong Mansion, No.91 Baixia Rd. Nanjing, Jiangsu 21001 China Email: xiajinwei@huawei.com Asaeda, et al. Expires August 28, 2011 [Page 32]