Presentation is loading. Please wait.

Presentation is loading. Please wait.

M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Michalis Faloutsos Joint work with: Jakob Eriksson Srikanth Krishnamurthy.

Similar presentations


Presentation on theme: "M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Michalis Faloutsos Joint work with: Jakob Eriksson Srikanth Krishnamurthy."— Presentation transcript:

1 M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Michalis Faloutsos Joint work with: Jakob Eriksson Srikanth Krishnamurthy

2 M. Faloutsos 2 The Future of Ad Hoc Networks Meganode ad hoc networking Pockets of wireless connectivity Consumer owned networks Large scale sensor networks Commercial interest: Starbucks, cell phone companies Interoperate and exploit wires where available Plug-n-play operation, zero-configuration.

3 M. Faloutsos 3 Why on Earth...? Rural networks Consumer owned networking Theater-wide military networks Internet 2.0? Civil disobedience Protecting civil liberties Free speech Ubiquitous and free connectivity? Networked society Who knew what Internet would become? Who knew what Internet would become? DIY networking Circumventing copyrights? Overthrowing governments? Because we can! Developing countries

4 M. Faloutsos 4 Question: Are We Ready For This? Current Ad Hoc networks do not scale! Only to a few hundred nodes! Reactive (AODV/DSR): Routing relies on flooding! Proactive (DSDV): Keeping track of all nodes: O(N) Even wireline networks have problems: Internet was not designed for mobility!

5 M. Faloutsos 5 DART Could Be It! Our approach replaces node address with two numbers: Node identifier - static. Routing address - dynamic. Address indicates current network location Distributed lookup table maps identifier to current routing address.

6 M. Faloutsos 6 DART: a Novel Networking Approach The basic idea: separate node identity from address Address indicates location in the network topology Not an overlay: an alternative routing layer application transport network link physical application transport network link physical Paper appeared at IPTPS 2003 Different name there: PeerNet Poster at ICNP 2003 Paper to appear at INFOCOM 2004 (P2P networking, Chord, Pastry etc) (DART)

7 M. Faloutsos 7 Roadmap DART Address allocation Routing Node Lookup Simulation Results Related work Conclusion

8 M. Faloutsos 8 The Status Quo: Proactive Routing Proactive routing: do routing before you need it In Internet: scaling thru address aggregation With mobility: you can’t aggregate addresses Keep state per node O(N), and updates for all 10.48.11.x 10.48.2.x 10.48.x.x 10.100.x.x 10.x.x.x

9 M. Faloutsos 9 The Status Quo: Reactive Reactive routing: search when you need a path Do nothing ahead of time Route discovery: flood the whole network Optimizations can’t help:Incremental flooding, caching of routes

10 M. Faloutsos 10 DART: The Overview Basic idea: permanent nodeID =/= transient address The address reflects network location It is a proactive routing scheme, distance vector Consequences: Routing is simplified: address tells me where you are Nodes with similar addresses are “near” each other Challenges: Address allocation: When I move, change the address ID to Address mapping: Given an ID, find the address

11 M. Faloutsos 11 Overview: How DART Works A new node finds a legitimate address: Through overhearing periodic routing updates. If the node moves, it gets a new address. Nodes exchange routing tables periodically DART provides lookup: (nodeID, address) Not similar to typical Distr. Hash Tables! Each node registers and updates its entry

12 M. Faloutsos 12 Address Space as Binary Tree Addresses as leaves in a virtual binary tree Prefix Tree: a prefix: 00x, 0xx etc Prefix Subgraph: subgraph induced by prefix Prefix Tree

13 M. Faloutsos 13 DART Address Invariant All nodes within any given subtree are able to communicate using only nodes in that subtree.

14 M. Faloutsos 14 Managing Dynamic Addresses Maintain a unique address for every node. Ensure that all prefix subgraphs are connected (Address Invariant) Minimize communication overhead Require no centralized sources infrastructure. Minimize required address size (in bits) Keep prefixes small

15 M. Faloutsos 15 Basic Operation Joining node picks an address with a prefix common with one of its neighbors. The routing table is consulted to ensure that the address invariant is met Efficient use of address space: shorter prefixes Maximize connectivity within prefix graph Robustness, reduction of overhead

16 M. Faloutsos 16 Address Allocation Example When a node joins, it picks an address that shares a prefix one of its neighbors.

17 M. Faloutsos 17 Several Subtleties Exist When nodes move, who is in charge Left most node in address tree Id of this node “characterizes” subtree or network Should we try to balance the tree proactively? We tried, made things complicated Per-need balancing seems to work well Merging of networks Network with “lowest” id wins Clever assignment of ids to “stable” static nodes will help things

18 M. Faloutsos 18 Routing with DART

19 M. Faloutsos 19 Routing is simplified If you know the address, life is sweet Proactive operation Distance vector style Nodes keep track of prefixes Best hop neighbor per prefix Routing table has O(logN) entries! See next slide

20 M. Faloutsos 20 How Routing Works in DART Scalability through information abstraction Check destination address one bit a time Route packet to the appropriate prefix subtree Routing state: O(log N) for a well balanced tree

21 M. Faloutsos 21 An example Routing table of node with address 100 0xx : node at 011 11x: null 101: node at 101 Compare packet address with each row and forwarded accordingly

22 M. Faloutsos 22 Node Look Up What if we don’t know the address?

23 M. Faloutsos 23 Node Lookup Table Maps node identity -> current routing address. Uses existing routing layer state only. Upon connection establishment, current routing address of destination is looked up in table. Hierarchy of tables, local -> global, ensures scalability.

24 M. Faloutsos 24 Look Up Preliminaries Node is associated with three values Id of node, say A Current address of node addr(A) Hashed address of node A Hash(A) Id spaceaddress space A Hash(A)

25 M. Faloutsos 25 How The Look-Up Works Node with Address Hash(A) responsible for node with ID A Node(A) updates his entry To whoever is at Hash(A) Look up = routing to Hash(A) For B to talk to node id A Compute Hash(A) Query node at Hash(A) ID: A Addr: X ID: - Addr: Hash(A) ID: B Hash(A): ID space -> Address space

26 M. Faloutsos 26 Subtle Issues of Look Up What if no node has address Hash(A)? the node whose address is closer to this address is responsible for the mapping The system is push based: Each node wants to keep its mapping accurate Trade off: freq of update: accuracy vs overhead Many ideas for improving accuracy: Add locality: nodes far away need to have the significant bits right Nodes can cache information

27 M. Faloutsos 27 Other Characteristics of DART Efficient scalable support for multicasting and anycasting Exploit the virtual address tree to “establish” a multicast tree Loop-free routing Efficient loop-avoidance (log N bits per entry)

28 M. Faloutsos 28 Performance Evaluation Scalability needs REALLY large simulations N nodes : 10<N<4000: uniformly distributed, node density above 6. Mobility: random way point model: Move - pause - pick new destination - move, moving in straight lines

29 M. Faloutsos 29 Performed using two simulators: Home-grown for speed and scalability. ns-2 for comparisons and accuracy. Wireless nodes, with omnidirectional antennae. Simulations

30 M. Faloutsos 30 Extremely small average routing table size < 2*log N. About 15 routing entries for 4000 nodes! Routing Table Size Scales Superbly! Routing Table Network Size log N 2 log N Yes, 10,000

31 M. Faloutsos 31 The average path stretch is LOW, 30-35%. Recall that 25% stretch is common in Internet Does DART Increase Path Lengths?

32 M. Faloutsos 32 Ns-2 doesn’t scale to large wireless simulations. Simulated 400-node networks. Vary Connection Establishment Frequency: CEF Arguably, CEF increases in larger networks. Also, CEF depends on traffic patterns. Simulating Large Networks

33 M. Faloutsos 33 Overhead vs. CEF DART overhead is not significantly affected by CEF. Reactive protocols suffer when CEF increases. DART DSR AODV

34 M. Faloutsos 34 Throughput vs. CEF DART outperforms AODV/DSR when connection establishment frequency > 3. CEF = 3 means one connection/node every 2 mins.

35 M. Faloutsos 35 Hierarchical routing (Kleinrock, Kamoun ‘77) Clustering based routing: Landmark, LANMAR, Clusterhead, Hierarchical State Routing, MMWN, etc. Georouting: LAR, DREAM, Grid, etc. Distributed Hashtables: Chord, Plaxton routing (overlays) Routing in unstable networks, K. Fall, Intel, sigcomm’03 Regions as a new paradigm, Sollins, MIT, FDNA’03 FARA from ISI/MIT, Clark, Braden,Falk,Pingali,Faber Safari from Rice, Johnson, Riedi et al Virtual Ring Routing, Caesar et al Sigcomm 06 Related Work

36 M. Faloutsos 36 Conclusions DART is a scalable alternative to current ad hoc routing approaches. Time to re-evaluate our network architecture Future networks: beyond the Internet Our approach: a new network layer Address =/= identity Proactive routing Simulations of DART are very promising.

37 M. Faloutsos 37 Future Work Improve on all aspects of the protocol. Port simulation code to Linux kernel For real-world testing with Linksys basestations Add security and policy considerations.

38 M. Faloutsos 38 My Areas of Research Data Mining the Internet (Karagiannis, Siganos) Topology: models and patterns [ToN 03] [Netw/ing05] Traffic: model and predict behavior [GI 01] [Infocom 04] BLINC: traffic classification in the dark: [IMC 04] [SIGCOMM 05] Modeling and Improving BGP (G. Siganos, Y. He) NEMECIS: safeguarding BGP graph[Infocom 04] [GI 01] DART: A radical network layer for ad hoc [IPTPS 03] [Infocom 04] [TON 06] Ad hoc network protocols (Law) Multicasting and power efficient broadcast [ICNP 03] [Netw/ing05] Modeling mobility and cellular networks (Jobin) [Infocom 04] Cooperative Diversity (Jakllari) work in progress

39 M. Faloutsos 39 Late Breaking News: Poisson Returns Poisson distributions appear at the backbone High speed and large aggregation of sources seem to change the behavior! [Karagiannis et al Infocom ‘04] Distr. Of interarrival times of packets In an OC48 backbone line from CAIDA

40 M. Faloutsos 40 Thank you More details than you will ever need: www.cs.ucr.edu/~michalis

41 M. Faloutsos 41 NEMECIS: Validating BGP Policy A tool to analyze and validate BGP policy Motivation: robust BGP = healthy Internet Delivers: advice/alert in configuring and troubleshooting BGP policy and routing Key idea: use all inputs IRR dbases, Routeviews, routing updates For more: www.cs.ucr.edu/~siganos/nemecis.html [Siganos et al. Infocom’04]

42 M. Faloutsos 42 Human Administrator Intended Policy NEMECIS -Detecting misconfigurations -Detecting illegitimate routing Configuration Information Declared Policy (in RPSL- Database) Misconfiguration Alert Illegal routing Alert Actual BGP Routing Routing Tables - Routes Updates NEMECIS: Two Loops of Functionality Loop 1: Configuration - Loop 2: Routing

43 M. Faloutsos 43

44 M. Faloutsos 44 Routing address - a fixed length binary string. Address Prefix, aka Prefix - a sequence of bits taken from the most significant end of a binary address string. Prefix Subgraph - The graph induced from the current network graph by the set of nodes that have a given prefix. Some Terminology

45 M. Faloutsos 45 Thanks to the invariant, routing is scalable. Each node keeps log N routing entries. The Routing Table


Download ppt "M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Michalis Faloutsos Joint work with: Jakob Eriksson Srikanth Krishnamurthy."

Similar presentations


Ads by Google