What are issues in congestion control and how is it handled in TCP/IP?

Network congestion occurs when the demand for network resources exceeds the available capacity, leading to degraded performance. Congestion control is critical in maintaining network stability and ensuring fair resource allocation among users.

When a sender transmits more packets than the network can handle, routers become overwhelmed and must queue or discard packets. This creates a cascade effect where retransmissions further increase network load, worsening the congestion problem.

Impact on Network Performance

Delay-Based Issues

Network delay consists of propagation delay (time for signal to travel) and processing delay (time for routers to process packets). When network load is below capacity, these delays remain minimal and relatively constant.

However, as load approaches network capacity, queuing delay becomes significant as packets wait in router buffers. When load exceeds capacity, delays can become infinite as packets are dropped and must be retransmitted.

Throughput-Based Issues

Under normal conditions, throughput increases proportionally with load until network capacity is reached. Beyond this point, throughput actually decreases sharply due to packet discarding by overwhelmed routers.

This counterintuitive behavior occurs because retransmissions consume bandwidth without delivering new data, creating a negative feedback loop that reduces effective throughput.

Network Load vs Performance Network Load Performance Throughput Delay Capacity

TCP Congestion Control Mechanisms

Transmission Control Protocol (TCP) implements sophisticated congestion control algorithms to prevent network collapse. The primary mechanism uses a congestion window (cwnd) maintained at the sender to limit the amount of unacknowledged data in transit.

Slow Start Phase

TCP begins with a congestion window size of one Maximum Segment Size (MSS). For each acknowledgment received, the window size doubles:

cwnd = cwnd + MSS (for each ACK)

This exponential growth continues until reaching the slow start threshold (ssthresh).

Congestion Avoidance Phase

Once the threshold is reached, TCP switches to linear growth to probe for available bandwidth more cautiously:

cwnd = cwnd + MSS²/cwnd (for each ACK)

Congestion Detection and Recovery

When packet loss is detected (indicating congestion), TCP reduces the congestion window:

ssthresh = cwnd/2
cwnd = 1 MSS (for timeout)
cwnd = ssthresh (for fast recovery)
TCP Phase Window Growth Behavior
Slow Start Exponential Rapid increase until threshold
Congestion Avoidance Linear Gradual increase to probe capacity
Fast Recovery Immediate reduction Quick response to congestion signals

Conclusion

Network congestion significantly impacts both delay and throughput performance. TCP's congestion control mechanisms effectively manage network load through adaptive window sizing, preventing network collapse while maximizing utilization. These algorithms balance aggressive bandwidth utilization with responsive congestion detection to maintain network stability.

Updated on: 2026-03-16T23:36:12+05:30

1K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements