Lec 19 - Error and Loss Control

Size: px
Start display at page:

Download "Lec 19 - Error and Loss Control"

Transcription

1 ECE 5578 Multimedia Communication Lec 19 - Error and Loss Control Zhu Li Dept of CSEE, UMKC Office: FH560E, lizhu@umkc.edu, Ph: x slides created with WPS Office Linux and EqualX LaTex equation editor Z. Li, Multimedia Communciation, 2018 p.1

2 Outline ReCap Lecture 18 TCP Congestion Control RMCAT Congestion control work NS-3 Tutorial FEC Digital Fountain Code Summary Z. Li, Multimedia Communciation, 2018 p.2

3 TCP Congestion Control AIMD- Additive Increase Multiplicative Decrease, congestion window based control. When receiving ACK, increase cwnd by one, when packet loss, halve the cwnd Slow Start (TCP Tahoe): Introducing a threshold control When below thres, double cwnd per ACK If above thres, additive increase If loss, halve thres, cwnd=1 Z. Li, Multimedia Communciation, 2018 p.3

4 TCP Congestion Fast retransmit: After receiving 3 duplicate ACK Resend first packet in window. o Try to avoid waiting for timeout Fast recovery: After retransmission do not enter slowstart. Threshold = cwnd/2 Congwin = 3 + Congwin/2 Each duplicate ACK received Congwin++ After new ACK o Congwin = Threshold o return to congestion avoidance Packet 1 Packet 2 Packet 3 Packet 4 Packet 5 Packet 6 Sender Retransmit packet 3 Receiver ACK 1 ACK 2 ACK 2 ACK 2 ACK 2 ACK 6 Z. Li, Multimedia Communciation, 2018 p.4

5 TCP Throughput TCP Rate at steady state Segment size: MSS Round Trip Delay: RTT Prob of packet loss: p Observation Reducing RTT is the key! Indeed, AKAMAI, Netflix,,etc, use RTT as the KPI for deploying and provisioning CDN edge servers. Prob of loss is due to congestion, mostly. For wireless networks, loss due to PHY layer has wrong interpretation in TCP control! Z. Li, Multimedia Communciation, 2018 p.5

6 WebRTC Motivation: native browser support for real time communication for a variety of applications Non TCP based connectivity, over RTP instead. Javascript API for HTML (W3C) Signalling & NAT traversal, Security (IETF RTCWEB) Congestion control (IETF RMCAT) Z. Li, Multimedia Communciation, 2018 p.6

7 GCC Google Congestion Control (GCC) implemented in Chrome and Firefox to support WebRTC Utilizes RTP and RTCP for media data transport and control Has sender side control, which is loss based, probe the available BW as sending rate A s. Receiver side control is delay based, computes REMB, Receiver Estimated Maximum Bitrate, A r to limit the sending rate A s Z. Li, Multimedia Communciation, 2018 p.7

8 Receiver Side State Machine Receiver side update A r (t i ) according to the congestion state estimation Packet Arrival Stats based link usage state estimation, Packet delay variation: Where, {t i } {T i } are time stamps of ith video packet sending and recving time. C is the link capacity, L is the video packet size. Queuing delay variation: m(t i ) = t i t i-1 (T i -T i-1 ) Network jitter noise, n(t i ), Z. Li, Multimedia Communciation, 2018 p.8

9 Link Overuse Detection Observe arrival filter signal m(t): Z. Li, Multimedia Communciation, 2018 p.9

10 GCC Link Capacity Utilization Single Flow Fairly good utilization, throughput follows the link capacity change Z. Li, Multimedia Communciation, 2018 p.10

11 Outline ReCap Lecture 18 TCP Congestion Control RMCAT Congestion control work NS-3 Tutorial FEC Digital Fountain Code Summary Z. Li, Multimedia Communciation, 2018 p.11

12 Loss Recovery: ARQ vs FEC When a packet did not reach the destination the receiver sends back a requests for retransmission Alternatively, the receiver can send back acknowledgement messages for each successfully received packet. The sender keeps track of the missing packets and retransmits them until all have been acknowledged This does NOT scale in multicasting situation Z. Li, Multimedia Communciation, 2018 p.12

13 Multicasting Over Erasure Channel Examples File Downloading P2P sharing Broadcasting Z. Li, Multimedia Communciation, 2018 p.13

14 Use Cases Reliable multicast Parallel downloads Long-distance transmission (avoiding TCP) One-to-many TCP Content distribution on overlay networks Streaming video ARQ is too late. Z. Li, Multimedia Communciation, 2018 p.14

15 The Binary Erasure Channel a a a 1-a 0 e 1 e erasure a erasure probability Erasure channel Capacity: C= 1-a Intuitive interpretation: since a proportion a of the bits are lost in the channel, we can recover (at most) a proportion (1-a) of the bits. Z. Li, Multimedia Communciation, 2018 p.15

16 Challenges The erasure probabilities are unknown. Want to come arbitrarily close to capacity on each of the erasure channels, with minimum amount of feedback. Traditional codes don t work in this setting since their rate is fixed. Need codes that can adapt automatically to the erasure rate of the channel. Z. Li, Multimedia Communciation, 2018 p.16

17 Broadcast channel with erasures On a broadcast channel with erasures, the repetition schemes are very inefficient, and can lead to network congestion An appropriate Forward Error Correction (FEC) Code should achieve the theoretic channel capacity without feedback channel With classical codes the design of the fixed rate R=K/N, should be performed to worst case conditions This restriction makes this coding inefficient also Z. Li, Multimedia Communciation, 2018 p.17

18 Reed-Solomon Code An (N,K) Reed-Solomon code correctly decode the K symbols of the message from K codeword symbols However, Reed-Solomon codes are only useful for small values of N and K The coding / decoding cost is of order K( N - K)log2 N Z. Li, Multimedia Communciation, 2018 p.18

19 Digital Fountain Codes If the error probability of a BEC varies, the ideal code should allow on the fly variable encoding rate R=K/N With Reed-Solomon codes it is not possible to change R on the fly Digital Fountain Codes Original content Encoded packets Users reconstruct Original content as soon as they receive enough packets Encoding Engine Transmission Z. Li, Multimedia Communciation, 2018 p.19

20 Digital Fountain Code Fountain Code Properties Sender sends a potentially limitless stream of encoded bits. Receivers collect bits until they are reasonably sure that they can recover the content from the received bits, and send STOP feedback to sender. Automatic adaptation: Receivers with larger loss rate need longer to receive the required information. Want that each receiver is able to recover from the minimum possible amount of received data, and do this efficiently. Z. Li, Multimedia Communciation, 2018 p.20

21 Credit: Amin Shokrollahi, EPFL Content Enc Digital 21 buckets

22 Fountain Codes Distribution on 22

23 Universality and Efficiency [Universality] Want sequences of Fountain Codes for which the overhead is arbitrarily small [Efficiency] Want per-symbol-encoding to run in close to constant time, and decoding to run in time linear in number of output symbols. 23

24 LT-Codes Invented by Michael Luby in First class of universal and almost efficient Fountain Codes Output distribution has a very simple form Encoding and decoding are very simple 24

25 LT-Codes 25

26 The Fountain Coding Process Input symbols Choose 2 Random original symbols XOR 2 Choose weight Insert header, and send Weight Weight table Prob

27 Decoding 27

28 Decoding 28

29 Decoding 29

30 Decoding 30

31 Decoding 31

32 Decoding 32

33 Decoding 33

34 Decoding 34

35 Decoding 35

36 The Degree Distribution Each codeword is a linear combination of d symbols from the message m The degree d is chosen at random from a degree distribution (d) There are two design conflicts: The degree of some codewords should be high to guarantee that all the message symbols are covered The degree of some codewords should be low in order to start the decoding process and keep going Z. Li, Multimedia Communciation, 2018 p.36

37 Soliton distribution Can we design a degree distribution that guarantees the optimal Shannon limit of decoding the K symbols of the message after K received codewords? We want a distribution that on average guarantees that just one message symbol is uncovered at each iteration, i.e, only one symbol is having degree one connection to the fountain bits Such a distribution is the Soliton Z. Li, Multimedia Communciation, 2018 p.37

38 Soliton distribution Step 0 The expected number of codeword symbols of degree one at step zero should be 1, otherwise no way to start decoding Step 1 One of the message symbols is decoded and it lower the degree of some of the codeword symbols. At the end of step 1, at most one degree 2 codeword should be connected to the decoded message symbol in order to decrease its degree to one and the process continues... Step k Continue the process checking at each step that one of the codeword symbols has degree one Z. Li, Multimedia Communciation, 2018 p.38

39 Ideal Soliton Distribution The mean degree of this distribution is þ ý ü î í ì - = = - = = 1) ( 1,, 12 1, 6 1, 2 1, 1, 2,3, for 1) ( 1 1/ 1 K K K K d d d K d d K d d e K d K d d log å å = =» - = = Z. Li, Multimedia Communciation, 2018 p.39

40 Soliton distribution c 0 c 1 c 2 c K codewords m 0 m 1 m 2 m K Message symbols With the Soliton distribution the expected number of edges from each message symbol will be log e K Z. Li, Multimedia Communciation, 2018 p.40

41 Soliton distribution c 0 c 1 c 2 c K codewords m 0 m 1 m 2 m K Message symbols The decoding of m 0 from c 0 causes the degree of the connected codewords to decrease by 1 Z. Li, Multimedia Communciation, 2018 p.41

42 Robust Soliton Distribution Z. Li, Multimedia Communciation, 2018 p.42

43 Performance with Robust Soliton Degree Distribution S c loge ( K / d ) K = K K Z. Li, Multimedia Communciation, 2018 p.43

44 Ideal Soliton Distribution Performance Percent of decoded x Soliton with K= 1000 and N= 1500 Experimental (1-d) Test number Z. Li, Multimedia Communciation, 2018 p.44

45 Robust Soliton Distribution Online with K= 1000 and N= 1500 = 0.5 d= Experimental (1-d) 0.99 Percent of decoded x Test number Z. Li, Multimedia Communciation, 2018 p.45

46 Raptor Code A development of LT code by introducing a pre-coding group to have desirable # of redundant symbols for efficient LT code implementation Proper ratio of source symbols vs desired number of fountain symbols can leads to better performance. Ref: A. Shokrollahi, Raptor Codes, IEEE Trans on Info Theory, vol. 52(6), June Z. Li, Multimedia Communciation, 2018 p.46

47 Application of Digital Fountain Code Broadcast MBMS in LTE networks Uses Raptor Code (RFC5053): Use a LDPC precode before LT coding Linear complexity guarantee Adopted for the MBMS and embms systems we use, e.g, pushing the APP updates to users by carriers DVB-H Broadcast system RS and Raptor codes. Ref: 0/tr_102993v010101p.pdf Open Source Raptor Project: Opensource RaptorQ (RFC6330) Z. Li, Multimedia Communciation, 2018 p.47

48 FEC Summary One very useful technique for error and loss recovery APP layer forward erasure correction (AL-FEC): Early days: Reed-Solomon code Fountain Codes: LT code, Raptor, and Raptor Q Key features of Fountain Codes Rateless FEC: you don t need to fix the coding ratio Suitable for multicasting Suitable for when ARQ is not feasible/economical Z. Li, Multimedia Communciation, 2018 p.48

Lec 18 - Multimedia Transport: Congestion Control

Lec 18 - Multimedia Transport: Congestion Control ECE 5578 Multimedia Communication Lec 18 - Multimedia Transport: Congestion Control Zhu Li Dept of CSEE, UMKC Office: FH560E, Email: lizhu@umkc.edu, Ph: x 2346. http://l.web.umkc.edu/lizhu slides created

More information

Lec 21 Multimedia Communication Summary Part II Multimedia Transport

Lec 21 Multimedia Communication Summary Part II Multimedia Transport CS/EE 5590 / ENG 401 Special Topics (17804, 17815, 17803) Lec 21 Multimedia Communication Summary Part II Multimedia Transport Zhu Li Course Web: http://l.web.umkc.edu/lizhu/teaching/2016sp.video-communication/main.html

More information

Lec 21 Multimedia Communication Summary Part II Multimedia Transport

Lec 21 Multimedia Communication Summary Part II Multimedia Transport Multimedia Communication Lec 21 Multimedia Communication Summary Part II Multimedia Transport Zhu Li Course Web: http://l.web.umkc.edu/lizhu/ Z. Li, Multimedia Communciation, Spring 2017 p.1 Outline Multimedia

More information

CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca

CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti, Ion Stoica Last Time Flow Control Congestion Control

More information

Coding theory for scalable media delivery

Coding theory for scalable media delivery 1 Coding theory for scalable media delivery Michael Luby RaptorQ is a product of Qualcomm Technologies, Inc. Application layer erasure coding complements traditional error coding Forward Error Correction

More information

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Transmission Control Protocol. ITS 413 Internet Technologies and Applications Transmission Control Protocol ITS 413 Internet Technologies and Applications Contents Overview of TCP (Review) TCP and Congestion Control The Causes of Congestion Approaches to Congestion Control TCP Congestion

More information

Raptor Codes for P2P Streaming

Raptor Codes for P2P Streaming Raptor Codes for P2P Streaming Philipp Eittenberger 1, Todor Mladenov 2, Udo Krieger 1 1 Faculty of Information Systems and Applied Computer Science Otto-Friedrich University Bamberg, Germany 2 Department

More information

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen Networked Systems and Services, Fall 2018 Chapter 2 Jussi Kangasharju Markku Kojo Lea Kutvonen Outline Physical layer reliability Low level reliability Parities and checksums Cyclic Redundancy Check (CRC)

More information

Quality of Service (QoS) Whitepaper

Quality of Service (QoS) Whitepaper Quality of Service (QoS) Whitepaper PCS-Series Videoconferencing White Paper www.sonybiz.net/vc Introduction Currently, an estimated 5% of data packets sent over the Internet are lost. In a videoconferencing

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2014 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP Transport layer Review principles: Reliable data transfer Flow control Congestion control Instantiation in the Internet UDP TCP 1 UDP: User Datagram Protocol [RFC 768] No frills, bare bones Internet transport

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2014 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control Transport layer Review principles: Reliable data transfer Flow control Congestion control Instantiation in the Internet UDP TCP 1 UDP: User Datagram Protocol [RFC 768] No frills, bare bones Internet transport

More information

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness Recap TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness 81 Feedback Signals Several possible signals, with different

More information

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture) Lecture 7: Sliding Windows CSE 123: Computer Networks Geoff Voelker (guest lecture) Please turn in HW #1 Thank you From last class: Sequence Numbers Sender Receiver Sender Receiver Timeout Timeout Timeout

More information

ECE 435 Network Engineering Lecture 10

ECE 435 Network Engineering Lecture 10 ECE 435 Network Engineering Lecture 10 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 28 September 2017 Announcements HW#4 was due HW#5 will be posted. midterm/fall break You

More information

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall CSE 123b CSE 123b Communications Software Spring 2002 Lecture 3: Reliable Communications Stefan Savage Some slides couresty David Wetherall Administrativa Home page is up and working http://www-cse.ucsd.edu/classes/sp02/cse123b/

More information

cs/ee 143 Communication Networks

cs/ee 143 Communication Networks cs/ee 143 Communication Networks Chapter 4 Transport Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Recap: Internet overview Some basic mechanisms n Packet switching n Addressing n Routing o

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2015 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University Congestion Control Daniel Zappala CS 460 Computer Networking Brigham Young University 2/25 Congestion Control how do you send as fast as possible, without overwhelming the network? challenges the fastest

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Stefano Vissicchio UCL Computer Science COMP0023 Recap: Last Lecture Transport Concepts Layering context Transport goals Transport mechanisms and design

More information

CSC310 Information Theory. Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes. November 22, 2006 see

CSC310 Information Theory. Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes. November 22, 2006 see CSC310 Information Theory Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes Sam Roweis Recovering From Erasures 2 How can we recover from erasures? For the BEC, we saw that low-density parity

More information

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Transport Layer Services Design Issue Underlying

More information

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology Transport Over IP CSCI 690 Michael Hutt New York Institute of Technology Transport Over IP What is a transport protocol? Choosing to use a transport protocol Ports and Addresses Datagrams UDP What is a

More information

CSC310 Information Theory. Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes. November 30, 2005 see

CSC310 Information Theory. Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes. November 30, 2005 see CSC310 Information Theory Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes Sam Roweis Recovering From Erasures 2 How can we recover from erasures? For the BEC, we saw that low-density parity

More information

Transport Protocols and TCP

Transport Protocols and TCP Transport Protocols and TCP Functions Connection establishment and termination Breaking message into packets Error recovery ARQ Flow control Multiplexing, de-multiplexing Transport service is end to end

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2015 1 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control : Computer Networks Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control TCP performance We ve seen how TCP the protocol works Sequencing, receive window, connection setup and teardown And

More information

Link Layer. (continued)

Link Layer. (continued) Link Layer (continued) Where we are in the Course Moving on up to the Link Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Topics 1. Framing Delimiting start/end of

More information

CSCI-1680 Link Layer Reliability Rodrigo Fonseca

CSCI-1680 Link Layer Reliability Rodrigo Fonseca CSCI-1680 Link Layer Reliability Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Last time Physical layer: encoding, modulation Link layer framing Today Getting

More information

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address

More information

Transport Layer (Congestion Control)

Transport Layer (Congestion Control) Transport Layer (Congestion Control) Where we are in the Course Moving on up to the Transport Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Congestion Collapse Congestion

More information

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

Lecture 3: The Transport Layer: UDP and TCP

Lecture 3: The Transport Layer: UDP and TCP Lecture 3: The Transport Layer: UDP and TCP Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4395 3-1 The Transport Layer Provides efficient and robust end-to-end

More information

CS132/EECS148 - Instructor: Karim El Defrawy Midterm Spring 2013 Time: 1hour May 2nd, 2013

CS132/EECS148 - Instructor: Karim El Defrawy Midterm Spring 2013 Time: 1hour May 2nd, 2013 CS132/EECS148 - Instructor: Karim El Defrawy Midterm Spring 2013 : 1hour May 2nd, 2013 Total Points: 25 Attempt all problems. Problem #1: (5 points, ½ point each) Choose only one answer. You will not receive

More information

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Do you remember the various mechanisms we have

More information

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW!

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW! CSE 123: Computer Networks Alex C. Snoeren HW 1 due NOW! Automatic Repeat Request (ARQ) Acknowledgements (ACKs) and timeouts Stop-and-Wait Sliding Window Forward Error Correction 2 Link layer is lossy

More information

Medienübertragung im Internet

Medienübertragung im Internet Ein Lied geht um die Welt - Medienübertragung im Internet Lehrstuhl Nachrichtentechnik Intel Visual Computing Institute Prof. Dr.-Ing. Thorsten Herfet herfet@cs.uni-saarland.de A few facts, June 2010 1

More information

Congestion Collapse in the 1980s

Congestion Collapse in the 1980s Congestion Collapse Congestion Collapse in the 1980s Early TCP used fixed size window (e.g., 8 packets) Initially fine for reliability But something happened as the ARPANET grew Links stayed busy but transfer

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

TCP so far Computer Networking Outline. How Was TCP Able to Evolve TCP so far 15-441 15-441 Computer Networking 15-641 Lecture 14: TCP Performance & Future Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 Reliable byte stream protocol Connection establishments

More information

Dynamic Alpha Congestion Controller for WebRTC

Dynamic Alpha Congestion Controller for WebRTC School of Electrical Engineering and Computer Science Dynamic Alpha Congestion Controller for WebRTC By Rasha Jamal M. Atwah Submitted to the Faculty of Graduate and Postdoctoral Studies in partial fulfillment

More information

The Transport Layer Congestion control in TCP

The Transport Layer Congestion control in TCP CPSC 360 Network Programming The Transport Layer Congestion control in TCP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc360

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross Principles of congestion control

More information

TCP Congestion Control

TCP Congestion Control TCP Congestion Control What is Congestion The number of packets transmitted on the network is greater than the capacity of the network Causes router buffers (finite size) to fill up packets start getting

More information

TCP Congestion Control

TCP Congestion Control What is Congestion TCP Congestion Control The number of packets transmitted on the network is greater than the capacity of the network Causes router buffers (finite size) to fill up packets start getting

More information

TCP congestion control:

TCP congestion control: TCP congestion control: Probing for usable bandwidth: Ideally: transmit as fast as possible (cwnd as large as possible) without loss Increase cwnd until loss (congestion) Loss: decrease cwnd, then begin

More information

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD Overview 15-441 Computer Networking Lecture 9 More TCP & Congestion Control TCP congestion control TCP modern loss recovery TCP modeling Lecture 9: 09-25-2002 2 TCP Congestion Control Changes to TCP motivated

More information

Lecture 4: Congestion Control

Lecture 4: Congestion Control Lecture 4: Congestion Control Overview Internet is a network of networks Narrow waist of IP: unreliable, best-effort datagram delivery Packet forwarding: input port to output port Routing protocols: computing

More information

Efficient Content Delivery and Low Complexity Codes. Amin Shokrollahi

Efficient Content Delivery and Low Complexity Codes. Amin Shokrollahi Efficient Content Delivery and Low Complexity Codes Amin Shokrollahi Content Goals and Problems TCP/IP, Unicast, and Multicast Solutions based on codes Applications Goal Want to transport data from a transmitter

More information

ELEC 691X/498X Broadcast Signal Transmission Winter 2018

ELEC 691X/498X Broadcast Signal Transmission Winter 2018 ELEC 691X/498X Broadcast Signal Transmission Winter 2018 Instructor: DR. Reza Soleymani, Office: EV 5.125, Telephone: 848 2424 ext.: 4103. Office Hours: Wednesday, Thursday, 14:00 15:00 Slide 1 In this

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 24: Congestion Control Prof. Alan Mislove (amislove@ccs.neu.edu) Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica,

More information

Problem 7. Problem 8. Problem 9

Problem 7. Problem 8. Problem 9 Problem 7 To best answer this question, consider why we needed sequence numbers in the first place. We saw that the sender needs sequence numbers so that the receiver can tell if a data packet is a duplicate

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.11 Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and

More information

FECFRAME extension Adding convolutional FEC codes support to the FEC Framework

FECFRAME extension Adding convolutional FEC codes support to the FEC Framework FECFRAME extension Adding convolutional FEC codes support to the FEC Framework Vincent Roca, Inria, France Ali Begen, Networked Media, Turkey https://datatracker.ietf.org/doc/draft-roca-tsvwg-fecframev2/

More information

ECE 333: Introduction to Communication Networks Fall 2001

ECE 333: Introduction to Communication Networks Fall 2001 ECE 333: Introduction to Communication Networks Fall 2001 Lecture 28: Transport Layer III Congestion control (TCP) 1 In the last lecture we introduced the topics of flow control and congestion control.

More information

Internet Networking recitation #10 TCP New Reno Vs. Reno

Internet Networking recitation #10 TCP New Reno Vs. Reno recitation #0 TCP New Reno Vs. Reno Spring Semester 200, Dept. of Computer Science, Technion 2 Introduction Packet Loss Management TCP Reno (RFC 258) can manage a loss of at most one packet from a single

More information

CS321: Computer Networks Congestion Control in TCP

CS321: Computer Networks Congestion Control in TCP CS321: Computer Networks Congestion Control in TCP Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in Causes and Cost of Congestion Scenario-1: Two Senders, a

More information

Lecture 7: Flow & Media Access Control"

Lecture 7: Flow & Media Access Control Lecture 7: Flow & Media Access Control" CSE 123: Computer Networks Alex C. Snoeren HW 2 due next Wednesday! Lecture 7 Overview" Flow control Go-back-N Sliding window Methods to share physical media: multiple

More information

Good Ideas So Far Computer Networking. Outline. Sequence Numbers (reminder) TCP flow control. Congestion sources and collapse

Good Ideas So Far Computer Networking. Outline. Sequence Numbers (reminder) TCP flow control. Congestion sources and collapse Good Ideas So Far 15-441 Computer Networking Lecture 17 TCP & Congestion Control Flow control Stop & wait Parallel stop & wait Sliding window Loss recovery Timeouts Acknowledgement-driven recovery (selective

More information

Lecture 15: Transport Layer Congestion Control

Lecture 15: Transport Layer Congestion Control Lecture 15: Transport Layer Congestion Control COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data? Congestion Control End Hosts CSE 51 Lecture 7, Spring. David Wetherall Today s question How fast should the sender transmit data? Not tooslow Not toofast Just right Should not be faster than the receiver

More information

CSCI-1680 Link Layer I Rodrigo Fonseca

CSCI-1680 Link Layer I Rodrigo Fonseca CSCI-1680 Link Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Last time Physical layer: encoding, modulation Today Link layer framing Getting frames

More information

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

Lecture 21: Congestion Control CSE 123: Computer Networks Alex C. Snoeren Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren Lecture 21 Overview" How fast should a sending host transmit data? Not to fast, not to slow, just right Should not be faster than

More information

Answers to Sample Questions on Transport Layer

Answers to Sample Questions on Transport Layer Answers to Sample Questions on Transport Layer 1) Which protocol Go-Back-N or Selective-Repeat - makes more efficient use of network bandwidth? Why? Answer: Selective repeat makes more efficient use of

More information

Announcements Computer Networking. What was hard. Midterm. Lecture 16 Transport Protocols. Avg: 62 Med: 67 STD: 13.

Announcements Computer Networking. What was hard. Midterm. Lecture 16 Transport Protocols. Avg: 62 Med: 67 STD: 13. Announcements 15-441 Computer Networking Lecture 16 Transport Protocols Mid-semester grades Based on (ckpt 1 & ckpt2) + midterm + HW1 + HW2 NOTE: GRADES DO NOT REFLECT LATE PENALTIES! 25.4% of class If

More information

Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC

Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC Multimedia Communication Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC Zhu Li Course Web: http://l.web.umkc.edu/lizhu/teaching/2016sp.video-communication/main.html Z. Li, Multimedia Communciation,

More information

Summary of Raptor Codes

Summary of Raptor Codes Summary of Raptor Codes Tracey Ho October 29, 2003 1 Introduction This summary gives an overview of Raptor Codes, the latest class of codes proposed for reliable multicast in the Digital Fountain model.

More information

FMTCP: A Fountain Code-based Multipath Transmission Control Protocol

FMTCP: A Fountain Code-based Multipath Transmission Control Protocol 1 FMTCP: A Fountain Code-based Multipath Transmission Control Protocol Yong Cui, Member, IEEE, Lian Wang, Xin Wang, Member, IEEE, Hongyi Wang and Yining Wang Abstract Ideally, the throughput of a Multipath

More information

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The

More information

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance : Computer Networks Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance TCP performance We ve seen how TCP the protocol works But there are a lot of tricks required to make it work well Indeed,

More information

Link Layer: Error detection and correction

Link Layer: Error detection and correction Link Layer: Error detection and correction Topic Some bits will be received in error due to noise. What can we do? Detect errors with codes Correct errors with codes Retransmit lost frames Later Reliability

More information

CS4700/CS5700 Fundamentals of Computer Networks

CS4700/CS5700 Fundamentals of Computer Networks CS4700/CS5700 Fundamentals of Computer Networks Lecture 15: Congestion Control Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu

More information

TCP Congestion Control in Wired and Wireless Networks

TCP Congestion Control in Wired and Wireless Networks TCP Congestion Control in Wired and Wireless Networks ENCS 835 Course Project Spring 2008 April 7, 2008 Presented by: Mohamadreza Najiminaini Professor: Ljiljana Trajkovic 4/16/2008 1 Roadmap Introduction

More information

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP

More information

Lecture 14: Congestion Control"

Lecture 14: Congestion Control Lecture 14: Congestion Control" CSE 222A: Computer Communication Networks George Porter Thanks: Amin Vahdat, Dina Katabi and Alex C. Snoeren Lecture 14 Overview" TCP congestion control review Dukkipati

More information

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission 1 Lecture 4: CRC & Reliable Transmission CSE 123: Computer Networks Chris Kanich Quiz 1: Tuesday July 5th Lecture 4: CRC & Reliable Transmission Lecture 4 Overview CRC toward a better EDC Reliable Transmission

More information

The aim of this unit is to review the main concepts related to TCP and UDP transport protocols, as well as application protocols. These concepts are

The aim of this unit is to review the main concepts related to TCP and UDP transport protocols, as well as application protocols. These concepts are The aim of this unit is to review the main concepts related to TCP and UDP transport protocols, as well as application protocols. These concepts are important requirements for developing programs that

More information

Chapter 24. Transport-Layer Protocols

Chapter 24. Transport-Layer Protocols Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable

More information

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3 TCP over Wireless PROF. MICHAEL TSAI 2016/6/3 2 TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum number of bytes that can be sent without receiving

More information

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print, ANNEX B - Communications Protocol Overheads The OSI Model is a conceptual model that standardizes the functions of a telecommunication or computing system without regard of their underlying internal structure

More information

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala October 30, 2018 Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet

More information

Packet-Level Forward Error Correction in Video Transmission

Packet-Level Forward Error Correction in Video Transmission Packet-Level Forward Error Correction in Video Transmission Matteo Mazzotti, Enrico Paolini, Marco Chiani, Davide Dardari, and Andrea Giorgetti University of Bologna Wireless Communications Laboratory

More information

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl Ad hoc and Sensor Networks Chapter 6: Link layer protocols Holger Karl Goals of this chapter Link layer tasks in general Framing group bit sequence into packets/frames Important: format, size Error control

More information

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

ECE 610: Homework 4 Problems are taken from Kurose and Ross. ECE 610: Homework 4 Problems are taken from Kurose and Ross. Problem 1: Host A and B are communicating over a TCP connection, and Host B has already received from A all bytes up through byte 248. Suppose

More information

TCP Congestion Control. Lecture 16. Outline. TCP Congestion Control. Additive Increase / Multiplicative Decrease (AIMD)

TCP Congestion Control. Lecture 16. Outline. TCP Congestion Control. Additive Increase / Multiplicative Decrease (AIMD) Lecture 16 TCP Congestion Control Homework 6 Due Today TCP uses ACK arrival as a signal to transmit a new packet. Since connections come-and-go TCP congestion control must be adaptive. TCP congestion control

More information

CMPE 257: Wireless and Mobile Networking

CMPE 257: Wireless and Mobile Networking CMPE 257: Wireless and Mobile Networking Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 10 CMPE 257 Spring'15 1 Student Presentations Schedule May 21: Sam and Anuj May 26: Larissa

More information

Computer Communication Networks Midterm Review

Computer Communication Networks Midterm Review Computer Communication Networks Midterm Review ICEN/ICSI 416 Fall 2018 Prof. Aveek Dutta 1 Instructions The exam is closed book, notes, computers, phones. You can use calculator, but not one from your

More information

Midterm Review. EECS 489 Computer Networks Z. Morley Mao Monday Feb 19, 2007

Midterm Review. EECS 489 Computer Networks  Z. Morley Mao Monday Feb 19, 2007 Midterm Review EECS 489 Computer Networks http://www.eecs.umich.edu/courses/eecs489/w07 Z. Morley Mao Monday Feb 19, 2007 Acknowledgement: Some slides taken from Kurose&Ross and Katz&Stoica 1 Adminstrivia

More information

CSCI-1680 Link Layer Reliability John Jannotti

CSCI-1680 Link Layer Reliability John Jannotti CSCI-1680 Link Layer Reliability John Jannotti Based partly on lecture notes by David Mazières, Phil Levis, Rodrigo Fonseca Roadmap Last time Physical layer: encoding, modulation Link layer framing Today

More information

draft-johansson-rmcat-scream-cc

draft-johansson-rmcat-scream-cc SCReAM Self-Clocked Rate Adaptation for Multimedia draft-johansson-rmcat-scream-cc Ingemar Johansson Zaheduzzaman Sarker Ericsson Research Main features Self-clocked framework similar to TCP Functional

More information

Fall 2012: FCM 708 Bridge Foundation I

Fall 2012: FCM 708 Bridge Foundation I Fall 2012: FCM 708 Bridge Foundation I Prof. Shamik Sengupta Instructor s Website: http://jjcweb.jjay.cuny.edu/ssengupta/ Blackboard Website: https://bbhosted.cuny.edu/ Intro to Computer Networking Transport

More information

COMP/ELEC 429/556 Introduction to Computer Networks

COMP/ELEC 429/556 Introduction to Computer Networks COMP/ELEC 429/556 Introduction to Computer Networks The TCP Protocol Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene Ng eugeneng at cs.rice.edu

More information

TCP based Receiver Assistant Congestion Control

TCP based Receiver Assistant Congestion Control International Conference on Multidisciplinary Research & Practice P a g e 219 TCP based Receiver Assistant Congestion Control Hardik K. Molia Master of Computer Engineering, Department of Computer Engineering

More information

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades Announcements 15-441 Computer Networking Lecture 16 Transport Protocols Mid-semester grades Based on project1 + midterm + HW1 + HW2 42.5% of class If you got a D+,D, D- or F! must meet with Dave or me

More information

Exercises TCP/IP Networking With Solutions

Exercises TCP/IP Networking With Solutions Exercises TCP/IP Networking With Solutions Jean-Yves Le Boudec Fall 2009 3 Module 3: Congestion Control Exercise 3.2 1. Assume that a TCP sender, called S, does not implement fast retransmit, but does

More information

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16 Guide To TCP/IP, Second Edition Chapter 5 Transport Layer TCP/IP Protocols Objectives Understand the key features and functions of the User Datagram Protocol (UDP) Explain the mechanisms that drive segmentation,

More information

TCP Congestion Control

TCP Congestion Control TCP Congestion Control Lecture material taken from Computer Networks A Systems Approach, Third Ed.,Peterson and Davie, Morgan Kaufmann, 2003. Computer Networks: TCP Congestion Control 1 TCP Congestion

More information

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Transport Layer PREPARED BY AHMED ABDEL-RAOUF Transport Layer PREPARED BY AHMED ABDEL-RAOUF TCP Flow Control TCP Flow Control 32 bits source port # dest port # head len sequence number acknowledgement number not used U A P R S F checksum Receive window

More information

Lecture 4 September 17

Lecture 4 September 17 CS 559: Algorithmic Aspects of Computer Networks Fall 2007 Lecture 4 September 17 Lecturer: John Byers BOSTON UNIVERSITY Scribe: Sowmya Manjanatha In today s lecture, we discussed and characterized the

More information