network layer routing where we are in the course
play

Network Layer (Routing) Where we are in the Course Moving on up to - PowerPoint PPT Presentation

Network Layer (Routing) Where we are in the Course Moving on up to the Network Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Topics Network service models Datagrams (packets), virtual


  1. Network Layer (Routing)

  2. Where we are in the Course • Moving on up to the Network Layer! Application Transport Network Link Physical CSE 461 University of Washington 2

  3. Topics • Network service models • Datagrams (packets), virtual circuits • IP (Internet Protocol) • Internetworking • Forwarding (Longest Matching Prefix) • Helpers: ARP and DHCP • Fragmentation and MTU discovery • Errors: ICMP (traceroute!) • IPv6, scaling IP to the world • NAT, and “ middleboxs ” • Routing Algorithms CSE 461 University of Washington 3

  4. Routing versus Forwarding • Forwarding is the • Routing is the process of process of sending a deciding in which packet on its way direction to send traffic Which way? Which way? Forward! packet Which way? CSE 461 University of Washington 4

  5. Improving on the Spanning Tree • Spanning tree provides • Routing uses all links to basic connectivity find “best” paths • e.g., some path B  C • e.g., use BC, BE, and CE Unused A B C A B C D D E F E F CSE 461 University of Washington 5

  6. Perspective on Bandwidth Allocation • Routing allocates network bandwidth adapting to failures; other mechanisms used at other timescales Mechanism Timescale / Adaptation Load-sensitive routing Seconds / Traffic hotspots Routing Minutes / Equipment failures Traffic Engineering Hours / Network load Provisioning Months / Network customers CSE 461 University of Washington 6

  7. Delivery Models • Different routing used for different delivery models Unicast Multicast Broadcast Anycast (§5.2) (§5.2.8) (§5.2.7) (§5.2.9) CSE 461 University of Washington 7

  8. Goals of Routing Algorithms • We want several properties of any routing scheme: Property Meaning Correctness Finds paths that work Efficient paths Uses network bandwidth well Doesn’t starve any nodes Fair paths Fast convergence Recovers quickly after changes Scalability Works well as network grows large CSE 461 University of Washington 8

  9. Rules of Routing Algorithms • Decentralized, distributed setting • All nodes are alike; no controller • Nodes only know what they learn by exchanging messages with neighbors • Nodes operate concurrently • May be node/link/message failures Who’s there? CSE 461 University of Washington 9

  10. Recap: Classless Inter-Domain Routing (CIDR) • In the Internet: • Hosts on same network have IPs in the same IP prefix • Hosts send off-network traffic to nearest router to handle • Routers discover the routes to use • Routers use longest prefix matching to send packets to the right next hop CSE 461 University of Washington 10

  11. Longest Matching Prefix 192.24.63.255 More specific Prefix Next Hop /19 192.24.0.0/19 D 192.24.15.255 192.24.12.0/22 B /22 192.24.12.0 IP address 192.24.0.0 CSE 461 University of Washington 11

  12. Host/Router Combination • Hosts attach to routers as IP prefixes • Router needs table to reach all hosts Single network IP router Rest of “A” (One IP prefix “P”) network LAN switch CSE 461 University of Washington 12

  13. Network Topology for Routing • Group hosts under IP prefix connected to router • One entry for all hosts E 10 0 P A 4 B CSE 461 University of Washington 13

  14. Network Topology for Routing (2) • Routing now works! • Routers advertise IP prefixes for hosts • Router addresses are “/32” prefixes • Lets all routers find a path to hosts • Hosts find by sending to their router CSE 461 University of Washington 14

  15. Hierarchical Routing

  16. Internet Growth • At least a billion Internet hosts and growing … CSE 461 University of Washington 16

  17. Internet Routing Growth Ouch! • Internet growth Number of IP Prefixes translates into routing table growth (even using prefixes) … Year Source: By Mro (Own work), CC-BY-SA-3.0 , via Wikimedia Commons CSE 461 University of Washington 17

  18. Impact of Routing Growth 1. Forwarding tables grow • Larger router memories, may increase lookup time 2. Routing messages grow • Need to keeps all nodes informed of larger topology 3. Routing computation grows • Shortest path calculations grow faster than the network CSE 461 University of Washington 18

  19. Techniques to Scale Routing • First: Network hierarchy • Route to network regions • Next: IP prefix aggregation • Combine, and split, prefixes CSE 461 University of Washington 19

  20. Idea • Scale routing using hierarchy with regions • Route to regions, not individual nodes To the West! West East Destination CSE 461 University of Washington 20

  21. Hierarchical Routing • Introduce a larger routing unit • IP prefix (hosts)  from one host • Region, e.g., ISP network • Route first to the region, then to the IP prefix within the region • Hide details within a region from outside of the region CSE 461 University of Washington 21

  22. Hierarchical Routing (2) CSE 461 University of Washington 22

  23. Hierarchical Routing (3) CSE 461 University of Washington 23

  24. Hierarchical Routing (4) • Penalty is longer paths 1C is best route to region 5, except for destination 5C CSE 461 University of Washington 24

  25. Observations • Outside a region, nodes have one route to all hosts within the region • This gives savings in table size, messages and computation • However, each node may have a different route to an outside region • Routing decisions are still made by individual nodes; there is no single decision made by a region CSE 461 University of Washington 25

  26. IP Prefix Aggregation and Subnets

  27. Idea • Scale routing by adjusting the size of IP prefixes • Split (subnets) and join (aggregation) I’m the whole region IP1 /18 1 Region IP /16 IP2 /18 2 IP3 /18 3 CSE 461 University of Washington 27

  28. Recall • IP addresses are allocated in blocks called IP prefixes, e.g., 18.31.0.0/16 • Hosts on one network in same prefix • “/N” prefix has the first N bits fixed and contains 2 32-N addresses • E.g., a “/24” has 256 addresses • Routers keep track of prefix lengths • Use it as part of longest prefix matching Routers can change prefix lengths without affecting hosts 28

  29. Prefixes and Hierarchy • IP prefixes help to scale routing, but can go further • Use a less specific (larger) IP prefix as a name for a region I’m the whole region IP1 /18 1 Region IP /16 IP2 /18 2 IP3 /18 3 CSE 461 University of Washington 29

  30. Subnets and Aggregation • Two use cases for adjusting the size of IP prefixes; both reduce routing table 1. Subnets • Internally split one large prefix into multiple smaller ones 2. Aggregation • Join multiple smaller prefixes into one large prefix CSE 461 University of Washington 30

  31. Subnets • Internally split up one IP prefix One prefix sent to 16K rest of Internet 8K 32K addresses 4K Company Rest of Internet

  32. Aggregation • Externally join multiple separate IP prefixes One prefix sent to rest of Internet \ Rest of Internet ISP

  33. Best Path Routing

  34. What are “Best” paths anyhow? • Many possibilities: F • Latency, avoid circuitous paths • Bandwidth, avoid slow links E • Money, avoid expensive links G • Hops, to reduce switching D • But only consider topology A B • Ignore workload, e.g., hotspots H C CSE 461 University of Washington 34

  35. Shortest Paths We’ll approximate “best” by a cost function that captures the factors • Often call lowest “shortest” 1. Assign each link a cost (distance) 2. Define best path between each pair of nodes as the path that has the lowest total cost (or is shortest) 3. Pick randomly to any break ties CSE 461 University of Washington 35

  36. Shortest Paths (2) F • Find the shortest path A  E 2 4 E 3 • All links are bidirectional, with G 10 3 2 equal costs in each direction 4 1 D • Can extend model to unequal 4 A B costs if needed 2 2 H 3 C CSE 461 University of Washington 36

  37. Shortest Paths (3) F • ABCE is a shortest path 2 4 • dist(ABCE) = 4 + 2 + 1 = 7 E 3 G 10 3 2 • This is less than: 4 • dist(ABE) = 8 1 D 4 A B • dist(ABFE) = 9 2 2 • dist(AE) = 10 H 3 • dist(ABCDE) = 10 C CSE 461 University of Washington 37

  38. Shortest Paths (4) F • Optimality property: 2 4 • Subpaths of shortest paths are E 3 also shortest paths G 10 3 2 • ABCE is a shortest path 4 1 D  So are ABC, AB, BCE, BC, CE 4 A B 2 2 H 3 C CSE 461 University of Washington 38

  39. Sink Trees F • Sink tree for a destination is 2 4 the union of all shortest paths E towards the destination 3 G 10 • Similarly source tree 3 2 4 1 D • Find the sink tree for E 4 A B 2 2 H 3 C CSE 461 University of Washington 39

  40. Sink Trees (2) F • Implications: 2 • Only need to use destination to 4 E follow shortest paths 3 • Each node only need to send to G 10 3 2 the next hop 4 • Forwarding table at a node 1 D 4 • Lists next hop for each A B 2 2 destination H • Routing table may know more 3 C CSE 461 University of Washington 40

Recommend


More recommend