350 likes | 487 Views
Transport Layer for Mobile Ad hoc Networks. CS – 647: Advanced Topics in Wireless Networks. Drs. Baruch Awerbuch and Amitabh Mishra Computer Science Department Johns Hopkins. Reading. Chapter 7 – Ad Hoc & Sensor Networking, Cordeiro & Agrawal, 2007 One of the suggested text for the course .
E N D
Transport Layer for Mobile Ad hoc Networks CS – 647: Advanced Topics in Wireless Networks Drs. Baruch Awerbuch and Amitabh Mishra Computer Science Department Johns Hopkins
Reading • Chapter 7 – Ad Hoc & Sensor Networking, Cordeiro & Agrawal, 2007 • One of the suggested text for the course
Outline • Overview of TCP • The problems of TCP over MANETs • Overview of best transport protocols • In depth • Specific problems of TCP over MANETs • Details of major TCP variants • Discussion - other efforts • Conclusion
Data stream in Wired Network ACKs stream Data stream in a MANET TCP Source TCP Sink N 1 2 3 4 ACKs stream TCP in Wired Network and MANET
Introduction Network Architecture at a Crossroads • 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 • The R&D community recognizes the need for change
Introduction Revisiting the Current Transport Architecture • The vision: • Wireless as an integral part of the network • Multiple wireless hops: not just the last mile (Cellular) • Pockets of wireless ad hoc connectivity • A new protocol stack is required • Is TCP/IP capable of delivering?
Problem Statement • Why does TCP perform poorly in MANETs? • Developed for Wireline networks • Assumes all losses congestion related • Many TCP variants have been proposed • How good are they? • Are they sufficient? • Are there any other alternatives? • Are non-tcp protocols the solution?
Our Goal • Identify the problems of TCP in MANETs. • Evaluate various major TCP variants. • 12 TCP variants, 7 improvement techniques • Observations: • Most TCP variants are NOT sufficient. • A new transport layer protocol may be/is needed.
TCP Basics • Byte Stream Delivery • Connection-Oriented: Two communicating TCP entities (the sender and the receiver) must first agree upon the willingness to communicate • Full-Duplex: TCP almost always operates in full-duplex mode, • TCP exhibit asymmetric behavior only during connection start and close sequences (i.e., data transfer in the forward direction but not in the reverse, or vice versa)
Reliable TCP Guarantees • A number of mechanisms help provide the guarantees: • Checksums: To detect errors with either the TCP header or data • Duplicate data detection: Discard duplicate copies of data that has already been received • Retransmissions: • For lost and damaged data • Due to lack of positive acknowledgements • Timeout period calls for a retransmission • Sequencing:To deliver the byte stream data to an application in order • Timers:Various static and dynamic timers used for deciding when to retransmit • Window: For flow control in the form of a data transmission window size
Overview Overview of TCP Concepts • Conventional TCP: 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 Congestion avoidance
Slow-start Congestion avoidance TCP Basics
Congestion Control • Slow Start (SS): A mechanism to control the transmission rate) • When TCP connection starts (Initial Value): CWND =1, • congestion window increases by one segment for each acknowledgement returned • Congestion Avoidance(CA): Used to reduce the transmission rate • When Slow Start drops one or more packets due to congestion • Fast Retransmit: Sender receiving triple duplicate ACKs • Immediate transmission of missing packet without waiting for the Retransmission Timeout to expire • Fast Recovery: In SS or CA when sender receiving triple duplicate ACKs Sender only enters Congestion Avoidance mode
Overview What is Different in MANETs? • Mobility • Route stability and availability • High bit error rate • Packets can be lost due to “noise” • Unpredictability/Variability • Difficult to estimate time-out, RTT, bandwidth • Contention: packets compete for airtime • Intra-flow and inter-flow contentions • Long connections have poor performance • More than 4 hops thruput drops dramatically
Overview Overview of Best Protocols • TCP-Westwood [Casetti et. al.] • Estimate bandwidth to alleviate the effect of wireless errors. • TCP-Jersey [Xu et. al.] • Estimate bandwidth to alleviate the effect of wireless errors. • Congestion warning assists the determination of packet loss due to wireless error from congestion. • ATP [Sundaresan et. al.] • Rate based transmission, periodic rate feedback, no timeout concept, reliability provided by SACK. • Split-TCP [Kopparty et. al.] • Separating congestion control from reliability. • Dropped packets are recovered from the most recent proxy instead of the source.
Specific problems of TCP over MANETs TCP in MANET • 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.
Specific problems of TCP over MANETs TCP in MANET • 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
Specific problems of TCP over MANETs TCP in MANET • 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” • Wireless: all close by devices compete for the channel Two nearby flows Data stream ACKs stream
Impact ofPartitionon Throughput A X Y P Z S B C D Link Failure Data transfer continues in spite of failure No communication between the partitions
Effects of Partitions on TCP Node 5 moves away from node 3 (short-term partition)
5 2 8 1 7 3 9 6 4 The routing protocol reestablishes the path through node 6 Reestablishing Path
Long Term Partition Node 5 moves away from node 3 (long-term partition)
Long Term Network Partition No communication between the partitions
TCP Throughput • Larger the number of nodes a TCP connection needs to span, lower is the end-to-end throughput, as there will be more medium contention taking place in several regions of the network • TCP throughput is inversely proportional to the number of hops
Impact of Lower Layers on TCP -MAC • It is intended for providing an efficient shared broadcast channel through which the involved mobile nodes can communicate • In IEEE 802.11, RTS/CTS handshake is only employed when the DATA packet size exceeds some predefined threshold • Each of these frames carries the remaining duration of time for the transmission completion, so that other nodes in the vicinity can hear it and postpone their transmissions • The nodes must await an IFS interval and then contend for the medium again • The contention is carried out by means of a binary exponential backoff mechanism which imposes a further random interval • At every unsuccessful attempt, this random interval tends to become higher
Impact of Lower Layers on TCP -MAC • Consider a linear topology in which each node can only communicate with its adjacent neighbors • In addition, consider that in Figures (a) and (b) there exist a single TCP connection running between nodes 1 and 5
Capture Conditions • In Figure (c) where there are two independent connections,(connection 2-3) (connection 4-5) • Assuming that connection 2-3 experiences collision due to the hidden node problem caused by the active connection 4-5 , node 2 will back off and retransmit the lost frame • At every retransmission, the binary exponential backoff mechanism imposes an increasingly backoff interval, and implicitly, this is actually decreasing the possibility of success for the connection 2-3 to send a packet as connection 4-5 will “dominate” the medium access once it has lower backoff value • In consequence, the connection 2-3 will hardly obtain access to the medium while connection 4-5 will capture it
NetworkLayer Impact • Routing strategies play a key role on TCP performance • There have been a lot of proposed routing schemes and, typically, each of them have different effects on the TCP performance
DSR • DSR protocol operates on an on-demand basis in which a node wishing to find a new route broadcasts a RREQ packet • The problem with this approach concerns the high probability of stale routes in environments where high mobility as well as medium constraints may be normally present • The problem is exacerbated by the fact that other nodes can overhear the invalid route reply and populate their buffers with stale route information • It can be mitigated by either manipulating TCP to tolerate such a delay or by making the delay shorter so that the TCP can deal with them smoothly
Path Asymmetry Impact • In Ad hoc networks, there are several asymmetries • Loss Rate Asymmetry: It takes place when the backward path is significantly more error pronethan the forward path • Bandwidth Asymmetry: Arises when forward and backward data follow distinct paths with different speeds • Can happen in ad hoc networks when all nodes not have the same interface speed • Media Access Asymmetry: Arises when TCP ACKs andData are contending for the same
RouteAsymmetry • Route asymmetry implies having different paths in both directions • Route asymmetry is associated with the possibility of different transmission ranges for the nodes • The inconvenience with different transmission ranges is that it can lead to conditions in which the forward data follow a considerably shorter path than the backward data (TCP ACK) or vice versa --> affecting hop counts and delays (RTT) • Multi-hop paths are prone to have lower throughput and TCP ACKs may face considerable disruptions
Overview of Results • The best TCP variants: • TCP-Westwood and TCP-Jersey seem the best. • Both protocols estimate bandwidth more accurately. • TCP mechanisms: • Feedback from intermediate nodes leads to big gains. • The best non-TCP approaches: • Ad-hoc Transport Protocol (ATP) seems to address most issues • Non-window based: estimates achievable rate periodically • Split-TCP: promising new way of looking at transport layer • Dynamically buffer packets mid-path • Key: Separation of congestion control from reliability.
TORA • TORA has been designed to be highly dynamic by establishing routes quickly and concentrating control messages within a small set of nodes close to the place where the topological change has occurred • TORA makes use of directed acyclic graphs, where every node has a path to a given destination and established initially • This protocol can also suffer from stale route problem similar to the DSR protocol • The problem occurs mainly because TORA does not prioritize shorter paths, which can yield considerable amount of out-of-sequence packets for the TCP receiver, triggering retransmission of packets