Mobile Ad Hoc Networking Working Group Elizabeth M. Belding-Royer INTERNET DRAFT Yuan Sun 14 November 2001 University of California, Santa Barbara Charles E. Perkins Nokia Research Center Global Connectivity for IPv4 Mobile Ad hoc Networks draft-royer-manet-globalv4-00.txt Status of This Memo This document is a submission by the Mobile Ad Hoc Networking Working Group of the Internet Engineering Task Force (IETF). Comments should be submitted to the manet@itd.nrl.navy.mil mailing list. Distribution of this memo is unlimited. This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. Abstract This document describes how to provide Internet connectivity to mobile ad hoc networks. It describes a mechanism whereby the Ad hoc On-Demand Distance Vector (AODV) Routing protocol can cooperate with the Mobile IP protocol such that mobile nodes within an ad hoc Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page i] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 network, which are out of direct transmission range of a foreign agent, can obtain a care-of address and register with the foreign agent to obtain Internet connectivity. Mobile IP is used for mobile node registrations with a foreign agent, while AODV is used for routing within the ad hoc network and for obtaining routes to the foreign agent. Once a manet node has a care-of address, it may send data packets to destinations in the Internet by routing through the foreign agent. Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page ii] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 Contents Status of This Memo i Abstract i 1. Introduction 1 2. Terminology 1 3. Overview 1 4. Packet Formats 2 4.1. Route Reply (RREP) Message Format . . . . . . . . . . . . 3 5. Addressing 4 5.1. Foreign Agent Discovery . . . . . . . . . . . . . . . . . 5 6. Internet Connectivity 6 6.1. Agent Advertisements . . . . . . . . . . . . . . . . . . 6 6.2. Registering with the Foreign Agent . . . . . . . . . . . 7 6.3. Route Discovery . . . . . . . . . . . . . . . . . . . . . 7 7. Extension Formats 9 7.1. RREP Foreign Agent Extension Format . . . . . . . . . . . 10 8. Configuration Parameters 10 9. Security Considerations 11 10. Acknowledgments 11 Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page iii] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 1. Introduction A mobile ad hoc network (manet) is the cooperative engagement of a collection of (typically wireless) mobile nodes without the required intervention of any centralized access point or existing infrastructure. Many routing protocols have been proposed for discovering and maintaining routes within these networks. The Ad hoc On-Demand Distance Vector (AODV) Routing protocol [4] is one such protocol. AODV builds and maintains a route between a source and destination pair despite route path changes due to movement of nodes. Global connectivity is required for mobile nodes to communicate with the fixed Internet. However, routing protocols for ad hoc networks typically only maintain routes within the ad hoc network, and hence do not provide a way to utilize an access point to the wired network when one is available. In particular, mobile nodes that are multiple hops away from a foreign agent are unable to utilize that foreign agent for obtaining a care-of address and global connectivity. This document specifies a method for enabling ad hoc networks to utilize connectivity to the Internet, whenever such a connection is available. Specifically, a method for cooperation of the Mobile IP [3] and AODV protocols is proposed, such that mobile nodes may obtain a care-of address and access the global Internet, even when they are multiple hops away from the access point. 2. Terminology This protocol specification uses conventional meanings [1] for capitalized words such as MUST, SHOULD, etc., to indicate requirement levels for various protocol features. 3. Overview This document proposes a method whereby an ad hoc network of mobile nodes can obtain Internet connectivity when one or more of the mobile nodes is within transmission range of a MobileIP foreign agent. The proposed method utilizes the Ad hoc On-Demand Distance Vector (AODV) Routing protocol for the discovery and maintenance of routes within the ad hoc network. The Mobile IP protocol is utilized such Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 1] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 that mobile nodes may obtain care-of addresses, and hence Internet connectivity, through a multi-hop path to a foreign agent. Agent Advertisement messages initiated by foreign agents are rebroadcast by the nodes within the ad hoc network so that mobile nodes may learn of the presence of the foreign agent. Alternatively, mobile nodes may proactively discover foreign agents by issuing a Route Request for the ``All Mobility Agents'' multicast group address. Mobile nodes with a current route to a foreign agent unicast a Route Reply to the requesting node, indicating the IP address of the foreign agent. Upon reception of this message, the mobile may unicast an Agent Solicitation message to the foreign agent. Foreign agents are used by the mobile nodes to acquire care-of addresses for global Internet connectivity. Once a route to a foreign agent is known, a mobile node unicasts a Registration Request message to the foreign agent, thereby registering with that foreign agent and its home agent. Route discovery within the ad hoc network is accomplished through AODV's route request/route reply discovery cycle. Destinations that are not members of the ad hoc network can be reached through the foreign agent. Upon reception of Route Request messages for destinations within the wired Internet, the foreign agent transmits a route reply to the requesting node, indicating that the destination node can be reached through the foreign agent. The methods proposed in this document conform to the MobileIP protocol specified in [3] and the AODV protocol specified in [4]. All message types, data structures, and configuration parameters specified within these documents are used unmodified, unless otherwise noted. 4. Packet Formats All packet formats are the same as in [4], unless otherwise specified. Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 2] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 4.1. Route Reply (RREP) Message Format 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 |R|A|F| Reserved |Prefix Sz| Hop Count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination IP address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source IP address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Lifetime | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The format of the Route Reply message is illustrated above, and contains the following fields: Type 2 R Repair flag; used for multicast. A Acknowledgment required. F Foreign Agent RREP (FA-RREP); see section 6.3 Reserved Sent as 0; ignored on reception. Prefix Size If nonzero, the 5-bit Prefix Size specifies that the indicated next hop may be used for any nodes with the same routing prefix (as defined by the Prefix Size) as the requested destination. Hop Count The number of hops from the Source IP Address to the Destination IP Address. For multicast route requests this indicates the number of hops to the multicast tree member sending the RREP. Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 3] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 Destination IP Address The IP address of the destination for which a route is supplied. Destination Sequence Number The destination sequence number associated to the route. Source IP Address The IP address of the source node which issued the RREQ for which the route is supplied. Lifetime The time for which nodes receiving the RREP consider the route to be valid. Note that this RREP is the same message type as the RREP in [4], with the addition of the 'F' flag to indicate that the RREP is an FA-RREP sent by the foreign agent (section 6.3). 5. Addressing A node that desires Internet connectivity must have a globally routable IP address. When a node has an IP address that is valid on its home network, normal Mobile IP operation applies; the node must obtain a care-of address on the visited network to obtain Internet connectivity. The node may obtain such an address in one of three ways: (i) It may wait for the reception of an Agent Advertisement message, initiated by the foreign agent. (ii) It may proactively request an address by issuing an Agent Solicitation message for the foreign agent. (iii) It may acquire a co-located care-of address through some external means. Foreign agents periodically transmit Agent Advertisement messages on their wireless channels. These messages contain the IP address of the foreign agent. Optionally, these messages may also contain one or more advertised Care-of Addresses. When a mobile node receives Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 4] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 such an advertisement, it selects one of the advertised care-of addresses to be its new care-of address. Alternatively, according to (ii) above, a node may proactively solicit a care-of address from a foreign agent by issuing an Agent Solicitation. A mobile node that does not know the IP address of any foreign agents must discover a route to its closest foreign agent. It is possible for a mobile node to not have received an Agent Advertisement if the node has just joined the network and is in the interval between Agent Advertisements, or if network collisions prevented the broadcast Agent Advertisement from reaching the mobile. Section 5.1 describes the foreign agent discovery procedure. Finally, a node may obtain a co-located care-of address through some external means, such as through a DHCP server. The specific means of obtaining a co-located care-of address are beyond the scope of this document. 5.1. Foreign Agent Discovery When a mobile node wishes to proactively discover a foreign agent, it may do so by issuing a Route Request (RREQ). This RREQ is a standard RREQ message, as specified in [4], that has the destination IP address set to 224.0.0.11, the ``All Mobility Agents'' multicast group address [2]. The mobile cannot put the IP address of the foreign agent into the RREQ because it may not know the FA's address. The mobile node then broadcasts this RREQ to its neighbors. When a neighboring mobile node receives this RREQ, it first checks its Foreign Agent List to determine whether it is currently registered with a foreign agent. If the node is not running MobileIP, then it does not have a Foreign Agent List, and so it simply rebroadcasts the request. Also, if the mobile node is not registered with any foreign agents, then it likewise rebroadcasts the request. If, on the other hand, the mobile node is currently registered with a foreign agent, then the mobile checks whether it has a current route to that foreign agent. It is possible for the node to be registered with a foreign agent while its route to that agent has expired or been invalidated. If the mobile node does not have a current route to the foreign agent, then it rebroadcasts the request. Otherwise, if it does have a current route to the foreign Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 5] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 agent, it creates a route reply as specified in section 8.6 of [4], with the exception that it appends a Foreign Agent extension to the RREP. The format of the extension is given in section 7.1. The Foreign Agent extension indicates the IP address of the foreign agent. The agent's IP address is placed in the ForeignAgent IP Address field of the RREP extension. The foreign agent group IP address (224.0.0.11) is placed in the Destination IP Address field of the RREP. The RREP is then unicast back to the source node. When the source node receives a route reply for a foreign agent, it can then use that route to unicast an Agent Solicitation message to the foreign agent. Note that the TTL of this Agent Solicitation MUST NOT be set to 1, as specified in [3]. Instead, the TTL should be set equal to NETWORK_DIAMETER, so that the foreign agent is ensured of receiving the Solicitation. Upon receiving the Agent Solicitation message, the foreign agent unicasts an Agent Advertisement back to the mobile node. After receiving the Agent Advertisement message, the mobile node then proceeds as described in the previous section, by selecting one of the advertised care-of addresses to be its own care-of address. 6. Internet Connectivity 6.1. Agent Advertisements Foreign agents periodically advertise their presence through Agent Advertisement messages. The Agent Advertisement messages are constructed as described in section 2.1 of [3]. When mobile nodes receive the Agent Advertisement, they process it according to section 2.4 in [3]. In addition, the mobile node records the foreign agent IP address, together with the Sequence Number of the Agent Advertisement. In this way, if it later receives the packet as it is rebroadcast by its neighbors, it will know not to reprocess the packet. When a node receives duplicate Agent Advertisement messages, it silently discards those duplicates. After processing the Agent Advertisement, the mobile node MUST rebroadcast the packet on its interfaces. This allows mobile nodes that are not in direct communication range of the foreign agent to receive the Agent Advertisements. The rebroadcasting of the Agent Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 6] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 Advertisement message SHOULD be slightly randomized in order to avoid synchronization and subsequent collisions with other nodes' rebroadcasts. 6.2. Registering with the Foreign Agent When a mobile node receives an Agent Advertisement with the 'R' bit set, the mobile node MUST register with the foreign agent, as specified in section 2.4.1 of [3]. If the mobile node receives an Agent Advertisement without the 'R' bit set, then it MUST register with the foreign agent if it requires Internet connectivity. To register with the foreign agent after receiving an Agent Advertisement, the node creates a Registration Request and fills in the fields of the Registration Request as indicated in section 3.3 of [3]. The node then unicasts the Registration Request message to the foreign agent. The node should have a valid path to the foreign agent because it has just received an Agent Advertisement from the agent. In the event that the mobile node's route to the foreign agent has become invalid, the node can initiate a route discovery procedure to find a new route to the foreign agent. It can then use that route for the transmission of the Registration Request. The foreign agent processes the Registration Request as specified in [3], with the exception that, when it receives the Registration Reply from the home agent, it unicasts this Reply along the (possibly) multi-hop path back to the mobile node. Upon reception of the Registration Reply, if the foreign agent's route to the mobile node has timed out or been invalidated, the foreign agent must discover a route to the mobile node. For instance, it may use the route discovery procedure described in [4]. 6.3. Route Discovery A mobile node that needs a route to a destination does not initially know whether the destination node is within the ad hoc network, or whether it is reachable through the wired interface of the foreign agent. It therefore must first search the ad hoc network for the destination. If a route to the destination is not discovered within the ad hoc network, the mobile can conclude that the destination is Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 7] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 not in the ad hoc network, and hence it can use the foreign agent as a default router and send the data packets for the destination directly to the foreign agent. To begin the search for the destination, the mobile node creates a route request for the destination, as specified in section 8.3 of [4]. At the mobile nodes, the route request is processed and route replies are generated as specified in [4] as well. The foreign agent has specialized processing of route request messages. When a foreign agent receives a route request, it checks its route table to determine whether it has an explicit route entry for the destination node. The foreign agent may have such an entry if the destination is a registered mobile node within the ad hoc network. If a valid route table entry for the destination exists, then the foreign agent creates a route reply as specified in [4]. On the other hand, if the foreign agent does not have a route table entry for the destination node, then it assumes that the destination is a node in the Internet that is reachable through its wired interface. In this case, it creates a special route reply with the 'F' flag set. The destination sequence number of the RREP is set equal to that in the RREQ, and the hopcount of the RREP is set equal to zero. The foreign agent then unicasts this route reply back to the source node. This route reply is hereafter referred to as an FA-RREP. The mobile node waits NET_TRAVERSAL_TIME milliseconds for the reception of a route reply. If it receives a route reply in response to its route request that does not have the 'F' flag set, this indicates the destination is in the ad hoc network and can be routed to within the network. Once the route reply is received, the mobile node can use the discovered path for data packet transmission to the destination. When the mobile node receives an FA-RREP, it stores this route but it SHOULD NOT use this route immediately. This route reply indicates that the foreign agent believes the destination node is located in the wired Internet. It is possible for the mobile to receive an FA-RREP from the foreign agent before it receives a route reply from the destination node within the ad hoc network, if the mobile node is located closer to the foreign agent than it is to the destination. Therefore, the mobile node should retain this route, and only utilize Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 8] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 it after it has concluded that the destination is not located in the ad hoc network. If a route reply without the 'F' flag set is not received after NET_TRAVERSAL_TIME milliseconds, the mobile node attempts route discovery up to RREQ_RETRIES additional times. If, after that number of attempts, a route to the destination is not discovered, it is concluded that the destination node is not in the ad hoc network. The mobile node then determines whether it has received an FA-RREP in response to its route request. If it has, it then enters this route into its route table, and utilizes it for the transmission of data packets to the destination node. These data packets are transmitted using normal IP forwarding to the foreign agent. Once the foreign agent receives the data packets, it also uses normal IP forwarding to route the data packets to their intended destinations. Note that tunneling within the ad hoc network is not needed. 7. Extension Formats RREQ and RREP messages have extensions defined in the following format: 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 | Length | type-specific data ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ where: Type x Length The length of the type-specific data, not including the Type and Length fields of the extension. Extensions with types between 128 and 255 may NOT be skipped. The rules for extensions will be spelled out more fully, and conform with the rules for handling IPv6 options. Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 9] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 7.1. RREP Foreign Agent Extension Format 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 | Foreign Agent IP Address.... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ...FA IP Addr | +-+-+-+-+-+-+-+-+ Type 10 Foreign Agent IP Address IP Address of the foreign agent. The Foreign Agent RREP extension is included during a route discovery for foreign agents, when the source node does not know the IP address of any foreign agents. 8. Configuration Parameters This section gives default values for some important values associated with address discovery protocol operations. Parameter Name Value ---------------------- ----- NET_DIAMETER 10 NET_TRAVERSAL_TIME 3 * NODE_TRAVERSAL_TIME * NET_DIAMETER / 2 NODE_TRAVERSAL_TIME 40 RREQ_RETRIES 1 Note that the NET_TRAVERSAL_TIME and NODE_TRAVERSAL_TIME should be set as specified in [4]. Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 10] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 9. Security Considerations This document does not define any method for secure operation of the protocol. While MobileIP provides mechanisms for securing mobile node registrations, AODV does not currently provide any security mechanisms. AODV is susceptible to impersonation attacks, as well as malicious control packet modifications. The utilization of AODV with MobileIP is subject to the same security attacks to which MobileIP and AODV are already susceptible. 10. Acknowledgments The authors would like to thank Jari Malinen and Ryuji Wakikawa for their insightful comments which aided in the refinement of the protocol design. References [1] S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. RFC 2119, March 1997. [2] C. Perkins. IP Mobility Support. Request for Comments (Proposed Standard) 2002, Internet Engineering Task Force, October 1996. [3] Charles E. Perkins. IP Mobility Support for IPv4, Revised. IETF Internet Draft, draft-ietf-mobileip-rfc2002-bis-08.txt, September 2001. (Work in Progress). [4] Charles E. Perkins, Elizabeth M. Royer, and Samir R. Das. Ad hoc On-Demand Distance Vector (AODV) Routing. IETF Internet Draft, draft-ietf-manet-aodv-09.txt, November 2001. (Work in Progress). Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 11] Internet Draft Global Connectivity for IPv4 Manets 14 November 2001 Author's Addresses Questions about this memo can be directed to: Elizabeth M. Belding-Royer Dept. of Computer Science University of California, Santa Barbara Santa Barbara, CA 93106 +1 805 893 3411 +1 805 893 8553 (fax) eroyer@cs.ucsb.edu Yuan Sun Dept. of Computer Science University of California, Santa Barbara Santa Barbara, CA 93106 +1 805 893 8981 +1 805 893 8553 (fax) suny@cs.ucsb.edu Charles E. Perkins Communications Systems Laboratory Nokia Research Center 313 Fairchild Drive Mountain View, CA 94303 USA +1 650 625 2986 +1 650 691 2170 (fax) charliep@iprg.nokia.com Belding-Royer, Sun, Perkins Expires 14 May 2002 [Page 12]