[发明专利]网卡数据传输方法及系统无效
申请号: | 201110159765.6 | 申请日: | 2011-06-15 |
公开(公告)号: | CN102833144A | 公开(公告)日: | 2012-12-19 |
发明(设计)人: | 罗探科;贺颜;王庆康 | 申请(专利权)人: | 鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518109 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网卡 数据传输 方法 系统 | ||
技术领域
本发明涉及一种网卡数据传输方法及系统。
背景技术
在目前的测试中,网卡传输封包的大致机制如下:在源端主机Linux操作系统的应用层创建通讯端传输封包,该封包通过OSI 7层模型自上而下层层转发,到达Linux操作系统的kernel层中的数据链路层;在数据链路层网卡的驱动程序将该封包写入网卡共享的write_buffer中,并对write_buffer中的封包进行分割,在物理层将分割后封包以序列的形式传送到网络中去,网络中的目的主机将根据封包中的目的地址来接受属于自己的封包。
该测试方法虽然能达到传输数据,及验证物理链路的连通性的目的,但是在工厂测试项目中,测试的目的往往只是验证物理链路的连通性和数据在网卡之间传输的峰值,所以不需要数据通过完整的OSI七层。而在OSI七层模型中,封包从应用层往下传输资料的过程中,根据相关协议与机制,封包每经过一层,都要在头部做相关封装的动作才往下传输,耗时相当长,成为封包传输的一大瓶颈,且无法得到物理层的数据在网卡之间传输的峰值;再者,封包从Linux操作系统的应用层传到Linux操作系统的kernel层以及从Linux操作系统的kernel层返回报告给Linux操作系统的应用层的过程中,也需要耗费掉响应的传输时间,这也就成了封包传送的另一瓶颈。假设Linux操作系统的应用层要发送1000个封包,如果用常规的方法做这件事情,Linux操作系统的应用层需要与Linux操作系统的kernel层进行1000次的沟通,这是非常耗时的事情;另外,传送给目的网卡的数据由于从上至下的传输,数据包有丢失的可能性,存在稳定性的隐患,有时无法正确响应给源端主机Linux操作系统的应用层,从而无法有效判断数据是否准确传送到目的地。
发明内容
鉴于以上内容,有必要提供一种网卡数据传输方法,能够将封包直接由Linux操作系统的应用层发送至数据链路层,可准确、稳定、高效的进行网卡数据的传输。
鉴于以上内容,还有必要提供一种网卡数据传输系统,能够将封包直接由Linux操作系统的应用层发送至数据链路层,可准确、稳定、高效的进行网卡数据的传输。
所述网卡数据传输方法,应用于网卡的数据传输,该方法包括以下步骤:设置步骤:在源端主机的Linux操作系统的应用层设置用于发送的控制参数,并在源端主机的Linux操作系统的kernel层定义与控制参数格式相同的数据结构;封装步骤:在所述应用层创建底层套接字,并将控制参数、源端地址、目的地址及发送内容封装至封包中,所述源端地址为源端主机中第一网卡的MAC地址,所述目的地址为目的主机中第二网卡的MAC地址,所述源端主机与目的主机通过网络连接;发送步骤:在源端主机中将封包由所述应用层发送至所述kernel层中的数据链路层;解析步骤:在数据链路层中解析封包,将要发送的封包及控制参数进行分离,所述控制参数包括发送参数、随机设置参数、延时参数、反馈参数和调试参数;管控步骤:在源端主机中根据分离出的控制参数管控封包的发送过程。
所述网卡数据传输系统,运行于计算机中,该系统包括:设置模块,用于在源端主机的Linux操作系统的应用层设置用于发送的控制参数,并在源端主机的Linux操作系统的kernel层定义与控制参数格式相同的数据结构;封装模块,用于在所述应用层创建底层套接字,并将控制参数、源端地址、目的地址及发送内容封装至封包中,所述源端地址为源端主机中第一网卡的MAC地址,所述目的地址为目的主机中第二网卡的MAC地址,所述源端主机与目的主机通过网络连接;发送模块,用于在源端主机中将封包由所述应用层发送至所述kernel层中的数据链路层;解析模块,用于在数据链路层中解析封包,将要发送的封包及控制参数进行分离,所述控制参数包括发送参数、随机设置参数、延时参数、反馈参数和调试参数;管控模块,用于在源端主机中根据分离出的控制参数管控封包的发送过程。
相较于现有技术,所述的网卡数据传输方法及系统,能够将封包直接由Linux操作系统的应用层发送至数据链路层,并可减少Linux操作系统的应用层与Linux操作系统的kernel层沟通的次数,可准确、稳定、高效的进行网卡数据的传输。
附图说明
图1是本发明网卡数据传输系统较佳实施例的架构图。
图2是本发明网卡数据传输系统较佳实施例的功能模块图。
图3是本发明网卡数据传输方法较佳实施例的流程图。
图4是本发明网卡数据传输方法较佳实施例的管控子流程图。
图5是本发明网卡数据传输系统较佳实施例的网卡数据传输示例图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司,未经鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110159765.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:配电网无线宽带通信管理系统
- 下一篇:一种移动终端实时管理系统及方法