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