ISSN: Index Terms Wireless networks, non - congestion events, packet reordering, spurious timeouts, reduce retransmissions.

Similar documents
Prasanthi Sreekumari, 1 Sang-Hwa Chung, 2 Meejeong Lee, 1 and Won-Suk Kim Introduction

EE122 MIDTERM EXAM: Scott Shenker, Ion Stoica

DualRTT: Enhancing TCP Performance During Delay Spikes

ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3

CS321: Computer Networks Congestion Control in TCP

Enhancing TCP Throughput over Lossy Links Using ECN-Capable Capable RED Gateways

Improving the Robustness of TCP to Non-Congestion Events

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

ROBUST TCP: AN IMPROVEMENT ON TCP PROTOCOL

8. TCP Congestion Control

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Computer Networking Introduction

TCP Congestion Control

TCP Congestion Control

RED behavior with different packet sizes

CMPE 257: Wireless and Mobile Networking

RD-TCP: Reorder Detecting TCP

Impact of transmission errors on TCP performance. Outline. Random Errors

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Chapter III. congestion situation in Highspeed Networks

IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online):

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

image 3.8 KB Figure 1.6: Example Web Page

Considering Spurious Timeout in Proxy for Improving TCP Performance in Wireless Networks

Chapter III: Transport Layer

F-RTO: An Enhanced Recovery Algorithm for TCP Retransmission Timeouts

TCP over Wireless. Protocols and Networks Hadassah College Spring 2018 Wireless Dr. Martin Land 1

TCP Congestion Control in Wired and Wireless networks

PERFORMANCE COMPARISON OF THE DIFFERENT STREAMS IN A TCP BOTTLENECK LINK IN THE PRESENCE OF BACKGROUND TRAFFIC IN A DATA CENTER

TCP congestion control:

Advanced Computer Networks

Internet Protocols Fall Lecture 16 TCP Flavors, RED, ECN Andreas Terzis

Problem 7. Problem 8. Problem 9

Networked Systems and Services, Fall 2018 Chapter 3

Networked Systems and Services, Fall 2017 Reliability with TCP

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Dynamic Deferred Acknowledgment Mechanism for Improving the Performance of TCP in Multi-Hop Wireless Networks

Congestion / Flow Control in TCP

UNIT IV -- TRANSPORT LAYER

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3

A THROUGHPUT ANALYSIS OF TCP IN ADHOC NETWORKS

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

TCP Congestion Control 65KB W

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Advanced Computer Networks

Chapter 3 Transport Layer

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

TCP Westwood and Easy Red to Improve Fairness in High-speed Networks. PfHsn 2002 Berlin, 22 April 2002

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday

TRANSMISSION CONTROL PROTOCOL

Performance Evaluation of TCP Westwood. Summary

Transport Protocols and TCP: Review

Communication Networks

TCP based Receiver Assistant Congestion Control

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Internet Networking recitation #10 TCP New Reno Vs. Reno

Investigations On Making TCP Robust Against Spurious. Retransmissions

Chapter 24. Transport-Layer Protocols

Basic Reliable Transport Protocols

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli)

Impact of False RTT on the Efficiency of TCP-NJ in WLAN

THE NETWORK PERFORMANCE OVER TCP PROTOCOL USING NS2

Veno-A: Adaptive Congestion Control Approach for Hybrid Network

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

CS268: Beyond TCP Congestion Control

Wireless TCP Performance Issues

Selective-TCP for Wired/Wireless Networks

Fuzzy based Tuning Congestion Window for Improving End-to-End Congestion Control Protocols

Hybrid Control and Switched Systems. Lecture #17 Hybrid Systems Modeling of Communication Networks

Outline. CS5984 Mobile Computing

Improving TCP Performance in Wireless Networks by Detection and Avoidance of Spurious Retransmission Timeouts

DEPLOYMENT OF FAIR SHARE AND SMART START TECHNIQUE FOR OPTIMAL USE OF AVAILABLE CAPACITY IN TCP CONGESTION CONTROL

An Issue in NewReno After Fast Recovery. Yoshifumi Nishida

Transmission Control Protocol (TCP)

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

Enhancing TCP Throughput over Lossy Links Using ECN-capable RED Gateways

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018

TCP Congestion Control

Transport layer issues

cs/ee 143 Communication Networks

Flow and Congestion Control Marcos Vieira

Improving TCP Performance over Wireless Networks using Loss Predictors

Principles of congestion control

Performance Enhancement Of TCP For Wireless Network

Bandwidth Allocation & TCP

ATCP: Improving TCP performance over mobile wireless environments

CC-SCTP: Chunk Checksum of SCTP for Enhancement of Throughput in Wireless Network Environments

RD-TCP: Reorder Detecting TCP

Congestion Control in TCP

Lecture 15: Transport Layer Congestion Control

King Fahd University of Petroleum & Minerals

Performance Analysis of TCP Variants

Explicit Congestion Notification for Error Discrimination

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Transport Protocols & TCP TCP

Transcription:

ISSN:2320-0790 A New TCP Algorithm to reduce the number of retransmissions in Wireless Networks A Beulah, R Nita Marie Ann Assistant Professsor, SSN College of Engineering, Chennai PG Scholar, SSN College of Engineering, Chennai Abstract As wireless network has high bit error rate, it is prone to frequent retransmissions due to the presence of packet reordering, spurious timeouts and random packet losses. This paper identifies the reason for packet loss, if it is due to congestion or non-congestion reason and reduces the number of retransmissions, which enhances the performance of TCP. Retransmission is unnecessary even when 3 duplicate ACK are received by the sender and if it is due to packet reordering. When the network is not congested, retransmission of the packet is delayed to verify whether packet reordering has occurred. Also, if spurious timeout is detected retransmission is not necessary. Index Terms Wireless networks, non - congestion events, packet reordering, spurious timeouts, reduce retransmissions. I. INTRODUCTION TCP is a connection-oriented full duplex reliable protocol of the transport layer. TCP protocol is designed and tuned to perform well on wired network. In wired network, whenever a packet is lost, it is assumed to be due to network congestion and TCP calls the appropriate congestion control algorithm. Whereas in wireless network an indication of packet loss can be due to network congestion or non-congestion reasons such as packet reordering, spurious timeouts, spurious retransmits and so on. Therefore, in a wireless link, when packet loss is intimated, TCP calls the congestion control algorithm assuming network congestion which degrades TCP throughput. A. TCP in Wired Environment There are 4 standard congestion control algorithms in TCP. They are: 1. Slow Start 2. Congestion Avoidance 3. Fast Retransmit 4. Fast Recovery. Initially, the congestion window (cwnd) is set to 1 MSS (Maximum Segment Size). In the slow start phase, TCP increases the cwnd exponentially each time an acknowledgement (ACK) is received. When the slow start threshold (ssthresh) is reached TCP enters into Congestion Avoidance phase. In the congestion avoidance phase, cwnd increases linearly. When a packet is lost, the receiver sends a duplicate acknowledgement (DUPACK) to the sender. In the event of receipt of 3 DUPACKs, the sender assumes packet is lost due to network congestion and retransmits the packet. After retransmission, TCP enters into Fast Recovery phase. Fast recovery algorithm governs the transmission of the new data until a non-duplicate ACK arrives. In the event of occurrence of timeout TCP again enters into the slow start phase. B. TCP in Wireless Environment The above explained congestion control algorithms perform poorly in wireless environment. Therefore, some modifications should be performed to make them work effectively for wireless environment. When the sender receives 3 DUPACKs, the sender is made to check if the DUPACKs are marked by CW(Congestion Warning) enabled router. If so, then, packet loss is due to network congestion and cwnd is reduced followed by Fast Retransmit and Fast recovery phases. Otherwise, TCP retrans mits the lost packet and enters into fast recovery phases without any reduction of cwnd. The proposed system eliminates the drawbacks of using TCP in wireless medium. II. RELATED WORK There are several transport schemes for differentiating packet loss to improve the performance of TCP over wireless networks. TCP NCE [3, 1] differentiates congestion from non- 1

congestion losses by computing the queue length of the bottleneck link. If the queue length is greater than a threshold value then, congestion is reported. Otherwise the packet loss is because of some noncongestion event. The formula to compute queue length (Ql) is, Ql B(RTT now RTT min) RTT now is the current round-trip time when the sender receives an ACK. RTT min is the minimum RTT observed by the TCP sender B is the bandwidth of the bottleneck link. If packet loss is due to non-congestion event, then packet reordering is checked. But TCP-NCE does not verify if RTO is spurious. of cwnd exponentially each time it receives an ACK up to slow start threshold (ssthresh) is reached, after which it enter the congestion avoidance phase. In the congestion avoidance phase, the cwnd increases linearly. Whenever packet is lost receiver sends duplicate acknowledgements (DUPACKs) back to the sender. When the sender receives 3 DUPACKs it analyses if the indication of packet loss is due to network congestion or not. If the network is congested then, TCP moves to normal fast retransmit and fast recovery phases. If the network is not congested then the sender checks whether packet reordering is present or not. If timeout happens condition for spurious timeout is checked. In both the above cases if packet reordering or spurious timeout happens then retransmission of lost packet is not performed. This improves the efficiency of TCP in wireless network. F-RTO, Forward RTO Recovery algorithm [6] is used to detect spurious RTO's. After RTO expires, the sender retransmits one outstanding packet and then monitors the first incoming ACK. If the ACK advances the congestion window (cwnd) the sender will transmit two new packets. Again, if the second ACK advances cwnd, then the sender assumes that the RTO is spurious. TCP NRT [4, 2] uses modified ECN mechanism to differentiate congestion RTO from non-congestion RTO. In modified ECN, the router is configured with only 2 parameters: minimum threshold ($min^th$) and maximum threshold ($max^th$). When a packet arrives at the router, ECN calculates the average queue length (AQL) and if it is below $min^th$, the router will not mark the packets. If the AQL exceeds $max^th$ then the packets are marked. Whenever the RTO expires, the sender checks whether the last received ACK prior to the RTO is marked. If so, the sender considers that there is congestion in the network. Otherwise the sender assumes that the RTO is due to some other noncongestion event such as random loss and spurious timeout. TCP NRT detects spurious timeout but fails to check packet reordering. The proposed scheme checks for both packet reordering and spurious timeouts in wireless networks and thereby improves the performance of TCP. III.PROPOS ED SYS TEM The architecture of the proposed system is as shown in Fig. 1. After connection is established between the sender and the receiver TCP enters the slow start phase. In the slow start phase TCP increases the size Fig.1 Architecture Diagram C. Differentiation of Congestion from Non- Congestion Losses To differentiate congestion from non-congestion losses TCP Jersey [5] is used. Congestion Warning (CW) scheme is implemented for the drop tail router queue. Whenever the average queue length exceeds a certain threshold then, mark the incoming packets by setting their CE bit in the IP header. If TCP Jersey observes that the incoming DUPACKs are marked then it declares that packet loss is due to network congestion and proceeds with normal New Reno Fast Retransmit and Fast Recovery phases. If the DUPACKs are not marked then the sender assumes that the indication of packet loss is due to some noncongestion event. Wireless networks are prone to frequent retransmissions due to non-congestion events such as packet reordering and spurious timeouts. We propose a novel method to detect packet reordering and spurious timeouts in wireless scenario. If (3 DUPACKs and CW = 0) // Non-Congestion Event explicit_retransmit () 2

fast_recovery () If (3 DUPACKs and CW = 1) // Congestion Event rate_control () explicit_retransmit () fast_recovery () Algorithm 1: Algorithm to differentiate congestion from non-congestion losses When CW = 1, the sender is intimated that the received ACK packet is marked to denote network congestion. explicit_retrans mit () procedure is exactly similar to TCP fast_retransmit () except that it allows window adjustment to be done by rate_control() procedure. The rate_control() procedure estimates the rate at which cwnd and ssthresh has to be reduced in the event of occurrence of congestion. Sudden decrease of cwnd by half in the case of normal TCP underutilizes the available network bandwidth. The formula for bandwidth estimation is as follows: Fig. 1 Packet Reordering The flow chart to detect packet reordering is shown in Fig. 3. R n RTT R t t n n n 1 1 Ln RTT R n is the estimated bandwidth when the n th ACK arrives at time t n R n-1 is the estimated bandwidth when the n-1 th ACK arrives at time t n-1 L n is the size of data that the n th ACK acknowledges. Round Trip Time (RTT) is the TCP estimation of the end-to-end RTT delay at time t n D. Detection of packet reordering Packet Reordering is the default network behavior in which the relative order of packets is altered when transported in the network. Packet reordering occurs when a packet arrives at the receiver after one or more packets that had left the source later have already arrived. Fig. 2. diagrammatically explains the concept of packet reordering. The sender sends 5 packets in the order P1, P2, P3, P4 and P5. But P1 reaches the destination after P2, P3, P4 and P5 are received. In this case, P1 is the reordered packet and the reorder length is 4. The receiver anticipates the arrival of packet P1 and sends DUPACKs to the sender. When the sender receives 3 DUPACKs it retransmits P1 but the receiver had already received P1 a little later due to packet reordering. Fig. 3 Detection of Packet Reordering To detect the occurrence of packet reordering delay-thresh is computed using the below formula: delay _ thresh _ Pack LSent Pack LAck 3 Pack LSent is the last sent packet from the source Pack LAck is the last acknowledged packet from the receiver. When the sender receives add-dupacks in addition to the first three, it is checked if it exceeds delay-thresh value. If so, then, the sender confirms packet loss due to transmission error. Otherwise, packet reordering is detected and the sender waits for normal acknowledgement to occur. Algorithm 2 states the steps involved in the detection of packet reordering. If (3 DUPACKs and CW = 1) Calculate delay_thresh_ Send new packet Enter fast recovery If (add-dupacks) 3

If (add-dupacks >= delay_thresh_) Retransmit lost packet Send new packets until normal ACK is reached Algorithm 2: Algorithm to detect packet reordering E. Detection of Spurious Timeouts Spurious timeouts are fake timeouts that are caused due to sudden increase in RTT of packets that is predominant in wireless environment. In wireless network, sudden route changes, poor connectivity between communicating nodes and network congestion cause spurious timeouts. Flow chart to detect spurious timeouts is as shown in Fig. 4. Retransmit lost packet cwnd = current value Wait for normal ACK Go to slow start phase \newline cwnd = 1 Algorithm 3: Algorithm to detect spurious timeouts IV. SIMULATION AND RES ULT NS-2 simulator is used to evaluate the performance of the above proposed scheme. A hybrid network topology is constructed as shown in Fig. 5. The wired network consists of 2 nodes, a router and a base station. Fig. 2 Hybrid network topology Fig. 4 Detection of spurious timeouts On expiration of RTO, the sender checks for network congestion. If there is no congestion in the network, the RTO is triggered due to some noncongestion event. As a result, the sender keeps track of the next expected acknowledgement in Exp_Ack. The sender now sends a new packet and then receives an acknowledgement for the same. If the newly received ACK is greater than Exp_Ack, then, RTO is spurious. Algorithm 3 explains the steps to differentiate spurious RTO s from random packet losses. If (RTO) If (last_ack_ is not marked) Store Ex_Ack_ Send new packet If Ack > Exp_Ack_ ) The data transmission rate between the wired node and the router is 2 Mbps. The data transmission rate between the router and the base station is 50 Kbps. 5 static wireless nodes are defined. The packet size is 1000 bytes and window limit is set to 5. CWDT (Congestion Warning Drop Tail Queue) is defined between router and the base station with queue limit 5 and queue weight 1.0.ECN is enabled. Uniform error model is used to generate packet loss. For routing, DSDV protocol is used. Number of retransmitted packets is the main performance metric used to evaluate the performance of the modified TCP. Fig. 3 No. of retrans missions 4

Fig. 6 shows the graph for the number of retransmitted packets for the modified TCP and the original TCP. From the plot, it is observed that the number of retransmitted packets is reduced for modified TCP. V. CONCLUS ION In this paper, TCP algorithm is altered so that it can detect packet reordering. Hence unnecessary retransmissions in wireless network is reduced which thereby improves the efficiency of TCP. This paper can be extended for future work to inc lude detection of packet reordering in the event of occurrence of timeout. REFERENCES [1] Prasanthi. S and Meejeong Lee, An Efficient TCP Algorithm for Differentiating Random Packet Losses from Spurious Retransmission Timeouts in Multi-hop Wireless Networks, 14th International Conference on High Performance Computing and Communications, 2012. [2] Prasanthi. S, Sang-Hwa Chung and Won-Suk KimAn, Enhanced TCP Scheme for Distinguishing Non-Congestion Losses from Packet Reordering over Wireless Mesh Networks, IEEE International Conference on High Performance Computing and Communications, 2011. [3] Prasanthi Sreekumari and Sang-Hwa Chung, TCP NCE: A unified solution for noncongestion events to improve the performance of TCP over wireless network, Eurasip Journal on Wireless Communication and Networking, 2011. [4] Prasanthi Sreekumari and Meejeong Lee, TCP NRT: A new TCP algorithm for differentiating non-congestion retransmission timeouts over multihop wireless networks, Eurasip Journal on Wireless Communication and Networking, 2012. [5] K. Xu, Y. Tian, and N. Ansari, TCP-Jersey for Wireless IP Communications, IEEE Journal on Selected Areas in Communications, Vol. 22, No. 4, pp. 747-756, May 2004. [6] R. Ludwig et.al., Forward RTO-recovery (FRTO): an enhanced recovery algorithm for TCP retrans missions timeout, ACM SIGCOMM Computer Communication Review 33,2 (2003). 5