1 / 33

CMPE 252A: Computer Networks Set 11:

CMPE 252A: Computer Networks Set 11: . New Directions in Naming, Addressing and Routing. UTAH. SRI. IMP. IMP. IMP. UCSB. IMP. UCLA. Problem: We Are All Routing Like It Is 1969! . 12/1/69:. Today’s “ROUTING formula” =

blue
Download Presentation

CMPE 252A: Computer Networks Set 11:

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CMPE 252A: Computer NetworksSet 11: New Directions in Naming, Addressing and Routing

  2. UTAH SRI IMP IMP IMP UCSB IMP UCLA Problem:We Are All Routing Like It Is 1969! 12/1/69: • Today’s “ROUTING formula” = • Userprovided IP addresses are assigned “carefully” to devices • Routing tables are lists of entries stating an IP addresses range and next hop(s) • must grow with net size! • Flooding for routing is viewed as “normal” for signaling of protocols • it is actually a necessity! • Forwarding relies on looking up destination address in routing table • IP addresses are mapped to domain names using unrelated hierarchical caching structure Why should routing be like this?

  3. Proactive Routing Too many nodes are forced to know about how to reach each destination! Does not work well with random partitions Path first, then data forwarding c f D D h e a S Information about the existence of D propagates away from D to all nodes b

  4. On-Demand Routing Too many nodes are forced to help find or repair ways to reach a few destinations! (RREQ flooding). Does not work with partitioned networks! Path first, then data forwarding Information about the interest of S in D propagates away from S (RREQ) c f Nodes with paths to D reply to S (RREP). D h e a S S b Few nodes keep state for D. Paths fixed reactively.

  5. Epidemic Routing Too many nodes are forced to relay data from S to D. Does not work with partitioned networks, unless infinite storage is assumed. Data create paths c f D h Information from S propagates away from S e a S S b

  6. What Is Routing? • Routing is just a labeling of nodes in a graph to establish relative ordering • An efficient labeling for routing could give only one label (or very few) to each node, rather than one or multiple labels to each node for each destination of interest. • Routing does not have to be tied to name assignment and resolution; but the two must work with each other.

  7. What Is Routing? • We cannot solve the problem simply by using two types of identifiers [names & locators ] for each node: • Routing labels are not locators; they mustdenoterelativeordering! • Routing labels should not be based on destination names • Names must be allowed to be anything! • Routing labels should be designed for scale-free routing

  8. Scale-Free Routing • Message complexity of signaling grows sub-linearly with the size of the network. • Routing table size grows sub-linearly with the number of destinations. • Routing-label length grows sub-linearly with size of the network. • Need to separate overhead for directory services from overhead due to routing.

  9. Clustering: Implicit Internet Approach Problems: • Establishing affiliation of nodes to clusters • Static affiliations; break • Use of directory services; no good solutions exist • Flooding; costly. • Complex handling of node mobility and cluster partitions. • Complex signaling to create and maintain clusters and backbone. • Routes can be much longer than in flat structures. r t c f k S e h a g b p D node@cluster LS or DV in each cluster

  10. r t c f k S e h a g b p D Distributed Hash Tables (DHT) Problems: • Node identifiers in DHT have no correlation to network topology • => links in virtual overlay (e,g, ring) have no correlation with real links. • Signaling incurred in maintaining virtual overlay for DHT • Signaling is still needed for underlying network. • Large overhead in starting virtual network and responding to node or link failures Virtual link to “next node ID”

  11. r t c f k e h a g b p D S Geographical Coordinates Problems: • Nodes need to know their own coordinates. • [Using external means (GPS)] • Sources need to obtain coordinates of intended destinations • Protocols must avoid dead ends searching for destinations. • Long delays in search or similar flooding problems as in traditional routing. @(60, 5) @(30, 40)

  12. m w R R p b u g k a x y z r f j i e c v u o Distance Based Virtual Coordinates (ViC): (2) (3) (3) (2) (1) (4) (2) (4) (2) (5) (4) (1) (0) (3) (1) (4) (1) (2) (2) (1) (3) (0) D (4) (1) (2) (2) (3) (6) (3) (1) (1) (3) (2) (4) @(2) (2) (3) (5) (5) (2) (4) (1) • Problems today: • Distance-based systems do not provide unique coordinates (e.g., a & c) and hence a VC does not identify a node or relative location. • Source needs to obtain the ViC of destination.

  13. m w R R g p u b k a x y z r f j i v u o Interval Routing Nicola Santoro, RamezKhatib: Labeling and Implicit Routing in Networks. Comput. J. 28(1): 5-8 (1985) 1 2 (14) (13) (12) 2 (1) 2 2 1 1 3 1 3 (0) 3 (2) (15) 2 (10) 3 2 1 1 4 3 e 4 2 2 1 1 3 (4) 3 1 2 4 3 (16) 2 (17) 2 1 4 3 D 3 2 5 c 1 1 2 (18) 1 2 4 5 1 (11) 1 2 (3) 3 1 2 3 2 3 1 1 2 (9) (7) 2 1 (6) 1 2 (5) 2 1 (20) @(8) • Advantages: • Unique labels assigned dynamically to each node, automatic routing! • Problems: • Depth-first search used in the labeling of nodes! • Any link break requires the relabeling of the tree • Source needs to obtain the ViCof destination (w/o flooding or centralized directory service). Paths can be much longer than shortest paths. (19)

  14. AIR: Automatic Incremental Routing Scale Free and “Wire Speed”: • Make routing automatic like interval routing does in multiprocessors. • Eliminate network-wide dissemination of routing information per destination or link , and avoid bottlenecks. • Use only local information for forwarding and routing-tables that do not grow as the network grows. • Allow similar routing in tiny nodes and backbone routers. Robust: • Use labels that require the minimum degree of changes with the addition or deletion of any subset of links or nodes. Independent of Application and Name Resolution: • Enable any type of information dissemination (unicast, multicast, anycast) with a single routing protocol. • Make routing independent of address or name space used to identify hosts, groups, content, or services.

  15. AIR: Automatic Incremental Routing Two components: • Autonomic route maintenance • A simple HELLO mechanism labels all nodes with routing labels relative to one ore more elected “roots.” • Routing between any source and destination is automatic from the routing labels. • Tables are incremental(only local knowledge!) • Size is onlyO(logd N), where d = node degree, N = number of nodes • Distributed name resolution • “Links” sources to destinations (nodes, groups, functions, content) • Distributed and self organizing. • Publish-subscribe approach appears to be the most promising • Same interaction for App for any type of information dissemination (e.g., “subcribe/send to x” and “publish as y”) Source: J.J. Garcia-Luna-Aceves and D. Sampath, "Scalable Integrated Routing Using Prefix Labels and Distributed Hash Tables for MANETs," Proc. IEEE MASS 2009: The 6th IEEE International Conference on Mobile Ad Hoc and Sensor Systems, October 12 - 15, 2009, Macau SAR, P.R.C.

  16. AIR: Establishing Routing Labels Root node (a) is elected in a distributed fashion using HELLOs Node ID + attributes define selection of root node 03111 0211 023 0311 j s k 03 02 p i HELLO (parent) and HELLO (child) announce own labels HELLO (parent) assigns labels to children HELLO (child) confirms labels to parent c b 021 031 m 0 0312 011 a f q n 041 b 012 04 g e r 01 0411 h 042 o 043 Each node is given a label relative to root node Nodes are ordered in a DAG by: DAG id, Prefix label, Global id

  17. AIR: Routing Labels Define Routes Prefix labels of source and destination define the route (prefix routing) Use neighbor offering the best prefix match. “If not my child, go up [or to able sibling]” 03111 0211 023 0311 j s 021 k 03 02 p i c b 031 m 0312 011 a 0 f q n 041 b 012 04 g e r 01 0411 h 042 o 043 How do b and nknow the labels of nodes j and s, respectively?

  18. Mapping IDs to Labels: Global ID Routing Label Hash Node s hashes its own global ID and obtains a prefix label “024” as its anchor label: H(‘s’) = 024 Node s sends a publish request towards “024” with its own mapping: [s, 03111] Node c (“02”) is the best match for the anchor label 024 and stores the mapping [s, 03111]. 03111 0211 023 0311 j s 021 k 03 02 p i c b 031 [s, 03111] m 0312 011 a 0 f q n 041 b 012 04 g e r 01 0411 h 042 o 043

  19. Mapping IDs to Labels: Global ID Routing Label Hash Node n computes H(‘s’) = 024 as the anchor label of node s. Node n sends a subscribe request towards “024” with its own mapping [n, 041] and the requested mapping [s, ??] Node c receives the request and responds with the prefix label of node s. 03111 0211 023 0311 j s 021 k 03 02 p i c b 031 m 0312 011 a 0 f q [s, 03111] n 041 b 012 04 g e r 01 0411 h 042 o 043

  20. DHT in AIR Global ID Routing Label Hash • Anchors and intermediate nodes store the global ID to prefix label mappings. • These entries form the DHT in AIR • Soft state! • Destinations refresh anchors with new mappings to account for topology changes. 03111 0211 023 0311 j s 021 k 03 02 p [s, 03111] i [s, 03111] c b 031 [s, 03111] m 0312 011 a 0 f q [s, 03111] n 041 b 012 [s, 03111] 04 g e r 01 0411 h 042 [s, 03111] o 043

  21. AIR: Multicasting Is Just as Easy Blue nodes are part of multicast group with ID “g” and multicast prefix label H(g) = “013” The node with the closest label to 013 is node b (01); this node serves as the core of the multicast group. Receiver joins group by: Hashing the multicast group ID to a multicast prefix label. Sending a join request towards the prefix label Nodes processing the join replies join the mesh. 03111 0211 join j 023 0311 j s k i 03 02 p i c b 021 031 m 0 0312 f 011 a f q n 041 b 012 04 g e r 01 0411 h 042 o 043

  22. AIR: Multicasting Is Just as Easy Sources simply send towards the multicast prefix label of the group. They pick the best prefix match to the multicast prefix label. First node in the group receiving the multicast packet simply broadcasts over multicast mesh. From “core based trees” to “prefix based meshes” 03111 0211 j 023 0311 j s k i 03 02 p i c b 021 031 m 0 0312 f 011 a f q n 041 b 012 04 g e r 01 0411 h 042 o 043

  23. Solution:Routing as Ordered Switching ROUTING on AIR = The network itself defines its label space and assigns routing labels devices; no user intervention Routing tables are lists of IDs and labels of neighborsGrows only with size of immediate neighborhood! No flooding per destination; a distributed one-pass election from root labels all nodes. Forwarding equals finding best match for label in packet among the labels in routing table Names are mapped to routing labels using a directory service embedded in network Scale-free! One routing for all apps!

  24. Multiple Labels :Automatic Routes with Near-Zero Stretch 14 4 34 root 33 333 3 3333 111 1 11 D 12 2 3332 1112 112 23 233 332 2333 122 1122 2233 221 22 223 1221 11222 S 2221 22211 1222 22233 222 2223

  25. Multipaths & Simple Ways to Avoid Loops During Transitions 14 4 34 root 3 33 333 3333 111 1 11 12 D 2 21 3332 1112 112 233 23 332 2333 1122 122 S 22 1221 221 2233 223 2221 11222 1222 22211 222 2223 22233

  26. Assume the simplest version of its mechanisms: • Single root for network • Single paths to destinations • Single routing label per node • Single anchor per destination and no caching • Flat label space (e.g., no federation of spaces used within network regions) • No use of auxiliary information (e.g., GPS, trajectories) Does AIR Really Work better than Traditional Routing in MANETs?

  27. QualnetSimulator AIR Performance in MANETs Simulation Setup 1500 m 1500 m

  28. AIR Performance in MANETs Unicast Traffic Delivery Ratio – Unicast Control Overhead – Unicast AIR delivers far more traffic than OLSR and AODV, especially at high mobility OLSR and AODV incur 3 or 4 times as much overhead than AIR, especially at high mobility

  29. AIR Performance in MANETs 20 nodes per multicast group Delivery Ratio – Multicast Control Overhead – Multicast AIR delivers more than ODMRP and 25% more than MAODV under high mobility ODMRP and MAODV have almost 30% more overhead than AIR

  30. AIR Performance in MANETs Combined Unicast and Multicast Delivery Ratio – Combined Control Overhead – Combined AIR delivers more than 30% under high mobility ODMRP and MAODV have almost 3.5 and 2.5 times more overhead than AIR!

  31. Many Research Questions • Stretch of AIR routes: Can we make them as short as shortest paths? How? • Is there a role for multiple roots? • QoS and policy-based routing: • From routing with multiple constraints to DAG management with multiple constraints. • Fault-tolerance and performance: Understanding AIR mechanisms in detail.

  32. Many Research Questions • Routing content (billions of objects): • Integrate AIR with caching and URI name spaces. • Operation in Internet architecture • DNS & anchors; interoperation with IP-only ASes; Policy-based routing (BGP) • Hashing functions in real deployments: • Which nodes should maintain the DHT? • Provenance, privacy, and distributed firewalls: • No more faking of IP addresses by enforcement of prefix labels. • Multicast deployment, AIR deployment • If we use URI’s for naming and don’t use IP addresses for routing, what is the role of IPv4 or IPv6 addresses? (switching)

  33. Old routing = destination-based routing tables (or VC tables) + independent name-to-address resolution New routing = ordered switching + integrated name-to-label resolution Questions?

More Related