1 Impact of transmission errors on TCP performance (Nitin Vaidya)

27
1 Impact of transmission errors on TCP performance (Nitin Vaidya)

Transcript of 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

Page 1: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

1

Impact of transmission errorson TCP performance

(Nitin Vaidya)

Page 2: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

2

Tutorial Outline

Wireless technologies TCP basics Impact of transmission errors on TCP performance Approaches to improve TCP performance

Classification Discussion of selected approaches

Page 3: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

3

Random Errors

If number of errors is small, they may be corrected by an error correcting code

Excessive bit errors result in a packet being discarded, possibly before it reaches the transport layer

Page 4: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

4

Random Errors May Cause Fast Retransmit

40 39 3738

3634

Example assumes delayed ack - every other packet ack’d

Page 5: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

5

Random Errors May Cause Fast Retransmit

41 40 3839

3634

Example assumes delayed ack - every other packet ack’d

Page 6: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

6

Random Errors May Cause Fast Retransmit

42 41 3940

36

Duplicate acks are not delayed

36

dupack

Page 7: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

7

Random Errors May Cause Fast Retransmit

40

363636

Duplicate acks

4143 42

Page 8: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

8

Random Errors May Cause Fast Retransmit

41

3636

3 duplicate acks triggerfast retransmit at sender

4244 43

36

Page 9: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

9

Random Errors May Cause Fast Retransmit

Fast retransmit results in retransmission of lost packet reduction in congestion window

Reducing congestion window in response to errors is unnecessary

Reduction in congestion window reduces the throughput

Page 10: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

10

Sometimes Congestion Response May be Appropriate in Response to Errors

On a CDMA channel, errors occur due to interference from other user, and due to noise [Karn99pilc] Interference due to other users is an indication of

congestion. If such interference causes transmission errors, it is appropriate to reduce congestion window

If noise causes errors, it is not appropriate to reduce window

When a channel is in a bad state for a long duration, it might be better to let TCP backoff, so that it does not unnecessarily attempt retransmissions while the channel remains in the bad state [Padmanabhan99pilc]

Page 11: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

11

Various Schemes

Link level mechanisms Split connection approach TCP-Aware link layer TCP-Unaware approximation of TCP-aware link layer Explicit notification Receiver-based discrimination Sender-based discrimination

For a brief overview, see [Dawkins99,Montenegro99]

Page 12: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

12

Split Connection Approach

Page 13: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

13

Split Connection Approach

End-to-end TCP connection is broken into one connection on the wired part of route and one over wireless part of the route

A single TCP connection split into two TCP connections if wireless link is not last on route, then more than two TCP

connections may be needed

Page 14: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

14

Split Connection Approach

Connection between wireless host MH and fixed host FH goes through base station BS

FH-MH = FH-BS + BS-MH

FH MHBS

Base Station Mobile HostFixed Host

Page 15: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

15

Split Connection Approach

Split connection results in independent flow control for the two parts

Flow/error control protocols, packet size, time-outs, may be different for each part

FH MHBS

Base Station Mobile HostFixed Host

Page 16: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

16

Split Connection Approach

wireless

physical

link

network

transport

application

physical

link

network

transport

application

physical

link

network

transport

application rxmt

Per-TCP connection state

TCP connection TCP connection

Page 17: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

17

Split Connection ApproachIndirect TCP [Bakre95,Bakre97]

FH - BS connection : Standard TCP BS - MH connection : Standard TCP

Page 18: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

18

Split Connection ApproachSelective Repeat Protocol (SRP) [Yavatkar94]

FH - BS connection : standard TCP BS - FH connection : selective repeat protocol on top

of UDP

Performance better than Indirect-TCP (I-TCP), because wireless portion of the connection can be tuned to wireless behavior

Page 19: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

19

Split Connection Approach : Other Variations

Asymmetric transport protocol (Mobile-TCP) [Haas97icc]

Low overhead protocol at wireless hosts, and higher overhead protocol at wired hosts smaller headers used on wireless hop (header compression) simpler flow control - on/off for MH to BS transfer MH only does error detection, BS does error correction too No congestion control over wireless hop

Page 20: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

20

Split Connection Approach : Other Variations

Mobile-End Transport Protocol [Wang98infocom] Terminate the TCP connection at BS

TCP connection runs only between BS and FH

BS pretends to be MH (MH’s IP functionality moved to BS)

BS guarantees reliable ordered delivery of packets to MH

BS-MH link can use any arbitrary protocol optimized for wireless link

Idea similar to [Yavatkar94]

Page 21: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

21

Split Connection Approach : Classification

Hides transmission errors from sender Primary responsibility at base station If specialized transport protocol used on wireless,

then wireless host also needs modification

Page 22: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

22

Split Connection Approach : Advantages

BS-MH connection can be optimized independent of FH-BS connection Different flow / error control on the two connections

Local recovery of errors Faster recovery due to relatively shorter RTT on wireless link

Good performance achievable using appropriate BS-MH protocol Standard TCP on BS-MH performs poorly when multiple packet

losses occur per window (timeouts can occur on the BS-MH connection, stalling during the timeout interval)

Selective acks improve performance for such cases

Page 23: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

23

Split Connection Approach : Disadvantages

End-to-end semantics violated ack may be delivered to sender, before data delivered to the

receiver May not be a problem for applications that do not rely on

TCP for the end-to-end semantics

FH MHBS

40

39

3738

3640

Page 24: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

24

Split Connection Approach : Disadvantages

BS retains hard state

BS failure can result in loss of data (unreliability) If BS fails, packet 40 will be lost Because it is ack’d to sender, the sender does not buffer 40

FH MHBS

40

39

3738

3640

Page 25: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

25

Split Connection Approach : Disadvantages

BS retains hard state

Hand-off latency increases due to state transfer Data that has been ack’d to sender, must be moved to new

base station

FH MHBS

40

39

3738

3640

MH

New base station

Hand-off

40

39

Page 26: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

26

Split Connection Approach : Disadvantages

Buffer space needed at BS for each TCP connection BS buffers tend to get full, when wireless link slower (one

window worth of data on wired connection could be stored at the base station, for each split connection)

Window on BS-MH connection reduced in response to errors may not be an issue for wireless links with small delay-bw

product

Page 27: 1 Impact of transmission errors on TCP performance (Nitin Vaidya)

27

Split Connection Approach : Disadvantages

Extra copying of data at BS copying from FH-BS socket buffer to BS-MH socket buffer increases end-to-end latency

May not be useful if data and acks traverse different paths (both do not go through the base station) Example: data on a satellite wireless hop, acks on a dial-up

channel

FH MH

data

ack