论文部分内容阅读
随着科学技术的不断发展,计算机网络和人们的日常生活联系的越来越紧密,同时网络攻击技术的不断发展也给人们带来很多困扰,防火墙就是专门用来防护网络攻击保护内网安全的,而且嵌入式防火墙由于性价比的优越性使得它在网络安全领域有一席之地。嵌入式上运行的程序都必须要求尽量紧凑和高效,这是因为嵌入式本身硬件特点所决定的,比如内存小,CPU主频低等等。现今很多嵌入式防火墙的过滤规则匹配算法都采用顺序匹配,这对小规模的规则库比较适用,一旦规则库较多,那么一定会给嵌入式防火墙的处理效率和网络吞吐率带来一定的影响。所以本文针对此问题提出了Binary Search in Leafs of Tries算法,旨在提高过滤规则子系统的匹配速度,通过构造Trie树,并将规则存储在叶子节点,由于Trie的叶子节点存放的是一个有序序列,所以查找时采用折半查找。相比顺序匹配,该算法对防火墙的网络吞吐量有一定的提高,且非常适应嵌入式这种环境。此外,针对现代网络安全里比较著名的分布式拒绝服务攻击(简称DDoS),设计出DDoS的防御子系统,对其中的关键部分进行了详细的分析和实现,比如典型DoS攻击的代码检测,Session Number, Session Rate, Packet Per Second的统计,用户态和内核态通信的机制,最后通过Cookie值的计算引出SYN Cookie算法及代码实现,结果表明该算法在网络攻击流量不是很高的情况下能起到很好的防御作用。最后,通过在WebUI上配置指定的过滤规则数进行数据包通包测试,通过发包工具和抓包工具进行数据统计,得出吞吐率对比图,在DDoS方面,同样通过WebUI配置DoS规则和Profile阈值文件,开启DDoS防御功能模块,用攻击工具对指定机器进行攻击,得出最后的实验结果,达到了预期的设计目的。但做的工作还是相当有限的,比如该系统针对IPv4,编写出能在IPv6下运行的程序也是今后的研究方向之一。