一种网卡时延测试方法及装置制造方法及图纸

技术编号:37086970 阅读:18 留言:0更新日期:2023-03-29 20:02
本发明专利技术涉及网卡测试领域,具体公开一种网卡时延测试方法及装置,客户端向服务端发送测试报文,服务端向客户端反馈响应报文,客户端的网卡驱动记录测试报文发送时间T1和响应报文接收时间T4;服务端的网卡驱动记录测试报文接收时间T2和响应报文发送时间T3;根据T1、T2、T3、T4计算网卡时延。本发明专利技术由网卡驱动记录相应时间,不包含应用层、协议栈等的处理时延,提高网卡时延测试的准确性。高网卡时延测试的准确性。高网卡时延测试的准确性。

【技术实现步骤摘要】
一种网卡时延测试方法及装置


[0001]本专利技术涉及网卡测试领域,具体涉及一种网卡时延测试方法及装置。

技术介绍

[0002]随着网络应用的发展,上层服务对网络质量要求也越来越高。尤其是伴随着视频、语音、游戏等应用的大幅增加,网络时延成为一个重要衡量标准。网络时延(延迟)是一个重要的网络性能指标,会受到多种因素影响,这些因素会极大地影响用户的网络使用体验。
[0003]时延是指数据从网络源传输到目的到另一端所需的时间,通常时延包含处理时延和传播时延。处理时延:网卡和系统在收到报文后要使用一定的时间进行处理。比如解封装分析首部,提取数据,差错检验等。通常网卡的处理时延是微秒或更低的数量级,图1所示为报文流转示意图,这个过程产生处理时延。传播时延:报文在实际的物理链路上传播数据所需要的时间。实际传播时延在毫秒级。传播时延等于两台设备之间的距离除以传播速率,即传播时延是D/S,其中D是两台设备之间的距离,S是该链路的传播速率。在测试环境中,通常测试线路都在5米之内。图2所示为报文物理链路传播示意图,这个过程产生传播时延。
[0004]当前对网卡时延的测试均采用C/S结构,由客户端应用层工具生成测试的Request报文,发送给对端,也就是服务端。对端确认收到消息后响应一个Response报文。通过计算往返的时间(RTT)来生成最终的时延数据。RTT=T4

R1,使用RTT/2来计算出单向时延。图3是测试报文传输时间点记录示意图,T1是客户端测试报文发送时间,T2是服务端测试报文接收时间,T3是服务端响应报文发送时间,T4是客户端响应报文接收时间。
[0005]在当前网卡测试中,客户端和服务端的记录时间均是应用层加入的时间标签,这就导致对网卡时延的计算包含了应用层>内核协议栈>驱动>物理网卡,中间传输链路到返回。实际计算的网络时延并不准确,本身协议栈等处理的时延导致了误差变大,并且不同的系统内核也会导致测试结果的差异,影响了网卡时延测试的准确性。

技术实现思路

[0006]为解决上述问题,本专利技术提供一种网卡时延测试方法及装置,由网卡驱动记录相应时间,提高网卡时延测试的准确性。
[0007]第一方面,本专利技术的技术方案提供一种网卡时延测试方法,客户端向服务端发送测试报文,服务端向客户端反馈响应报文,该方法包括以下步骤:客户端的网卡驱动记录测试报文发送时间T1和响应报文接收时间T4;服务端的网卡驱动记录测试报文接收时间T2和响应报文发送时间T3;根据T1、T2、T3、T4计算网卡时延。
[0008]进一步地,该方法具体包括以下步骤:客户端应用创建套接字,生成测试报文交给协议栈处理;协议栈将测试报文传输至网卡驱动进程处理,驱动程序在测试报文的原始数据中加入时间戳T1,并记录时间戳T1作为测试报文发送时间T1;
客户端的网卡驱动将测试报文传输至硬件队列发送到网络;服务端的网卡驱动接收测试报文,在测试报文中加入时间戳T2,并记录时间戳T2作为测试报文接收时间T2,同时剥离包头传输至上层业务处理;上层业务返回响应报文,并传输给服务端的网卡驱动,由服务端的网卡驱动在响应报文中加入时间戳T3,并记录时间戳T3作为响应报文发送时间T3;客户端的网卡驱动接收响应报文,在响应报文中加入时间戳T4,并记录时间戳T4作为响应报文接收时间T4,同时剥离包头传输至上层业务处理。
[0009]进一步地,该方法还包括以下步骤:服务端将记录的测试报文接收时间T2和响应报文发送时间T3发送至客户端;客户端根据T1、T2、T3、T4计算网卡时延。
[0010]进一步地,该方法具体包括:客户端预存客户端与服务端的时间系统偏差;客户端基于客户端与服务端的时间系统偏差,根据T1、T2、T3、T4计算网卡时延。
[0011]进一步地,基于客户端与服务端的时间系统偏差,根据T1、T2、T3、T4计算网卡时延,具体包括:记客户端与服务端的时间系统偏差为θ,网络的单程传播时延为δ,则θ、δ、T1、T2、T3、T4满足以下关系:T1+θ+δ=T2;T3

θ+δ=T4;相应的,网络的单程传播时延δ=(T2

T1+T4

T3)/2。
[0012]进一步地,该方法具体还包括:根据以下公式计算网卡的处理时延,网卡的接收处理时延=发送处理时延=(T3

T2)/2。
[0013]第二方面,本专利技术的技术方案提供一种网卡时延测试装置,客户端向服务端发送测试报文,服务端向客户端反馈响应报文,该装置包括第一时间记录模块、第二时间记录模块和网卡时延计算模块;其中第一时间记录模块和网卡时延计算模块配置在客户端,第二时间记录模块配置在服务端;第一时间记录模块:触发客户端的网卡驱动记录测试报文发送时间T1和响应报文接收时间T4;第二时间记录模块:触发服务端的网卡驱动记录测试报文接收时间T2和响应报文发送时间T3;网卡时延计算模块:根据T1、T2、T3、T4计算网卡时延。
[0014]进一步地,客户端应用创建套接字,生成测试报文交给协议栈处理;协议栈将测试报文传输至网卡驱动进程处理,第一时间记录模块驱动程序在测试报文的原始数据中加入时间戳T1,并记录时间戳T1作为测试报文发送时间T1;客户端的网卡驱动将测试报文传输至硬件队列发送到网络;服务端的网卡驱动接收测试报文,第二时间记录模块触发网卡驱动在测试报文中加入时间戳T2,并记录时间戳T2作为测试报文接收时间T2,同时剥离包头传输至上层业务处理;上层业务返回响应报文,并传输给服务端的网卡驱动,第二时间记录模块触发服
务端的网卡驱动在响应报文中加入时间戳T3,并记录时间戳T3作为响应报文发送时间T3;客户端的网卡驱动接收响应报文,第一时间记录模块触发网卡驱动在响应报文中加入时间戳T4,并记录时间戳T4作为响应报文接收时间T4,同时剥离包头传输至上层业务处理。
[0015]进一步地,该装置还包括:配置在服务端的时间发送模块和配置在客户端的时间接收模块;时间发送模块:将服务端记录的测试报文接收时间T2和响应报文发送时间T3发送至客户端;时间接收模块:接收服务端发送的测试报文接收时间T2和响应报文发送时间T3。
[0016]进一步地,该装置还包括配置在客户端的时间偏差预存模块;时间偏差预存模块:预存客户端与服务端的时间系统偏差;网卡时延计算模块具体用于基于客户端与服务端的时间系统偏差,根据T1、T2、T3、T4计算网卡时延,具体包括:记客户端与服务端的时间系统偏差为θ,网络的单程传播时延为δ,则θ、δ、T1、T2、T3、T4满足以下关系:T1+θ+δ=T2;T3

θ+δ=T4;相应的,网络的单程传播时延δ=(T2

T1+T4

T3)/2;网卡的接收处理时延=发送处理时延=(T3

T2)/2。
[0017]本专利技术提供的一种网卡时延测试方法及装置,相对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种网卡时延测试方法,客户端向服务端发送测试报文,服务端向客户端反馈响应报文,其特征在于,该方法包括以下步骤:客户端的网卡驱动记录测试报文发送时间T1和响应报文接收时间T4;服务端的网卡驱动记录测试报文接收时间T2和响应报文发送时间T3;根据T1、T2、T3、T4计算网卡时延。2.根据权利要求1所述的网卡时延测试方法,其特征在于,该方法具体包括以下步骤:客户端应用创建套接字,生成测试报文交给协议栈处理;协议栈将测试报文传输至网卡驱动进程处理,驱动程序在测试报文的原始数据中加入时间戳T1,并记录时间戳T1作为测试报文发送时间T1;客户端的网卡驱动将测试报文传输至硬件队列发送到网络;服务端的网卡驱动接收测试报文,在测试报文中加入时间戳T2,并记录时间戳T2作为测试报文接收时间T2,同时剥离包头传输至上层业务处理;上层业务返回响应报文,并传输给服务端的网卡驱动,由服务端的网卡驱动在响应报文中加入时间戳T3,并记录时间戳T3作为响应报文发送时间T3;客户端的网卡驱动接收响应报文,在响应报文中加入时间戳T4,并记录时间戳T4作为响应报文接收时间T4,同时剥离包头传输至上层业务处理。3.根据权利要求2所述的网卡时延测试方法,其特征在于,该方法还包括以下步骤:服务端将记录的测试报文接收时间T2和响应报文发送时间T3发送至客户端;客户端根据T1、T2、T3、T4计算网卡时延。4.根据权利要求3所述的网卡时延测试方法,其特征在于,该方法具体包括:客户端预存客户端与服务端的时间系统偏差;客户端基于客户端与服务端的时间系统偏差,根据T1、T2、T3、T4计算网卡时延。5.根据权利要求4所述的网卡时延测试方法,其特征在于,基于客户端与服务端的时间系统偏差,根据T1、T2、T3、T4计算网卡时延,具体包括:记客户端与服务端的时间系统偏差为θ,网络的单程传播时延为δ,则θ、δ、T1、T2、T3、T4满足以下关系:T1+θ+δ=T2;T3

θ+δ=T4;相应的,网络的单程传播时延δ=(T2

T1+T4

T3)/2。6.根据权利要求5所述的网卡时延测试方法,其特征在于,该方法具体还包括:根据以下公式计算网卡的处理时延,网卡的接收处理时延=发送处理时延=(T3

T2)/2。7.一种网卡时延测试装置,客户端向服务端发送测试报文,服务端向客户端反馈响应报文,其特征在于,该装置...

【专利技术属性】
技术研发人员:陈中科陈翔袁福利
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1