Professional Documents
Culture Documents
High-performance data
networking
CS4055
Fernando Kuipers
Organization
• Mix of:
– Theory (Online videos)
– Exercises (Reader)
– Q&A (Thursdays 09:30 – 10:30 via Virtual Classroom)
– Project (Grading: project report + presentation)
1
11/3/20
Online lectures
• Basics (recap on routing, TCP, etc.)
• Software-Defined Networking (SDN)
• Quality-of-Service (QoS)
• Multicast
• Network resilience
• P4
Internet IP
SDH FR
Link
LAN ATM ISDN
2
11/3/20
IP
IP packets
Hdr Type of
Ver. Len Service Total Length
Fragment
Identification Flg
Offset
Time to Protocol Header
Live Checksum
Internet
Source Address
routing
Destination Address
Options...
Options... Protocol
Data
3
11/3/20
What is Routing?
• Finding one (or more) paths between two (or more)
nodes in the network
– often there is an optimality criterion (e.g. shortest path)
• Basic building blocks:
To Link Cost
A local 0
PROTOCOL B 1 1
C 3 1
network topology ALGORITHM
E 3 6
consistent network
view forwarding table
7
Forwarding
Incoming interfaces Outgoing interfaces
IP packet 1
+ 2
3
4
IP address
destination Link Cost
IP1 1 5
IP2 4 2
Forwarding
TABLE
IP3 1 7
... ... ...
8
4
11/3/20
Intra-domain
routing
Router
connectivity
B
C AS
A
Inter-domain routing connectivity
multicast: M
for one/many-to-many M
communication
A
anycast: A
for one-to-nearest
communication A
10
10
5
11/3/20
11
Label stacking
• Label stacking allows an indefinite number
of labels to be used
• 3 Label operations:
– Push
– Pop
– Swap
12
6
11/3/20
TCP
13
13
Error Control
Three ways to deal with errors after detection:
Retransmission ARQ/TCP
• infrequent errors
• when time permits
Forward Error Correction real-time services
• frequent errors
• when time does not permit retransmissions
Discard UDP
• when strict reliability is not required/too expensive
14
14
7
11/3/20
Network
Retransmit packet 1
Receive packet 1
Send ACK 1
Receive ACK 1
time
15
15
Sliding Window
1 2 3 4 5 6 7 8 9 10 11
time
1 2 3 4 5 6 7 8 9
16
16
8
11/3/20
Sstresh
Window
if (W < sstresh)
W + +;
…
else
1
W+ = ;
W
Number of RTT’s
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
17
MPTCP
18
18