位置:成果数据库 > 期刊 > 期刊详情页
libpcap-MT:一种多线程的通用数据包捕获库
  • ISSN号:1000-1239
  • 期刊名称:《计算机研究与发展》
  • 时间:0
  • 分类:TP393[自动化与计算机技术—计算机应用技术;自动化与计算机技术—计算机科学与技术]
  • 作者机构:[1]中国科学院计算技术研究所,北京100190, [2]中国科学院研究生院,北京100190
  • 相关基金:国家“九七三”重点基础研究发展计划基金项目(2007CB310702); 国家自然科学基金项目(60873242 60903208); 中国科学院重大科研装备研制项目(YZ200824)
中文摘要:

libpcap数据包捕获函数库提供数据包捕获、过滤等上层API,目前广泛被网络协议分析、入侵检测等数据包处理系统使用.多核、多CPU通用计算平台为数据包的高速处理提供可能,但libpcap提供的单线程机制难以充分利用多核、多CPU平台的并行计算能力.设计并实现了一种支持多线程的libpcap:libpcap-MT.libpcap-MT在内核态进行高效的数据包分发,采用无锁的多缓存队列允许多线程同时读取数据包,提供灵活的数据包分发策略,接口与libpcap保持兼容.实验结果表明,使用libpcap-MT能够快速地将现有的系统多线程化,并且具有更好的性能和可扩展性.

英文摘要:

libpcap is a packet capture library providing the upper APIs for packet capture,filter and other functionalities,and being used widely in network protocol analysis,intrusion detection and other packet processing systems.It is feasible to perform high-speed packet processing with multi-core and multi-CPU architecture on general purpose computing platform,but it is difficult to take full advantage of the capability of multi-core and multi-CPU for applications based on libpcap because of its single thread model.In this paper,we design and implement a multi-thread packet capture library named libpcap-MT based on libpcap.libpcap-MT can capture and dispatch packets to multiple buffer queues very efficiently in kernel mode.In kernel capturing and dispatching reduces synchronization and memory copy overhead.Lockless multiple buffer queuing allows kernel and threads write and read packets in parallel.libpcap-MT provides a flexible dispatching strategy description method like C language.Its API extends libpcap's API with multi-thread operations and is compatible.Each thread can register with a buffer queue and get packets by traditional read() to copy from it,or mmap() to setup memory map then access the packet directly.Experimental results also indicate that it is easy to migrate current systems to multi-thread model with better performance and scalability using libpcap-MT.

同期刊论文项目
同项目期刊论文
期刊信息
  • 《计算机研究与发展》
  • 中国科技核心期刊
  • 主管单位:中国科学院
  • 主办单位:中国科学院计算技术研究所
  • 主编:徐志伟
  • 地址:北京市科学院南路6号中科院计算所
  • 邮编:100190
  • 邮箱:crad@ict.ac.cn
  • 电话:010-62620696 62600350
  • 国际标准刊号:ISSN:1000-1239
  • 国内统一刊号:ISSN:11-1777/TP
  • 邮发代号:2-654
  • 获奖情况:
  • 2001-2007百种中国杰出学术期刊,2008中国精品科...,中国期刊方阵“双效”期刊
  • 国内外数据库收录:
  • 俄罗斯文摘杂志,荷兰文摘与引文数据库,美国工程索引,日本日本科学技术振兴机构数据库,中国中国科技核心期刊,中国北大核心期刊(2004版),中国北大核心期刊(2008版),中国北大核心期刊(2011版),中国北大核心期刊(2014版),中国北大核心期刊(2000版)
  • 被引量:40349