2007ERA: Education and Research Archive (University of Alberta)Open access

Improving TCP resilience

Qiang Ye

Open full text 0 citations

Abstract

The Transmission Control Protocol (TCP) was designed to provide a reliable end-to-end connection between two hosts. Over time, it has become the de facto transport layer protocol in the Internet. It is important to thoroughly understand the resilience behavior of TCP in the case of network congestion and failure and improve the resilience performance of TCP if possible. We studied the detailed resilience behavior of SACK, NewReno, and Reno TCP, and recommended the proper resilience objectives for TCP transport in the Internet. Specifically, with SACK TCP, we found two restoration objectives, τ 1,S and τ2,S. With NewReno TCP, we also found two restoration objectives, τ1,NR and τ2,NR. τ1,NR is approximately twice as large as τ1,S when rwnd is large. τ2,NR is essentially the same as τ 2,S. With Reno TCP, we found a recovery objective of 200ms for the DS0 access; for DS1 and OC-3c access, there seem to be no critical points from 15ms to 1s. After understanding the detailed behavior of SACK TCP, we proposed two types of mechanisms, Probing and Pacing, to improve the resilience of SACK TCP. SACK TCP with Probing and Pacing were modeled with Petri nets. The Petri net models were formally analyzed to increase our confidence about the correctness of the proposed changes. Our experimental results demonstrate that SACK TCP with Probing and Pacing is much more resilient than standard SACK TCP. To test the effectiveness of the proposed protocols, we proposed a hybrid protocol development methodology, embedding formal models into simulation, that combines the use of formal methods and simulation to obtain the advantages of deep formal verification with the broad spectrum testing of simulation. With the assistance of this hybrid methodology, we tested α-min Paced SACK TCP in a NSF-like network. The results show that α-min Paced SACK TCP performs better than SACK TCP in terms of resilience, not only in single session scenarios, but also in multiple session cases, even if these TCP sessions have varied RTTs.

About this research paper

What this paper is about

The Transmission Control Protocol (TCP) was designed to provide a reliable end-to-end connection between two hosts. Over time, it has become the de facto transport layer protocol in the Internet. It is important to thoroughly understand the resilience behavior of TCP in the case of network congestion and failure and improve the resilience performance of TCP if possible. We studied the detailed resilience behavior of SACK, NewReno, and Reno TCP, and recommended the proper resilience objectives for TCP transport in the Internet. Specifically, with SACK TCP, we found two restoration objectives, τ 1,S and τ2,S. With NewReno TCP, we also found two restoration objectives, τ1,NR and τ2,NR. τ1,NR is approximately twice as large as τ1,S when rwnd is large. τ2,NR is essentially the same as τ 2,S. With Reno TCP, we found a recovery objective of 200ms for the DS0 access; for DS1 and OC-3c access, there seem to be no critical points from 15ms to 1s. After understanding the detailed behavior of SACK TCP, we proposed two types of mechanisms, Probing and Pacing, to improve the resilience of SACK TCP. SACK TCP with Probing and Pacing were modeled with Petri nets. The Petri net models were formally analyzed to increase our confidence about the correctness of the proposed changes. Our experimental results demonstrate that SACK TCP with Probing and Pacing is much more resilient than standard SACK TCP. To test the effectiveness of the proposed protocols, we proposed a hybrid protocol development methodology, embedding formal models into simulation, that combines the use of formal methods and simulation to obtain the advantages of deep formal verification with the broad spectrum testing of simulation. With the assistance of this hybrid methodology, we tested α-min Paced SACK TCP in a NSF-like network. The results show that α-min Paced SACK TCP performs better than SACK TCP in terms of resilience, not only in single session scenarios, but also in multiple session cases, even if these TCP sessions have varied RTTs.

Why it matters

A significance statement is not available in the OpenAlex record.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

The Transmission Control Protocol (TCP) was designed to provide a reliable end-to-end connection between two hosts. Over time, it has become the de facto transport layer protocol in the Internet. It is important to thoroughly understand the resilience behavior of TCP in the case of network congestion and failure and improve the resilience performance of TCP if possible. We studied the detailed resilience behavior of SACK, NewReno, and Reno TCP, and recommended the proper resilience objectives for TCP transport in the Internet. Specifically, with SACK TCP, we found two restoration objectives, τ 1,S and τ2,S. With NewReno TCP, we also found two restoration objectives, τ1,NR and τ2,NR. τ1,NR is approximately twice as large as τ1,S when rwnd is large. τ2,NR is essentially the same as τ 2,S. With Reno TCP, we found a recovery objective of 200ms for the DS0 access; for DS1 and OC-3c access, there seem to be no critical points from 15ms to 1s. After understanding the detailed behavior of SACK TCP, we proposed two types of mechanisms, Probing and Pacing, to improve the resilience of SACK TCP. SACK TCP with Probing and Pacing were modeled with Petri nets. The Petri net models were formally analyzed to increase our confidence about the correctness of the proposed changes. Our experimental results demonstrate that SACK TCP with Probing and Pacing is much more resilient than standard SACK TCP. To test the effectiveness of the proposed protocols, we proposed a hybrid protocol development methodology, embedding formal models into simulation, that combines the use of formal methods and simulation to obtain the advantages of deep formal verification with the broad spectrum testing of simulation. With the assistance of this hybrid methodology, we tested α-min Paced SACK TCP in a NSF-like network. The results show that α-min Paced SACK TCP performs better than SACK TCP in terms of resilience, not only in single session scenarios, but also in multiple session cases, even if these TCP sessions have varied RTTs.

Key concepts: Zeta-TCP, Sack, TCP acceleration, TCP global synchronization, TCP Friendly Rate Control, TCP hole punching, Compound TCP, Computer science

Related papers

Back to paper searchBrowse research topicsOriginal source
Improving TCP resilience — Research Paper | ScholarLens