WAN optimization is a collection of techniques for increasing data-transfer efficiencies across wide-area networks. In 2008, the WAN optimization market was estimated to be $1 billion, and it will grow to $4.4 billion by 2014 according to Gartner, a technology research firm.
The most common measures of TCP data-transfer efficiencies (i.e., optimization) are throughput, bandwidth requirements, latency, protocol optimization, and congestion, as manifested in dropped packets. In addition, the WAN itself can be classified with regards to the distance between endpoints and the amounts of data transferred. Two common business WAN topologies are Branch to Headquarters and Data Center to Data Center (DC2DC). In general, "Branch" WAN links are closer, use less bandwidth, support more simultaneous connections, support smaller connections and more short-lived connections, and handle a greater variety of protocols. They are used for business applications such as email, content management systems, database application, and Web delivery. In comparison, "DC2DC" WAN links tend to require more bandwidth, are more distant, and involve fewer connections, but those connections are bigger (100Mbit/s to 1Gbit/s flows) and of longer duration. Traffic on a "DC2DC" WAN may include replication, back up, data migration, virtualization, and other Business Continuity/Disaster Recovery BC/DR flows.
WAN optimization has been the subject of extensive academic research almost since the advent of the WAN. In the early 2000s, research in both the private and public sectors turned to improving the end-to-end throughput of TCP, and the target of the first proprietary WAN optimization solutions was the Branch WAN. In recent years, however, the rapid growth of digital data, and the concomitant needs to store and protect it, has presented a need for DC2DC WAN optimization.
Component techniques of Branch WAN Optimization include deduplication, WAFS, CIFS proxy, HTTPS Proxy, media multicasting, web caching, and bandwidth management. Requirements for DC2DC WAN Optimization also center around deduplication and TCP acceleration, however these must occur in the context of multi-gigabit data transfer rates.
WAN optimization techniques
- Deduplication – Eliminates the transfer of redundant data across the WAN by sending references instead of the actual data. By working at the byte level, benefits are achieved across IP applications.
- Compression – Relies on data patterns that can be represented more efficiently. Essentially compression techniques similar to ZIP, RAR, ARJ etc. are applied on-the-fly to data passing through hardware (or virtual machine) based WAN acceleration appliances.
- Latency optimization – Can include TCP refinements such as window-size scaling, selective Acknowledgements, Layer 3 congestion control algorithms, and even co-location strategies in which the application is placed in near proximity to the endpoint to reduce latency. In some implementations, the local WAN optimizer will answer the requests of the client locally instead of forwarding the request to the remote server in order to leverage write-behind and read-ahead mechanisms to reduce WAN latency.
- Caching/proxy – Staging data in local caches; Relies on human behavior, accessing the same data over and over.
- Forward error correction – mitigates packet loss by adding an additional loss-recovery packet for every “N” packets that are sent, and this would reduce the need for retransmissions in error-prone and congested WAN links.
- Protocol spoofing – Bundles multiple requests from chatty applications into one. May also include stream-lining protocols such as CIFS.
- Traffic shaping – Controls data flow for specific applications. Giving flexibility to network operators/network admins to decide which applications take precedence over the WAN. A common use case of traffic shaping would be to prevent one protocol or application from hogging or flooding a link over other protocols deemed more important by the business/administrator. Some WAN acceleration devices are able to traffic shape with granularity far beyond traditional network devices. Such as shaping traffic on a per user AND per application basis simultaneously.
- Equalizing – Makes assumptions on what needs immediate priority based on the data usage. Usage examples for equalizing may include wide open unregulated Internet connections and clogged VPN tunnels.
- Connection limits – Prevents access gridlock in routers and access points due to denial of service or peer to peer. Best suited for wide open Internet access links, can also be used on WAN links.
- Simple rate limits – Prevents one user from getting more than a fixed amount of data. Best suited as a stop gap first effort for remediating a congested Internet connection or WAN link.
Open-source based WAN optimization solutions
- Machowinski, Matthias. "WAN optimization market passes $1 billion in 2008, up 29%; enterprise router market down". Enterprise Routers and WAN Optimization Appliances. Infonetics Research. Retrieved 19 July 2011.
- Skorupa, Joe; Severine Real (2010). "Forecast: Application Acceleration Equipment, Worldwide, 2006–2014, 2Q10 Update". Gartner, Inc. Retrieved 19 July 2011.
- Cardwell, N.; Savage, S.; Anderson, T.;. "Modeling TCP latency". INFOCOM 2000. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE. Dept. of Comput. Sci. & Eng., Washington Univ., Seattle, WA: IEEE.org. Retrieved 20 July 2011.
- Jacobson, Van. "TCP Extensions for Long-Delay Paths". Request for Comments: 1072. Internet Engineering Task Force (IETF). Retrieved 19 July 2011.
- Floyd, Sally. "HighSpeed TCP for Large Congestion Windows". Request for Comments: 3649. Internet Engineering Task Force (IETF). Retrieved 19 July 2011.
- Paris, Chandler. "Latency & Colocation". Retrieved 20 July 2011.
- Mark Rabinovich, Igor Gokhman. "CIFS Acceleration Techniques". Storage Developer Conference, SNIA, Santa Clara 2009.