What Tachyon is
Tachyon offers a set of fast file transfer apis, that you can embed in your applications. Specifically we offer a fast upload api, and a fast download api in a variety of languages. Users have reported file transfer speed increases anywhere from 20% to >500% after using Tachyon.
How Tachyon Works
Tachyon increases data transfer speed by improving bandwidth utilization. We do this in 2 main ways:
1) we use transport level protocol optimization under the hood and
2) we offer a network of servers around the world that are closer to your clients to logically reduce the distance of the first network hop.
To understand this better let's go over some key concepts:
- Bandwidth is the maximum rate of data transfer across a given path. When using the term bandwidth here we are referring to network bandwidth (or network throughput), which is is the rate of successful message delivery over a communication channel. This is measured in bit/s. It's important to keep in mind, a channel with x bps may not necessarily transmit data at x rate, since protocols, encryption, and other factors can add appreciable overhead.
- Latency measures the time it takes for some data to get to its destination across a network. Usually when people talk about network latency they are referring to Round Trip Time (RTT). Latency is impacted by a number of factors including: distance from source to destination, the transmission mediums used such as WAN or fiber optic cables, and the routers used.
- RTT or RTD or Ping Time is the time taken for information to get to its destination and back again. This is an important measure because most data transfer across the internet relies on TCP/IP, and in TCP/IP a network sends a limited amount of data to its destination and then waits for an acknowledgement to come back before sending any more. A high RTT has a direct negative impact on the performance of data transfer, as a network will wait a longer time to send packets of information.
- TCP and its constraints: TCP is the primary transport protocol used to power data transfer across the internet. It is a connection-oriented protocol that offers a number of guarantees including: data arriving in-order, lost or discarded packets are resent, and traffic congestion control.
To maintain these guarantees TCP was designed in a specific way which is not well suited for moving large datasets. Specifically TCP suffers from problems attributable to its congestion control and flow control design decisions. A lot of these decisions were made in the the 70's/80's when wireless didn't really exist and high bandwidth connections weren't readily available. Tachyon takes a different approach that is optimized for fast large file transfer.
- Tachyon, UDT and UDP: Tachyon's protocol optimization is built on top of UDT, which is a reliable UDP based application level data transport protocol (that was a mouthful!). UDT uses UDP to transfer bulk data with its own reliability control and congestion control mechanisms. The new protocol can transfer data at a much higher speed than TCP does. UDT is also a highly configurable framework that can accommodate various congestion control algorithms.