一种tcp协议栈延时的统计方法、装置及系统的制作方法_2

文档序号:9455737阅读:来源:国知局
下HMEC 的值;
[0047] f) tcp_retransmit_timer是tcp重传函数,在此函数中对TIMED的值记录进sk_ buff结构中;
[0048] g)在 dev_queue_xmit 函数中,讲 ??ΜΕΑ、??ΜΕΒ、HMEC、HMED 的值填充进发送的 数据包所在的内存块,并交付硬件进行发送。
[0049] 3.客户端可以根据是否需要统计TCP的处理时间,来决定在TCP握手的时候是否 发出时间统计的要求,并根据返回数据包中的时间戳统计协议栈在各层的处理时延。
[0050] 上述技术方案具有如下有益效果:实现了对任一 TCP数据流中每个TCP报文数据 在协议栈中的时延统计,并且不需要对用户程序进行修改,只需要在内核协议栈中添加时 间统计代码即可,对使用者是完全透明的。可以根据不同的五元组,分别独立统计一条TCP 数据流在协议栈中的处理时间,相比传统方式更加精确,并且避免了对无用数据流的CPU 消耗;可以根据客户端协商来触发统计,在不开启的时候不会增加系统的CPU负载;时间统 计精度高,可以到毫秒级别,而现有的统计是根据一秒时间内各个函数的处理次数来估算 处理时间,无法保证精确度。
[0051] 应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设 计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情 况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不 是要限于所述的特定顺序或层次。
[0052] 在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不 应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比 清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的 那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书 特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
[0053] 为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进 行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本 文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。 因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广 范围相一致。
[0054] 上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部 件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施 例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书 的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语 "包含",该词的涵盖方式类似于术语"包括",就如同"包括,"在权利要求中用作衔接词所解 释的那样。此外,使用在权利要求书的说明书中的任何一个术语"或者"是要表示"非排它 性的或者"。
[0055] 本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块 (illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结 合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明 性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功 能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员 可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为 超出本发明实施例保护的范围。
[0056] 本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器, 数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门 或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处 理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制 器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器, 多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置 来实现。
[0057] 本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软 件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存 储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、⑶-ROM或本领域中其它任意形式的存储 媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信 息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储 媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以 设置于用户终端中的不同的部件中。
[0058] 在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软 件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的 媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电 脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以 是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但 不限于RAM、ROM、EEPR0M、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它 任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处 理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例 如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双 绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义 的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、 软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的 组合也可以包含在电脑可读媒介中。
[0059] 以上所述的【具体实施方式】,对本发明的目的、技术方案和有益效果进行了进一步 详细说明,所应理解的是,以上所述仅为本发明的【具体实施方式】而已,并不用于限定本发明 的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含 在本发明的保护范围之内。
【主权项】
1. 一种TCP协议栈延时的统计方法,其特征在于,所述方法包括: 在TCP握手时,接收客户端发送的同步SYN请求; 根据所述SYN请求,判断是否支持TCP协议栈延时TDM; 若支持TDM,则当来自所述客户端的TCP报文数据传输时,在所述TCP报文数据的TDM选项中记录各个时间点的时间戳,以便所述客户端确定所述TCP报文数据的TDM。2. 如权利要求1所述TCP协议栈延时的统计方法,其特征在于,所述根据所述SYN请 求,判断是否支持TCP协议栈延时TDM,具体包括: 根据所述SYN请求中的TCP选项扩展协商类型字段,判断是否支持TCP协议栈延时 TDM03. 如权利要求1所述TCP协议栈延时的统计方法,其特征在于,所述TCP报文数据的 TDM选项中包括四个时间点的时间戳:HMEA、HMEB、HMEC、HMED;其中,HMEA用于记录所 述TCP报文数据交付给TCP传输层时的时间戳;HMEB用于记录所述TCP报文数据交付给 网络层的时间戳;HMEC用于记录所述TCP报文数据交付给链路层的时间戳;HMED用于如 果所述TCP报文数据是重发的报文数据,则记录最后一次网络层重发给链路层的时间戳。4. 如权利要求3所述TCP协议栈延时的统计方法,其特征在于, 所述时间戳使用服务器端的中央处理器CPU内核的jiffies变量来记录,jiffies变 量是一个32位无符号型整数。5. 如权利要求1或3所述TCP协议栈延时的统计方法,其特征在于,所述方法还包括: 所述客户端根据记录的所述各个时间点的时间戳,确定所述TCP报文数据的TDM。6. -种TCP协议栈延时的统计装置,其特征在于,所述装置包括: 接收单元,用于在TCP握手时,接收客户端发送的同步SYN请求; 判断单元,用于根据所述SYN请求,判断是否支持TCP协议栈延时TDM; 记录单元,用于若支持TDM,则当来自所述客户端的TCP报文数据传输时,在所述TCP报 文数据的TDM选项中记录各个时间点的时间戳,以便所述客户端确定所述TCP报文数据的 TDM07. 如权利要求6所述TCP协议栈延时的统计装置,其特征在于,所述判断单元,具体用 于根据所述SYN请求中的TCP选项扩展协商类型字段,判断是否支持TCP协议栈延时TDM。8. 如权利要求6所述TCP协议栈延时的统计装置,其特征在于,所述记录单元在TCP报 文数据的TDM选项中记录四个时间点的时间戳:TMEA、TMEB、TMEC、TMED;其中,TMEA用 于记录所述TCP报文数据交付给TCP传输层时的时间戳;HMEB用于记录所述TCP报文数据 交付给网络层的时间戳;HMEC用于记录所述TCP报文数据交付给链路层的时间戳;HMED 用于如果所述TCP报文数据是重发的报文数据,则记录最后一次网络层重发给链路层的时 间戳。9. 如权利要求8所述TCP协议栈延时的统计装置,其特征在于, 所述记录单元使用服务器端的中央处理器CPU内核的jiffies变量来记录时间戳,jiffies变量是一个32位无符号型整数。10. -种TCP协议栈延时的统计系统,其特征在于,所述系统包括:客户端和服务器,其 中,所述服务器包括权利要求6-9中任一项所述TCP协议栈延时的统计装置,所述客户端根 据记录的所述各个时间点的时间戳,确定所述TCP报文数据的TDM。
【专利摘要】本发明实施例提供一种TCP协议栈延时的统计方法、装置及系统,所述方法包括:在TCP握手时,接收客户端发送的同步SYN请求;根据所述SYN请求,判断是否支持TCP协议栈延时TDM;若支持TDM,则当来自所述客户端的TCP报文数据传输时,在所述TCP报文数据的TDM选项中记录各个时间点的时间戳,以便所述客户端确定所述TCP报文数据的TDM。本发明实现了对任一TCP数据流中每个TCP报文数据在协议栈中的时延统计,并且不需要对用户程序进行修改,只需要在内核协议栈中添加时间统计代码即可,对使用者是完全透明的。
【IPC分类】H04L12/26
【公开号】CN105207846
【申请号】CN201510595212
【发明人】李鹏
【申请人】新浪网技术(中国)有限公司
【公开日】2015年12月30日
【申请日】2015年9月17日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1