Lec 10
Lec 10
Lec 10
Fall Semester
Lec_10
Outlines
▪ Module 01: Computer Networks and the Internet
▪ Module 05: The Link Layer: Links, Access Networks, and LANs
2
Chapter 4
Network Layer:
Data Plane
Computer Networking: A
Top-Down Approach
8th edition
Jim Kurose, Keith Ross
Pearson, 2020
3
▪understand principles • instantiation, implementation
behind network layer in the Internet
services, focusing on data • IP protocol
plane: • NAT, middleboxes
• network layer service models
• forwarding versus routing
• how a router works
• addressing
• generalized forwarding
• Internet architecture
4
Network Layer: 4-4
Network layer: “data plane” roadmap
• Network layer: overview
• data plane
• control plane
▪ What’s inside a router
• input ports, switching, output ports
• buffer management, scheduling
▪ IP: the Internet Protocol ▪ Generalized Forwarding, SDN
• datagram format
• Match+action
• addressing
• OpenFlow: match+action in action
• network address translation
• IPv6 ▪ Middleboxes
5
Network Layer: 4-5
Network-layer services and protocols
▪ transport segment from sending mobile network
routing
7
Network Layer: 4-7
Data plane: Control plane
▪ local, per-router function • network-wide logic
▪ determines how datagram • determines how datagram is
arriving on router input port routed among routers along end-
is forwarded to router end path from source host to
output port destination host
values in arriving ▪ two control-plane approaches:
packet header
• traditional routing algorithms:
0111 1 implemented in routers
• software-defined networking (SDN):
2
3
Routing
Algorithm
control
plane
data
plane
values in arriving
packet header
0111 1
2
3
9
Network Layer: 4-9
Software-Defined Networking (SDN) control plane
Remote controller computes, installs forwarding tables in routers
Remote Controller
control
plane
data
plane
CA
CA CA CA CA
values in arriving
packet header
0111 1
2
3
10
Network Layer: 4-10
Network service model
Q: What service model for “channel” transporting datagrams
from sender to receiver?
example services for example services for a flow of
individual datagrams: datagrams:
▪ guaranteed delivery • in-order datagram delivery
▪ guaranteed delivery with • guaranteed minimum bandwidth
less than 40 msec delay to flow
• restrictions on changes in inter-
packet spacing
11
Network Layer: 4-11
Network-layer service model
Quality of Service (QoS) Guarantees ?
Network Service
Architecture Model Bandwidth Loss Order Timing
Internet i. successful
Intserv Guaranteeddatagram
yes delivery to
yesdestination
yes yes
ii. 1633
(RFC )
timing or order of delivery
Internet Diffserv (RFC 2475) available
iii. bandwidth to end-end
possible flow possibly
possibly no
12
Network Layer: 4-12
Network-layer service model
Quality of Service (QoS) Guarantees ?
Network Service
Architecture Model Bandwidth Loss Order Timing
13
Network Layer: 4-13
Reflections on best-effort service:
▪ simplicity of mechanism has allowed Internet to be widely deployed
adopted
▪ sufficient provisioning of bandwidth allows performance of real-time
applications (e.g., interactive voice, video) to be “good enough” for
“most of the time”
▪ replicated, application-layer distributed services (datacenters, content
distribution networks) connecting close to clients’ networks, allow
services to be provided from multiple locations
▪ congestion control of “elastic” services helps
physical layer:
bit-level reception
link layer:
decentralized switching:
e.g., Ethernet ▪ using header field values, lookup output port using
forwarding table in input port memory (“match plus action”)
(chapter 6)
▪ goal: complete input port processing at ‘line speed’
▪ input port queuing: if datagrams arrive faster than forwarding
rate into switch fabric
17
Network Layer: 4-17
Input port functions
lookup,
link
layer forwarding
line switch
termination protocol fabric
(receive)
queueing
physical layer:
bit-level reception
link layer:
decentralized switching:
e.g., Ethernet ▪ using header field values, lookup output port using
forwarding table in input port memory (“match plus action”)
(chapter 6)
▪ destination-based forwarding: forward based only on
destination IP address (traditional)
▪ generalized forwarding: forward based on any set of header
18 field values Network Layer: 4-18
Destination-based forwarding
otherwise 3
11001000 match!
00010111 00011*** ******** 2
otherwise 3
otherwise 3
match!
11001000 00010111 00010110 10100001 which interface?
examples:
22 11001000 00010111 00011000 10101010 which interface?
Network Layer: 4-22
Longest prefix matching
longest prefix match
when looking for forwarding table entry for given
destination address, use longest address prefix that
matches destination address.
otherwise 3
match!
11001000 00010111 00010110 10100001 which interface?
examples:
23 11001000 00010111 00011000 10101010 which interface?
Network Layer: 4-23