当前位置:主页 > 管理论文 > 移动网络论文 >

基于多核平台的高速网络流量实时捕获方法

发布时间:2019-11-23 20:15
【摘要】:随着互联网上应用的丰富和网络带宽的增长,带来的安全问题也与日剧增,除了传统的垃圾邮件、病毒传播、DDoS攻击外,还出现了新型的隐蔽性强的攻击方式.网络探针工具是一种部署在局域网出口处的旁路设备,能够收集当前进出网关的全部流量并进行分析,而网络探针工具中最重要的模块就是数据包的捕获.传统的Linux网络协议栈在捕获数据包时有诸多性能瓶颈,无法满足高速网络环境的要求.介绍了基于零拷贝、多核并行化等技术的多种新型的数据包捕获引擎,并基于Intel DPDK平台设计并实现了一个可扩展的数据包捕获系统,它能够利用接收端扩展(receiver-side scaling,RSS)技术实现多核并行化的数据包捕获、模块化的上层处理流程.除此之外,还讨论了更有效、更公平的将数据包分发到不同的接收队列所应使用的Hash函数.经过初步的实验验证,该系统能够实现接近线速的收包并且多个CPU核心间实现负载均衡.
【图文】:

机制


条流的往返数据包被分配到不同的CPU核上时,就会造成低效的跨核访问.3)内存映射.使用这种方法,应用程序的内存区域可以映射到内核态的内存区域,应用能够在没有中间副本的情况下读写这片内存区域.用这种方式我们可以使应用直接访问网卡的DMA内存区域,这种技术被称为零拷贝.但零拷贝也存在潜在的安全问题,向应用暴露出网卡环形队列和寄存器会影响系统的安全性和稳定性[11].Fig.3PFRINGscheme图3PFRING机制4)数据包的批处理.为了避免对每个数据包的重复操作的开销,可以使用对数据包的批量处理.这个策略将数据包划分为组,按组分配缓冲区,将它们一起复制到内核/用户内存.运用这种技术减少了系统调用以及随之而来的上下文切换的次数;同时也减少了拷贝的次数,从而减少了平摊到处理和复制每个数据包的开销.但由于分组必须等到一个批次已满或定时器期满才会递交给上层[16],批处理技术的主要问题是延迟抖动以及接收报文时间戳误差的增加.5)亲和性与预取.由于程序运行的局部性原理,为进程分配的内存必须与正在执行它的处理器操作的内存块一致,这种技术被称为内存的亲和性.还有一些其他的考虑因素是CPU的中断亲和性.CPU亲和性是一种技术,它允许进程或线程在指定的处理器核心上运行.在内核与驱动层面,软件和硬件中断可以用同样的方法指定具体的CPU核或处理器来处理,称为中断亲和力.每当一个线程希望访问所接收的数据,如果先前这些数据已被分配到相同CPU核的中断处理程序接收,则它们在本地cache能够更容易被访问到.这项策略可以与先前

包机制,包捕获,应用进程,并行化


能在支持NUMA数据放置的优势.同样,PS在用户层面也提供了并行化的分组处理,同时能够随着CPU核的数目和队列数目实现扩展性.为了减少每个包的处理开销,PS在用户层面实现了批处理.每次批处理请求都将巨大的数据包缓冲区映射到连续内存区域,应用可以从该区域访问驱动并复制数据.为了减少cache未命中的次数,改进的设备驱动程序会预取当前分组的下一个分组(包括分组数据和分组描述符),如图4所示:Fig.4PacketShaderRXscheme图4PacketShader收包机制3)NetmapNetmap和PacketShader体系结构的特征有很多相同之处.即在初始化阶段预分配大小固定的缓存空间(也为2048B),批处理和并行直接数据通路.它也实现了内存映射技术,以允许用户的应用程序直接访问内核包缓存(到NIC直接访问被保护起来)中简化和优化过的元数据结构,这种简化的元数据叫做Netmapring,其结构体包含环的大小,一个指向缓存的指针(当前数据包),缓存中收到的包的数目,或缓存中可用的空槽的数目.在接收和发送时会分别设置有关状态位、内存中包缓存的偏移值以及元数据信息数组;同时还包含每个数据包的一个存储位置,包括该数据包的长度、在缓存中的索引和一些标志位.需要注意的是每个RSS队列,接收和发送都可以使用Netmapring实现并行化的直接数据通道.4)PFQPFQ是一种新型的数据包捕获引擎,,它允许在应用进程中进行并行化的包捕获.PFQ的方法与以前的研究不同,区别于完全绕过NAPI的中断方案或使用

【相似文献】

相关期刊论文 前10条

1 阎冬;王玉龙;苏森;杨放春;;基于协作交互的概率性数据包标记溯源方法[J];北京邮电大学学报;2012年01期

2 李虎雄;张文杰;;网络交互平台数据包的分析与处理[J];计算机工程与设计;2007年08期

3 韩晓非,王学光,杨明福;位并行数据包分类算法研究[J];华东理工大学学报;2003年05期

4 金庆辉;王东;杨建华;谢高岗;;一种网络入侵检测中的数据包采样方法[J];计算机应用研究;2008年10期

5 莫炜凌,田艾平;基于IPSec的数据包处理[J];计算机应用与软件;2002年12期

6 冯东雷,张勇,白英彩;线速数据包输入处理技术[J];计算机研究与发展;2002年01期

7 魏茂之,曾家智;几种网络体系结构中数据包的效率比较分析[J];成都信息工程学院学报;2005年01期

8 陈兴蜀;严宏;童浩;刘毅;;数据包高效透明转发研究及实现[J];四川大学学报(工程科学版);2008年04期

9 黄宗和;谢高岗;张大方;;基于DMA实现高速数据包收发[J];计算机应用研究;2006年05期

10 王怀宇;卢秉亮;张莉;;基于Winpcap的LAN数据包处理系统[J];微处理机;2011年05期

相关会议论文 前1条

1 查达仁;荆继武;林t燂

本文编号:2565119


资料下载
论文发表

本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2565119.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户aeb0a***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com