LIC安全交换路由协议的NetFPGA实现(下)
硬件框图及软件流程图
本文引用地址://www.cazqn.com/article/142455.htm图7所示,最上面进入LIC安全交换路由协议分析模块的数据通路为LIC安全交换路由协议通路,下面的数据通路为原有IP协议数据通路,这两条路是NetFPGA中的数据流水线、寄存器模块,是上层软件通过PCI总线与底层交互的数据通路,是NetFPGA原有设计所决定的。
可以看到,数据在进入LIC安全交换路由协议通路时首先要对LIC安全交换路由协议中的出口序列指针进行检验,以确定是否为最后一跳,若为最后一跳,经过LIC安全交换路由协议头拆除模块和IP字段解密模块,将LIC安全交换路由协议头拆除,并将原来对IP地址字段加密的部分进行解密,还原出原有数据包。若是非最后一跳,数据包经过LIC安全交换路由协议控制模块更新LIC安全交换路由协议头中的TTL和OPS序列指针字段的值,完成后将其转发。
数据在进入原协议数据通路后,先对IP包的协议号进行分析,以此来判定IP包是否为建立包,若建立包经过建立包分析模块,将数据包的路由器出口号提出,写入特定的数据区域内。若为其它数据包,经过查表模块检查IP数据包的目的IP地址,并确定是否已经建立LIC安全交换路由协议数据通信路径。若建立则为其封装LIC安全交换路由协议头,并将IP地址字段进行加密,否则,直接将原数据包转发,保证原有协议的正常通信。
软件部分为数据包建立的过程,首先源端发起身份认证功能,认证成功后进行建立包的发送,发送后到接收方后接收方提取信息向宿主机发送确认包,成功后,将相应信息写入到协议的LIC的建立表中,成功后向源端发送确认信息。建立完成,不成功则返回重新建立。
系统测试总述
系统的测试主要从系统功能、系统稳定性、系统性能及系统应用性等方面对系统进行全面的测试。测试拓扑如图9所示,R1,R2,R3为三台台式机里面都插有NetFPGA,测试终端采用三台笔记本电脑。终端的IP地址、NetFPGA四个端口的IP地址和NetFPGA四个端口号已在图中标出。C为中间抓包终端。其中,R1宿主机IP地址为192.168.5.4。
评论