多线程数据包捕获库libpcap-MT的设计与实现

来源 :中国科学院计算技术研究所 | 被引量 : 0次 | 上传用户:zj3132
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
网络流量监测分析是网络管理、控制与优化的重要手段。数据包分析复杂度提高与带宽的增加为在通用计算平台上实现高速链路流量监测分析提出巨大的挑战,在多核平台上实现多线程流量并行分析是解决性能挑战可行方案之一。Libpcap是当前应用最为广泛的数据包捕获库,使用libpcap单线程API开发多线程流量监测分析程序,开发难度大。使用多线程进行流量监测分析需要多线程的数据包捕获库,设计与实现高效、通用、兼容、灵活的多线程数据包捕获库具有重大意义。   本文设计实现了一个高效、通用、灵活与libpcap兼容的多线程数据包捕获库libpcap-MT。libpcap-MT架构分为两部分:底层PACKET-MT套接字,上层libpcap-MTAPI封装。PACKET-MT套接字从网络捕获数据包,并根据用户的分发策略将数据包分发到不同的缓存队列中。PACKET-MT采用的内核态的数据包分发、无锁的多缓存队列、共享内存等方法,保证了上层网络流量监测分析系统的性能和可扩展性,对数据包级并行分析和业务流级并行分析都能提供很好的支持。上层的libpcap-MT API封装为用户提供了使用PACKET-MT套接字进行多线程并行分析的简单、通用的接口。libpcap-MT API兼容于libpcap API,方便用户编程开发以及将现有的系统升级支持多线程并行分析。libpcap-MT API还提供了类C的数据包分发策略描述PDD,使用PDD可以灵活地编写数据包分发策略。基于libpcap-MT实现多线程ourmon,验证libpcap-MT的数据包处理性能。本文从最高吞吐率和基准线两个方面对ourmon在libpcap和libpcap-MT下的不同线程的性能进行了分析。实验结果表明:libpcap-MT的效率很高,在最大吞吐率的情况下,它的系统开销小于1%;当系统较空闲时,它的系统开销在2%~4%之间。libpcap-MT的高效保证了上层应用程序的性能,基于libpcap-MT的多线程ourmon较原始多线程ourmon性能数据包处理性能提高了20%~25%,并且具有更强的可移植性。
其他文献
网络发展到今天,没有一个概念能像Web服务这么快地流行起来,并引起广泛的关注,可以说Web服务是一场软件的革命。Web服务的诞生不是偶然的,是Internet以及相关技术发展到一定程度
传统互联网的组成形式是由文档(网页)及其文档之间的关联(超链接)组成,这种组织形式并不能被机器所理解。知识图谱作为一种用实体及其语义关系来表达知识的语义网络,通过将实体及其
计算机网络的发展激发了人们对计算能力拓展的追求,分布式计算是这一努力的一个重要方向。从超级计算到集群,网格计算,Web2.0以及云计算都是这一探索不同侧面的反映。网格计算的
学位
经过近三十年的发展,地理信息技术逐步步入计算机主流技术。而Web GIS因其无需安装客户端不仅为广大用户带来了更加便利的地理信息服务,同时也推动地理信息技术的进一步发展。W
随着高性能计算的不断发展演变,千万亿次高性能计算机已经成为当前的研究热点。超并行(HPP)体系结构作为面向高性能计算的新型体系结构,结合了MPP的可扩展性,DSM的高效通信和机
网络与多媒体技术的发展,带动了录播技术的发展,并且在精品课程、远程教育、公开课等领域应用广泛。目前可以同时呈现摄像机视频、计算机屏幕图像和索引目录的录播系统主要有
视频、音频等多媒体资源的广泛应用和网络传播是技术和社会进步的标志,但也带来了新的管理保护上的问题。如何进行有效地对视频内容进行管理保护已经成为信息安全关注的重点方
学位
互联网带来了信息的急剧膨胀,促成了诸多新型应用需求,如垃圾邮件过滤,垂直搜索引擎,数字图书馆等,这些系统迫切要求对文本进行自动分类。中文文本的自动分类也一直是该领域中的重
随着各类人工操作逐步被更高效的机械自动化取代,针对自动化设备的故障自动诊断和远程维护便显得尤为重要。远程自诊断系统无需设备使用人员参与,便可对故障进行自动诊断并将
随着电子商务的日益繁荣,电子商务用户的个性化服务需求越来越强烈。用户迫切的需要网站提供专业化、个性化的服务。而电子商务运营商也需要将传统信息服务进行拓展和延伸,以
学位