Why Optimized Bandwidth Aggregation?
With the increasing use of bandwidth hungry applications like video streaming services, the need for high-speed bandwidth becomes a common requirement. People may not be able to stream 4K videos because their WIFI or cellular connections don't provide sufficient bandwidth. Enterprises may face similar issues when managing network traffic among multiple branch offices. To support a large number of computers within a site, many of which may be used for video conferencing with another site, the data traffic volume could be massive.
This is where bandwidth aggregation technology can be leveraged. To combine multiple network connections together to provide not only a bigger data pipe but also a more stable and reliable network connection. Bandwidth aggregation can enable end users to watch 4k videos using WIFI + cellular connections; it also allows Enterprises to use multiple low-cost network connections to get the same bandwidth as a much more expensive dedicated network connection.
To achieve bandwidth aggregation, the network traffic has to be split across multiple available connections at application level, session level or packet level.
1. In application-level bandwidth aggregation,the algorithm needs application specific knowledge to understand how to split the traffic. One example is http download. The algorithm looks into the http request that refers to a big file download, and issues multiple smaller http requests, each of which downloads a small portion of the file using http RANGE request. The algorithm then split these smaller requests over multiple connections and feed the downloaded data back to the application as if they are downloaded by a single http request.
2. In session-level bandwidth aggregation,the network traffic is distributed over different network interfaces based on sessions, which usually are TCP connections. For example, depending on the current load and other network conditions the algorithm decides through which network interface the next TCP connection is going to be sent. An obvious issue with this process is that certain applications that rely on the single TCP connection cannot benefit from it. Imagine downloading a big file from Internet using a web browser. Since it utilizes a single TCP connection, session level bandwidth aggregation cannot split its traffic over multiple network interfaces and there is no bandwidth aggregation. On the other hand, however,applications, such as speed test, which initiate multiple small connections may work well with it.
3. Finally, packet-level bandwidth aggregation splits the network traffic in a finer granularity. Since it is application/session agnostic, all applications are able to enjoy augmented bandwidth. However, packet level bandwidth aggregation isn’t a free lunch.Since each network interface comes with its own IP address it is a technical challenge to make it transparent to the application as the layer 4 protocol,TCP and UDP, can only have one source IP address. One well-known effort is Multi-path TCP (MPTCP). But MPTCP is not supported everywhere since many legacy middle boxes drops MPTCP connections Another approach to achieve packet level bandwidth aggregation is to have a component in the cloud or next to the application server, to assemble the packets and reconstruct the connection so it has a unique source IP and won’t get dropped by the application server.
As many Enterprises launch their digital transformation journeys, bandwidth aggregation is an extremely important enabler. While the technology is challenging there are a few players who have successfully launched these products. It is widely expected that 5G is going tosolve the bandwidth problem in the near future. However, the fact is each 5G base station has a small footprint and therefore geographic expansion is expensive as compared to 4G, makes it hard to be ubiquitous. Therefore, bandwidth aggregation will remain the most reliable technology for enhanced bandwidth inmost places for some time to come.