Lecture 15 Routing Protocols - Link State Algo
Lecture 15 Routing Protocols - Link State Algo
Network
Layer:
Control
Plane
Computer Networking: A
Top-Down Approach
8th edition
Jim Kurose, Keith Ross
Pearson, 2020
Network layer control plane: our
goals
understand principles instantiation, implementation
behind network control in the Internet:
plane: • OSPF, BGP
• traditional routing algorithms • OpenFlow, ODL and ONOS
• SDN controllers controllers
• network management, • Internet Control Message
configuration Protocol: ICMP
• SNMP, YANG/NETCONF
introduction
routing protocols
link state
distance vector
intra-ISP routing: OSPF
Inter-ISP routing: BGP
network management,
SDN control plane
configuration
Internet Control Message • SNMP
Protocol • NETCONF/YANG
Routing
Algorithm
control
plane
data
plane
values in arriving
packet header
0111 1
2
3
Remote Controller
control
plane
data
plane
CA
CA CA CA CA
values in arriving
packet header
0111 1
2
3
introduction
routing protocols
link state
distance vector
intra-ISP routing: OSPF
routing among ISPs: BGP network management,
SDN control plane configuration
Internet Control Message • SNMP
Protocol • NETCONF/YANG
congested” application
introduction
routing protocols
link state
distance vector
intra-ISP routing: OSPF
routing among ISPs: BGP network management,
SDN control plane configuration
Internet Control Message • SNMP
Protocol • NETCONF/YANG
5 uwxvyz v
notes:
construct least-cost-path tree by tracing predecessor nodes
ties can exist (can be broken arbitrarily)
Network Layer: 5-16
Dijkstra’s algorithm: discussion
algorithm complexity: n nodes
each of n iteration: need to check all nodes, w, not in N
n(n+1)/2 comparisons: O(n2) complexity
more efficient implementations possible: O(nlogn)
message complexity:
each router must broadcast its link state information to other n routers
efficient (and interesting!) broadcast algorithms: O(n) link crossings to disseminate a
broadcast message from one source
each router’s message crosses O(n) links: overall message complexity: O(n2)
a 2+e
a 0
a 2+e a
1 1+e 0 2+e 0
d b d 1+e 1 b d 0 0 b d 1+e 1 b
0 0
e 1 0 1
1 0
c 0 1 1
c 1+e 1 1 0 0 1
c 1 c
e e e
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