基于通用pc的千兆流归并系统

基于通用pc的千兆流归并系统

ID:33494411

大小:295.65 KB

页数:3页

时间:2019-02-26

基于通用pc的千兆流归并系统_第1页
基于通用pc的千兆流归并系统_第2页
基于通用pc的千兆流归并系统_第3页
资源描述:

《基于通用pc的千兆流归并系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第46卷增刊2厦门大学学报(自然科学版)Vol.46Sup.22007年11月JournalofXiamenUniversity(NaturalScience)Nov.2007基于通用PC的千兆流归并系统申文超,杨波,吕国晗,严程,李星(清华大学电子工程系NGN实验室,北京100084)摘要:CiscoNetflow在流量监控、网络安全等许多方面得到了广泛的应用.目前高端路由器大都支持Netflow数据输出,但使用路由器来产生Netflow存在输出字段不够丰富、无法定制等弊端.本文设计并实现了一种基于通用PC和普通千兆网卡的高速数据包采集与流归并系统,实时采集千兆链路流量

2、并输出Netflow数据.通过修改网卡驱动,实现了数据包在内存中的零拷贝.通过多索引队列实现负载均衡,系统可将一路网卡流量分配到多个CPU并行处理,有效利用了多CPU的计算资源,大大提高了系统处理能力.系统的流归并模块使用Netflowv9格式,可输出丰富的流信息.测试表明,该系统能够实现单路千兆链路环境下100万pps的数据包采集和流归并.关键词:CiscoNetflow;数据包采集;流归并;千兆链路中图分类号:TP393.07文献标识码:A文章编号:043820479(2007)S220126203近年来,CiscoNetflow在流量监控、网络安全等许1.1硬件平台

3、选择[1]多方面得到了广泛的应用.虽然目前高端路由器大数据包采集和分析可以基于ASIC、网络处理器和都支持Netflow数据输出,但其输出字段还不够丰富,通用PC.其中ASIC用硬件实现,处理速度快,但实现缺少如流TTL、流应用层类型等一些有价值的信息.这复杂,而且不容易实现复杂的功能.网络处理器的特点使得对这些数据的分析和应用受到一定的局限.另一是使用多个CPU并行处理数据包,效率较高.但近年方面,由于开启Netflow功能会使路由器负载加重,因来,多核多CPU也已成为通用PC体系结构的发展趋此那些负载已经较重的路由器无法开启Netflow功能.势,PCI2E也极大地提

4、高了网卡到主存的传输带宽.这我们设计并实现了一个基于通用PC和普通网卡些发展使得通用PC体系结构和网络处理器之间的差的千兆数据采集和流归并系统.首先,通过修改网卡驱距越来越小.而另一方面,通用PC在编程上的灵活性动,我们实现了数据包在内存中的零拷贝,大大提高了以及价格上的优势则是网络处理器无法比拟的.因此,数据包的采集效率.其次,我们使用流量均衡器将数据我们选择通用PC作为数据采集和分析的硬件平台.包分载到多个CPU进行处理,充分利用了多CPU的数据采集可以使用专用的数据采集卡,比如En2[2]并行计算资源.最后,我们在修改nProbe的基础上实[3,5]dace的DAG

5、卡,或者使用通用网卡.文献表明通现了基于本采集模块的流归并系统,它支持Netflowv9过修改网卡驱动,通用网卡也能达到很高的数据包采格式输出,能够输出丰富的流信息.集性能.因此,我们选择使用通用网卡进行数据采集.[3]与本文最相关的工作是,与文献描述的系统相1.2系统软件结构比,本系统的采集模块实现了软件流量均衡,可将一路[4]如图1所示,系统功能的实现分成两个主要模块,网卡流量送到多个CPU上进行并行处理.文献提出一个是数据包采集,一个是流归并.了一种软件流量均衡方法,但是他们是在专用采集卡数据包采集模块有两种工作模式,一种是单轮询上实现的,而我们则是在通用网卡上实现

6、的.模式,一种是双轮询模式.其中,单轮询模式的实现方[3]1系统结构式和nCap类似,其性能也与nCap非常接近,在此不再赘述.在双轮询模式中,我们采用了3种关键技术来提高数据包采集性能.首先是从网卡读取数据包时,采用了轮询和中断[5]相结合的方式.收稿日期:2007208216第2种是数据包的内存零拷贝.初始化时,我们在基金项目:国家863项目(2006AA01Z201130)资助内存中分配一个循环数组队列rx_ring以存储数据包,作者简介:申文超,男,硕士研究生.Email:shenwenchao@gmail.com数据包通过DMA方式由网卡传送到rx_ring.通

7、过增刊2申文超等:基于通用PC的千兆流归并系统·127·mmap将rx_ring映射到用户进程空间.这样,流归并程序在读取数据包时就无需进行额外的拷贝.2性能测试第3种是构建多索引队列实现负载均衡.为此,我系统测试试验床使用一台DellPE850作为数据们在内核中实现了一个流量负载均衡模块mPF_采集器,该主机配有一个双核Pentium43.0GHz的RING.均衡模块在rx_ring的基础上构建了几个索引CPU,1G内存,一个Intele1000系列网卡,Linux队列rx_index,用于存储rx_ring中对应数据包的序

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。