• With the advent of WLANs, a lot of research went into increasing the performance of TCP in wireless and mobile environments, some of its outcome are I-TCP and SNOOP-TCP, Mobile-TCP etc. Let us study Mobile-TCP.
• M-TCP (mobile TCP) has the same goals as similar to its variants i.e. I-TCP and Snoop-TCP. It too wants to improve overall throughput, to lower the delay, to main end-to-end semantics of TCP.
• But, it is mainly enhanced to address problems related to lengthy or frequent disconnections.
Basic TCP methodology:
- When a node does not receive an acknowledgement back form the host, it carries out retransmission.
- A TCP sender tries to retransmit data controlled by retransmission timer which doubles up with each unsuccessful attempt. (upto a maximum of one minute)
- A sender tries to retransmit an unacknowledged packet every one minute and gives up after 12 minutes.
- If in I-TCP, the mobile host is disconnected, then in such a situation, the FA will keep of buffering more and more data packets.
- In case of a handover following this disconnection, we have more data to be transmitted to new FA.
- Snoop-TCP also suffers from similar such problems.
Mobile TCP:
- The M-TCP splits up the connection into two parts:
- An unmodified TCP is used on the Standard host-Supervisory Host section
- An optimised TCP is used on the Supervisory Host- Mobile Host section.
- The Supervisory Host (SH) adorns the same role as the proxy (Foreign Agent) in I-TCP.
- The SH is responsible for exchanging data to both the Standard host and the Mobile host.
- Here in this approach, we assume that the error bit rate is less as compared to other wireless links.
- So if any packet is lost, the retransmission has to occur from the original sender and not by the SH. (This also maintains the end-to-end TCP semantic)
- The SH monitors the ACKs (ACK means acknowledgement) being sent by the MH. If for a long period ACKs have not been received, then the SH assumes that the MH has been disconnected (maybe due to failure or moved out of range, etc...).
- If so the SH chokes the sender by setting its window size to 0.
- Because of this the sender goes into persistent mode i.e. the sender’s state will not change no matter how long the receiver is disconnected.
- This means that the sender will not try to retransmit the data.
- Now when the SH detects a connectivity established again with the MH (the old SH or new SH if handover), the window of the sender is restored to original value.
Advantages:
• Maintains the TCP end-to-end semantics. (No failed packet retransmission is done by the SH .All job handled by original sender)
• Does not require the change in the sender’s TCP.
• If MH disconnected, it doesn’t waste time in useless transmissions and shrinks the window size to 0.
• No need to send old buffer data to new SH in case of handover (as in I-TCP).
Disadvantages:
• M-TCP assumes low bit error which is not always true. So, any packet loss due to bit-errors occurring, then its propagated to the sender.
• Modifications are required for the MH protocol software.