CN107534587B - 时延测量***及方法 - Google Patents
时延测量***及方法 Download PDFInfo
- Publication number
- CN107534587B CN107534587B CN201580079072.2A CN201580079072A CN107534587B CN 107534587 B CN107534587 B CN 107534587B CN 201580079072 A CN201580079072 A CN 201580079072A CN 107534587 B CN107534587 B CN 107534587B
- Authority
- CN
- China
- Prior art keywords
- packet
- tap
- internal
- port
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0858—One way delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在一些所述例子中,时延测量器从分接点接收数据包。数据包可包括包含打包器头的已打包数据包。打包器头可包括捕获时间戳、分接点标识符、数据包地址和端口信息以及消息内容散列。
Description
背景技术
通信服务提供者经由长期演进(LTE)从交换业务移动到基于互联网协议(IP) 的业务。这个转变包括使用IP语音(Voice over IP,VoIP)和IP多媒体子***(IMS) 信令技术来实现LTE上语音(Voice over LTE,VoLTE)。VoLTE业务传送的关键方面包括传送满足用于将VoIP业务成功传送为高清晰度语音的时延要求的网络性能的能力。测量数据包时延支持很多方面,例如在网络设计中的提高、网络重新设计或扩张的努力、实时策略功能调节和其它用于支持需求的网络调节。
附图说明
在下面的详细描述中并参考附图描述某些例子,其中:
图1示出时延测量器和在ePC中的一组分接点的示例部署;
图2示出示例时延测量器;
图3示出示例时延测量器;
图4示出示例分接点控制器;
图5示出示例分接点控制器;
图6示出网络分接点的操作的示例方法;以及
图7示出网络分接点的操作的示例方法。
具体实施方式
所述技术的实现可允许测量贯穿网络的数据包时延(packet latency)。例如,该技术可用于测量贯穿LET演进分组核心网(Evolved Packet Core,ePC)的数据包时延。在一些实现中,当数据包横穿网络时,可在各种分接点处捕获数据包的拷贝。例如,分接点可位于eNodeB、演进的分组数据网关(ePDG)、服务网关(S-GW)或ePC中的分组数据网络网关(P-GW)之前和之后。被拷贝的数据包可被打包在包含由相关联***使用的信息的头中,以跟踪贯穿网络的数据包。
图1示出时延测量器(latency measurer)113和在ePC 101中的一组分接点(tapping point)108-112的示例部署。在各种实现中,分接点108-112可被实现为在所测量的网络中的单独网络元件,或可通过配置现有的网络元件来实现。例如,分接点108-112 可被实现为网络交换机,例如软件定义的网络(SDN)网络交换机,例如OpenFlow交换机。作为另一例子,可使用在网络元件104-105上存在的硬件来实现分接点 108-112。例如,可通过配置在元件104-105上的网络接口卡来实现分接点108-112,以拷贝数据包、将数据包与打包器头(wrapper header)进行打包,并将拷贝转发到时延测量器113。
在所示例子中,ePC 101可包括一个或多个S-GW 108,该一个或多个S-GW 108 经由S1-U接口连接到E-Utran接入网络的相应eNodeB(eNB 102)。eNB 102可经由LTE Uu(LTE无线电接口)连接到用户设备102(UE),例如智能电话或其它移动设备。在eNB 103和S-GW104之间发送的数据包由分接点108拦截并被发送到时延测量器113。在一些实现中,分接点也可放置在eNB 103周围,以拦截在LTE-Uu和S1-U接口上的数据包。
ePC 101还可包括P-GW 105。例如,P-GW 105可经由S8接口连接到漫游合作伙伴网络(roaming partner network)107。例如,UE 102可以是网络107的归属UE且当前在网络101上漫游。P-GW 105可经由SGi接口进一步连接到外部数据网络,例如互联网106。在例子中,分接点110拦截在S5接口上的数据包,分接点111拦截在 S8接口上的数据包,以及分接点112拦截在SGi接口上的数据包。
分接点108-112在数据包正常横穿网络期间拦截并拷贝数据包,并将那些数据包发送到时延测量器113。分接点108-112将拷贝与头打包在一起,该头包括时延测量器113使用的信息元素以在数据包横穿EPC 101时跟踪数据包。例如,信息元素可包括来自数据包头的目的地地址和源地址、以及端口。此外,如果存在,信息元素可包括内部目的地地址和源地址。例如,如果诸如通用数据包无线电服务(GPRS)隧道协议(GTP)的隧道协议被应用于数据包,则分接头108-112可从数据包的内部头获取信息。分接头108-112还可创建数据包的有效载荷或消息体的散列(hash)。例如,散列可以是使用由分接点108-112执行的重复数据删除哈希函数来创建的散列。
时延测量器113可组合由分接点108-112提供的一些或所有信息元素以在数据包横穿网络时跟踪数据包。例如,时延测量器113可通过组合来自所接收的被拷贝的数据包的信息元素来创建关联密钥(correlation key)。例如,针对从UE 102到互联网 106的数据包,时延测量器可使用来自分接点108-110的数据包的第一组信息元素和来自分接点112的数据包的第二组信息元素。例如,对于分接点108-110,时延测量器可通过连结内部目的地IP地址、内部目的地端口和消息散列来形成关联密钥。对于分接点112,时延测量器可通过连结外部目的地IP地址、外部目的地端口和消息散列来形成关联密钥。
从具有相同的关联密钥的不同分接点接收的匹配数据包反映同一数据包在它横穿网络时在不同点处的拷贝。相应地,通过比较所接收的匹配数据包的时间戳,时延测量器113可从相应的数据包在它横穿网络时所花费的时间来确定网络的时延。通过对很多这样的数据包的结果的取平均值,时延测量器113可提供网络的时延的测量。此外,通过将测量限制到一组分接点,时延测量器113可测量网络的子集的时延或特定的网络元件的时延。
在一些实现中,时延测量器113可以为不同类型的数据包提供不同的时延测量。例如,分接点108-112可在打包器头中提供服务质量(QoS)指示符。例如,在GPRS 中,数据包具有从0至63取值的差分服务代码点(DSCP)字段。在这个例子中,分接点108-112可包括在打包器头中的DSCP信息元素。时延测量器113可按照QoS将测量数据分组,以提供针对不同的QoS水平的时延的测量。
在一些实现中,时延测量器113可向分析(analytics)或显示***114提供信息。例如,时延测量器113可向***114上的分析数据库提供时延数据。例如,***114 可查询分析数据库以显示指示实时时延数据或历史时延数据的仪表板(dashboard)。此外,***114可提供接口以允许用户显示子集或特定的网络元件的数据、或配置时延测量器113。
在另外的实现中,时延测量器113除了时延测量以外还可执行其它网络测量。例如,时延测量器113可通过测量数据包由分接点108-112发送到时延测量的速率来测量在分接点108-112处的网络吞吐量。
图2示出示例时延测量器201。例如,时延测量器201可被部署为在ePC(例如图1的ePC 101)中的时延测量器113。可选地,时延测量器201可部署在各种其它网络,例如骨干网、内容分发网络或存储区域网络中。时延测量器201可由在服务器上或在虚拟机上运行的应用实现。例如,可在具有网络的全部或一部分的数据中心中分配的标准2U服务器上执行时延测量器201。
时延测量器201可包括消息队列212以从分接点接收已打包数据包202。例如,消息队列212可以是非均匀存储器存取(NUMA)节点的时延测量线程的队列。在一些实现中,消息队列212可经由具有连接到分接点的端口的网络接口卡接收已打包数据包。
已打包数据包202可包括在网络中的分接点处接收的数据包211的拷贝。已打包数据包202还可包括打包器头203。打包器头203可包括在接收到数据包211时由捕获分接点添加的一组信息元素(IE)。例如,打包器头203可包括:指示数据包何时由分接点接收到的捕获时间戳;数据包地址和数据包端口,例如从数据包的头得到的源地址或目的地地址以及端口信息;所拦截的数据包的消息体的消息内容散列;以及如果存在的话,内部地址和内部端口,例如在数据包被封装之后从内部头得到的源地址或目的地地址以及端口信息。在一些实现中,打包器203可包括目的地地址和源地址以及目的地端口和源端口。此外,如果存在于数据包211中,打包器203可包括内部目的地地址和内部源地址以及内部目的地端口和内部源端口。
时延测量器201还可包括相关器213。例如,相关器213可被实现为存储在非临时性计算机可读介质上并由处理器执行的软件。例如,相关器213可包括存储在非临时性计算机可读介质上并由处理器执行的一组软件模块214-216。相关器21可从一组分接点接收一组已打包数据包202。相关器213可使用来自已打包数据包202的打包器头203的信息,当横穿网络时,所接收的已打包数据包202相应于同一数据包。
相关器213可包括第一模块214以使用打包器头数据来计算关联密钥。例如,对于每个已打包数据包,模块214可组合来自打包器数据包203的一组信息以形成关联密钥。在一些实现中,相关器213可针对不同的分接点使用不同的打包器头数据来计算关联密钥。例如,相关器213可使用分接头标识符(tap identifier)204来确定要组合那些信息元素来形成关联密钥。
例如,相关器213可使用分接头标识符204来确定封装是否应用于数据包211。取决于在分接点处接收的数据包的封装状态,相关器213可使用数据包地址和端口 206、207、或在关联密钥中的内部数据包地址和端口209、210。例如,在EPC(例如图1的EPC 101)中,对于接收在GTP下的已封装的数据包的分接点,例如分接点109 和110,关联密钥可以是内部目的地地址209、内部目的地端口210和消息散列208 的连结(concatenation)。在这个例子中,对于接收未封装或解封装的数据包的分接点,例如分接点108、112和111,关联密钥可以是外部数据包目的地地址206、外部目的地端口207和消息散列208的连结。在封装之后,外部目的地地址和端口变成内部目的地地址和端口。相应地,对于经过分接点108-111的同一数据包,从每个分接点接收的每个已打包的拷贝202将具有匹配的关联密钥。
作为另一例子,相关器213可使用分接头标识符204来确定是否使用目的地信息、源信息或这两者来形成关联密钥。例如,在其中网络地址转换(NAT)被应用于外发数据包的源信息的网络分段中,源地址和源端口可改变。相应地,在这些情况下,相关器213可使用在关联密钥中的目的地信息(目的地地址和端口)。作为另一例子,在其中NAT应用于进入的数据包的目的地信息的网络分段中,源信息(源地址和端口) 可在关联密钥中被使用。
相关器213可包括第二模块215。模块215可与具有匹配的关联密钥的已打包数据包202匹配。如上所述,具有匹配的关联密钥的已打包数据包202指示在打包器203 内的数据包211是同一数据包当它横穿网络时的拷贝。可采取各种措施来增加具有匹配的关联密钥的已打包数据包202确实反映同一数据包211的拷贝的概率。例如,捕获时间戳204可用于约束匹配,使得只有在彼此的某个时间内接收的数据包被考虑为匹配候选数据包。作为另一例子,会话可用于确定哪些已打包数据包201是使用关联密钥的待匹配的候选数据包。关于图3更详细地描述这个例子。
相关器213可包括第三模块216。模块216可使用匹配的已打包数据包的捕获时间戳来计算贯穿这组分接点的消息时延。例如,模块216可通过从这组匹配的已打包数据包的最后一个捕获时间戳204减去第一个捕获时间戳204来计算贯穿网络分段的总时延。作为另一例子,模块216可通过从每个连续的时间戳204减去紧接着在前面的时间戳204来单独地计算贯穿每个网络元件的时延。模块216还可向分析或显示***(例如图1的***114)提供所计算的时延信息。
图3示出示例时延测量器301。例如,时延测量器301可以是在ePC(例如图1 的ePC101)中的113。可选地,时延测量器301可部署在各种其它网络,例如骨干网、内容分发网络或存储区域网络中。时延测量器301可由在服务器上或在虚拟机上运行的应用实现。例如,可在具有网络的全部或一部分的数据中心中分配的标准2U服务器上执行时延测量器301。
示例时延测量器可包括多个相关器302、303。例如,每个相关器302、303可执行NUMA节点的它自己的线程。例如,每个相关器302、303可通过从非临时性计算机可读介质下载相应的指令集来执行一组软件模块306-314。每个相关器302、303可具有相关消息队列304、305。例如,消息队列304、305可以是如关于消息队列212 所述的,并可接收如上所述的已打包数据包。
此外,在一些实现中,每个消息队列304、305与分布散列值相关,并接收具有相关分布散列值的已打包数据包。分布散列值可从消息内容散列得到或等于消息内容散列。因为数据包的消息内容不在网络分段中改变,所以从消息内容散列得到的分布散列值确保与横穿网络分段的单个数据包对应的所有已打包数据包被发送到公共队列 304、305。在这些实现中,每个分接点使用数据包信息来计算分布散列,并将已打包数据包传输到相应的消息队列304、305。例如,分布散列值可以是消息内容散列值的子集。例如,消息队列304、305的分布散列值可以是被发送到相应的消息队列的数据包的消息内容散列值的一个或多个第一有效数字。例如,队列304的分布散列值可以是100,使得具有与通配符模式100***匹配的消息内容散列值的任何数据包被发送到队列304。在另外的实现中,每个消息队列304、305可与多个不同的分布散列值相关。在一些情况下,分布散列值可与消息内容散列值相同,使得每个消息队列304、305 与一组可能的消息内容散列值相关。
每个相关器302、303可包括一组模块306-314。例如,模块可以是通过下载指令来执行的软件模块,该指令存储在由相关器302、303共享的存储器或存储装置。
模块306可从相应的消息队列304、305得到已打包数据包。例如,模块306可以用先进先出方式从队列304得到已打包数据包,使得数据包以该数据包被接收的顺序被处理。为了解释的目的,当前的已打包数据包被i编索引并被称为数据包i。
模块307可使用来自数据包i的打包器头信息来计算关联密钥。例如,模块307 可如上面关于图2的模块214所述的操作。
模块308可配置成使用关联密钥来确定会话x是否针对数据包i存在。例如,关联密钥可用作会话标识符。模块308可使用关联密钥来检查与关联密钥相关的会话x 是否存在于存储器中。
如果会话x不存在,则相关器302、303可执行模块309。模块309可检查打包器头以得到提供当前数据包的分接点的分接点ID。如果分接点ID指示分接点是在覆盖所测量的网络路径的这组分接点中的第一个,则关联器302、303可执行模块310。如果否,则模块309可使关联器302、303丢掉数据包并报告错误,例如异常路径错误。
如下所述,在一些实现中,模块310可配置成通过只创建所接收的第一数据包的真子集的数据包来执行数据包采样。在这些实现中,如果数据包不是所测量的路径中的第一个,模块309可简单地丢掉数据包i,并报告错误。可选地,模块309可以只在数据包不是第一个且数据包另外满足采样条件时才报告错误。例如,如果模块310仅仅每Q秒为数据包的前P%创建会话,则模块309可以只在数据包i是在Q秒时间窗内从相关分接点接收的前P%数据包中的一个时才报告错误。
模块310可创建与数据包相关的会话x。例如,模量310可通过存储具有被存储为会话索引的关联密钥的当前数据包来创建会话x。在一些实现中,模块310可存储会话中的额外信息。例如,模块310可包括从数据包i的打包器获取的QoS指示符。例如,QoS指示符可以是从数据包i获取的DSCP元件。作为另一例子,模块310可创建来自数据包i的打包器信息的表格。例如,来自打包器头的每个字段或来自打包器头的字段的任何子集可被包括在表格的一行中。在创建新会话之后,相关器可执行模块306以得到下一个数据包并重复上述模块的执行。
在一些实现中,可测量少于全部的数据包,同时仍然得到在所测量的网络路径上的数据包时延的准确测量。时延测量器301可应用数据包采样的各种方法以减小所测量的数据包的数量。例如,模块309可以只为在某个时间窗内接收的数据包创建会话。例如,模块309可以每Q秒为数据包的前P%创建会话,例如每100ms为数据包的前 5%创建会话。在额外的实现中,可单独地测量每个QoS水平。相应地,数据包采样可独立地应用于不同的QoS水平。例如,模块309可以每Q秒为每个QoS水平的前 P%数据包创建会话。
如果模块308确定针对数据包i存在会话,则相关器302、303可执行模块311。模块311可获取会话x的前一个已打包数据包j。例如,模块311可获取存储在会话x 中的紧接着的前面的数据包。模块311可检查数据包j以验证数据包j来自紧接着地在发送数据包i的分接点前面的分接点。例如,模块311可比较来自数据包i和j的分接点ID与所测量的网络路径的分接点ID的有序列表。如果数据包j来自在紧接着地前面的一个分接点之前的分接点,则可能有来自紧接着地前面的分接点的丢掉的数据包。如果是这样,则模块311可报告丢掉的数据包并删除会话。例如,模块311可使相关器将丢掉的数据包报告传输到分析或显示模块或***管理员。如果不是,则相关器可执行模块312。
模块312可确定当前数据包i是否来自在所测量的网络链中的最后一个分接点(即,如果从网络链预期N个数据包,是否i<N)。例如,模块312可使用数据包i的分接点来确定数据包i是否来自最后一个分接点。
如果当前数据包不是在链中的最后一个,则相关器302、303可执行模块313。模块313可以用来自数据包i的打包器头的信息更新会话x。例如,会话x可包括通过汇总在每个连续的数据包对之间的捕获的时间戳中的差值而创建的运行时延测量。在这个例子中,模块313可通过从数据包i的时间戳减去数据包j的捕获时间戳,并将结果加到运行总计来更新会话x。
模块313可以用另外的信息更新会话x。例如,模块313可存储会话中的已打包数据包i或数据包i的打包器头的拷贝。在一些情况下,模块313可在存储数据包i时重写(overwrite)所存储的数据包j的拷贝。作为另一例子,模块313可以用来自数据包i的信息更新会话表。在其它情况下,模块313可存储在会话中接收的所有数据包或打包器头。
如果当前数据包是链中的最后一个,则相关器302、303可执行模块314。在一些实现中,模块314可执行最终会话更新。例如,模块314可从数据包i减去数据包j 的捕获时间戳,并将结果合计到运行时延测量。作为另一例子,模块314可将来自数据包i的打包器头信息添加到会话表或将数据包i存储为会话的一部分。
模块314可进一步报告会话结果。例如,模块314可向分析***或仪表板提供最终时延测量。此外,模块314可发送另外的会话信息。例如,模块314可发送会话的数据包的QoS水平,以允许分析***或仪表板报告针对单独QoS水平的单独时延测量。作为另一例子,模块314可将存储在会话中的会话表或数据包的集合发送到分析***或仪表板,并删除会话。在一些实现中,时延测量器301可具有至分析***或仪表板的网络接口,且所有相关器302、303可使用同一接口来报告它们的结果。在报告会话结果之后,模块314可删除会话x,且相关器可以以模块306开始来重复上述模块的执行。
图4示出示例分接点控制器401。控制器401可以是配置在网络上的一个或多个分接点的任何***。例如,在分接点是SDN交换器的部署中,控制器401可以是SDN 控制器。作为另一例子,控制器401可在时延测量器(例如时延测量器113、201或 301)中实现。
控制器401可包括接口402。接口402可连接到一组分接点,以向分接点提供配置指令。例如,接口402可以是网络接口卡,以提供与在网络中已被部署或正被部署的一组分接点的带外(out-of-band)网络连接。
控制器401还可包括处理器403。例如,处理器403可以是计算机的中央处理单元(CPU)。控制器401还可包括非临时性计算机可读介质404。例如,介质404可包括诸如随机存取存储器(RAM)的存储器,诸如硬盘或快闪存储装置的存储装置或其组合。介质404可包括由处理器403可执行的指令405。
指令集405可由处理器403执行来经由接口402配置网络分接点。例如,指令405 可由处理器403执行来指示网络分接点,以将数据包的数据包信息发送到时延测量器。数据包信息可包括捕获时间戳;分接点ID,例如用于捕获数据包的分接点端口的端口 ID;数据包源地址和数据包源端口;数据包目的地地址和数据包目的地端口;以及消息内容散列。指令405可进一步可由处理器403执行来指示分接点发送内部源地址、内部源端口、内部目的地地址和内部目的地端口,如果这些元素存在于数据包中。
指令405进一步可由处理器403执行来指示分接点发送其它信息。例如,分接点可被指示将数据包的拷贝发送到时延测量器,数据包信息在头中。例如,指令403可以是可执行的以指示分接点发送已打包数据包,例如图2的已打包数据包202。在另外的实现中,分接点可被指示包括其它信息,例如数据包的QoS水平。
图5示出示例分接点控制器501。控制器501可以是配置在网络上的一个或多个分接点的任何***。例如,在分接点是SDN交换器的部署中,控制器501可以是SDN 控制器。作为另一例子,控制器501可在时延测量器(例如时延测量器113、201或 301)中实现。控制器501可包括接口502、处理器503和非临时性计算机可读介质504,其可以如关于图4所述的接口402、处理器403和介质404所述的。
介质504可包括指令集505。指令集505可由处理器503执行来指示网络分接点将数据包的数据包信息发送到时延测量器。指令集505可以如关于图4的指令集405 所述的。
介质504也可包括指令集506。指令集506可由处理器503执行来指示网络分接点从数据包的内容计算分布散列,并基于数据包散列将数据包信息传输到消息队列。例如,计算分布散列的指令可包括关于使用什么散列盐(hash salt)或散列算法来计算散列值的信息。作为另一例子,指令可包括什么分布散列值映射到哪个消息队列的表格。在一些情况下,消息队列可被识别为在时延测量器上的一个或多个网卡的端口。
图6示出网络分接点的操作的示例方法。例如,示例方法可由网络分接点(例如关于图1描述的分接点108-112)执行。
示例方法包括块601。在块601中,分接点可捕获数据包。例如,分接点可拦截数据包,并在该数据包横穿网络时拷贝数据包。
示例方法还包括块602。在块602中,分接点将头与数据包打包在一起。例如,分接头可封装数据包,包括添加具有数据包信息的头。头可包括捕获时间戳、分接点 ID、数据包地址和数据包端口、消息内容散列以及如果存在,内部地址和内部端口。在一些情况下,数据包地址是目的地数据包地址,例如目的地IP地址和数据包端口是目的地端口ID。在这些情况下,内部地址和内部端口可以是内部目的地地址和内部目的地端口。在这些情况下,头还可包括源数据包地址和源端口以及内部源数据包地址和内部源端口。
示例方法还包括块603。在块603中,分接点将已打包的数据包发送到时延测量器。例如,分接点可将已打包的数据包发送到在分接点和时延测量器之间的带外网络连接上的消息队列。
图7示出网络分接点的操作的示例方法。例如,示例方法可由网络分接点(例如关于图1所述的分接点108-112)执行。
示例方法包括块701。在块701中,分接点可捕获数据包。例如,分接点可拦截数据包,并在该数据包横穿网络时拷贝该数据包。
示例方法还包括块702。块702可以如关于图6的块602所述的被执行。
示例方法还包括块703。块703可包括计算分布散列。例如,可通过截短(truncate)消息内容散列以得到消息内容散列的前n个有效数字,来计算分布散列。
示例方法还包括块704。块704可包括基于分布散列来将已打包的数据包发送到时延测量器。例如,分接点可使用分布散列到消息队列的映射来确定哪个队列要发送已打包的数据包。
在前述描述中,阐述了很多细节以提供对在本文公开的主题的理解。然而,可以在没有这些细节中的一些或全部的情况下实践实现。其它实现可包括从上面讨论的细节的修改和变化。意图是所附权利要求涵盖这样的修改和变化。
Claims (9)
1.一种***,包括:
消息队列,用于从分接点接收已打包数据包,所述已打包数据包各自包括数据包和打包器头,所述打包器头包括:
捕获时间戳;
分接点标识符;
数据包地址和数据包端口;
消息内容散列;以及
如果所述数据包中存在,内部地址和内部端口;
非临时性计算机可读介质,包括由处理器可执行的指令,所述指令用于针对从一组分接点接收的一组已打包数据包中的每个已打包数据包:
使用打包器头数据计算关联密钥;
通过匹配关联密钥来匹配已打包数据包;
通过所述一组分接点使用所匹配的已打包数据包的所述捕获时间戳来计算消息时延,其中针对从第一分接点接收到的第一已打包数据包,使用与从第二分接点接收到的第二已打包数据包不同的打包器头数据元素来计算所述关联密钥。
2.如权利要求1所述的***,其中:
所述数据包地址是数据包源地址;
所述数据包端口是数据包源端口;
如果存在,所述内部地址是内部源地址,所述内部端口是内部源端口;以及
所述打包器头还包括:
数据包目的地地址;
数据包目的地端口;以及
如果存在,内部目的地地址和内部目的地端口。
3.如权利要求2所述的***,其中:
对于接收已封装的数据包的第一分接点,所述关联密钥是所述内部目的地地址、所述内部目的地端口和所述消息内容散列的组合;以及
对于接收解封装的数据包的第二分接点,所述关联密钥是所述数据包目的地地址、所述数据包目的地端口和所述消息内容散列的组合。
4.如权利要求1所述的***,可执行指令还用于针对所述一组已打包数据包中的每个已打包数据包:
使用所述关联密钥来确定会话是否针对所述已打包数据包i存在;
如果会话不存在且所述已打包数据包i的所述分接点标识符用于所述一组分接点中的第一分接点,则创建所述会话;
如果会话确实存在,则获取所述会话的前一个已打包数据包,使用当前的已打包数据包的所述捕获时间戳和前一个匹配的数据包的所述捕获时间戳的差值来更新所述会话的时延测量,并存储与所述会话相关的当前匹配的数据包。
5.如权利要求4所述的***,其中所述一组已打包数据包是在具有公共服务质量水平的时间窗内接收的数据包中的占百分比的数据包。
6.如权利要求1所述的***,还包括:
多个消息队列,所述消息队列是所述多个消息队列中之一,每个消息队列用于接收具有相关联的分布散列值的已打包数据包。
7.如权利要求6所述的***,每个所述分布散列值是由相关联的消息队列接收的所述已打包数据包的所述消息内容散列值的子集。
8.一种方法,包括:
在分接点处捕获数据包;
将所述数据包与头打包在一起,所述头包括:
捕获时间戳;
分接点ID;
数据包地址和数据包端口;
消息内容散列;以及
如果存在,内部地址和内部端口;并且
将已打包的数据包发送到时延测量器;
计算分布散列作为所述消息内容散列的子集;并且
基于所述分布散列将所述已打包的数据包发送到时延测量器。
9.如权利要求8所述的方法,其中所述数据包地址是目的地数据包地址,所述数据包端口是目的地数据包端口,所述内部地址是内部目的地地址,并且所述内部端口是内部目的地端口。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2015/038775 WO2017003475A1 (en) | 2015-07-01 | 2015-07-01 | Latency measurer |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107534587A CN107534587A (zh) | 2018-01-02 |
CN107534587B true CN107534587B (zh) | 2020-11-20 |
Family
ID=57608601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580079072.2A Active CN107534587B (zh) | 2015-07-01 | 2015-07-01 | 时延测量***及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10425308B2 (zh) |
EP (1) | EP3281361B1 (zh) |
CN (1) | CN107534587B (zh) |
WO (1) | WO2017003475A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017015462A1 (en) | 2015-07-22 | 2017-01-26 | Dynamic Network Services, Inc. | Methods, systems, and apparatus to generate information transmission performance alerts |
US10637597B2 (en) | 2017-04-07 | 2020-04-28 | Luminous Cyber Corporation | Time determination of distributed events without distribution of reference time, phase, or frequency |
CN108616505B (zh) * | 2018-03-22 | 2021-08-06 | 新华三技术有限公司 | 信息封装方法、装置及通信设备 |
EP3547308B1 (en) * | 2018-03-26 | 2024-01-24 | Sony Group Corporation | Apparatuses and methods for acoustic noise cancelling |
US11025519B2 (en) * | 2019-04-10 | 2021-06-01 | At&T Intellectual Property I, L.P. | Systems, methods and computer-readable media for external non-intrusive packet delay measurement |
CN112929229A (zh) * | 2021-01-20 | 2021-06-08 | 北京科来数据分析有限公司 | 一种计算tcp数据包经过多数据采集点网络时延的方法 |
CN115297030B (zh) * | 2022-08-03 | 2023-10-03 | 北京网深科技有限公司 | 一种端到端网络延时监测方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1845627A (zh) * | 2005-04-22 | 2006-10-11 | 华为技术有限公司 | 一种测试基站控制器时延的***及其测试方法 |
CN103905140A (zh) * | 2012-12-25 | 2014-07-02 | 上海无线通信研究中心 | 一种融合网络架构下的端到端时延测量方法及*** |
CN103974295A (zh) * | 2013-01-30 | 2014-08-06 | 华为技术有限公司 | 链路状态检测装置及其工作方法 |
CN104735726A (zh) * | 2013-12-23 | 2015-06-24 | 中兴通讯股份有限公司 | 一种基于多种无线接入网络的业务分流传输的方法及装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6873600B1 (en) | 2000-02-04 | 2005-03-29 | At&T Corp. | Consistent sampling for network traffic measurement |
GB0022485D0 (en) * | 2000-09-13 | 2000-11-01 | Apl Financial Services Oversea | Monitoring network activity |
US6868069B2 (en) * | 2001-01-16 | 2005-03-15 | Networks Associates Technology, Inc. | Method and apparatus for passively calculating latency for a network appliance |
US6978223B2 (en) | 2001-09-06 | 2005-12-20 | Bbnt Solutions Llc | Systems and methods for network performance measurement using packet signature collection |
US7222190B2 (en) * | 2001-11-02 | 2007-05-22 | Internap Network Services Corporation | System and method to provide routing control of information over data networks |
WO2003084137A2 (en) | 2002-03-29 | 2003-10-09 | Network Genomics, Inc. | Methods for identifying network traffic flows |
US7292537B2 (en) | 2002-11-29 | 2007-11-06 | Alcatel Lucent | Measurement architecture to obtain per-hop one-way packet loss and delay in multi-class service networks |
US8208389B2 (en) | 2006-07-20 | 2012-06-26 | Cisco Technology, Inc. | Methods and apparatus for improved determination of network metrics |
JP5659125B2 (ja) * | 2011-01-26 | 2015-01-28 | アラクサラネットワークス株式会社 | 中継装置、中継方法 |
US8509072B2 (en) * | 2011-03-07 | 2013-08-13 | Comcast Cable Communications, Llc | Network congestion analysis |
US9716659B2 (en) | 2011-03-23 | 2017-07-25 | Hughes Network Systems, Llc | System and method for providing improved quality of service over broadband networks |
AU2013204757A1 (en) | 2012-06-03 | 2013-12-19 | Chronologic Pty Ltd | Synchronisation of a system of distributed computers |
US9414248B2 (en) * | 2013-03-15 | 2016-08-09 | Movik Networks, Inc. | System and methods for estimation and improvement of user, service and network QOE metrics |
JP6015509B2 (ja) * | 2013-03-19 | 2016-10-26 | 富士通株式会社 | パケット解析プログラム、パケット解析方法、パケット解析装置、およびパケット解析システム |
US9843520B1 (en) * | 2013-08-15 | 2017-12-12 | Avi Networks | Transparent network-services elastic scale-out |
US9264370B1 (en) * | 2015-02-10 | 2016-02-16 | Centripetal Networks, Inc. | Correlating packets in communications networks |
US9800482B2 (en) | 2015-04-29 | 2017-10-24 | Ixia | Signature-based latency extraction systems and related methods for network packet communications |
-
2015
- 2015-07-01 US US15/738,099 patent/US10425308B2/en active Active
- 2015-07-01 EP EP15897353.7A patent/EP3281361B1/en active Active
- 2015-07-01 WO PCT/US2015/038775 patent/WO2017003475A1/en active Application Filing
- 2015-07-01 CN CN201580079072.2A patent/CN107534587B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1845627A (zh) * | 2005-04-22 | 2006-10-11 | 华为技术有限公司 | 一种测试基站控制器时延的***及其测试方法 |
CN103905140A (zh) * | 2012-12-25 | 2014-07-02 | 上海无线通信研究中心 | 一种融合网络架构下的端到端时延测量方法及*** |
CN103974295A (zh) * | 2013-01-30 | 2014-08-06 | 华为技术有限公司 | 链路状态检测装置及其工作方法 |
CN104735726A (zh) * | 2013-12-23 | 2015-06-24 | 中兴通讯股份有限公司 | 一种基于多种无线接入网络的业务分流传输的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20180183694A1 (en) | 2018-06-28 |
EP3281361A4 (en) | 2018-03-07 |
US10425308B2 (en) | 2019-09-24 |
WO2017003475A1 (en) | 2017-01-05 |
CN107534587A (zh) | 2018-01-02 |
EP3281361B1 (en) | 2019-06-12 |
EP3281361A1 (en) | 2018-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107534587B (zh) | 时延测量***及方法 | |
KR102100069B1 (ko) | 통신시 동적 경험 관리 | |
Phemius et al. | Monitoring latency with openflow | |
US10742532B2 (en) | Non-intrusive mechanism to measure network function packet processing delay | |
CN109921962B (zh) | 带宽测量方法、装置、计算机可读存储介质和计算机设备 | |
US8229705B1 (en) | Performance monitoring in computer networks | |
BR112019009138B1 (pt) | Caracterização de aplicação que usa análise de protocolo de transporte | |
KR20170110105A (ko) | 트래픽 흐름 모니터링 | |
US20150036513A1 (en) | Multicore processing of bidirectional traffic flows | |
US20160192233A1 (en) | Congestion control for a multimedia session | |
US11102273B2 (en) | Uplink performance management | |
US10999204B2 (en) | System, apparatus, and method for traffic profiling for mobile video streaming | |
US20160212034A1 (en) | Communication management apparatus, communication system and storage medium | |
CN105634937A (zh) | 一种报文的处理方法和装置 | |
EP3484102A1 (en) | Cloud computing environment system for automatically determining over-the-top applications and services | |
US8867350B2 (en) | Method and apparatus for packet buffering measurement | |
Kocak et al. | Performance measurement of IP networks using two-way active measurement protocol | |
US11121938B2 (en) | Performance measurement in a packet-switched communication network | |
US20210315028A1 (en) | Method and network node of setting up a wireless connection | |
US10735293B2 (en) | Method and network monitoring device for estimating web page download time on a user device | |
US11677651B2 (en) | UDPING—continuous one-way monitoring of multiple network links | |
Wang et al. | TeleScope: Flow-level video telemetry using SDN | |
CN115914081A (zh) | 测量网络往返时间的方法、装置、存储介质和电子设备 | |
US20240179178A1 (en) | Control method and apparatus, computing device, and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |