ilab
play

iLab Dynamic Routing Florian Wohlfart wohlfart@in.tum.de Chair of - PowerPoint PPT Presentation

iLab Dynamic Routing Florian Wohlfart wohlfart@in.tum.de Chair of Network Architectures and Services Department of Informatics Technical University of Munich Lab 3 17ws 1 / 41 Outline Recap Background: Internet Architecture Internet


  1. iLab Dynamic Routing Florian Wohlfart wohlfart@in.tum.de Chair of Network Architectures and Services Department of Informatics Technical University of Munich Lab 3 – 17ws 1 / 41

  2. Outline Recap Background: Internet Architecture Internet Exchange Points (IXPs) Autonomous Systems Routing between ASes Theory: Routing Algorithms Problem Definition Link-State Routing Distance-Vector Routing Practice: Routing Prococols RIP OSPF BGP 2 / 41

  3. Outline Recap Background: Internet Architecture Internet Exchange Points (IXPs) Autonomous Systems Routing between ASes Theory: Routing Algorithms Problem Definition Link-State Routing Distance-Vector Routing Practice: Routing Prococols RIP OSPF BGP 3 / 41

  4. Recap: Network Layer HTTP protocol browser HTTP server TCP protocol TCP TCP router IP protocol IP protocol IP IP IP Ethernet WLAN Ethernet Ethernet WLAN WLAN protocol protocol driver driver driver driver wireless LAN Ethernet 4 / 41

  5. Outline Recap Background: Internet Architecture Internet Exchange Points (IXPs) Autonomous Systems Routing between ASes Theory: Routing Algorithms Problem Definition Link-State Routing Distance-Vector Routing Practice: Routing Prococols RIP OSPF BGP 5 / 41

  6. Example: Traceroute from TUM I8 to google.de DFN LRZ Google ◮ hops 1–4, Leibniz-Rechenzentrum (LRZ) , AS12816 ◮ hops 5–6, Deutsches Forschungsnetz (DFN) , AS680 peering info: https://peeringdb.com/net/279 ◮ hops 7–10, Google , AS15169 peering info: https://peering.google.com, https://peeringdb.com/net/433 6 / 41

  7. Example: DFN Network L2 Topology and PoPs X-WiN-Topologie: Glasfasern Glasfaser Bestand KIE Glasfaser geplant DKR ROS Kernnetzknoten Bestand GRE AWI DES HWS Kernnetzknoten geplant HAM EWE BRE FFO TUB ZEU HAN MAG POT HUB BIE BRA MDS ZIB MUE ADH PAD GOE DUI BOC DOR LAP/LEI KAS DRE/DRN DUS FJL WUP FZJ MAR GIE FRE JEN CHE BIR AAC ILM AAH FRB BON FRA WUE BAY GSI KAI ERL HEI REG SAA KIT STU KEH GAR AUG FHM BAS Stand: September 2015 Source: https://www.dfn.de/fileadmin/1Dienstleistungen/XWIN/GF-Topo-2015-10-12.pdf 7 / 41

  8. Internet Architecture Internet Topology ◮ the Internet is a decentralized network of networks ◮ many organizations operate their own network, which all need to be interconnected ◮ glue: IP protocol, exchange of routing information (BGP) Typical Network Operators ◮ content providers ◮ content delivery networks (CDN) support content providers ◮ Internet service providers (“eyeball networks”) ◮ transit providers 8 / 41

  9. Internet Architecture cont’d Source: C. Labovitz, S. Iekel-Johnson, D. McPherson, J. Oberheide, and F. Jahanian. Internet inter-domain traffic. In Proceedings of the ACM SIGCOMM 2010 conference (SIGCOMM ’10) 9 / 41

  10. Top Content Providers Source: B. Yeganeh, R. Rejaie, W. Willinger. A view from the edge: A stub-AS perspective of traffic localization and its implications. TMA 2017 10 / 41

  11. Background: Internet Exchange Points (IXPs) Definition ◮ an exchange point for traffic between network operators ◮ makes it easy to connect to many other networks (via peering) ◮ provides physical infrastructure Largest IXPs ◮ DE-CIX (Frankfurt), 732 members, 5.6 Tbit/s peak traffic ◮ AMS-IX (Amsterdam), 807 members, 5.5 Tbit/s peak traffic ◮ LINX (London), 786 members, 3.5 Tbit/s peak traffic Example fees (2016, DE-CIX Frankfurt) ◮ 1 Gbit/s costs 500 Euro/month ◮ 10 Gbit/s costs 1,550 Euro/month ◮ 100 Gbit/s costs 9,500 Euro/month 11 / 41

  12. DE-CIX Frankfurt: Topology Source: https://www.de-cix.net/about/topology/ 12 / 41

  13. DE-CIX Frankfurt: Core Switch Source: https://press.de-cix.net/graphics/ 13 / 41

  14. DE-CIX Frankfurt: Throughput (2 days) Source: https://www.de-cix.net/en/locations/germany/frankfurt/statistics 14 / 41

  15. DE-CIX Frankfurt: Throughput (5 years) Source: https://www.de-cix.net/en/locations/germany/frankfurt/statistics 15 / 41

  16. Autonomous Systems (AS) Definition ◮ networks under a common administrative organization e.g. ISP network, campus network ◮ an AS is identified by a 32bit AS-number (was extended from 16bit in 2007) ◮ each AS advertises the address space it is willing to accept (belonging to the AS itself or as transit traffic) Implications ◮ from the outside, ASes are viewed as a single entity with border routers and a routed address space ◮ changes within an AS are not relevant for other ASes e.g. internal topology, intra-AS routing ◮ all ASes must agree on a common way of exchanging routing information, inter-AS routing 16 / 41

  17. Autonomous Systems (AS) cont’d 17 / 41

  18. Intra-AS ./ Inter-AS-Routing Route selection ◮ intra-AS routing: focus on best paths ◮ inter-AS routing: also follow business policies ⇒ different link metrics and filtering policies Scalability border routers need to deal with a large number of routing table entries ◮ IPv4: >650k entries ◮ IPv6: 45k entries 18 / 41

  19. Outline Recap Background: Internet Architecture Internet Exchange Points (IXPs) Autonomous Systems Routing between ASes Theory: Routing Algorithms Problem Definition Link-State Routing Distance-Vector Routing Practice: Routing Prococols RIP OSPF BGP 19 / 41

  20. Static /. Dynamic Routing Static Routing manual construction of routing tables 20 / 41

  21. Static /. Dynamic Routing Static Routing manual construction of routing tables ◮ does not scale 20 / 41

  22. Static /. Dynamic Routing Static Routing manual construction of routing tables ◮ does not scale ◮ does not react to changes (e.g. link failure) 20 / 41

  23. Static /. Dynamic Routing Static Routing manual construction of routing tables ◮ does not scale ◮ does not react to changes (e.g. link failure) Dynamic Routing distributed algorithms automate the construction of routing tables ◮ scales depending on the algorithm ◮ automated routing table updates after topology changes (with a certain delay) 20 / 41

  24. Problem Definition ◮ find a path from the source to the destination host B C SRC DST A F D E 21 / 41

  25. Problem Definition cont’d ◮ each hop (=router) forwards a packet closer to its destination based on the information in its FIB SRC DST 22 / 41

  26. Problem Definition cont’d ◮ link metrics attribute cost to links: e.g. path length, reliability, delay, bandwidth, load, communication cost, or routing policies B C 3 2 5 2 SRC 1 DST 3 A F 1 2 1 E D 23 / 41

  27. Problem Definition cont’d routing can be reduced to a graph problem ◮ each node represents a router ◮ each edge represents a link ◮ each link comes with a certain cost, c(X,Y) B C 3 2 5 2 1 3 A F 1 2 1 D E 24 / 41

  28. Routing Protocols Distributed routing algorithms perform the following steps 1. gather information about the network topology 2. create the local routing table based on the gathered information Common Routing Protocols and Algorithms ◮ OSPF, IS-IS (Link-State Routing) ◮ RIP (Distance-Vector Routing) ◮ BGP (Path-Vector Routing) 25 / 41

  29. Link-State Routing Information propagation ◮ each router exchanges link-state updates with each other router in the network (flooding) ◮ link-state updates contain list of adjacent routers and networks including costs ⇒ each router knows the whole network topology (global view) Information processing ◮ each router calculates the shortest paths to every other destination, e.g. using Dijkstra’s algorithm ◮ derive routing table from shortest path tree Implementations ◮ OSPF, IS-IS 26 / 41

  30. Dijkstra’s Algorithm with Source Node u I n i t i a l i z a t i o n : N’ = {u} # v i s i t e d nodes f o r a l l nodes v i f v i s neighbor of u then D( v ) = c (u , v ) e l s e D( v ) = ∞ Loop f i n d w not in N’ such that D(w) i s minimum add w to N’ f o r each neighbor v of w i f v not in N’ : D( v ) = min ( D( v ) , D(w) + c (w, v ) ) u n t i l N’ = N 27 / 41

  31. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) 28 / 41

  32. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) A 2,A 1,A ∞ ∞ ∞ 28 / 41

  33. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) A 2,A 1,A ∞ ∞ ∞ A,D 2,A 4,D 2,D ∞ 28 / 41

  34. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) A 2,A 1,A ∞ ∞ ∞ A,D 2,A 4,D 2,D ∞ A,D,E 2,A 3,E 4,E 28 / 41

  35. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) A 2,A 1,A ∞ ∞ ∞ A,D 2,A 4,D 2,D ∞ A,D,E 2,A 3,E 4,E A,D,E,B 3,E 4,E 28 / 41

  36. Example: Dijkstra’s Algorithm for Router A B C 3 2 5 2 1 3 A F 1 2 1 D E N’ D(B), D(C), D(D), D(E), D(F), p(B) p(C) p(D) p(E) p(F) A 2,A 1,A ∞ ∞ ∞ A,D 2,A 4,D 2,D ∞ A,D,E 2,A 3,E 4,E A,D,E,B 3,E 4,E A,D,E,B,C 4,E 28 / 41

Recommend


More recommend