萬盛學電腦網

 萬盛學電腦網 >> 網絡應用技術 >> 應用教程 >> 高校流控管理經驗分享:流量管理 疏導為先

高校流控管理經驗分享:流量管理 疏導為先

  隨著P2P類應用越來越強烈的加密趨勢,傳統的基於應用協議數據特征的識別方式往往難以奏效,這就要求協議識別引擎能夠對流量行為進行綜合分析,根據統計特征、連接相關性等方面表現出來的蛛絲馬跡判斷應用的類型。

  隨著教育信息化進程的不斷加深,我國已建成規模龐大的教育網絡,為高校提供了優越的接入條件。然而,日新月異的互聯網應用吞噬著越來越多的帶寬,校園網內終端接入數量也始終處於高速增長的態勢,對高校網絡的運維提出了新的挑戰。在這種情況下,如何更合理地管理流量,為教科研任務提供更好的保障,成為各高校信息中心負責人普遍關注的問題。

  面對洪流,最好的做法是主動疏導,而絕非被動封堵。如今,通過流控產品對應用流量進行梳理的做法已被普遍接受。在不少高校,流控產品都成為網絡出口必不可少的設備,直接決定著網絡帶寬的利用率及用戶應用體驗。經過長期跟蹤分析,筆者總結了一些流控產品在高校網絡出口環境的評估經驗與部署建議。

  協議識別走向立體化

  眾所周知,流控產品的工作機制與防病毒網關、IPS等安全產品類似,主要依靠應用協議的數據特征對流量的應用歸屬進行判斷。它的核心是協議識別引擎,其衡量標准包括識別率、誤識別率、協議種類和性能等。許多用戶認為能夠識別的協議數量非常重要(廠商往往也樂於強調這一點),其實不然,流控產品在真實環境下的識別率才是最重要的指標。這就好比防病毒網關,某些產品在規格表中公布的病毒簽名數量只有幾萬條,但每一個簽名都涵蓋了同一病毒家族的所有變種,實際查殺能力甚至能超越其他一些標稱內置數十萬簽名的產品。

  隨著P2P 類應用越來越強烈的加密趨勢,傳統的基於應用協議數據特征的識別方式往往難以奏效,這就要求協議識別引擎能夠對流量行為進行綜合分析,根據統計特征、連接相關性等方面表現出來的蛛絲馬跡判斷應用的類型。一些流控產品已經提供了這種啟發式處理機制,可以與傳統方式相配合,實現更好的流量控制效果。但根據流量的行為特征進行判斷,也會在一定程度上增加應用協議的誤識別率,極端情況下甚至會影響到網絡的連通性。所以當無法保證准確識別時,流控產品要給用戶提供糾正的手段,或將部分功能作為可選項進行交付。

  應用協議特征的更新響應速度也是非常重要的評估指標,在爆發式增長的互聯網應用面前,業界所有廠商都不遺余力地進行著越來越多的抓包、分析、測試、更新工作。這種模式未來到底能堅持多久,誰也無法給出准確答案。但從其他安全產品的發展歷程看,流控廠商也許要在技術實現機制或運營模式方面探索新的道路。

  發展中的流控技術

  流控產品本身就因流量控制的需求而生,發展至今已經比較成熟。但在不斷變化的應用需求面前,其功能與實現機制一直在進行調整,爭取更好的優化與管控效果。目前,流控的核心理念已從傳統的控制下行流量發展到對上行流量的控制。前者雖然易於實現,但僅對TCP流量有一定的效果(如調整TCP Window)。對於UDP流量來說,這種方式非但效果不明顯,且易產生流量差,對帶寬資源造成極大的浪費。考慮到目前占用帶寬比例最大的網絡視頻和多數 P2P下載應用都以UDP通訊為主,流控產品必須應具有通過控制上行流量來壓制下行流量的機制,從而減小流量差,提高帶寬利用率。

  當帶寬資源緊張時,流控產品通常會采用丟包的方法來實現壓縮流量的目的。在數據包的丟棄機制方面,目前常見的有隊列與非隊列兩種。隊列方式相對比較傳統,流控引擎會將數據包放入隊列,然後由隊列調度器統一進行調度,許多開源軟件都采用了這種實現方法。這樣做的好處是網絡波動小一些,特別是TCP流量會更加平緩,但對資源的占用相對較多,系統壓力會增大。如果沒有用到隊列,流控引擎一般會采用TOKEN BUCKET機制。當TOKEN不夠時,對當前數據包直接進行丟棄。其優點是系統壓力小,占用資源少,基本上無延遲。總體來看,兩種丟包機制各

  有優劣,但對於高校網絡出口這種流量較大的應用場景來說,非隊列模式顯然更為適用。

  總體控制可以對網絡流量進行宏觀管理,但無法解決單點流量過大而引發的公平性問題。因此要達到更好的流量控制效果,必須采用點面結合的管理思路。這就要求流控產品在對出口流量進行整體梳理的同時,能夠提供針對IP/IP群組的控制能力,維護一定程度的公平。此外,帶寬保證/ 帶寬借用也是流控產品中比較常見的功能。根據以往的實施經驗來看,該功能在企業、網吧等出口帶寬較小的場景中具有很好的優化效果,在高校、運營商等大流量環境中效果並不明顯。

  應用路由漸成主流

  僅僅控制流量並不能完全解決問題,在條件允許的情況下,還需要主動疏導,以爭取更好的網絡應用體驗。比較常見的做法是將P2P下載、網絡視頻等非關鍵應用的流量分配到高帶寬、低成本的線路上。這些應用的實現機制決定了即便是在質量欠佳的鏈路環境下,仍能達到讓人接受的效果。而視頻會議、遠程教學等關鍵應用的體驗必須有所保障,它們應享用最好的鏈路資源。綜上所述,應用路由已成為當今流控產品的標准功能之一,未來必將得到大范圍應用。高校中更是如此。

  目前,流控產品通常有3種實現應用路

  由的部署模式,分別為:

  1. 針對不同應用,打上不同的DSCP標記,路由器/防火牆根據DSCP做策略路由;

  2. 針對不同應用,實施不同的源地址NAT,路由器/防火牆根據源地址做策略路由;

  3. 取代路由器/防火牆做接入,直接針對不同應用做策略路由。

  第一種方式實施起來比較簡單,但筆者在許多部署中發現,可根據DSCP做策略路由的路由器/防火牆並不多。而基本上所有的路由器或防火牆都支持基於源地址的策略路由,所以第二種方式更通用一些(當然這個通用是以增加流控產品負載為前提的)。第三種實現方式最簡單,但對網絡拓撲的改動比較大,設備也要承擔最重的負載,目前在高校中比較少見。不過流控產品與路由器/ 防火牆的融合趨勢是比較明顯的,相信未來第三種部署模式的比例會逐漸增加。個別高校目前采用了為每條鏈路單獨配備流控產品的做法,這非但不能實現應用路由,對流量也缺乏整體感知與控制的能力,除非是極特殊的情況,否則不建議使用這種部署模式。

  在啟用應用路由時,還有兩個重要的問題需要考慮。首先是不同運營商之間的互通問題,大的門戶或在線視頻網站都有自己的DNS(CDN)負載均衡服務,通過不同運營商的DNS 解析出來的地址肯定有所差異。如果目標地址是電信IP,但經過應用路由後流量指向聯通線路,那麼非但不會起到優化效果,反而會降低應用體驗。因此在很多情況下,應用路由需要搭配DNS重定向功能,如果將流量甩向聯通的鏈路,就將DNS 請求通過聯通的DNS 服務器解析,以獲得正常的訪問效果。

  其次是應用連接的相關性問題。一些應用中,存在有單會話包含多條連接的情況,如果其中一部分連接走教育網,另一部分走其他運營商,輕則影響應用體驗,重則會中斷應用。這種情況對流控引擎提出了更高要求,只有輔以前面提到過的基於應用協議行為特征的判斷機制,才能解決特征完整性的問題。不過,應用路由的成功率也並不等同於對應用的識別率,某些應用是服務端先發數據,難以實現分流。所以廠商在分析、描述應用特征時,也要預先考慮到應用路由的需要。

  協作:1+1>2的優化效果

  流控產品部署在高校網絡出口,對出入校園網的所有流量進行管理與優化,地位不亞於路由器與核心交換機。雖然流量管理是其主要職能,但如果能夠與其他設備協作,將會起到更好的優化效果,使其價值最大化。

  目前來看,最適合與流控產品進行搭配的當屬Cache加速設備。借助應用路由,流控產品可以將高校網絡出口流量中的特定應用及內容進行重定向(例如文件下載或Web視頻應用),指向Cache加速設備。此時它就相當於Cache加速設備的一個客戶,對終端用戶而言是完全透明的。使用流控產品實現重定向和傳統的基於端口的重定向的一個顯著區別是,前者可以根據精准的應用識別結果,只轉發Cache加速設備需要處理的流量,從而提升了緩存系統的利用率與命中率,同時降低I/O與文件管理系統的壓力,使其更“專心”地去做業務相關的工作。

  另一個適合與流控產品協同工作的是審計系統。一般而言,審計系統需要通過交換機鏡像端口獲取數據。因為鏡像而來的是所有流量,審計系統必須在接收所有數據包的同時過濾掉不在業務范圍內的數據包,這一環節會占用不少的系統資源。流控產品可以利用其強大的協議識別能力,將需要審計的應用流量(如 HTTP,IM等)有選擇地鏡像給審計系統,這樣就可以大大降低審計系統的壓力,避免由於性能導致的審計不完整問題。

  實際上,幾乎所有作用於特定業務的串行或旁路設備,都可以從流控產品的應用路由及應用流量鏡像功能中受益。一些高校曾經由於性能問題拒絕了WAF或防病毒網關,經過分析,其性能瓶頸很大程度上是因為不必要的I/O處理所造成,而非安全業務。須要注意的是,應用路由及應用流量鏡像的功能在流控產品上還不是很普及,它們的實現機制也會為設備帶來額外的負載,對性能的影響比較大。所以建議教師們在進行評估選型的時候,更多地依據實際環境中的測試結果做出判斷。

  文:http://bbs.netzone.com/forum.php?mod=vie

copyright © 萬盛學電腦網 all rights reserved