WAN優化是一件復雜且耗費資金的事情。即便你沒有通過ISDN在很遠的地方設置辦公分支機構,也還是需要進行WAN優化和加速。問題是這些用于優化網絡的產品一般都比較昂貴。所以,如果能以免費的開源工具達到相同功效,何樂而不為?
Riverbed和其他供應商執行了廣域文件服務(WAFS),這在緩沖公共互聯網文件系統(CIFS)和網絡文件系統(NFS)數據方面是極具想象力的。如果有很多人同時處理一個文件,或者同一個文件被打開關閉多次,而這些數據不需要真地發送到遠程文件服務器上。比這更具有想象力的是,經過長時間緩沖的文件可以更快速地打開Word文檔,這類文檔的打開需要大量雙向傳輸。在WAN上發送數據的時候,WAFS為緩沖數據執行的安全機制顯得有些累贅。通常緩沖代理在文件共享數據前都未被優化,且往往要將全部數據都發送出去,然而,WAFS式設備可以更好地處理這種情況。
遺憾的是,沒有開源工具可以創建類似的系統,不過WAFS是用于優化WAN的唯一方法。大多數企業都利用開源工具中的Qos,緩沖代理和壓縮等實現了其效用和可行性。我們不推薦大家直接使用商業化的WAFS方案,因為其價格有些不可思議,或許你并不需要WAFS式的,而且WAFS的架構特性會限制你的計劃。
Qos以及用FreeBSD或Linux進行排隊
要優化擁堵的WAN鏈接,很重要的一點是確認優先順序,特別是當VoIP流量充斥WAN鏈接的時候。好的一方面是Linux和BSD系操作系統可使用QoS和流量修整/排隊技術。當處理器決定流量輸送的先后順序時,優先原則就產生其效用。
配置QoS的時候可能變得十分復雜。為流量分類和排隊的方法很多,而將非優先流量往后排的方法也不少。我們完全可以部署帶有流量修整功能的防火墻,進入內部應用獲取優先訪問網絡的權利,而其他的流量則要通過防火墻的考量。即便只要對帶有此類功能的SOHO級路由進行配置,也需要了解如何分類數據包,所以我們有必要用Linux或FreeBSD獲取完整性能。
緩沖代理
緩沖HTTP代理可以極大減少Web流量,甚至是通往內部服務器的流量。圖像等大型數據可通過標準的Squid或Varnish代理服務器在本地進行緩沖。用戶每次點擊的時候,它們不是用WAN鏈接從遠程Web和應用服務器上獲取圖像,而是從本地緩存中獲取內容。所有的HTTP流量都可以直接通過代理看清楚,而不需要進行任何客戶端配置。HTTPS流量也可以被代理,不過要用代理配置Web瀏覽器。
Squid還可以代理FTP流量,或其他能兼容的協議。這有利于那些擁有自定義應用和通信協議且不使用HTTP或FTP的網站。盡管大多數的實際案例都簡單要求用HTTP緩沖極大減少了WAN流量。
在我們談論執行緩沖和壓縮的兩個方案前,要注意另一個部分解的存在。除了提供安全性,OpenVPN還可執行壓縮。它在用戶端運行,因此延遲有所增加,但是當你只需發送少量數據時,OpenVPN是個不錯的選擇。
WANProxy
WANProxy是通用的TCP代理。可以部署該代理壓縮兩端點之間的所有TCP流量。可以用WANProxy在Squid代理上過濾數據,而不是用Linux中的防火墻規則重新為流量定向。通過WANProxy過濾流量同樣可以獲得壓縮的好處。最終,WANProxy也能夠緩沖一些數據,因此不需要重新發送數據來實現數據復制。
結合WANProxy和Squid后,隨機遠程文件,如Word文檔,就可以在第一次被打開時通過WAN完整進行傳輸。但是,第二次打開的時候,會經本地緩存發送,本地緩存不占用WA帶寬且能向終端用戶提供即時響應。
Traffic Squeezer
Traffic Squeezer比起上述工具有過之而無不及。除了壓縮和QoS以外,它還提供流量合并和協議指定加速。將Traffic Squeezer與Squid結合起來就可實現緩沖。
流量合并是指將多個數據包作為一個發送,目的是減少協議和小型數據包的影響。Traffic Squeezer的好處會隨著數據包的合并彰顯出來。依靠TCP和協議指定型優化改善網絡鏈接還有待時日。其他可能被執行的性能還包括后優化加密和VoIP優化。
正如大家所擔憂的,搭建WAN優化緩存和防火墻是極其復雜的一件事情。而在開源世界里卻時常出現這類案例。搭建適合自己的系統,意味著不能千篇一律,易于使用的設備一般都基于Linux,它們之所以簡單是因為有人為你選擇了如何搭建系統。
有了正確的系統/網絡管理員,你就可用用開源軟件對有限帶寬進行最大限度的開發。如果你的系統配置得當,那一般只需幾個月進行一次日常維護就可以了。至于到底是購買還是搭建一個這樣的系統,則完全取決于你在預算和時間方面的限制。