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 18ss 1 / 42 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 – 18ss 1 / 42

  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 / 42

  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 / 42

  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 / 42

  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 / 42

  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 ◮ hops 7–10, Google , AS15169 6 / 42

  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 / 42

  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 ◮ access providers (“eyeball networks”), content consumption ◮ transit providers 8 / 42

  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 / 42

  10. Example: Top Content Providers in Oregon Univ. Network 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 / 42

  11. Example Content Provider: The Google Edge Network Source: Matt Calder et al. “Mapping the expansion of Google’s serving infrastructure” ACM IMC 2013. ◮ 15 data centers ◮ >100 Points of Presence (PoP) ◮ used for peering with other ASes at IXPs and private interconnect facilities ◮ https://www.peeringdb.com/net/433 ◮ >1000 Google Global Cache (GGC) inside ISP networks ◮ caching content close to end users Source: https://peering.google.com/#/infrastructure 11 / 42

  12. 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), see https://peeringdb.com/ix/31 ◮ AMS-IX (Amsterdam), see https://peeringdb.com/ix/26 ◮ LINX (London), see https://peeringdb.com/ix/18 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 12 / 42

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

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

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

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

  17. Connecting Autonomous Systems Definition: Autonomous System (AS) ◮ 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 17 / 42

  18. Terminology: Autonomous Systems 18 / 42

  19. 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 19 / 42

  20. 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 20 / 42

  21. Static /. Dynamic Routing Static Routing manual construction of routing tables 21 / 42

  22. Static /. Dynamic Routing Static Routing manual construction of routing tables ◮ does not scale 21 / 42

  23. Static /. Dynamic Routing Static Routing manual construction of routing tables ◮ does not scale ◮ does not react to changes (e.g. link failure) 21 / 42

  24. 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) 21 / 42

  25. Problem Definition ◮ find a path from the source to the destination host B C SRC DST A F D E 22 / 42

  26. Problem Definition cont’d ◮ each hop (i.e. router or AS) forwards a packet closer to its destination based on the information in its FIB SRC DST 23 / 42

  27. 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 24 / 42

  28. 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 25 / 42

  29. 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) 26 / 42

  30. 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 27 / 42

  31. 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 28 / 42

  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) 29 / 42

  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 ∞ ∞ ∞ 29 / 42

  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 ∞ 29 / 42

  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 29 / 42

Recommend


More recommend