Control-Data Plane Separation

Slides:



Advertisements
Similar presentations
What's inside a router? We have yet to consider the switching function of a router - the actual transfer of datagrams from a router's incoming links to.
Advertisements

Networks: Routing1 Network Layer Routing. Networks: Routing2 Network Layer Concerned with getting packets from source to destination Network layer must.
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Link-State Routing Reading: Sections 4.2 and COS 461: Computer Networks Spring 2011 Mike Freedman
Link-State Routing Reading: Sections 4.2 and COS 461: Computer Networks Spring 2010 (MW 3:00-4:20 in COS 105) Michael Freedman
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.5 Routing algorithms m Link state m Distance.
EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
1 CS 4396 Computer Networks Lab Dynamic Routing Protocols - II OSPF.
Network Layer r Introduction r Datagram networks r IP: Internet Protocol m Datagram format m IPv4 addressing m ICMP r What’s inside a router r Routing.
Router Architecture Overview
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
The Network Layer & Routing
1 Week 5 Lecture 2 IP Layer. 2 Network layer functions transport packet from sending to receiving hosts transport packet from sending to receiving hosts.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
Forwarding.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 20 Omar Meqdadi Department of Computer Science and Software Engineering University.
Internet Routing r Routing algorithms m Link state m Distance Vector m Hierarchical routing r Routing protocols m RIP m OSPF m BGP.
18-WAN Technologies and Dynamic routing Dr. John P. Abraham Professor UTPA.
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
CSE 421 Computer Networks. Chapter 4 Network Layer Thanks to you All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer.
CSE 421 Computer Networks. Network Layer 4-2 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
Network Layer Routing Networks: Routing.
INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723
Chapter 3 Part 3 Switching and Bridging
The network layer: routing
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 CPSC 335 Data Communication.
Dynamic Routing Protocols II OSPF
Chapter 4 Network Layer All material copyright
Routing Jennifer Rexford.
CSE390 – Advanced Computer Networks
EEC-484/584 Computer Networks
Chapter 4: Network Layer
Chapter 3 Part 3 Switching and Bridging
Chapter 4-1 Network layer
CS 457 – Lecture 12 Routing Spring 2012.
18-WAN Technologies and Dynamic routing
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing: Distance Vector Algorithm
What’s “Inside” a Router?
Dynamic Routing Protocols II OSPF
ECE 544 Protocol Design Project 2016
EEC-484/584 Computer Networks
CS 4700 / CS 5700 Network Fundamentals
EEC-484/584 Computer Networks
CS 3700 Networks and Distributed Systems
EEC-484/584 Computer Networks
Switch controller: Routing
EEC-484/584 Computer Networks
Network Control Jennifer Rexford
CS 3700 Networks and Distributed Systems
Network Layer Routing Networks: Routing.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith Ross Addison-Wesley, April Network Layer.
COS 561: Advanced Computer Networks
Chapter 3 Part 3 Switching and Bridging
Network Layer: Control/data plane, addressing, routers
CMPE 252A : Computer Networks
Network Layer (contd.) Routing
EE 122: Intra-domain routing: Distance Vector
Chapter 4: Network Layer
Chapter 4: Network Layer
Network Layer Routing.
Control-Data Plane Separation
Presentation transcript:

Control-Data Plane Separation Part I Lecture 3, Computer Networks (198:552) Fall 2019

Edge and core: a useful distinction Edge: data origins or sinks (“endpoints”) Your laptop, mobile phone, Google’s servers Core: machines processing & transmitting data Your WiFi router, Rutgers’s firewall, Verizon’s routers Varies by context: one person’s core is another’s edge The Internet

Today, we’ll focus on the functions of the core of the network.

Structure of the network core The Internet

Structure of the network core Verizon AT&T Rutgers Sprint Comcast

Structure of the network core Verizon AT&T Rutgers Sprint Comcast Autonomous systems (ASes)

Structure of the network core Verizon AT&T Rutgers Sprint Independently administered set of routers

Moving pkts through Internet Verizon AT&T Rutgers Sprint Routing protocols inside and between ASes

What’s a protocol? Informally, a set of rules to communicate over a network Messages: how to structure a network conversation Actions: what to do when you are told something (or not) For example: what you should say next But could be many other (complex) things “How are you?” “I’m good, how are you?”

Control and Data Planes

Two key functions of the network core Forwarding: move packets from a router’s input to appropriate output port happens per packet Routing: determine route taken by packets from source to destination happens slower than per packet

An analogy: taking a trip Forwarding: getting through a single interchange Routing: planning the trip from source to destination

Core: Split into data and control planes Data plane: handles individual packets Local, per-router function Forwarding, “drop”, “buffer”, … “Mark”, “schedule”, “measure”, … Control plane: handle events Network-wide logic Compute how to move data end to end Need to track the topology of the net Split is motivated by need for high-speed packet processing

The Data Plane What’s inside a router?

What do routers look like? Access routers Core router Data center top-of-rack switch

Control & Data Planes inside a router Traditionally: Individual routing algorithm components in each and every router interact in the control plane Control plane per route-change processing (~ a few seconds) Routing Algorithm data plane control Data plane per-packet processing (~ tens of nanoseconds) 0111 1 2 3 values in arriving packet header

Router architecture overview forwarding processor Control plane high-speed switching fabric Data plane router input ports router output ports

Destination-based Forwarding in the Internet Packet payload header Router Destination Address Route Lookup Data Structure Outgoing Port Forwarding Table Dest-network Port 65.0.0.0/8 3 128.9.0.0/16 1 149.12.0.0/19 7

We’ll look into the internals of routers in much more detail later. Output Ports packet buffer queueing Outgoing network interface switch fabric Buffering required when pkts arrive from fabric faster than the outgoing transmission rate Implication: if buffers filled up, packets are dropped Scheduling discipline chooses among pkts queued for transmission Implication: Who gets priority is chosen by the scheduler

The Control Plane Routing Protocols

Routing enables forwarding Each router creates & looks packets up in its own forwarding table But the computation of the table is itself distributed Three aspects of a routing protocol: What outcome it computes What algorithm it runs How the protocol learns the location of endpoints

An example: OSPF Open Shortest Path First (OSPF) used within an AS Verizon AT&T Rutgers Sprint Open Shortest Path First (OSPF) used within an AS

Edge weights set by the network administrator What OSPF computes Shortest path(s) between each pair of nodes Separate shortest-path tree rooted at each node Path(s) with minimum sum of link metrics Disadvantages All nodes need to agree on the link metrics Multipath routing is limited to “equal cost multipath” Edge weights set by the network administrator

How OSPF solves the shortest path problem Compute: path costs to all nodes From a given source u to all other nodes Cost of the path through each outgoing link Next hop along the least-cost path to s 2 1 3 1 4 u 2 1 5 4 3 6 s

Dijkstra’s algorithm Once each router knows all nodes and link costs: Each node computes shortest paths to other nodes Initialization Loop S = {u} for all nodes v if (v is adjacent to u) D(v) = c(u,v) else D(v) = ∞ add w with smallest D(w) to S update D(v) for all adjacent v: D(v) = min{D(v), D(w) + c(w,v)} until all nodes are in S

OSPF route computation example 3 2 1 4 5 3 2 1 4 5 3 2 1 4 5 3 2 1 4 5

OSPF route computation example (cont.) 3 2 1 4 5 3 2 1 4 5 3 2 1 4 5 3 2 1 4 5

OSPF: Shortest-path tree Shortest-path tree from u Forwarding table at u 3 2 1 4 5 u v w x y z s t link v (u,v) w (u,w) x (u,w) y (u,v) z (u,v) s (u,w) t (u,w)

How OSPF on one router learns about other routers Each router sends out its own address and neighborhood link costs over all of its links: link state advertisement Each router forwards advertisements from others A process known as link state flooding As long as the neighboring router and the link to it are alive, the link cost is included in the flooded message OSPF is a link state protocol: if the state of the link changes (up/down/cost change), the entire network will know