1 EE689 Lecture 4 Review of Last Lecture UDP-based delivery TCP-modifications.

Slides:



Advertisements
Similar presentations
TCP Sliding Windows, Flow Control, and Congestion Control Lecture material taken from Computer Networks A Systems Approach, Fourth Ed.,Peterson and Davie,
Advertisements

Congestion Control Reasons: - too many packets in the network and not enough buffer space S = rate at which packets are generated R = rate at which receivers.
Principles of Congestion Control Chapter 3.6 Computer Networking: A top-down approach.
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
1 EE 627 Lecture 11 Review of Last Lecture UDP & Multimedia TCP & UDP Interaction.
Transport Layer 3-1 outline r TCP m segment structure m reliable data transfer m flow control m congestion control.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
Congestion Control Tanenbaum 5.3, /12/2015Congestion Control (A Loss Based Technique: TCP)2 What? Why? Congestion occurs when –there is no reservation.
Transport Layer 3-1 Outline r TCP m Congestion control m Flow control.
EE689 Lecture 7 Review of Last Lecture Differentiated Services Networks Performance results.
CSEE W4140 Networking Laboratory Lecture 7: TCP flow control and congestion control Jong Yul Kim
EE689 Lecture 5 Review of last lecture More on HPF RED.
1 EE 689 Lecture 3 Review of Last Lecture UDP & Multimedia TCP & UDP Interaction.
1 689 Lecture 2 Review of Last Lecture Networking basics TCP/UDP review.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
CSEE W4140 Networking Laboratory Lecture 7: TCP congestion control Jong Yul Kim
Advanced Computer Networks : TCP Sliding Windows1 TCP Sliding Windows, Flow Control, and Congestion Control Lecture material taken from “Computer Networks.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
L13: Sharing in network systems Dina Katabi Spring Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans.
Networking. Protocol Stack Generally speaking, sending an message is equivalent to copying a file from sender to receiver.
Error Checking continued. Network Layers in Action Each layer in the OSI Model will add header information that pertains to that specific protocol. On.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
A Simulation of Adaptive Packet Size in TCP Congestion Control Zohreh Jabbari.
Wireless TCP Prasun Dewan Department of Computer Science University of North Carolina
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Link Scheduling & Queuing COS 461: Computer Networks
CSE679: Prioritized Delivery in UDP and TCP r Prioritized Delivery in UDP r Prioritized Delivery in TCP.
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
Mr. Mark Welton.  Quality of Service is deployed to prevent data from saturating a link to the point that other data cannot gain access to it  QoS allows.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
EE689 Lecture 13 Review of Last Lecture Reliable Multicast.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Data Link Layer Flow and Error Control. Flow Control Flow Control Flow Control Specifies the amount of data can be transmitted by sender before receiving.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Principles of reliable data transfer 0.
Peer-to-Peer Networks 13 Internet – The Underlay Network
CIS679: TCP and Multimedia r Review of last lecture r TCP and Multimedia.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Computer Networking Lecture 16 – Reliable Transport.
1 COMP 431 Internet Services & Protocols The Transport Layer Pipelined Transport Protocols Jasleen Kaur March 29, 2016.
CIS679: UDP and Multimedia r Review of last lecture r UDP and multimedia.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Topics discussed in this section:
Chapter 3 outline 3.1 transport-layer services
Introduction of Transport Protocols
CSE679: Multimedia and Networking
CIS679: Prioritized Delivery in UDP and TCP
Queuing and Queue Management
COMPUTER NETWORKS CS610 Lecture-36 Hammad Khalid Khan.
TCP Sliding Windows, Flow Control, and Congestion Control
CS640: Introduction to Computer Networks
Advanced Computer Networks
CS4470 Computer Networking Protocols
Congestion Control Reasons:
TCP Congestion Control
Transport Layer: Congestion Control
TCP Sliding Windows, Flow Control, and Congestion Control
TCP Sliding Windows, Flow Control, and Congestion Control
Presentation transcript:

1 EE689 Lecture 4 Review of Last Lecture UDP-based delivery TCP-modifications

2 End-to-End Congestion UDP-based applications should do end-to- end congestion control Otherwise -- BW divided unfairly -- Loss of Goodput TCP-friendly -- enforce TCP-like control Hard to enforce TCP-friendly mechanism Multiple connections/IP-spoofing get around those mechanisms.

3 UDP-based delivery “Nice” Applications will follow end-to-end congestion All of the flow control/congestion control reliability to be built into application. ALF - Application Level Framing - design principle - advocates application level of transport mechanisms.

4 UDP-based delivery Packet-pair: One mechanism for BW estimation Send two packets back-to-back, measure the delay between acks ACK Compression - Receiving timestamps Round robin scheduling /FIFO Minimum ack spacing indicates link BW

5 Cyclic UDP Developed at UC Berkeley Notion of rounds -- data sent in a fixed size time units Retransmit data within the round Move on to next round if data not received within round Apply flow control within the round.

6 Cyclic UDP Prioritize packets within round Order higher priority packets in front CUDP improves chances of delivery of higher priority packets -- retransmissions have higher priority NACK - indicate not received packets so far on each packet reception

7 Random vs. Prioritized Loss

8 Cyclic UDP Rounds allow timely delivery Rounds allow prioritization of current packets Application prioritizes within the round Uses delay and packet losses for determining available BW

9 Estimating BW Loss rate = 1 - bytes recvd/ bytes sent Expected loss rate = X Expected delay = D1 If (L > X) EstBW = (1-L)*LtBW/(1+X) else if (meanDelay > D1) EstBW = (1+X)*LtBW*D1/meanDelay else EstBW = (1+X)*LtBW

10

11 Cyclic UDP Adapts to Congestion Assumes all available BW can be used Not clear what happens to competing TCP applications Results indicate multiple CUDP flows share available BW Loss rate -- scalability ??

12 Stored Media/Live Media Stored Media allows buffering of data, can tolerate startup delays More buffering -- more chances of overcoming congestion/smoother playout Buffering => Longer latencies, not acceptable for interactive applications Vxtreme etc. exploit buffering

13 CUDP Summary Possible to design adaptive flow control into UDP application Allows Timely Delivery and discard of expired packets, prioritization Shown to scale against CUDP apps. Not clear if more aggressive than TCP Not a multiplicative decrease response

14 TCP Modifications If TCP congestion/flow control is so good, why not retain it? Easy to show that “TCP-friendly” Get rid of reliable/in-order delivery mechanisms that get in the way. HPF = Heterogeneous Packet Flows

15 HPF Allows marking packets high/low priority Provides In-order reliable delivery of high priority packets Allows low priority packets to be delivered when enough BW available If routers support priority, can drop low priority packets ahead of high priority packets

16 HPF Layers Application Framing (AF) -- convert frames into packets, packets into frames Windowing, Reliability, Timing and Flow- control (WRTF) -- window management, flow control, reliability, deadlines Congestion Control (CC) -- congestion response, estimation of RTTs

17 HPF Architecture

18 HPF

19 Another Example

20 HPF Sender Interface

21 HPF Receiver Interface

22 HPF Separate the reliable delivery from windowing mechanisms. Advance rcv_next pointer based on Reliable packets Compute fraction of packets lost as opposed to based on sequence numbers -- a burst of losses doesn’t lead to cwnd being set to 1. Multiplicative Decrease/Additive Increase

23 HPF Congestion Control If ack_fraction > , cwnd = fi(cwnd), fi = TCP slow start If ack_fraction < , cwnd = fd(cwnd), fd = 1/(1/cwnd ack_fraction)  = 1 - random loss probability

24 HPF Performance

25 HPF Priorities

26 HPF - App. Adaptation

27 Summary UDP-based delivery puts application in charge to do flow control, congestion response etc. -- ALF plus more Tedious for every application to implement all the basic mechanisms Separate ALF policies and implementation - HPF does this and follows TCP based congestion response