an adaptive tcp protocol for lossy mobile environment choong seon hong feb. 27, 2003
TRANSCRIPT
![Page 1: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/1.jpg)
An Adaptive TCP Protocol for Lossy An Adaptive TCP Protocol for Lossy Mobile EnvironmentMobile Environment
Choong Seon Hong
Feb. 27, 2003
![Page 2: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/2.jpg)
ContentsContents
• Introduction
• Related Works
• TCP HACK
• Our Proposal: Extended TCP HACK
• Conclusions and Future Work
![Page 3: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/3.jpg)
IntroductionIntroduction
• TCP is a transport layer protocol designed for the wired links.
Slow-start algorithm is triggered after packet loss is detected
Receiver
Sender
• It incurs end-to-end performance degradation in wireless environments where packet loss is very high.
![Page 4: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/4.jpg)
Related WorksRelated Works• Indirect TCP(I-TCP) [A.Bakre 1995]• Mobile TCP (M-TCP) [K.Brown 1997]
– Optimized TCP between MH and BS, No caching at BS
• Explicit bad-state notification (EBSN) [N.Vaidya 1999]– Partial ACK from BS
• Snoop protocol [H.Balakrishnan 1995]• New Snoop protocol [ Jian-Hao Hu 2000]
– Two- layer hierarchical cache scheme (MSC and BS)
• TCP HACK:TCP Header Checksum Option [R.K.Balan 2001] –
![Page 5: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/5.jpg)
Introduction(cont’d)Introduction(cont’d)
Drawbacks using Performance Enhancing Proxies (PEPs)
• The intermediary will become the bottleneck • Add the third point of failure besides the
endpoints themselves • Cannot handle encrypted traffic • Asymmetric routing
![Page 6: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/6.jpg)
Strengths and Drawbacks of Existing SolutionsStrengths and Drawbacks of Existing Solutions
I-TCP
M-TCP
Snoop New Snoop
EBSN Freeze-TCP
TCP Hack
End-to-end TCP principle?
N Y Y Y N Y Y
Requires the intermediate node to modify TCP?
Y
Y
Y
Y
Y
N
N
Handle encrypted traffic?
N N N N N Y Y
Need symmetric routing?
Y Y Y Y Y N N
Handle longDisconnections?
Y Y N Y Y Y N
Handle frequent disconnections?
Y Y N Y Y Y N
Handle high bit error rate?
Y Y Y Y N N Y
![Page 7: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/7.jpg)
TCP HACKTCP HACK• TCP HACK (Header Checksum option) is a
novel mechanism proposed to improve original TCP in lossy link.
• It cannot work well when the ACK packets are also corrupted much.
• Proposing an Extended TCP HACK.
![Page 8: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/8.jpg)
TCP HACK(cont’d)TCP HACK(cont’d)
• Data portion is usually much larger than header portionCorruptions are far more likely in data
portion• Packets with corrupted headers are unlikely
to reach destination
X
XData PortionHea
der
Por
tion
![Page 9: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/9.jpg)
TCP HACK(cont’d)TCP HACK(cont’d)
TCP Header Checksum option
TCP Header Checksum ACK option
![Page 10: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/10.jpg)
TCP SenderTCP Sender
Header checksum option enabled?
Continue as normal
1) Calculate header checksum of segment2) Continue as normal
Yes
No
Data segment to be sent
Modifications to the TCP sender
TCP HACK(cont’d)TCP HACK(cont’d)
![Page 11: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/11.jpg)
Modifications to the TCP receiver
TCP segment corrupted?
Continue as normal
1) Recover sequence number of corrupted segment from header. 2) Generate ‘special’ ACK containing the sequence number of the corrupted segment.
Yes
No
Data segment received
Header portion corrupted?
Discard PacketYes
No
TCP ReceiverTCP Receiver
TCP HACK(cont’d)TCP HACK(cont’d)
![Page 12: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/12.jpg)
Modification to the ACK processing
Is this a special ACK?
Continue as normal
1) Extract sequence number of corrupted segment2) Selectively retransmit the segment 3) ACK is discarded without further processing
Yes
No
ACK segment receivedACK ProcessingACK Processing
TCP HACK(cont’d)TCP HACK(cont’d)
![Page 13: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/13.jpg)
Proposed Solution:Extended TCP HACKProposed Solution:Extended TCP HACK
• The special ACK in TCP HACK may be lost.• Extended TCP HACK:
– Add a buffer in the TCP receiver(denoted s_buffer)
– Save all sequence numbers into s_buffer• these sequence numbers are recovered from those
packets transmitted in the same window
– Send special ACK to the sender containing all the sequence numbers in the s_buffer.
– Sequence numbers in the s_buffer will be cleared if the retransmitted packets are received correctly or the timers are expired.
![Page 14: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/14.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
Kind=14 Length=4 1’s complement checksum
of TCP header and pseudo-IP header
Kind=16 Length: Variable
1st 32-bit sequence number of corrupted segment to resend 2nd 32-bit sequence number of corrupted segment to resend
nth 32-bit sequence number of corrupted segment to resend
….
TCP Header Checksum option
Extended TCP header Checksum ACK option
1st 32-bit sequence number of corrupted segment to resend
![Page 15: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/15.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
•The segments with sequence A, C and E are data corrupted but their headers can be recovered. •The segment with sequence B is correct •The segment with sequence D is corrupted in the header.
sender
E C B
s_buffer
AD
X : packet with sequence number Xreceiver
A
kind=16 length:6
32-bit sequence number: A
Extended TCP Header Checksum ACK option
![Page 16: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/16.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
The process of extended TCP HACK when receiving the segment with sequence number B
senders_buffer
AE C BD
X : packet with sequence number X
Normal ACK
generated by receiving segment B
![Page 17: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/17.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
The process of extended TCP HACK when receiving the segment with sequence number C
sender
E
s_buffer
ACD
X : packet with sequence number Xreceiver
C
kind=16 length:10
32-bit sequence number: A
Extended TCP Header Checksum ACK option
32-bit sequence number: C
![Page 18: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/18.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
The process of extended TCP HACK when receiving the segment with sequence number E
senders_buffer
AE
X : packet with sequence number Xreceiver
CE
kind=16 length:14
32-bit sequence number: A
Extended TCP Header Checksum ACK option
32-bit sequence number: C
32-bit sequence number: E
![Page 19: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/19.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
The process of extended TCP HACK when receiving the retransmitted segment with sequence number A
senders_buffer
A
A : retransmitted packet withsequence number A receiver
CE
![Page 20: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/20.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
Header checksumoption enabled?
Continue as pernormal
1) Calculate header checksum of segment2) Continue as per normal
Modifications to the TCP sender
Header checksumoption enabled?
Continue as pernormal
1) Calculate header checksum of segment2
Header checksumoption enabled?
Continue as pernormalContinue asnormal TCP
1) Calculate header checksum of segment21) Calculate header checksum of segment2) place the header checksum into the headerchecksum option
Yes
No
when sending outsegment
3) Continue as normal TCP
TCP SenderTCP Sender
Modifications to the TCP sender
![Page 21: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/21.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
Modifications to the TCP receiver
Yes
corrupted?
Yes
No
Modifications to the TCP receiver
TCP segmentcorrupted?
Continue as normal
1) Recover sequence number of corrupted segment from header.
2) Generate special ACK containing all the sequence numbers in the
s_buffer.
No
when receivng a datasegment
Header portion Discard Packet
3
) Save this sequence number in the s_buffer
TCP ReceiverTCP Receiver
Modifications to the TCP receiver
![Page 22: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/22.jpg)
Extended TCP HACK(cont’d)Extended TCP HACK(cont’d)
• ACK ProcessingACK Processing
Yes
No
ACK segmentreceived
Is this a specialACK(withoption 16)?
Continue as normal
1) Extract sequence numbers from the ACK option2) Selectively retransmit these segments3) ACK is discarded without further processing
Modification to the ACK processing
![Page 23: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/23.jpg)
Simulation ModelSimulation Model
Server Client
wireless link
Simulation Parameters
(simulation tool: OPNET modeler v8.0)Bandwidth of wireless link: 384Kbytes MSS: 536bytes
Burst length : 3 packets size of s_buffer: 40Byte
![Page 24: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/24.jpg)
Simulation Results(2/2)Simulation Results(2/2)
Throughput for various packet loss rates when corrupting on both directions
0 5 10 15
5
10
15
20
25
30
throughput(packets/s)
Percentage Packet Loss(%)
2
Original TCP
TCP HACK
Adaptive TCP
![Page 25: An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003](https://reader035.vdocuments.net/reader035/viewer/2022070305/55148ddd550346d36e8b506a/html5/thumbnails/25.jpg)
Conclusions and Future WorkConclusions and Future Work
• With our proposal, we can enhance the performance of TCP HACK in situations where not only the data on the forward path are corrupted much, but also the ACKs on the inverse path susceptible to packet corruption.
• Simulation results proved the efficiency of our proposal.
• More simulations should be done to test our extended TCP HACK.
• Studying on SCTP as streaming protocol in the wireless environment