250 likes | 282 Views
Satellite TCP. Lecture 19 04/10/02. Announcements …. Project (preliminary report) Generalization of model, DSR changes required Individual extensions to be tested and evaluated first Extra-credit questions posted on web Any other questions?. Puzzle 14.
E N D
Satellite TCP Lecture 19 04/10/02
Announcements … • Project (preliminary report) • Generalization of model, DSR changes required • Individual extensions to be tested and evaluated first • Extra-credit questions posted on web • Any other questions?
Puzzle 14 • Consider a professor telling his class: “There will be a surprise exam during class next week” • 5 days in a week, class meets every day • Can the professor give a surprise exam? • Surprise: Student does not know at the beginning of class that the exam is during that class SEP Paradox!
WTCP – Recap • For wide-area wireless networks • Rate-based transmissions • Inter-packet delay as congestion indicator • Packet-pair based start-up • Non-congestion loss detection • No RTOs • Reliability …
Reliability • Selective acknowledgements • SACKs very useful in TCP when random losses occur • Better utilization of the network resources (no unnecessary retransmissions)
Reliability (contd.) • No retransmit timeouts • Since RTOs cannot be relied upon, WTCP does not use RTOs • Use probe packets to recover from suffix losses • ACK frequency tuned by sender based on factors such as (a) observed loss rate on reverse path, (b) round-trip time, (c ) half-duplex or full-duplex nature of channel
WTCP Algorithm • Congestion control • 3 phases: increase, decrease, and maintain Chosen based on long-term and short term averages in inter-packet separation • RTT computation (for probing) • Using loss profile • Increase, decrease, maintain phases
WTCP Reliability • SACK algorithm • Probe packets
Inter-satellite Network Satellite Networks • LEOs (~1500Km), MEOs (20000Km), GEOs (35000Km)
Satellite Network Characteristics • High latencies • GEOs: 550ms • MEOs: 250ms • LEOs: 50ms • Asymmetric paths • Downlink: up to a few Mbps • Uplink: up to a few tens of kilobits • Transmission errors
High Latencies • More time in slow-start • Large bandwidth delay products
Slow-start and Delays • Time required by slow-start to reach a target bit rate B: • T = rtt * (1 + log2B*rtt/l) • Assuming 1Mbps, 1KB • LEO: 180ms • MEO: 1.5 seconds • GEO: 3.91 seconds • Connections might entirely be in the slow-start phase before they terminate • Why is this bad?
Approaches to handle large delays • Increasing initial window size • Split connection approaches • Fast-start • Use values from previous connections • Use low-priority packets • Cons?
TCP-Peach • Sudden start • Send 1 real packet, and N dummy packets (N = rwnd-1) • After 1 round-trip time, depending upon the number of ACKs received, set the congestion window • Assume dummy packets can have lower priority
TCP Peach – Sudden start • 0 < t < RTT • Sender transmits a data-segment first and (rwnd-1) dummy segments, in such a way and the data and dummy segment transmissions are uniformly distributed in an interval equal to RTT • RTT < t < 2*RTT • ACKs arrive at sender (for each ACK, increase congestion window by 1) • t > 2*RTT • Congestion avoidance
High Bandwidth-delay products • Default TCP advertised window can scale up to 64KB • GEOs: 10 Mbps and 0.5 seconds (5 Mb)! • Lower utilization
Large BDPs • Window scaling • 32 bit windows (instead of 16 bits) with a “scale factor” agreed upon through the exchange of an option during start-up • Multiple TCP connections for the same application
Transmission Errors • TCP infers random wireless losses as congestion related losses • Consequently, it reduces congestion window drastically
TCP Peach – Rapid Recovery • Similar to sudden start approach • Perform fast-retransmit just as in TCP Reno • However, during fast recovery, while limiting the congestion window to cwnd/2, also transmit N dummy packets (set to cwnd) • After receiving cwnd/2 dummy ACKs, increase congestion window by 1 for every ACK thereafter
Path Asymmetry • Remove the necessity for per-packet ACKs • STP (Satellite Transport Protocol) • Periodic NACKs or status update (STAT) messages from the receiver to the sender • Sender (based on the periodicity of the NACKs or STATs) computes the number of packets it can transmit and spaces the transmissions accordingly
Puzzle 15 • A candy store has two types of candy: C1 and C2. C1 costs one dollar while C2 costs seventy five cents. The costs are put up on a black board visible to anyone who enters. • Person A enters a candy store, gives one dollar to the person at the counter, and asks for a piece of candy. The counter-clerk not surprisingly, asks A which of the two A wants • Person B enters the store, gives one dollar to the clerk. The clerk gives B candy C1 (both C1 and C2 are in stock). Why?
Recap • Satellite Networks • 3 problems • Large BDPs • Large start-up delays • Transmission errors • Path asymmetry