Title: Module F Transport Layer over Wireless Networks
1Module FTransport Layer over Wireless Networks
Mobile Networks
- P. Papadimitratos and JP Hubaux
http//mobnet.epfl.ch
2Transmission Control Protocol (TCP)
- Reliable, in-order data delivery
- Flow control
- Congestion avoidance and control
- End-to-end semantics
3TCP (contd)
TCP transfers a stream of bytes reliably
Application writes bytes in send buffer
Application reads bytes from receive buffer
Write 45 bytes Write 15 bytes Write 20 bytes
Read 40 bytes Read 40 bytes
Application layer
Transport layer
Segments
Send buffer
Receive buffer
ACKs
Transmitter
Receiver
Internet
4 TCP (contd)
- Light traffic
- Arrival Rate ltlt R
- Low delay
- Can accommodate more
- Congestion onset
- Arrival rate approaches R
- Delay increases rapidly
- Throughput begins to saturate
- Saturation
- Arrival rate gt R
- Large delays, packet loss
- Useful application throughput drops
R
Throughput (bps)
Arrival Rate
Delay (sec)
Arrival Rate
R
5TCP (contd)
- Slow Start
- Increase congestion window size (cwnd) by one
segment for each received ACK - Congestion window increases exponentially
Segment
ACK
6TCP (contd)
- Congestion avoidance
- Progressively sets a congestion threshold
- When cwnd gt threshold, increase cwnd slowly
- cwnd per round-trip-time (RTT)
- Each time an ACK arrives, cwnd is increased by
1/cwnd - In one RTT, cwnd segments are sent, so total
increase in cwnd is cwnd x 1/cwnd 1 - cwnd grows linearly
7TCP (contd)
- Congestion detection
- Timeout or
- Receipt of duplicate ACKs
- Assumption current cwnd corresponds to available
bandwidth - Adjust congestion threshold ½ (current cwnd)
- Reset cwnd to 1
- Go back to slow-start
- Over several cycles expect to converge to
congestion threshold equal to about ½ the
available bandwidth
8Wireless and Mobile Networks
Wire-line Communication
Internet
Mobile Host (1)
Access Point
Wire-less Communication
Base Station
Mobile Host (2)
9Wireless and Mobile Networks (contd)
Internet
Mobile Host (1)
Access Point
- Wireless transmission errors
- High Bit Error Rates
- Packet (frame) loss
10Wireless and Mobile Networks (contd)
Internet
Base Station (B)
Mobile Host (2)
Base Station (A)
- Mobility
- Disconnection
- Hand-offs
- Delays
Mobile Host (2)
11Challenge
- TCP
- Assumptions for the Wire-line Internet
- Packet loss only due to congestion
- Packet loss is rare
- Wireless Mobile Networks
- TCP assumptions are not valid
- Problem TCP under-performs
- TCP cannot distinguish between packet losses due
to congestion and transmission or disconnection
errors - Reducing the congestion window when an error or a
disconnection occurs is not necessary - Throughput suffers
12Challenge (contd)
- Is it perhaps an easy problem?
- What if we simply increased the TCP timeout, to
take care of retransmissions at the data link
layer or the delay for the hand off?
13Solution Mobile Transport Protocols
- Modify TCP
- Not too easy throughout Internet
- What should be the target of a modification?
- Should we design a new protocol? Mobile TCP?
- How could this relate to IP and Mobile IP?
- Is this an important problem after all?
- Wireless links are now more reliable than in
mid-90s, but - Mobile platforms proliferate
- Mobile users are more demanding than ever
- Mobility is still a challenge
14Mobile Transport Protocols (contd)
- What can we do about
- Transmission errors?
- Mobility errors?
- Which part of the system functionality should we
modify - The sender?
- The receiver?
- An intermediate node?
- Some or all of the above?
15Mobile Transport Protocols (contd)
- Transmissions errors
- Hide error losses from the sender
- If the sender is unaware of the packet losses due
to errors, it does not reduce the congestion
window - Inform sender of packet loss cause
- If the loss is due to an error, the congestion
window is not reduced
- Mobility
- Hide mobility from the TCP sender
- Make TCP adaptive to mobility
16Mobile Transport Protocols (contd)
Elaarg02
- One classification of solutions
17Mobile Transport Protocols (contd)
- Connection Split (Indirect TCP or I-TCP)
- Do not change TCP on the wire-line part
- Split the TCP connection at the foreign agent
into two parts - One optimized for the wireless link
- The second for the wire-line communication
- No real end-to-end communication
- Host at the wire-line part hosts in the fixed
part of the network do not notice the
characteristics of the wireless part
18Mobile Transport Protocols (contd)
Access Point (foreign agent)
Mobile host
Internet
Standard TCP
Wireless TCP
19Mobile Transport Protocols (contd)
Access Point (1)
Socket migration and state transfer
Internet
Mobile Host
Access point (2)
- Indirect TCP (I-TCP)
- I-TCP socket and state migration
20Mobile Transport Protocols (contd)
- I-TCP Advantages
- No changes in the fixed network or hosts (TCP
protocol), all current TCP optimizations still
work - Wireless transmission errors do not propagate
to the wire-line network - Simple, effective
- I-TCP Disadvantages
- No end-to-end semantics
- An ACK does not imply that the receiver got the
packet what if the foreign agent crashes? - Higher end-to-end delays due to buffering and
forwarding to a new agent
21Mobile Transport Protocols (contd)
- Snooping TCP
- Transparent extension of TCP within the foreign
agent - Buffer packets sent to the mobile host
- Local retransmission Lost packets on the
wireless link, for both directions, are
retransmitted immediately by the mobile host or
foreign agent - Foreign agent snoops the packet flow,
recognizes acknowledgements in both directions - Change of TCP at the foreign agent
22Mobile Transport Protocols (contd)
Local Retransmission
Correspondent Host
Foreign Agent
Internet
Snooping of ACKs
Buffering of data
Mobile Host
End-to-end TCP connection
23Mobile Transport Protocols (contd)
- Snoop TCP
- Data transfer to the mobile host
- FA buffers data until it receives ACK from the MH
- FA detects packet loss via duplicated ACKs or
time-out - Data transfer from the mobile host
- FA detects packet loss on the wireless link via
sequence numbers - FA answers directly with a NACK to the MH
- MH can now retransmit data with only a very short
delay - Integration of the MAC layer
- MAC layer often has similar mechanisms to those
of TCP - Problems
- Snooping TCP does not isolate the wireless (as
I-TCP) - Snooping might be useless if encryption is used
24Mobile Transport Protocols (contd)
- Is the problem solved for the case of mobility as
well? - Split connection approach
- Hard state at access point must be moved to new
base station - Snoop approach
- Soft state need not be moved
- While the new access point builds new state,
packet losses may not be recovered locally - Frequent handoffs remain a problem
- Hard state should not be lost
- Soft state needs to be recreated for performance
25Mobile Transport Protocols (contd)
- Handling Hand-offs
- Provide sufficient overlap between cells to avoid
packet loss - Buffer packets at BS
- Discard packets after a short interval
- If handoff occurs before the interval expires,
forward packets to the new base station
26Mobile Transport Protocols (contd)
- Mobile TCP (M-TCP)
- Handling of long and frequent disconnections
- M-TCP splits connection as I-TCP does
- Foreign agent (or supervisory host)
- No caching, no retransmission
- Monitors all packets
- If it detects a disconnection
- It sets the senders window size to 0
- Sender automatically goes into persist mode
- Advantages
- ETE semantics, no buffer forwarding
- Disadvantage
- Wireless link loss propagates to the wire-line
network
27Mobile Transport Protocols (contd)
Elaarg02
- Summary of mobile transport protocols
- Checklist for problems relating to mobile and
wireless networks
28Conclusions
- Many proposed techniques
- Different characteristics and requirements
- Important to maintain end-to-end semantics
- End-to-end techniques do not require assistance
from lower layers - Additional techniques not covered here
- Lower layers may help improve TCP performance
without TCP-specific actions - IEEE 802.11
- Explicit notification (by the link layer)
29Conclusions (contd)
- Questions to think about
- Sometimes the TCP congestion response may be
appropriate in the case of transmissions errors.
True or False, and Why? - A reliable data link protocol (e.g., IEEE 802.11)
can solve all the problems that degrade the TCP
performance over a wireless link. True or False,
and Why? - Significant effort was made by mobile transport
protocols to combat throughput inefficiencies.
But starting with a large congestion window after
a hand-off is not a good idea after all. True or
False, and Why? - We considered a single wireless link or a single
hop, e.g., between an Access Point or a Base
Station and a Mobile Node. Solutions for Mobile
Transport over a single hop will be equally
effective when communication takes place across
multiple hops (See upcoming lectures). True or
False, and Why?
30Reference
- Elaarg02 H. Elaarg, Improving TCP Performance
over Mobile Networks, ACM Computing Surveys,
Vol. 34, No. 3, September 2002
31Fast Retransmit Fast Recovery
- Congestion causes many segments to be dropped
- If only a single segment is dropped, then
subsequent segments trigger duplicate ACKs before
timeout - Can avoid large decrease in cwnd as follows
- When three duplicate ACKs arrive, retransmit lost
segment immediately - Reset congestion threshold to ½ cwnd
- Reset cwnd to congestion threshold 3 to account
for the three segments that triggered duplicate
ACKs - Remain in congestion avoidance phase
- However if timeout expires, reset cwnd to 1
- In absence of timeouts, cwnd will oscillate
around optimal value
SN1
ACK2
SN2
SN3
SN4
ACK2
SN5
ACK2
ACK2
32TCP Congestion Control Fast Retransmit Fast
Recovery
Congestion avoidance
20
Time-out
15
Threshold
Congestion window
10
Slow start
5
0
Round-trip times