1. Field of the Invention
The present invention relates to routing protocols for establishment of an ad hoc mobile network by mobile routers, where the routing protocols are optimized for minimal overhead for accommodating rapid topology changes in the ad hoc mobile network.
2. Description of the Related Art
Proposals have been made by Internet Engineering Task Force (IETF) groups for improved mobility support of Internet Protocol (IP) based mobile devices (e.g., laptops, IP phones, personal digital assistants, etc.) in an effort to provide continuous Internet Protocol (IP) based connectivity. The IETF has a Mobile IP Working Group that has developed routing support to permit IP nodes (hosts and routers) using either IPv4 or IPv6 to seamlessly “roam” among IP subnetworks. In addition, the Mobile Networks (MONET) group (renamed as the Network Mobility (NEMO) group) has published different Internet Drafts, including an Internet Draft by Thierry Ernst, entitled “Network Mobility Support Terminology”, February 2002.
According to the NEMO group, a mobile network may be composed by one or more IP subnets and is connected to the global Internet via one or more Mobile Routers (MR). The mobile router has at least two network interfaces: an egress interface toward the wide area network, and an ingress interface from within the mobile network. Mobile network nodes may include local fixed nodes (LFN) (nodes unable to change their point of attachment while maintaining ongoing sessions), local mobile nodes (LMN) (mobile nodes that belong to the mobile network and able to change their point of attachment within the mobile network or outside the mobile network), and visiting mobile nodes (VMN) (mobile nodes that not belong to the mobile network and that can change their point of attachment from outside the mobile network to inside the mobile network). Each of the nodes may be either a host or a router.
Hence, a mobile router is a router configured for establishing a communication link between the mobile network and an attachment router. As apparent from the foregoing, an objective of NEMO is providing mobile nodes with protocols for establishing connectivity with a wide area network, such as the Internet. The mobile router thus serves as a gateway to route packets between the mobile network and the Internet.
Unfortunately, existing Internet-based routing protocols that assume a persistent connection to a wide area network such as the Internet rely on the ability to aggregate reachability to IP nodes, where all nodes sharing a common network link (such as a link of a top level mobile router connecting to an attachment router on the Internet) share the same routing prefix. Such aggregation creates a hierarchy of network prefixes that enables scalability. However, such a hierarchy is not possible in ad hoc networks.
The IETF has a Mobile Ad-hoc Networks (MANET) Working Group that is working to develop standardized MANET routing specification(s) for adoption by the IETF. According to the MANET Working Group, the “mobile ad hoc network” (MANET) is an autonomous system of mobile routers (and associated hosts) connected by wireless links—the union of which form an arbitrary graph. The routers are free to move randomly and organize themselves arbitrarily; thus, the network's wireless topology may change rapidly and unpredictably. Such a network may operate in a standalone fashion, or may be connected to the larger Internet.
The MANET system is particularly suited to low-power radio networks that may exhibit an unstable topology, where wireless propagation characteristics and signal quality between a wireless transmission source and a receiver can be difficult to model and quantify. In a MANET, the device address is tied to the device, not a topological location, as there is no fixed network infrastructure. When the addressed device moves, therefore, the motion changes the routing infrastructure. Hence, as described in an Internet Draft by Baker, entitled “An Outsider's View of MANET” (Mar. 17, 2002), the fundamental behavior of a MANET is that a routing node carries with it an address or address prefix, and when it moves, it moves the actual address; when this happens, routing must be recalculated in accordance with the new topology. For example, each mobile router retains its address prefix; hence, neighboring mobile routers in a MANET may have distinct address prefixes.
Existing MANET protocols focus on the internal connectivity within the unstable topology between mobile devices; however, the existing MANET protocols suffer from the disadvantage that they provide a poor model for connecting to a wide area network such as the Internet.
MANET protocols can be divided into the following types: stateful (proactive); and stateless (reactive). Proactive MANET protocols distribute routing information throughout the MANET network, enabling the routers within the MANET network to store route information before a data packet needs to be routed; hence, a router determines how to forward a packet based on accessing routing information from an internal table. However, proactive protocols suffer the disadvantage of requiring update messages to update obsolete route entries: the necessity for update messages increases with a corresponding desire for an improvement in route optimization.
Proactive MANET protocols can be subdivided into two subtypes, or “families”: Optimized Routing Approach (ORA), and Least Overhead Routing Approach (LORA). The ORA type protocols are similar to routing protocols used in the Internet, in that they stress maintaining the best states to maintain the shortest path routes, at the expense of requiring more control messages to exchange routes. An example of an ORA type routing protocol is Open Shortest Path First (OSPF) (as specified by the IETF Request for Comments (RFC) 2178), or Intermediate System-to-Intermediate System (IS-IS) protocol (specified by the International Organization for Standardization document ISO 10589). However, the OSPF and IS-IS protocols suffer from the disadvantage that they may require up to a minute to converge (i.e., complete protocol communications necessary to establish a connection) and hence may not be able to converge quickly enough for a mobile router that is moving from one location to another. For example, in the case of two vehicles passing each other, each having a mobile router, there may exist approximately ten seconds for the mobile routers to establish a connection; hence, routing protocols requiring up to a minute to converge would be unable to establish a connection. Also note that OSPF requires link-state advertisements (LSAs) to be refreshed as they expire after 3600 sec, resulting in substantial burdens in distributing the LSAs.
Reactive protocols were developed to address the slow convergence of ORA type proactive protocols, where routing information is acquired only when needed. Examples of reactive protocols are described in an Internet Draft by Perkins et al., “Ad hoc On-Demand Distance Vector (AODV) Routing (draft-ietf-manet-aodv.13), Feb. 17, 2003, and an Internet Draft by Johnson et al., “The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks (DSR) <draft-ietf-manet-dsr-09.txt>”, Apr. 15, 2003. Reactive protocols require less bandwidth than proactive protocols, but the latency for many applications will increase substantially, resulting in long delays. Such delays become quite apparent if a mobile user attempts to execute a bandwidth-intensive application on the ad hoc network instead of a typical high-speed wired connection on the Internet using a conventional connection (e.g., hard-wired LAN, cable modem, etc.).
The LORA family of proactive protocols attempts to provide a compromise between the fully stateful (ORA family) protocols and the fully stateless (reactive) protocols. One example of a LORA-type protocol is described in an Internet Draft by Garcia-Luna-Aceves, et al., “Source Tree Adaptive Routing (STAR) Protocol <draft-ietf-manet-star.00.txt>”, Oct. 22, 1999. However, even the disclosed STAR protocol suffers from disadvantages of requiring routing messages to establish a stable topology within the MANET network. For example, the STAR protocol requires a router to transmit the parameters of its source routing tree, including each link that the router needs to reach every known destination (and address range) in the ad hoc network or Internet. Although the STAR router attempts to conserve transmission bandwidth and energy by sending changes to its source routing tree only when the router detects new destinations, the possibility of looping, or the possibility of node failures or network partitions, the necessity of transmitting such parameters for each and every link still imposes substantial messaging requirements that affects bandwidth availability and network convergence times.
Hence, existing LORA-type protocols still provide only limited improvements in reducing convergence time and update messages between routers.
Efforts have been made to optimize communications between mobile routers of an ad hoc network based on the mobile routes organizing into a tree-based topology. For example, U.S. Patent Publication No. US 2004/0032852, published Feb. 19, 2004, entitled “Arrangement for Router Attachments Between Roaming Mobile Routers in a Mobile Network”, the disclosure of which is incorporated in its entirety herein by reference, describes a technique for each mobile router of an ad hoc mobile network to independently select whether to attach to a candidate attachment router, based on tree information options advertised by the candidate attachment router and selection criteria employed by the mobile router. The independent selection by each router of whether to attach to another router enables the routers to dynamically establish a tree-based network topology model, where each router may continually determine whether an alternate attachment point within the tree is preferred.
Commonly-assigned, copending application Ser. No. 10/856,809, filed Jun. 1, 2004, entitled “Arrangement for Providing Network Prefix Information from Attached Mobile Routers to a Clusterhead in a Tree-Based Ad Hoc Mobile Network”, the disclosure of which is incorporated in its entirety herein by reference, describes a technique that provides optimized transfer of routing information between mobile routers having established a tree topology in an ad hoc mobile network. The tree-based network topology has a single clusterhead and attached mobile routers. Each attached mobile router has a default egress interface configured for sending messages toward the clusterhead, and ingress interfaces configured for receiving messages from attached network nodes that are away from the clusterhead. A neighbor advertisement message received from an ingress interface away from a clusterhead is used by the attached mobile router to identify specified network prefixes that are reachable via the source of the neighbor advertisement message. The attached mobile router outputs on its default upstream interface a second neighbor advertisement message that specifies the network prefix used by the attached mobile router, and the specified network prefixes from the neighbor advertisement message received on the ingress interface. Hence, the propagation of neighbor advertisement messages toward the clusterhead establishes connectivity with minimal routing overhead.
Concerns remain, however, that mobile ad hoc networks continually encounter changes in communications links that may cause regular and unpredictable changes in the network topology: any connectivity loss between a mobile router and its attachment router requires the mobile router to locate a new attachment router, and communicate to the clusterhead the change in network topology, namely that the mobile router and its subtree are now reachable via the new attachment router.
Link reversal routing has been suggested as a technique for providing multiple communications links between nodes in an ad hoc mobile network, where link reversal routing algorithms build a directed acyclic graph (DAG) for each possible destination: a directed graph is acyclic if it contains no cycle or loop, and the DAG maps to a given destination based on the destination having only incoming links: all other nodes that have incoming links also must have outgoing links. An example of a routing algorithm that builds a DAG is the Temporally-Ordered Routing Algorithm (TORA).
Existing DAG-based routing algorithms that permit multiple connections, such as TORA, still require substantial processing and overhead requirements that may increase convergence times in response to topology changes, limiting the ad hoc network to rapidly respond to topological changes. For example, reliance on a DAG for a given destination requires recalculation of a new DAG for each and every destination; further, TORA requires that a packet is broadcast to all of its neighbors, resulting in additional congestion in the ad hoc network and additional processing by each network node that receives a packet and determines that the packet should be dropped.