[发明专利]基于AF_XDP的实时以太网现场总线数据包处理方法有效
申请号: | 202011276994.1 | 申请日: | 2020-11-16 |
公开(公告)号: | CN114513381B | 公开(公告)日: | 2023-07-25 |
发明(设计)人: | 李备备;郑飂默;王诗宇;李泽阳;王常辉;李伦兴;姜志超 | 申请(专利权)人: | 沈阳中科数控技术股份有限公司 |
主分类号: | H04L12/40 | 分类号: | H04L12/40;H04L69/16;H04L69/22 |
代理公司: | 沈阳科苑专利商标代理有限公司 21002 | 代理人: | 王倩 |
地址: | 110168 辽宁*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 af_xdp 实时 以太网 现场总线 数据包 处理 方法 | ||
1.基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,包括以下步骤:
开启内核调试功能,通过内核输出的调试信息,确定实时以太网现场总线数据包在原生网卡驱动中的传输路径,在网卡驱动入口建立实时以太网总线数据包的捕获点;
针对在网卡驱动入口的实时以太网总线数据包捕获点,基于XDP机制进行实时以太网总线数据包的捕获及转发,将实时以太网总线数据包发送到实时以太网总线组件中;
根据实时以太网总线数据包所属的总线协议类型,在用户空间的实时以太网总线组件中进行实时以太网总线数据包的解析处理;
所述在用户空间的实时以太网总线组件中进行实时以太网总线数据包的解析处理具体为:
建立用户态实时线程并设置实时线程为周期性实时线程,在每个用户态实时线程的实时周期中,完成对实时以太网总线数据包的解析处理工作;
在用户态实时以太网总线组件的实时线程的开始部分,采用PF_XDP的原始套接字的方式轮询的获取实时以太网总线数据包;
在用户态实时以太网总线组件的实时线程中解析以太网协议数据包头,确定实时以太网总线数据包类型;
根据实时以太网总线数据包类型解析实时以太网总线数据包的指令数据;
将解析出的指令数据组织成为NML中性消息命令,通过用户态实时以太网总线组件的消息通信通道与用户空间的实时应用程序交换数据;
等待下一周期轮询实时以太网总线数据包。
2.根据权利要求1所述的基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,所述实时以太网现场总线数据包类型包括EtherCAT协议和SSB-III协议中的任意一种。
3.根据权利要求1所述的基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,所述捕获点位于网卡驱动建立套接字缓冲器之前。
4.根据权利要求1所述的基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,所述基于XDP机制进行实时以太网总线数据包的捕获及转发具体为:
采用实时以太网总线数据包接收中断事件,触发XDP处理实时以太网总线数据包;
采用XDP的重定向的功能,以AF_XDP的MMAP内存映射方式将实时以太网总线数据包以零拷贝的方式直接重定向到用户空间的实时以太网总线组件中。
5.根据权利要求1所述的基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,EtherCAT协议的指令数据包括周期性指令数据和非周期的指令数据,周期性的指令数据采用EtherCAT协议的过程数据进行数据传递,根据传递方向不同分为周期性的命令数据和状态数据,非周期性的指令数据采用EtherCAT协议的邮箱进行数据传递,根据传递方向不同分别为非周期性的命令数据和状态数据。
6.根据权利要求1所述的基于AF_XDP的实时以太网现场总线数据包处理方法,其特征在于,SSB-III协议的指令数据包括周期性指令数据和非周期性的指令数据,两种数据均采用邮箱进行数据传输。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于沈阳中科数控技术股份有限公司,未经沈阳中科数控技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011276994.1/1.html,转载请声明来源钻瓜专利网。