FXPAL-PR-06-361 In Proceedings of IEEE INFOCOM 2006 Global Internet Workshop Page 1 Tunnel Vector: A New Routing Algorithm with Scalability Cheng-Jia Lai * Richard R. Muntz FX Palo Alto Laboratory, Inc. Palo Alto, California, United States cjlai@fxpal.com Computer Science Department University of California, Los Angeles Los Angeles, California, United States muntz@cs.ucla.edu Abstract—Routing algorithms such as Distance Vector and Link States have the routing table size as Ω Ω Ω (n), where n is the number of destination identifiers, thus providing only limited scalability for large networks when n is high. As the distributed hash table (DHT) techniques are extraordinarily scalable with n, our work aims at adapting a DHT approach to the design of a network- layer routing algorithm so that the average routing table size can be significantly reduced to Ο Ο Ο (log n) without losing much routing efficiency. Nonetheless, this scheme requires a major breakthrough to address some fundamental challenges. Specifically, unlike a DHT, a network-layer routing algorithm must (1) exchange its control messages without an underlying network, (2) handle link insertion/deletion and link-cost updates, and (3) provide routing efficiency. Thus, we are motivated to propose a new network-layer routing algorithm, Tunnel Vector (TV), using DHT-like multilevel routing without an underlying network. TV exchanges its control messages only via physical links and is self-configurable in response to linkage updates. In TV, the routing path of a packet is near optimal while the routing table size is Ο Ο Ο (log n) per node, with high probability. Thus, TV is suitable for routing in a very large network. Keywords—routing, tunnel vector, scalability, DHT I. INTRODUCTION The Distance Vector [6] and Link State [10] routing algorithms are primarily used in the current Internet infrastructure to route IP packets towards destination addresses, with a routing table size of Ω (n) per node where n is the total number of destination identifiers for routing. With hierarchical routing, Internet routers actually route packets by IP address prefixes, with a loss of mobility, i.e. a trade-off favoring scalability since the number of address prefixes is much less than the total number of IP addresses. However, these routing algorithms are not scalable for very large networks that will occur in the future, e.g., IPv6 [2] where the addresses have 128 bits and the number of address prefixes to be routed in the backbone is huge. Thus, adapting the emergent distributed hash table (DHT) techniques [4][7][8][9][13][14][16][17][19] to the design of a large-scale network-layer routing algorithm suggests opportunity to achieve significant scalability and mobility in the network backbone. Although the original design goal of a DHT was to forward queries to objects based on a specified object identifier (OID) that is independent of location, the overlay network maintained by a DHT is capable of routing messages to nodes by a specified node identifier (NID) that is independent of node location. The average size of a routing table at a node is typically Ο (log n), where n is the number of NIDs. Thus, adapting the technique of building the DHT overlay network to the design of a network-layer routing algorithm may achieve similar scalability and mobility. Unfortunately, the fulfillment of such a hope requires addressing certain problems. We have identified three major challenges as follows. 1. Messaging without an underlying network 2. Handling linkage updates 3. High routing efficiency First, in the absence of an underlying network, it is difficult for a DHT to maintain its overlay network in a predefined link structure such as a hypercube, rings, or a tree that is required. To maintain the structure of overlay links in a DHT, nodes must exchange some control messages, and the DHT exploits the existence of an underlying network that delivers its control messages to any node identified by a specified node address. However, this advantage is lost when a DHT method is adapted to a network-layer routing protocol that itself is designed to function as that underlying network, on top of data-link-layer protocols such as Ethernet. Second, most DHT approaches handle node insertion and deletion, while a network-layer routing algorithm must handle insertion and deletion of physical links between nodes. The latter is more generalized since adding a node must include adding one or more links, but adding a link may only create a loop, typically for higher connectivity and network throughput. Thus, without support for handling such linkage changes, a DHT approach cannot be adapted to the design of a network- layer routing algorithm. * This work was previously completed in Computer Science Department at University of California, Los Angeles.