據(jù)思科最新公布的《視覺網(wǎng)絡(luò)指數(shù):全球移動數(shù)據(jù)流量預(yù)測》顯示,2014到2019年,全球移動數(shù)據(jù)流量將增長十倍,年復(fù)合增長率將達到57%。這一流量的年度運行率將從2014年的30.3艾字節(jié)增長至2019年的291.8艾字節(jié)。也許,我們從思科的這份統(tǒng)計報告中得出的最令人吃驚的數(shù)據(jù)信息是,到2019年,54%的移動鏈接將來自“智能”鏈接。而這一比例在2014年僅為26%。
歡迎來到物聯(lián)網(wǎng)(IoT)的世界。在這一物聯(lián)網(wǎng)的世界,數(shù)據(jù)信息的量、傳遞速度和數(shù)據(jù)來源均在發(fā)生著極快的變化。今天的網(wǎng)絡(luò)專業(yè)人士不僅需要利用相關(guān)的工具來保護企業(yè)網(wǎng)絡(luò),同時還需要確保數(shù)據(jù)實時的納秒級的精度。
數(shù)據(jù)包捕獲(PCAP)是其中的一種基本工具。這是一種采用攔截數(shù)據(jù)包遍歷一個計算機網(wǎng)絡(luò)的機制,PCAP是企業(yè)部署的一種常見的功能,用以安全事件和網(wǎng)絡(luò)性能的監(jiān)測,識別數(shù)據(jù)泄漏,排查問題,甚至進行取證分析,以確定網(wǎng)絡(luò)漏洞的影響。
不過,現(xiàn)實情況則是:鑒于物聯(lián)網(wǎng)對于網(wǎng)絡(luò)需求的不斷增加,使得數(shù)據(jù)的傳輸速度不斷增加,現(xiàn)有的PCAP體系跟不上。企業(yè)用戶所使用的是商業(yè)化的網(wǎng)絡(luò)接口卡(NIC),并正在努力滿足以10/40/100 Gbps的速率進行精確的捕捉和回放的要求。好消息是,我們今天已經(jīng)有了一些解決方案,已經(jīng)被用來實施速度超過100 Gbps的數(shù)據(jù)包捕獲。利用網(wǎng)絡(luò)加速技術(shù),再加上開源的網(wǎng)絡(luò)監(jiān)控和捕獲解決方案,可以使企業(yè)用戶能夠滿足高速網(wǎng)絡(luò)的精確數(shù)據(jù)包捕獲和回放要求。
高速網(wǎng)絡(luò)的分析與安全解決方案
工程師和管理人員需要的是對于當前網(wǎng)絡(luò)基礎(chǔ)設(shè)施中所發(fā)生狀況的實時、精確的視圖把控,而這就是有效的PCAP和分析系統(tǒng)可以提供的。同樣,精密PCAP系統(tǒng)也給企業(yè)用戶提供了創(chuàng)建具有高保真驗證和架構(gòu)變化驗證,故障排除和分析網(wǎng)絡(luò)事件的能力。
當進行高速網(wǎng)絡(luò)和安全性解決方案的研究分析時,一個重要考慮的因素是與速度和可編程邏輯準確性開源工具的結(jié)合。如下三大關(guān)鍵因素是您企業(yè)比較相關(guān)的選擇方案時值得考慮的:
高精度的時間戳:尋找能夠提供高精度的、基于硬件的時間戳(time stamping),擁有納秒分辨率進行每幀捕獲和發(fā)送的解決方案。基于硬件的時間戳避免了以軟件為基礎(chǔ)的解決方案固有的不可預(yù)知的延遲,并實現(xiàn)了對通信流的精確記錄。精密時間協(xié)議(PTP)的支持,還可以用于在分布式探測器網(wǎng)絡(luò)的精確同步。
在流量入口處指揮流量:在流量入口直接識別流量的技術(shù)的實現(xiàn)對于保持立即捕獲和在高轉(zhuǎn)速下的性能分析是非常重要的。這樣,用戶空間應(yīng)用程序的負載可以被最小化,管理員能夠動態(tài)識別,并將相關(guān)的數(shù)據(jù)流直接導(dǎo)入到特定的處理器內(nèi)核,以便根據(jù)流量的類型進行分析。
以各種速度進行數(shù)據(jù)包捕獲和重放:如果企業(yè)的目標是以各種速度實現(xiàn)高速的數(shù)據(jù)包捕獲和重放,包括1/10/40/100 Gbps,網(wǎng)絡(luò)加速卡(NAC)基于現(xiàn)場可編程門陣列(FPGA)是理想的選擇。此外,NAC允許精確的幀間間隙(IFG)控制,這在回放捕獲的流量進行故障排除或模擬業(yè)務(wù)流時,是至關(guān)重要的。
標準的數(shù)據(jù)包捕獲(PCAP)
對于網(wǎng)絡(luò)基礎(chǔ)設(shè)施進行數(shù)據(jù)包捕獲和分析的重要功能,企業(yè)用戶以往的歷史上是依賴于軟件工具。在這種情況下,軟件是安裝在指定的監(jiān)控主機上,配置網(wǎng)絡(luò)輪詢包,將商業(yè)化的網(wǎng)絡(luò)適配器置于混雜模式,并連接到網(wǎng)絡(luò)使用一個交換機端口分析儀(SPAN)接口。下圖1說明了低速的PCAP使用商業(yè)化的網(wǎng)絡(luò)接口卡(NIC)和libpcap的典型結(jié)構(gòu)。
圖1:傳統(tǒng)的PCAP體系結(jié)構(gòu)
在此架構(gòu)下,每次網(wǎng)絡(luò)適配器收到以太網(wǎng)幀時,它會產(chǎn)生一個中斷請求,并從適配器的內(nèi)存緩沖區(qū)復(fù)制數(shù)據(jù)到內(nèi)核空間中。通常情況下,內(nèi)核空間驅(qū)動器確定該數(shù)據(jù)包是否是用于該主機,或者丟棄數(shù)據(jù)包,或者將其傳遞給協(xié)議棧,直到它到達用戶空間被指定的應(yīng)用程序時。但是,當為混雜模式進行配置時,所有數(shù)據(jù)包均被捕獲到內(nèi)核緩沖區(qū)無論其目標主機如何。一旦內(nèi)核緩沖區(qū)滿時,上下文切換被執(zhí)行以將數(shù)據(jù)傳送到由libpcap管理的用戶空間緩沖,這是一個與用戶級數(shù)據(jù)包捕獲無關(guān)的一個獨立系統(tǒng)接口,使得數(shù)據(jù)可以由用戶級應(yīng)用程序進行訪問。
內(nèi)核緩沖區(qū)從用戶級應(yīng)用程序中移除,并且要保持應(yīng)用程序訪問內(nèi)核管理內(nèi)存。鑒于這種結(jié)構(gòu),很明顯,當一個幀被適配器接收到,而其實際上是要交付給用戶空間應(yīng)用程序進行處理時,某些一定的時間間隔內(nèi)會失效。
當數(shù)據(jù)傳輸速率低時,這一時間間隔并不會對PCAP的準確性產(chǎn)生顯著影響,但在更高的速率下,情況是復(fù)合的,CPU趨于飽和,試圖跟上傳入的數(shù)據(jù),則會導(dǎo)致捕獲損失和時序問題。例如,我們可以考慮一個1 Gbps的網(wǎng)絡(luò)鏈接可以推動每秒150萬數(shù)據(jù)包,或一個數(shù)據(jù)包需要花費670納秒。相反,在10和100 Gbps條件下,系統(tǒng)處理一個數(shù)據(jù)包,分別為每67或6.7納秒。
對于傳統(tǒng)的架構(gòu),以這種速率捕獲數(shù)據(jù)包,而不增加時間,分類,流量識別和過濾精確度的復(fù)雜性已經(jīng)很難了。在這種速率情況下,執(zhí)行無損高保真的數(shù)據(jù)包捕獲,回放和實時數(shù)據(jù)流分析需要采用與PCAP不同的方法,其中一種便是將大量的數(shù)據(jù)處理從用戶空間移動到硬件,同時也消除了低效的用戶到內(nèi)核空間的相互作用。
面向未來的PCAP
相反,硬件加速,使得在高速網(wǎng)絡(luò)實現(xiàn)PCAP的目標成為可能。有針對性地使用可編程邏輯加上開源的工具,允許將數(shù)據(jù)被傳遞到用戶空間應(yīng)用程序之前進行準確地捕獲,并在網(wǎng)絡(luò)加速卡處理(NAC)。圖2說明了一款加速PCAP架構(gòu)看起來的樣子。
圖2:加速PCAP體系結(jié)構(gòu)
對于線速數(shù)據(jù)包分析和在線事件處理,在硬件中以1/10/40/100 Gbps的速度,高性能的NAC使用FPGA。由于其可編程特性,F(xiàn)PGA在其中發(fā)揮了重要的作用,非常適合于許多不同的市場。這些半導(dǎo)體設(shè)備是基于通過可編程互連連接的可配置邏輯塊(CLB)的矩陣。FPGA可重新編程,以滿足應(yīng)用程序所需或功能的要求。通過使用基于NAC的FPGA,網(wǎng)絡(luò)管理員可以立即改善企業(yè)的監(jiān)控,并具備了應(yīng)對發(fā)生在其網(wǎng)絡(luò)基礎(chǔ)設(shè)施事件的能力。
該架構(gòu)采用了線速率數(shù)據(jù)包分析,將大部分的幀處理推到硬件的捕獲設(shè)備,其可以部署在一個商業(yè)化的服務(wù)器或工作站,為更高層次的分析維護處理器周期。這種方法確保了數(shù)據(jù)處理時,相關(guān)的數(shù)據(jù)已經(jīng)傳遞給了用戶的空間緩沖區(qū),可以由應(yīng)用程序訪問,已被時間戳,并適當?shù)剡M行分類和篩選。
將這些設(shè)備與開源應(yīng)用程序結(jié)合創(chuàng)建了一種強大的且具有成本效益的解決方案,可以提供多種用途。一般來說,高性能的NAC使內(nèi)部開發(fā)易于伸縮規(guī)模化,高性能的網(wǎng)絡(luò)應(yīng)用程序超過了PCAP。即使是復(fù)雜的載荷分析和網(wǎng)絡(luò)廣泛的相關(guān)算法可以很容易地使用有效的基于流的負載均衡機制建立在NAC。該應(yīng)用程序執(zhí)行更復(fù)雜的分析,更為關(guān)鍵的是,從捕獲設(shè)備的PCAP流沒有丟失數(shù)據(jù)包,框架是正確的順序。諸如協(xié)議重建,重組,事件檢測和QoS計算等任務(wù)由于PCAP性能的不足嚴重阻礙了。
另一個最佳實踐是尋找IEEE 1588,或精密時間協(xié)議(PTP)解決方案的支持。這樣做時,精確的時間同步被保持在分布式部署中,多個加速的PCAP探針被部署在整個網(wǎng)絡(luò)的基礎(chǔ)設(shè)施。這種方法允許從多個NAC的多個端口的幀合并成一個單一的時間排序的分析流。在數(shù)據(jù)捕獲中保持時間保真度的這個水平,確保了企業(yè)可以以數(shù)據(jù)被捕獲完全相同的方式進行回顧性分析網(wǎng)絡(luò)事件,回放數(shù)據(jù),完成精確定時和幀間間隙控制。
關(guān)鍵是要理解和衡量績效,找出瓶頸所在,排查解決問題,并保護環(huán)境的安全性;要做到這一點,企業(yè)需要的是對于其企業(yè)網(wǎng)絡(luò)中所發(fā)生狀況的實時視圖,以及執(zhí)行活動的回顧性分析的能力。因此,數(shù)據(jù)包捕獲和分析將繼續(xù)在企業(yè)數(shù)據(jù)管理和保護各種規(guī)模的網(wǎng)絡(luò)中發(fā)揮關(guān)鍵作用。
PCAP的現(xiàn)代數(shù)據(jù)負載
現(xiàn)代高速網(wǎng)絡(luò)對于用傳統(tǒng)手段來執(zhí)行PCAP無疑是太快了,從而導(dǎo)致了大量數(shù)據(jù)包的丟棄和數(shù)據(jù)的不精確。隨著移動數(shù)據(jù)流量的大增,企業(yè)需要在10/40/100 Gbps的速度和更高傳輸速率情況下執(zhí)行PCAP。這將需要捕獲的數(shù)據(jù)包的處理發(fā)生在入口點,同時確保精度進行維護,且數(shù)據(jù)包也不會丟失。企業(yè)可以創(chuàng)建使用可編程邏輯和開源軟件部署在COTS服務(wù)器上的面向未來的解決方案,以滿足PCAP對高速網(wǎng)絡(luò)的需求。
關(guān)于作者
本文作者丹尼爾·喬瑟夫·巴里是Napatech公司的副總裁兼首席宣傳官。他在IT和電信行業(yè)擁有超過20年的經(jīng)驗。在2009年加入Napatech之前,丹喬曾擔任TPack公司的營銷總監(jiān),這是一家電信行業(yè)領(lǐng)先的運輸芯片解決方案供應(yīng)商。從2001年到2005年,他曾擔任光學組件供應(yīng)商NKT Integration公司(現(xiàn)在的Ignis Photonyx)的銷售和業(yè)務(wù)發(fā)展總監(jiān),之后又擔任過愛立信公司的產(chǎn)品開發(fā)、業(yè)務(wù)發(fā)展和產(chǎn)品管理的各種職務(wù)。丹喬于1995年從愛立信的研發(fā)部門的一個職位跳槽到Jutland Telecom(現(xiàn)在的TDC公司)。他擁有都柏林圣三一學院電子工程學士學位以及MBA學位。