Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
2011 IEEE International Symposium on Network Computing and Applications IPv4+6 Yongmao ReQ, Hualin Qian, Yuepeng E, Jun Li, Jingguo Ge Computer Network Information Center, Chinese Academy of Sciences Beijing, China {renyongmao, eyp, jlee, gejingguo}@cstnet.cn, hlqian@cnic.cn Zone) RIB size growth problem today can potentially be exacerbated by IPv6’s much larger address space [1]. Abstract— The routing scalability and IP address exhaustion are two significant issues the current Internet faces. The “locator/identifier (Loc/ID) split” has become a well recognized design principle for future Internet architectures that make Internet routing more scalable. In this paper, a novel Loc/ID split routing and addressing architecture called IPv4+6 is proposed. It not only solves the routing scalability problem but also expands the IP address space. It is easy to deploy, which only needs to make simple changes on DNS and gateway router. Keywords-Routing Scalability; Address Locator/identifier split; Architecture; Protocol I. In this paper, we propose a novel Loc/ID split routing and addressing architecture called IPv4+6. As far as we know, it is the first time to consider the routing scalability issue and the address space exhaustion issue together. The IPv4+6 architecture not only solves the routing scalability problem, but also makes full use of existing both IPv4 and IPv6 address space, which effectively solves the IPv4 address space exhaustion problem. It is easy to deploy, which only needs to make some simple changes on DNS and gateway router. exhaustion; This paper is organized as follows. Firstly, Sect. II describes IPv4+6 architecture in detail. And, Sect. III and Sect. IV present its performance and deployment. Then, in Sect. V, the related work and their comparison with IPv4+6 are introduced. Finally, Sect. VI concludes this work. INTRODUCTION The current Internet routing and addressing architecture combines two functions: Routing Locators (RLOCs), which define “where” a device is, and Endpoint Identifiers (EIDs), which define “who” the device is, in a single numbering space, namely the IP address. At the Internet Architecture Board (IAB)’s October 2006 Routing and Addressing Workshop, participants concluded that the so-called “locator/identifier overload” of the IP address semantics is one of the causes of the routing scalability problem and a “split” seems necessary to scale the routing system [1]. This IAB workshop renewed interest in the design of a scalable routing and addressing architecture for the Internet. Since then, the “locator/identifier (Loc/ID) split” has become a well recognized design principle for future Internet architecture. Several meaningful Loc/ID split architectures have been proposed, such as Six/One [2], LISP [3], ILNP [4], HIP [5], etc. II. The basic idea of IPv4+6 is as follows. The whole Internet is divided into two parts: the backbone network and the user networks. In the backbone network, IPv4 address is used as RLOC for routing. In the user networks, ideally, IPv6 address is used as EID, and, considering the compatibility, IPv4 address can be used as EID too. The following sections will give the details. A. Network Model Figure 1 shows the simplified IPv4+6 network model, including one backbone network and two user networks. The two IPv4 addresses of two edge ports of the backbone network are denoted by Loc-A and Loc-B respectively. Two gateways RMT-A and RMT-B are installed for the two user networks. The host IP addresses of user networks are denoted by EID-A and EID-B respectively. Some basic concepts are explained as follows. 1) EID. One EID (Endpoint Identifier) represents the identifier of one host in user network. It is globally unique. For compatibility with existing network and avoiding change, it is named by IP address. And, because of the large address space of IPv6, IPv6 address is recommended for EID. Considering the current network status, IPv4 address can be used as EID too. 2) RLOC. The Routing Locator (RLOC) represents the location of user network. Specifically, one RLOC represents one access point of user network in the backbone network. It is well known that the exhaustion of the IPv4 address space is one of the greatest challenges the current Internet faces. As an expedient measure, the Network Address Translators (NAT) [6] has been introduced. Unfortunately, NAT generally breaks any upper-layer protocol that embeds the IP address inside the protocol, such as FTP [7]. IPv6 [8] has much larger address space than IPv4, and has been recognized to be an effective solution to the exhaustion of the IPv4 address space. In 1994, the IETF selected IPv6 as the next generation of the Internet Protocol. IPv6 has already been practically deployed in some countries like China. IPv6 has huge address space, but its design does not consider the Loc/ID split issue. Due to the increased IPv6 address size over IPv4, a full immediate transition to IPv6 is estimated to lead to the RIB (Routing Information Base) and FIB (Forwarding Information Base) sizes increasing by a factor of about four. In the absence of a scalable routing strategy, the rapid DFZ (Default Free This work was supported in part by the National Development and Reform Commission of China under Grant No. [2010]1634 and the Scientific Research Fund for the winner of President Award of Chinese Academy of Sciences. 978-0-7695-4489-2/11 $26.00 © 2011 IEEE DOI 10.1109/NCA.2011.53 THE IPV4+6 ARCHITECTURE 306 can be one or more B records corresponding to one or more links from user network to upper ISPs (multi-homing). That means, if one user network has multiple ISPs, namely it has multiple up link access points in the backbone network, it can has corresponding multiple RLOCs. This function provides the convenience for multi-homing. In the backbone network, RLOC is used for routing. RLOC is named by IPv4 address, so the current backbone network does not need to make any change. The hosts in the user network configure their recursive domain name servers (resolvers) pointing to the RMT gateway of this user network. When a user host wants to initiate communication, it firstly needs to look up the correspondent host’s domain name. The RMT is responsible for recursively resolving and returning result to user host. A key characteristic is: when RMT returning resolved result to user host, it detains record B. There is no difference between the resolved result gotten by user host and the current Internet. Thus, any device in user network does not know the existing of RMT and does not know what changes in DNS system as well. This characteristic guarantees that user network does not need to make any change in the new architecture and also provides base for mobile and multi-homing connection of user network. Backbone Network IPv4 Loc-A Loc-B RMT-A RMT-B User Network A IPv6 Host AˈEID-A User Network B IPv6 The RMT gateway executes mapping function. It saves the resolved destination record A6 and B into a mapping table (mapping database). RMT is responsible for dynamic generation, lookup and update of this mapping table, forming a mapping system. Host BˈEID-B Figure 1. IPv4+6 Network Model C. Encapsulation When passing through RMT, the original data packet sent out from user network will be encapsulated with an outer IPv4 packet header, whose destination address is the RLOC address contained in the correspondent’s B record saved in mapping system and source address is the RLOC address of this local user network. Both of the two RLOC addresses lie in the IPv4 address space. In order to let RMT judge this encapsulation header more easily, the protocol type field is set to a wellknown number assigned by IANA, called IPv4+6 tag. 3) RMT gateway. A special gateway device is set up at the joining point between the backbone network and each user network. It mainly has three functions: (1) domain name resolver (namely the recursive server in DNS system); (2) Loc/ID mapping system; (3) encapsulation and decapsulation. For convenience, it is called RMT gateway, which is the acronym for the three functions: Resolver, Mapping, and Tunneling. 4) Map-and-encap. There are two basic approaches to implement the Loc/ID split: map-and-encap and address rewriting. IPv4+6 adopts the map-and-encap scheme. When a source sends a packet to the EID of a destination outside of the source user network, the packet traverses the user network to a RMT gateway router. The RMT gateway maps the destination EID to a RLOC that corresponds to an access point of the destination user network, and encapsulates the packet by using the RLOC addresses as the source and destination address in the encapsulation header. D. Communication Process Suppose host A in user network A initiates communication with host B in user network B, the communication process is illustrated as figure 2. User network A Host A DNS root & top-level server RMT-A Query host B addr User network B Backbone network Authoritative server in UN-B RMT-B Host B Query host B addr Ask Authoritative Server in UN-B B. Loc/ID Mapping System IPv4+6 adopts the existing DNS system to realize the Loc/ID mapping mainly by adding a new record in DNS. Query host B addr Host B’s addr is EID-B with Loc -B Host B’s addr Mapping is EID-B In zone file of DNS, except current record A6, a kind of new resource record (supposed to be called record B) is added. As the same as record A6, the record B also belongs to IP address type. The Record A6 denotes the ID of communication device in user network (namely EID in Fig.1). In order to keep EID routable in user network and do not change any current protocol of user network, IP address is used as EID. So, record A6 is the current record A6 of DNS. Record B denotes corresponding Loc IP address of backbone network. While resolving domain name, the authority server returns record A6 and B to the recursive server. In one DNS registration, there EID-A->EID-B Mapping if needed Encapsulating Loc-A -> Loc-B [EID-A -> EID-B] Decapsulating EID-A->EID-B EID-B-> EID-A Time Loc-B -> Loc-A [EID-B -> EID-A] Encapsulating Decapsulating EID-B-> EID-A Figure 2. 307 Communication time sequence of IPv4+6 1) Host A looks up host B’s domain name through RMT-A. a) looking up the mapping database, and gets the EID-B’s corresponding Loc-B. Compared with the current Internet, it is very easy for the user networks to change access point or change the uplink ISP (Internet Service Provider). It only needs to change the DNS registering information without needing to change IP address. 5) Mobility. Because the EID is globally unique, after migration, it only needs to change DNS information, and does not need to allocate a new EID number. 6) Security. Because the user host does not know the Locator information, it does not know the router address. Thus, the DoS attacks to routers in backbone network will be reduces greatly. b) using Loc-B and Loc-A as the encapsulation header’s destination address and source address respectively and makes tunnel encapsulation. The encapsulated data packet is delivered to the edge router of the backbone network. It is easy to deploy a pure IPv4+6 network. It only needs to modify the gateway of user networks to realize the RMT functions and add a B record in DNS. 2) The recursive server RMT-A gets host B’s A6 record value EID-B and B record value Loc-B. It returns EID-B to host A, and saves Loc-B and EID-B into the mapping database. 3) Host A sends a normal IP packet, whose destination address is EID-B and source address is EID-A. 4) RMT-A receives the original data packet, and makes the following operations: IV. 5) The backbone network delivers the data packet to RMTB by using the Loc-B and Loc-A in the encapsulation header For current Internet, during the process of transition to IPv4+6, the IPv4+6 networks should be able to communicate with non-IPv4+6 networks. There are two types of communications discussed as follows. 6) RMT-B receives the data packet, and makes the following operations: IPv4+6 initiates communication to non-IPv4+6. When user host EID-A in IPv4+6 network initiates communication, the first step is starting DNS name resolution through RMT gateway. If the RMT gateway finds there is no B record in the domain name record of the correspondent EID-B, it uses NULL value to indicate the RLOC of EID-B and saves into the mapping database. For data packets received from user host, the RMT gateway looks up the mapping database, if it finds the correspondent’s RLOC is NULL, it makes no encapsulation and only needs to forward the original data packet. a) saving the parameters like EID-A and Loc-A into the mapping database and its local cache. b) decapsulating the encapsulation header, and delivering the original data packet to host B by EID-B in the original packet header. For the data packets returning from host B to host A, exchange the source address and destination address of the received data packets, namely use EID-A and EID-B as destination address and source address respectively to assemble data packet. The other process is the same with the above. Non-IPv4+6 initiates communication to IPv4+6. Suppose host EID-B in non-IPv4+6 network initiates communication to host EID-A in IPv4+6 network. Host EID-B has no RMT gateway to deal with B record, so it only uses A6 record to send packets and ignores the B record. When the RMT gateway in IPv4+6 network receives this packet, it should judge whether the communication is initiated from IPv4+6 or non-IPv4+6. The simplest method is to analyze the packet header of the first arrived packet (If there is no corresponding mapping entry, it means that this is a new communication initiated by the correspondent). If the protocol type field of IP header does not have a IPv4+6 tag, the RMT gateway sets LocB to NULL, and the other process is the same as described in the above paragraph.  For communication in the same user network, since no routing forward is needed, no any change is needed. So, it is not discussed any more. III. DEPLOYMENT AND TRANSITION DISCUSSION Compared with the current Internet architecture, IPv4+6 has the following advantages: 1) Scalability. For the current Internet, one user network may have multiple address prefixes, PI (Provider Independent) addresses, and temporarily moved IP addresses. IPv4+6 adopts one locator address to represent one user network, which will reduce the routing table size of backbone network immensely. 2) Enlarged address space. IPv4+6 enlarges the current Internet IPv4 address space to both IPv4 and IPv6 two address space. For the current Internet, the backbone network and user networks share the same address space. IPv4+6 splits the backbone network and user network. The IPv4 address space is very large for backbone network, and IPv6 address space is also very large for user network. 3) Easy deployment. It only needs to modify the gateway router and add a record in DNS. 4) Multi-homing. After splitting ID and Locator, the user host does not know and in fact does not need to know the information of Locator accessing into the backbone network. Thus, IPv4+6 network can co-exist with the current network. But, when the IPv4+6 network communicates with non-IPv4+6 network, the EID should be routable. So, the EID prefixes needs to be announced to DFZ, which will havoc one of the primary goals of IPv4+6 – to reduce global routing system state. This is similar with LISP. So, for solutions to reduce such impact, like LISP’s proxy xTR and LISP-NAT, proxy RMT gateways or IPv4+6-NAT may be used. The communication between IPv4+6 network and non-IPv4+6 network needs further exploration. 308 V. RELATED WORK used for public address realm and the other for private address realm. The public address selects the address realm, while the private address selects the node inside the realm. Because during the whole communication process, two groups of IPv4 addresses are used, all the terminal hosts also need to be modified except changing the gateway. Compared with IPv4+4, DIPSA and IPv4+6 can keep the hosts unchanged while extending the address space. As for IPv6, it only enlarges address space and has no consideration on Loc/ID split. It still has not solved the related issues like routing scalability, mobility and multi-homing. Moreover, if the whole Internet uses IPv6, the routing scalability issue will become much heavier than IPv4. As for the transition solutions from IPv4 to IPv6, they only consider how to transit from IPv4 to IPv6, and their ultimate purpose is realizing the complete deployment of IPv6. Compared with IPv6 and the transition solutions, IPv4+6 not only enlarges address space, but also realizes Loc/ID split. Its ideal deployment is the backbone network uses IPv4 and the user networks use IPv6. Here, the IPv4+6 architecture is compared with other related architectures which are aimed to solve the routing scalability issue or IPv4 address exhaustion issue. The Locator Identifier Separation Protocol (LISP) [3] is a kind of noted Loc/ID split architecture. IPv4+6 is different from LISP. First, IPv4+6 not only realizes the Loc/ID split but also enlarges the IP address space. Second, it uses DNS-based mapping system, which is simpler and more efficient than LISP’s mapping system LISP-ALT (LISP-AlternativeTopology) [9]. LISP-ALT uses BGP to find a particular EIDto-RLOC mapping, EID prefixes should be routable in the ALT logical topology, which brings in new scalability issue just like the original routing scalability issue. In LISP, the mapping lookup is started by intermediate node (gateway router). In this case, packets are already on the way when the RLOC information needs to be added. When the mapping information is not yet available at this node, the subsequent packets will be cumulated or dropped. This is a special challenge. In IPv4+6, its hierarchical DNS-based mapping system is simple and scalable. And, the mapping lookup is initiated by the end host at the meantime when it initiates DNS lookup. So, it does not have the packet drop issue. As mentioned in Sec. I, NAT is a kind of coping mechanism for address exhaustion problem. Although NATs have already been widely used, it still has a number of practical drawbacks. For example, NATs prevent IP level end-to-end security, reduce robustness, break a number of application level protocols, complicate the network and inhibit some novel uses of the Internet (e.g., such as peer-to-peer networking).[10] And, there is single direction communication issue. The host out of the NAT network can not initiate connection to the host with a private IP address in the NAT network. For instance, a host in NAT network can not be used as a server. The Dual IP Address Spaces Architecture (DIPSA) [11] also aims at the scalability issue and address exhaustion issue. It separates the backbone network and user network. The backbone network has a whole IPv4 address space, and each user network has a whole IPv4 address space independently. DIPSA realizes the Loc/ID split and enlarges the IP address space immensely. Compared with LISP, in DIPSA network, EID is not globally unique, but only unique in local user network, which enlarges address space. Moreover, DIPSA uses DNS based mapping system, which is simpler and more efficient than LISP. Compared with NAT, DIPSA can use the combination of RLOC+EID to uniquely identify a host. But since the EID is only unique in local user network, like the private address in NAT network, applications which have EID information at the application layer still can not be used unless modifying the EID into RLOC+EID. Compared with NAT and DIPSA, in IPv4+6, EID is globally unique, there is no such problem. IPv4+4 [10] architecture aims to extend IPv4 address space. It builds on the existence of NAT and private address realms. It uses two groups of IPv4 addresses at the same time. One is VI. CONCLUSION In this paper, we defined IPv4+6, a new architecture aimed to realize Loc/ID split and enlarge IP address space. IPv4+6 separates the Internet into backbone network and user networks. The backbone network uses IPv4 address space and the user networks use IPv6 address space. Encapsulation is used as the main tool to maintain backward compatibility with current network. And, the DNS based mapping system is simple and efficient. IPv4+6 makes full use of existing network status and makes changes as few as possible. It is easy to deploy, which only needs to make simple changes on DNS and gateway router. IPv4+6 is still work in progress, and its transition and implementation needs further exploration. REFERENCES [1] D. Meyer, L. Zhang, K. Fall, “Report from the IAB Workshop on Routing and Addressing,” RFC 4984, September 2007. [2] C. Vogt, “Six/One: A solution for routing and addressing in IPv6,” Internet draft: draft-vogt-rrg-six-one-02, 2007. [3] D. Meyer, “The locator identity separation protocol (LISP),” The Internet Protocol Journal, 2008,11(1):2336 [4] Randall Atkinson,Saleem Bhatti,Stephen Hailes. “ILNP: mobility, multihoming, localised addressing and security through naming,” Telecommun Syst (2009) 42: 273–291 [5] Andrei Gurtov and Miika Komu, “Host Identity Protocol: Identifier/Locator Split for Host Mobility and Multihoming,” The Internet Protocol Journal, Vol.12,No.1, pp.27-32,2009 [6] Srisuresh, P. and M. Holdrege, “IP Network Address Translator (NAT) Terminology and Considerations,” Internet RFC2663, August 1999. [7] M. Holdrege, P. Srisuresh, “Protocol Complications with the IP Network Address Translator,” Internet RFC 3027, January 2001 [8] S. Deering, R. Hinden, “Internet Protocol, Version 6 (IPv6) Specification,” Internet RFC 2460, December 1998. [9] V. Fuller., et al., "LISP Alternative Topology (LISP+ALT)," draft-ietflisp-alt-05.txt, 2010 [10] Z. Turanyi, A. Valko. "IPv4+4",In the Proceedings of the 10 th IEEE International Conference on Network Protocols (ICNP’02), 2002 [11] QIAN Hua-Lin, E Yue-Peng, GE Jing-Guo, REN Yong-Mao, and You Jun-Ling. “Dual IP Address Spaces Architecture,” accepted by the Journal of Software. (In Chinese with English abstract) 309