4deda7d4-79ec-4ba5-a59e-3ee97f26bc23
4deda7d4-79ec-4ba5-a59e-3ee97f26bc23
4deda7d4-79ec-4ba5-a59e-3ee97f26bc23
Describe classical TCP improvements (Indirect TCP (I-TCP), snooping TCP, mobile TCP)
Highlight the advantages and disadvantages of indirect TCP (I-TCP), snooping TCP, mobile TCP
It supports many of the Internet's most popular application protocols and resulting
applications, including the World Wide Web, e-mail, File Transfer Protocol and
Secure Shell.
In the Internet protocol suite, TCP is the intermediate layer between the Internet
layer and application layer.
Control congestions in the networks: to not allow degradation of the network performance,
Control a packet flow between the transmitter and the receiver: to not exceed the
receiver's capacity.
Congestion Control
Congestion may appear from time to time even in carefully designed networks.
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.
Now the receiver does not directly tell the sender which packet is missing, but continues to
acknowledge all in-sequence packets up to the missing one.
The sender notices the missing acknowledgement for the lost packet and assumes a packet
loss due to congestion.
Retransmitting the missing packet and continuing at full sending rate would now be unwise, as
this might only increase the congestion.
To mitigate congestion, TCP slows down the transmission rate dramatically.
All other TCP connections experiencing the same congestion do exactly the same so the
congestion is soon resolved.
Slow Start
The behavior TCP shows after the detection of congestion is called slow start.
The start size of the congestion window is one segment (TCP packet).
This scheme doubles the congestion window every time the acknowledgements
This is called the exponential growth of the congestion window in the slow start
mechanism.
Problems with Traditional TCP in Wireless
Environments
Slow Start mechanism in fixed networks decreases the efficiency of TCP if used
Error rates on wireless links are orders of magnitude higher compared to fixed
fiber or copper links. This makes compensation for packet loss by TCP quite
difficult.
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.
Standard TCP reacts with slow start if acknowledgements are missing, 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
Standard TCP is used between the fixed computer and the access
Instead of the mobile host, the access point now terminates the
access point is now seen as the mobile host for the fixed host and
Disadvantages of I-TCP
Disadvantages of M-TCP
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.
If the MAC layer notices the upcoming interruption early enough, both the mobile 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.
Because TCP time simply does not advance, so no timers expire.
Advantages and Disadvantages of Transmission/Time-out Freezing
Advantages
sequence no or acknowledgements
Disadvantages
and FA.
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.
A single acknowledgement confirms reception of all 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 just in the case of a mobile network, but for any network.
Using selective retransmission, 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 determine precisely which packet is needed and can retransmit it.
The advantage of this approach is that a sender retransmits only the lost packets. This lowers
The disadvantage is that a more complex software on the receiver side is needed.
Transaction-oriented TCP
Assume an application running on the mobile host that sends a short request to a server from time to time,
which responds with a short message and it requires reliable TCP transport of the packets.
Standard TCP is made up of three phases: setup, data transfer and release.
First, TCP uses a three-way handshake to establish the connection. At least one additional packet is usually
needed for transmission of the request, and requires three more packets to close the connection via a three-
way handshake.
So, for sending one data packet, TCP may need seven packets altogether.
This kind of overhead is acceptable for long sessions in fixed networks, but is quite inefficient for short
messages or sessions in wireless networks. This led to the development of transaction-oriented TCP (T/TCP).
T/TCP can combine packets for connection establishment and connection release with user data packets.
This can reduce the number of packets down to two instead of seven.
The obvious advantage for certain applications is the reduction in the overhead which standard TCP has for
connection setup and connection release.
Disadvantage is that it requires changes in the software in mobile host and all correspondent hosts.
Classical Enhancements To TCP For Mobility: A
Comparison
For Further Readings
https://www.fortinet.com/resources/cyberglossary/tcp-ip
https://www.geeksforgeeks.org/what-is-transmission-control-protocol-tcp/
https://www.khanacademy.org/computing/computers-and-internet/xcae6f4a7ff015e7d:the-internet/
xcae6f4a7ff015e7d:transporting-packets/a/transmission-control-protocol--tcp
https://www.tutorialspoint.com/data_communication_computer_network/transmission_control_protocol.htm
https://www.youtube.com/watch?v=kio27um--pg
https://www.youtube.com/watch?v=VHQMysYWGgA
https://www.youtube.com/watch?v=UUSh5nwcDhs
http://www.idc-online.com/technical_references/pdfs/data_communications/Classical_TCP_Improvements.pdf
https://www.geeksforgeeks.org/snooping-tcp/
https://www.researchgate.net/figure/Classification-of-TCP-improvement-schemes-for-wireless-ad-hoc-
networks_fig8_236671492
Practical Session
MOBILE APPLICATION
DEVELOPMENT (ANDROID)
In this session, you will learn how to design a simple splash
screen on android studio.
A splash screen is a graphical control element consisting of a
window containing an image, a logo, and the current version
of the software. A splash screen usually appears while a game
or program is launching.
Step 1
Add SplashScreen
activity
Step 2
implementation
'gr.pantrif:easy-android-
splash-screen:0.0.1'
Step 4
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//set to view
View view=easySplashScreen.create(); Step 6: Run your project
setContentView(view);
}
}
Thank you
for your