資源描述:
《流量分析新貴NetFlow介紹》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、流量分析新貴NetFlow介紹2006年8月9日電腦商網(wǎng)東軟姚偉棟IP網(wǎng)絡(luò)承載能力與所提供的應用業(yè)務規(guī)模向來都是相輔相成的,一方面IP網(wǎng)絡(luò)的建設(shè)將給新應用技術(shù)的推廣提供有效的實施平臺,另一方面應用業(yè)務也會隨著自身系統(tǒng)發(fā)展需要而對現(xiàn)有IP網(wǎng)絡(luò)提出更高的資源需求,從而推動IP網(wǎng)絡(luò)基礎(chǔ)建設(shè)進入新的建設(shè)周期。在這種類似于“雞生蛋、蛋生雞”的邏輯悖論中,另外一個問題卻是毋庸置疑的凸現(xiàn)了出來,那就是如何把應用業(yè)務與其所占用的IP資源(如帶寬)清晰、準確的對應起來,如何保證有限的IP資源能夠被合理應用的到主要利潤業(yè)務中。以NetFlow為代表的Flow技術(shù)正是為響應這種挑戰(zhàn)而出現(xiàn)的新型解決途徑。什
2、么是Flow在最開始,F(xiàn)low是網(wǎng)絡(luò)設(shè)備廠商為了在網(wǎng)元設(shè)備內(nèi)部提高路由轉(zhuǎn)發(fā)速度而引入的一個技術(shù)概念,其本意是將高CPU消耗的路由表軟件查詢匹配作業(yè)部分轉(zhuǎn)移到硬件實現(xiàn)的快速轉(zhuǎn)發(fā)模塊上(如Cisco的CEF模式)。在這種功能模式中,數(shù)據(jù)包將通過幾個給定的特征定義歸并到特定的集合中,這個集合就是Flow。每個Flow的第一個數(shù)據(jù)包除了促使該Flow記錄的產(chǎn)生以外,還要驅(qū)動網(wǎng)元三層模塊完成路由查詢并將查詢結(jié)果同期放入Flow記錄中,而該Flow集合的后續(xù)數(shù)據(jù)包將直接在Flow的已有記錄中獲得路由轉(zhuǎn)發(fā)信息,從而提高了網(wǎng)元設(shè)備的路由轉(zhuǎn)發(fā)效率。作為網(wǎng)元設(shè)備內(nèi)部路由機制優(yōu)化的副產(chǎn)物,F(xiàn)low記錄能夠
3、提供傳統(tǒng)SNMPMIB無法比擬的豐富信息,因此Flow數(shù)據(jù)被廣泛用于高端網(wǎng)絡(luò)流量測量技術(shù)的支撐,以提供網(wǎng)絡(luò)監(jiān)控、流量圖式分析、應用業(yè)務定位、網(wǎng)絡(luò)規(guī)劃、快速排錯、安全分析(如DDOS)、域間記帳等數(shù)據(jù)挖掘功能。相對于會話(“Session”)而言,“Flow”具備更細致的標識特征,在傳統(tǒng)的TCP/IP五元組的基礎(chǔ)上增加了一些新的域值,至少包括以下幾個字段:??源IP地址??目的IP地址??源端口??目的端口??IP層協(xié)議類型??ToS服務類型??輸入物理端口以上七個字段可以唯一地確定任意一個數(shù)據(jù)包屬于哪個特定的Flow,換而言之任何一個字段出現(xiàn)了差異都意味著一個新Flow的發(fā)生。在實際
4、軟件實現(xiàn)中,F(xiàn)low所包含的字段定義及數(shù)量將會隨著廠商甚至協(xié)議版本的不同而出現(xiàn)變化(如包含AS信息、Next_Hop等),業(yè)界因此也相應地出現(xiàn)了各種不同的實現(xiàn)版本。而在這些不同的Flow版本中,NetFlow得益于Cisco公司在網(wǎng)絡(luò)設(shè)備行業(yè)內(nèi)無與倫比的領(lǐng)袖地位而獲得最大范圍的認同。有多少種FlowFlow的版本差異通常直觀的表現(xiàn)在其輸出報文格式上。目前業(yè)內(nèi)常見的主流Flow格式大致有以下幾種:表格2業(yè)內(nèi)常見的Flow類型Flow名稱代表廠商主要版本備注NetFlowCiscoV1、V5、V7、V8、V9應用最廣CFlowdJuniperV5、V8廠商跟進力度不高sFlowFound
5、ry、HP、Alcatel、NEC、Extreme等V4、V5實時性較強,具備突出的第二~七層信息描述能力NetStream華為V5、V8、V9與NetFlow較為類似IPFIXIETF標準規(guī)范RFC3917以NetFlowV9為藍本?隨著IETF對IPFIX的標準化,網(wǎng)絡(luò)流量分析的數(shù)據(jù)采集協(xié)議也將也將逐步轉(zhuǎn)移到NetFlowV9/IPFIX標準上來。因此,下文將以NetFlowV9為例介紹Flow的詳細內(nèi)容。NetFlow的運行機制NetFlow的運行可分解為以下幾個關(guān)鍵功能單元,包括:3.1Cache緩存空間NetFlowCache是所有活躍Flow統(tǒng)計信息的存儲位置,所有具備相
6、同關(guān)鍵字段的數(shù)據(jù)包都將在該Cache相應表項中進行數(shù)據(jù)累計,如數(shù)據(jù)包數(shù)量、字節(jié)數(shù)等。除了被稱之為MainCache的上述緩存之外,部分支持Aggregation機制的網(wǎng)元設(shè)備還需提供相應的聚合緩存(AggregationCache),最終的輸出報文將包含該聚合緩存的匯總結(jié)果,從而能夠有效降低NetFlow流量對網(wǎng)絡(luò)帶寬的占用;3.2可配置的Cache維護機制一般情況下Cache空間的占用是與所監(jiān)控的Flow數(shù)量呈正比的,但是當鏈路中充斥著大量的短連接Session時,F(xiàn)low表項數(shù)量可能會因為沒有得到及時釋放而過多占用有限的Cache空間。為此,NetFlow提供了一種非常復雜、高效
7、的算法以快速定位一個數(shù)據(jù)包在該Cache中的位置或判斷是否應新建表項,并且通過管理員給定的閥值進行各類表項的超時導出,從而及時釋放老的表項以容納新建Flow信息。Cache表項Timed-Out操作可由以下幾項因素進行驅(qū)動:??該表項已經(jīng)空閑了指定的時間長度(InactiveTimer,缺省15seconds);??長連接會話強制超時(ActiveTimer,缺省30minutes);??緩存空間耗盡所觸發(fā)的強制超時;??TCPFIN/RST觸發(fā)的超時。3