论文部分内容阅读
SYN洪泛攻击是目前网络中危害最大的拒绝服务攻击,由于很难区分攻击请求与正常请求,SYN洪泛攻击很难防御,目前提出的各种防御措施均不能保证网络设备在SYN洪泛攻击中存活。流量监视在网络管理、入侵检测及应用性能监视等方面有着广泛的应用。尽管流量监视系统不一定是SYN洪泛攻击的目标,但由于流量监视系统需要监视每一个TCP连接的状态,同样会成为SYN洪泛攻击的受害者。
随着链路速度的提高与网络流量的增大,网络设备及终端设备面临巨大的压力,成为网络应用的性能瓶颈。除了使用专门的硬件来加速网络处理外,多核处理器的出现为该问题的解决提供了另一种思路。网络程序并行化目前多采用流亲和性原则,利用一个哈希函数将属于同一个流的数据包分配到同一个核上处理。在出现SYN洪泛攻击时,这种方法会将攻击流分布到所有核上,导致整个系统崩溃。
最新的Intel10Gbps网卡提供了SYN包过滤机制,可将SYN标志为1和SYN标志为0的包置于不同的硬件队列,为区分可能的攻击流和正常流提供了硬件支持。目前尚未有文献报导利用网卡的这个特性来建立网络应用系统。本文将多队列网卡的这个特性应用到一个基于多核处理器的网络流量监视系统中,为此修改了底层驱动以打开SYN包过滤功能,并设计了一个与SYN包过滤机制配合使用的TCP连接管理方法,解决了该TCP连接管理在实施时需要解决的问题。利用包踪迹文件的测试表明,该流量监视系统可在遭受SYN洪泛攻击时正常监视已经建立的连接,并能够自动恢复被攻击包阻塞的核。