本發(fā)明涉及網(wǎng)絡(luò)報(bào)文數(shù)據(jù)處理領(lǐng)域,具體的說是一種報(bào)文IP地址匹配電路及方法。
背景技術(shù):
IP地址(Internet Protocol Address,網(wǎng)際協(xié)議地址)是IP協(xié)議提供的一種統(tǒng)一的地址格式,它為互聯(lián)網(wǎng)上的每一個(gè)網(wǎng)絡(luò)和每一臺主機(jī)分配一個(gè)邏輯地址,以此來屏蔽物理地址的差異。IP報(bào)文中通常包含報(bào)文源IP和目的IP等信息,通過與策略中的IP地址信息進(jìn)行比較匹配,可實(shí)現(xiàn)報(bào)文規(guī)則轉(zhuǎn)發(fā)或存儲。
作為網(wǎng)絡(luò)報(bào)文數(shù)據(jù)交換的必要步驟,報(bào)文IP地址匹配在硬件資源占用和處理時(shí)間消耗上都有較大影響,IP地址的比較匹配效率將影響整個(gè)報(bào)文處理及后續(xù)各模塊的運(yùn)行。而通常情況下策略中的IP地址具有較多的比特位,在比較匹配過程中會占用一部分帶寬和硬件電路,且數(shù)據(jù)冗余量較大,額外占用一定的存儲資源。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對目前技術(shù)發(fā)展的需求和不足之處,提供一種報(bào)文IP地址匹配電路及方法。
本發(fā)明所述一種報(bào)文IP地址匹配電路及方法,解決上述技術(shù)問題采用的技術(shù)方案如下:所述一種報(bào)文IP地址匹配電路,通過采用哈希映射的方法,同時(shí)設(shè)置兩級判斷模塊,形成流水復(fù)用,實(shí)現(xiàn)對子網(wǎng)掩碼形式或起止地址形式表示的報(bào)文IP地址進(jìn)行快速高效的比較匹配運(yùn)算;所述報(bào)文IP地址匹配電路包括哈希處理模塊、哈希沖突模塊、IP規(guī)則哈希存儲模塊、一級判斷模塊、模式一匹配模塊、模式二匹配模塊和二級判斷模塊;
所述哈希處理模塊,用于對策略中源IP地址高16位部分、目的IP高16位部分進(jìn)行哈希運(yùn)算處理,所得結(jié)果輸出至所述哈希沖突模塊;同時(shí)對實(shí)時(shí)報(bào)文中IP地址高16位部分、目的IP高16位部分進(jìn)行哈希運(yùn)算處理,所得結(jié)果輸出至所述哈希沖突模塊;
所述哈希沖突模塊,用于對策略中發(fā)生沖突的哈希結(jié)果進(jìn)行標(biāo)識和記錄,其輸出送至所述IP規(guī)則哈希存儲模塊;同時(shí)對報(bào)文中發(fā)生沖突的哈希結(jié)果進(jìn)行標(biāo)識和記錄,其輸出送至所述一級判斷模塊;
所述IP規(guī)則哈希存儲模塊,用于存儲策略中高位IP地址的哈希結(jié)果,并根據(jù)哈希結(jié)果將相應(yīng)地址的存儲內(nèi)容送至所述一級判斷模塊;
所述一級判斷模塊用于比較經(jīng)哈希處理的策略IP地址和實(shí)時(shí)報(bào)文IP地址,若有條目匹配上,則將結(jié)果經(jīng)模式選擇分別送入所述模式一匹配模塊或模式二匹配模塊,否則直接輸出未匹配標(biāo)志;
所述模式一匹配模塊,用于對模式一方式表示的IP地址進(jìn)行比較匹配;所述模式二匹配模塊,用于對模式二方式表示的IP地址進(jìn)行比較匹配;二者輸出結(jié)果送至二級判斷模塊;
所述二級判斷模塊用于綜合前級結(jié)果,并根據(jù)報(bào)文是否存在雙向IP地址將結(jié)果送入所述哈希處理模塊或輸出。
一種報(bào)文IP地址匹配方法,其具體實(shí)現(xiàn)過程如下:
第一,策略中高位IP地址經(jīng)哈希運(yùn)算、哈希沖突處理,與低位IP地址、IP地址模式、子網(wǎng)掩碼或終止IP地址、處理策略存入IP規(guī)則哈希存儲模塊,用于一級判斷;
第二,實(shí)時(shí)報(bào)文中IP地址經(jīng)哈希運(yùn)算和哈希沖突處理,與IP規(guī)則哈希存儲模塊中的數(shù)據(jù)經(jīng)一級判斷模塊比較,根據(jù)不同IP地址模式,送入模式一匹配模塊或模式二匹配模塊進(jìn)行比較匹配;
第三,將第二步驟兩種模式匹配模塊的結(jié)果送入二級判斷模塊,根據(jù)報(bào)文是否是雙向IP地址、交換源IP地址和目的IP地址重新進(jìn)行第二步驟,或?qū)⑵ヅ浣Y(jié)果輸出至后級,完成報(bào)文IP匹配。
本發(fā)明所述一種報(bào)文IP地址匹配電路及方法,與現(xiàn)有技術(shù)相比具有的有益效果是:本發(fā)明通過采用哈希映射的方法,降低IP地址需要比較的同步位數(shù),提高時(shí)序;同時(shí)設(shè)置兩級判斷模塊,形成流水復(fù)用,節(jié)約硬件資源,可實(shí)現(xiàn)對子網(wǎng)掩碼形式或起止地址形式表示的報(bào)文IP地址進(jìn)行快速高效的比較匹配運(yùn)算。
附圖說明
附圖1為報(bào)文IP地址匹配電路的示意框圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,對本發(fā)明所述一種報(bào)文IP地址匹配電路及方法進(jìn)一步詳細(xì)說明。
實(shí)施例:
本實(shí)施例所述一種報(bào)文IP地址匹配電路,通過采用哈希映射的方法,同時(shí)設(shè)置兩級判斷模塊,形成流水復(fù)用,實(shí)現(xiàn)對子網(wǎng)掩碼形式或起止地址形式表示的報(bào)文IP地址進(jìn)行快速高效的比較匹配運(yùn)算。
如附圖1所示,所述報(bào)文IP地址匹配電路包括哈希處理模塊、哈希沖突模塊、IP規(guī)則哈希存儲模塊、一級判斷模塊、模式一匹配模塊、模式二匹配模塊和二級判斷模塊。
所述哈希處理模塊,用于對策略中源IP地址高16位部分、目的IP高16位部分進(jìn)行哈希運(yùn)算處理,所得結(jié)果經(jīng)所述哈希沖突模塊存入所述IP規(guī)則哈希存儲模塊,用于一級判斷;同時(shí)對實(shí)時(shí)報(bào)文中IP地址高16位部分、目的IP高16位部分進(jìn)行哈希運(yùn)算處理,所得結(jié)果輸出至所述哈希沖突模塊。
本實(shí)施例所述報(bào)文IP地址匹配電路,采用MD5算法實(shí)現(xiàn)哈希映射電路。
所述哈希沖突模塊,用于對策略中發(fā)生沖突的哈希結(jié)果進(jìn)行標(biāo)識和記錄,其輸出送至所述IP規(guī)則哈希存儲模塊;同時(shí)對報(bào)文中發(fā)生沖突的哈希結(jié)果進(jìn)行標(biāo)識和記錄,其輸出送至所述一級判斷模塊。
所述哈希沖突模塊采用深度為16的雙口RAM作為哈希沖突電路的基礎(chǔ)電路,記錄并處理沖突的哈希結(jié)果。
所述IP規(guī)則哈希存儲模塊,用于存儲策略中高位IP地址的哈希結(jié)果,并根據(jù)哈希結(jié)果將相應(yīng)地址的存儲內(nèi)容送至所述一級判斷模塊。
所述一級判斷模塊用于比較經(jīng)哈希處理的策略IP地址和實(shí)時(shí)報(bào)文IP地址,若有條目匹配上,則將結(jié)果經(jīng)模式選擇分別送入所述模式一匹配模塊或模式二匹配模塊,否則直接輸出未匹配標(biāo)志。
所述模式一匹配模塊,用于對模式一方式表示的IP地址進(jìn)行比較匹配;所述模式二匹配模塊,用于對模式二方式表示的IP地址進(jìn)行比較匹配;二者輸出送至二級判斷模塊。
所述二級判斷模塊用于綜合前級結(jié)果,并根據(jù)報(bào)文是否存在雙向IP地址將結(jié)果送入所述哈希處理模塊或輸出。
所述一級判斷模塊中模式選擇包括模式一和模式二,模式一指使用IP地址和子網(wǎng)掩碼方式表示當(dāng)前IP地址;模式二指使用起始IP地址和終止IP地址方式表示當(dāng)前IP地址。
所述模式一匹配模塊對由低16位IP地址和低16位子網(wǎng)掩碼共同決定的策略IP地址,以及由低16位IP地址和低16位子網(wǎng)掩碼共同決定的實(shí)時(shí)報(bào)文IP地址進(jìn)行比較匹配。
所述模式一匹配模塊采用兩數(shù)按位異或判斷是否為0的方法進(jìn)行大小比較。
所述模式二匹配模塊首先對實(shí)時(shí)報(bào)文IP地址的低16位中的高8位與策略IP起始地址相應(yīng)位進(jìn)行比較匹配,然后對實(shí)時(shí)報(bào)文IP地址的低16位中的低8位與策略IP終止地址相應(yīng)位進(jìn)行比較匹配,可降低每次同步位數(shù),提高時(shí)序。
通過上述報(bào)文IP地址匹配電路,實(shí)現(xiàn)一種報(bào)文IP地址匹配方法,該報(bào)文IP地址匹配方法的具體實(shí)現(xiàn)過程如下:
第一,策略中高位IP地址經(jīng)哈希運(yùn)算、哈希沖突處理,與低位IP地址、IP地址模式、子網(wǎng)掩碼或終止IP地址、處理策略存入IP規(guī)則哈希存儲模塊;
第二,實(shí)時(shí)報(bào)文中IP地址經(jīng)哈希運(yùn)算和哈希沖突處理,與IP規(guī)則哈希存儲模塊中的數(shù)據(jù)經(jīng)一級判斷模塊比較,根據(jù)不同IP地址模式,送入模式一匹配模塊或模式二匹配模塊進(jìn)行比較匹配;
第三,將第二步驟兩種模式匹配模塊的結(jié)果送入二級判斷模塊,根據(jù)報(bào)文是否是雙向IP地址、交換源IP地址和目的IP地址重新進(jìn)行第二步驟,或?qū)⑵ヅ浣Y(jié)果輸出至后級,完成報(bào)文IP匹配。
上述具體實(shí)施方式僅是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于上述具體實(shí)施方式,任何符合本發(fā)明的權(quán)利要求書的且任何所屬技術(shù)領(lǐng)域的普通技術(shù)人員對其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。