发明名称 一种利用互相关函数被动测量TCP连接往返时延的方法
摘要 一种利用互相关函数被动测量传输控制协议TCP连接往返时延的方法,是在TCP连接的路径上选择或设置测量节点和测量装置;测量装置先采集设定时间内通过该节点的TCP连接的双向分组并保存;再将设定时间均匀分割为多个小区间时长,分别统计在每个小区间时长内两个方向的分组数量,并将所有小区间时长内在同一方向通过该节点的分组个数组成一个统计数列,TCP连接的双向分组就在同一时间段内组成两个统计数列;然后计算两个统计数列在不同时间偏移下的互相关函数值,根据最大函数值对应的时间偏移确定每个ACK分组与其数据分组之间的对应关系,最终计算该TCP连接在设定时间内的往返时延。该方法解决了现有技术在测量时要向网络注入额外流量和效率低的缺陷。
申请公布号 CN101572634B 申请公布日期 2011.07.27
申请号 CN200910086506.8 申请日期 2009.06.04
申请人 北京邮电大学 发明人 裴育杰;王洪波;程时端
分类号 H04L12/26(2006.01)I;H04L12/56(2006.01)I;H04L29/06(2006.01)I;H04L1/16(2006.01)I 主分类号 H04L12/26(2006.01)I
代理机构 北京德琦知识产权代理有限公司 11018 代理人 夏宪富
主权项 1.一种利用互相关函数被动测量传输控制协议TCP连接往返时延的方法,其特征在于:在TCP连接的路径上选择或设置测量节点,并在该节点部署测量装置;测量装置先采集设定时间内通过该测量节点的TCP连接的双向分组并保存;然后将该设定时间均匀分割为多个小区间时长,并分别统计在每个小区间时长内两个方向的分组数量,再将所有小区间时长内在同一方向通过该测量节点的分组个数组成一个统计数列,TCP连接的双向分组就在同一时间段内组成两个统计数列;然后计算该两个统计数列在不同时间偏移下的互相关函数值,根据最大函数值对应的时间偏移确定每个ACK分组与其数据分组之间的对应关系,从而最终计算该TCP连接在该设定时间内的往返时延;所述方法包括下述操作步骤:(1)在TCP连接的路径上选择或设置测量节点,并部署测量装置;(2)测量装置分别测量和记录通过该测量节点的数据分组和ACK分组的个数,形成两个统计数列;利用互相关函数对两个统计数列进行处理,得到该TCP连接在该设定时间内的往返时延结果;该步骤包括下列具体操作内容:(21)在设定的测量时间段内,测量装置接收到待测TCP连接的双向分组,将其中数据分组的分组头中的包括地址、序号与该分组的到达时间保存到数据缓存区;将ACK分组的分组头中的包括地址、确认序号与该分组的到达时间保存到ACK缓存区;(22)在数据缓存区中找出其序号与ACK缓存区中每个分组的确认序号相同的数据分组,再计算两者通过该测量点的时间差,再统计所有满足上述序号对应关系的各个双向分组的时间差的算术平均值;(23)将所述设定的测量时间段均匀划分为多个小区间时长,分别统计在每个小区间时长内,数据缓存区和ACK缓存区中各自到达的分组个数,得到相应的两个统计数列;(24)计算该两个统计数列在不同时间偏移下的互相关函数值,用于反映ACK分组序列与其对应的、经过不同时间到达的数据分组序列的相似程度,再选取数值最大的互相关函数所对应的时间偏移值;更具体地,上述互相关函数在信号处理中用于表示两个波形信号在任意时间偏移下的相似程度,其函数表达式是:<img file="FSB00000509340800021.GIF" wi="648" he="115" />式中,(f·g)[n]表示两个函数f和g在时间偏移为n时为互相关函数,f*表示复共轭;函数f[x]和g[x]分别对应测量节点检测到的数据分组和ACK分组的两个统计数列,自变量x为小区间时长的序号,函数值为该小区间时长内到达的分组个数;当f和g均为实函数时,上述函数表达式为:<img file="FSB00000509340800022.GIF" wi="612" he="113" />再假设小区间时长的个数为T,用于互相关函数求和的循环变量m的取值范围为[1,T-n];藉由上述公式,当时间偏移n为小区间时长的不同整数倍时,分别计算函数f和g的互相关函数值,再选取其中数值最大的互相关函数所对应的时间偏移值n,用于计算TCP连接往返时延;(25)将各个双向分组的时间差的算术平均值与两个统计数列在不同时间偏移下最大互相关函数值对应的时间偏移值相加之和,作为该测量时间段内待测TCP连接的往返时延。
地址 100876 北京市海淀区西土城路10号