Date post: | 30-Dec-2015 |
Category: |
Documents |
Upload: | vincent-cabrera |
View: | 17 times |
Download: | 0 times |
Performance Improvement of TCP Performance Improvement of TCP in Wireless Cellular Network in Wireless Cellular Network
Based on Acknowledgement ControlBased on Acknowledgement Control
Osaka UniversityOsaka University
Masahiro MiyoshiMasahiro Miyoshi, Masashi , Masashi Sugano, Masayuki MurataSugano, Masayuki Murata
ContentsContents
BackgroundsBackgrounds Past ResearchesPast Researches ObjectiveObjective Proposed methodProposed method EvaluationEvaluation ConclusionConclusion
TCP over wireless cellular network TCP over wireless cellular network
Wired terminalWired terminal
[In the case of Web documents downloaded][In the case of Web documents downloaded]TCP segment is transmitted from the wired terminals TCP segment is transmitted from the wired terminals towards the wireless terminal, between wireless link towards the wireless terminal, between wireless link and wired link.and wired link.
TCP
ACK→→
Base Base StationStation
←←
Wireless terminalWireless terminal
WebWebWired linkWired link
Wireless linkWireless link
ServerServerdetecting detecting
packet losspacket loss
TCP uses a window-based congestion control.TCP uses a window-based congestion control.When packet loss is detected, When packet loss is detected, TCP recognizes the congestion occurrence of the network TCP recognizes the congestion occurrence of the network and throttles the window size.and throttles the window size.
TCP TCP・・・・・・
ClientClient
TCP Congestion controlTCP Congestion control
congestioncongestion
Throttling Throttling the window sizethe window size
How to detect packet How to detect packet lossloss
Retransmission timeout Retransmission timeout Duplicate ACKDuplicate ACK
There are two primarily mechanism There are two primarily mechanism
Calculating Calculating
RTO RTO
Retransmission Retransmission timeouttimeout
Setting retransmission timer Setting retransmission timer
TCP sender sets retransmission timer.TCP sender sets retransmission timer. TCP sender calculates RTO=f(RTT) .TCP sender calculates RTO=f(RTT) . If the ACK for the timed packet is not received, If the ACK for the timed packet is not received,
before the timer overflow, the packets is before the timer overflow, the packets is assumed to be lost.assumed to be lost.
TCP
ACK
←←
Not received !! Not received !! → → packet losspacket loss
TCP senderTCP senderTCP receiverTCP receiver
TCP senderTCP sender
Duplicate ACKDuplicate ACK
Packet Packet lossloss
TCP sender sends TCP segment added on sequence no.TCP sender sends TCP segment added on sequence no. TCP receiver sends ACK added on sequence no, which should bTCP receiver sends ACK added on sequence no, which should b
e received.e received. If triple duplicate ACKs are received continuity,If triple duplicate ACKs are received continuity, the packets is assumed to be lost.the packets is assumed to be lost.
1
2
←←
Three duplicate ACKs !! Three duplicate ACKs !! → → packet losspacket loss
2 3 4
TCP segmentTCP segment
ACKACK
TCP receiverTCP receiver
221
On a wireless link, packet loss occurs due to On a wireless link, packet loss occurs due to transmission errors.transmission errors. ↓ ↓ TCP can not distinguish packet loss between due toTCP can not distinguish packet loss between due to congestion and due to transmission errors. congestion and due to transmission errors. ↓ ↓Packet losses due to the transmission errors Packet losses due to the transmission errors cause cause unexpected degradationunexpected degradation of TCP throughput. of TCP throughput.
Mobile Mobile TerminalTerminal
Base Base StationStation
Packet lossPacket loss
due to the transmission errorsdue to the transmission errors
TCP over wireless linkTCP over wireless link
Degradation of TCP throughputDegradation of TCP throughput
Past researches Past researches
(1) (1) The TCP segments are cashed at the base The TCP segments are cashed at the base station.station.
(2) (2) The TCP segments are retransmitted at the base The TCP segments are retransmitted at the base station, if packet loss is detected on wireless link.station, if packet loss is detected on wireless link.
Snoop Protocol Snoop Protocol [Balakrishnan95acm][Balakrishnan95acm]
MH BS FH
ACK→ACK→
←←TCPTCP
cashing TCP segmentcashing TCP segment
Wireless linkWireless link
RetransmitRetransmit
- Snoop Protocol -- Snoop Protocol -
Past researchesPast researchesExplicit Notification[Biaz99thesis]Explicit Notification[Biaz99thesis]
(1) The TCP segment sequence numbers are cashed at BS.(1) The TCP segment sequence numbers are cashed at BS.
(2) The packet is lost on the wireless link.(2) The packet is lost on the wireless link.
(3) The ACK packet is attached “ELN bit active” at BS, if (3) The ACK packet is attached “ELN bit active” at BS, if the packets cashed sequence number is lost.the packets cashed sequence number is lost.
(4) FH takes appropriate action receiving ELN bit.(4) FH takes appropriate action receiving ELN bit.
(ex. TCP sender does not perform congestion control.)(ex. TCP sender does not perform congestion control.)
MH BS FH
ACK→ACK→
←←TCPTCP
Cashing TCP Cashing TCP sequence numbersequence number
7 6 5
7
56
7 7 5
Attaching ELN bitAttaching ELN bit
- ELN -- ELN -
Wireless linkWireless link
Wired linkWired link
Packet Packet lossloss
Past researchesPast researches - Disadvantage -- Disadvantage -
Above solutions have not been Above solutions have not been realized (because these require realized (because these require major changes to network major changes to network infrastructuresinfrastructures))
Snoop ProtocolSnoop Protocol・・ Buffering TCP segment at BSBuffering TCP segment at BS・・ Retransmission TCP segment at BSRetransmission TCP segment at BS
Explicit NotificationExplicit Notification・・ Cashing TCP sequence number at BSCashing TCP sequence number at BS・・ Attaching ELN bit at BSAttaching ELN bit at BS・・ Receiving ELN bit and appropriate action at FHReceiving ELN bit and appropriate action at FH
ObjectivesObjectives
New method for improving the performance New method for improving the performance of TCP by a of TCP by a minor changeminor change
We propose a method for improving the performance We propose a method for improving the performance of TCP in treating the ACK packetsof TCP in treating the ACK packets
Proposed MethodProposed Method
MH BS FHACK→ACK→
←←TCPTCP
TCP receiver does not send one ACK, but multiple ACKsTCP receiver does not send one ACK, but multiple ACKs ↓ ↓TCP would becomes robust against transmission errors TCP would becomes robust against transmission errors
Wireless linkWireless link
ACKACK
・・・・
ACKACK
Proposed MethodProposed Method
(1)(1) FH receives one ACKFH receives one ACK → →it continues the normal operationit continues the normal operation(2) FH receives more than two ACKs (2) FH receives more than two ACKs → → it recognizes as duplicate ACKsit recognizes as duplicate ACKs(3) Only if all of multiple ACKs are lost(3) Only if all of multiple ACKs are lost → → the timeout occurs at the FH.the timeout occurs at the FH.
MH BS FHACK→ACK→
←←TCPTCPWireless linkWireless link
ACKACKACKACK
Proposed MethodProposed Method
It is effective in transmitting two or more ACKs in the rIt is effective in transmitting two or more ACKs in the range of the high transmission error rateange of the high transmission error rate
On the other hand, if the error rate is low, the TCP perOn the other hand, if the error rate is low, the TCP performance might deteriorate.formance might deteriorate.
- Appropriate number Appropriate number of ACKs of ACKs --
Appropriate number of ACKs Appropriate number of ACKs ??
Proposed MethodProposed Method
)321()8
33,1min(
32
1
2ppbp
Tobp
RTT
STCP
Packet loss rate
Round trip timeTime out time
)()()()()( npnpnpnpnp errbufferrbuff Duplicate ACKTransmission error
- Deriving appropriate Deriving appropriate number of ACKs number of ACKs --
We derived appropriate number of We derived appropriate number of ACK ACK
using following expressionusing following expression
0
5
10
15
20
25
30
35
40
0 0.1 0.2 0.3 0.4 0.5
packet loss rate perr
thro
ughp
ut (
Kbp
s)
1ACK2ACKs3ACKs
Proposed MethodProposed Method
Round Trip Time (RTT): 100msTime out time (To): 400msPaket loss rate (pbuff): 0.01
Parameter sets
- Analysis result Analysis result --
Transmission of two ACKs can achieve the best performance in the range of 0.1 < perr < 0.47.
EvaluationEvaluation
Parameter sets
- Simulation modelSimulation model - -
We evaluate our proposed method by ns-2 simulator
384Kbps
64Kbps 1Mbps
1Mbps,τ2
,τ1
,τ3 ,τ4
MH BS FH
ACK→ACK→
←←TCPTCP
Wireless linkWireless link
[ Network [ Network Model ]Model ]
Number of wireless terminal 1TCP segment size 100 byte
ACK size 40 byteBuffer size (Wireless Terminal, BS, Wired
Terminal)50 Kbyte
Propagation delay (τ1,τ2,τ3,τ4) 1 ms
EvaluationEvaluation
0
10
20
30
40
50
60
70
0 0.1 0.2 0.3 0.4 0.5
packet error rate: perr
thro
ughp
ut (
Kbp
s) 1ACK2ACKs
Transmission of two ACKs can improve the throughput with perr larger than 0.05.
- Simulation result (throughput) Simulation result (throughput) --
EvaluationEvaluation - Simulation result (window size) Simulation result (window size) --
0
2
4
6
8
10
10 11 12 13 14 15time (s)
Win
dow s
ize
(seg
men
t)
1ACK2ACKs
Sending more TCP segmentLarger window size
Proposed method is more effective
Proposed MethodProposed Method
The wireless terminal sends multiple ACKs, The wireless terminal sends multiple ACKs, when twhen the packet error probability of the wireless network he packet error probability of the wireless network pperrerr exceeds the threshold value. exceeds the threshold value.
We explain the estimation method of packet error rate on the radio link.
Estimation on packet loss rateEstimation on packet loss rate
take place independently. perr is represented this expressionby observation value p, and given parameter by RED router pbuff
perr : Packet loss rate on the radio link
pbuff : Packet loss rate on the buffer overflows at the bottleneck buffer
bufferr p
pp
111
We assumed
MH BS FHACK→ACK→
←←TCPTCPWireless linkWireless link
Pbuff(given parameter by RED router)perrP (observation value)
Calculating p Calculating p by the moving average methodby the moving average method
We introduce a method of calculating p by the moving average method, following an estimation method of RTT values in TCP.
In monitoring p at the wireless terminal, the value of p is changeful
]1[8
1][
8
7][ kpkpkp
0]0[ p
...2,1,0k
average
00.050.1
0.150.2
0.250.3
0.35
0 10 20 30 40 50time(s)
Pac
ket
loss
rat
e p
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0 10 20 30 40 50
time(s)
Pac
ket
loss
rat
e p
Calculating p Calculating p by the moving average methodby the moving average method
1 Number of TCP connections2 3 4 5 4 3 2 15
Moving average valueObservation value
We show the moving average values are good agreements by the simulation, when the number of TCP connections are changed.
ConclusionConclusion
We have presented a method for improving TCP thWe have presented a method for improving TCP throughput in a wireless cellular network, which needroughput in a wireless cellular network, which needs changes of TCP layer only by the side of a mobile s changes of TCP layer only by the side of a mobile terminal. terminal.
By means of simulation, we have revealed that TCBy means of simulation, we have revealed that TCP throughput can be improved in the range with thP throughput can be improved in the range with the high error rate of the radio link as we have expece high error rate of the radio link as we have expected.ted.