Timestamp Retransmission Algorithm for TCP-Cherry over InterPlaNetary Internet

Similar documents
UTILIZATION-BASED CONGESTION CONTROL

Workshop on ns-3, Implementation and Evaluation of Licklider Transmission Protocol (LTP) in ns-3

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

WB-RTO: A Window-Based Retransmission Timeout. Ioannis Psaras, Vassilis Tsaoussidis Demokritos University of Thrace, Xanthi, Greece

348 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO. 2, FEBRUARY 2004

TCP-Peach and FACK/SACK Options: Putting The Pieces Together

Lecture 7: Flow Control"

Internet Networking recitation #10 TCP New Reno Vs. Reno

TP-Planet: A Reliable Transport Protocol for InterPlaNetary Internet

RD-TCP: Reorder Detecting TCP

DualRTT: Enhancing TCP Performance During Delay Spikes

Performance Evaluation of SCTP with Adaptive Multistreaming over LEO Satellite Networks

Data Link Control Protocols

TCP Congestion Control in Wired and Wireless networks

Selective-TCP for Wired/Wireless Networks

ATL : An Adaptive Transport Layer Protocol Suite for Next Generation Wireless Internet

Investigating the Use of Synchronized Clocks in TCP Congestion Control

image 3.8 KB Figure 1.6: Example Web Page

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

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

TCP Strategies. Keepalive Timer. implementations do not have it as it is occasionally regarded as controversial. between source and destination

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

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

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

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

Mobile Transport Layer Lesson 10 Timeout Freezing, Selective Retransmission, Transaction Oriented TCP and Explicit Notification Methods

Department of Informatics Networks and Distributed Systems (ND) group TCP "TEB" (Timer-based Exponential Backoff): Code and Rationale

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

Networked Systems and Services, Fall 2017 Reliability with TCP

UNIT IV -- TRANSPORT LAYER

TCP in Asymmetric Environments

Making TCP Robust Against Delay Spikes

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

TCP PERFORMANCE FOR FUTURE IP-BASED WIRELESS NETWORKS

Exercises TCP/IP Networking With Solutions

TCP Flavors Simulation Evaluations over Noisy Environment

Retransmission Policies With Transport Layer Multihoming

CIS 632 / EEC 687 Mobile Computing

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks

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

Effect of SCTP Multistreaming over Satellite Links

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

CS268: Beyond TCP Congestion Control

TCP Congestion Control

TCP Congestion Control

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Improving the Robustness of TCP to Non-Congestion Events

CS 268: Wireless Transport Protocols. Kevin Lai Feb 13, 2002

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

CMPE 257: Wireless and Mobile Networking

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

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

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

TCP congestion control:

CS321: Computer Networks Error and Flow Control in TCP

CSE 573S Protocols for Computer Networks (Spring 2005 Final Project)

Performance Analysis of TCP Variants

Networked Systems and Services, Fall 2018 Chapter 3

TCP Congestion Control

TCP Enhancements in Linux. Pasi Sarolahti. Berkeley Summer School Outline

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

TCP Selective Acknowledgement

Review: Performance Evaluation of TCP Congestion Control Mechanisms Using Random-Way-Point Mobility Model

Reliable Transport II: TCP and Congestion Control

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW!

Wireless TCP Performance Issues

Chapter 3 Review Questions

RED behavior with different packet sizes

8. TCP Congestion Control

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

Delayed ACK Approach for TCP Performance Improvement for Ad Hoc Networks Using Chain Topology

Improved Datagram Transport Protocol over Wireless Sensor Networks- TCP Fairness

Problem 7. Problem 8. Problem 9

Performance Enhancement Of TCP For Wireless Network

Lecture 15: Transport Layer Congestion Control

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

Evaluating the Eifel Algorithm for TCP in a GPRS Network

An Extension to the Selective Acknowledgement (SACK) Option for TCP

under grant CNS This work was supported in part by the National Science Foundation (NSF)

TCP OVER AD HOC NETWORK

cs/ee 143 Communication Networks

file:///c:/users/hpguo/dropbox/website/teaching/fall 2017/CS4470/H...

A Survey of Recent Developments of TCP. Sally Floyd ACIRI (AT&T Center for Internet Research at ICSI) October 17, 2001

TCP/IP Performance ITL

TCP RENO, SACK AND VEGAS PERFORMANCE ANALYSIS

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

Information Network 1 TCP 1/2. Youki Kadobayashi NAIST

MCS-377 Intra-term Exam 1 Serial #:

The Impact of Delay Variations on TCP Performance

100 Mbps. 100 Mbps S1 G1 G2. 5 ms 40 ms. 5 ms

Lecture 7: Flow & Media Access Control"

Evaluation of a Queue Management Method for TCP Communications over Multi-hop Wireless Links

PERFORMANCE ANALYSIS OF SNOOP TCP WITH FREEZING AGENT OVER CDMA2000 NETWORKS

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

Appendix B. Standards-Track TCP Evaluation

Modeling the Goodput of TCP NewReno in Cellular Environments

Transport Protocols and TCP: Review

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

An Issue in NewReno After Fast Recovery. Yoshifumi Nishida

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

Transcription:

Network and Communication Technologies; Vol. 1, No. 2; 2012 ISSN 1927-064X E-ISSN 1927-0658 Published by Canadian Center of Science and Education Timestamp Retransmission Algorithm for TCP-Cherry over InterPlaNetary Internet Satoshi Utsumi 1 & Salahuddin Muhammad Salim Zabir 2 1 Department of Control and Information System Engineering, Tsuruoka National College of Technology, Yamagata, Japan 2 Orange Labs, France Telecom, Tokyo, Japan Correspondence: Satoshi Utsumi, Department of Control and Information System Engineering, Tsuruoka National College of Technology, Yamagata, Japan. Tel: 81-235-25-9077. E-mail: u-satoshi@tsuruoka-nct.ac.jp Received: September 5, 2012 Accepted: October 26, 2012 Online Published: November 12, 2012 doi:10.5539/nct.v1n2p59 URL: http://dx.doi.org/10.5539/nct.v1n2p59 Abstract InterPlaNetary (IPN) Internet links have extremely long propagation delays and very high link error rates. In such networks, lost retransmissions of the TCP data segments are common. Existing TCP schemes can detect lost retransmissions only through TCP retransmission timeout and hence are inefficient in such scenarios. In this paper we propse a new algorithm for handling such lost retransmission efficiently for TCP-Cherry over IPN Internet. Simulations show that our algorithm improves TCP-Cherry goodput by upto 13 times under high link error. Keywords: InterPlaNetary Internet, congestion control, TCP-Cherry, TCP timestamp option, TCP retransmission 1. Introduction With the increase in space missions like human transport to the International Space Station, Mars explorers and commercial space flights, the concept of InterPlaNetary (IPN) Internet has been becoming popular in recent years. The IPN Internet refers to connecting more than one network each of which is separated from others by stellar distance. Such a challenging networking environment is characterized by extremely long propagation delay, low bandwidth and very high link error rates (Akan et al., 2004). In such scenarios, long propagation delay and high link errors often lead to repeated congestion detection by connection oriented protocols like TCP. Also, often the retransmitted segments get lost in the network. Several mechanisms have been proposed to address issues related to the end to end connectivity over the IPN Internet. An essential requirement for such schemes should be the ability to deploy over both the intra-planetary and the inter-planetary networking scenarios. With a view to addressing the above requirements, in this paper, we propose a new algorithm to deploy along with TCP-Cherry (Utsumi et al., 2008; 2009). TCP Cherry is already known for its robustness compared with other mechanisms over satellite networks with long propagation delays and high link errors. The new algorithm ensures efficient handling of lost retransmissions under the harsh IPN conditions. As such, the performance of TCP Cherry is optimized for intra-planetary and inter-planetary scenarios. Simulation results show that our algorithm can improve the goodput yield of TCP-Cherry up to 13 times in high link error cases. Our algorithm can also be deployed with TP-Planet (Akan et al., 2004), but performance gains are lower due to NIL segment overheads. The rest of the manuscript is organized as follows. In section 2, we discuss existing mechanisms that address end to end connectivity for IPN Internet. We propose our timestamp retransmission algorithm in section 3. In section 4, we evaluate our proposed algorithm by simulation. Finally, we conclude the manuscript in section 5. 2. Related Works SCPS-TP (Wang et al., 2007) is a transport protocol for space communications. It has the selective negative acknowledgement (SNACK) option to detect lost segments. However, the SNACK option for SCPS-TP cannot detect lost retransmissions. LTP (Wang et al., 2011) is also for space communications. It detects lost segments with the report segments for 59

reliable parts of blocks (red parts). Report segments acknowledge selectively for data segments. Like acknowledgement mechanisms for traditional TCPs, report segments for LTP cannot detect lost retransmissions. As the algorithms to detect lost retransmissions, duplicate acknowledgement counting (DAC) (Kim & Lee, 2004) and SACK+ (Kim et al., 2004) have been proposed. The DAC algorithm detects lost retransmissions by counting the number of duplicate acknowledgements. The SACK+ detects lost retransmissions by investigating SACK blocks. As well as TCP-Peach (or TCP-Peach+), TCP-Cherry uses low-priority segments with data block a lot. Then, DAC or SACK+ cannot apply to TCP-Cherry for detecting lost retransmissions deterministically, because of indeterminate arriving acknowledgements (duplicate acknowledgements or SACKs) for the low-priority segments. That is, the ACKs for the low-priority segments may lead to miss-counting the number of duplicate acknowledgements at the DAC algorithm. The ACKs for the supplement segments of TCP-Cherry may acknowledge unexpected data blocks for the SACK+ algorithm. For example, the ACKs for the supplement segments transmitted before detecting the first lost of the data segment may acknowledge the data blocks which sequence numbers are greater than the sequence number detecting the lost retransmission for SACK+. 3. Our Proposal In the condition where the probability of segment loss due to link errors is large, duplicate segment losses, which are losses of the segments retransmitted by TCP due to three duplicate acknowledgements (dupacks), occur frequently. Conventional TCP can detect such duplicate segment losses only by TCP RTO (Retransmission Timeout). The high error rate over IPN increases the probability of lost retransmissions of the TCP data segments dramatically. Without special arrangements, a lost retransmission leads to TCP Retransmission Timeout (RTO) which adversely affects TCP performance. For IPN, RTO can be significantly high. Hence, waiting for RTO to occur leads to delay in recovering from the loss. Despite the Fast-Forward Start algorithm in TCP-Cherry, this may lead to considerable inefficiencies. In addition, for multiple lost retransmissions in a single window, the effect gets even worse. To overcome this problem and thus recover multiple lost retransmissions in one window size during one RTT, we propose a new retransmission algorithm for handling such losses. We name this as the Timestamp Retransmission algorithm (Figure 1). Our algorithm slightly modifies the mechanisms of original timestamp option in RFC 1323 (Jacobson et al, 1992) without changing its functionalities. In each dupack, the receiver echoes the Timestamp value (TSval) corresponding to the segment for which the dupack (SACK) is generated. However, the sender ignores the Timestamp echo reply (TSecr) field for RTT calculation purposes unless the acknowledgement advances the left edge of the window (i.e., new segment is being acknowledged). This tricky modification ensures full functional conformance to the provisions of RFC 1323. To accomplish the above, the sender stores the sequence numbers and corresponding TSvals of the retransmitted segments in a table called Timestamp Retransmission List. Figure 1. Timestamp retransmission algorithm 3.1 Timestamp Retransmission Algorithm We explain the algorithm of Figure 1 here. The parameters and functions used in the algorithm are described as follows. 60

a parameter TSval is the timestamp value for the next transmitted segment. a parameter TSecr is the timestamp echo of the received segment at that time. a function TimestampRetransmissionList(x) returns the TSval corresponding to the retransmitted data segment of the sequence number x in the TimestampRetransmissionList. RemoveTimestampRetransmissionList(x), a function that removes the combinations of the sequence number x and the corresponding TSvals. UpdateTimestampRetransmissionList(x, y), a function that updates the TSval for the sequence number x to y. Retransmission(x), a function that retransmits the data segment corresponding to the sequence number x. Upon receiving a SACK, TCP sender compares the TSvals of the (sequence numbers, TSvals of retransmitted data segments) tuples in the Timestamp Retransmission List with the TSecr in the SACK. If all of the TSvals in Timestamp Retransmission List are larger than the TSecr in the SACK, the TCP sender does nothing about Timestamp Retransmission List (Case 1). If some TSvals in Timestamp Retransmission List are smaller than TSecr in the SACK and the SACK acknowledges the sequence numbers corresponding to the TSvals in the list, the TCP sender removes the corresponding sequence numbers-tsvals entries (Case 2). If some TSvals in Timestamp Retransmission List are smaller than TSecr in the SACK and the SACK does not acknowledge the sequence numbers corresponding to the TSvals in the list, the TCP sender retransmits the data segment corresponding to the sequence number without waiting for timeout and updates the TSvals for the sequence numbers in the table accordingly (Case 3). During the first retransmission of the data segments, available bandwidth is estimated by corresponding low-priority supplement segments and corresponding congestion control actions are taken by the TCP sender. Hence, even in Case 3, the sender does not shrink the congestion window or transmit supplement segments. It infers that the loss of the retransmitted segment is due to link errors rather than congestion. 3.2 Timestamp Retransmission Example Scenario Figure 2 shows an example of how a timestamp retransmission occurs. In this figure, rather than representing with real sequence number, we show a block of data using a single sequence number for easy understanding. Let us assume that at time t 0 (Figure 2) the sender transmits the data segment which will be lost in the network. We assume maxcwnd=64. At time t=t 0 : The sender transmits the data segment which will be lost in the network. At time t=t 1 (where, t 1 t 0 +RTT): According to 3 dupacks (SACKs), the sender retransmits the data segments which was lost, and will be lost again in the network. The sender restores the combination of the sequence number (1028) and TSval (10068) in the retransmitted segment in Timestamp Retransmission List. At time t=t 2 (where, t 2 t 0 +2 RTT): Since the TSval (10068) for the retransmitted segment with the sequence number 1028 in the Timestamp Retransmission List is smaller than the TSecr (10069) of the received SACK corresponding to the supplement segment with the sequence number 1130, the sender retransmits again the data segment with the sequence number 1028 without waiting for timeout. In our proposal, TCP-Cherry sender needs the storage memory for Timestamp Retransmission List. Timestamp Retransmission List stores the information for the retransmitted segment in current congestion window. Then, Timestamp Retransmission List needs only the storage size S < O(W) = O(RTT). Here, W is the congestion window size, which is linear for RTT. That is, the needed storage size is scalable for RTT. 61

sender receiver Congestion Avoidance First-Aid Recovery Fast Retransmit TSval SeqNo 10000 1027 10001 1028 10002 1029 10003 1030 10004 1031 10030 10031 10032 10060 10061 10062 10064 10066 10067 10068 10069 10070 10110 10112 10113 10140 10141 10142 10144 1054 1055 1056 1074 1075 1076 1077 1078 1079 1028 1130 1131 1168 1080 1081 1098 1099 1100 1101 AckNo TSecr 1027 10000 1027(1029) 1027(1030) 1027(1031) 1027(1054) 10030 1027(1055) 10031 1027(1056) 10032 10002 10003 10004 1027(1074) 10060 1027(1075) 10061 1027(1076) 10062 1027(1077) 10064 1027(1078) 10066 1027(1079) 10067 1027(1130) 10069 1027(1131) 10070 data segment (normal priority segment) retransmission data segment (normal priority segment) supplement segment (low priority segment) data ACK (normal priority segment) supplement ACK (low priority segment) : Segment lost in the network Congestion Avoidance Timestamp Retransmission 10147 10148 10150 10151 10152 10153 10180 10181 10182 10184 10187 10188 1102 1103 1028 1104 1105 1106 1162 1163 1165 1168 1169 1170 1027(1080) 1027(1081) 1027(1098) 1027(1099) 1027(1100) 1027(1101) 10144 1027(1102) 10147 1027(1103) 10148 1103 1104 10150 10151 10112 10113 10140 10141 10142 Figure 2. Timestamp retransmission behavior 4. Performance Evaluation As mentioned in section 1, our objective in this paper is to ensure highest performance from TCP-Cherry in both intra-planetary and inter-planetary scenarios using our proposed novel algorithm. For performance evaluation, we use the network simulator, ns-2. As such, we evaluate the performance of TCP-Cherry with Timestamp Retransmission algorithm in deep space links of IPN Internet, through several experiments by varying packet loss probability p. We assume the number of flow N = 1, the link capacity, c = 130 segments/s which is approximately 1Mb/s for TCP segments of 1,000 bytes, the buffer size of the uplink, K = 100 segments, the maximum congestion window size, maxcwnd = 76,800 segments, the buffer size of receiver, rwnd = 512,000 segments, RTT = 600 seconds, and Connection Duration = 10,000sec. We vary segment loss probability due to link errors from 10-4 to 10-2 (/segment) (Akan et al., 2004). Table 1 shows the simulation configuration. Figure 3 and Figure 4 are results from simulations. The definitions of goodput and overhead are the same as (Utsumi et al., 2008). Simulation results show that our proposed algorithm elevates TCP-Cherry performance over IPN significantly (upto 13 times in goodput) particularly under the situation when the link error p = 0.01 (/segment). 62

Table 1. Simulation configuration 1 Number of Flows 1 Capacity for Deep space link 1 Mbps RTT of Deep space link 600 sec Drop rate (random) for Deep space link 10-4 10-2 /packets (varied) Buffer size for Deep space link 100 packets Maximum congestion window size 76,800 packets Buffer size for Receiver 512,000 packets Segment size 1,000 bytes IP Version 4 Simulation duration 10,000 sec Next, we evaluate the performance of TCP-Cherry with Timestamp Retransmission algorithm in deep space links of IPN Internet with congestion, through several experiments by varying packet loss probability p. We assume the number of flows, N = 10, the link capacity, c = 130 segments/s which is approximately 1Mb/s for TCP segments of 1,000 bytes, the buffer size of the uplink, K = 100 segments, the maximum congestion window size, maxcwnd = 7,680 segments, the buffer size of receiver, rwnd = 512,000 segments, RTT = 600 seconds, and Connection Duration = 10,000sec. We vary segment loss probability due to link errors from 10-4 to 10-2. Table 2 shows the simulation configuration. Figure 5, Figure 6 and Figure 7 are results from simulations. Table 2. Simulation configuration 2 Number of Flows 10 Capacity for Deep space link 1 Mbps RTT of Deep space link 600 sec Drop rate (random) for Deep space link 10-4 10-2 /packets (varied) Buffer size for Deep space link 100 packets Maximum congestion window size 76,800 packets Buffer size for Receiver 512,000 packets Segment size 1,000 bytes IP Version 4 Simulation duration 10,000 sec The definitions of goodput, fairness and overhead are as follows (Utsumi et al., 2008), AmountOfCumulativelyAcknowledgedData Goodput = ConnectionDuration where AmountOfCumulativelyAcknowledgedData is the number of bytes acknowledged at senders (i.e., excluding retransmitted data and SACKed data). AmountOfDuplicate Re ceiveddata Overhead = 100(%) AmountOfAll Re ceiveddata where AmountOfDuplicateReceivedData is the number of bytes of duplicate data received (i.e., segments with the same sequence number received more then once) by receivers and AmountOfAllReceivedData is the number of bytes of all data received by receivers. Fairness m x 2 i i= 1 = m 2 m x i i= 1 63

where m connections with same connection durations share the link capacity, and x i is the goodput of connection i. Figure 3. Our algorithm improves goodput significantly at high error rates Figure 4. Our algorithm reduces overhead significantly at high error rates Figure 5. Goodput with 10 flows Figure 6. Overhead with 10 flows 64

Figure 7. Fairness with 10 flows Since retransmission algorithms for SCPS-TP and LTP cannot detect lost retransmissions, their performance applied to TCP-Cherry over IPN Internet may be similar to TCP-Cherry without Timestamp Retransmission algorithm, that is, only with the normal fast retransmit algorithm. 5. Conclusion In this paper we propose a new algorithm, named Timestamp Retransmission Algorithm, for deployment along with TCP-Cherry to handle lost retransmissions over IPN Internet efficiently. Simulation results show that our proposed algorithm elevates TCP-Cherry performance over IPN significantly (upto 13 times in goodput) particularly under high link error. References Akan, O. B., Fang, J., & Akyildiz, I. F. (2004). TP-Planet: A Reliable Transport Protocol for InterPlaNetary. Akan, O. B. (2004). TP-planet: a reliable transport protocol for interplanetary Internet. IEEE Journal on Selected Areas in Communications, 22(2), 348-361. http://dx.doi.org/10.1109/jsac.2003.819985 Jacobson, V., Barden, R., & Borman, D. (1992). TCP Extensions for High Performance. RFC 1323. Kim, B., Kim, D., & Lee, J. (2004). Lost retransmission detection for TCP SACK. IEEE Commun. Lett., 8, 600-6002. http://dx.doi.org/10.1109/lcomm.2004.835326 Kim, B., & Lee, J. (2004). Retransmission loss recovery by duplicate acknowledgement counting. IEEE Commun. Lett., 8, 88-90. http://dx.doi.org/10.1109/lcomm.2003.822525 Utsumi, S., Zabir, S. M. S., & Shiratori, N. (2008). TCP-Cherry: A new approach for TCP congestion control over satellite IP networks. Computer Communications, 31, 2541-2561. Utsumi, S., Zabir, S. M. S., & Shiratori, N. (2009). TCP-Cherry for satellite IP networks: analytical model and performance evaluation. Computer Communications, 32, 1377-1383. Wang, R., Aryasomayajula, N. C., Ayyagari, A., & Zhang, Q. (2007). An Experimental Performance Evaluation of SCPS-TP over Cislunar Communications Links. Proc. of IEEE Wireless Communications and Networking Conference (WCNC), 2603-2607. Wang, R., Burleigh, S. C., Parikh, P., Lin, C. J., & Sun, B. (2011). Licklider Transmission Protocol (LTP)-Based DTN for Cislunar Communications. IEEE/ACM Transactions on Networking, 19, 359-368. http://dx.doi.org/10.1109/tnet.2010.2060733 65