WarpTCP WHITE PAPER Technology Overview -Improving the way the world connects -
WarpTCP - Attacking the Root Cause TCP throughput reduction is often the bottleneck that causes data to move at slow speed. TCP becomes the bottleneck when the TCP stack in the server (for download) or client (for upload) reduces its transmission rate. Due to simple feedback and conservative rate control, TCP throughput is sensitive to operating conditions. It is well known that TCP throughput drops exponentially in reaction to increasing RTT (round-trip time) and packet loss. 1 Therefore, most have been designed and configured to avoid long RTT and large packet losses to prevent the TCP bottleneck problem. Yet TCP throughput collapse still occurs routinely in with noisy wireless links. The reason is that current network optimization solutions don t address the problem of TCP rate reduction in response to RTT variance 2 : This is a problem rarely recognized and not addressed by vendors besides Badu. While many TCP solutions have been offered, all of them take a hybrid approach they combine TCP optimization with techniques for improving non-tcp processes that have an impact on application speed. None of them solves the problem at the foundation, which is removing TCP as the bottleneck. TCP solution vendors can be divided into WAN Optimization vendors and direct TCP solution vendors. While they address different markets, they all use a similar set of techniques. 3 According to Gartner, WAN Optimization vendors offer many solutions to minimize network latency, to increase application speed, and to maximize ROI in WAN bandwidth. Their solution approaches include TCP optimization, protocol optimization, caching, deduplication, compression, traffic shaping, traffic prioritization, WAN path control, etc. None of these approaches are direct and focused attacks on the TCP bottleneck problem. All of them will produce some benefits, as all components in the modern network/it infrastructure are nonlinearly correlated with other components. However, when the real bottleneck is TCP, none of the solution approaches will produce the maximum benefits with the highest efficiency. 1
TCP De-bottlenecking vs TCP Optimization While all TCP solution vendors use a hybrid approach, Badu uses a direct and focused approach to attack the TCP bottleneck problem. Optimization and de-bottlenecking are fundamentally different optimization simply means improvements of some sort; there is no guarantee that TCP has been removed as the bottleneck. On the other hand, when TCP has been de-bottlenecked, some component or process in the application context becomes the new bottleneck. Suppose Corporation A adopts WarpTCP solutions and removes TCP as the bottleneck in its mission-critical applications; bandwidth in the WAN links may become the new bottleneck. Any investment in upgrading the WAN links will directly translate into faster application speeds. At times, by simply removing TCP as the bottleneck, the improvement in the application speed is already good enough. On the other hand, if Corporation A adopts a TCP optimization solution, the improvement in application speed will be less (as it is not a de-bottleneck solution). Further, spending money to increase the WAN bandwidth will not allow Corporation A to get the full value of investment in the upgrade. TCP was designed not to be the bottleneck in all applications across it has the ability to adjust to the true available bandwidth in the data path. When TCP becomes the bottleneck, it means some bandwidth is unused in the path. Unused bandwidth implies wasted investment or low ROI in the devices and links in the path. As network devices and links are significantly more expensive than the TCP stacks, the largest leverage for investment comes from removing TCP as the bottleneck. WarpTCP Technology Suite The WarpTCP Technology suite comprises 2 parts: TCP De-bottleneck Module, and Transparent TCP Proxy. The TCP De-bottleneck Module is a TCP congestion control module for Linux-based operating systems to modify the TCP stack s behavior it achieves the TCP de-bottleneck with a proprietary algorithm. The Transparent TCP Proxy is software implementing transparent TCP splicing a normal TCP session between a server and a client is replaced by 2 TCP connections joined at the proxy: a new TCP connection between the server and the proxy, and a TCP connection between the proxy and the client. The proxy allows the WarpTCP De-Bottleneck Module to be inserted at any point in the path of a TCP connection, without modifying either the server or client. 2
Completely Flexible Deployment Footprints The WarpTCP suite can be implemented in the form of SW module, HW appliance, or Virtual Machine (VM). The WarpTCP suite can be deployed in servers, client handsets, IoT devices, or any box in the path (such as a Wi-Fi router). When WarpTCP is deployed in a server or client device, only the TCP De-bottleneck Module is needed (integration required for custom platforms); when WarpTCP is deployed as an appliance, both the TCP De-bottleneck Module and the Transparent Proxy are needed. As HW, WarpTCP applicance can be placed in an access network, backbone network, centralized data center, or a localized edge data center. The appliance can also be deployed in an enterprise IT room, a business office or premise, a Wi-Fi hotspot, or a consumer home or premise. A WarpTCP virtual machine (VM) appliance can be installed in cloud-based services such as AWS, Verizon Cloud, Microsoft Azure, etc. The WarpTCP appliance can be placed in numerous strategic locations for operators and enterprises. For example, WarpTCP appliances can be inserted in convenient locations in the infrastructure of mobile operators, Internet service providers, MSOs, CDNs, ADCs, and DASs. The WarpTCP appliance can also be useful for numerous industries such as hospitality (hotels, resorts, etc.), education (college campuses), health care (hospitals, clinics, etc.), and public venues (sports, concerts, conventions, etc.). The WarpTCP suite can be placed near the servers, or clients, or any convenient locations. For service providers, a good location is near troublesome network spots or strategic IT resources. Placing WarpTCP suite in proximity to troublesome network locations allows WarpTCP to react to potential network troubles with minimum latency, thereby getting a maximum benefit. Another good location is in front of a Wi-Fi router servicing a busy location. This deployment allows WarpTCP to react in the most timely manner to network fluctuations in Wi-Fi Layer-2 access conflicts and Layer-1 packet drops due to RF interference. As a result, both download and upload throughputs seen at the client will be significantly higher. 3
WarpTCP Avoids Reduction in Rate due to Random Wireless Losses When there is a wireless link in the path, TCP feedback often causes spurious RTOs (retransmission timeouts). A spurious RTO occurs when packets are lost due to interference in a wireless link. Since the loss is due to RF interference, as long as the interference is not persistent, TCP should not drop its transmission rate. The following plot illustrates TCP s congestion window (CWND), which controls the transmission rate, in reaction to RTOs. A sudden drop in CWND to a low level due to spurious RTO contributes to TCP s rate-reduction problem. Contrary to regular TCP, WarpTCP uses a proprietary algorithm to determine if an RTO is real or spurious. As illustrated below, WarpTCP drastically reduces unnecessary drops in transmission rate by differentiating between real and spurious RTOs. 4
WarpTCP Rate Curve as RTT Variance Increases Essentially, the TCP sender receives feedback only in the form of ACKs (acknowledgements of data received at the receiver). The sender calculates RTTs for ACKed data segments the RTT computed will be used to estimate the available bandwidth. The RTT calculation at the sender will reflect queueing (or processing) delay in the path and at the receiver. The pattern of received ACKs is also used as indications for packet losses. In the past 15 years, many variants of TCP have emerged, each utilizing a simplified model of the process of sending a TCP segment and receiving an ACK. Badu has found that the model has to be realistic enough to capture the nonlinear and non-trivial interactions between ACKs and the sender. As ACKs are not data, they will not be retransmitted when they are lost. The variation in the travel times of ACKs also has an impact on the TCP throughput. Usually, data packet losses in a queue inside a middle box indicate congestion in the path. However, a packet loss in a wireless link is usually not an indication of congestion, unless the loss is persistent. In a busy wireless network, Layer-2 losses (conflicts in media access) can be especially confusing they can be treated as a form of congestion in the wireless link. However, a Layer-1 packet loss in a wireless link is usually handled by Layer-1 retransmissions, which adds extra delay to packet delivery such delays should not be considered indications of congestion. It turns out that RTT variance provides an excellent summary of the true congestive state of the path. Badu is the first vendor to capitalize on using RTT variance as a tool to determine if a packet loss is spurious or real. WarpTCP will drop transmission rate only if a packet drop is determined to be an indication of real congestion (in the middle box or wireless link). The following table compares WarpTCP against a few TCP variants based on a number of congestion indicators. Throughput (mbps) As a result of its proprietary congestion control algorithm, WarpTCP achieves a throughput curve which is generally higher than the most popular TCP variant (CUBIC), as a function of RTT variance. Compared to TCP, WarpTCP transmits at a higher rate than TCP at the same RTT variance level: current RTT variance RTT variance 5
Transparent TCP Proxy Badu s Transparent TCP Proxy is a low-latency high-performance proxy that comes with a number of unique features. Badu s proxy is a true TCP proxy each spliced server-to-client TCP session is replaced by a server-to-proxy sub-session and a proxy-to-client sub-session, where the 2 sub-sessions have independent sequence numbers. The spliced TCP sessions are terminated both the server-to-proxy sub-session and the proxy-to-client sub-sessions are terminated in the proxy. Most TCP optimization vendors adopt a snoop approach and their TCP proxies are implemented as packet filters. In a packet filter, the sever-to-proxy and proxy-to-client sub-sessions share the same sequence numbers. Therefore, packet filters have a lesser degree of freedom than Badu s proxy. Badu s proxy is interoperable with GTP it can be attached to a basestation at a cellular tower. As of this writing, Badu s TCP proxy is the only commercial TCP proxy that can be attached to a cellular basestation. Badu s proxy is highly efficient: it is built with the following features: Single buffering: 1 copy of data, shared between ingress and egress Zero-copy forwarding Minimum buffering: data are sent whenever egress bandwidth is available Low memory for maintaining TCP states Optimized for multi-core SoC processors Only data transfer is implemented in kernel, the proxy is implemented in user space. This implementation allows the proxy to process packets with a sub-millisecond latency, with off-the-shelf hardware. Conclusion WarpTCP is the only TCP De-bottleneck solution in the market that directly solves the TCP bottleneck problem. WarpTCP is also the only TCP solution with complete flexibility in the placement of the proxy, allowing WarpTCP to provide maximum benefits at a convenient or strategic location. WarpTCP does not optimize TCP performance per se, it removes TCP as the bottleneck in your applications. Badu achieves this objective by focusing on TCP reaction to RTT variance, which is a scientific study ignored by all other TCP vendors. Allow your IT and network infrastructure to work, by removing TCP as a bottleneck. This is the original design objective of TCP let s keep it this way with WarpTCP. To reqest a demo, visit: www..com. 6
References 1.http://downloads.asperasoft.com/en/technology/shortc omings_of_tcp_2/the_shortcomings_of_tcp_file_transfe r_2 2.Chan & Ramjee, TCP/IP Performance over 3G Wireless Links with Rate and Delay Variation MOBICOM'02 3.http://www.dssi.pt/documentos/fabricantes/riverbed/g eral/2016-magic-quadrant-report-on-wan-technologies. pdf p f e 949-310-5390 888-958-7697 info@badu.com 2640 Main Street Irvine CA 92614 http://www..com 2017 Networks. All rights reserved.