[发明专利]基于AF_XDP的GigE Vision协议数据包处理方法及系统在审
申请号: | 202211513193.1 | 申请日: | 2022-11-30 |
公开(公告)号: | CN115714826A | 公开(公告)日: | 2023-02-24 |
发明(设计)人: | 汪斌;邵云峰;曹桂平;董宁 | 申请(专利权)人: | 合肥埃科光电科技股份有限公司 |
主分类号: | H04L69/22 | 分类号: | H04L69/22;H04L67/563;G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 230088 安徽省合肥市高新*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 af_xdp gige vision 协议 数据包 处理 方法 系统 | ||
1.一种基于AF_XDP的GigE Vision协议数据包处理方法,用于Linux平台的GigEVision协议解析与数据传输,其特征在于,包括:
XDP程序挂载于内核态的网卡驱动上,生成以太网数据帧重定向准则,用于重定向GVSP数据包;
所述XDP程序判断每个到达网口的以太网数据帧是否符合所述重定向准则,若符合,则将所述以太网数据帧重定向到用户态的用户空间应用程序;若不符合,则将所述以太网数据帧放行进入常规内核网络协议栈。
2.根据权利要求1所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,所述重定向准则包括以太网数据帧的源地址、以太网数据帧的目的地址、以太网数据帧的传输类型和UDP数据包的端口号以及以太网数据帧的大小。
3.根据权利要求2所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,所述用户空间应用程序中对每一帧以太网数据都设置一个状态列表,所述状态列表用于记录所述以太网数据帧的每个GVSP数据包是否已经收到、每个GVSP数据包的重传次数、每个GVSP数据包的重传定时器的状态。
4.根据权利要求3所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,所述用户空间应用程序收到所述XDP程序重定向的以太网数据帧后,查找所述状态列表中所述以太网数据帧当前的GVSP数据包是否已经收到,若已经收到,则丢弃所述当前的GVSP数据包;
若未收到,则将所述当前的GVSP数据包存入对应位置,在所述状态列表中将所述当前的GVSP数据包标记为已收到,并更新收到的GVSP数据包序号的最大值Nla和连续的GVSP数据包序号的最大值Nco。
5.根据权利要求4所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,若所述GVSP数据包序号的最大值Nla大于连续的GVSP数据包序号的最大值Nco,则触发重传线程,包括:
所述重传线程检查所述状态列表中序号在[Nco+1,Nla-L]范围内的GVSP数据包的状态,其中L为乱序窗口的长度;
若所述状态列表记录某个GVSP数据包未收到、重传次数小于预设的阈值、重传定时器的计时超过设定的超时时间,则发送重传命令,并在所述状态列表中将所述GVSP数据包的重传次数加1、所述GVSP数据包的重传定时器开始计时;
若所述状态列表记录某个GVSP数据包的重传次数大于或等于预设的阈值,则不重传所述数据包,将对应的以太网数据帧标记为不完整帧。
6.根据权利要求5所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,还包括:
若所述当前的GVSP数据包为当前以太网数据帧的最后一个GVSP数据包或者为下一个以太网数据帧中的GVSP数据包,则重传当前以太网数据帧中,在状态列表中记录为未收到、重传次数小于预设的阈值、重传定时器的计时超过设定的超时时间的GVSP数据包。
7.根据权利要求5或6所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,所述设定的超时时间的设定方法为:
测量每次从发出重传命令到收到重传包的时间RsndTimen;
定义平滑重传命令往返时间为SRT,SRT的初始值SRT1等于RsndTime1的值;
当完成第n次重传后,当前平滑重传命令往返时间SRTn+1的值的计算公式为:
其中为平滑因子;
重传超时时间ERT的计算公式为:
为系数,ERT为所述的超时时间。
8.根据权利要求1-6任一所述的基于AF_XDP的GigE Vision协议数据包处理方法,其特征在于,所述方法用于在相机和上位机之间传输图像数据,所述以太网数据帧为基于GigEVision协议的图像数据帧。
9.一种基于AF_XDP的GigE Vision协议数据包处理系统,包括网卡和上位机,其特征在于,网卡驱动上,挂载有用于重定向GVSP数据包的XDP程序,所述网卡和所述上位机配合,用于执行如权利要求1至8任一所述的基于AF_XDP的GigE Vision协议数据包处理方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥埃科光电科技股份有限公司,未经合肥埃科光电科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211513193.1/1.html,转载请声明来源钻瓜专利网。