Unit 4
Unit 4
Congestion control
A transport layer protocol such as TCP has been designed for fixed networks with
fixed end-systems. This hardware typically works without introducing transmission
errors.
The reason for a packet loss in a fixed network is very high is probably a
temporary overload at some point of the transmission path, i.e., a state of congestion at
some node. Congestion may appear from time to time even in carefully designed net-
works. The packet buffers of a router are filled and the router cannot forward the packets
fast enough because the sum of the input rates of packets destined for one output link is
higher than the capacity of the output link. The only thing a router can do in this situation
is to drop packets. A dropped packet is lost for the transmission, and the receiver notices
a gap in the packet stream.
The sender notices the missing acknowledgement for the lost packet and assumes
a packet loss due to congestion. Retransmitting the missing packet might only increase
congestion. To mitigate congestion, TCP slows down the transmission rate dramatically.
Slow start
TCP's reaction to a missing acknowledgement is quite drastic, but necessary to get
rid of congestion fast enough. The behaviour TCP shows after the detection of congestion
is called slow start.
The sender always calculates a congestion window for a receiver. Start size of the
congestion window is one segment (TCP packet). Now the sender sends one packet and
waits for acknowledgement. If this acknowledgement arrives, the sender increases the
congestion window by one, now sending two packets (congestion window = 2). After
arrival of the two corresponding acknowledgements, the sender again adds 2 to the
congestion window, one for each of the acknowledgements. Now the congestion window
equals 4.
This scheme doubles the congestion window every time the acknowledgements
come back, which takes one round trip time (RTT). This is called the exponential growth
of the congestion window in the slow start mechanism. It is too dangerous to double the
congestion window each time because the steps might become too large.
Therefore, the exponential growth stops at the congestion threshold. As soon as
the congestion window reaches the congestion threshold, further increase of the
transmission rate is only linear by adding 1 to the congestion window each time the
acknowledgements come back.
Linear increase continues until a time-out at the sender occurs due to a missing
acknowledgement, or until the sender detects a gap in transmitted data because of
continuous acknowledgements for the same packet. In either case the sender sets the
congestion threshold to half of the current congestion window.
Page 1
Unit - IV
Fast retransmit
Sender receives continuous acknowledgements for the same packet. This informs
the sender that the receiver got all packets up to the acknowledged packet in sequence.
Receiving acknowledgements from a receiver shows additionally that the receiver
continuously receives something from the sender.
Therefore, the gap in the packet stream is not due to severe congestion, but a
simple packet loss due to a transmission error. The sender can now retransmit the missing
packet(s) before the timer expires. This-behaviour is called fast retransmit.
The other reason for activating slow start mentioned in the last section was a time-
out due to a missing acknowledgement. This is the only situation TCP using fast
retransmit/fast recovery interprets as congestion in the network and activates the slow
start mechanism.
Implications on mobility
While slow start is one of the most useful mechanisms in fixed networks, it
drastically decreases the efficiency of TCP if used together with mobile receivers or
senders. The reason for this is the use of slow start under the wrong assumptions. From a
missing acknowledgement, slow start concludes a congestion situation.
While this may also happen in networks with mobile and wireless end-systems, it
is not the main reason for packet loss. Error rates on wireless links are much higher
compared to fixed fibre or copper links. Thus, packet loss is much more common and
cannot always be compensated for by layer two retransmissions.
Furthermore, mobility itself can cause packet loss. There are many situations
where a soft handover from one access point to another is not possible for a mobile end-
system. There could still be some packets in transit to the old foreign agent while the
mobile node moves to the new foreign agent. It may now be the case that the old foreign
agent cannot forward those packets to the new foreign agent or not even buffer the
packets if disconnection of the mobile node takes too long.
The TCP mechanism detecting missing acknowledgements via time-outs and
concluding packet loss due to congestion cannot distinguish between the different causes.
TCP reacts with slow start, which does not help in the case of transmission errors over
wireless links and which does not really help during handover. This behavior results in a
severe performance degradation of an unchanged TCP if used together with wireless
Page 2
Unit - IV
INDIRECT TCP
Reasons for Developing I-TCP
1. TCP performs poorly together with wireless links
2. TCP within the fixed network cannot be changed.
Therefore, I-TCP segments a TCP connection into a fixed part and a wireless part.
Page 3
Unit - IV
Advantages
1. I-TCP does not require any changes in the TCP protocol as used by the hosts in
the fixed network or other hosts in a wireless network that do not use this
optimization.
2. Due to the strict partitioning into two connections, transmission errors on the
wireless link, i.e., lost packets, cannot propagate into the fixed network.
3. With I-TCP only between the mobile host and the foreign agent. Different
solutions can be tested or used at the satire time without jeopardizing the stability
of the Internet.
4. The short delay between the mobile host and foreign agent can be determined and
is independent of other traffic streams. Therefore, an optimized TCP can use
precise time-outs to guarantee retransmission as fast as possible. Even standard
TCP benefits from the short round trip time, thus recovering faster from packet
loss.
5. Partitioning into two connections also allows the use of a different transport layer
protocol between the foreign agent and the mobile host or the use of compressed
headers etc. The foreign agent can now act as a gateway to translate between the
different protocols.
Disadvantages
1. The loss of the end-to-end semantics of TCP might cause problems it the foreign
agent partitioning the TCP connection crashes.
2. Increased handover latency may be much more problematic. If the mobile host
now performs a handover to another foreign agent, it takes a while before the old
foreign agent can forward the buffered data to the new foreign agent. During this
time more packets may arrive. All these packets have to be forwarded to the new
foreign agent first before it can start forwarding the new packets redirected to it.
3. The foreign agent must be a trusted entity because if users apply end-to-end
encryption, the foreign agent has to be integrated into all security mechanisms.
Page 4
Unit - IV
SNOOPING TCP
The Snooping TCP enhancement works completely transparently and leaves the
TCP end-to-end connection intact.
The main function of the enhancement is to buffer data close to the mobile host to
perform fast local retransmission in case of packet loss. Again, a good place for the
enhancement of TCP could be the foreign agent in the Mobile IP context. In this
approach, the foreign agent buffers all packets with destination mobile host and
additionally 'snoops' the packet flow in both directions to recognize acknowledgements.
Page 5
Advantages:
1. A great advantage of this approach is the preservation of the end-to-end TCP
semantic. No correspondent host needs to be changed, most of the enhancements
are in the foreign agent. Supporting only the packet Stream from the
correspondent host to the mobile host does not even require changes in the mobile
host.
2. A nice effect of this approach is that it needs no handover of state as soon as the
mobile host moves to another foreign agent.
3. It does not matter if the next foreign agent uses the enhancement or not. If not, the
approach automatically falls back to the standard solution.
Disadvantages
1. Snooping TCP does not isolate the behaviour of the wireless link as good as I-
TCP. The problems on the wireless link are now visible also for the correspondent
host and not fully isolated. The quality of the isolation snooping TCP offers
strongly depends on the quality of the wireless link, time-out values, and further
traffic characteristics.
2. Using negative acknowledgements between the foreign agent and the mobile host
assumes additional mechanisms on the mobile host. Thus, this approach is no
longer transparent for arbitrary mobile hosts.
3. All efforts for snooping and buffering data may be useless if certain encryption
schemes are applied end-to-end between the correspondent host and mobile host.
MOBILE TCP
Phenomenon of Wireless and Mobility
1. Dropping packets due to a handover or higher bit error rates
2. The occurrence of lengthy and/or frequent disconnections.
M-TCP
The M-TCP (mobile TCP) approach has the same goals as 1-TCP and snooping
TCP to prevent the sender window from shrinking if bit errors or disconnection but not
congestion cause current problems. M-TCP wants to improve overall throughput, to
lower the delay, to maintain end-to-end semantics of TCP, and to provide a more efficient
handover. Additionally, M-TCP is especially adapted to the problems arising from
lengthy or frequent disconnections.
Types of M-TCP
M-TCP splits the TCP connection.
1. An unmodified TCP is used on the standard host-supervisory host (SH)
connection,
2. An optimized TCP is used on the SH-MH connection.
The supervisory host is responsible for exchanging data between both parts
similar to the proxy in I-TCP. The M-TCP approach assumes a relatively low bit error
rate on the wireless link. Therefore, it does not perform caching/retransmission of data
via the SH. If a packet is lost on the wireless link, it has to be retransmit ted by the
original sender. This maintains the TCP end-to-end semantics. The SH monitors all
packets sent to the MH and ACKs returned from the MH.
If the SH does not receive an ACK for some time, it assumes that the MH is
disconnected. It then chokes the sender by setting the sender's window size to 0. Setting
the window size to 0 forces the sender to go into persistent mode, i.e., the state of the
sender will not change no matter how long the receiver is disconnected. This means that
the sender will not try to retransmit data.
As soon as the SH (either the old SH or a new SH) detects connectivity again, it
reopens the window of the sender to the old value. Thus, the sender can continue sending
at full speed. This mechanism does not require changes to the sender's TCP. On the
wireless side an adapted TCP is used that can recover from packet loss much faster. This
modified TCP does not use slow start, thus, M-TCP needs a bandwidth manager to
implement fair sharing over the wireless link.
Advantages
1. M-TCP maintains the TCP end-to-end semantics. The SH does not send any ACK
itself but forwards the ACKs from the MH.
2. If the MH is disconnected, M-TCP avoids useless retransmissions, slow starts or
breaking connections by simply shrinking the sender's window to 0.
3. Since M-TCP does not buffer data in the SH as I-TCP does, it is not necessary to
forward buffers to a new SH. Lost packets will be automatically retransmitted to
the new SH.
Disadvantages:
1. As the SH does not act as proxy as in I-TCP, packet loss on the wireless link due
to bit errors is propagated to the sender. M-TCP assumes low bit error rates,
which is not always a valid assumption.
2. A modified TCP on the wireless link not only requires modifications to the MH
protocol software but also new network elements like the bandwidth manager.
FAST RETRANSMIT/FAST RECOVERY
Moving to a new foreign agent can cause packet loss or time out at mobile hosts
or corresponding hosts.
TCP concludes congestion and goes into slow start, although there is no
congestion.
The mechanisms of fast recovery/fast retransmit a host can use after receiving
duplicate acknowledgements, thus concluding a packet loss without congestion.
The idea is to artificially force the fast retransmit behaviour on the mobile host
and correspondent host side.
As soon as the mobile host registers at a new foreign agent using mobile IP, it
starts sending duplicated acknowledgements to correspondent hosts.
The proposal is to send three duplicates.
This forces the corresponding host to go into fast retransmit mode and not to start
slow start, i.e., the correspondent host continues to send with the same rate it did before
the mobile host moved to another foreign agent.
As the mobile host may also go into slow start after moving to a new foreign
agent, this approach additionally puts the mobile host into fast retransmit.
Thus, the mobile host retransmits all unacknowledged packets using the current
congestion window size without going into slow start.
Advantage
Simplicity Only minor changes in the mobile host's software already result in a
performance increase. No foreign agent or correspondent host has to be changed.
Disadvantage
1. The insufficient isolation of packet losses
2. Forcing fast retransmission increases the efficiency, but retransmitted packets still
have to cross the whole network between correspondent host and mobile host.
3. If the handover from one foreign agent to another takes a longer time, the
correspondent host will have started retransmission already.
4. The approach focuses on loss due to handover, thus packet loss due to problems
on the wireless link is not considered.
5. This approach requires more cooperation between the mobile IP and TCP layer
making it harder to change one without influencing the other.
TRANSMISSION/TIME-OUT FREEZING
Quite often, the MAC layer has already noticed connection problems, before the
connection is actually interrupted from a TCP point of view.
Additionally, the MAC layer knows the real reason for the interruption and does
not assume congestion, as TCP would.
Therefore, the MAC layer can inform the TCP layer of an upcoming loss of
connection or that the current interruption is not caused by congestion.
TCP can now stop sending and 'freezes' the current state of its congestion window
and further timers.
If the MAC layer notices the upcoming interruption early enough, mobile host
and correspondent host can be informed.
With a fast interruption of the wireless link, additional mechanisms in the access
point are needed to inform the correspondent host of the reason for interruption.
Otherwise, the correspondent host goes into slow start assuming congestion and finally
breaks the connection.
As soon as the MAC layer detects connectivity again, it signals TCP that it can
resume operation at exactly the same point where it had been forced to stop. For TCP
time simply does not advance, and thus no timers expire.
Advantage
1. It offers a way to resume TCP connections even after longer interruptions of the
connectivity.
2. It is independent of any other TCP mechanism, such as acknowledgements or
sequence numbers, thus it may be used together with encrypted data.
Disadvantages
1. Not only the software on the mobile host has to be changed. To be more effective,
the correspondent host cannot remain unchanged.
2. All mechanisms rely on the capability of the MAC layer to detect future
interruptions.
3. Freezing the state of TCP does not help in case of some encryption schemes that
use time-dependent random numbers. These schemes need resynchronization after
interruption.
SELECTIVE RETRANSMISSION
A very useful extension of TCP is the use of selective retransmission. TCP
acknowledgements are cumulative, i.e., they acknowledge in-order receipt of packets up
to a certain packet.
If a single packet is lost, the sender has to retransmit everything starting from the
lost packet (go-back-n retransmission). This obviously wastes bandwidth, not only in the
mobile case, but in any network.
TCP can indirectly request a selective retransmission of packets. The receiver can
acknowledge single packets, not only trains of in-sequence packets. The sender can now
precisely determine which packet is needed and can retransmit it.
Advantages
1. A sender retransmits only the lost packets.
2. This requires lower bandwidth and helps especially in case of slow wireless links.
3. The gain in efficiency is not restricted to wireless links and mobile environments.
Using selective retransmission is also beneficial in all other networks.
Disadvantage
1. More complex software on the receiver side, because now more buffer is
necessary to resequence data and to wait for gaps to be filled.
TRANSACTION ORIENTED TCP
Assume an application running on the mobile host that sends a short request to a
server from time to time, which respond with a short message.
If the application requires reliable transport of the packets, it may use TCP (many
applications of this kind use UDP and solve reliability on an higher, application-oriented
layer).
Using TCP now requires several packets over the wireless link. First of all, TCP
uses a three-way handshake to establish the connection.
At least one packet is needed for transmission of the request, and finally TCP
requires three more packets to close the connection via a three-way handshake.
Assuming connections with a lot of traffic or with a long duration, this overhead
is minimal.
But in an example of only one data packet, TCP needs seven packets altogether.
This overhead led to the development of a transaction oriented TCP (T-TCP, RFC
1644 (Braden, 1994)).
T-TCP can combine packets for connection establishment and connection release
with user data packets. This can reduce the number of packets down to only two instead
of seven.
Advantage
The reduction in the overhead which standard TCP has for connection setup and
connection release.
Disadvantage
T-TCP is not the original TCP anymore, so it requires changes in the mobile host and all
correspondent hosts, which certainly is a major disadvantage.