1 Congestion and Congestion Control in Packet- Switched Networks.

Slides:



Advertisements
Similar presentations
CS 457 – Lecture 16 Global Internet - BGP Spring 2012.
Advertisements

EE 4272Spring, 2003 Chapter 12 Congestion in Data Networks Effect of Congestion Control  Ideal Performance  Practical Performance Congestion Control.
TELE202 Lecture 8 Congestion control 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »X.25 »Source: chapter 10 ¥This Lecture »Congestion control »Source:
William Stallings Data and Computer Communications 7 th Edition Chapter 13 Congestion in Data Networks.
Introduction1-1 message segment datagram frame source application transport network link physical HtHt HnHn HlHl M HtHt HnHn M HtHt M M destination application.
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
CS 471/571 Transport Layer 5 Slides from Kurose and Ross.
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
Instructor: Sam Nanavaty TCP/IP protocol. Instructor: Sam Nanavaty Version – Allows for the evolution of the protocol IHL (Internet header length) – Length.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
CP476 Internet Computing TCP/IP 1 Lecture 3. TCP / IP Objective: A in-step look at TCP/IP Purposes and operations Header specifications Implementations.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
TCP segment structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement number rcvr window size ptr.
CS 408 Computer Networks Congestion Control (from Chapter 05)
Chapter 10 Congestion Control in Data Networks1 Congestion Control in Data Networks and Internets COMP5416 Chapter 10.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
The Network Layer Chapter 5. The IP Protocol The IPv4 (Internet Protocol) header.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168) Limited Transmit (RFC 3042)
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168)
Semester Copyright USM EEE449 Computer Networks Congestion En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
Chapter 4 Queuing, Datagrams, and Addressing
4: Network Layer4a-1 IP datagram format ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier Internet checksum time.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Review the key networking concepts –TCP/IP reference model –Ethernet –Switched Ethernet –IP, ARP –TCP –DNS.
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
CSC 581 Communication Networks II Chapter 7c: Congestion Control Dr. Cheer-Sun Yang.
Transport Layer3-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer4-1 Datagram networks r no call setup at network layer r routers: no state about end-to-end connections m no network-level concept of “connection”
Network Layer by peterl. forwarding table routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling.
1 CSE 5346 Spring Network Simulator Project.
Explicit Congestion Notification (ECN) RFC 3168
Transport Protocols.
Network Layer by peterl. forwarding table routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling.
A network primer (or refresher) Henning Schulzrinne (based on slides from Kurose/Ross)
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
IP Fragmentation. Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on rcving side,
Chapter 10 Congestion Control in Data Networks and Internets 1 Chapter 10 Congestion Control in Data Networks and Internets.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
Congestion Control in Data Networks and Internets
DMET 602: Networks and Media Lab
Introduction to TCP/IP networking
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
William Stallings Data and Computer Communications
Congestion Control in Data Networks and Internets
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Chapter 4 Network Layer Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith Ross Addison-Wesley, April Network Layer.
Chapter 11. Frame Relay Background Frame Relay Protocol Architecture
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
32 bit destination IP address
Transport Layer 9/22/2019.
Presentation transcript:

1 Congestion and Congestion Control in Packet- Switched Networks

Network Congestion 2 Introduction Packet–switched networks get congested! Packet–switched networks get congested! Congestion occurs when the number of packets transmitted approaches network capacity Congestion occurs when the number of packets transmitted approaches network capacity Objective of congestion control: Objective of congestion control: –keep the number of packets that are entering/within the network below the level at which performance drops off dramatically

Network Congestion 3 Queuing Theory Recall from prior module that a data network is a network of queues Recall from prior module that a data network is a network of queues If arrival rate at any queue > transmission rate from the node, and as average arrival rate grows, then queue size grows without bound and packet delay goes to infinity If arrival rate at any queue > transmission rate from the node, and as average arrival rate grows, then queue size grows without bound and packet delay goes to infinity Rule of Thumb Design Point:  = L /R <.8 * Rule of Thumb Design Point:  = L /R <.8 *

Network Congestion 4 Input & Output Queues at a Node T s = L/R Nodal Processing

Network Congestion 5 At Saturation Point Two Possible Strategies at Node: 1. Discard any incoming packet if no buffer space is available 2. Exercise flow control over neighbors –May cause congestion to propagate throughout network

Network Congestion 6 Queue Interaction in Data Network (delay propagation)

Network Congestion 7 Jackson’s Theorem - Application in Packet Switched Networks Packet Switched Network External load, offered to network:  =    jk  =    jkwhere:  = total workload in packets/sec  = total workload in packets/sec  jk = workload between source j  jk = workload between source j and destination k and destination k N = total number of (external) N = total number of (external) sources and destinations sources and destinations N N N N j=1 k=2 j=1 k=2 Internal load: =  i =  iwhere: = total on all links in network = total on all links in network i = load on link i i = load on link i L = total number of links L = total number of links L i=1 i=1 Note: Internal > offered load Internal > offered load Average length for all paths: Average length for all paths: E[number of links in path] = /  E[number of links in path] = /  Average number of items waiting Average number of items waiting and being served in link i: r i = i T ri and being served in link i: r i = i T ri Average delay of packets sent Average delay of packets sent through the network is: through the network is: T =  T =  where: M is average packet length and where: M is average packet length and R i is the data rate on link i R i is the data rate on link i 1 L i=1 i=1 M i R i - M i i Notice: As any i increases, total delay increases.

Network Congestion 8 Ideal Performance I.e., infinite buffers, no variable overhead for packet transmission or congestion control I.e., infinite buffers, no variable overhead for packet transmission or congestion control Throughput increases with offered load up to full capacity Throughput increases with offered load up to full capacity Packet delay increases with offered load approaching infinity at full capacity Packet delay increases with offered load approaching infinity at full capacity Power = throughput / delay, or a measure of the balance between throughput and delay Power = throughput / delay, or a measure of the balance between throughput and delay –Higher throughput results in higher delay

Network Congestion 9 Ideal Network Utilization Load: T s = L /R Power: relationship between Normalized Throughput and Delay

Network Congestion 10 Practical Performance I.e., finite buffers, non-zero packet processing overhead I.e., finite buffers, non-zero packet processing overhead With no congestion control, increased load eventually causes moderate congestion: throughput increases at slower rate than load With no congestion control, increased load eventually causes moderate congestion: throughput increases at slower rate than load Further increased load causes packet delays to increase and eventually throughput to drop to zero Further increased load causes packet delays to increase and eventually throughput to drop to zero

Network Congestion 11 Effects of Congestion What’s happening here? buffers fill packets discarded sources re-transmit routers generate more traffic to update paths good packets resent delays propagate

Network Congestion 12 Common Congestion Control Mechanisms

Network Congestion 13 Congestion Control Backpressure Backpressure –Request from destination to source to reduce rate –Useful only on a logical connection basis –Requires hop-by-hop flow control mechanism Policing Policing –Measuring and restricting packets as they enter the network Choke packet Choke packet –Specific message back to source –E.g., ICMP Source Quench Implicit congestion signaling Implicit congestion signaling –Source detects congestion from transmission delays and lost packets and reduces flow

Network Congestion 14 Explicit congestion signaling Direction Direction –Backward –Forward Categories Categories –Binary –Credit-based –Rate-based

Network Congestion 15 Traffic Management in Congested Network – Some Considerations Fairness Fairness –Various flows should “suffer” equally –Last-in-first-discarded may not be fair Quality of Service (QoS) Quality of Service (QoS) –Flows treated differently, based on need –Voice, video: delay sensitive, loss insensitive –File transfer, mail: delay insensitive, loss sensitive –Interactive computing: delay and loss sensitive Reservations Reservations –Policing: excess traffic discarded or handled on best-effort basis

Network Congestion 16 Congestion Avoidance with Explicit Signaling Two general strategies considered: Hypothesis 1: Congestion always occurs slowly, almost always at egress nodes Hypothesis 1: Congestion always occurs slowly, almost always at egress nodes –forward explicit congestion avoidance Hypothesis 2: Congestion grows very quickly in internal nodes and requires quick action Hypothesis 2: Congestion grows very quickly in internal nodes and requires quick action –backward explicit congestion avoidance

Network Congestion 17 Congestion Control: BECN/FECN

Network Congestion 18 Explicit Signaling in Packets Forward Explicit Congestion Notification Forward Explicit Congestion Notification –For traffic in same direction as received frame –This frame has encountered congestion Backward Explicit Congestion Notification Backward Explicit Congestion Notification –For traffic in opposite direction of received frame –Frames transmitted may encounter congestion

Network Congestion 19 Explicit Signaling Response Network Response Network Response –each router monitors its queuing behavior and takes action (AQM) –sets bits in packets to indicate congestion –some/all connections notified of congestion Sender (end-system) Response Sender (end-system) Response –inspects packet for congestion indication –reduces send rate if congestion indicated

Network Congestion 20 Explicit Congestion Control with TCP/IP (RFC 3168) Routers monitor queue depth, using Active Queue Management (AQM) Routers monitor queue depth, using Active Queue Management (AQM) –typically via Random Early Detection (RED) Routers signal congestion indication by “marking” IP packets Routers signal congestion indication by “marking” IP packets TCP end systems monitor congestion indication in received packet headers TCP end systems monitor congestion indication in received packet headers TCP senders regulate send rate based on signaling from routers TCP senders regulate send rate based on signaling from routers –recall: TCP window size –why not UDP?

Network Congestion 21 Explicit Congestion Control with TCP/IP (RFC 3168) TCPHost TCPHost

Explicit Congestion Control with TCP/IP Initiating TCP host signals Explicit congestion control capability during connection setup Initiating TCP host signals Explicit congestion control capability during connection setup –ECE,CWR and SYN set –known as ECN-Setup SYN packet Target host acknowledges connection with ECN Target host acknowledges connection with ECN –ECE, SYN and ACK set –called ECN-Setup SYN-ACK packet Network Congestion 22

Transport Layer 23 TCP segment structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement number receive window URG data pointer checksum F SR PAU head len not used options (variable length) URG: urgent data (generally not used) ACK: ACK # valid PSH: push data now (generally not used) RST, SYN, FIN: Connection mgmt. (setup, teardown commands) # bytes rcvr willing to accept counting by bytes of data (not segments!) Internet checksum (as in UDP) # 32-bit words in header

Transport Layer 24 TCP segment structure-RFC 3168 source port # dest port # 32 bits application data (variable length) sequence number acknowledgement number receive window URG data pointer checksum F S R PA U head len options (variable length) ECN-Echo Flag (bit 8) CWRCWR ECEECE Congestion Window Reduced Flag (bit-9)

Network Layer 25 ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier header checksum time to live 32 bit source IP address hdr. len type of service flgs fragment offset upper layer 32 bit destination IP address options (if any) IPv4 datagram structure IP protocol version number header length (bytes) transport layer protocol to deliver payload to total datagram length (bytes) service request (QoS) for fragmentation/ reassembly max number remaining hops (decremented at each router) e.g. timestamp, record route taken, specify list of routers to visit.

Network Layer 26 ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier header checksum time to live 32 bit source IP address hdr. len flgs fragment offset upper layer 32 bit destination IP address options (if any) IPv4 datagram structure – RFC 3168 ECN-capable Transport (bit-6) Congestion Experienced (bit-7) DSCP ECTECT CECE