Professional Documents
Culture Documents
Vollsveien 21 N-1366
Lysaker, Norway
15 January 2015
Page 1
15 January 2015
Page 2
Background
TCP (Transmission Control Protocol) is a critically important protocol in TCP/IP (Internet Protocol Suite), providing reliable
bi-directional data transfer over IP (Internet Protocol). Well-known higher layer protocols that use TCP include: HTTP (for
the web); FTP (for file transfers); various mail protocols (SMTP, POP3); plus many others less well known. The throughput of
TCP connections can be quite slow over satellite links unless special steps are taken to provide acceleration. This is
because standard TCP implementations behave as follows:
The flow of TCP data is initially slow and is gradually incremented during the initial TCP exchanges until the
characteristics of the connection are learned by the transmitting TCP end-point.
Any sender of TCP data requires acknowledgements (ACKs) for at least some of a certain maximum flight size of
contiguous data sent, before sending any more data on the connection.
Any TCP packet loss (e.g., due to bit errors on the link or buffer overflows) will cause a slowdown of the transfer and
more severe loss will trigger extensive re-transmission, including data already received successfully.
The long (e.g., half-second) round-trip latency of geosynchronous satellite links worsens all of these TCP behavior patterns
and thus requires a TCP Acceleration solution that is highly optimized for satellite networks, especially when Adaptive
Coding and Modulation (ACM) is being used, because ACM alters satellite link capacity dynamically.
Furthermore, the requirements on the QoS (Quality of Service) for the network become especially important if TCP traffic is
sharing the same satellite links with other types of traffic (e.g., UDP for real-time voice and video) that are not subject to the
same flow-controls as TCP, and which needs special treatment to assure the lowest possible jitter and delay. Good QoS also
requires control over the minimum and maximum rates of transfer for various different traffic aggregates (i.e., QoS Classes)
on the network, which in turn requires traffic shaping of TCP flows.
15 January 2015
Page 3
SatLink Optimized
TCP Acceleration & Shaping
IP Host
TCP
TCPa
IP
IP
Layer 2
Physical
IP Host
TCPa
TCP
IP
IP
IP
Layer 2
Layer 2
Layer 2
Layer 2
Physical
Physical
Physical
Physical
SatLink
VSAT IDU
PC
Satellite
FLS
NetAcc
RLS
Server
The SatLink TCPa software also works in SatLink mesh topologies, with a single-hop between VSATs, where the proxy
software in each mesh VSAT IDU communicates directly with the proxy in another mesh VSAT IDU. In this case, the SatLink
NetAcc is not involved.
This is shown in Figure 2, and has the same traffic shaping integration with the VSAT IDU.
Figure 2: SatLink TCP Acceleration for Mesh Topologies
SatLink Optimized
TCP Acceleration & Shaping
IP Host
IP Host
TCP
TCPa
TCPa
TCP
IP
IP
IP
IP
Layer 2
Layer 2
Layer 2
Layer 2
Physical
Physical
Physical
Physical
Satellite
PC
SatLink
VSAT IDU
Single-Hop
Mesh Link
SatLink
VSAT IDU
PC
Each VSAT IDU, whether used for mesh or star topology, is providing shaping for each SatLink QoS Class (on both its TCP
and UDP traffic) to match transmission load with available timeslot assignments from the SatLink Hub. However, the
shaping of TCP traffic by the IDU is the most critical, which must be done without packet loss. In this way, the proper
amount of capacity is provided for the desired UDP traffic, such as the real-time VoIP or video conferencing media.
15 January 2015
Page 4
A very large TCP flight size by using very large receive window size for the satellite link, resulting in 4 Mbps of IP
throughput per TCP connection, with further increases to 10 Mbps planned.
Very fast ramp-up for new TCP connections to the maximum data throughput, which is not affected by satellite link
delay.
NOTE: This is feasible because SatLink TCPa is combined with shaping of the channel and VSAT traffic otherwise this
aggressive ramp-up would be counterproductive.
Rapid and sparse re-transmission by utilizing Selective Acknowledgements (SACK), including those for user hosts
that do not natively support SACK.
Robust handling of packet loss with limited throughput back-off in the event of packet loss on the satellite link.
Suppression of TCP ACKs on the satellite link and limiting of the maximum ACK rate to 10 ACKs per second for very
high throughput connections.
In addition, the SatLink TCPa system sustains most of these benefits for Hub-to-VSAT downloads even when it is not
possible to intercept TCP connections in the VSAT IDU (e.g., as occurs with secure VPN tunnels which pass through the
VSAT IDU, such as IPsec).
NOTE: This requires the VPN Appliance at the Hub Site to be located between the NetAcc and the FLS/RLS.
This is possible because SatLink TCP Acceleration is based on IETF standard methods and is compatible with standard TCP
Reno implementations (the predominant TCP variant). Therefore, the NetAcc can communicate directly with current
standard TCP/IP protocol stacks as built-in to modern IP hosts (i.e., end-user devices such as PCs, servers, PDAs, smart
phones, etc.) and thus accomplish both acceleration and other TCP behavior improvements for traffic sent over the Forward
Link, without involvement of the TCP proxy in the VSAT IDU.
Nonetheless, the TCP proxy functions in SatLink IDUs are employed because IP hosts do not actively utilize many newer TCP
standard features to obtain the fastest possible acceleration of TCP connections. Much higher gains are feasible between
two highly optimized TCP proxies due to larger window sizes for satellite links, rapid & sparse re-transmission, faster startup and less back-off on packet loss than with TCP RENO, plus greater reduction in the use of TCP ACKs.
Also, the SatLink TCP proxy functions (in the NetAcc and the VSAT IDU) are fully integrated with SatLinks traffic shaping
and QoS features, which is very helpful to assure that TCP loads placed on satellite links do not exceed the link capacity or
the QoS Class limits for a given traffic aggregate. Otherwise, TCP packet drops could be caused by the TCP proxy functions
(e.g., by sending packets at rates that exceed buffer limits in the FLS), which would have the negative effect of reducing
average TCP throughputs. In advanced satellite networks using ACM, this is extremely important, since total link capacity
varies with weather conditions, as does the logical link capacity to/from individual VSATs.
15 January 2015
Page 5
In SatLink, these are used in combination with rules optimized to give the best performance on geosynchronous satellite
links, with their characteristic latency and low packet error rates when using modern FEC methods.
15 January 2015
Page 6
The graph shows the file is transferred much faster than without acceleration due to:
Conclusion
SatLink TCP Acceleration (TCPa) enables very high IP throughput and reduces the number TCP ACKs (lowering total
overhead) under good link conditions. When link errors do occur (which is rare), the quantity of data that has to be
retransmitted, as well as the slowdowns that occur, are quite small. Furthermore, SatLink TCPa does not drop packets due
to congestion on satellite links (e.g., when ACM reduces link capacity) and maintains excellent QoS, due to tight coupling
with SatLink traffic shaping.
SatLink TCPa also functions well to accelerate TCP traffic and reduce overhead for downloads to VSATs, even when secure
VPN tunnels are being used through the VSAT IDU.
15 January 2015
Page 7