44
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Advanced Computer Networking (ACN) IN2097 – WiSe 2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick Sattler, Johannes Zirngibl Chair of Network Architectures and Services Department of Informatics Technical University of Munich

Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chair of Network Architectures and ServicesDepartment of InformaticsTechnical University of Munich

Advanced Computer Networking (ACN)

IN2097 – WiSe 2019-2020

Prof. Dr.-Ing. Georg Carle

Sebastian Gallenmüller, Max Helm,Benedikt Jaeger, Patrick Sattler, Johannes Zirngibl

Chair of Network Architectures and ServicesDepartment of Informatics

Technical University of Munich

Page 2: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-1

Page 3: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-2

Page 4: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

IntroductionGeorg Carle

Professional career:1985 - 1992 Studies of Electrical Engineering, University of Stuttgart, Germany1988 - 1989 Master of Science, Brunel University, London, UK

1990 Ecole nationale Supérieure des Télécommunitaions (ENST),Paris, France

1992 - 1996 PhD in Computer Science at University of Karlsruhe, Germany1997 Postdoc at Institut Eurecom, Sophia Antipolis, France

1997 - 2002 Frauenhofer FOKUS, Berlin, GermanyHead of Competence Center Global Networking

2003 - 2008 Professor, University of Tübingen, Germany2008 - * Professor, Technical University of Munich, Germany

Further positions:

• Since 1997 co-PI in many national and international projects

• Since 2013 Information Officer of Department of Informatics at TUM (previously Managing Director)

• Secretary of IFIP Working Group 6.2 Network and Internetwork Architecture

• Co-chair of ITG Working Group 5.2.2 Network Security

• Member of Board of German Computer Science Univ.-Prof. Association

Chapter 0: Introduction & Organization – Introduction 0-3

Page 5: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

• Who is new at TUM?

• Who studies what?• Master in Informatics?• Master in Informatics - english track?• Master in Informatics: Games Engineering?• Master in Information Systems (Wirtschaftsinformatik )?• Master in Communications Engineering MSCE?• Other master courses?• Bachelor in Informatics?• Bachelor in Informatics: Games Engineering?• Bachelor in Information Systems?• Other courses?

Chapter 0: Introduction & Organization – Introduction 0-4

Page 6: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

• Previous relevant courses?• Grundlagen Rechnernetze und Verteilte Systeme (GRNVS)?• Other courses in Computer Networks?• iLab (Internet Lab)?• Other networking lab courses?• What else?

• Other related courses?• Network Security?• Peer-to-Peer Communications and Security?

• Other relevant skills?• C programming skills?• Using a (virtualized) Unix / Linux server?

Chapter 0: Introduction & Organization – Introduction 0-5

Page 7: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

• Goals of the course• Learn to take responsibility for yourself• Think about the topics

• Do not aim just being able to repeat content of these slides without deeper understanding

• Learn to reflect on technical problems• Learn to apply your knowledge• Understand the principles

• What is the essence to be remembered in some years?• What would you consider suitable questions in an exam?

• Learn from practical project performed during the course

Chapter 0: Introduction & Organization – Introduction 0-6

Page 8: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

General learning outcomes

• Knowledge• Being able to reproduce facts

• Understanding• Being able to explain properties with own words

• Applying• Apply known methods to solve questions

• Analyzing• Identifying the inherent structure of a complex system

• Synthesis• Creating new solutions - from known elements

• Assessment• Identifying suitable criteria and perform assessment

Chapter 0: Introduction & Organization – Introduction 0-7

Page 9: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

General learning outcomes

• Knowledge, Understanding, Applying• Protocols: data link layer, network layer, transport layer, application layer• Concepts: measurements, signaling, QoS, resilience

⇒ Lectures, exercise questions, final exam

• Analyzing, Synthesis, Assessment• Special context: network properties• Tools: git, measurement tools, DPDK, . . .• Methods: plan solution, program, administer experiment setup, measure, reflect, document

⇒ Course project

Chapter 0: Introduction & Organization – Introduction 0-8

Page 10: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

Course overview (to be modified . . . )

• Part 1: Internet protocols - an overview on computer networks link layer• Overview on computer networks• Link layer• Software-Defined Networking• Internet structure• Transport layer• Application layer

• Part 2: Advanced concepts• Measurements• Quality of Service• Node architectures and mechanisms• Network management• Signaling• Resilience• Design principles and future Internet

Chapter 0: Introduction & Organization – Introduction 0-9

Page 11: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

Acknowledgements:

Significant parts of the course are based on this book:

• James F. Kurose and Keith W. Ross. Computer Networking: A Top-Down Approach. 7th ed. AddisonWesley, 2016

Jim Kurose, University ofMassachusetts, Amherst, USA

Keith Ross, Polytechnic institute ofNew York University, USA

Chapter 0: Introduction & Organization – Introduction 0-10

Page 12: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Introduction

Acknowledgements

Additional book relevant for the course:

• Douglas E. Comer. Internetworking With TCP/IP, Principles Protocols, and Architecture. 5th ed. Vol. 1.Prentice Hall, Englewood Cliffs, 2006

(a) Douglas Comer, Purdue University,Amherst, USA

Chapter 0: Introduction & Organization – Introduction 0-11

Page 13: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-12

Page 14: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Course organization

Times and addresses

• Time slots• Tuesday, 16:15 - 17:45, Interims HS 1• Thursday, 14:15 - 15:45, Interims HS 2

• TUMonline• Registration is required for access to course infrastructure• Exam registration is required (estimated start: end of November)

• Course material• Slides are available online (may be updated during the course)• Additional supporting material (exercise sheets, exams of previous semesters)• Web address: http://acn.net.in.tum.de

Chapter 0: Introduction & Organization – Course organization 0-13

Page 15: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Course organization

Questions and answers / office hours

• Prof. Dr.-Ing. Georg Carle• Contact: [email protected]• After course and upon appointment (typically Monday 18:00)

• Teaching assistants• Sebastian Gallenmüller• Max Helm• Benedikt Jaeger• Patrick Sattler• Johannes Zirngibl

• Coordination of exercises and project• Contact: [email protected]• Upon appointment or just drop by

Chapter 0: Introduction & Organization – Course organization 0-14

Page 16: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Course organization

Exam

• Exam date (preliminary): February 12, 2020 starting 10:30 am

• Closed book, cheat sheet will be provided by us

• Written exam at the end of the semester (75 min, 75 credits)

• Official date and location to be announced via TUMonline

Bonus

• Exercise (up to 60 credits)

• Project (up to 10 credits)

• No teamwork allowed

• bonusCredits = min(15, (creditsExercise/6 + creditsProject))

• finalGrade = grade(creditsFinalExam + bonusCredits)

• Bonus is only added IFF the final exam is passed without bonus, i.e., 4.0 or better

People caught cheating in any submission are excluded from the entire bonus system. Adhere to theofficial guidelines of the Department of Informatics:

• EN, http://go.tum.de/854881

• DE, http://go.tum.de/246064

Chapter 0: Introduction & Organization – Course organization 0-15

Page 17: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Course organization

Retake Exam

• There will be a written retake exam

• The retake exam usually takes place at the end of March/begin of April

• The bonus will also be valid for the retake exam

• You need to register for the retake exam separately (usually starting at mid of March)

• You do not need to be registered for the main exam to participate in the retake exam

Chapter 0: Introduction & Organization – Course organization 0-16

Page 18: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-17

Page 19: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Approach to Exercises

• Self correction

• Gain insight by reviewing own mistakes

Regular 2-week exercise process

1. New problem is released on a Thursday (first on Oct. 24)

2. Submission via git as an electronic notebook on a Thursday one week later

3. Discussion of solution during the Thursday lecture slot

4. Submission of self-corrected solution until Tuesday of the following week

Chapter 0: Introduction & Organization – Exercise and project 0-18

Page 20: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Self correction methodology

• Learn from your mistakes

• Improve your solution

• Do not copy the presented sample solution, adapt your own solution!

• Correct mistakes in first submission

• Submit via git

Chapter 0: Introduction & Organization – Exercise and project 0-19

Page 21: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Submission process

• Everyone gets an individual git repository

• Note: There are different git repositories for downloading lecture slides or the project code

• Access with personal SSH public key

• Put the submission in the correct folder• e.g., tutorial00/

• Commit and push to origin/master before the deadline

• More details provided on exercise sheet 0

Chapter 0: Introduction & Organization – Exercise and project 0-20

Page 22: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Grading

• After final submission we will grade your initial solution and the correction

• Grades will be published in your individual git repository

• Solution will be released after grading is finished

Chapter 0: Introduction & Organization – Exercise and project 0-21

Page 23: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Jupyter Notebook

• Will be used for the exercises

• Think of it as an interactive worksheet

• Write python code and plot graphs directly in your answers

• Accessible via your browser

• Hosted on a VM (no configuration required)

Chapter 0: Introduction & Organization – Exercise and project 0-22

Page 24: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Chapter 0: Introduction & Organization – Exercise and project 0-23

Page 25: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Project software router

• Implement a software router

• Using the packet processing framework DPDK

• Programming language: C or C++

• You get virtual machines for setting up your router

• Submissions using git repository

• Project deliverables are graded

Chapter 0: Introduction & Organization – Exercise and project 0-24

Page 26: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Step 1

• Login into your virtual machines

• Configure the VM setup

• Compile & configure DPDK

• Test your setup with a simple DPDK forwarding example

• Submission: scripts configuring router and clients

Router

eth2192.168.0.1/24

eth110.0.0.1/24

eth3172.16.0.1/24

eth110.0.0.2/24

eth1192.168.0.2/24

eth1172.16.0.2/24

Client 1 Client 2 Client 3

VM setup

Chapter 0: Introduction & Organization – Exercise and project 0-25

Page 27: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Exercise and project

Step 2

• Command line interface

• Router should answer the clients’ ARP requests

• Sanity checks on IP packets

• Do routing decision and forward packets accordingly

Step 3

• Implement a routing table

• Algorithm of choice: DIR-24-8

• Integrate routing table into your software router

Step 4

• Measure throughput/latency your implementation

• Plot your measurement results

• Create a test report of your findings

Chapter 0: Introduction & Organization – Exercise and project 0-26

Page 28: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-27

Page 29: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

TUMexam

• Who wrote an exam with TUMexam yet?

• Under development at I8 since 2015

• Several students involved

• In use at chairs from mathematics, computerscience and mechanical engineering

Advantages for Students:

• Online review process

1. Receive corrected exam as PDF2. Give justified feedback about the correction3. We update the correction if needed

• Final points are summed up automatically→ less error prone

• No additional interference while taking theexam

Chapter 0: Introduction & Organization – TUMexam 0-28

Page 30: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-29

Page 31: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewSources of delay

A

B

P

P

P

processing

queuing

propagation

transmission

Chapter 0: Introduction & Organization – Lecture overview 0-30

Page 32: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewInternet structure

• Autonomous systems (AS level structure)

• Routers and hosts (IP level structure)

AS35

AS99

AS101

AS85

AS92

AS10

Chapter 0: Introduction & Organization – Lecture overview 0-31

Page 33: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewTunneling

Tunnel Endpoint 1 Tunnel Endpoint 2

Network Network

Underlay

Overlay

• Tunneling is the art of encapsulating datagrams inside other datagrams

• Most widely known examples are VPNs

Chapter 0: Introduction & Organization – Lecture overview 0-32

Page 34: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewNetwork layer - routing

Routing algorithms

• Link state

• Distance Vector

• Hierarchical routing

Routing in the Internet

• RIP

• OSPF

• BGP

Broadcast and multicast routing

Area 0 Area 1

Area 2

Area 3

AS 2

AS 3

AS 4

ABR

ASBR

Example OSPF network

Chapter 0: Introduction & Organization – Lecture overview 0-33

Page 35: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewSDN

Data plane

Control plane

VM1 to VM3: W -> Z -> Y

VM2 to VM4: W -> X -> Y

Hypervisor 1

VM1

VM2

Hypervisor 2

VM3

VM4

Switch W Switch Y

Switch X

Switch Z

Chapter 0: Introduction & Organization – Lecture overview 0-34

Page 36: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewCDN

World image created by NASA, https://visibleearth.nasa.gov/view.php?id=73909

Nameserver Content Server User ShipSatellite internet via China

DNS

HTTP(S)

• Network traffic is constantly growing• Growth/Scaling can be achieved using CDNs

Chapter 0: Introduction & Organization – Lecture overview 0-35

Page 37: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewTransport layer services

• Transport-layer services

• Mulitplexing and demultiplexing

• Connectionless transport: UDP

• Connection-oriented transport: TCP• Segment structure• Reliable data transfer• Flow control• Connection management

• TCP congestion control

• SCTP

Chapter 0: Introduction & Organization – Lecture overview 0-36

Page 38: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewPipelining for increased utilization

Sender Receiver

first bit of first packet transmitted, t = 0last bit transmitted, t = L/R

ACK arrives, send next packet, t = RTT + L/R

first bit of first packet arriveslast bit arrives, send ACK

RTT

Usender =3 · L/R

RTT + L/R

Chapter 0: Introduction & Organization – Lecture overview 0-37

Page 39: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewTCP Congestion Control

capa

city

Load of system

maxideal

Flow and congestion control

Without congestion control

Congestioncollapse

Congestion is bad...

• So... How exactly do we control it? Ongoing research effort

0 2 4 6 8 10 12 14 16 18 20 22 240

2

4

6

8

10

12

14

16

Time

CW

ND

/sst

hres

hin

MS

S

CWMDssthresh

3-dupl. ACKs

Timeout

TCP Reno

0 5 10 15 20 25 30 35 40 450

200

400

600

800

1,000

Time

CW

ND

/sst

hres

hin

MS

S

TCP Cubic

Chapter 0: Introduction & Organization – Lecture overview 0-38

Page 40: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewWhy is TCP fair?

Two competing sessions:

• Additive increase gives slope of 1, as throughput increases

• Multiplicative decrease decreases throughput proportionally

equal bandwidth share

R

R

Throughput (connection 1)

Thro

ughp

ut(c

onne

ctio

n2)

Chapter 0: Introduction & Organization – Lecture overview 0-39

Page 41: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewDoes 36 year old TCP even have a place here?

Newer alternative: Google QUIC

• Way faster development cycle

• Built-in encryption support

• 0-RTT handshake (with a bit of luck...)

• No head-of-line blocking

• IP mobility proof

• Shiny new toy the cool kids play with :)

Let’s squeeze all out of it

• TCP BBR

• Newest Congestion algorithm from Google

• Gets high throughput ...

• ... while maintaining low latency

• No need to adapt applications

Chapter 0: Introduction & Organization – Lecture overview 0-40

Page 42: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Lecture overviewNetwork measurements

• Introduction

• Architecture & mechanisms

• Protocols• IPFIX (netflow accounting)• PSAMP (packet sampling)

• Scenarios

Chapter 0: Introduction & Organization – Lecture overview 0-41

Page 43: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

Introduction

Course organization

Exercise and project

TUMexam

Lecture overview

Bibliography

Chapter 0: Introduction & Organization 0-42

Page 44: Advanced Computer Networking (ACN) · Advanced Computer Networking (ACN) IN2097 – WiSe2019-2020 Prof. Dr.-Ing. Georg Carle Sebastian Gallenmüller, Max Helm, Benedikt Jaeger, Patrick

Chapter 0: Introduction & Organization

[1] James F. Kurose and Keith W. Ross. Computer Networking: A Top-Down Approach. 7th ed. AddisonWesley, 2016.

[2] Douglas E. Comer. Internetworking With TCP/IP, Principles Protocols, and Architecture. 5th ed. Vol. 1.Prentice Hall, Englewood Cliffs, 2006.

Chapter 0: Introduction & Organization 0-43