Lecture 19 22. transport protocol for ad-hoc


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Lecture 19 22. transport protocol for ad-hoc

  1. 1. Chandra Prakash LPU 19-22:::Transport protocol for Ad-Hoc
  2. 2. Objective 2  Introduction  Issues in Designing aTransport Layer Protocol for MANET  Designing Goals forTCP  Classification ofTransport Layer Solutions  TCP Over Ad HocWireless Networks,  OtherTransport Layer Protocols for Ad HocWireless Networks
  3. 3. 3 Need of NEW Network Architecture  The community recognizes the need for change  Wireline-centric network design is “obsolete”  New network environments have emerged  Ad hoc, sensors, consumer-owned, delay-tolerant  New networking technologies have emerged  UWB, cooperative approaches, MIMO, directed antennas Introduction
  4. 4. 4 New Category of Networks  Thousands of nodes, highly resource constrained, highly unreliable wireless links, low duty cycle (smartdust)  Tens - thousands of nodes, Nano-sensors  Hundreds of nodes, resource constrained, unreliable wireless links (Sensors)  Tens of nodes, resource constrained, wireless links, charged every day (PDAs)  Tens of nodes, resource constrained, wireless links, line powered (embedded devices)  Tens of nodes, resource constrained, wireless links, line powered (computers) Introduction
  5. 5. 5 A New Era Has Begun New Machines New Environments Applications New Networks Introduction
  6. 6. 6 The Role of Networking is Central Wireless Networking Embedded Systems Sensors Embedded Sensor Applications Introduction
  7. 7. 7 Overview of Transmission Control Protocol / Internet Protocol (TCP/IP)
  8. 8. 8 Internet Protocol (IP)  Packets may be delivered out-of-order  Packets may be lost  Packets may be duplicated
  9. 9. 9 TCP: A Brief Review  TCP:Transmission Control Protocol  Specified in 1974 (TCPTahoe)  Data stream TCP packets  Reliable end-to-end connection  Reliable In-order packet delivery  Implements congestion avoidance and control  Reliability achieved by means of retransmissions if necessary  End-to-end semantics  Acknowledgements sent toTCP sender confirm delivery of data received byTCP receiver  Ack for data sent only after data has reached receiver
  10. 10. TCP:--- INTRODUCTION 10  One of the most popular and widely used end-to-end protocols for the Internet today.  In routing Protocol, packets are relayed hop-by-hop toward their destination.  TCP provides reliable end-to-end transmission of transport-level segments from source to receiver.  Transport segments arrive in sequence and lost segments are recovered.  TCP provides flow and congestion control functions, in addition to reliable transmission (i.e., through error recovery mechanisms).
  11. 11. 11 How does TCP work?  Establishes an end-to-end connection:  Acknowledgement based packet delivery  Assigns a congestion window Cw:  Initial value of Cw = 1 (packet)  If tx successful, congestion window doubled. Continues until Cmax is reached  After Cw ≥ Cmax, Cw = Cw + 1  If timeout beforeACK,TCP assumes congestion
  12. 12. 12 How does TCP work? (2)  TCP response to congestion is drastic:  A random backoff timer disables all transmissions for duration of timer  Cw is set to 1  Cmax is set to Cmax / 2  Congestion window can become quite small for successive packet losses.  Throughput falls dramatically as a result.
  13. 13. TCP Flow Control 13  Provides reliable connected-oriented service.  A virtual circuit connection (VCC) must be established hop-by- hop from the source to the destination prior to data transmission.  The source node transmits more and more data if acknowledgements (ACKs) for previously transmitted segments are received successfully.  This regulation of traffic transmission in accordance with the congestion state and connection quality is known as flow control.  Transmitting segments at a rate faster than what the receiver can handle will result in receive buffer overflow and information loss.  HowTCP detect a packet loss  Retransmission timeout (RTO)  Duplicate acknowledgements
  14. 14. 14 Detecting Packet Loss Using Retransmission Timeout (RTO)  At any time,TCP sender sets retransmission timer for only one packet  If acknowledgement for the timed packet is not received before timer goes off, the packet is assumed to be lost  RTO dynamically calculated
  15. 15. 15 Window Based Flow Control  Sliding window protocol  Window size minimum of  receiver’s advertised window - determined by available buffer space at the receiver  congestion window - determined by the sender, based on feedback from the network 2 3 4 5 6 7 8 9 10 11 131 12 Sender’s window Acks received Not transmitted
  16. 16. 16 Window Based Flow Control  Congestion window size bounds the amount of data that can be sent per round-trip time  Throughput <= W / RTT 2 3 4 5 6 7 8 9 10 11 131 12 Sender’s window 2 3 4 5 6 7 8 9 10 11 131 12 Sender’s window Ack 5
  17. 17. 17 Ideal Window Size  Ideal size = delay * bandwidth  delay-bandwidth product  What if window size < delay*bw ?  Inefficiency (wasted bandwidth)  What if > delay*bw ?  Queuing at intermediate routers  increased RTT due to queuing delays  Potentially, packet loss
  18. 18. TCP Congestion Control 18  TCP congestion control consists of:  Slow start (SS),  Congestion avoidance (CA),  Fast retransmit/fast recovery.  The endpoint node concludes that congestion exists when an increase in end-to-end delay is observed.  Retransmissions can further aggravate congestion since more packets are injected into the network.
  19. 19. 19 Overview of TCP concepts  ConventionalTCP:Tahoe, Reno, New-Reno  Sending rate is controlled by  Congestion window (cwnd): limits the # of packets in flight  Slow-start threshold (ssthresh): when CA start  Loss detection  3 duplicate ACKs (faster, more efficient)  Retransmission timer expires (slower, less efficient)  Overview of congestion control mechanisms  Slow-start phase: cwnd start from 1 and increase exponentially  Congestion avoidance (CA): increase linearly  Fast retransmit and fast recovery:Trigger by 3 duplicate ACKs Slow start Slow start Congestion avoidance Congestion detected Congestion avoidance Fast retransmit/ fast recovery 1 2 3 4 threshold threshold Time 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 Congestionwindowssize Overview Slow-start Congestion avoidance
  20. 20. 20  Upon starting a connection, or restarting after a packet loss, the congestion window (cwnd) size is set to one packet.  TheTCP sender increases the cwnd size by one packet upon receipt of an ACK, until the first sign of congestion is detected.  Thereafter, backoff occurs and the window size is reduced to half the current window size (down to a minimum of one segment).  The SS process then begins again gradually.  SS threshold is introduced, which changes the increment gradient of segment transmission with respect to time  Each ACK received results in increasing the window by 1/cwnd- size.  In summary, an additive increase (SS)/multiplicative decrease (backoff) policy is used to avoid congestion inTCP.
  21. 21. 21 Congestion Avoidance and Control  Slow Start: cwnd grows exponentially with time during slow start  When cwnd reaches slow-start threshold, congestion avoidance is performed  Congestion avoidance: cwnd increases linearly with time during congestion avoidance  Rate of increase could be lower if sender does not always have data to send
  22. 22. TCP congestion control 22
  23. 23. Versions of TCP 23  TCP Reno  TCP Reno (RFC 2581) can manage a loss of at most one packet from a single window of data  TCP Reno employs the SS and CA mechanisms.  The sender window size is increased until packet losses are experienced. lost packets are detected earlier and the pipeline is not emptied every time a packet is lost.  TCPTahoe  Congestion avoidance in TCP Tahoe relies on setting the congestion window (cwnd) size to half the current window size on timeout.  On each ACK for new data, the cwnd is increased by 1/cwnd.  Tahoe detects packet losses by timeouts.
  24. 24. Versions of TCP 24  TCPVegas  TCPVegas is different fromTCP Reno in the sense that: ○ a new retransmission mechanism is used, ○ an improved congestion avoidance mechanism that controls buffer occupy, and ○ a modified slow start mechanism.  InTCPVegas, all changes are confined to the sending end, and it does not involve any changes to theTCP specification.
  25. 25. Versions of TCP 25  TCP SACK  TCP SACK (RFC 2018) enables to cope with a loss of more than one packet by changing message structure (usingTCP options)  TCP with selective acknowledgement (SACK) is an improvement over the Positive ACK with retransmission (PAR) scheme or an extension of TCP Reno  In PAR, the sender waits for an ACK from the receiver for each packet sent.  Upon successful reception of the ACK, the sender transmits the next packet.  If an ACK for a packet sent does not arrive within a predetermined timeout period, the packet is retransmitted.While PAR is simple, it is not perfect.  Network congestion and delay can cause ACK replies to be delayed.  When this happens, the sender will time out and the last transmitted packet will be resent again, resulting in duplicates. Note that PAR uses sequence numbers to correctly associate packets with ACKs.
  26. 26. TCP window-based selective repeat mechanism 26
  27. 27. Problem over wireless network for TCP 27  TCP was originally designed to work in fixed networks.  Error rates in wired network are quite low,TCP uses packet loss as an indication of network congestion, and deals with this effectively by adjustment to its congestion window.  The mobile multihop ad hoc environment brings fresh challenges toTCP protocol due to its frequent change in network topology, disconnections, variation in link capability, and high error rate.
  28. 28. 28  In a wireless mobile ad hoc network, packet losses are usually not caused by network congestion, but by the high error rate from wireless medium and frequent disconnections from mobility, resulting in backoff mechanisms being in-appropriately invoked , thus reducing network bandwidth utilization and increasing the delay for connection restoration. In addition, variation in link capability could cause asymmetric links and delayed acknowledgment, which can affect congestion window adjustment as well. As a result, standardTCP flow control and congestion control mechanisms do not work well in mobile ad hoc networks.
  29. 29. Issues of TCP over MANETs 1. Induced traffic : due to traffic through neighboring links 2. Induced throughput unfairness 3. Separation of congestion control, reliability and flow control 4. Power and bandwidth constraints 5. Misinterpretation of congestion 6. Completely decoupled transport layer 7. Dynamic topology 29
  30. 30. Issues of TCP over MANETs  Lossy channels  High bit error rate  Path asymmetry  Bandwidth asymmetry  Loss rate asymmetry  The backward path is much more lossy than the forward path  It may produce bandwidth asymmetry  Route asymmetry  Due to lack of transmission power  Distinct paths forTCP data andTCP ACKs 30
  31. 31. Issues of TCP over MANETs  Network partition  Due to node mobility and energy constrained operation  If disconnectivity > RTO  TheTCP sender will trigger exponential backoff  Doubling the RTO  After the network is connected again,TCP is still in the backoff state  Routing failures  Very frequent events in MANETs  Due to node mobility and repeated transmission failure from link layer contention  After route re-establishmentTCP will face a brutal fluctuation in RTT  Power constraints  Power saving – reducing the power consumption  Power control – adjusting the transmission power of mobile nodes31
  32. 32. Issues of TCP over MANETs  TCP Congestion Control  TCP uses the occurrence of losses to detect congestion  In MANETs, random wireless errors and mobility serves as primary contributor to losses as well as congestion  More than 80% of the losses in the network are due to link failures  Essentially, most losses in ad-hoc networks occur as a result of route failures  IfTCP enters congestion control state because of packet losses caused by random wireless errors and mobility, then the throughput ofTCP can be degraded significantly 32
  33. 33. Problems Facing TCP in Wireless Ad Hoc 33  In ad hoc wireless networks, when a route is broken due to the mobility of nodes in the route, a route reconstruction or reconfiguration procedure is invoked.  A delay is incurred during this time when the route is repaired.  TheTCP sender is unaware of this incident. Hence, it mistakes this delay of ACK arrival, or the increase in RTT, as signs of network congestion.  Accepting this belief implies that the source node begins to reduce its transmission window size and initiates SS, which significantly reduces communication throughput performance unncessarily.
  34. 34. 34 Why does TCP fail in MANETs? Specific problems are identified: 1. TCP misinterprets route failures as congestion 2. TCP misinterprets wireless errors as congestion 3. Intra-flow and inter-flow contention reduce throughput and fairness 4. Delay spike causes TCP to invoke unnecessary retransmissions  RTO too small  unnecessary retransmissions. 5. Inefficiency due to the loss of retransmitted packet  When retransmitted packet is lost timer expires  performance drops Overview
  35. 35. 35 Specific problems of TCP over MANETs 1. TCP misinterprets route failures as congestion  Effects: Reduce sending rate  Buffered packets (Data and ACKs) at intermediate nodes are dropped.  Sender encounters timeout.  Under prolonged disconnection, a series of timeouts may be encountered. 2. TCP misinterprets wireless errors as congestion  Effects: Incorrect execution of congestion control  Performance drops.  Wireless channel is error-prone compared to wireline  Fading, interference, noise
  36. 36. 36 3. Intra-flow and inter-flow contention  Effects: Increased delay, unpredictability, and unfairness.  Inter-flow contention: contention of nearby flows.  Intra-flow contention: between packets of the same flow (e.g. forward data and reverse ACKs).  Wireline: only packet on same link “compete” Data stream ACKs stream Specific problems of TCP over MANETs Two nearby flows
  37. 37. 37 4. Delay spike causes TCP to invoke unnecessary retransmissions  Effects: Performance drops and many unnecessary retransmissions. [Ludwig & Katz]  Variability: Spikes are not uncommon here  Spikes throw off parameter estimation and tuning  RTO, window size, slow-start threshold 5.Inefficiency due to the loss of retransmitted packet  Effects: Performance drops significantly under high loss environment (e.g. MANETs).  Losing a retransmitted packet hurts  TCP can recover from one loss (fast retransmission)  Wired networks: packet loss rate is low.  Here, high packet loss makes the problem significant Specific problems of TCP over MANETs
  38. 38. Problems Facing TCP in Wireless Last-Hop 38  Delays experienced at the wired and wireless links are different, and this can affectTCP flow and congestion control.  A wireless link over a cellular or wireless LAN is usually shared by multiple devices.The link delay varies with time.  Wireless transmissions are subject to multipath fading and signal jamming, which contribute to packet loss.  All these can affect the estimated round-trip time or timely arrival ofTCP ACK packets.  Hence, some provisions are needed to makeTCP wireless- aware so that it can adapt accordingly, without significantly affecting communication performance.
  39. 39. 39  IndirectTCP  proposed to resolve the disconnection issues in a mobile Internet environment where one of the links in aTCP connection is a wireless link.  In mobile IP, mobility is handled at the network layer, where packets are tunneled from the home agent to the foreign agent when a mobile host moves.  While this principle of tunnelling works for datagram flows,TCP flows will be affected by mobility sinceTCP is an end-to-end protocol.  An endpoint is defined by a socket at the transport layer.A socket contains the source and destination addresses, along with their port numbers.  Applications use these sockets to send and receive data.When aTCP connection is established, it remains active until it is disconnected.  During the lifetime of a fixed host-to-mobile hostTCP connection, the mobile host could have moved to another location.  This breaks the connection andTCP has no way of handling such a change.
  40. 40. Indirect TCP  I-TCP requires the transfer of connection states from one mobile support router (MSR) to the other.  I-TCP partitions the mobileTCP connection into two segments, namely: ○ A regularTCP connection segment between the fixed host and MSR ○ A dynamic segment between the MSR and mobile host  In ITCP, the MSR has to perform some transport-layer functions  To hand off a mobileTCP connection, I-TCP uses a socket migration technique, 40
  41. 41. 41  TCP Snoop  Link-aware transport protocol for wireless last-hop networks.  Addresses packet loss issues due to the presence of wireless links.  Such losses causeTCP to back off and time out, resulting in poor end-to-end communication performance.  With the help of a snoop agent present at the radio base station,  lost segments are detected and retransmitted locally, without intervention by the sender.  last-hop round trip times are estimated.  The suppression of duplicateACKs corresponding to wireless losses from theTCP sender avoids unnecessary invocations of congestion control procedures by the sender.
  42. 42. TCP Snoop 42  For data flow from the mobile to a fixed host in the backbone wired network, a mechanism known as Explicit Loss Notification (ELN) is used.  ELN allows the decoupling of retransmissions from congestion control.  At the base station, packets that were lost in a single transmission window are detected and negative acknowledgments (NACKs) are sent back to the mobile host.  The NACK implementation is similar toTCP SACK
  43. 43. 43 Solutions for TCP in MANETs  Various solutions present  Most solutions generally tackle a subset of the problem  Often, fixing one part ofTCP breaks another part  Competing interests exist in the standards laid out by OSI
  44. 44. 44 Solution Topology
  45. 45. 45 Why focus on Transport layer protocol based solutions?  We want to choose solutions which maintain close connection toTCP  Upper layers in the OSI model affected by choice of transport layer protocol  Modifications may affect interactions with the Internet  Alternative methods only useful for isolated networks  Incur min connection setup and connection maintenance overheads.  To provide both reliable and unreliable connections as per requirement of the application layer
  46. 46. Approaches to TCP over Ad Hoc 46 1. TCP Feedback (TCP-F)  Introduced in 1998,  TCP-F allows the source to be informed of a route disconnection as a result of node.  When a link in a route is broken, the upstream node that detects the disconnection will send a Route Failure Notification (RFN) message back to the source.  Upon receiving this message, the source enters SNOOZE state.
  47. 47. TCP-F protocol state machine 47
  48. 48. 48  When theTCP source enters SNOOZE state, it performs the following:  The source stops transmitting all data packets (i.e., be it new or retransmitted data).  The source freezes all its timers, the current cwnd size, and values of other state variables, such as the retransmission timer value. ○ The source then initiates a route failure timer, whose value will depend on the worst-case route repair time.  When the route repair complete message is received, data transmission will be resumed and all timers and state variables will be restored.
  49. 49. 49 2. TCP-BuS  TCP with buffering capability and sequence information (TCP-BuS)  TheTCP principle deals with end-to-end connections. However, an ad hoc wireless connection comprises multiple wireless links.  Hence, trying to provide flow and congestion control at the source and destination nodes is neither sufficient nor situable.  I-TCP breaks theTCP semantics by allowing the base station to perform transport-layer functions, that is, aTCP connection is now further broken into two segments.  This is necessary since the link between the base station and mobile terminal is wireless and special treatment is needed.  If this "segment" model is further extended to an ad hoc wireless connection, then flow and congestion control can be performed in the same vein, but in a distributed fashion.
  50. 50. 50 Five enhancements introduced inTCP-BuS include: Explicit notifications  Explicit notifications are used to differentiate between network congestion and route failure as a result of mobility.  The node that detects a route disconnection sends an Explicit Route Disconnection Notification (ERDN) message back to the source.The source then stops transmission.  When the route reconfiguration or repair process is completed, an Explicit Route Successful Notification (ERSN) message is sent back to the source via the pivoting node Extension of timeout values  It is necessary to account for the time needed for route reconfiguration or repair.  InTCP-BuS, timeout values for buffered packets at the source and nodes along the path to the pivoting node are doubled.
  51. 51. TCP-BuS 51 Selective retransmission  InTCP, retransmission of lost packets on the path due to congestion relies on a timeout mechanism Avoidance of unnecessary requests for fast retransmission Reliable transmission of control messages
  52. 52. 52  TCP-BuS implements reliable transmission of control messages through two possible approaches:  The source periodically sends PROBE messages to check if a privoting node has successfully acquired a new partial path to the destination.  Each intermediate node is responsible for sending an ERSN message reliably to to its upstream node until it receives data packets.
  53. 53. Sequence of events by TCP-BuS after a successful route reconfiguration 53
  54. 54. 54