Presentation on theme: "M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Jakob Eriksson Michalis Faloutsos Srikanth Krishnamurthy."— Presentation transcript:
M. Faloutsos1 DART: Scalable Ad hoc Routing DART: Dynamic Address RouTing Jakob Eriksson Michalis Faloutsos Srikanth Krishnamurthy
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.
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
M. Faloutsos 4 Problem: 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 network have problems: Internet was not designed for mobility!
M. Faloutsos 5 DART Could Be It! Our approach replaces node address with two numbers: Node identifier - static. Routing address - dynamic. Dynamic Address indicates current network location Distributed lookup table maps identifier to current routing address.
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 to appear at ICNP 2003 Paper to appear at INFOCOM 2004 (P2P networking, Chord, Pastry etc) (DART)
M. Faloutsos 7 Roadmap Related work DART Address allocation Routing Node Lookup Simulation Results Conclusion
M. Faloutsos 8 DART: The Overview Basic idea: permanent nodeID =/= transient address The address reflects network location It is a proactive scheme Consequences: Routing is simplified: address tell 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
M. Faloutsos 9 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
M. Faloutsos 10 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
M. Faloutsos 11 DART Address Invariant All nodes within any given subtree are able to communicate using only nodes in that subtree.
M. Faloutsos 12 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
M. Faloutsos 13 Basic Solution 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
M. Faloutsos 14 Address Allocation Example When a node joins, it picks an address that shares a prefix one of its neighbors.
M. Faloutsos 15 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
M. Faloutsos 16 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.
M. Faloutsos 17 How The Look-Up Works Node with Address: A keeps track of address of node with ID A Actually, its node(A) who updates his entry Looking up is routing indirectly Many optimizations to avoid long lookups ID: A Addr: X ID: - Addr: A ID: - Addr: A’ ID: v
M. Faloutsos 18 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)
M. Faloutsos 19 Performance Evaluation Scalability needs REALLY large simulations N nodes : 10
M. Faloutsos 20 Performed using two simulators: Home-grown for speed and scalability. ns-2 for comparisons and accuracy. Wireless nodes, with omnidirectional antennae. Simulations
M. Faloutsos 21 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
M. Faloutsos 22 The average path stretch is LOW, 30-35%. Recall that 25% streatch is common in Internet Does DART Increase Path Lengths?
M. Faloutsos 23 Ns-2 doesn’t scale to large wireless simulations. Simulated 400-node networks. Varied connection establishment frequency: CEF Arguably, CEF increases in larger networks. Also, CEF depends on traffic patterns. Simulating Large Networks
M. Faloutsos 24 Overhead vs. CEF DART overhead is not significantly affected by CEF. Reactive protocols suffer when CEF increases. DART DSR AODV
M. Faloutsos 25 Throughput vs. CEF DART outperforms AODV/DSR when connection establishment frequency > 3. CEF = 3 means one connection/node every 2 mins.
M. Faloutsos 26 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 Related Work
M. Faloutsos 27 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, Simulations of DART are very promising.
M. Faloutsos 28 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.
M. Faloutsos 29 My Areas of Research Data Mining the Internet Topology: models and patterns [ToN 03] (Krishnamurthy) Traffic: model and predict behavior [GI 01] [CCR 03] [Infocom 04] (Karagiannis) Modeling and Improving BGP [GI 01] (G. Siganos) NEMECIS: safeguarding BGP graph[Infocom 04] Modeling group membership [IMC 03] DART: A radical network layer for ad hoc [IPTPS 03] [Infocom 04] Ad hoc network protocols Multicasting and power efficient broadcast [ICNP 03] Modeling mobility and cellular networks (Jobin) [Infocom 04]
M. Faloutsos 30 Thank you More details than you will ever need:
M. Faloutsos 31 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
M. Faloutsos 32 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: [Siganos et al. Infocom’04]
M. Faloutsos 33 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
M. Faloutsos 34 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
M. Faloutsos 35 Thanks to the invariant, routing is scalable. Each node keeps log N routing entries. The Routing Table