Network Working Group Hongke Zhang Internet Draft Feng Qiu Expires: June 2013 Huachun Zhou Xiaoqian Li Li Yi Ying Rao Zhengxin Zhang December 17, 2012 A Hierarchical Mobility Management in LISP network draft-zhang-lisp-hmm-01.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on June 10, 2013. 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 publication of this document. Please review these documents Zhang et al. Expires June 10, 2013 [Page 1] Internet-Draft A Hierarchical Mapping System for LISP December 2012 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. Abstract This draft proposes a Hierarchical Mobility Management (HMM) in Locator/ID Separation Protocol (LISP) networks. The Internet is divided into a number of mapping domains (MDs). An Agent Tunnel Router (ATR) as an agent of each MD manages the Mobile Node's EID-to- RLOC mapping. For the movement within the MD, the ATR keeps the EID- to-RLOC mapping invariable, so it avoids the mapping update in the mapping system and the Tunnel Router (TR) of each correspondent node. For the handover between different MDs, to support fast update and handover, a united mapping table is proposed in the ATR. Conventions used in this document 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]. Table of Contents 1. Introduction ................................................ 2 2. Definition of items ......................................... 3 3. HMM Overview ................................................ 4 3.1. The architecture of HMM................................. 4 3.2. Micro-Mobility ......................................... 5 3.3. Macro-Mobility ......................................... 7 4. Mapping Table ............................................... 9 5. Properties ................................................. 11 6. Security Considerations..................................... 12 7. IANA Considerations ........................................ 12 8. References ................................................. 13 Author's Addresses ............................................ 13 Acknowledgment ................................................ 14 1. Introduction In the current TCP/IP stack, IP address is overloaded with the semantics of both host identifiers and locators [RFC 4984]. From the application layer of view, IP address identifies a host and it is used in the application and transport layer. From the network layer Zhang et al. Expires June 10, 2013 [Page 2] Internet-Draft A Hierarchical Mapping System for LISP December 2012 of view, IP address indicates the current topological location of a host. The dual roles of IP address make it difficult to support mobility. When a host moves into a new subnet, it must configure a new IP address. As the transport layer connection identifier includes IP address, the host has to re-establish connections. Thus, to keep connections alive, we need to decouple the dual roles of IP address. We propose a novel mobility management based on the LISP networks [LISP]. A mapping system as a separate logical management plane controls the MN's EID-to-RLOC mapping so as to offer good manageability. In addition, the ATR as an indirection point takes charge of mapping EIDs to RLOCs which can hide the MN and network equipment's location and achieve location privacy. In addition, this is a network-based mobility management protocol, which does not require MNs to participate in any mobility-related signaling, so it avoids a few signaling cost in wireless links. Due to the introduction of identifier/locator separation, a critical challenge is how to keep the mapping between the MN's identifier and its dynamically changing IP address [Mapping, SMGI]. This implies that the mapping system and the TR of each correspondent node (CN) need to update the EID-to-RLOC mapping when the MN moves. To reduce the update signaling cost, we distinguish micro-mobility and macro- mobility by introducing an ATR in each mapping domain. For micro- mobility, the ATR as a special TR keeps the MN's identifier-to- locator mapping invariable and does not need to update the mapping in the mapping system and the TR of each CN. To perform the fast mapping update in the case of macro-mobility, we design a united mapping table in the ATR. It contains mapping information of each CN which the MN is communicating with so that the old ATR can directly inform the new ATR mapping entries of CNs. In this way, the new ATR does not need to query mapping servers, which eliminates the mapping request delay. 2. Definition of items Endpoint ID (EID): An EID is a 32-bit (for IPv4) or 128-bit (for IPv6) value used in the source and destination address fields of the first (most inner) LISP header of a packet. An EID is allocated to a host from an EID-prefix block associated with the site where the host is located. See [LISP] for details. Routing Locator (RLOC): A RLOC is an IPv4 or IPv6 address of an egress tunnel router (ETR). A RLOC is the output of an EID-to-RLOC mapping lookup. An EID maps to one or more RLOCs. Typically, RLOCs Zhang et al. Expires June 10, 2013 [Page 3] Internet-Draft A Hierarchical Mapping System for LISP December 2012 are numbered based on the connectivity of provider networks. See [LISP] for details. EID-to-RLOC mapping: a binding between an EID or EID-prefix and a RLOC set which can be used to reach the EID. The xTRs can encapsulate packets with the RLOC in the EID-to-RLOC mapping to reach the destination EID. A RLOC set may contain multiple RLOCs to perform multihoming or traffic engineering. Mapping Server (MS): A network infrastructure component which stores the EID-to-RLOC mappings and responds to Map-Requests. Mapping Domain (MD): The Internet is divided into a number of mapping domains (MDs) and each MD consists of a MS and several xTRs. Agent Tunnel Router(ATR): An ATR has two functionality of ITR and ETR, which can encapsulate and decapsulate packets. For the movement within the MD, the ATR keeps the EID-to-RLOC mapping invariable. The ATR receives IP packets from TRs on one side and sends LISP- encapsulated IP packets toward the Internet on the other side. Meanwhile, an ATR receives LISP-encapsulated IP packets from the Internet on one side and sends decapsulated IP packets to TRs or hosts on the other side. In addition, it sends a Map-request to the mapping system when it does not have the EID-to-RLOC mapping for the destination EID. Tunnel Router(TR): A TR encapsulates packets with a tunnel header and sends them to the ATR by a tunnel. 3. HMM Overview 3.1. The architecture of HMM Figure 1 shows the network architecture of HMM, which contains two hierarchies: a mapping system and the current Internet. The mapping system is an overlay network on the top of Internet and consists of a set of mapping servers (MS). MSs manage EID-to-RLOC mapping entries and resolve Map-Request messages. There have been several proposals to discuss the architecture of the mapping system [LISP-DHT] [LISP- TREE] [LISP+ALT]. Zhang et al. Expires June 10, 2013 [Page 4] Internet-Draft A Hierarchical Mapping System for LISP December 2012 The Internet is divided into a number of MDs. Each MD contains several TRs. Any TR may be as an agent to manage the movement of MNs within its MD. The agent TR encapsulates packets with RLOCs and maintains the mappings between EIDs and RLOCs. Assume the first TR that an MN attaches to in the MD is the ATR. When the MN connects to other TRs in the same MD, the TR will establish a tunnel with the ATR. +-------------------------------------------------+ | Mapping +----+ +----+ | | System | MS |------------ | MS | | | +----+ +----+ | | | | | | | | | | +----+ +----+ | | | MS |------------ | MS | | | +----+ +----+ | | / \ | | ----------/----------------------\------------- | | MD1 / | MD2 \ | | +---+ | +---+ | | /|TR |\ | /|TR |\ | | / +---+ \ | / +---+ \ | | / | | \ | / | | \ | | / | | \ | / | | \ | | +---+ | | +---+ | +---+ | | +---+ | | |TR |---/---\---|TR | | |TR |---/---\--- |TR | | | +---+ / \ +---+ | +---+ / \ +---+ | | | / \ | | | / \ | | | | +---+ +---+ | | | +---+ +---+ | | | --|TR1|----|TR2|-- | --|TR3|----|TR4|-- | | +---+ +---+ | +---+ +---+ | | | | +-------------------------------------------------+ Figure 1 :Architecture of HMM 3.2. Micro-Mobility We divide the global internet into a number of MDs and assume each autonomous system (AS) is a MD, which is managed by different Internet Service Providers (ISP). When an MN moves within the same MD, we define it micro-mobility. While the MN moves between different MDs, we call it macro-mobility. We deal with macro-mobility and micro- mobility separately to minimize the signaling cost and alleviate the burden of the mapping system. Zhang et al. Expires June 10, 2013 [Page 5] Internet-Draft A Hierarchical Mapping System for LISP December 2012 Figure 2 illustrates the message flows for the location management scheme in micro-mobility scenario. First of all, an MN attaches the TR1, and then the TR1 is the agent of the MN in this MD. The ATR1 sends a Map-Register message including the EID and RLOC of the MN to the associated MS. The MS adds the mapping entry of the MN. When a CN wants to communicate with the MN, it sends packets to the ATR3 using its and the MN's EID as packets'source address and destination address. The ATR3 will send a LISP Map-Request message to the MS. The MS lookups the destination EID of the Map-Request and matches it against the prefixes in the EID-to-RLOC mapping database. If there is no match, the Map-Request is dropped. Otherwise, a LISP Map-Reply is returned to the ATR3. The ATR3 encapsulates packets with ATR3's RLOCs and ATR1's RLOCs as packets'source address and destination address. When the ATR1receives these packets, it decapsulates packets and then sends them to the MN. When the MN moves into the TR2 coverage area with the same MD of the ATR1, the TR2 only sends one Map-Update message to the ATR1. The ATR1 responds to the Map-Update message and establishes a tunnel with the TR2. In this case, we regard the ATR1 as a local agent of the MN. As long as the MN still stays in this MD, the MN's EID-to-RLOC mapping does not change. All the packets from other MDs destination to the MN pass through the ATR1 and then the ATR1 forwards packets to the TR2 by the tunnel. In this way, the mapping information in the remote ATR3 and the MS need not be changed, so this scheme significantly reduces signaling cost. Zhang et al. Expires June 10, 2013 [Page 6] Internet-Draft A Hierarchical Mapping System for LISP December 2012 +--+ +---+ +----+ +--+ +----+ +---+ |MN| |TR2| |ATR1| |MS| |ATR3| |CN | +--+ +---+ +----+ +--+ +----+ +---+ |<------Attachment-----> | | | | | | | Map- | | | | | |-Register->| | | | | | | Map- |<=Packets= | | | | |<--Request- | | | | | | | | | | | |-Map-Reply->| | | | | | | | | | |<========Packets========| | |<========Packets======= | | | | | | | | | | || | | | | | | Map- | | | | | |-Update--> | | | | | | | | | | | |Map-Update | | | | | |<-Response | | | | | | | | | | | | |<=======Packets======== |<=Packets= | | |<=Packets= | | | | | <=Packets= | | | | | | | | | | | Figure 2: Message flows of the location management scheme in micro-mobility scenario 3.3. Macro-Mobility Macro-mobility indicates that an MN crosses different MDs. In this case, the stale mapping entry in the mapping system and the TR of each CN must be updated in order to help new initiators and ongoing communication users acquire the correct mapping information. Figure 3 shows the mobility management scheme in macro-mobility scenario. Assume that the MN has performed the handover from the ATR1 to the TR2 as shown in Fig. 2. Then, the MN moves from the TR2 in the MD1 to the TR4 in the MD2. The TR4 as an agent in the MD2 adds the MN's mapping entry in its local table and then sends a Map-Register message to the MS. In addition, the ATR4 sends a Map-Update message to the ATR1. Then, the ATR1 sends a Map-Update response message to notify mapping entries of CNs to the ATR4. In this way, the ATR4 can acquire a set of CNs'mapping information. It avoids sending more messages to the mapping system, so this solution reduces the signaling cost. As soon Zhang et al. Expires June 10, 2013 [Page 7] Internet-Draft A Hierarchical Mapping System for LISP December 2012 as the ATR4 obtains the CNs'mappings, it will directly encapsulate and forward packets, so the scheme can support fast handoff. After that, the ATR1 sends a message to the ATR3 in order to update the new MN's mapping information in the ATR3's mapping table. Once the ATR3 gets the new mapping, packets destination to the MN are directly routed to the ATR4, while do not need to pass though the old ATR1. Thus, the scheme can avoid triangle routing and achieve route optimization. Finally, the ATR1 removes the MN's mapping entry from its mapping table. In addition, the ATR1 sends a delete tunnel message to the TR2 and macro-mobility's operations complete. +--+ +---+ +----+ +----+ +--+ +----+ +---+ |MN| |TR2| |ATR1| |ATR4| |MS| |ATR3| |CN | +--+ +---+ +----+ +----+ +--+ +----+ +---+ |<---------Attachment-------> | | | | | | | | Map- | | | | | | |-Register->| | | | | | | | | | | | | Map- | | | | | | |<-Update- | | | | | | | | | | | | | |Map-Update| | | | | | |<-Response| | | | | | | | | | | | | | | | | | | | |---------- Update-Map----------> | | | | |<------ Update-Map Response----- | | | | | | | | | | | Delete | | | | | | |<-Tunnel- | | | | | | | | | | | | | | Delete | | | | | | |<-Tunnel- | | | | | | | Response | | | | | | | | | | | | | | | | | |<==Packets=| | | | | <=====Packets======= | | |<=========Packets=========== | | | | | | | | | | | Figure 3:Message flows of the location management scheme in macro-mobility scenario Zhang et al. Expires June 10, 2013 [Page 8] Internet-Draft A Hierarchical Mapping System for LISP December 2012 4. Mapping Table The LISP proposes a kind of separate mapping table in the TR. The mapping information of local nodes and remote nodes stores in the EID-to-RLOC Database and the EID-to-RLOC Cache, respectively. The local table maintains the EID-to-RLOC mappings for the EID prefixes "behind" the router. The EID-to-RLOC Cache stores mapping entries of CNs which local users are communicating with. In this solution, the EID-to-RLOC Cache is shared by all the MNs. If an MN attaches another mapping domain's TR, the mapping information in the TR of each CN need be updated. However, all the MNs share the same cache and the old ATR does not know which CN is communicating with the MN. Thus, the old ATR can not inform the new ATR of CNs' mapping information. The new ATR must send mapping request messages to the mapping system. It not only adds query delay but also brings excess signaling cost. For macro-mobility scenario, to support fast handover and reduce the overload of the mapping system, we design a united mapping table in the ATR integrating the mappings of local MNs with the mapping entries of CNs. Figure 4 illustrates the data structure of the mapping table. Each mapping entry contains a local MN and a list of CNs which the local MN is communicating with. When an MN attaches to another MD's TR, the old ATR lookups the united mapping table to find the list of CNs of the MN. After that, the old ATR sends these mappings of CNs to the new domain's ATR. In this way, the new ATR can acquire mapping information quickly and accurately. Zhang et al. Expires June 10, 2013 [Page 9] Internet-Draft A Hierarchical Mapping System for LISP December 2012 +----------------------------------------------------------+ Local | EID | RLOC |Flag |Tunnel Source |Tunnel destination|Timer| Node | | | | address | address | |-- +----------------------------------------------------------+ | ----------------------------------------------------------- | +----------------------------- + |--> | EID | RLOC | Timer | ------------------------------- A list | EID | RLOC | Timer | of CNs +------------------------------ : : ------------------------------- | EID | RLOC | Timer | +----------------------------- + Figure 4: The mapping table in the ATR As shown in Fig. 4, the local node's mapping information in the united mapping table contains six sections. "EID"is used to represent the identity of an MN. "RLOC"is the IP address of the ATR for locating nodes in the network topology. "Flag"indicates the location of the MN. If the value of "Flag"is "LEFT", it indicates that the MN has left the ATR and the ATR forwards packets by the tunnel. "Tunnel source address"and "Tunnel destination address"are used to establish a tunnel and encapsulate packets with the tunnel header for the MN. If the value of "Flag"is "LIVE", it indicates the MN still is in the MD of the ATR. The function of "Timer"is to manage the MN's mapping entry. Mapping entries in the mapping table will not be deleted until the value of "Timer"is zero that hints the MN leaves the ATR coverage area. In addition, the united mapping table in the ATR also includes a list of CNs. Each CN's entry consists of "EID", "RLOC"and "Timer". "EID" and "RLOC"are identity and location of a CN. The ATR maintains a "Timer"for each CN's mapping entry. Whenever packets pass through the ATR, the timer resets to maximum. If the lifetime is expired, the ATR will remove the CN's mapping entry from the mapping table. +-----------------------------------------------------+ Local | EID | Tunnel Source | Tunnel destination| Timer| Node | | address | address | | +-----------------------------------------------------+ Figure 5: The mapping table in the TR Zhang et al. Expires June 10, 2013 [Page 10] Internet-Draft A Hierarchical Mapping System for LISP December 2012 Figure 5 illustrates the mapping information in the TR. "EID"is the identity of an MN. "Tunnel source address"and "Tunnel destination address"are used to set up a tunnel. "Tunnel source address"is an IP address of the TR and "Tunnel destination address"is one of the ATR's addresses. "Timer"is used to send a keeplive message to the MN in order to confirm that the MN still is its area. When "Timer" exceeds a predetermined threshold, the TR sends message to the MN. If the TR receives the response message from the MN, the TR resets the "Timer"to zero. Otherwise, the TR considers that the MN has been left from its area. 5. Properties In this section, we describe properties of the mobility management scheme based on identifier locator split architecture. The proposed scheme exhibits the following several advantages. Connection Survivability: The novel scheme must allow an MN to roam while keeping transport connections alive. By means of the identifier locator separation scheme the current IP address is split into two spaces for end-systems identifiers and routing locators. When an MN attaches a new access point, it only changes its locator. Because the identifier of the MN is constant and the locator's change is transparent to the upper layer, which makes it possible to keep transport connections alive. Therefore, the identifier/locator separation solution can support global roaming seamless and fast handover. Location Privacy: In the proposed identifier/locator separation scheme, if a CN wants to communicate with a MN, it uses its and MN's identifier as the data packets'source and destination address. And then the ATR receives the data and encapsulates them with locators. The core network's routers forward the data packets to the ATR of the MN according to the locator. The MN's ATR decapsulates the data packets and forwards them to the TR that the MN attaches. Finally, the TR sends packets to the MN. By the identifier/locator separation scheme, the CN only knows MN's identifier, so the location of the MN is hidden from the CN. Support routing scalability: One main aim of identifier/locator separation is to support routing scalability. The identifier/locator separation scheme removes host's identifier entries from core routers in today's routing system, without losing reachability to any destinations. After packets which are sent by a host arrive at a TR, they are encapsulated with the locator. Since the locator is reachable in core routers, the packet can be forward to destination. Zhang et al. Expires June 10, 2013 [Page 11] Internet-Draft A Hierarchical Mapping System for LISP December 2012 We design a novel mobility management scheme based on the identifier/locator separation which does not damage the separation architecture and can solve both global routing scalability problems and mobility support. As a result, the proposed mobility management scheme based on identifier/locator separation can support routing scalability. 6. Security Considerations TBD 7. IANA Considerations This document makes no request of the IANA. Zhang et al. Expires June 10, 2013 [Page 12] Internet-Draft A Hierarchical Mapping System for LISP December 2012 8. References [RFC 4984] David, M., Lixia, Z. and Kevin, F., "Report from the IAB Workshop on Routing and Addressing," RFC 4984, September 2007. [LISP] Dino, F., Vince, F., Dave, M. and Darrel, L., "Locator/ID Separation Protocol (LISP)", draft-ietf-lisp-24.txt(work in progress), November 2012. [Mapping] Jen, D., Zhang, L., "Understand mapping", draft-jen- mapping-00.txt, 2009. [SMGI] Zhang, L., Wakikawa, R., Zhu, Z., "Support Mobility in the Global Internet", In proceedings of the 1st ACM workshop on Mobile internet through cellular networks, 2009. [LISP-DHT] Laurent, M. and Luigi, I., "LISP-DHT: Towards a DHT to map identifiers onto locators", in Proc of ReArch'08, December 2008. [LISP-TREE] Lorand, J., Albert, C-A., Florin, C., Damien, S. and Oliver, B., "LISP-TREE: A DNS Hierarchy to Support the LISP Mapping System", IEEE Journal on Selected Areas in Communication, VOL. 28, NO.8, October 2010. [LISP+ALT] Vince, F., Dino, F., Dave, M. and Darrel, L., "LISP alternative topology (LISP-ALT)", draft-fuller-lisp-alt-10.txt(work in progress), December 2011. Author's Addresses Hongke Zhang, Feng Qiu, Huachun Zhou, Xiaoqian Li, Li Yi, Ying Rao National Engineering Laboratory for Next Generation Internet Interconnection Devices School of Electronics and Information Engineering Beijing Jiaotong University of China Phone: +86 01051685677 hkzhang@bjtu.edu.cn 07111019@bjtu.edu.cn Zhang et al. Expires June 10, 2013 [Page 13] Internet-Draft A Hierarchical Mapping System for LISP December 2012 hczhou@bjtu.edu.cn xiaoqianli@bjtu.edu.cn 10111022@bjtu.edu.cn 11111028@bjtu.edu.cn Zhengxin Zhang BEIJING C&W ELECTRONICS(GROUP) CO.,LTD. paulzhang@163.com Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Zhang et al. Expires June 10, 2013 [Page 14]