A Survey on Congestion Control in Networks

DOI : 10.17577/IJERTCONV4IS21026

Download Full-Text PDF Cite this Publication

Text Only Version

A Survey on Congestion Control in Networks

Suchitha. S

Asst. Professor, MCA(VTU) Department DSCE

Bangalore, India

Dr. B. G. Prashanthi

Professor and Head, MCA Department Adarsh College

Bangalore, India

AbstractThe present day networks are used for transferring various kinds of data. Congestion occurs when a network is carrying more data that it can handle. Congestion control is one of the basic issue in networks. Congestion control deals with reducing the traffic in the subnet so the better throughput can be achieved. This paper presents the overview of congestion control in networks. It also deals with various techniques used to control congestion and the recent work done in the area of congestion control.

Keywords Congestion control , throughput, congestion techniques, acknowledgement.

  1. INTRODUCTION

    When the packets are more in the networks, performance reduces and it is called congestion. The congestion is more means the traffic is more in the network.

    There are many factors for the causes of congestion like buffer space, slow processor etc. The basic networking concepts like TCP flow control, end-to-end transfer, retransmission of data, timeouts can be used to study the congestion control algorithms.

    Flow control specifies the controlling the flow of data. For example when the sending system is fast and the receiving system is slow, to match the packet transfer rate flow control can be used. End-to-end data transfer can be confirmed by using acknowledgement facility. If the packet is not received by the destination system for some reason then the source system should send the packets once again, that is retransmission of data. If the specified timeout is over then also retransmission of packet can be done. Timeout and retransmission gives the measurement of the round-trip time.

    Network congestion is the reduced quality of service that occurs when the load of network is more that it can handle. Congestion collapse limits the useful communication between the systems. Congestion collapse usually occurs where choke points are there in the networks where the traffic is more. Connection between the two networks(eg. LAN and MAN) gives choke points. When more packets are sent that cannot be handled, then intermediate routes discards the packets, which needs retransmission of packets.

    Network uses congestion avoidance techniques to avoid congestion collapse. These technique includes exponential backoff in protocols such as 802.11,CSMA/CA and Ethernet, fair queueing, window reduction in TCP.

    Choke packets can be used to reduce the congestion. A congested node generates the choke packet which is a control packet that is sent back to a source node to restrict further traffic flow. ICMP source quench packet is an example for choke packet. [8]

    Dynamic techniques are used to control congestion in virtual- circuit subnet. When the congestion is signaled, other virtual circuit set up is not done. Traffic can be handled in efficient way when there is a agreement between the receiver and sender regarding traffic pattern. This can be done by flow specification. Negotiation can be done regarding data flow, size and other parameters.

    Congestion can be controlled either by increasing the available resources or by decreasing the load of the network. Managing the traffic in networks can be done by various mechanisms and algorithms.

    In general principles of congestion control network problem is viewed from a control theory point of view. This approach divides the solution for congestion as open loop solution and closed loop solution. In open loop solution once the system starts running, no correction can be done. Tools facilitates when to accept or discard packets and makes scheduling decision. It uses good design to get the solution. Closed loop solutions has three parts. It monitors and detects the congestion, pass the information to take action and corrects the problem. It uses feedback technique to get solution.

    When traffic becomes more load shedding can be used. In this technique a router randomly picks the packet and discards it. The disadvantage is this technique is that many times important data is discarded. To avoid this some other strategy should be added to this.

    The jitter control is used when there is a variation in packets arrival time. It uses standard deviation. Proper scheduling schemes can be used for this purpose. There can be high jitter or low jitter. Router checks for the packets which are ahead or behind the schedule.

    This information is loaded so whichever packet is ahead the schedule ,it is held to get back on schedule and if the packet is behind the schedule it is passed quickly. [7]

    Many policies are used in different layers handles congestion. The various policies for data link layer are retransmission policy, out-of-order policy, flow control policy etc. The retransmission policy is concerned with timeout,

    retransmission of packets. If sender uses go back n for outstanding packets then it increases the load, so it is better to use selective repeat scheme. The acknowledgement policy can be used. If each packet is acknowledged then it increases the traffic. If piggyback concept is used, then extra timeouts and retransmission may result. The policies also can affect the traffic, so it should be used in efficient way.

    Resource pooling groups the resources together to improve the performance. A good and efficient routing algorithm helps avoid congestion by distributing the traffic over all the lines which are available. So choosing a proper algorithm reduces the congestion.

  2. EFFECTS OF CONGESTION IN NETWORKS Congestion control deals with allocating proper resources

    so the packet transmission occurs in a acceptable way. But when congestion becomes more in networks it creates many problems. It may lead to congestion collapse. Performance of the networks degrades, that is throughput reduces. Delay happens in transmission of packets. Other effects includes like packet loss, blocking the new connection.

  3. CONGESTION CONTROL TECHNIQUES

    There are various techniques are there to handle congestion .Few of them are discussed here. The starting four techniques are available in RFC 2001.[12]

    1. Slow Start:

      In this mechanism, sender can control the transmission rate of packets. So it is called as sender-based flow control. Slow start for TCP, observes the network traffic that at which rate the packets should be added to the network. This adds the new packets based on acknowledgement rate is received. For congestion window sender imposes flow control and for advertised window receiver imposes flow control.

      When the new connection is established between the systems, the congestion window is initialized to one segment. Every time an ACK is received, the window is increased by one segment. Next two segments can be sent. When these two segments are acknowledged the congestion window is increased to four.

      The network capacity is reached at some time and router will start discarding packets. This is the signal to the sender that its congestion window has become very large.

    2. Congestion Avoidance

      Congestion can occur for various reasons. If the data arrives on a fast LAN is passed to a slower WAN, then congestion can occur. The other reason for congestion is when the output capacity of a router is less than the sum of inputs. Congestion avoidance can be used to handle the lost packets.

      There are two things which signals the packet loss: a timeout occurring and the receipt of duplicate AKs. The sender sets its retransmission window to one half of the current window size, but to at least two segments.

      The congestion window is reset to one segment, which

      automatically puts the sender into slow start mode, when congestion indicated by timeout.

      The fast retransmit and fast recovery algorithm is used when congestion was indicated by duplicate ACKs.

    3. Fast Retransmit

      When a duplicate ACK is received, the TCP does not know whether it is caused by a lost segment or just a reordering of segments.

      If the out of order problem is there then no more than one or two duplicate ACKs are received before reordering the segment and it generates the new ACK. If three or more duplicate ACKs are received, then it means the segment has been lost and retransmission of segment is performed, without waiting for retransmission time to expire.

    4. Fast Recovery

      Fast recovery can be used to deal with duplicate ACKs. Fast recovery is an enhancement that allows high throughput under congestion for large windows. Here slow start is not performed because duplicate ACKs specifies more than a packet has been lost.

      The fast retransmission and fast recovery algorithms can be used together to handle congestion.

    5. Active Queue Management (AQM)

      When the packets are discarded data loss happens. To reduce the congestion there is a need to discard the packets. AQM is the intelligent drop of networks packets. It is done by network scheduler. The router maintains a set of queues. It uses drop-tail discipline. Active queue uses drop and mark packets for queue. The active queue management algorithms are random early detection, random exponential marking, robust random early detection etc

    6. Random Early Detection (RED)

      RED is an active queue management scheme. It is used for congestion avoidance. It is also called as random early discard or random early drop. It is used for queueing discipline. RED manages average queue size and discards packets based on probabilities. RED computes the average queue length for incoming packet, calculates the probability and decides whether to enqueue the packets or to drop the packet.

    7. Robust Random Early Detection (RRED)

      RED algorithm is vulnerable to attacks like low-rate denial-of-service(LDoS) attacks. So the RRED is proposed to improve the throughput against LDoS. RRED is used to detect and filter out attack packets. It is done before a RED algorithm is used. A detection and filter is used for normal RED. In RRED design differentiating a normal TCP packet from an attacking packet is very important. RRED improves the performance.

    8. Flowbased RED

      In flowbased- RED flow can measured and signaling can be given for very big bandwidth flow according to quality of service policy. Bandwidth can be divided among all flows by some criteria of policy.

    9. Explicit Congestion Notification (ECN)

      ECN specifies end-to-end notification of network congestion without dropping packets. It is an extension to the IP and to the TCP and is defined in RFC 3168(2001). When ECN is used, router set a mark in the IP header instead of dropping packets.

    10. Selective Acknowledgement

    When a TCP segment has been sent, the receiver waits for acknowledgement. After timer expires the sender retransmits the segment thinking it has been lost. But due to some reason the acknowledgement is received after the retransmission of segment. It experiences poor performance. A Selective Acknowledgement(SACK) mechanism is combined with selective repeat retransmission policy, can help to overcome these disadvantages. Selective acknowledgement is the technique which can be implemented using TCP option. It helps the sender to reduce

    unnecessary retransmission of data.

  4. RELATED WORK

    1. Multipath routing can be used for congestion control, which balances the traffic in networks. In multipath. routing

      ,the load is splitted across the set of paths. Authors have also discussed about multi-path routing concepts, route optimization, route choices and architectural issues.

    2. Timeout-Based congestion control can be used to control congestion. Author suggests to use path splitting and server congestion for distributed systems for further research work.

    A mechanism RED-PD can be used for high-bandwidth flows which identifies packet drop history. It controls the throughput[3].

    1. Congestion control and routing optimization can be combined for multi-layer system which can be used for traffic engineering, which improves the performance. DATE (Distributes Adaptive Traffic Engineering) algorithm has been discussed in this paper. In multi-layer, two layers are used that is network layer for routing and transport layer for congestion control. DATE uses edge routers to split traffic.

      There are many challenges like performance, heterogeneity, stability, complexity, fairness, feedback signaling and robustness.

      There are many drawbacks in the existing system like loss of packets, jitter, congestion collapse , delay etc.

  5. CONCLUSION

This paper outlined the basic congestion control, its effects. Various mechanisms used to control congestion. It also briefly gives recent work done. From more than a decade research is going on this area. There are many algorithms and schemes are available. This concept uses many policies. Many times because of different network architecture we may not get satisfactory solution, so always there is a further scope for research in this area.

REFERENCES

    1. Peter Key, Laurent Massoulie and Don Towsley, Combining Multipath Routing and Congestion Control for Robustness, Cambridge UK.

    2. Raj Jain, Congestion Control in Computer Networks : Issues and Trends, IEEE Network Magazine,May 1990, pp. 24-30.

    3. Ratul Mahajan, Sally Floyd and David Weatherall , Controlling High-Bandwidth Flows at the Congested Router, AT&T Center for Internet Research at ICSI(ACIRI), Berkeley,CA.

    4. C.Socrates, P.M.Beulah Devamalar, R.Kannamma Sridharan , IJSRP, Volume 4, Issue 12, December 2014, ISSN 2250-3153.

    5. Raj Jain, Congestion Control and Traffic Management in ATM Networks: Recent Advances and A Survey, The Ohio State University, Columbus, October 15,1995.

    6. Jiayue He, Maayan Bresler, Mung Chiang and Jennifer Rexford, Towards Robust Multi-layer Traffic Engineering: Optimization of Congestion Control and Routing, Princess University, USA, IEEE Globecom 2006.

    7. Andrew S Tanenbaum , Computer Networks,4th edition, Pearson education ,ISBN 978-81-7758-165-2.

    8. William Stallings, High Speed Networks and Internets performance and quality of services, Second edition ISBN 978-81-7758-569-8.

    9. Van Jacobson, Modified TCP Congestion Control Avoidance Algorithm,end-2-end-interest mailing list ,april 30,1990.

    10. https://en.wikipedia.org/wiki/Network_congestion

    11. W. Richard Stevens, TCP/IP Illustrated, volume 1:The protocols, Addison Welsley ,january 1994.

    12. W. Stevens, TCP Slow Start, Congestion Avoidance, Fast Retransmit and Fast Recovery Algorithms, January 1997,RFC 2001.

    13. https://en.wikipedia.org/wiki/Active_queue_management

    14. https://en.wikipedia.org/wiki/Robust_random_early-detection

    15. https://en.wikipedia.org/wiki/_random_early-detection

    16. Van Jacobson ,Congestion Avoidance and control, computer communication review, volume18, August 1998.

    17. James F Kurose, Keith W Ross, Computer Networking: A Top- Down Approach Featuring the Internet 3rd edition , ISBN 81-7758- 878-8.

    18. V. Jacobson, R. Braden and D. Borman, TCP Extensions for High Performance, May 1992,RFC 1323.

Leave a Reply