0% found this document useful (0 votes)
8 views19 pages

Lecture 14

Chapter 5 discusses the network layer control plane, focusing on routing algorithms, SDN controllers, and network management protocols like ICMP and SNMP. It outlines traditional per-router control versus logically centralized control in software-defined networking, and details routing protocols such as OSPF and BGP. The chapter also introduces Dijkstra's algorithm for finding least-cost paths in network routing.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views19 pages

Lecture 14

Chapter 5 discusses the network layer control plane, focusing on routing algorithms, SDN controllers, and network management protocols like ICMP and SNMP. It outlines traditional per-router control versus logically centralized control in software-defined networking, and details routing protocols such as OSPF and BGP. The chapter also introduces Dijkstra's algorithm for finding least-cost paths in network routing.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Chapter 5

Network Layer:
The Control Plane

A note on the use of these Powerpoint slides:


We’re making these slides freely available to all (faculty, students, readers).
They’re in PowerPoint form so you see the animations; and can add, modify,
and delete slides (including this one) and slide content to suit your needs.
They obviously represent a lot of work on our part. In return for use, we only
ask the following: Computer
▪ If you use these slides (e.g., in a class) that you mention their source
(after all, we’d like people to use our book!)
Networking: A Top
▪ If you post any slides on a www site, that you note that they are adapted
from (or perhaps identical to) our slides, and note our copyright of this
material.
Down Approach
7th edition
Thanks and enjoy! JFK/KWR
Jim Kurose, Keith Ross
All material copyright 1996-2016 Pearson/Addison Wesley
J.F Kurose and K.W. Ross, All Rights Reserved April 2016
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
▪ Internet Control Message Protocol
▪ network management

and their instantiation, implementation in the Internet:


▪ OSPF, BGP, OpenFlow, ODL and ONOS
controllers, ICMP, SNMP

Network Layer: Control Plane 5-2


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-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 control plane
source 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
Per-router control
plane
Individual routing algorithm components in each and every
router interact with each other in control plane to compute
forwarding tables

Routing
Algorith contro
m l
plane
data
plan
e

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

contro
l
plane
data
plan
e
C
A
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 5.6 ICMP: The Internet
▪ link state Control Message
Protocol
▪ distance vector
5.7 Network management
5.3 intra-AS routing in the
and SNMP
Internet: OSPF
5.4 routing among the ISPs:
BGP

Network Layer: Control Plane 5-7


Routing protocols

Routing protocol goal: determine “good”


paths (equivalently, routes), from sending hosts
to receiving host, through network of routers
▪ path: sequence of routers packets will traverse
in going from given initial source host to given
final destination host
▪ “good”: least “cost”, “fastest”, “least
congested”
▪ routing: a “top-10” networking challenge!

Network Layer: Control Plane 5-8


Graph abstraction of the network
5

v 3 w
2 5
u 2 1 z
3
1 2
x 1
y
graph: G = (N,E)

N = set of routers = { u, v, w, x, y, z }

E = set of links ={ (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) }

aside: graph abstraction is useful in other network contexts, e.g.,


P2P, where N is set of peers and E is set of TCP connections

Network Layer: Control Plane 5-9


Graph abstraction: costs
5
c(x,x’) = cost of link (x,x’)
3 e.g., c(w,z) = 5
v w 5
2
u cost could always be 1, or
2
3
1 z inversely related to bandwidth,
1 2 or inversely related to
x 1
y congestion

cost of path (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp)

key question: what is the least-cost path between u and z


?
routing algorithm: algorithm that finds that least cost
path Network Layer: Control Plane 5-10
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-11
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
Protocol
▪ distance vector
5.7 Network management
5.3 intra-AS routing in the
and SNMP
Internet: OSPF
5.4 routing among the ISPs:
BGP

Network Layer: Control Plane 5-12


A link-state routing algorithm
Dijkstra’s algorithm notation:
▪ net topology, link costs ▪ c(x,y): link cost from
known to all nodes node x to y; = ∞ if not
• accomplished via “link state direct neighbors
broadcast” ▪ D(v): current value of
• all nodes have same info cost of path from source
▪ computes least cost paths to dest. v
from one node (‘source”) ▪ p(v): predecessor node
to all other nodes along path from source to
• gives forwarding table for v
that node ▪ N': set of nodes whose
▪ iterative: after k least cost path definitively
iterations, know least cost known
path to k dest.’s

Network Layer: Control Plane 5-13


Dijsktra’s algorithm
1 Initialization:
2 N' = {u}
3 for all nodes v
4 if v adjacent to u
5 then D(v) = c(u,v)
6 else D(v) = ∞
7
8 Loop
9 find w not in N' such that D(w) is a minimum
10 add w to N'
11 update D(v) for all v adjacent to w and not in N' :
12 D(v) = min( D(v), D(w) + c(w,v) )
13 /* new cost to v is either old cost to v or known
14 shortest path cost to w plus cost from w to v */
15 until all nodes in N'

Network Layer: Control Plane 5-14


Dijkstra’s algorithm: example
D(v) D(w) D(x) D(y) D(z)
Step N' p(v) p(w) p(x) p(y) p(z)
0 u 7,u 3,u 5,u ∞ ∞
1 uw 6,w 5,u 11,w ∞
2 uwx 6,w 11,w 14,x
3 uwxv 10,v 14,x
4 uwxvy 12,y
5 uwxvyz x
9

notes: 5
4
7
❖ construct shortest path tree by
tracing predecessor nodes 8
❖ ties can exist (can be broken 3 w z
u y
arbitrarily) 2
3
7 4
v
Network Layer: Control Plane 5-15
5

3
v w
2 5

u 2 1 z
3
1
2
x y
1

4-16
Dijkstra’s algorithm: another example

Step N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z)


0 u 2,u 5,u 1,u ∞ ∞
1 ux 2,u 4,x 2,x ∞
2 uxy 2,u 3,y 4,y
3 uxyv 3,y 4,y
4 uxyvw 4,y
5 uxyvwz

Network Layer: Control Plane 5-17


Dijkstra’s algorithm: example (2)
resulting shortest-path tree from u:

v w
u z
x y

resulting forwarding table in u:


destination link
v (u,v)
x (u,x)
y (u,x)
w (u,x)
z (u,x)
Network Layer: Control Plane 5-18
Dijkstra’s algorithm, discussion
algorithm complexity: n nodes
▪ each iteration: need to check all nodes, w, not in N
▪ n(n+1)/2 comparisons: O(n2)
▪ more efficient implementations possible: O(nlogn)
oscillations possible:
▪ e.g., support link cost equals amount of carried traffic:

1
A 1+e A A A
2+e 0 0 2+e 2+e 0
D 0 0 B D 1+e 1 B D B D 1+e 1 B
0 0
0 e 0 0
1
C C 0 1
C 1+e C 0
1
e
given these costs, given these costs, given these costs,
initially find new routing…. find new routing…. find new routing….
resulting in new costs resulting in new costs resulting in new costs
Network Layer: Control Plane 5-19

You might also like