一种时延测试的方法及装置的制造方法_3

文档序号:9420205阅读:来源:国知局
设备发送数据包的速率除W所述测试设备进行时延 测试的网卡的个数的商。并且,所述测试设备中,一个网卡中发送队列的个数可W根据实际 需要自行设定,一个网卡中可W只设定一个发送队列,也可W设定多个发送队列。
[0093] 一个设备中所有CPU的主频都相同,CPU的主频即CPU工作的时钟频率(CPUClock Speed)。CPU最小的单位时间是I个所述CPU的时钟周期,CPU的主频代表I秒内包含的最 小的单位时间的个数,即把1秒钟划分为该CPU时钟主频个单位时间。举例说明:假设所述 CPU的时钟主频为2. 6GHZ,则将1秒均分成2. 6*109个单位时间。
[0094] 所述时间戳数据包用于进行延时测试,所述时间戳数据包的数据部分携带有一个 自定义的标识,用于唯一识别该时间戳数据包。时间戳数据包由测试设备发送到待测设备, 再由所述待测设备转发回所述测试设备。所述测试设备发送时间戳数据包时,记录发送该 时间戳数据包的时刻,所述测试设备根据该时间戳数据包中携带的标识识别接收到该时间 戳数据包时,记录接收该时间戳数据包的时刻,所述接收该时间戳数据包的时刻与所述发 送该时间戳数据包的时刻之间的时间间隔即为所述待测设备的延时。
[0095] 运里需要说明的是,进行时延测试时,为了提高时延测试的准确性,实际应用中, 测试设备会在1秒内均匀发送多个时间戳数据包,连续发送一段时间,W该段时间内发送 和接收每个时间戳数据包的时间间隔的平均值作为所述待测设备的延时。
[0096] 按照实际需要设置一个预设比例,所述预设比例为所述网卡中每个发送队列发送 时间戳数据包的个数占该发送队列突发数据包次数的比例。为了保证所述网卡发送数据包 的速率,除了时间戳数据包W外,其他的流量数据包W突发模式发送至待测设备。其中,所 述突发包个数为所述网卡中每个发送队列每次发送流量数据包的个数。
[0097] 102:根据所述网卡发送数据包的速率,所述网卡中发送队列的个数,所述预设比 例W及所述突发包个数获得所述网卡中每个发送队列发送所述时间戳数据包的个数作为 第一个数。
[0098] 计算1秒内所述网卡中每个发送队列发送所述时间戳数据包的个数,具体包括:
[0099] 计算所述网卡发送数据包的速率除W所述网卡中发送队列的个数所得的第一商, 获取所述第一商的整数部分作为所述网卡中每个发送队列发送数据包的速率;
[0100] 计算所述网卡中每个发送队列发送数据包的速率除W所述突发包个数所得的第 二商,获取所述第二商的整数部分作为所述网卡中每个发送队列发送流量数据包的理论次 数; 阳101] 计算所述网卡中每个发送队列发送流量数据包的理论次数与所述预设比例的乘 积获得第一值;
[0102] 计算所述网卡中每个发送队列发送数据包的速率减去所述第一值所得的第一差 值,计算所述第一差值除W所述突发包个数所得的余数作为第二值; 阳103] 判断所述网卡发送数据包的速率除W所述网卡中发送队列的个数是否有余数;
[0104] 当所述网卡发送数据包的速率除W所述网卡中发送队列的个数没有余数时,所述 网卡中每个发送队列的第一个数为所述第一值和所述第二值的和;
[01化]当所述网卡发送数据包的速率除W所述网卡中发送队列的个数的余数为i时,所 述网卡中排列在第1至第i的发送队列的第一个数为所述第一值和所述第二值的和加1; 所述网卡中排列在第i+1至第j的发送队列的第一个数为所述第一值和所述第二值的和; [0106] 其中,0 <i<j的整数,j为所述网卡中发送队列的个数。 阳107] 利用公式(1)计算所述第一商:
[0108]
Cl); 阳109] 其中,Rl为所述第一商,Rate为所述网卡发送数据包的速率,TXQ为所述网卡中发 送队列的个数,则所述网卡中每个发送队列发送数据包的速率queue_Rate为Rl的整数部 分。
[0110] 利用公式(2)计算所述第二商: 阳 111]
(2 ),
[0112] 其中,R2为所述第二商,queue_Rate为所述网卡中每个发送队列发送数据包的速 率,BURST为所述突发包个数,则所述网卡中每个发送队列发送流量数据包的理论次数W为 R2的整数部分。
[0113] 利用公式(3)计算所述第一值: 阳114]Nl=WP(3);
[0115] 其中,Nl为所述第一值,W为所述网卡中每个发送队列发送流量数据包的理论次 数,P为所述预设比例。Nl为按照预设比例所得的所述网卡中每个发送队列发送时间戳数 据包的理论个数。
[0116] 利用公式(4)计算所述第二值:
[0117] N2 = (queue_Rate-Nl) % 脚RST(4);
[0118] 其中,肥为所述第二值,queue_Rate为所述网卡中每个发送队列发送数据包的速 率,Nl为所述第一值,BURST为所述突发包个数。肥为所述网卡中每个发送队列除了按照 突发模式发送的流量数据包W外,剩余的数据包都作为时间戳数据包发送。
[0119] 判断所述网卡发送数据包的速率除W所述网卡中发送队列的个数是否有余数,即 判断Rl是否为整数,当Rl为整数时,所述网卡中每个发送队列的第一个数N为所述第一值 Nl和所述第二值N2的和,即N=N1+N2。
[0120] 所述网卡中的多个发送队列按照一定顺序排列。当Rl不是整数时,计算i= Rate%TXQ,所述网卡中排列在第1至第i的发送队列的第一个数N为所述第一值Nl和所 述第二值N2的和再加1,即N=Nl+肥+1 ;所述网卡中排列在第i+1至第j的发送队列的第 一个数N为所述第一值NI和所述第二值N2的和,即N=N1+N2。其中,O<i<j的整数,j为所述网卡中发送队列的个数。所述第一个数即为所述网卡中每个发送队列发送时间戳 数据包的个数。 阳121]即将所述网卡1秒中发送的数据包的个数平均分配给每个发送队列时,若存在余 数i,则给排列在第1至第i的每个发送队列分别分配一个数据包,并且所分配的数据包作 为时间戳数据包发送。
[0122] 103:根据所述网卡发送数据包的速率,所述网卡中发送队列的个数,所述突发包 个数W及所述第一个数获得所述网卡中每个发送队列发送流量数据包的实际次数作为第 二个数。
[0123] 计算所述网卡中每个发送队列发送流量数据包的实际次数,即所述网卡中每个发 送队列突发数据包的实际次数,包括:
[0124] 计算所述网卡发送数据包的速率除W所述网卡中发送队列的个数所得的第一商, 获取所述第一商的整数部分作为所述网卡中每个发送队列发送数据包的速率;
[01巧]计算所述网卡中每个发送队列发送数据包的速率减去所述第一个数所得的第二 差值;
[01%] 计算所述第二差值除W所述突发包个数的商获得所述网卡中每个发送队列发送 流量数据包的实际次数作为第二个数。
[0127] 采用102中公式(1)计算第一商,参考102中计算所述第一商的公式(1),运里不 再寶述。所述网卡中每个发送队列发送数据包的速率queue_Rate为所述第一商Rl的整数 部分 阳12引 102中,所述网卡中每个发送队列除了W突发模式发送的流量数据包W外,其他的 数据包都作为时间戳数据包,即所述网卡中每个发送队列发送数据包的速率queue_Rate减去所述第一个数所得的第二差值为所述突发包个数的整数倍。
[0129] 则采用公式(5)计算所述网卡中每个发送队列发送流量数据包的实际次数: 阳 130]
(5); 阳131] 其中,M为所述第二个数,即所述网卡中每个发送队列发送流量数据包的实际次 数,queue_Rate为所述网卡中每个发送队列发送数据包的速率,N为所述第一个数,即所述 网卡中每个发送队列发送时间戳数据包的个数,BURST为所述突发包个数。
[0132] 104 :根据所述CPU的时钟频率,所述网卡中发送队列的个数,所述预设的初始时 亥IJ,所述第一个数和所述第二个数获得所述网卡中每个发送队列发送时间戳数据包的间隔 W及该发送队列每次发送流量数据包的时刻,所述发送时间戳数据包的间隔为所述网卡中 每个发送队列发送相邻的两个时间戳数据包之间发送流量数据包的次数。
[0133] 计算得到所述网卡中每个队列发送时间戳数据包的个数W及发送流量数据包的 次数后,计算时间戳数据包的间隔W及该发送队列每次发送流量数据包的时刻。
[0134] 所述发送时间戳数据包的间隔为所述网卡中每个发送队列发送相邻的两个时间 戳数据包之间发送流量数据包的次数。即所述网卡中每个发送队列每发送几次流量数据包 后,发送一个时间戳数据包。运样,只需要计算得到所述网卡中每个发送队列每次发送流量 数据包的时刻,所述网卡中每个发送队列按照发送流量数据包的时刻W突发模式发送流量 数据包,到达所述发送时间戳数据包的间隔后,发送一个时间戳数据包。运样,实现在1秒 内,所述网卡的每个发送队列均匀发送时间戳数据包,提高延时测试的精度。可W理解的 是,若所述网卡中的每个发送队列将所有的时间戳数据包集中发送,会引入很大的系统误 差,降低延时测试的精度。
[0135] 计算所述网卡中每个发送队列发送时间戳数据包的间隔W及该发送队列每次发 送流量数据包的时刻,包括:
[0136] 计算所述CPU的时钟频率除W所述网卡发送数据包的速率所得的第=商,获取所 述第=商的整数部分作为发送所述网卡中每个发送队列每次发送时间戳数据包所需的第 一时间;
[0137] 计算所述第一个数,所述网卡中发送队列的个数与所述第一时间的乘积作为所述 网卡中所有发送队列发送时间戳数据包所需的时间;
[0138] 计算所述CPU的时钟频率与所述网卡中所有发送队列发送时间戳数据包所需的 时间的差作为所述网卡中所有发送队列发送流量数据包所需的时间;
[0139] 计算所述第二个数与所述网卡中发送队列的个数的乘积作为所述网卡中所有发 送队列发送流量数据包的次数;
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1