LIC安全交換路由協(xié)議的NetFPGA實現(xiàn)(下)
硬件框圖及軟件流程圖
本文引用地址:http://m.butianyuan.cn/article/142455.htm圖7所示,最上面進入LIC安全交換路由協(xié)議分析模塊的數(shù)據(jù)通路為LIC安全交換路由協(xié)議通路,下面的數(shù)據(jù)通路為原有IP協(xié)議數(shù)據(jù)通路,這兩條路是NetFPGA中的數(shù)據(jù)流水線、寄存器模塊,是上層軟件通過PCI總線與底層交互的數(shù)據(jù)通路,是NetFPGA原有設(shè)計所決定的?! ?/p>
可以看到,數(shù)據(jù)在進入LIC安全交換路由協(xié)議通路時首先要對LIC安全交換路由協(xié)議中的出口序列指針進行檢驗,以確定是否為最后一跳,若為最后一跳,經(jīng)過LIC安全交換路由協(xié)議頭拆除模塊和IP字段解密模塊,將LIC安全交換路由協(xié)議頭拆除,并將原來對IP地址字段加密的部分進行解密,還原出原有數(shù)據(jù)包。若是非最后一跳,數(shù)據(jù)包經(jīng)過LIC安全交換路由協(xié)議控制模塊更新LIC安全交換路由協(xié)議頭中的TTL和OPS序列指針字段的值,完成后將其轉(zhuǎn)發(fā)。
數(shù)據(jù)在進入原協(xié)議數(shù)據(jù)通路后,先對IP包的協(xié)議號進行分析,以此來判定IP包是否為建立包,若建立包經(jīng)過建立包分析模塊,將數(shù)據(jù)包的路由器出口號提出,寫入特定的數(shù)據(jù)區(qū)域內(nèi)。若為其它數(shù)據(jù)包,經(jīng)過查表模塊檢查IP數(shù)據(jù)包的目的IP地址,并確定是否已經(jīng)建立LIC安全交換路由協(xié)議數(shù)據(jù)通信路徑。若建立則為其封裝LIC安全交換路由協(xié)議頭,并將IP地址字段進行加密,否則,直接將原數(shù)據(jù)包轉(zhuǎn)發(fā),保證原有協(xié)議的正常通信。
軟件部分為數(shù)據(jù)包建立的過程,首先源端發(fā)起身份認證功能,認證成功后進行建立包的發(fā)送,發(fā)送后到接收方后接收方提取信息向宿主機發(fā)送確認包,成功后,將相應信息寫入到協(xié)議的LIC的建立表中,成功后向源端發(fā)送確認信息。建立完成,不成功則返回重新建立。
系統(tǒng)測試總述
系統(tǒng)的測試主要從系統(tǒng)功能、系統(tǒng)穩(wěn)定性、系統(tǒng)性能及系統(tǒng)應用性等方面對系統(tǒng)進行全面的測試。測試拓撲如圖9所示,R1,R2,R3為三臺臺式機里面都插有NetFPGA,測試終端采用三臺筆記本電腦。終端的IP地址、NetFPGA四個端口的IP地址和NetFPGA四個端口號已在圖中標出。C為中間抓包終端。其中,R1宿主機IP地址為192.168.5.4?! ?/p>
評論