SlideShare une entreprise Scribd logo
1  sur  5
Télécharger pour lire hors ligne
MainlineNet Holdings


     A Brief Discussion of Extreme TCP




01.01.2012
A Brief Discussion of Extreme TCP


I. Introduction.

        Thank you for your interest in Extreme TCP, the revolutionary technology that will soon speed up the
Internet. This document will briefly discuss the technical nature of Extreme TCP as well as the commercial
potential of this technology. Extreme TCP is developed and fully owned by Mainline Net Holdings Limited, a
British Virgin Islands company.



II. What is Extreme TCP?

        This discussion requires some familiarity with the overall structure of the Internet and Extreme TCP.
A concise description of these concepts follows.



  A. TCP and the Internet.

        TCP (Transmission Control Protocol) is one of the most important protocols of the Internet. It is
generally used to transmit data over the Internet or other networks. TCP is a guaranteed delivery protocol.
This means that TCP attempts to guarantee that all packets that are sent by a sender will be delivered in the
order in which they were sent. This is not an easy task because the networking elements TCP relies on are
rather chaotic and do not guarantee delivery.


        The Internet and other networks that feature TCP usually utilize various electronic devices to facilitate
communications. These devices can be switches, routers, bridges and similar devices. They receive packets of
data, process them and send them off to other switches and routers, or to the end recipient. A packet of data
sent by a sending computer (a server) to a receiving computer (a client) can encounter more than a dozen
such devices en route. Usually these devices (referred in general as routers hereafter), feature local memories
or buffers which store data that is to be processed. I f a device receives data faster than it can process it, the
data stored in its buffer that is waiting to be processed increases. Eventually, the data to be stored in the buffer
may exceed the storage capacity of the buffer. In such an event the router usually simply deletes or drops any
data that it cannot store. Thus, data can easily be lost en route from a server to a client.


        TCP, however, is supposed to guarantee delivery of all data. To achieve this, TCP requires that the
server and client keep track of the data sent, and i f any packets are lost en route, such loss is to be detected
and the lost packets are to be resent. Thus, lost packets are re-sent until they are received by the client, thus
allowing TCP to guarantee delivery of all packets.


        The above scheme for guaranteed delivery seems simple at first glance, but it has the potential to
cause instabilities of network traffic. Take, for example, a server that sends out data to a client. This may be an
Internet server that sends a webpage to a client. It would be logical for the server to send the data at the
maximum rate the server is physically capable of sending data, as to ensure that the client receives the website
as quickly as possible. As is usually the case, the data would pass through at least one router before it reaches
the client. This router would usually process data coming from many other servers and addressed to many
other clients. But what i f the router gets swamped, i.e., it receives more
data than it can process. It will try to store data in its buffers until the buffers run out of space and then it will
start dropping the data. The TCP protocol implementation running at the server will eventually notice that
data is being dropped and will resend the dropped data. But the router may still be swamped, and may drop
the resent data as well. Furthermore all other servers sending data through this router may be having their
data dropped and may also be resending dropped data that may in turn be dropped again. In this situation, the
overall data transfer rate of each server eventually drops to 0, as each server simply keeps resending the same
data over and over. This is referred to as congestion. Thus, i f too much data is sent over a TCP network the
network can completely stop transmitting data (or the data transmission rates can greatly decrease from the
designed network capacity). For this reason, a parallel is often made between TCP networks and physical
highways. I f too many cars go on a highway, congestion occurs and no cars can move. Similarly, i f too much
data is sent over a TCP network a congestion condition may occur which will result in a great reduction of the
data transfer rates of the network.


       In order to avoid congestion conditions, the TCP protocol includes a mechanism referred to as the
congestion avoidance algorithm. Congestion avoidance attempts to control the rates at which each server
sends data in order to avoid congestion. Furthermore, the congestion avoidance algorithm is configured to
detect i f a congestion condition occurs (usually evidenced by dropped packets), and i f it does, greatly
reduce the transmission speed in order to allow the congestion to clear up.


       The task of a congestion avoidance algorithm can be likened to the game of Blackjack. On one hand, the
algorithm should allow the greatest possible transmission speed in order to provide for faster downloads. On
the other hand, the algorithm should make sure that the download speed does not exceed a threshold which
will cause network congestion which in turn causes all downloads to slow down to a crawl. Thus, i f we define
an optimal transmission speed to be the highest transmission speed that does not result in congestion, the
goal of the congestion avoidance algorithm is to keep transmission at the optimal transmission speed at all
times without exceeding it. The problem is that the optimal transmission speed is usually not known in
advance and it tends to change with time.



  B. Extreme TCP

       In brief, Extreme TCP is an improvement of the TCP congestion avoidance algorithm. Mainline
engineers determined that the TCP congestion avoidance algorithm is far from optimal. It tends to
periodically speed up and slow down transmission, thus resulting in highly fluctuating download speeds. In
some cases, it tends to cause periodic congestions. In other cases, the TCP congestion avoidance algorithm
does not cause congestions, but artificially limits download speeds to speeds much lower than the optimal
download speed.


       Armed with a very thorough and complete understanding of routers and networks, Mainline engineers
developed an advanced congestion control algorithm that performs much better than the TCP one. The result
is Extreme TCP. Extreme TCP is based on complex models of the behavior of modern routers and other
network equipment. Extreme TCP works with ordinary TCP implementations, and it is only meant to replace
the congestion avoidance code of an existing TCP implementation.


      Extreme TCP has an uncanny ability to raise transmission speeds higher than standard TCP and yet at
the same time avoid dropped packets and congestion events that are usually caused by TCP. In practice,
Extreme TCP tends to quickly adopt a high transmission speed (which is probably close to the
optimal speed) and to keep transmitting at that high speed while avoiding congestion events, while TCP
features highly fluctuating transmission speeds as it periodically hits the threshold and has to sharply
decrease the transmission speed. In cases where TCP artificially limits the transmission speed to rates far
below the threshold, Extreme TCP has no such limits and allows for much higher speeds. While Extreme TCP
does not completely avoid dropped packets and congestion events, these tend to be much rarer than they are
for standard TCP. I f a packet is dropped, Extreme TCP decreases the transmission speed to allow the
congestion to dissipate (as does TCP) and yet Extreme TCP is usually able to raise the transmission speed
back to high levels much quicker than TCP.


       One of the other advantages of Extreme TCP is that it is a pure software solution that can be easily
applied as a software patch to the TCP/IP stack of a computer. Thus, Extreme TCP does not require
complex hardware upgrades. Furthermore, the Extreme TCP software need not be present at both sides of
communication (i.e., server and client). It only needs to be present at the computer that sends data (the
server) in order to provide for a significant improvement in the transmission speeds of the data. I f two
computers send data to each other and only one features Extreme TCP, the improvements of Extreme TCP
will be present only for the data sent by the computer that has Extreme TCP loaded thereon, but the
communications of the other computer will not be negatively effected by Extreme TCP. This is a significant
advantage because, as opposed to much other software that is intended to improve the Internet, Extreme
TCP does not require high adoption rates in order to work.


       In our testing, Extreme TCP showed improvement in practically all conditions we tested. For
connections of non trivial length, such as California to New York, or New York to London, the
improvement was 4 to 10 times (that is 400%-1000%). For longer connections (such as
California-London), the improvement went up to 14 times (1400%). For shorter connections the
improvement may be less but still noticeable. For really short connections (such as a LAN) there may be
no noticeable improvement. The improvement may also be limited i f the upload bandwidth is limited. In
such cases there simply isn't enough room in the connection for the improvement brought about the
Extreme TCP algorithm. This is usually not an issue in the US and Europe, but may be an issue for some
US-South/Latin America connections where we measured about a 30% improvement.
I I I . Conclusion


        While discussion herein may center on the Internet, it applies to all networks that use TCP, or similar
guaranteed delivery protocols. Thus, while the Internet is by far the largest TCP utilizing network, there are
other networks (such as various closed government, military or corporate networks) that also use TCP and
that would greatly benefit from Extreme TCP. By the same token, some Internet communication may not use
TCP, but another transmission level protocol that does not guarantee delivery (such as, for example, UDP).
Extreme TCP will benefit only communications that use TCP or a similar protocol that guarantees delivery
and utilizes congestion control. Currently, most Internet communications do use TCP, so Extreme TCP can
affect and imrove most of the present Internet.




                                                           Mainline Net Holdings, Ltd. 78 YORK STREET
                                                                                       LONDON W1H 1DP
                                                                                         United Kingdom

Contenu connexe

Tendances

User Datagram protocol For Msc CS
User Datagram protocol For Msc CSUser Datagram protocol For Msc CS
User Datagram protocol For Msc CSThanveen
 
TCP- Transmission Control Protocol
TCP-  Transmission Control Protocol TCP-  Transmission Control Protocol
TCP- Transmission Control Protocol Akhil .B
 
TCP Over Wireless
TCP Over WirelessTCP Over Wireless
TCP Over WirelessFarooq Khan
 
Iaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd Iaetsd
 
UDP - User Datagram Protocol
UDP - User Datagram ProtocolUDP - User Datagram Protocol
UDP - User Datagram ProtocolPeter R. Egli
 
Tcp Udp Icmp And The Transport Layer
Tcp Udp Icmp And The Transport LayerTcp Udp Icmp And The Transport Layer
Tcp Udp Icmp And The Transport Layertmavroidis
 
Bt0072 computer networks 2
Bt0072 computer networks  2Bt0072 computer networks  2
Bt0072 computer networks 2Techglyphs
 
TCP Theory
TCP TheoryTCP Theory
TCP Theorysoohyunc
 
Computer network (18)
Computer network (18)Computer network (18)
Computer network (18)NYversity
 
Master Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to ExpertMaster Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to ExpertAbhishek Sagar
 

Tendances (20)

Mc unit 4-jwfiles
Mc unit 4-jwfilesMc unit 4-jwfiles
Mc unit 4-jwfiles
 
TCP and UDP
TCP and UDP TCP and UDP
TCP and UDP
 
Tcp and udp
Tcp and udpTcp and udp
Tcp and udp
 
User Datagram protocol For Msc CS
User Datagram protocol For Msc CSUser Datagram protocol For Msc CS
User Datagram protocol For Msc CS
 
TCP- Transmission Control Protocol
TCP-  Transmission Control Protocol TCP-  Transmission Control Protocol
TCP- Transmission Control Protocol
 
TCP Over Wireless
TCP Over WirelessTCP Over Wireless
TCP Over Wireless
 
Transaction TCP
Transaction TCPTransaction TCP
Transaction TCP
 
Iaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incast
 
UDP - User Datagram Protocol
UDP - User Datagram ProtocolUDP - User Datagram Protocol
UDP - User Datagram Protocol
 
Tcp Udp Icmp And The Transport Layer
Tcp Udp Icmp And The Transport LayerTcp Udp Icmp And The Transport Layer
Tcp Udp Icmp And The Transport Layer
 
TCP RemoteFX and IPQ
TCP RemoteFX and IPQTCP RemoteFX and IPQ
TCP RemoteFX and IPQ
 
TCP vs UDP / Sumiet23
TCP vs UDP / Sumiet23TCP vs UDP / Sumiet23
TCP vs UDP / Sumiet23
 
Transport layer
Transport layerTransport layer
Transport layer
 
Tcp
TcpTcp
Tcp
 
Bt0072 computer networks 2
Bt0072 computer networks  2Bt0072 computer networks  2
Bt0072 computer networks 2
 
TCP Theory
TCP TheoryTCP Theory
TCP Theory
 
Computer network (18)
Computer network (18)Computer network (18)
Computer network (18)
 
Transport layer
Transport layerTransport layer
Transport layer
 
Master Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to ExpertMaster Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to Expert
 
TCP/IP and UDP protocols
TCP/IP and UDP protocolsTCP/IP and UDP protocols
TCP/IP and UDP protocols
 

En vedette

Xtcp Performance Brochure
Xtcp Performance BrochureXtcp Performance Brochure
Xtcp Performance BrochureTarik KUCUK
 
mobile marketing glosaary
mobile marketing glosaarymobile marketing glosaary
mobile marketing glosaaryTarik KUCUK
 
Windesk Concento
Windesk ConcentoWindesk Concento
Windesk ConcentoTarik KUCUK
 
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)Phaphy Wahyudhi
 

En vedette (9)

Windesk
WindeskWindesk
Windesk
 
Windesk Porta
Windesk PortaWindesk Porta
Windesk Porta
 
Xtcp Performance Brochure
Xtcp Performance BrochureXtcp Performance Brochure
Xtcp Performance Brochure
 
mobile marketing glosaary
mobile marketing glosaarymobile marketing glosaary
mobile marketing glosaary
 
Integra
IntegraIntegra
Integra
 
Windesk Concento
Windesk ConcentoWindesk Concento
Windesk Concento
 
Windesk Sunum
Windesk SunumWindesk Sunum
Windesk Sunum
 
Xtcppitchv3
Xtcppitchv3Xtcppitchv3
Xtcppitchv3
 
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)
RPP BAHASA INDONESIA KLS 9 SMP KTSP 2015/ 2016 (REVISI)
 

Similaire à Xtc Pdiscussionv2

Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PIDES Editor
 
Tcp presentation
Tcp presentationTcp presentation
Tcp presentationNoor Khalid
 
UAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsUAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsGerardo Pardo-Castellote
 
A Review on Congestion Control Approaches for Real-Time Streaming Application...
A Review on Congestion Control Approaches for Real-Time Streaming Application...A Review on Congestion Control Approaches for Real-Time Streaming Application...
A Review on Congestion Control Approaches for Real-Time Streaming Application...IJCSIS Research Publications
 
White Paper: Accelerating File Transfers
White Paper: Accelerating File TransfersWhite Paper: Accelerating File Transfers
White Paper: Accelerating File TransfersFileCatalyst
 
Network protocols
Network protocolsNetwork protocols
Network protocolsAbiud Orina
 
Mobile transport layer .
Mobile transport layer .Mobile transport layer .
Mobile transport layer .junnubabu
 
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET Journal
 
Analytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputAnalytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputIJLT EMAS
 
Internet of Things Unit - 01 Part 3A.pptx
Internet of Things Unit - 01 Part 3A.pptxInternet of Things Unit - 01 Part 3A.pptx
Internet of Things Unit - 01 Part 3A.pptxSunilNirmal9
 
Networking-basics
Networking-basicsNetworking-basics
Networking-basicsRaj Alam
 

Similaire à Xtc Pdiscussionv2 (20)

Sky x technology
Sky x technologySky x technology
Sky x technology
 
Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-P
 
IBM & Aspera
IBM & AsperaIBM & Aspera
IBM & Aspera
 
Tcp presentation
Tcp presentationTcp presentation
Tcp presentation
 
UAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsUAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time Communications
 
計概
計概計概
計概
 
A Review on Congestion Control Approaches for Real-Time Streaming Application...
A Review on Congestion Control Approaches for Real-Time Streaming Application...A Review on Congestion Control Approaches for Real-Time Streaming Application...
A Review on Congestion Control Approaches for Real-Time Streaming Application...
 
Unit 4
Unit 4Unit 4
Unit 4
 
White Paper: Accelerating File Transfers
White Paper: Accelerating File TransfersWhite Paper: Accelerating File Transfers
White Paper: Accelerating File Transfers
 
Network protocols
Network protocolsNetwork protocols
Network protocols
 
Mobile transport layer .
Mobile transport layer .Mobile transport layer .
Mobile transport layer .
 
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
 
Analytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputAnalytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum Throughput
 
Mcseminar
McseminarMcseminar
Mcseminar
 
Transport layer
Transport layer Transport layer
Transport layer
 
Transport layer
Transport layerTransport layer
Transport layer
 
TCP/IP & UDP
TCP/IP & UDPTCP/IP & UDP
TCP/IP & UDP
 
Tcp protocols
Tcp protocolsTcp protocols
Tcp protocols
 
Internet of Things Unit - 01 Part 3A.pptx
Internet of Things Unit - 01 Part 3A.pptxInternet of Things Unit - 01 Part 3A.pptx
Internet of Things Unit - 01 Part 3A.pptx
 
Networking-basics
Networking-basicsNetworking-basics
Networking-basics
 

Plus de Tarik KUCUK

üRüN Hizmet şEması
üRüN Hizmet şEmasıüRüN Hizmet şEması
üRüN Hizmet şEmasıTarik KUCUK
 
AnkesöR çöZüMü
AnkesöR çöZüMüAnkesöR çöZüMü
AnkesöR çöZüMüTarik KUCUK
 
Xtcp Sunum Ekim2012
Xtcp Sunum Ekim2012Xtcp Sunum Ekim2012
Xtcp Sunum Ekim2012Tarik KUCUK
 
Dim Era Urun Ve Servis Seti V3
Dim Era Urun Ve Servis Seti V3Dim Era Urun Ve Servis Seti V3
Dim Era Urun Ve Servis Seti V3Tarik KUCUK
 
Agis öZet 2012 Sk
Agis öZet 2012 SkAgis öZet 2012 Sk
Agis öZet 2012 SkTarik KUCUK
 
M2 m summary for all
M2 m summary for allM2 m summary for all
M2 m summary for allTarik KUCUK
 
Telecom dictionary
Telecom dictionaryTelecom dictionary
Telecom dictionaryTarik KUCUK
 
Web social media strategy sample
Web social media strategy sampleWeb social media strategy sample
Web social media strategy sampleTarik KUCUK
 
Social media business_tips
Social media business_tipsSocial media business_tips
Social media business_tipsTarik KUCUK
 
All It Standards Guidelines And Tools
All It Standards Guidelines And ToolsAll It Standards Guidelines And Tools
All It Standards Guidelines And ToolsTarik KUCUK
 
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKin
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKinElektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKin
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKinTarik KUCUK
 
Video, video commerce
Video, video commerceVideo, video commerce
Video, video commerceTarik KUCUK
 

Plus de Tarik KUCUK (16)

Voip
VoipVoip
Voip
 
üRüN Hizmet şEması
üRüN Hizmet şEmasıüRüN Hizmet şEması
üRüN Hizmet şEması
 
AnkesöR çöZüMü
AnkesöR çöZüMüAnkesöR çöZüMü
AnkesöR çöZüMü
 
Info Mobil Net
Info Mobil NetInfo Mobil Net
Info Mobil Net
 
Appy Go
Appy GoAppy Go
Appy Go
 
Xtcp Sunum Ekim2012
Xtcp Sunum Ekim2012Xtcp Sunum Ekim2012
Xtcp Sunum Ekim2012
 
Dim Era Urun Ve Servis Seti V3
Dim Era Urun Ve Servis Seti V3Dim Era Urun Ve Servis Seti V3
Dim Era Urun Ve Servis Seti V3
 
Agis öZet 2012 Sk
Agis öZet 2012 SkAgis öZet 2012 Sk
Agis öZet 2012 Sk
 
M2 m summary for all
M2 m summary for allM2 m summary for all
M2 m summary for all
 
Telecom dictionary
Telecom dictionaryTelecom dictionary
Telecom dictionary
 
Web social media strategy sample
Web social media strategy sampleWeb social media strategy sample
Web social media strategy sample
 
Social media business_tips
Social media business_tipsSocial media business_tips
Social media business_tips
 
All It Standards Guidelines And Tools
All It Standards Guidelines And ToolsAll It Standards Guidelines And Tools
All It Standards Guidelines And Tools
 
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKin
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKinElektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKin
Elektronik HaberleşMe Hizmet, şEbeke Ve Altyapilarina IlişKin
 
Video, video commerce
Video, video commerceVideo, video commerce
Video, video commerce
 
Brochure
BrochureBrochure
Brochure
 

Xtc Pdiscussionv2

  • 1. MainlineNet Holdings A Brief Discussion of Extreme TCP 01.01.2012
  • 2. A Brief Discussion of Extreme TCP I. Introduction. Thank you for your interest in Extreme TCP, the revolutionary technology that will soon speed up the Internet. This document will briefly discuss the technical nature of Extreme TCP as well as the commercial potential of this technology. Extreme TCP is developed and fully owned by Mainline Net Holdings Limited, a British Virgin Islands company. II. What is Extreme TCP? This discussion requires some familiarity with the overall structure of the Internet and Extreme TCP. A concise description of these concepts follows. A. TCP and the Internet. TCP (Transmission Control Protocol) is one of the most important protocols of the Internet. It is generally used to transmit data over the Internet or other networks. TCP is a guaranteed delivery protocol. This means that TCP attempts to guarantee that all packets that are sent by a sender will be delivered in the order in which they were sent. This is not an easy task because the networking elements TCP relies on are rather chaotic and do not guarantee delivery. The Internet and other networks that feature TCP usually utilize various electronic devices to facilitate communications. These devices can be switches, routers, bridges and similar devices. They receive packets of data, process them and send them off to other switches and routers, or to the end recipient. A packet of data sent by a sending computer (a server) to a receiving computer (a client) can encounter more than a dozen such devices en route. Usually these devices (referred in general as routers hereafter), feature local memories or buffers which store data that is to be processed. I f a device receives data faster than it can process it, the data stored in its buffer that is waiting to be processed increases. Eventually, the data to be stored in the buffer may exceed the storage capacity of the buffer. In such an event the router usually simply deletes or drops any data that it cannot store. Thus, data can easily be lost en route from a server to a client. TCP, however, is supposed to guarantee delivery of all data. To achieve this, TCP requires that the server and client keep track of the data sent, and i f any packets are lost en route, such loss is to be detected and the lost packets are to be resent. Thus, lost packets are re-sent until they are received by the client, thus allowing TCP to guarantee delivery of all packets. The above scheme for guaranteed delivery seems simple at first glance, but it has the potential to cause instabilities of network traffic. Take, for example, a server that sends out data to a client. This may be an Internet server that sends a webpage to a client. It would be logical for the server to send the data at the maximum rate the server is physically capable of sending data, as to ensure that the client receives the website
  • 3. as quickly as possible. As is usually the case, the data would pass through at least one router before it reaches the client. This router would usually process data coming from many other servers and addressed to many other clients. But what i f the router gets swamped, i.e., it receives more data than it can process. It will try to store data in its buffers until the buffers run out of space and then it will start dropping the data. The TCP protocol implementation running at the server will eventually notice that data is being dropped and will resend the dropped data. But the router may still be swamped, and may drop the resent data as well. Furthermore all other servers sending data through this router may be having their data dropped and may also be resending dropped data that may in turn be dropped again. In this situation, the overall data transfer rate of each server eventually drops to 0, as each server simply keeps resending the same data over and over. This is referred to as congestion. Thus, i f too much data is sent over a TCP network the network can completely stop transmitting data (or the data transmission rates can greatly decrease from the designed network capacity). For this reason, a parallel is often made between TCP networks and physical highways. I f too many cars go on a highway, congestion occurs and no cars can move. Similarly, i f too much data is sent over a TCP network a congestion condition may occur which will result in a great reduction of the data transfer rates of the network. In order to avoid congestion conditions, the TCP protocol includes a mechanism referred to as the congestion avoidance algorithm. Congestion avoidance attempts to control the rates at which each server sends data in order to avoid congestion. Furthermore, the congestion avoidance algorithm is configured to detect i f a congestion condition occurs (usually evidenced by dropped packets), and i f it does, greatly reduce the transmission speed in order to allow the congestion to clear up. The task of a congestion avoidance algorithm can be likened to the game of Blackjack. On one hand, the algorithm should allow the greatest possible transmission speed in order to provide for faster downloads. On the other hand, the algorithm should make sure that the download speed does not exceed a threshold which will cause network congestion which in turn causes all downloads to slow down to a crawl. Thus, i f we define an optimal transmission speed to be the highest transmission speed that does not result in congestion, the goal of the congestion avoidance algorithm is to keep transmission at the optimal transmission speed at all times without exceeding it. The problem is that the optimal transmission speed is usually not known in advance and it tends to change with time. B. Extreme TCP In brief, Extreme TCP is an improvement of the TCP congestion avoidance algorithm. Mainline engineers determined that the TCP congestion avoidance algorithm is far from optimal. It tends to periodically speed up and slow down transmission, thus resulting in highly fluctuating download speeds. In some cases, it tends to cause periodic congestions. In other cases, the TCP congestion avoidance algorithm does not cause congestions, but artificially limits download speeds to speeds much lower than the optimal download speed. Armed with a very thorough and complete understanding of routers and networks, Mainline engineers developed an advanced congestion control algorithm that performs much better than the TCP one. The result is Extreme TCP. Extreme TCP is based on complex models of the behavior of modern routers and other
  • 4. network equipment. Extreme TCP works with ordinary TCP implementations, and it is only meant to replace the congestion avoidance code of an existing TCP implementation. Extreme TCP has an uncanny ability to raise transmission speeds higher than standard TCP and yet at the same time avoid dropped packets and congestion events that are usually caused by TCP. In practice, Extreme TCP tends to quickly adopt a high transmission speed (which is probably close to the optimal speed) and to keep transmitting at that high speed while avoiding congestion events, while TCP features highly fluctuating transmission speeds as it periodically hits the threshold and has to sharply decrease the transmission speed. In cases where TCP artificially limits the transmission speed to rates far below the threshold, Extreme TCP has no such limits and allows for much higher speeds. While Extreme TCP does not completely avoid dropped packets and congestion events, these tend to be much rarer than they are for standard TCP. I f a packet is dropped, Extreme TCP decreases the transmission speed to allow the congestion to dissipate (as does TCP) and yet Extreme TCP is usually able to raise the transmission speed back to high levels much quicker than TCP. One of the other advantages of Extreme TCP is that it is a pure software solution that can be easily applied as a software patch to the TCP/IP stack of a computer. Thus, Extreme TCP does not require complex hardware upgrades. Furthermore, the Extreme TCP software need not be present at both sides of communication (i.e., server and client). It only needs to be present at the computer that sends data (the server) in order to provide for a significant improvement in the transmission speeds of the data. I f two computers send data to each other and only one features Extreme TCP, the improvements of Extreme TCP will be present only for the data sent by the computer that has Extreme TCP loaded thereon, but the communications of the other computer will not be negatively effected by Extreme TCP. This is a significant advantage because, as opposed to much other software that is intended to improve the Internet, Extreme TCP does not require high adoption rates in order to work. In our testing, Extreme TCP showed improvement in practically all conditions we tested. For connections of non trivial length, such as California to New York, or New York to London, the improvement was 4 to 10 times (that is 400%-1000%). For longer connections (such as California-London), the improvement went up to 14 times (1400%). For shorter connections the improvement may be less but still noticeable. For really short connections (such as a LAN) there may be no noticeable improvement. The improvement may also be limited i f the upload bandwidth is limited. In such cases there simply isn't enough room in the connection for the improvement brought about the Extreme TCP algorithm. This is usually not an issue in the US and Europe, but may be an issue for some US-South/Latin America connections where we measured about a 30% improvement.
  • 5. I I I . Conclusion While discussion herein may center on the Internet, it applies to all networks that use TCP, or similar guaranteed delivery protocols. Thus, while the Internet is by far the largest TCP utilizing network, there are other networks (such as various closed government, military or corporate networks) that also use TCP and that would greatly benefit from Extreme TCP. By the same token, some Internet communication may not use TCP, but another transmission level protocol that does not guarantee delivery (such as, for example, UDP). Extreme TCP will benefit only communications that use TCP or a similar protocol that guarantees delivery and utilizes congestion control. Currently, most Internet communications do use TCP, so Extreme TCP can affect and imrove most of the present Internet. Mainline Net Holdings, Ltd. 78 YORK STREET LONDON W1H 1DP United Kingdom