180 likes | 318 Views
Scalable Ad Hoc Routing: The Case for Dynamic Addressing. INFOCOM 2004 Jakob Eriksson, Michalis Faloutsos, Srikanth Krishnamurthy University of California, Riverside. Introduction. Why dynamic addressing? Address equals to identity is impropriate in ad hoc (especially mobility) networks
E N D
Scalable Ad Hoc Routing: The Case for Dynamic Addressing INFOCOM 2004 Jakob Eriksson, Michalis Faloutsos, Srikanth Krishnamurthy University of California, Riverside
Introduction • Why dynamic addressing? • Address equals to identity is impropriate in ad hoc (especially mobility) networks • Dynamic addressing in ad hoc network: • How to allocate address? • How to route? • How to perform node lookup? • The methods should be: • Localize overhead • Avoid centralized protocols or special nodes • Minimize manual configuration
Terminologies • Identifier: globally unique • Address: changes with node movement • Address tree: the address space can be viewed as the leaves of a binary tree • Address subtree: a range of addresses with a common prefix • Level-k sibling
xxx 0xx 1xx L2 11x 00x 01x 10x L1 011 111 000 001 010 100 101 110 L0 Example of address tree, address subtree, and level-k sibling
1. B joins via A 2. C joins via B xxx 3. D joins via A 0xx 1xx 00x 01x 10x 11x A B C D 000 010 100 110 Address allocation • The responding node splits its controlling address into half
A B S 100 011 010 D C E 101 000 001 xxx 1xx 0xx 00x 01x 10x 11x 000 001 010 011 100 101 110 111 D C A B S E - - Characteristics of the method • Level-0 sibling:physically connected directly • The leaves of the same subtree: form a physically connected sub-graph Node S enters the networks through node D, should these two nodes be physically connected?
xxx 1xx 0xx 10x 11x 101 100 Routing • A node keeps one entry for each level-i sibling in its routing table
A B S 100 011 010 D C E 101 000 001 xxx 1xx 0xx 00x 01x 10x 11x 000 001 010 011 100 101 110 111 D C A B S E - - Routing example
A B C Addr:000 ID:0101 Addr:001 ID:1101 Addr:010 ID: 0010 Node lookup • Each mapping is stored on one node in the network • XOR-distance criterion Where should store the mapping of C? A: 000 xor 010 = 010 B: 001 xor 010 = 011 C: 010 xor 010 = 000 Stores in B • Can be replaced by any prior known functions
Improvements in node moving and lookup entry updates • Challenge: • Lookup entries have to be updated when moving • Improving method: • Use xor-distance criterion with 1 or more of the most significant bits removed • Choose a local node that fits the criterion
Simulation environment • NS-2 network simulator v 2.26 with Random Waypoint mobility model with • Max speed: 10m/s, min speed: 0.5m/s • Duration = 300 s • (Traffic load: 12000 packets of 512 bytes, not restricted to particular source or destination) • Ignore node lookup process, replaced by a global lookup table • Simulator developed by themselves. • Based on NS-2, replace MAC and physical layers with a simple reliable message exchange to improve simulation times
Simulation result A: address space utilization • # of nodes: 12~4,000 nodes • 64-bit address • Node degree: between 6 and 8
Simulation result B: path stretch • Path stretch: routing path length is over the shortest path length • Create static random topologies with size ranging from 125 to 1000 nodes
Simulation result C: routing scalability • CEF: frequency of connection establishment • Network size: 400 nodes • Connection frequency: ½ to 50 per second
Topology and address allocation • Star-like topology • If the central node has address [000…0], its neighbors will be [100…0], [010…0], [001…0], ... [000…1]. Only l addresses are available • Typical ad hoc networks: not realistic, unless considering natural obstacles • Base station
Topology and address allocation • String topology: worst case scenario • If address of u0: [000…0], u1 to un-1 will be [100…0], [110…0],…[111…1], respectively • Extremely uncommon • Address space locally exhausted use NAT • Many identifiers are mapped to a single address • The “inner” address can serve many nodes
Conclusion • Present methods for dynamic addressing • Distinguish id and address • Routing complexity: O(logN), not based on flooding or broadcasting • No manual configuration • No need for central servers or geographical information (GPS)
Pre-reading advice • J. Eriksson, M. Faloutsos, and S. Krishnamurthy, Peernet: Pushing peer-2-peer down the stack. in IPTPS, 2003