Congestion Control, Internet Transport Protocols: UDP

Slides:



Advertisements
Similar presentations
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Advertisements

Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
TELE202 Lecture 14 TCP/UDP (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »TCP/UDP (1) »Source: chapter 17 ¥This Lecture »TCP/UDP (2) »Source: chapter.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
1 Transport Layer Computer Networks. 2 Where are we?
Congestion Control, the Internet Transport Protocols, and UDP By: Mike Krupinski and Jaesma Woods.
Congestion Control, Internet Transport Protocols: UDP
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
Copyright 2008 Kenneth M. Chipps Ph.D. Controlling Flow Last Update
Networking Basics CCNA 1 Chapter 11.
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
Congestion Control: UDP. What is Congestion Control? Refers to the management of packet loss and signal degradation Handled by both Network and Transport.
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.
Distributed Systems 8. Transport Layer Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
Distributed Systems 12. Transport Layer Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2015/2016.
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Distributed Systems 11. Transport Layer
Chapter 7: Transport Layer
The Transport Layer Implementation Services Functions Protocols
The Transport Layer Congestion Control & UDP
Chapter 9: Transport Layer
Fast Retransmit For sliding windows flow control we waited for a timer to expire before beginning retransmission of a packet TCP uses an additional mechanism.
Unit-7 The Transport Layer.
Chapter 3 outline 3.1 Transport-layer services
Instructor Materials Chapter 9: Transport Layer
Chapter 3 outline 3.1 transport-layer services
Introduction to Congestion Control
5. End-to-end protocols (part 1)
Transport Layer.
PART 5 Transport Layer Computer Networks.
Net 221D : Computer Networks Fundamentals
TCP Transport layer Er. Vikram Dhiman LPU.
Computer Networks Bhushan Trivedi, Director, MCA Programme, at the GLS Institute of Computer Technology, Ahmadabad.
Internet and Intranet Protocols and Applications
Congestion Control, Internet transport protocols: udp
Transport Layer Unit 5.
Chapter 14 User Datagram Protocol (UDP)
Process-to-Process Delivery:
TRANSMISSION CONTROL PROTOCOL
Congestion Control (from Chapter 05)
CPEG514 Advanced Computer Networkst
Net 323 D: Networks Protocols
Chapter 11. Frame Relay Background Frame Relay Protocol Architecture
TCP Overview.
Congestion Control (from Chapter 05)
Transport Protocols: TCP Segments, Flow control and Connection Setup
Congestion Control (from Chapter 05)
Transport Layer: Congestion Control
The Transport Layer Chapter 6.
Congestion Control (from Chapter 05)
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Congestion Control (from Chapter 05)
Computer Networks Protocols
Transport Layer 9/22/2019.
Lecture 6, Computer Networks (198:552)
Presentation transcript:

Congestion Control, Internet Transport Protocols: UDP

Congestion Control Congestion occurs when a machine sends too many packets into the network too quickly This can lead to the performance beginning to degrade as the packets are delayed and lost. Congestion is ultimately cause by traffic sent into the network by the transport layer. The most effective way to control congestion is to for the transport protocols to send packets into the network more slowly.

Desirable Bandwidth Allocation This is used to regulate traffic. The goal of this is to simply avoid congestion as much as possible. The purpose is to find aa good allocation of bandwidth to the transport entities that are using the network. A good allocation will deliver good performance because it uses all the available bandwidth but avoids congestion. This will create fair competing transport entities and quick track changes in traffic demands.

What is used to regulate traffic?

Power = load/delay cont. Kyle In 1979, Kleinrock proposed the metric of power, where power will initially rise with offered load, as delay remains small and roughly constant, but will reach a max. And fall as delay grows rapidly. The load with the highest power represents an efficient load for the transport entity to place on the network. The delay cannot go to infinity, except in a model with routers have infinite buffers. Instead, packets will be lost after experiencing the maximum buffering delay.

Max/Min Fairness and Convergence cont. Kyle The form of fairness that is often desired for network usage is max-min fairness. Meaning, increasing bandwidth of a flow will make the situation worse for flows that are less well off. Congestion control algorithm converge quickly to a fair and efficient allocation of bandwidth. A good congestion control algorithm should rapidly converge to the ideal operating point. Convergence is too slow, the algorithm will never be close to changing operating point. Algorithm is not stable, it may fail to converge to the right point, or even oscillate around the right point.

Question? What does the congestion control algorithm do? Congestion control algorithm converge quickly to a fair and efficient allocation of bandwidth.

Regulating the Sending Rate Two Factors can limit the sending rate: flow control and congestion Flow control: the buffers at the receiving end are not sufficient for the amount of data being delivered. Congestion: the network does not have enough capacity for the data being transmitted across it The transport layer deals with these problems in different ways depending of the feedback it receives from the network

Regulating the Sending Rate There are two types of feedback implicit and explicit and they can be either precise or imprecise ECN(Explicit Congestion Notification): in this design the router sets flag bits on packets to tell the sender to slow down but not how much (explicit,imprecise) TCP with drop-tail: the systems infers packet loss and then signals the network is congested There are a number of other systems for congestion control these are collectively known as control laws.

Regulating the Sending Rate The control law used by TCP is AIMD AIMD( Additive Increase Multiplicative Decrease): this basis of this design is that the sending rate is increased slowly(additive) and when congestion is detected it is decrease quickly(multiplicative)

Wireless Issues Most control laws including AIMD use packet loss as a signal for congestion however on a wireless network packet loss is very high due to transmission error. The solution to this problem involves masking the the transmission errors and sending them Retransmission occurs on a scale of microseconds while the loss timers are on a scale of milliseconds, this difference in time allows for retransmission to fix transmission errors before they register as a congestion problem.

Question? What two factors are to be considered when addressing sending rates?

UDP (User Datagram Protocol) UDP is the connectionless protocol of the transport layer consisting of an 8-byte header followed by the payload. Compared to the connected protocol, TCP (Transmission Control Protocol) UDP is fast and unreliable. Compared to raw IP, UDP provides source and destination ports The ports are used to denote source and destination. This is useful when a reply must be sent back to the source Kevin Metz

UDP (cont.) UDP does not do flow control, congestion control, or retransmission upon receipt of a bad segment UDP supports applications that need to have precise control over the packet flow, error control, or timing, and broadcasting to multiple hosts Some examples of appropriate applications for UDP include email, stock and weather updates, and user login Kevin Metz

Question? TCP and UDP are protocols used in what data of protocols? Transport Layer

Remote Procedure Control (RPC) The basis for many networking applications It allows a computer program to execute procedures in a different address space. (Ex: a different computer on a network). This allows actions to occur at Runtime letting the programmer write the same code whether the procedure local or remote to the executing program How RPC Works: Client calls Stub Client Stub packages parameters into a message, system calls to send them OS sends packets from Client to Server Server OS passes the packets to the Server Stub Server Stub unpacks message Server Stub calls unpacked procedure Server reply is carried out in the same way in reverse order

Real-Time Transport Protocol (RTP) RTP is meant to multiplex several real time data streams onto a single stream of UDP packets. Each packet sent in an RPT stream is given a number one higher than its predecessor and allows the destination to see if any packets are missing. The header consists of 3 32 bit words sometimes with extensions The first word is the version field, the P Indicates that the packet has been padded To a multiple of 4 bytes. The x Indicates a Extension header is present. CC tells how Many contributing sources are present (1-15) M bit is application specific, Sequence num is A counter that increments on each rtp packet Timestamp can help reduce timing variability SSI tells which stream the packet belongs to CSI are used when mixers are present

Playout with Buffering and Jitter Control Packets reach the receiver at different times, the variation is called jitter. This will make video jerky at times. You solve this by introducing buffering; in which you delay the packets at the receiver to reduce the amount of jitter. Applications can measure the jitter and find a good playback point by looking at the differnece between the RTP Timestamps and the arrival time

Playout cont.

Question Why is a buffer necessary? To prevent jitter