專利名稱:一種基于端口位圖的硬件報(bào)文采樣系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)數(shù)據(jù)處理領(lǐng)域,特別涉及一種基于端口位圖的硬件報(bào)文采樣系統(tǒng)和方法。
背景技術(shù):
一些網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)中,往往由硬件芯片實(shí)現(xiàn)對(duì)輸入報(bào)文的采樣,報(bào)文到達(dá)硬件芯片時(shí),芯片把不需要的報(bào)文丟棄,選擇一些需要處理的報(bào)文繼續(xù)處理。在很多系統(tǒng)中, 硬件芯片進(jìn)行報(bào)文采樣的依據(jù)是報(bào)文的tcp或UdP端口號(hào)。專利號(hào)為“CN(^^8622. 7”、發(fā)明名稱為“用于劃分安全保護(hù)的輸入/輸出許可位圖”,公開了一種選擇性執(zhí)行輸入/輸出(I/O)指令的方法和裝置設(shè)備。該方法包括于內(nèi)存 (206)中產(chǎn)生I/O許可位圖(600)并接收I/O端口數(shù)字和安全狀態(tài)認(rèn)證(SCID)值。該方法并包括使用該SCID值和該I/O端口數(shù)字訪問該存儲(chǔ)的I/O許可位圖(600)以獲得對(duì)應(yīng)至該I/O端口的許可位并依照對(duì)應(yīng)至該I/O端口的許可位執(zhí)行該I/O指令。該I/O許可位圖 (600)包括多個(gè)許可位。各該許可位對(duì)應(yīng)至一個(gè)不同的I/O端口。各該許可位具有數(shù)值指示該對(duì)應(yīng)的I/O端口是被允許訪問。該I/O端口數(shù)字指示該I/O指令所引用的I/O端口。 該SCID值指示具有該I/O指令的內(nèi)存地址的安全認(rèn)證級(jí)。專利號(hào)為“CN200710021621.8”、發(fā)明名稱為“高速多鏈路邏輯信道環(huán)境下的自適
應(yīng)抽樣流測(cè)量方法”,公開了一種高速多鏈路邏輯信道環(huán)境下的自適應(yīng)抽樣流測(cè)量方法是一種用于計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備的自適應(yīng)抽樣流測(cè)量方法,該方法基于對(duì)NetraMet和NetFlow系統(tǒng)設(shè)計(jì)的分析,本發(fā)明使用了支持高速多鏈路邏輯信道網(wǎng)絡(luò)測(cè)量的抽樣比,能根據(jù)網(wǎng)絡(luò)流量的狀況自調(diào)節(jié)報(bào)文抽樣比和流抽樣比,并且支持時(shí)間片方式輸出流信息,以通用的方式支持任何信道的流量監(jiān)測(cè)。本發(fā)明利用基于閾值檢測(cè)-趨勢(shì)觸發(fā)的報(bào)文抽樣比自適應(yīng)調(diào)節(jié)算法和基于抽樣一保持流抽樣算法以較小的資源開銷監(jiān)測(cè)任何高速多鏈路邏輯信道,并在流量突發(fā)的情況下維持系統(tǒng)開銷不變,支持以時(shí)間片的方式輸出鏈路上的流量信息,誤差小,為流量分析、異常檢測(cè)等應(yīng)用提供了精確的信息。但上述技術(shù)方案中,系統(tǒng)在進(jìn)行tcp或Udp端口的采樣時(shí),需要把要采樣的tcp或 Udp端口號(hào)列表配置到硬件芯片中,每個(gè)端口號(hào)用16位表示,硬件芯片接收到報(bào)文后,根據(jù)報(bào)文的端口號(hào)到系統(tǒng)配置的端口號(hào)列表中去查找,如果能找到,則采樣該報(bào)文,如果找不到,則丟棄該報(bào)文。在有些情況下,系統(tǒng)采樣的端口可能很多,因此系統(tǒng)設(shè)計(jì)時(shí)必須考慮所有可能的情況,配置到硬件中的端口列表長(zhǎng)度需要達(dá)到64K個(gè)表項(xiàng),每個(gè)表項(xiàng)需要16位。大容量的端口列表一方面會(huì)占用硬件芯片的存儲(chǔ)資源,另一方面會(huì)降低查找端口的效率。
發(fā)明內(nèi)容
本發(fā)明克服現(xiàn)有技術(shù)不足,使用端口位圖降低端口列表對(duì)硬件芯片存儲(chǔ)資源的占用,提升查找的效率,從而解決提升報(bào)文采樣硬件芯片的效率的問題。
本發(fā)明提供了一種基于端口位圖的硬件報(bào)文采樣系統(tǒng),其包括端口號(hào)查找模塊和端口位圖結(jié)構(gòu)儲(chǔ)存模塊,該端口位圖結(jié)構(gòu)儲(chǔ)存模塊中每一位的位置表示端口號(hào),把一般系統(tǒng)的端口列表模塊中表示一個(gè)端口使用的16位壓縮為端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的1位。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣系統(tǒng),其采集的報(bào)文的端口號(hào)將映射對(duì)應(yīng)到端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的某一位。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣系統(tǒng),其端口位圖結(jié)構(gòu)儲(chǔ)存模塊為 64Kbit的存儲(chǔ)資源。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣系統(tǒng),其所述報(bào)文是Udp或tcp報(bào)文。本發(fā)明還提供了一種基于端口位圖的硬件報(bào)文采樣方法,在硬件芯片中使用 64Kbit的存儲(chǔ)資源,建立tcp或udp端口位圖,其中每一位用自己的位置表示一個(gè)端口號(hào), 第η位表示端□號(hào)η。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣方法,對(duì)輸入的所述udp或tcp報(bào)文, 根據(jù)報(bào)文的所述端口號(hào),對(duì)應(yīng)到芯片中端口位圖的某一位。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣方法,當(dāng)某一位的值為0時(shí),表示不采樣該位對(duì)應(yīng)的所述端口號(hào)的報(bào)文,直接丟棄報(bào)文后處理下一個(gè)報(bào)文。本發(fā)明提供的基于端口位圖的硬件報(bào)文采樣方法,當(dāng)某一位的值為1時(shí),表示采樣該位對(duì)應(yīng)的所述端口號(hào)的報(bào)文,把報(bào)文傳輸?shù)较到y(tǒng)的后繼模塊處理。本發(fā)明使用一個(gè)位圖結(jié)構(gòu)儲(chǔ)存端口列表,用每一位的位置表示端口號(hào),把端口列表中表示一個(gè)端口使用的16位壓縮為端口位圖中的1位,減少了存儲(chǔ)空間,查找一個(gè)報(bào)文的端口號(hào)時(shí)也不需要掃描端口列表,而是把端口號(hào)作為端口位圖中對(duì)應(yīng)一位的位置,直接定位,提高了查找速度。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于提高了報(bào)文采樣系統(tǒng)中硬件芯片的效率。
圖1是本發(fā)明的結(jié)構(gòu)示意圖。
具體實(shí)施例方式圖1是本發(fā)明的結(jié)構(gòu)示意圖,其包括端口號(hào)查找模塊和64Kbit的存儲(chǔ)資源的端口位圖結(jié)構(gòu)儲(chǔ)存模塊,該端口位圖結(jié)構(gòu)儲(chǔ)存模塊中每一位的位置表示端口號(hào),把端口列表模塊中表示一個(gè)端口使用的16位壓縮為端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的1位,并且其采集的udp 或tcp報(bào)文的端口號(hào)將映射對(duì)應(yīng)到端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的某一位。本發(fā)明的實(shí)現(xiàn)方法和過程如下(1)在硬件芯片中使用64Kbit的存儲(chǔ)資源,建立tcp或udp端口位圖,其中每一位用自己的位置表示一個(gè)端口號(hào),第η位表示端口號(hào)η。(2)對(duì)輸入的udp或tcp報(bào)文,根據(jù)報(bào)文的端口號(hào),對(duì)應(yīng)到芯片中端口位圖的某一位。(3)當(dāng)某一位的值為0時(shí),表示不采樣該位對(duì)應(yīng)的端口號(hào)的報(bào)文,直接丟棄報(bào)文后處理下一個(gè)報(bào)文。
(4)當(dāng)某一位的值為1時(shí),表示采樣該位對(duì)應(yīng)的端口號(hào)的報(bào)文,把報(bào)文傳輸?shù)较到y(tǒng)的后繼模塊處理。本發(fā)明使用一個(gè)位圖結(jié)構(gòu)儲(chǔ)存端口列表,用每一位的位置表示端口號(hào),把端口列表中表示一個(gè)端口使用的16位壓縮為端口位圖中的1位,減少了存儲(chǔ)空間,查找一個(gè)報(bào)文的端口號(hào)時(shí)也不需要掃描端口列表,而是把端口號(hào)作為端口位圖中對(duì)應(yīng)一位的位置,直接定位,提高了查找速度。本發(fā)明提高了報(bào)文采樣系統(tǒng)中硬件芯片的效率。以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對(duì)其限制,盡管參照上述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,所述領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對(duì)本發(fā)明的具體實(shí)施方式
進(jìn)行修改或者同等替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換, 其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種基于端口位圖的硬件報(bào)文采樣系統(tǒng),其包括端口號(hào)查找模塊和端口位圖結(jié)構(gòu)儲(chǔ)存模塊,其特征在于端口位圖結(jié)構(gòu)儲(chǔ)存模塊中每一位的位置表示端口號(hào),把端口列表模塊中表示一個(gè)端口使用的16位壓縮為端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的1位。
2.根據(jù)權(quán)利要求1所述的報(bào)文采樣系統(tǒng),其特征在于采集的報(bào)文的端口號(hào)將映射對(duì)應(yīng)到端口位圖結(jié)構(gòu)儲(chǔ)存模塊中的某一位。
3.根據(jù)權(quán)利要求1-2所述的報(bào)文采樣系統(tǒng),其特征在于端口位圖結(jié)構(gòu)儲(chǔ)存模塊為 64Kbit的存儲(chǔ)資源。
4.根據(jù)權(quán)利要求1-3所述的報(bào)文采樣系統(tǒng),其特征在于所述報(bào)文是udp或tcp報(bào)文。
5.一種基于端口位圖的硬件報(bào)文采樣方法,其特征在于,在硬件芯片中使用64Kbit的存儲(chǔ)資源,建立tcp或udp端口位圖,其中每一位用自己的位置表示一個(gè)端口號(hào),第η位表示端□號(hào)η。
6.根據(jù)權(quán)利要求5所述的報(bào)文采樣方法,其特征在于,對(duì)輸入的所述udp或tcp報(bào)文, 根據(jù)報(bào)文的所述端口號(hào),對(duì)應(yīng)到芯片中端口位圖的某一位。
7.根據(jù)權(quán)利要求5-6所述的報(bào)文采樣方法,其特征在于,當(dāng)某一位的值為0時(shí),表示不采樣該位對(duì)應(yīng)的所述端口號(hào)的報(bào)文,直接丟棄報(bào)文后處理下一個(gè)報(bào)文。
8.根據(jù)權(quán)利要求5-7所述的報(bào)文采樣方法,其特征在于,當(dāng)某一位的值為1時(shí),表示采樣該位對(duì)應(yīng)的所述端口號(hào)的報(bào)文,把報(bào)文傳輸?shù)较到y(tǒng)的后繼模塊處理。
全文摘要
本發(fā)明提供一種基于端口位圖的硬件報(bào)文采樣系統(tǒng)和方法,其特征在于,在硬件芯片中使用64Kbit的存儲(chǔ)資源,建立tcp或udp端口位圖,其中每一位用自己的位置表示一個(gè)端口號(hào),第n位表示端口號(hào)n,報(bào)文采樣時(shí)根據(jù)輸入報(bào)文的tcp或upd端口號(hào)查找位圖,可以實(shí)現(xiàn)快速的查找。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于,本發(fā)明提高了報(bào)文采樣系統(tǒng)中硬件芯片的效率。
文檔編號(hào)H04L12/56GK102571563SQ20111042658
公開日2012年7月11日 申請(qǐng)日期2011年12月19日 優(yōu)先權(quán)日2011年12月19日
發(fā)明者劉朝輝, 李鋒偉, 白宗元, 竇曉光, 邵宗有 申請(qǐng)人:曙光信息產(chǎn)業(yè)(北京)有限公司