[发明专利]一种Linux下基于网卡驱动的零拷贝以太网报文捕获及发送的实现方法有效

专利信息
申请号: 201010279606.5 申请日: 2010-09-13
公开(公告)号: CN101917350A 公开(公告)日: 2010-12-15
发明(设计)人: 姚文顶 申请(专利权)人: 南京中兴特种软件有限责任公司
主分类号: H04L12/56 分类号: H04L12/56;H04L12/26
代理公司: 南京天华专利代理有限责任公司 32218 代理人: 夏平;瞿网兰
地址: 211100 江苏省南京市江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种Linux下基于网卡驱动的零拷贝以太网报文捕获及发送的实现方法,一、用户进程将整个物理内存映射到用户进程空间;二、使用队列方式管理报文驱动模块接收到的报文及要通过其发送的报文;三、使用报文驱动模块隔离各类型网卡驱动的区别对用户进程的影响;四、各类型网卡驱动加载成功后向报文驱动模块注册设备及相关操作方法。本发明采用分层实现,使得该方法能够同时支持多种类型的网卡,且易于添加对新网卡的支持。本发明在报文的捕获和发送过程中没有一次拷贝动作,能够实现高性能的报文捕获及发送,适用于网络流量监控及分析等对报文的收发的性能有很高要求的情景。
搜索关键词: 一种 linux 基于 网卡 驱动 拷贝 以太网 报文 捕获 发送 实现 方法
【主权项】:
一种Linux下基于网卡驱动的零拷贝以太网报文捕获及发送的实现方法,其特征是它包括以下步骤:首先,在内核态报文驱动模块中建立捕包队列、报文释放队列、报文缓存队列及发送队列以实现对报文的管理,并创建相应的报文填充线程、报文释放线程及报文发送线程; 其次,在加载网卡驱动且打开相应的网卡设备时,立即向前述报文驱动模块进行网卡设备注册,获得相应的报文发送接口;第三,在用户进程中将整个物理内存映射到用户空间,使得用户进程可以直接访问整个物理内存;第四,当用户进程需要进行报文捕获或者发送时,通过Linux下的/proc文件项方式通知内核态报文驱动模块进行初始化工作,创建相应资源及记录用户进程的初始配置,初始化成功后,用户进程即可进程报文捕获及发送;最后,采用物理地址在用户态和内核态之间进行数据交互,在用户态使用过程中将用户态的物理地址转换为虚拟地址,在内核态使用过程时,将内核态的物理地址其转换为内核虚拟地址,以实现零拷贝的以太网报文捕获及发送。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京中兴特种软件有限责任公司,未经南京中兴特种软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201010279606.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top