COMP211 Chapter 5 Network Layer: the Control Plane

COMP211 Chapter 5 Network Layer: the Control Plane

COMP211 Chapter 5 Network Layer: The Control Plane Computer Networking: A Top Down Approach th 7 edition Jim Kurose, Keith Ross Pearson/Addison Wesley All material copyright 1996-2016 April 2016 J.F Kurose and K.W. Ross, All Rights Reserved Network Layer: Control Plane 5-1 Chapter 5: network layer control plane chapter goals: understand principles behind network control plane § traditional routing algorithms § SDN controlllers and their instantiation, implementation in the Internet: § OSPF, BGP, OpenFlow Network Layer: Control Plane 5-2 Chapter 5: outline 5.1 introduction 5.5 the SDN control plane 5.2 routing protocols § link state § distance vector 5.3 intra-AS routing in the Internet: OSPF 5.4 routing among the ISPs: BGP Network Layer: Control Plane 5-3 Network-layer functions Recall: two network-layer functions: § forwarding: move packets from router’s input to data plane appropriate router output § routing: determine route taken by packets from source control plane to destination Two approaches to structuring network control plane: § per-router control (traditional) § logically centralized control (software defined networking) Network Layer: Control Plane 5-4 4.1 • OVERVIEW OF NETWORK LAYER 309 Routing algorithm Control plane Data plane Local forwarding table header output 0100 3 0110 2 0111 2 1001 1 Values in arriving packet’s header 1 1101 2 Per-router control plane3 Individual routing algorithmFigure 4.2 ♦ Routing algorithms components determine values in forward in tables each and every tables. In this example, a routing algorithm runs in each and every router and both router interact withforwarding each and routing other functions are incontained control within a router. As plane we’ll see in Sec- to compute tions 5.3 and 5.4, the routing algorithm function in one router communicates with the routing algorithm function in other routers to compute the values for its forward- forwarding tables ing table. How is this communication performed? By exchanging routing messages containing routing information according to a routing protocol! We’ll cover routing algorithms and protocols in Sections 5.2 through 5.4. The distinct and different purposes of the forwarding and routing functions can be further illustrated by considering the hypothetical (and unrealistic, but technically feasible) case of a network in which all forwarding tables are configured directly by human network operators physically present at the routers. In this case, no routing Routing protocols would be required! Of course, the human operators would need to interact Algorithm with each other to ensure that the forwarding tables were configured in such a way that packets reached their intended destinations. It’s also likely that human configu- control ration would be more error-prone and much slower to respond to changes in the net- work topology than a routing protocol. We’re thus fortunate that all networks have plane both a forwarding and a routing function! data plane M04_KURO4140_07_SE_C04.indd 309 11/02/16 3:14 PM Network Layer: Control Plane 5-5 Logically centralized control plane A distinct (typically remote) controller interacts with local control agents (CAs) in routers to compute forwarding tables Remote Controller control plane data plane CA CA CA CA CA Network Layer: Control Plane 5-6 Chapter 5: outline 5.1 introduction 5.5 The SDN control plane 5.2 routing protocols § link state § distance vector 5.3 intra-AS routing in the Internet: OSPF 5.4 routing among the ISPs: BGP Network Layer: Control Plane 5-7 Routing Routing protocol Goal: determine “good” path 5 (sequence of routers) through 3 B C network from source to destination. 2 5 A 2 1 F 3 1 2 D E Graph abstraction for 1 routing algorithms: § graph nodes are routers v “good” path: § graph edges are physical links § typically means minimum cost path • link cost: delay, $ cost, or congestion level § other def’s possible Network Layer 4-8 Routing algorithm classification Q: global or decentralized Q: static or dynamic? information? static: global: § routes change slowly over § all routers have complete time topology, link cost info dynamic: § “link state” algorithms § routes change more decentralized: quickly § router knows physically- • periodic update connected neighbors, link costs to neighbors • in response to link cost changes § iterative process of computation, exchange of info with neighbors § “distance vector” algorithms Network Layer: Control Plane 5-9 Chapter 5: outline 5.1 introduction 5.5 The SDN control plane 5.2 routing protocols § link state § distance vector 5.3 intra-AS routing in the Internet: OSPF 5.4 routing among the ISPs: BGP Network Layer: Control Plane 5-10 Making routing scalable our routing study thus far - idealized § all routers identical § network “flat” … not true in practice scale: with billions of administrative autonomy destinations: § internet = network of § can’t store all networks destinations in routing § each network admin may tables! want to control routing in § routing table exchange its own network would swamp links! Network Layer: Control Plane 5-11 Internet approach to scalable routing aggregate routers into regions known as “autonomous systems” (AS) (a.k.a. “domains”) intra-AS routing inter-AS routing § routing among hosts, routers § routing among AS’es in same AS (“network”) § gateways perform inter- § all routers in AS must run domain routing (as well same intra-domain protocol as intra-domain routing) § routers in different AS can run different intra-domain routing protocol § gateway router: at “edge” of its own AS, has link(s) to router(s) in other AS’es Network Layer: Control Plane 5-12 Interconnected ASes 3c 3a 2c 3b 2a AS3 2b 1c AS2 1a 1b 1d AS1 § forwarding table configured by both intra- and inter-AS routing Intra-AS Inter-AS algorithm Routing Routing algorithm algorithm • intra-AS routing determine entries for Forwarding table destinations within AS • inter-AS & intra-AS determine entries for external destinations Network Layer: Control Plane 5-13 Intra-AS Routing § also known as interior gateway protocols (IGP) § most common intra-AS routing protocols: • RIP: Routing Information Protocol • OSPF: Open Shortest Path First (IS-IS protocol essentially same as OSPF) • IGRP: Interior Gateway Routing Protocol (Cisco proprietary for decades, until 2016) Network Layer: Control Plane 5-14 OSPF (Open Shortest Path First) § “open”: publicly available § uses link-state algorithm • link state packet dissemination • topology map at each node • route computation using Dijkstra’s algorithm § router floods OSPF link-state advertisements to all other routers in entire AS • carried in OSPF messages directly over IP (rather than TCP or UDP • link state: for each attached link § hierarchical OSPF in large domains (see next slide) § IS-IS routing protocol: nearly identical to OSPF Network Layer: Control Plane 5-15 boundary router backbone router Hierarchical OSPF backbone area border routers area 3 § two-level hierarchy: internal local area, backbone. area 1 routers • link-state area 2 advertisements only in area • each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. § area border routers: “summarize” distances to nets in own area, advertise to other Area Border routers. § backbone routers: run OSPF routing limited to backbone. § boundary routers: connect to other AS‘s. Network Layer: Control Plane 5-16 Chapter 5: outline 5.1 introduction 5.5 The SDN control plane 5.2 routing protocols 5.6 ICMP: The Internet § link state Control Message § distance vector Protocol 5.3 intra-AS routing in the 5.7 Network management Internet: OSPF and SNMP 5.4 routing among the ISPs: BGP Network Layer: Control Plane 5-17 Internet inter-AS routing: BGP § BGP (Border Gateway Protocol): the de facto inter-domain routing protocol • “glue that holds the Internet together” § BGP provides each AS a means to: • eBGP: obtain subnet reachability information from neighboring ASes • iBGP: propagate reachability information to all AS- internal routers. • determine “good” routes to other networks based on reachability information and policy § allows subnet to advertise its existence to rest of Internet: “I am here” Network Layer: Control Plane 5-18 BGP basics § BGP session: two BGP routers (“peers”) exchange BGP messages over semi-permanent TCP connection: • advertising paths to different destination network prefixes (BGP is a “path vector” protocol) § when AS3 gateway router 3a advertises path AS3,X to AS2 gateway router 2c: • AS3 promises to AS2 it will forward datagrams towards X AS 3 3b AS 1 1b 3a 3c 1a 1c AS 2 2b 3d X 1d BGP advertisement: 2a 2c AS3, X 2d Network Layer: Control Plane 5-19 Path attributes and BGP routes § advertised prefix includes BGP attributes • prefix + attributes = “route” § two important attributes: • AS-PATH: list of ASes through which prefix advertisement has passed • NEXT-HOP: indicates specific internal-AS router to next- hop AS § Policy-based routing: • gateway receiving route advertisement uses import policy to accept/decline path (e.g., never route through AS Y). • AS policy also determines whether to advertise path to other other neighboring ASes Network Layer: Control Plane 5-20 BGP path advertisement AS3 3b AS1 1b 3a 3c 1a 1c AS2 2b 3d X 1d AS3,X AS2,AS3,X 2a 2c 2d § AS2 router 2c receives path advertisement AS3,X (via eBGP) from AS3 router 3a § Based on AS2 policy, AS2 router 2c accepts path AS3,X, propagates (via iBGP) to all AS2 routers § Based on AS2 policy, AS2 router 2a advertises (via eBGP) path AS2, AS3,

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    44 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us