A Study on TCP Performance over Mobile Ad Hoc Networks



Similar documents
A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

A Survey: High Speed TCP Variants in Wireless Networks

An enhanced approach for transmission control protocol traffic management Mechanism for Wireless Network

STUDY OF TCP VARIANTS OVER WIRELESS NETWORK

TCP in Wireless Mobile Networks

International Journal of Scientific & Engineering Research, Volume 6, Issue 7, July ISSN

SJBIT, Bangalore, KARNATAKA

Student, Haryana Engineering College, Haryana, India 2 H.O.D (CSE), Haryana Engineering College, Haryana, India

Congestions and Control Mechanisms n Wired and Wireless Networks

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Transport layer issues in ad hoc wireless networks Dmitrij Lagutin,

Simulation-Based Comparisons of Solutions for TCP Packet Reordering in Wireless Network

TCP over Wireless Networks

TCP for Wireless Networks

AN IMPROVED SNOOP FOR TCP RENO AND TCP SACK IN WIRED-CUM- WIRELESS NETWORKS

An Improved TCP Congestion Control Algorithm for Wireless Networks

Mobile Communications Chapter 9: Mobile Transport Layer

Transport Layer Protocols

Data Networks Summer 2007 Homework #3

TCP Westwood for Wireless

Mobile Computing/ Mobile Networks

First Midterm for ECE374 03/24/11 Solution!!

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

Congestion control in Mobile Ad-Hoc Networks (MANETs)

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013

Active Queue Management (AQM) based Internet Congestion Control

TCP/IP Over Lossy Links - TCP SACK without Congestion Control

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Research of TCP ssthresh Dynamical Adjustment Algorithm Based on Available Bandwidth in Mixed Networks

15-441: Computer Networks Homework 2 Solution

Final for ECE374 05/06/13 Solution!!

Outline. TCP connection setup/data transfer Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

First Midterm for ECE374 03/09/12 Solution!!

Chapter 6 Congestion Control and Resource Allocation

TCP based Denial-of-Service Attacks to Edge Network: Analysis and Detection

A packet-reordering solution to wireless losses in transmission control protocol

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

Computer Networks. Chapter 5 Transport Protocols

EFFECT OF TRANSFER FILE SIZE ON TCP-ADaLR PERFORMANCE: A SIMULATION STUDY

TCP in Wireless Networks

TRANSPORT LAYER AND SECURITY PROTOCOLS FOR AD HOC WIRELESS NETWORKS

Transport layer protocols for ad hoc networks

High-Speed TCP Performance Characterization under Various Operating Systems

2 TCP-like Design. Answer

TCP PACKET CONTROL FOR WIRELESS NETWORKS

SELECTIVE-TCP FOR WIRED/WIRELESS NETWORKS

FEW would argue that one of TCP s strengths lies in its

Behavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols

MASTER THESIS REPORT MSc IN ELECTRICAL ENGINEERING WITH EMPHASIS ON TELECOMMUNICATION

Low-rate TCP-targeted Denial of Service Attack Defense

Performance evaluation of TCP connections in ideal and non-ideal network environments

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes:

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

TCP Adaptation for MPI on Long-and-Fat Networks

High Speed Internet Access Using Satellite-Based DVB Networks

Cross Layer TCP Congestion Control Load Balancing Technique in MANET

A Passive Method for Estimating End-to-End TCP Packet Loss

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links

Analytic Models for the Latency and Steady-State Throughput of TCP Tahoe, Reno and SACK

Optimization of Communication Systems Lecture 6: Internet TCP Congestion Control

ALTHOUGH it is one of the first protocols

THE Transmission Control Protocol (TCP) has proved

The Effect of Packet Reordering in a Backbone Link on Application Throughput Michael Laor and Lior Gendel, Cisco Systems, Inc.

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

PERFORMANCE ANALYSIS OF AD-HOC ON DEMAND DISTANCE VECTOR FOR MOBILE AD- HOC NETWORK

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

Master Course Computer Networks IN2097

CS268 Exam Solutions. 1) End-to-End (20 pts)

TCP/IP Optimization for Wide Area Storage Networks. Dr. Joseph L White Juniper Networks

A Study of Internet Packet Reordering

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

TCP Fast Recovery Strategies: Analysis and Improvements

Security Scheme for Distributed DoS in Mobile Ad Hoc Networks

Performance Enhancement of Transmission Control Protocol over Wireless Ad-hoc Networks

CSE331: Introduction to Networks and Security. Lecture 9 Fall 2006

TCP Over Wireless Network. Jinhua Zhu Jie Xu

Parallel TCP Data Transfers: A Practical Model and its Application

La couche transport dans l'internet (la suite TCP/IP)

4 High-speed Transmission and Interoperability

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008

CHAPTER 6 SECURE PACKET TRANSMISSION IN WIRELESS SENSOR NETWORKS USING DYNAMIC ROUTING TECHNIQUES

Step by Step Procedural Comparison of DSR, AODV and DSDV Routing protocol

CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENTS

Effect of Packet-Size over Network Performance

Optimization of AODV routing protocol in mobile ad-hoc network by introducing features of the protocol LBAR

A Catechistic Method for Traffic Pattern Discovery in MANET

Transcription:

215 A Study on TCP Performance over Mobile Ad Hoc Networks Shweta Sharma 1, Anshika Garg 2 1 School of Computing Science and Engineering, Galgotias University, Greater Noida 2 School of Computing Science and Engineering, Galgotias University, Greater Noida ABSTRACT The Transmission Control Protocol (TCP) provides reliable end-to-end delivery of data over unreliable networks. Most Internet traffic is carried by TCP, so performance of the Internet depends on how well TCP works. Performance characteristics of a particular version of TCP are defined by the congestion control algorithm it employs. This study presents the review and comparison of existing TCP variants: TCP Tahoe, Reno, New Reno, elective Acknowledgement (SACK) and Vegas. The characteristics of TCP are different depending on the type of TCP variants. This study is necessary to be aware of which TCP implementation is better for a specific scenario. This article covers all the variants and its algorithms to observe their nature regarding to their features. Keywords- Congestion Avoidance, Congestion Control, Mobile ad-hoc, Packet loss, TCP 1. INTRODUCTION The mobile ad hoc network [3] is formed by wireless hosts which may be mobile, without the need of a central administration or standard support devices available in a conventional network, thus forming an infrastructure-less network. These networks build, operate and maintain with the help of integral wireless nodes. Since these nodes have limited transmission range, they depend on neighbouring nodes to forward packets. Congestion control [4] [5] is a key problem in mobile ad-hoc networks. The special properties of a shared wireless multi hop channel cannot be handled properly with standard TCP Congestion control mechanism. The frequent changes in the network topology and the shared nature of the wireless channel cause significant challenges. A number of approaches have been proposed to overcome these difficulties. Ad hoc network is a wireless and with no fixed infrastructure, distributed network which is part of mobile terminals, where each mobile terminal is not only a host computer but also a router. AODV routing protocol is commonly used in ad hoc network. But its major disadvantage is delay. A huge data is transmitted through a small number of nodes in route discovery and maintenance mechanism which leads to network congestion and bottleneck. Simultaneously, imbalanced data load will be exhaust nodes energy rapidly. Therefore, In order to balance the network load and maintain network continuous, efficient and stable operation, it is important to take into account the routing nodes load and congestion in network. In mobile ad hoc wireless network, mobile agent has mobility and autonomy. Therefore, it can be used to solve the ad hoc network congestion. In MANETs Congestion take place [2] [5] with limited resources. In these networks, shared wireless channel and dynamic topology leads to interference and fading during packet transmission. Packet losses and bandwidth degradation are caused due to congestion, and thus, time and energy is wasted during its recovery. Congestion can be prevented using congestion-aware protocol through bypassing the affected links. Acute throughput degradation and huge fairness problems are some of the identified congestion related problems. These problems are sustained from MAC, routing and transport layers. The rest of the paper is organized as follows: section 2 nd and 3 rd describes TCP Algorithms and TCP Variants respectively. In the section 4 th we describe comparisons of all variants. 2. TRANSMISSION CONTROL PROTOCOL Transmission Control Protocol (TCP) [1] [4] is the predominant Internet protocol and it carries most of the Internet traffic in today s networks. TCP is widely used as a connection oriented transport layer protocol that provides reliable byte stream service, meaning that the two applications using TCP must establish a connection with each other before they can exchange data in reliable way. The most essential feature of TCP is congestion control; it defines TCP s performance characteristics. Although a number of studies have been conducted and protocol modifications suggested. The reason behind the

216 variations of TCP is that each TCP variant possesses some special criteria, such as the traditional TCP is known as TCP Tahoe. TCP Reno adds one new mechanism called Fast Recovery to TCP Tahoe [15]. TCP New Reno uses the newest retransmission mechanism of TCP Reno [6][7]. The TCP Sack permits the receiver to specify several additional data packets that have been received out-of-order within one dup ACK, instead of the last in order packet received. TCP Vegas proposes its own new unique retransmission and congestion control strategies. TCP FACK is Reno TCP with forward acknowledgement. 3. TCP ALGORITHMS 3.1Slow start Slow start [4] [11] is conducted in the beginning of every TCP connection and its main purpose is to find the maximum available bandwidth at which it can send data without causing the network to be congested. In Slow Start state, in initial the CWND is initialized to one packet after receiving acknowledgement it CWND is set one to two. This can be estimated as an exponential growth.when congestion window is greater than ssthresh value then sender moves to Congestion Avoidance state. 3.2 Congestion avoidance If the receiver window is large enough, the slow start mechanism described in the previous routers in between the hosts will start discarding packets. As mentioned earlier TCP interprets packet loss as a sign of congestion, and when this happens TCP invokes the Congestion Avoidance mechanism [1] [12]. Even though slow start and congestion avoidance is two different mechanisms they are more easily described together. In the joint description below a new TCP variable is introduced. This variable, ssthresh, is t h e s l o w start threshold which TCP uses to determine if slow start or congestion avoidance is to be conducted. 1. When establishing a new connection cwnd is initialized to 0 < cwnd <= min (4*MSS, Max (2*MSS, 4380 bytes)) 2. The sender side TCP sends a maximum of Min (cwnd, rwnd) bytes 3. When congestion occurs ssthresh <-min (min (cwnd, rwnd) / 2, 2* MSS). If congestion was due to a timeout slow start is conducted. 4. When new data is acknowledged by the other end cwnd is increased. The way in which TCP increases the cwnd depends on if we are doing slow start (cwnd<ssthresh) or congestion avoidance. 5. The increase of cwnd in slow start was described in the previous Section, and if we are doing congestion avoidance then cwnd <- cwnd + (1/cwnd). 3.3 Fast retransmit If an out-of-order segment is received TCP generates a duplicate acknowledgment. This duplicate acknowledgment is sent immediately from the receiver to the sender indicating that a segment arrived out-oforder, and which segment that was supposed to be received. Since it is not possible to know whether the duplicate acknowledgment was caused by a lost segment or just reordering of segments, the sender waits for three duplicate acknowledgments before retransmitting the segment. If this limit would have been lower, this would increase the chance of reordered segments causing duplicates to be created, and transmitted needlessly. The advantage of this mechanism [1] [4] is that TCP does not have to wait for the retransmission timer to expire. It simply assumes that three duplicate acknowledgments is a good indicator of a lost segment. 3.4 Fast recovery In this stage the lost packet is retransmitted and ssthresh is set to maximum of FlightSize/2 or 2*SMSS, where SMSS means sender s maximum segment size and FlightSize means amount of data that is unacknowledged at any given time. Fast Recovery: In this stage, CWND is increased by one for every duplicate acknowledgment and a new packet is transmitted, if allowed by CWND. It is assumed that in fast-recovery state, sender resets the retransmission timer upon receiving a partial ACK [4] [114]. 4. TCP VARIANTS 4.1 TCP Tahoe TCP is based on a principle of conservation of packets, i.e. if the connection is running at the available bandwidth capacity then a packet is not injected into the network Unless a packet is taken out as well. TCP implements this principle by using the acknowledgement to clock outgoing packets because an acknowledgement means that a packet was taken off the wire by the receiver. It also maintains a congestion window CWD to reflect the network capacity [1]. Disadvantages: It takes a complete timeout interval to detect a packet loss and in most implementations it takes even longer time because of the coarse grain timeout. Also it doesn t send immediate ACK s, it sends cumulative acknowledgements, and therefore it follows a go back n approach. Thus every time a packet is lost it waits for a timeout and the pipeline is emptied. This

217 offers a major cost in high band-width delay product links. 4.2 TCP Reno TCP Reno [6] is the most widely used variant with three functions: Slow start, Congestion Avoidance and Fast recovery. In TCP Reno a lost packet is detected and retransmitted when triple duplicate ACKs are received or a timeout event occurs at the sender. For a timeout event, TCP considers a serious congestion and enters Slow Start phase. On the other hands, after Fast Retransmit, Fast recovery phase to cancel the Slow Start phase and increase its CWND linearly thereafter it executed. Disadvantage: Reno performs very well over TCP when the packet losses are small. But when we have multiple packet losses in one window then Reno doesn t perform too well and its performance is almost the same as Tahoe under conditions of high packet loss. Another problem is that if the window is very small when the loss occurs then we would never receive enough duplicate acknowledgements for a fast retransmit and we would have to wait for a coarse grained timeout. Thus is cannot effectively detect multiple packet losses. 4.3 TCP Lite TCP Lite [1] [4] is a service that provides a transport method that interrupts TCP in order to reduce the overhead involved in session management in which no data is transmitted or received. TCP Lite reduces or eliminates pure TCP protocol data units used in the set up and ACK while maintaining order, integrity, reliability and security of traditional TCP. TCP Lite uses big window and protection against wrapped sequence numbers. Disadvantage: Lite performs over TCP same as Reno. But when window increases it have some problems to maintain them. 4.4 TCP new Reno New Reno [6] [7] is a slight modification over TCP- Reno. It is able to detect multiple packet losses and thus is much more efficient that Reno in the event of multiple packet losses. Like Reno, New-Reno also enters into fastretransmit when it receives multiple duplicate packets, however it differs from Reno in that it doesn t exit fastrecovery until all the data which was out standing at the time it entered fast recovery is acknowledged. The fastrecovery phase proceeds as in Reno, however when a fresh ACK is received then there are two cases: 1. If it ACKs all the segments which were outstanding when we entered fast recovery then it exits fast recovery and sets CWND to threshold value and continues congestion avoidance like Tahoe. 2. If the ACK is a partial ACK then it deduces that the next segment in line was lost and it re-transmits that segment and sets the number of duplicate ACKS received to zero. It exits Fast recovery when all the data in the window is acknowledged. Disadvantages: New-Reno suffers from the fact that it takes one RTT to detect each packet loss. When the ACK for the first retransmitted segment is received only then can we deduce which other segment was lost. 4.5 Elective Acknowledgement (SACK) Traditional implementation of TCP use an acknowledgement number field that contains a cumulative acknowledgement, indicating that that TCP receiver has received all of the data up to indicated byte. A selective acknowledgement option allows receiver to additionally report non-sequenced data they have received. The SACK option is used in an ACK packet to indicate which packets were received precisely [13] and thus allows to deduce which packets had been lost packets. This will in turn avoid retransmitting the whole window of data. Disadvantages: The biggest problem with SACK [6] is that currently selective acknowledgements are not provided by the receiver. To implement SACK we need to implement selective acknowledgment which is not a very easy task. 4.6 TCP Vegas Unlike TCP Reno, TCP Vegas uses the congestion avoidance mechanism to avoid packet loss by decreasing its CWND as soon as it detects an impending congestion. In TCP Vegas, CWND is determined by difference between actual throughput and expected throughput as follows, Expected = WindowSize(CWND)/BaseRTT Actual = WindowSize(CWND)/currentRTT Diff = (Expected Actual)*BaseRTT Where, BaseRTT is the minimum of all measured RTTs. TCP Vegas defines two thresholds, namely α and β. If Diff is < α, it considers the absence of congestion and increases its CWND by 1. Else it expects an incipient congestion and decreases its CWND by 1. Otherwise, it keeps.

218 Disadvantages: If there are enough buffer in the routers it means that Vegas congestion avoidance mechanism can function effectively a higher throughput and a faster response time result. As the load increase or the number or router buffer decrease, Vegas congestion avoidance mechanism is not as effective and Vegas start to behave more like Reno. Vegas is less aggressive in its use of router buffer than Reno because Vegas is limited. Finally Vegas congestion detection algorithm depends on the accurate value for Base RTT. 5. CONCLUSION Thus it is clear that TCP Vegas [8] [9] has better performance than 5.1 Tahoe Because it is much more robust in the face of lost packets, can detect and retransmit lost packet much sooner than timeouts in Tahoe. Also Vegas has fewer retransmissions since it doesn t empty the whole pipe whenever it loses packets. It is better at congestion avoidance and its modified congestion avoidance and slow start algorithms measure incipient congestion and very accurately measures the available bandwidth available and therefore uses network resources efficiently and don t contribute to congestion. 5.2 Reno More than half of the course- grained timeouts of Reno are prevented by Vegas as it detects and re-transmits more than one lost packet before timeout occurs. It doesn t have to wait for three duplicate packets so it can retransmit sooner. The advantages that it has in congestion avoidance and bandwidth utilization over Tahoe exist here as well. 5.3 New-Reno It prevents many of the coarse grained timeouts of New- Reno as it doesn t need to wait for three duplicate ACK s before it retransmits a lost packet. Its congestion avoidance mechanisms to detect incipient congestion are very efficient and utilize network resources much more efficiently. Because of its modified congestion avoidance and slow start algorithm there are few retransmits. 5.4 SACK TCP Vegas doesn t have a clear cut advantage over SACK TCP. The only field where it appears to outperform SACK is in its estimation of incipient congestion and its efficient estimation of congestion by measuring change in throughput rather than packet loss. This would result in a better utilization of bandwidth and lesser congestion. One more disadvantage of SACK is that it is not very easy to incorporate SACK in the current TCP. We need fields to acknowledge the selective segments and this requires changes at the receiver as well as at the sender side. 6. FUTURE WORK Our future work is to propose a new algorithm for congestion avoidance in congested network to improve the TCP environment. ACKNOWLEDGEMENT I am deeply thankful to my supervisor Prof. Arun Kumar and all my friends whose help, stimulating suggestions and encouragement helped me in all the time for my review. REFERENCES [1] J. Postel, RFC793-Transmission Control Protocol, RFC, 1981. [2] C. Lochert, B. Scheuermann, M. Mauve, A survey on congestion control for mobile ad hoc networks, Wireless Communications and Mobile Computing, vol. 7, no. 5, p. 655, 2007. [3] Ahmad Al Halbali, Eita Altman, Philippe Nain, A survey of TCP over Ad-Hoc Networks, IEEE communications surveys and tutorials, Third quarter 2005, Vol. 7, No.3. [4] Alexander Afanasyev, Neil Tilley, Peter Reither, Leonard Kleinrock, Host-to-Host Congestion Control for TCP IEEE communications surveys and tutorials, Vol.12, No.3, Third quarter 2010. [5] V. Jacobson, Congestion Avoidance and Control SIGCOMM Symposium no Communication Architecture and protocols, IJCN, Vol (2) 1988. [6] K.Fall, S.Floyd Simulation Based Comparison of Tahoe, Reno and SACK TCP International Journal of Advances in Engineering & Technology, Aug 2011. [7] Dongkyun Kim, Juan-Carlos, P.Manzon, C.K Toh, A Comparison of the Performance of TCP-Reno and TCP-Vegas over MANETs, IEEE communications surveys and tutorials, Third quarter 2006. [8] L.S.Brakmo, L.L. Peterson, TCP Vegas: End to End Congestion Avoidance on a Global Internet, IEEE Journal on Selected Areas in Communication, vol. 13[1995], (1465-1490). [9] M. Jehan, Dr Radhamani, T KalaKumari VEGAS: Better Performance than other TCP congestion control algorithms on MANETs international journal of computer Networks (IJCN), Volume (3): Issue (2):2011.

219 [10] Vishnu Kumar Sharma, Dr Sarita Singh Bhadauria Performance Analysis on Mobile Agent Based Congestion Control using AODV routing protocol techniques with Hop by Hop algorithms for MANET International Journal of Ad hoc, Sensor & Ubiquitous Computing (IJASUC) Vol.3, No.2, April 2012. [11] Dongkyun Kim, Juan-Carlos, Analysis of the interaction between TCP Variants and Routing Protocol in MANETs, IEEE international conference on parallel processing workshops,2005. [12]W.R. Salem Jeyaseelan, Dr S Hariharan Study on Congestion Avoidance in MANET IJCA Special Issue on Network Security and Cryptography NSC, 2011 [13] Poonam Tomar, Shweta Yadav Enhanced Reliable TCP for congestion control with corruption control in MANETs Journal of Global Research in Computer Science Volume 3, No. 4, April 2012. [14]Prof. S.A. Jain, Mr. Abhishek Bande, Mr. Gaurav Deshmukh, Mr. Yogesh Rade, Mr. Mahesh Sandhanshiv An Improvement In Congestion Control Using Multipath Routing in Manet International Journal of Engineering Research and Applications (IJERA) Vol. 2, Issue 3, May-Jun 2012. [15]Gavin Holland, Nitin Vaidya, Analysis of TCP Performance over Mobile Ad Hoc Networks, Kluwer Academic Publishers, Netherlands,2007.