transmission control protocol
play

TRANSMISSION CONTROL PROTOCOL Jasleen Kaur Fall 2015 1 Impact - PDF document

11/12/15 COMP 635: WIRELESS NETWORKS TRANSMISSION CONTROL PROTOCOL Jasleen Kaur Fall 2015 1 Impact of Wireless on Protocol Layers Application layer service location new/adaptive applications multimedia Transport layer


  1. 11/12/15 ¡ COMP 635: WIRELESS NETWORKS TRANSMISSION CONTROL PROTOCOL Jasleen Kaur Fall 2015 1 ¡ Impact of Wireless on Protocol Layers Application layer service location new/adaptive applications multimedia Transport layer congestion/flow control quality of service Network layer addressing, routing device location hand-over Data link layer authentication media access/control multiplexing encryption Physical layer modulation interference attenuation frequency 2 ¡ 1 ¡

  2. 11/12/15 ¡ Outline q TCP Congestion Control Ø Issues in wireless networks q Link-layer approaches Ø Reliability through retransmissions q Splitting Ø Proxy-based solutions q Snooping Ø TCP-aware link layers q Making TCP smarter q TCP-unaware approaches 3 ¡ TCP Congestion Control q Goal: Ø Maintain transfer rate at the maximum that all involved resources can handle (max-min fairness) q Approach: Ø Ramp up sending rate till congestion detected § Rapid ramp up initially (Slow-Start) § Cautious ramp-up subsequently (Congestion Avoidance) Ø If congestion, reduce sending rate and resume ramp-up q Mechanisms: maintain congestion-window (Cwin) Ø Increasing Cwin: § Slow Start, Congestion Avoidance Ø Decreasing Cwin: § Retransmission Timeouts, Fast Retransmit/Recovery 4 ¡ 2 ¡

  3. 11/12/15 ¡ Congestion Avoidance Source ¡ Destination ¡ q Additive Increase: Ø Increment cwin by 1 MSS per RTT q Multiplicative Decrease: Ø Shrink cwin by at least 50% on packet loss … ¡ 70 ¡ 60 ¡ 50 ¡ 40 ¡ KB ¡ 30 ¡ 20 ¡ 10 ¡ Time (seconds) ¡ 1.0 ¡ 2.0 ¡ 3.0 ¡ 4.0 ¡ 5.0 ¡ 6.0 ¡ 7.0 ¡ 8.0 ¡ 9.0 ¡ 10.0 ¡ 5 ¡ Slow Start Behavior Source ¡ Destination ¡ q Goal: Ø Hastening up initial bandwidth discovery q For every new ACK received: Ø Increase exponentially (not linearly), when cwin < “ SSThresh ” § Double the number of packets-in-transit every RTT q After recovery from timeout: SSThresh = cwin/2 … ¡ cwin = 1 6 ¡ 3 ¡

  4. 11/12/15 ¡ Fast Retransmit/Recovery (FR/R) Sender ¡ Receiver ¡ q Fast Retransmit: Packet 1 ¡ Packet 2 ¡ Ø Goal: ACK 1 ¡ Packet 3 ¡ ACK 2 ¡ § Triggering retransmissions sooner Packet 4 ¡ than timeouts ACK 2 ¡ Packet 5 ¡ Ø Exploit: Packet 6 ¡ ACK 2 ¡ § Receivers send ACKs (when data ACK 2 ¡ received) even if they are duplicates of earlier ACKs Retransmit ¡ packet 3 ¡ Ø Heuristic: ACK 6 ¡ § Use receipt of 3 duplicate ACKs as indicator that next segment was lost q Fast Recovery: Ø Decrease cwin to SSThresh after fast retransmit 7 ¡ AIMD q Why is increase “additive” and decrease “multiplicative”? Ø Willingness to reduce congestion window greater than willingness to increase it Ø Necessary condition for stability Ø Consequences of having too large a window are worse than having too small a window 8 ¡ 4 ¡

  5. 11/12/15 ¡ Challenge in Wireless Networks q TCP congestion-detection mechanisms assume: Ø A packet loss is indicative of network congestion Ø Hence, source needs to regulate flow by reducing Cwin q Assumption closely true for wired networks (BER ~10 -6 ) q But with wireless, Ø Losses due to: § Errors (due to fading, fluctuations) § Mobility (user changes network) Ø Need not reduce CW in response … Ø But, TCP is e2e à à CANNOT see the network § Thus, TCP cannot classify the cause of loss à à CHALLENGE Dilemma: End-to-end interpretation of link-local metric 9 ¡ The Problem TCP connection application application application transport transport transport network network network lossy link link link physical physical physical Wireline ¡ wireless 10 ¡ 5 ¡

  6. 11/12/15 ¡ Impact of Misclassification 2.0E+06 Best ¡possible ¡ ¡ Sequence ¡number ¡(bytes) ¡ TCP ¡with ¡no ¡errors ¡ (1.30 ¡Mbps) ¡ 1.5E+06 TCP ¡Reno ¡ (280 ¡Kbps) ¡ 1.0E+06 5.0E+05 0.0E+00 0 10 20 30 40 50 60 Time ¡(s) ¡ 2 ¡MB ¡wide-­‑area ¡TCP ¡transfer ¡over ¡2 ¡Mbps ¡WaveLAN ¡ 11 ¡ SPLIT CONNECTION APPROACHES No Changes To Wired Internet 12 ¡ 6 ¡

  7. 11/12/15 ¡ 1 TCP = ½ TCP + ½ (TCP or XXX) Per-TCP connection state TCP connection TCP connection application application application rxmt transport transport transport network network network link link link physical physical physical wireless Base ¡ ¡ StaKon ¡ 13 ¡ Splitting Approaches q Indirect TCP [Baker97] Ø Fixed host (FH) to base station (BS) uses TCP Ø BS to mobile host (MH) uses another TCP connection q Selective Repeat [Yavatkar94] Ø Over FH to BS: Use TCP Ø Over BS to MH: Use selective repeat on top of UDP q No congestion control over wireless [Haas97] Ø Also use less headers over wireless § Header compression 14 ¡ 7 ¡

  8. 11/12/15 ¡ Indirect TCP (I-TCP) q Splitting of the TCP connection (at, e.g., the foreign agent) into 2 TCP connections Ø Optimized TCP protocol for mobile hosts Ø No changes to the TCP protocol for wired-Internet hosts mobile host access point „wired“ Internet (foreign agent) standard TCP “wireless” TCP 15 ¡ I-TCP Socket and State Migration access point 1 socket migration and state transfer Internet access point 2 mobile host 16 ¡ 8 ¡

  9. 11/12/15 ¡ Advantages: Indirect TCP q No changes to the fixed network necessary Ø No changes for the hosts (TCP protocol) necessary § Millions of computers use (variants of) this protocol Ø All current optimizations to TCP still work q Wireless transmission errors contained Ø Do not propagate into wired network q Simple to control Ø Mobile TCP is used only for one hop (FA à à MH) q Very fast retransmission of packets is possible Ø The short delay on the mobile hop is known 17 ¡ Issues With Splitting q E2E semantics totally broken Ø 2 separate connections Ø An ACK no longer means that receiver got packet § Foreign agents might crash q BS maintains hard state for each connection Ø What if MH disconnected from BS? Ø Huge buffer requirements at BS Ø What if BS fails? Ø Handoff between BS requires state transfer Ø Higher latency possible (buffering, forwarding) q What if Data and ACK travel on different routes? Ø BS will not see the ACK at all – splitting not feasible 18 ¡ 9 ¡

Recommend


More recommend