0% found this document useful (0 votes)
30 views

High-Performance Data Networking: Organization

This document provides an overview of the topics that will be covered in a high-performance data networking course, including an introduction to the TAs, prerequisites, and mix of theory, exercises, Q&A, and a project. It also previews some of the technical topics that will be covered, such as software-defined networking, quality-of-service, multicast, network resilience, and the P4 programming language. Finally, it gives short introductions to routing, IP packets, multi-protocol label switching, error control in TCP, and TCP congestion control.

Uploaded by

Chang Ye
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)
30 views

High-Performance Data Networking: Organization

This document provides an overview of the topics that will be covered in a high-performance data networking course, including an introduction to the TAs, prerequisites, and mix of theory, exercises, Q&A, and a project. It also previews some of the technical topics that will be covered, such as software-defined networking, quality-of-service, multicast, network resilience, and the P4 programming language. Finally, it gives short introductions to routing, IP packets, multi-protocol label switching, error control in TCP, and TCP congestion control.

Uploaded by

Chang Ye
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
You are on page 1/ 9

11/3/20

High-performance data
networking

CS4055
Fernando Kuipers

Organization

• TAs: Jorik Oostenbrink & Belma Turkovic

• Prerequisites: Networking basics + programming (Python)

• 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

TCP/IP: “Hourglass” design


Application Telnet FTP DNS HTTP SMTP

Transport TCP UDP RTP

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

Two-level Routing Hierarchy


Autonomous System (AS)

Intra-domain
routing

Router
connectivity
B

C AS
A
Inter-domain routing connectivity

– Intra-domain routing (interior gateway protocols): Routing within


one AS (e.g., OSPF and IS-IS)
– Inter-domain routing (exterior gateway protocols): Glues together
different ASes (e.g., BGP) 9

Basic Address Types


unicast:
for one-to-one U
communication
M

multicast: M
for one/many-to-many M
communication
A
anycast: A
for one-to-nearest
communication A

10

10

5
11/3/20

Multi Protocol Label Switching (MPLS)


• Label:
– short
– fixed-length
– local significance
– exact match for forwarding

• Forwarding equivalency class (FEC):


– packets that share the same next hop share the same
label (locally)

• Needs label distribution mechanism


11

11

Label stacking
• Label stacking allows an indefinite number
of labels to be used

• 3 Label operations:
– Push
– Pop
– Swap

• Separates control and forwarding


12

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

Time-out and Retransmission


Sender Receiver
Send packet 1
Scheduled arrival
ACK 1 would packet 1
normally arrive

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

Tuning sliding window impacts number of packets in network

16

16

8
11/3/20

TCP Congestion Window: no loss


Advertised
Window

on the arrival of an ack:


Congestion

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

Slow Start Congestion Avoidance 17

17

MPTCP

Traditional versus Multi-Path TCP

18

18

You might also like