CN112311614B - 评估网络节点相关传输性能的系统、方法以及相关设备 - Google Patents
评估网络节点相关传输性能的系统、方法以及相关设备 Download PDFInfo
- Publication number
- CN112311614B CN112311614B CN201910696540.0A CN201910696540A CN112311614B CN 112311614 B CN112311614 B CN 112311614B CN 201910696540 A CN201910696540 A CN 201910696540A CN 112311614 B CN112311614 B CN 112311614B
- Authority
- CN
- China
- Prior art keywords
- message
- network node
- node
- packet
- mirror image
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 178
- 238000012360 testing method Methods 0.000 claims abstract description 569
- 230000008569 process Effects 0.000 claims description 70
- 238000012545 processing Methods 0.000 claims description 67
- 238000004891 communication Methods 0.000 claims description 30
- 238000011156 evaluation Methods 0.000 abstract description 38
- 230000006855 networking Effects 0.000 abstract description 27
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000012423 maintenance Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 14
- 239000000523 sample Substances 0.000 description 13
- 229920003245 polyoctenamer Polymers 0.000 description 11
- 230000002457 bidirectional effect Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 6
- 238000007405 data analysis Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 230000001934 delay Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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/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
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- 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
-
- 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/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/70—Routing based on monitoring results
-
- 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/11—Identifying congestion
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/208—Port mirroring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/046—Network management architectures or arrangements comprising network management agents or mobile agents therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- 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/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- 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/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0882—Utilisation of link capacity
-
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
- H04L47/115—Identifying congestion using a dedicated packet
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
技术领域
本申请涉及通信技术领域,尤其涉及一种评估网络节点相关传输性能的系统、方法以及相关设备。
背景技术
网络技术的不断发展,使得当前的网络呈现出网元众多、业务和组网复杂的特点,例如各种数据中心的网络,这给网络的传输性能的评估带来了前所未有的挑战。
现有技术中,网络延迟测量和分析系统(PingMesh)可实现对待评估网络的传输性能的评估,PingMesh是指在一对服务器之间创建探测连接,以收集一对服务器之间的往返时延(round trip time,RTT),根据RTT识别出一对服务器之间的网络问题。
现有技术中,为覆盖一个组网的多条链路,则该组网一个端节点需要与该组网中的其他所有端节点建立探测连接,形成探测连接矩阵,端节点可以是服务器或者终端。这种覆盖了待评估网络中所有端节点的传输性能的评估方式,会产生较高的通信和计算开销,造成了网络有限的资源的浪费。
发明内容
本发明实施例提供了一种评估网络节点相关传输性能的系统、方法以及相关设备,其用于对网络的传输性能进行评估,以有效的提高评估精度,降低评估的通信和计算开销,从而有效的节省了用于进行传输性能评估的资源。
本发明实施例第一方面提供了一种评估网络节点相关传输性能的系统,该系统包括网络节点和与该网络节点耦接的控制节点,该网络节点属于一条路径:该网络节点用于获取测试报文,该测试报文包括与该路径对应的五元组;通过虚拟交换机处理该测试报文,以生成该测试报文对应的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置;该控制节点用于接收来自该网络节点该镜像报文,以根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能。
可以理解,在该测试报文为第一测试报文的情况下,该第一测试报文由源节点向目的节点传输,则源节点用于根据业务报文的五元组配置第一测试报文,并向下一跳网络节点转发,在该测试报文为第二测试报文的情况下,该第二测试报文由目的节点向源节点传输,则该目的节点用于根据业务报文的五元组配置第二测试报文,并向下一跳网络节点转发。
采用本方面所示的系统,测试报文能够复现业务报文的传输方向和/或该测试报文沿业务报文相反的传输方向进行传输,测试报文在传输的过程中,网络节点对测试报文进行镜像以生成镜像报文,控制节点通过对来自网络节点的镜像报文评估网络节点相关传输性能,可见,因无需对系统所包括的所有路径进行评估,仅需要对位于路径内的网络节点进行传输性能的评估,从而提高了评估的灵活性,而且降低了网络节点内的传输性能或网络节点间的传输性能的评估的通信和计算开销,有效的节省待评估网络的资源。而且因该镜像报文携带有该生成位置信息,则使得控制节点能够基于生成位置信息实现对传输性能出现问题的位置的精确定位。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,与该网络节点相关的至少一部分链路的传输性能包括该网络节点的传输性能,如该网络节点内部是否出现丢包事件、是否出现网络拥塞事件等;与该网络节点相关的至少一部分链路的传输性能还可指该网络节点和该路径中任一其他网络节点之间的链路的传输性能,如该网络节点和下一跳网络节点之间的链路是否出现丢包事件、是否出现网络拥塞事件等,又如,该网络节点所位于的整个用于传输该测试报文的路径的丢包率等。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该网络节点具体用于;通过第一报文镜像点对该测试报文进行镜像以生成第一镜像报文,该测试报文经由该第一报文镜像点流入该虚拟交换机;和/或,通过第二报文镜像点对该测试报文进行镜像以生成第二镜像报文,该测试报文经由该第二报文镜像点流出该虚拟交换机。
可以理解,该第一镜像报文携带有第一生成时间戳,该第一生成时间戳用于指示第一报文镜像点生成该第一镜像报文的时间戳,该第二镜像报文携带第二生成时间戳,该第二生成时间戳用于指示第二报文镜像点生成该第二镜像报文的时间戳;
可选的,该报文镜像点为位于该网络节点的虚拟交换机内的网桥,且作为第一报文镜像点的网桥设置在该虚拟交换机的入口处,以使报文经由该第一报文镜像点流入该虚拟交换机;作为第二报文镜像点的网桥设置在该虚拟交换机的出口处,以使报文经由该第二报文镜像点从虚拟交换机内流出。该第一镜像报文所携带的第一生成位置信息可包括用于指示第一报文镜像点的标识,该第二镜像报文所携带的该第二生成位置信息可包括用于指示该第二报文镜像点的标识,以使该控制节点根据生成位置信息的指示,确定出该镜像报文具体是在哪个报文镜像点处生成的;
可选的,该镜像报文所携带的生成位置信息还可包括用于指示该网络节点的标识,其中,用于指示网络节点的标识可为通用唯一识别码(universally uniqueidentifier,UUID)。
可见,网络节点通过其所设置的虚拟交换机的第一报文镜像点和/或第二报文镜像点对测试报文进行镜像,并将镜像报文上报给控制节点,控制节点即可通过路径上的网络节点所上报的第一镜像报文和/或第二镜像报文,评估网络节点内部是否出现丢包事件或网络拥塞事件,还可评估网络节点和下一跳网络节点之间的链路是否出现丢包事件或网络拥塞事件,以实现对待评估网络内丢包位置和/或网络拥塞位置的精确定位,该丢包位置和/或网络拥塞位置可为出现丢包事件或网络拥塞事件的网络节点,或该丢包位置和/或网络拥塞位置位于相邻的两个网络节点之间,提高了对待评估网络进行传输性能评估的效率。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,在第一目标时长内未接收到来自该网络节点的该第二镜像报文的情况下,生成第一事件信息,该第一事件信息用于指示该网络节点出现丢包事件,该第一目标时长的计时起点为该控制节点已接收的该第一镜像报文所携带的第一生成时间戳。
可见,控制节点接收到来自网络节点的第一镜像报文后,通过该第一镜像报文所携带的第一生成时间戳启动对第一目标时长的计时,并获取该第一镜像报文所携带的生成位置信息,基于该生成位置信息确定是否接收到同一网络节点上报的第二镜像报文,即该第一镜像报文所携带的该生成位置信息和该第二镜像报文所携带的该生成位置信息共同用于指示该网络节点,若控制节点在第一目标时长内未接收到同一网络节点上报的第二镜像报文,则控制节点确定该网络节点内出现丢包事件,从而实现了对网络节点内部丢包事件的精确定位,以实现对网络节点内部的传输性能的评估,且通过第一镜像报文所携带的第一生成时间戳识别网络节点内部是否出现丢包事件的判断,降低了对待评估网络传输性能评估的难度,提高了传输性能评估的效率。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该系统还包括在该路径中,该网络节点的下一跳网络节点;该网络节点还用于向该下一跳网络节点发送处理后的该测试报文;该下一跳网络节点用于接收来自该网络节点的该测试报文,基于该测试报文生成第三镜像报文,以及向该控制节点发送该第三镜像报文;该控制节点还用于:在第二目标时长内未接收到来自该下一跳网络节点的该第三镜像报文的情况下,生成第二事件信息,该第二事件信息用于指示该网络节点和该下一跳网络节点之间的链路出现丢包事件,该第二目标时长的计时起点为该控制节点从该网络节点已接收的该第二镜像报文所携带的第二生成时间戳,该第二镜像报文所携带的该生成位置信息用于指示该网络节点,该第三镜像报文所携带的位置信息用于指示该下一跳网络节点。
可见,控制节点接收到来自网络节点的第二镜像报文后,通过该第二镜像报文所携带的第二生成时间戳启动对第二目标时长的计时,并获取该第二镜像报文所携带的生成位置信息,基于该生成位置信息确定是否接收到该网络节点的下一跳网络节点上报的第三镜像报文,即该第二镜像报文所携带的该生成位置信息和该第三镜像报文所携带的该生成位置信息指示相邻的两个网络节点,若控制节点在第二目标时长内未接收到下一跳网络节点上报的第三镜像报文,则控制节点确定网络节点和下一跳网络节点之间的链路出现丢包事件,从而实现了对网络节点间的链路的丢包事件的精确定位,以实现对网络节点间的链路的传输性能的评估,且通过第二镜像报文所携带的第二生成时间戳识别网络节点间的链路是否出现丢包事件的判断,降低了对待评估网络传输性能评估的难度,提高了传输性能评估的效率。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,该第一值和该第二值共同指示一个报文为测试报文,该第二标识字段的比特长度大于该第一标识字段的长度。
可见,通过取第一值的第一标识字段和取第二值的第二标识字段共同指示一个报文为测试报文,以实现对测试报文的两级匹配,实现了对测试报文的精确识别,有效的避免对测试报文进行误识别的噪声。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该第一标识字段为报文头部的预匹配比特字段,该第二标识字段位于该测试报文的有效载荷数据内部。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,网络节点接收测试报文具体用于:基于取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;基于取第二值的第二标识字段,在至少一个预匹配报文中,确定出测试报文。
可见,因第一标识字段的比特长度小于第二标识字段的比特长度,在报文的第一标识字段取值不为第一值时,不会耗费网络节点的资源对报文是否为测试报文继续进行检测,通过第一标识字段可以过滤大多数和测试报文无关的业务报文,从而节省了网络节点的资源,有效的降低对测试报文识别的开销。在预匹配报文的第一标识字段的取值为第一值时,网络节点才会判断报文的第二标识字段的取值是否为第二值,只有在预匹配报文的第二标识字段的取值为第二值,网络节点才会确定该预匹配报文为测试报文,因第二标识字段的比特长度比较长,通过第二标识字段对测试报文的识别避免了误识别的情况的出现,实现了对测试报文的精确识别,完全消除了对测试报文进行误识别的噪声。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该控制节点获取第一目标时延,该第一目标时延为该第二镜像报文所携带的该第二生成时间戳和该第一镜像报文所携带的第一生成时间戳之间的差值。
可见,通过第一目标时延能够确定出网络节点内部是否出现网络拥塞事件,从而实现了对网络节点内部传输性能的评估,且通过第一镜像报文所携带的第一生成时间戳和第二镜像报文所携带的第二生成时间戳评估网络节点内部的传输性能,降低了对网络节点内部传输性能评估的难度,以提高了评估的效率和准确性。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该控制节点根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能包括:在该第一目标时延大于或等于第一超时阈值的情况下,该控制节点生成第一拥塞指示信息,该第一拥塞指示信息用于指示该网络节点内出现网络拥塞事件。
可见,控制节点能够对已获取到的第一目标时延和第一超时阈值进行比对,从而判断出网络节点内部是否出现网络拥塞事件,若是,则控制节点直接生成该第一拥塞指示信息,以通过第一拥塞指示信息直接提示运维人员,该网络节点内出现网络拥塞事件,提高了对网络节点内网络拥塞的定位效率和准确性。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该路径还包括该网络节点的下一跳网络节点,该方法还包括:该控制节点获取第二目标时延,该第二目标时延为该下一跳网络节点所发送的第三镜像报文所携带的生成时间戳和该网络节点所发送的该第二镜像报文所携带的该第二生成时间戳之间的差值。
可见,通过第二目标时延能够确定出网络节点间是否出现网络拥塞事件,从而实现了对网络节点和下一跳网络节点之间的链路的传输性能的评估,且通过网络节点的第二镜像报文和下一跳网络节点的第三镜像报文进行评估,降低了对网络节点和下一跳网络节点之间的链路的传输性能评估的难度,以提高了评估的效率和准确性。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该控制节点根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能包括:在该第二目标时延大于或等于第二超时阈值的情况下,该控制节点生成第二拥塞指示信息,该第二拥塞指示信息用于指示该网络节点和该下一跳网络节点之间的链路出现网络拥塞事件。
可见,控制节点能够对已获取到的第二目标时延和第二超时阈值进行比对,从而判断出网络节点和下一跳网络节点之间的链路是否出现网络拥塞事件,若是,则控制节点直接生成该第二拥塞指示信息,以通过第二拥塞指示信息直接提示运维人员,网络节点和下一跳网络节点之间的链路出现网络拥塞事件,提高了对网络节点间的网络拥塞事件的定位效率和准确性。
基于本发明实施例第一方面,本发明实施例第一方面的一种可选的实现方式中,该生成位置信息包括该网络节点的通用唯一识别码UUID,该方法还包括:该控制节点根据已接收到的来自该路径中的每一该网络节点的该镜像报文,获取该路径中的每一该网络节点的该UUID。
可见,控制节点能够针对网络节点上报的测试报文确定出该测试报文的流量地图,即网络根据用于转发该测试报文的每一网络节点所上报的镜像报文所包括的生成位置信息,能够确定出测试报文传输过程中所经过的每一网络节点的具体网元实例,以使控制节点能够精确的掌握源虚拟机和目的虚拟机之间进行传输的报文流向,以便于对待评估网络进行流量调度、拥塞控制等,提高了对待评估网络进行控制的效率。
本发明实施例第二方面提供了一种评估网络节点相关传输性能的方法,该方法用于网络节点,该网络节点属于一条从源节点到目的节点的路径,该方法包括:该网络节点获取测试报文,该测试报文包括与该路径对应的五元组;该网络节点通过虚拟交换机处理该测试报文,以生成该测试报文对应的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置,该镜像报文用于评估该路径中,与该网络节点相关的至少一部分链路的传输性能;该网络节点向控制节点发送该镜像报文。
本方面所示的具体执行过程以及有益效果的说明,请详见上述第一方面所示,具体不做赘述。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,与该网络节点相关的至少一部分链路的传输性能包括该网络节点的传输性能,和/或,该网络节点和该路径中任一其他网络节点之间的链路的传输性能。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,该网络节点通过虚拟交换机处理该测试报文,以生成该测试报文的镜像报文包括:该网络节点的第一报文镜像点对该测试报文进行镜像以生成第一镜像报文,该测试报文经由该第一报文镜像点流入该虚拟交换机;和/或,该网络节点的第二报文镜像点对该测试报文进行镜像以生成第二镜像报文,该测试报文经由该第二报文镜像点流出该虚拟交换机。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,第一值和第二值共同指示一个报文为测试报文,第二标识字段的比特长度大于第一标识字段的长度。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,第一标识字段为报文头部的预匹配比特字段,第二标识字段位于测试报文的有效载荷数据内部。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,网络节点接收测试报文具体包括:网络节点基于取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;网络节点基于取第二值的第二标识字段,在至少一个预匹配报文中,确定出测试报文。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,该网络节点为该目的节点,则该网络节点获取测试报文之后,该方法还包括:该网络节点接收到第一测试报文的情况下,该网络节点向源节点发送第二测试报文,该第一测试报文携带的源地址为该源节点的地址且携带的目的地址为该目的节点的地址,该第二测试报文携带的源地址为该目的节点的地址且携带的目的地址为该源节点的地址。
可见,本方面所示的双向测试模式下,有效的增加了对路径上各网络节点的传输性能和相邻的两个网络节点之间的传输性能进行评估的次数,从而提高了对网络节点相关传输性能评估的准确性,提高了对丢包位置和/或网络拥塞位置进行定位的准确性,有效的避免了误判的情况,且可避免评估的过程中遗漏丢包位置和/或网络拥塞位置的情况的出现。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,若该网络节点为目的节点,该方法还包括:该网络节点的第二报文镜像点结束第一测试报文的转发。
可见,在路径上,第一测试报文沿业务报文的传输方向进行传输,在第一测试报文经由目的节点的第二报文镜像点处实现了对第一测试报文进行镜像以生成第二镜像报文后,该第二报文镜像点结束第一测试报文的转发,从而有效的避免了第一测试报文转发至目标节点的虚拟机的情况,以使虚拟机不会对第一测试报文进行处理,避免了虚拟机对第一测试报文进行处理的过程中所产生的噪声。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,若该网络节点为源节点,该方法还包括:该网络节点的第二报文镜像点结束该第二测试报文的转发。
在路径上,第二测试报文的传输方向与业务报文的传输方向相反,在第二测试报文经由源节点的第二报文镜像点处实现了对第二测试报文进行镜像以生成第二镜像报文后,该第二报文镜像点结束第二测试报文的转发,从而有效的避免了第二测试报文转发至源节点的虚拟机的情况,以使虚拟机不会对第二测试报文进行处理,避免了虚拟机对第二测试报文进行处理的过程中所产生的噪声。
基于本发明实施例第二方面,本发明实施例第二方面的一种可选的实现方式中,该网络节点通过虚拟交换机处理该测试报文,以生成该测试报文的镜像报文之后,该方法还包括:该网络节点的虚拟交换机根据该测试报文包括的五元组,向该路径中,该网络节点的下一跳网络节点转发该测试报文。
可见,网络节点的虚拟交换机基于测试报文所包括的五元组,向下一跳网络节点转发,从而使得测试报文能够沿业务报文的传输方向进行传输,或沿业务报文相反的传输方向进行传输,以使控制节点通过测试报文能够评估业务报文在传输过程中出现的传输问题,有效的对网络节点的传输性能进行精确的评估。
本发明实施例第三方面提供了一种评估网络节点相关传输性能的方法,该方法用于控制节点,该控制节点与网络节点耦接,该网络节点属于一条从源节点到目的节点的路径,该方法包括:该控制节点接收来自该网络节点的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置;该控制节点根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能。
本方面所示的控制节点执行评估网络节点相关传输性能的方法的具体过程以及有益效果的具体说明,请详见上述第一方面所示,具体不做赘述。
本发明实施例第四方面提供了一种网络节点,该网络节点属于一条从源节点到目的节点的路径,该网络节点包括:获取单元,用于获取测试报文,该测试报文包括与该路径对应的五元组;处理单元,用于通过虚拟交换机处理该测试报文,以生成该测试报文对应的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置,该镜像报文用于评估该路径中,与该网络节点相关的至少一部分链路的传输性能;发送单元,用于向控制节点发送该镜像报文。
本方面所示的网络节点执行评估网络节点相关传输性能的方法的具体过程以及有益效果的具体说明,请详见上述所示,具体不做赘述。
基于本发明实施例第四方面,本发明实施例第四方面的一种可选的实现方式中,该处理单元具体用于:通过该网络节点的第一报文镜像点对该测试报文进行镜像以生成第一镜像报文,该测试报文经由该第一报文镜像点流入该虚拟交换机;和/或,通过该网络节点的第二报文镜像点对该测试报文进行镜像以生成第二镜像报文,该测试报文经由该第二报文镜像点流出该虚拟交换机。
基于本发明实施例第四方面,本发明实施例第四方面的一种可选的实现方式中,该测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,该第一值和该第二值共同指示一个报文为测试报文,该第二标识字段的比特长度大于该第一标识字段的长度。
基于本发明实施例第四方面,本发明实施例第四方面的一种可选的实现方式中,该第一标识字段为报文头部的预匹配比特字段,该第二标识字段位于该测试报文的有效载荷数据内部。
基于本发明实施例第四方面,本发明实施例第四方面的一种可选的实现方式中,该获取单元还用于,基于该取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;并基于取第二值的第二标识字段,在该至少一个预匹配报文中,确定出该测试报文。
本发明实施例第五方面提供了一种控制节点,该控制节点与网络节点耦接,该网络节点属于一条从源节点到目的节点的路径,该控制节点包括:接收单元,用于接收来自该网络节点的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置;处理单元,用于根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能。
本方面所示的控制节点执行评估网络节点相关传输性能的方法的具体过程以及有益效果的具体说明,请详见上述所示,具体不做赘述。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,该接收单元具体用于:接收来自该网络节点的第一镜像报文,该第一镜像报文所携带的第一生成位置信息用于指示该第一镜像报文在该网络节点的第一报文镜像点处生成,该第一镜像报文所携带的第一生成时间戳用于指示该第一报文镜像点生成该第一镜像报文的时间戳;和/或,接收来自该网络节点的第二镜像报文,该第二镜像报文所携带的第二生成位置信息用于指示该第二镜像报文在该网络节点的第二报文镜像点处生成,该第二镜像报文所携带的第二生成时间戳用于指示该第二报文镜像点生成该第二镜像报文的时间戳。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,该处理单元具体用于,在第一目标时长内未接收到来自该网络节点的该第二镜像报文的情况下,生成第一事件信息,该第一事件信息用于指示该网络节点出现丢包事件,该第一目标时长的计时起点为该接收单元已接收的该第一镜像报文所携带的该第一生成时间戳,且该第一镜像报文所携带的该第一生成位置信息和该第二镜像报文所携带的该第二生成位置信息共同用于指示该网络节点。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,该路径中还包括该网络节点的下一跳网络节点,该处理单元具体用于,在第二目标时长内未接收到来自该下一跳网络节点的第三镜像报文的情况下,生成第二事件信息,该第二事件信息用于指示该网络节点和该下一跳网络节点之间的链路出现丢包事件,该第二目标时长的计时起点为该接收单元从该网络节点已接收的该第二镜像报文所携带的第二生成时间戳,该第二镜像报文所携带的该生成位置信息用于指示该网络节点。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,处理单元还用于,获取第一目标时延,第一目标时延为同一网络节点发送的第二生成时间戳和第一生成时间戳之间的差值。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,处理单元具体用于,在第一目标时延大于或等于第一超时阈值的情况下,生成第一拥塞指示信息,第一拥塞指示信息用于指示网络节点内出现网络拥塞事件。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,路径包括相邻的网络节点和下一跳网络节点,下一跳网络节点为网络节点的下一跳网络节点,处理单元还用于,获取第二目标时延,第二目标时延为下一跳网络节点发送的第三镜像报文所携带的生成时间戳和网络节点发送的第二生成时间戳之间的差值。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,处理单元具体用于,在第二目标时延大于或等于第二超时阈值的情况下,生成第二拥塞指示信息,第二拥塞指示信息用于指示网络节点和下一跳网络节点之间的链路出现网络拥塞事件。
基于本发明实施例第五方面,本发明实施例第五方面的一种可选的实现方式中,该生成位置信息包括该网络节点的通用唯一识别码UUID,处理单元具体用于,根据已接收到的来自该路径中的每一该网络节点的该镜像报文,获取该路径中的每一该网络节点的该UUID。
本发明实施例第六方面提供了一种用于评估网络节点相关传输性能的设备,该设备包括处理电路、存储介质和通信接口,所述处理电路用于执行所述存储介质所存储的指令,以使所述设备作为网络节点执行第一方面或执行第二方面所示的方法。
本发明实施例第七方面提供了一种用于评估网络节点相关传输性能的设备,该设备包括处理电路、存储介质和通信接口,所述处理电路用于执行所述存储介质所存储的指令,以使所述设备作为控制节点执行第一方面或执行第三方面所示的方法。
本发明实施例第八方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行第一方面、第二方面或第三方面中任一方面所示的方法。
本发明实施例第九方面提供了一种计算机程序产品,计算机程序产品包括计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行第一方面、第二方面或第三方面中任一方面的方法。
附图说明
图1为本申请所提供的组网的一种网络架构示意图;
图2为本申请所提供的组网所包括的虚拟网络的一种局部网络架构示意图;
图3为现有技术所提供的网络延迟测量和分析系统的一种网络架构示意图;
图4为本申请所提供的虚拟网络的一种网络架构示意图;
图5为本申请所提供的评估网络节点相关传输性能的方法的一种实施例步骤流程图;
图6为本申请所提供的虚拟网络的另一种网络架构示意图;
图7为本申请所提供的评估网络节点相关传输性能的方法的另一种实施例步骤流程图;
图8为本申请所提供的源节点的一种实施例结构示意图;
图9为本申请所提供的转发节点的一种实施例结构示意图;
图10为本申请所提供的目的节点的一种实施例结构示意图;
图11为本申请所提供的评估网络节点相关传输性能的方法的另一种实施例步骤流程图;
图12为本申请所提供的评估网络节点相关传输性能的方法的另一种实施例步骤流程图;
图13为本申请所提供的组网的另一种网络架构示意图;
图14为本申请所提供的评估网络节点相关传输性能的方法的另一种实施例步骤流程图;
图15为本申请所提供的第一测试报文的报文结构的一种实施例结构示意图;
图16为本申请所提供的组网的另一种网络架构示意图;
图17为本申请所提供的网络节点的一种实施例结构示意图;
图18为本申请所提供的控制节点的一种实施例结构示意图;
图19为本申请所提供的用于执行评估网络节点相关传输性能的方法的设备的一种实施例结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请提供了一种评估网络节点相关传输性能的方法,以下首先结合图1所示对本申请所示的方法所应用的组网的网络架构进行说明:本实施例对该组网的具体网络类型不做限定,例如该组网可为数据中心网络。本实施例以该组网为数据中心网络为例进行示例性说明,如图1所示,数据中心网络100包括至少一个数据中心网络管理器110(datacenter network manager,DCNM),DCNM110通过网络120管理叶节点(leaf)交换机和脊节点(Spine)交换机。其中的数据中心网络管理器110可以采用服务器(server)的形式实现,上面集成负责管理网络的应用(App)。每台Leaf交换机可以采用机架上交换机(ToR Switch)形式来实现,即每台Leaf交换机均可位于一个机架单元(rack unit,或者称为Rack)中。
以图1为例,Leaf125和Leaf130这两台Leaf交换机可位于一个机架单元中,该机架单元能够容纳一个或多个服务器(如图1中的服务器135、服务器160或服务器140)。每个Leaf交换机被配置用于路由或转发该机架单元中的服务器和位于其他机架单元中的服务器之间的通信消息。每一个服务器(以图1中,和Leaf交换机125关联的服务器135为例)可以容纳一个或多个虚拟交换机(virtual switch)145。虚拟交换机以及虚拟机被创建并且运行在每个服务器上的虚拟层(Hypervisor)155,虚拟层155实现服务器上物理资源的虚拟化以及调度,供一个或者多个虚拟机使用。
每个虚拟交换机145可以被配置用来管理一个由虚拟机组成的虚拟机网络和/或虚拟网络中虚拟机之间的通信。每一台虚拟交换机145采用运行在服务器135的软件来实现。由此,虚拟交换机145能够实现物理交换机的功能。类似的,每一个虚拟机150采用运行在服务器135的软件来实现。对于数据中心网络100,可以存在任意数量的服务器,每台服务器可以容纳任意数量的虚拟交换机以及任意数量的虚拟机。
可选的,图1所示的数据中心网络还可包括对所接收到的业务报文进行转发的服务器160,例如若服务器135所承载的虚拟机150向服务器140所承载的虚拟机141发送业务报文,则服务器140可对虚拟机150所发出的业务报文向虚拟机141进行转发,如图1所示可知,服务器160仅需要对业务报文进行转发,则服务器160内设置有虚拟交换机161,而无需设置虚拟机。
服务器135以及与之关联的Leaf交换机125被放置于一个机架单元中,这一点未在图1中示出。其他的服务器也可以被容纳于机架中。Leaf交换机125以及Leaf交换机130负责对机架中的服务器(包括运行在服务器之上的虚拟机)作为发送方或者接收方的通信信息进行路由处理或者转发处理。具体的,架上交换机指的是交换机125和130,以及图1中的其他的Leaf交换机。Leaf交换机125和130能够被用来提供机架中的服务器、虚拟机以及虚拟交换机通信的备份以及容错。由此,Leaf交换机125和Leaf交换机130是对等的两个交换机。这些Leaf交换机以及Spine交换机可以被配置用于和数据中心网络管理器110通信,该数据中心网络管理器110可以用于通过控制Spine交换机以及Leaf交换机而管理不同机架内的服务器(物理机或虚拟机)之间的通信。
随着数据中心网络的大规模云化部署,如图1所示的数据中心网络的网络层次被分为下层承载网络(underlay network)和上层虚拟网络。其中,承载网络主要由物理设备构成(即如图1所示的脊节点和叶节点),虚拟网络主要由虚拟设备构成(如图1所示的位于服务器内的各虚拟交换机、虚拟机)。为了充分利用资源,租户的业务均在上层虚拟网络中运行,通过不同的虚拟网络实现租户资源隔离,为更好的理解,以下结合图2所示对由虚拟设备构成的虚拟网络的结构进行示例性说明,其中,图2为云计算管理平台(OpenStack)中典型的虚拟网络结构。
一般的,OpenStack中虚拟网络的实现包括虚拟局域网(virtual local areanetwork,VLAN)、通用路由封装(generic routing encapsulation,GRE)、虚拟扩展局域网(virtual extensible lan,Vxlan)等模式,图2所示的示例以OpenStack中虚拟网络实现为Vxlan为例进行示例性说明;继续如图2所示,OpenStack包括计算节点(computing nodeagent,CNA)201和网络节点(network node)202,需明确的是,图2以一个计算节点201和一个网络节点202为例进行示例性说明,对OpenStack所包括的计算节点201和网络节点202的具体数量不做限定。
在OpenStack中,所有网络有关的逻辑管理均在网络节点202中实现,例如域名系统(domain name system,DNS)、动态主机设置协议(dynamic host configurationprotocol,DHCP)以及路由等。计算节点201上只需要对所部属的虚拟机提供基本的网络功能支持,包括隔离不同租户的虚拟机和进行安全策略管理(security group)等。
继续以图2所示为例,计算节点201上包括两台虚拟机,即第一VM和第二VM,计算节点201还包括多个网桥(bridge),bridge用于表示一个能连接不同网络设备且由软件代码实现的虚拟设备;计算节点201内部的不同的虚拟机通过对应的安全网桥(qbr)连接到集成网桥(br-int)上,具体的,第一VM通过对应的第一安全网桥连接到集成网桥上,第二VM通过对应的第二安全网桥连接到集成网桥上,集成网桥再经过通道网桥连接到承载计算节点201的物理主机外部网络。
例如,第一安全网桥接收到对应的第一VM发送的业务报文后,会为业务报文分配内部vlan号,集成网桥用于实现计算节点201内部网络功能的网桥,br-int作为一个正常的二层交换机使用,用于根据业务报文所携带的vlan号和介质访问控制(media accesscontrol,MAC)地址对业务报文进行转发。
与br-int连接有通道网桥(br-tun),br-tun与其他物理机上的br-tun通信,构成一个统一的通信层。通过br-tun实现网络节点和计算节点、不同的计算节点和计算节点之间会以点对点的方式形成通信网络,互相之间通过这个网络进行大量的数据交换,这样,网络节点和计算节点之间的通信就此打通了。
网络节点202包括三个网桥,即br-tun、br-int以及外部网桥(br-ex),网络节点202的br-tun从计算节点201的br-tun接收业务报文,并将该业务报文转发给网络节点202的br-int,与br-int连接的动态主机设置协议服务用于对业务报文提供DHCP服务,br-int将从br-tun接收到的业务报文转发给路由服务,路由服务为业务报文配置该业务报文所要访问的外部网络的地址等,路由服务再将业务报文发送给br-ex,br-ex用于连接外部网络203,因此在br-ex接收到业务报文的情况下,br-ex将该业务报文向外部网络203发送,由此,实现了计算节点上的虚拟机与外部网络203之间的通信。
基于图1和图2所示可知,数据中心网络有众多的物理设备(如上述所示的服务器)和众多的虚拟设备(若上述所示的网桥、虚拟机等),租户的业务通过不同的虚拟网络实现租户业务的隔离,具体的,在计算节点201和网络节点202内部,安全网桥通过对不同的租户业务分配不同的VLAN号以实现在节点内部对不同的租户业务的隔离,而在节点外部,通过虚拟扩展局域网(virtual extensible lan,VxLAN)实现对不同的租户的业务的隔离。因不同的租户对应的虚拟网络不同,在大量的租户使用数据中心网络的情况下,数据中心网络的组网会相当的复杂,这给数据中心网络的运维和传输性能的评估带来巨大的挑战,具体如下:
数据中心网络中同时包含物理设备和虚拟设备,当源虚拟机需要访问目的虚拟机时,在源虚拟机和目的虚拟机之间的端到端连接会跨越多个不同层次的组件,如该端到端连接会包括多个网络节点、多个物理交换机等,以使该端到端连接的网络规模大,复杂度极高,一旦该端到端连接出现故障,则因端到端连接之间潜在的故障点多,则故障定位的难度和开销均非常大。
针对数据中心网络的“灰度异常”的评估和定界缺乏有效手段,“灰度异常”是指,数据中心网络中的同一个网元,仅针对部分报文发生异常行为,对其他大多数报文可以正确处理。因数据中心网络的“灰度异常”的现象,数据中心网络中的随机丢包是最常见的异常,复现度低,表象不明显,但影响广泛。目前,通过一线运维人员人工进行“灰度异常”的排查,使得对“灰度异常”的排查难度大、效率极低,而且对“灰度异常”的定位周期长。
随着公有云业务的大规模部署,数据中心网络中涵盖的角色不断增加。应用、网络或者用户自身操作失误,可能产生相同的异常表现,所以只看表象,难以诊断出故障的原因。据统计,仅有50%的数据中心网络的内部异常是由于网络问题产生的,这要求在错综复杂的数据中心网络中,快速诊断出异常的原因,排查出是否为本地网络问题,可见,在数据中心网络中诊断出故障的原因的难度非常大。
为实现对数据中心网络的故障的诊断,目前提供了一种PingMesh技术,PingMesh是一种针对数据中心网络的故障测试工具。PingMesh在服务器中运行其特定的代理(Agent)程序,两个服务器之间通过各自配置的代理模拟传输控制协议(transfer controlprotocol,TCP)通信(或称为探测连接),收集两个代理之间的往返时延(RTT)数据,以此测试一对代理之间的网络问题。
以下结合图3所示对PingMesh所包括的组件的结构进行示例性说明:PingMesh由三个主要组件构成:
控制节点301:为集中式控制组件,用于计算数据中心网络的网络全局拓扑,控制节点301设置于用于执行控制功能的服务器或服务器集群中,网络全局拓扑是指数据中心网络内的所有代理的探测连接矩阵,即每个TOR交换机下的服务器中,控制节点301选择一个服务器的代理作为该ToR交换机的代表,与其他ToR交换机之下的代理代表通信,以图3所示为例,控制节点301在不同的TOR交换机下所选择的服务器通过各自承载的代理302和代理303进行通信。为了覆盖数据中心网络中所有链路,一个TOR交换机下的代理会与数据中心网络中的其他所有TOR交换机下的代理分别建立通信双工连接,其中,一对代理之间所建立的通信双工连接是指,一对代理之间建立两个探测连接,两个代理分别作为发起端。控制节点301用于把每个代理需要通信的对端代理记录在因特网包探索器(packet internetgroper,ping)列表(list)中,并下发给该代理。
代理(Agent)为分布式组件,每个服务器上都运行一个代理进程,一个代理被选定为所在ToR交换机下的代表代理之后,向ping list上所包括的所有代理发起探测连接,继续以图3所示为例,代理302根据ping list向代理303发送建立探测连接报文(probepacket),代理303收到该probe packet会向代理302返回一个对应的响应报文(replypacket),代理302根据reply packet计算出RTT数据。探测连接是周期性发起的,代理会周期性地把本地收集的RTT数据上报给数据存储和分析单元304。
数据存储和分析单元304:数据存储和分析单元304是一个集中式的组件,数据存储和分析单元304设置于用于执行控制功能的服务器或服务器集群中,用于存储各个代理上报的RTT数据,以计算出网络丢包率,并以此判断是否有网络故障。
PingMesh并不直接测量丢包,而是通过RTT数据间接计算一对代理之间的丢包率。具体为:代理设定探测连接报文的超时阈值(Timeout)初始值为3秒,最多重传2次,每次重传,都把Timeout倍增。因此,PingMesh根据最终RTT的值,推测发生的几次重传。例如,测得RTT数据为3-9秒,则发生1次重传;RTT数据为9-21s,则发生2次重传。进而通过如下公式计算丢包率:
其中,probes_with_3s_rtt是RTT数据位于[3s,9s)区间内的次数,probes_with_9s_rtt是RTT数据位于[9s,21s)区间内的次数,total_successful_probes是成功返回响应报文的总次数。PingMesh预先指定了测试网络故障的规则,如网络中丢包率大于0.1%数据存储和分析单元304判定网络存在问题。
以下对通过PingMesh对数据中心网络进行故障诊断的技术缺陷进行说明:
PingMesh实现的不同的TOR交换机之间的网络之间的测量,PingMesh只能测试到ToR交换机以上的网络故障,无法诊断ToR所覆盖的各个服务器内部的虚拟网络故障,即PingMesh无法诊断数据中心网络所包括的各节点(如计算节点、网络节点)内部的网络异常,可见,PingMesh测试粒度粗,无法覆盖服务器内部的虚拟网络的测试:在云数据中心中,计算节点内部的虚拟网络中,存在大量虚拟网桥和容器化的网元,PingMesh无法测试这部分虚拟网络异常。
PingMesh只在服务器端侧测量探测连接的RTT数据,通过RTT数据判断一对代理之间的网络故障,而一对代理之间的网络仍然处于“黑盒”状态,因即使发现了一对代理之间的连接异常,但是无法准确的定位一对代理之间的通信路径上的丢包位置和/或网络拥塞位置的具体位置,可见,PingMesh无法准备的测试出网络中的丢包位置和/或网络拥塞位置的位置。
通过PingMesh,TOR交换机下的代理需要与数据中心网络所包括的其他所有TOR交换机下的代理建立探测连接以形成探测连接矩阵,该探测连接矩阵覆盖了数据中心网络所包括的所有TOR交换机,这种“全覆盖”式的评估网络节点传输性能的方式,若需要获取两个服务器之间的网络故障,需要对数据中心网络进行“全覆盖”式的检测,会产生较高的通信和计算开销,在业务优先的数据中心网络中,会抢占有限的业务资源,造成了数据中心网络的资源的浪费。
本申请提供了一种能够有效的节省组网资源的评估网络节点相关传输性能的方法,为更好的理解本实施例所示的方法,以下结合图4所示首先对本实施例所示的方法所应用的组网的虚拟网络的网络架构进行示例性说明:
如图4所示,组网400包括多条路径,所示的评估网络节点相关传输性能的方法用于对多条路径中的任一路径进行评估,其中,待评估的路径包括多个网络节点,多个网络节点包括依次耦接的源节点401、至少一个转发节点402和目的节点403,组网400还包括控制节点404,其中,控制节点404分别与各网络节点耦接。源节点401和目的节点403内均承载有一个或多个虚拟机,对源节点401和目的节点403的具体说明,请详见图2所示的计算节点的具体说明,具体不做赘述;本实施例对转发节点402的具体节点类型以及数量不做限定,只要转发节点402能够实现源节点401和目的节点403之间的业务报文的转发即可,对转发节点402的具体说明,可参见图2所示的网络节点的具体说明,具体不做赘述。本实施例所示的控制节点404的宿主机可为单独的一个计算机设备,或者计算机设备集群,该控制节点404也为该计算机设备中的部分器件,例如集成电路芯片。在实现过程中,本实施例所示的方法由控制节点执行的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
为实现本实施例所示的评估网络节点相关传输性能的方法,则本实施例可在各网络节点中配置有代理(Agent),其中,本实施例所示的各网络节点所包括的代理和虚拟交换机为相互独立的两个进程。
继续如图4所示,源节点401、转发节点402和目的节点403中每个网络节点中还配置有虚拟交换机,可选的,各网络节点内部可配置有一个或多个虚拟交换机,本实施例以各网络节点配置有一个虚拟交换机为例进行示例性说明。具体的,各网络节点中的虚拟交换机以及虚拟机被创建并且运行在每个网络节点上的虚拟层(Hypervisor),虚拟层实现网络节点上物理资源的虚拟化以及调度,供一个或者多个虚拟机使用。
本实施例对该组网400的具体网络类型不做限定,例如,该组网400可为数据中心网络。
基于图4所示的虚拟网络的架构,以下结合图5所示对本实施例所示的评估网络节点相关传输性能的方法的具体执行流程进行示例性说明:
步骤501、网络节点获取测试报文。
本实施例所示的网络节点可为图4所示的源节点、转发节点和目的节点中的任一节点,具体节点类型在本实施例中不做限定。
本实施例所示的测试报文为与业务报文对应的报文,业务报文为位于源节点内的源虚拟机向位于目的节点内的目的虚拟机所发送的报文,本实施例对业务报文所实现的业务类型不做限定,例如,通过业务报文实现源节点的源虚拟机访问目的节点的目的虚拟机,又如,通过业务报文实现对源节点的源虚拟机和目的节点的目的虚拟机之间的网络的因特网包探索器(packet internet groper,Ping)测试等。在确定业务报文出现问题时,如从源节点的源虚拟机向目的节点的目的虚拟机所发送的业务报文出现丢包,时延过长等,可针对业务报文配置测试报文。
可选的,与业务报文对应的测试报文可为第一测试报文,具体的,第一测试报文所包括的五元组用于标识业务报文所传输的路径,更具体的,第一测试报文所包括的源地址为源节点的网络之间互连的协议(internet protocol,IP)地址,目的地址为目的节点的IP地址,源端口为源节点的端口,目的端口为目的节点的端口,可见,第一测试报文沿业务报文传输的路径进行传输,以复现业务报文在源节点和目的节点之间的传输。
可选的,与业务报文对应的测试报文可为第二测试报文,具体的,第二测试报文所包括的五元组用于标识与业务报文所传输的路径的相反的路径,更具体的,第二测试报文所包括的源地址为目的节点的IP地址,目的地址为源节点的IP地址,源端口为目的节点的端口,目的端口为源节点的端口,可见,第二测试报文沿与业务报文传输的相反方向进行传输。
步骤502、网络节点通过虚拟交换机处理测试报文。
以下对网络节点处理测试报文的具体过程进行示例性说明:
网络节点所包括的虚拟交换机包括有一个或多个报文镜像点,报文镜像点用于对测试报文进行镜像以生成镜像报文,对虚拟交换机的具体说明,请详见上述所示,具体不做赘述,本实施例所示的报文镜像点可为该虚拟交换机所包括的虚拟网桥。
具体的,本实施例所示的报文镜像点所生成的该镜像报文包括生成时间戳,该生成时间戳用于指示该报文镜像点生成该镜像报文的生成时间的时间戳;
本实施例所示的该镜像报文还包括生成位置信息,该生成位置信息用于指示生成该镜像报文的位置,可选的,该生成位置信息用于指示生成该镜像报文的网络节点,例如,该生成位置信息包括生成该镜像报文的网络节点的UUID;可选的,该生成位置信息用于指示生成该镜像报文的报文镜像点的标识,例如,若该报文镜像点位于该虚拟交换机的入口网桥,该虚拟交换机的入口网桥是指报文经由该网桥流入该虚拟交换机,则本实施例所示的该生成位置信息包括该入口网桥的标识,该入口网桥的标识可为字符“in”,又如,若该报文镜像点位于该虚拟交换机的出口网桥,该虚拟交换机的出口网桥是指报文经由该网桥从虚拟交换机中流出,则本实施例所示的该生成位置信息包括该出口网桥的标识,该出口网桥的标识可为字符“out”。
可选的,若测试报文为第一测试报文,且网络节点为源节点或转发节点,则网络节点的虚拟交换机根据第一测试报文包括的五元组,向下一跳网络节点转发第一测试报文,若网络节点为目的节点,则网络节点的虚拟交换机根据第一测试报文的五元组结束对第一测试报文进行转发。
可选的,若测试报文为第二测试报文,且网络节点为目的节点或转发节点,则网络节点的虚拟交换机根据第二测试报文包括的五元组,向下一跳网络节点转发第二测试报文,若网络节点为源节点,则网络节点的虚拟交换机根据第二测试报文的五元组结束对第二测试报文进行转发。
步骤503、网络节点向控制节点发送镜像报文。
本实施例中,在网络节点生成镜像报文后,网络节点可将镜像报文发送给控制节点,可选的,若该镜像报文包括该网络节点的UUID,则该镜像报文的UUID可由报文镜像点配置在该镜像报文中;还可选的,该网络节点的报文镜像点可将镜像报文发送给该网络节点的代理,由该代理将网络节点的UUID配置在该镜像报文中。
步骤504、控制节点接收来自网络节点的镜像报文。
步骤505、控制节点根据镜像报文评估网络节点的相关传输性能。
其中,该网络节点的相关传输性能是指,该路径中,与该网络节点相关的至少一部分链路的传输性能,具体的,控制节点根据镜像报文所携带的生成时间戳和生成位置信息,评估与该网络节点相关的至少一部分链路的传输性能,且与该网络节点相关的至少一部分链路的传输性能具体可指如下所示的一项或多项:
网络节点内是否出现丢包事件、该网络节点和下一跳网络节点之间是否出现丢包事件、网络节点内是否出现网络拥塞事件、该网络节点和下一跳网络节点之间是否出现网络拥塞事件或该路径的丢包率等,其中,该下一跳网络节点具体为该路径上,该网络节点的下一跳的网络节点。
采用本实施例所示的方法,无需对组网所包括的所有路径进行“全覆盖”式的检测,控制节点通过组网中的一条路径上各网络节点上报的镜像报文,即可分析出该路径上与该网络节点相关的至少一部分链路的传输性能,提高了对传输性能进行评估的灵活性,并能够有效的节省进行评估的计算开销,进而有效的节省了组网的业务资源;从而使得若该路径出现丢包事件,则控制节点可实现对出现丢包事件的网络节点和/或出现丢包事件的链路的精确定位,又如,若该路径出现网络拥塞事件,则控制节点可实现对出现网络拥塞事件的网络节点和/或出现网络拥塞事件的链路的精确定位,提高了对网络节点相关传输性能进行评估的精确性,降低了对网络节点相关传输性能进行评估的难度,提高了传输性能评估的效率。
基于图4和图5所示,以下结合图6所示对本实施例所示的组网的虚拟网络的网络架构的另一种架构进行示例性说明,本实施例所示的组网600相对于图4所示的组网400的网络架构,还包括有配置节点601,本实施例中,为降低对组网中的网络节点相关传输性能进行评估的过程中,对该控制节点404的负载,则可在组网中增设配置节点601,其中,该配置节点601分别与各网络节点耦接。该组网600所包括的其余架构的说明,请详见图4所示,具体在本实施例中不做赘述;可选的,本实施例所示的配置节点601的宿主机和该控制节点404的宿主机可相同,即该配置节点601所位于的计算机设备和该控制节点404所位于的计算机设备为同一计算机设备;还可选的,该配置节点601的宿主机和该控制节点404的宿主机不同,即该配置节点601所位于的计算机设备和该控制节点404所位于的计算机设备为两个互不相同的计算机设备;可选的,本实施例所示的配置节点601可为该计算机设备中的部分器件,例如集成电路芯片。在实现过程中,本实施例所示的方法由配置节点601执行的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
基于图6所示的组网的网络架构,以下结合图7所示,对本实施例所提供的评估网络节点相关传输性能的方法的具体过程进行示例性说明;
步骤701、配置节点接收测试任务信息。
在源节点所承载的源虚拟机和目的节点所承载的目的虚拟机之间的网络出现问题时,即源虚拟机向目的虚拟机发送业务报文时,传输该业务报文的过程中,出现传输时延过大、业务报文丢包、业务报文传输断流等问题,运维人员可向通过北向接口(Portal)向配置节点输入用于对源虚拟机和目的虚拟机之间的路径的传输性能进行评估的测试任务信息,具体的,测试任务信息包括如下所示的一项或多项:
测试任务标识、测试场景、测试模式、业务报文的五元组、源节点的信息、目的节点的信息、业务报文的源媒体介入控制层(media access control,MAC)地址、业务报文的目的MAC地址、业务报文的VLAN号、测试分组数、超时阈值、测试速率、预设路径等。
其中,测试任务标识用于标识当前测试任务,测试任务用于评估业务报文在源节点和目的节点之间的网络,测试场景用于指示当前测试任务所属的场景,如私有网络(virtual private cloud,VPC);测试模式用于指示单向测试模式或双向测试模式,单向测试模式用于指示源节点向目的节点发送第一测试报文以对源节点和目的节点之间的网络进行评估,双向测试模式用于指示源节点向目的节点发送第一测试报文且指示目的节点向源节点发送第二测试报文,以对源节点和目的节点之间的网络进行评估。源节点的信息可为源节点的标识和/或源节点的节点类型,例如源节点的节点类型可为计算节点。目的节点的信息可为目的节点的标识和/或目的节点的节点类型。测试分组数用于指示用于对源虚拟机和目的虚拟机之间的网络进行评估的测试报文的数量。测试速率可用于指示源节点向目的节点发送第一测试报文的速率。预设路径包括业务报文在源节点和目的节点传输过程中所经由的每一网络节点的节点类型。
步骤702、配置节点向控制节点发送测试任务信息。
本实施例中,在配置节点接收到运维人员发送的测试任务信息的情况下,配置节点可将测试任务信息转发给控制节点。
步骤703、配置节点向源节点发送地址信息。
本实施例对地址信息的具体内容不做限定,地址信息用于标识图5所示的路径即可,本实施例中,地址信息包括测试任务信息所包括的至少部分信息,例如,本实施例以地址信息包括业务报文的五元组、源MAC地址、目的MAC地址等。
本实施例以测试任务信息所包括的测试模式为单向测试模式为例,则本实施例所示的配置节点仅向源节点发送地址信息即可,若测试任务信息所包括的测试模式为双向测试模式,则配置节点向源节点和目的节点发送地址信息。
本实施例对步骤702和步骤703之间在执行时序上并无先后的限定。
步骤704、源节点根据地址信息配置第一测试报文。
本实施例中,在源节点接收到来自配置节点的地址信息的情况下,源节点即可根据地址信息配置用于向目的节点发送的第一测试报文,对第一测试报文的具体说明,请详见图5所示,具体在本实施例中不做赘述。具体的,配置节点向源节点所包括的代理发送地址信息,源节点的代理根据地址信息配置第一测试报文。
本实施例对源节点配置第一测试报文的具体过程不做限定,只要路径中的各网络节点能够准确的区分业务报文和第一测试报文即可,例如,源节点所配置的第一测试报文可包括有第一测试报文标识,以使路径上的各网络节点确定所接收到的报文包括有第一测试报文标识的情况下,即可确定出该报文为第一测试报文,本实施例对第一测试报文标识不做限定,只要第一测试报文标识和第一测试报文有一一对应的关系即可。
步骤705、源节点对第一测试报文进行镜像以生成镜像报文。
本实施例所示的源节点内设置有报文镜像点,报文镜像点用于对第一测试报文进行镜像以生成镜像报文,本实施例所示的源节点内的各报文镜像点均与代理连接,以使报文镜像点能够将其生成的镜像报文发送给代理,以下对报文镜像点的具体设置方式进行示例性说明:
可选的,源节点内包括有两个报文镜像点,为更好的理解,以下参见图8所示对本示例进行具体说明:如图8所示,在源节点800的代理802接收到地址信息的情况下,代理802根据地址信息配置第一测试报文,并将第一测试报文发送给虚拟交换机801。本实施例可在虚拟交换机801中设置报文镜像点803,报文镜像点803与源虚拟机805连接,且第一测试报文用于经由报文镜像点803流入虚拟交换机801,即报文镜像点803为第一测试报文流入虚拟交换机801的第一报文镜像点,报文镜像点803将所接收到的第一测试报文转发给安全网桥806。可选的,本实施例所示的该报文镜像点803与该安全网桥806相互独立为例进行示例性说明,在其他场景下,也可在该安全完全806中设置该报文镜像点803。
本实施例中,报文镜像点803可将已接收到的第一测试报文进行镜像以生成第一镜像报文,该报文镜像点803所生成的第一镜像报文携带有生成该第一镜像报文的第一生成时间戳以及第一生成位置信息,该第一生成位置信息可包括字符“in”,以使该第一生成位置信息用于指示该第一镜像报文是在流入该虚拟交换机的位置生成;报文镜像点803生成第一镜像报文的情况下,报文镜像点803将携带有第一生成时间戳和第一生成位置信息的第一镜像报文发送给代理802。
本实施例所示的第一测试报文在源节点800的传输路径可参见图8所示,即源节点800内传输第一测试报文的路径依次包括代理802、报文镜像点803、安全网桥806、集成网桥807、通道网桥808以及报文镜像点804,以使第一测试报文经由报文镜像点804从虚拟交换机801流出,可选的,本实施例所示的该报文镜像点804与该通道网桥808相互独立为例进行示例性说明,在其他场景下,也可在该通道网桥808中设置该报文镜像点804。
本实施例在虚拟交换机801中设置报文镜像点804,报文镜像点804为第一测试报文流出虚拟交换机801的第二报文镜像点,报文镜像点804接收到通道网桥发送的第一测试报文的情况下,报文镜像点804可对第一测试报文进行镜像以生成第二镜像报文。该报文镜像点804所生成的第二镜像报文携带有生成该第二镜像报文的第二生成时间戳以及第二生成位置信息,该第二生成位置信息可包括字符“out”,以使该第二生成位置信息用于指示该第二镜像报文是在从该虚拟交换机流出的位置生成;报文镜像点804生成第二镜像报文的情况下,报文镜像点804将第二镜像报文发送给代理802。
上述对以源节点所包括的报文镜像点的设置方式的说明为可选的示例,不做限定,只要该虚拟交换机针对该测试报文能够生成一个或多个携带有生成时间戳和生成位置信息的镜像报文即可。
步骤706、源节点向控制节点发送镜像报文。
结合图8所示,本实施例所示的代理802将从报文镜像点803接收到的第一镜像报文发送给控制节点,且本实施例所示的代理802还将从报文镜像点804接收到的第二镜像报文发送给控制节点,即本实施例所示的控制节点可接收到源节点上报的第一镜像报文和第二镜像报文。
可选的,本实施例所示的代理802可将第一镜像报文和第二镜像报文同时发送给控制节点,可选的,代理802可分时的将第一镜像报文和第二镜像报文发送给控制节点,具体在本实施例中不做限定。
可选的,源节点的代理802接收到来自报文镜像点803的第一镜像报文和来自报文镜像点804的第二镜像报文的情况下,该代理802可将源节点的UUID设置在该第一镜像报文所携带的第一生成位置信息中和/或第二镜像报文所携带的第二生成位置信息中。
可选的,也可由源节点的报文镜像点803将源节点的UUID设置于该第一生成位置信息中和/或由源节点的报文镜像点804将源节点的UUID设置于该第二生成位置信息中,具体在本实施例中不做限定。
步骤707、控制节点接收来自源节点的镜像报文。
步骤708、源节点向转发节点发送第一测试报文。
在第一测试报文从源节点所包括的虚拟交换机中流出时,虚拟交换机可根据地址信息的指示,将第一测试报文向下一跳转发节点转发,以图6所示为例,源节点401可根据第一测试报文所包括的地址信息的指示,将第一测试报文向下一跳的转发节点402发送。
本实施例对步骤706和步骤708之间无执行时序上的先后限定。
本实施例所示的转发节点内设置有虚拟交换机,对虚拟交换机的具体结构的说明可参见上述图2所示,具体不做赘述,只要虚拟交换机能够根据第一测试报文所包括的地址信息,将第一测试报文向下一跳转发即可。
以下结合图9所示对转发节点所包括的报文镜像点进行示例性说明,转发节点900的虚拟交换机901用于接收源节点所发送的第一测试报文,并对该第一测试报文进行镜像以生成镜像报文;
具体的,本实施例可在虚拟交换机901中设置报文镜像点903,源节点所发送的第一测试报文用于经由报文镜像点903流入虚拟交换机901,可见,此时,报文镜像点903为第一测试报文流入虚拟交换机901的第一报文镜像点,报文镜像点903用于识别出当前所接收到的报文是否为第一测试报文,如若报文镜像点903识别出报文包括有第一测试报文标识,则报文镜像点903确定出该报文为第一测试报文,报文镜像点903对第一测试报文进行镜像以生成第一镜像报文,报文镜像点903将已生成的第一镜像报文发送给代理902,该第一镜像报文包括第一生成时间戳和第一生成位置信息,对该第一生成时间戳和第一生成位置信息的具体说明,请详见图8所示,具体不做赘述。
在虚拟交换机901实现了对第一测试报文的物理交换机的功能后,即虚拟交换机901实现了将第一测试报文向目的节点转发后,继续如图9所示,从报文镜像点903流入的第一测试报文依次经由通道网桥904、集成网桥905的处理后,再返回至报文镜像点903,以使虚拟交换机901中的第一测试报文从报文镜像点903流出,则此时的报文镜像点903为第一测试报文从虚拟交换机901中流出的第二报文镜像点,报文镜像点903在识别出第一测试报文时,报文镜像点903对第一测试报文进行镜像以生成第二测试报文,报文镜像点903将已生成的第二镜像报文发送给代理902,该第二镜像报文包括第二生成时间戳和第二生成位置信息,对该第二生成时间戳和第二生成位置信息的具体说明,请详见图8所示,具体不做赘述。
步骤709、转发节点向控制节点发送镜像报文。
由上述说明可知,图9所示的转发节点的代理902已接收到报文镜像点903发送的第一镜像报文和第二镜像报文,则代理902可通过和控制节点预先创建的通道,将第一镜像报文和第二镜像报文发送给控制节点。
可选的,本实施例所示的代理902可将第一镜像报文和第二镜像报文同时发送给控制节点,可选的,代理902可分时的将第一镜像报文和第二镜像报文发送给控制节点,具体在本实施例中不做限定。
可选的,该第一生成位置信息和/或该第二生成位置信息设置该转发节点的UUID,具体设置方式的说明,请详见步骤706所示的第一生成位置信息和/或第二生成位置信息中设置源节点的UUID的说明,具体不做赘述。
步骤710、转发节点向目的节点发送第一测试报文。
本实施例以路径上包括有一个转发节点为例进行示例性说明,则在转发节点完成对第一测试报文的物理交换机的功能后,转发节点即可根据第一测试报文的地址信息向目的节点转发第一测试报文;本实施例对路径所包括的转发节点的具体数量不做限定,若路径上包括有两个或两个以上的转发节点,则路径上的各转发节点依次实现对第一测试报文的物理交换机的功能后,位于路径中的最后一个转发节点将第一测试报文发送给目的节点。
步骤711、目的节点向控制节点发送镜像报文。
以下结合图10所示对目的节点设置报文镜像点的具体结构进行示例性说明,本实施例可在目的节点1000所承载的虚拟交换机1001中设置报文镜像点1004,转发节点向目的节点1000转发的第一测试报文经由报文镜像点1004流入虚拟交换机1001,可见,报文镜像点1004为第一测试报文流入虚拟交换机1001内的第一报文镜像点,报文镜像点1004通过第一测试报文标识识别出当前所接收到的报文为第一测试报文的情况下,报文镜像点1004对第一测试报文进行镜像以生成第一镜像报文,报文镜像点1004将所生成的第一镜像报文发送的代理1002,代理1002通过和控制节点预先创建的通道,将第一镜像报文发送给控制节点。该第一镜像报文包括有第一生成时间戳和第一生成位置信息,具体说明请详见上述所示,具体不做赘述;
经由报文镜像点1004流入虚拟交换机1001内的第一测试报文依次经由通道网桥1005、集成网桥1006以及安全网桥1007流入报文镜像点1003,其中,本示例中,报文镜像点1003设置于虚拟交换机1001内部,且与目的节点1000所承载的目的虚拟机1008连接,本实施例所示的报文镜像点1003为第一测试报文从虚拟交换机1001中流出的第二报文镜像点,报文镜像点1004对第一测试报文进行镜像以生成第二镜像报文,报文镜像点1003将所生成的第二镜像报文发送给代理1002,代理1002过和控制节点预先创建的通道,将第二镜像报文发送给控制节点,该第二镜像报文包括有第二生成时间戳和第二生成位置信息,具体说明请详见上述所示,具体不做赘述。
可选的,本实施例所示的代理1002可同时将第一镜像报文和第二镜像报文发送给控制节点,还可选的,代理1002可分时将第一镜像报文和第二镜像报文发送给控制节点,具体在本实施例中不做限定。
步骤712、目的节点结束第一测试报文的转发。
若从目的节点所承载的虚拟交换机中流出的为业务报文,则该业务报文可传输至目的节点所承载的目的虚拟机内,以实现源节点所承载的源虚拟机和目的节点所承载的目的虚拟机之间的连通,而本实施例所示的第一测试报文是用于对源虚拟机和目的虚拟机之间的网络的传输性能进行评估的,无需目的虚拟机对第一测试报文进行处理,则本实施例中,在目的节点对第一测试报文进行镜像以生成第二镜像报文后,目的节点可结束第一测试报文的传输,即目的节点结束第一测试报文的转发,以使该第一测试报文不会向目的节点所承载的目的虚拟机转发,目的虚拟机不会对用于进行评估的第一测试报文进行处理。
继续以图10所示为例,在报文镜像点1003对第一测试报文进行镜像以生成第二镜像报文后,报文镜像点1003即可结束第一测试报文的转发,以使第一测试报文不向目的虚拟机1008转发,则该第一测试报文不会传输至目的节点1000所承载的目的虚拟机1008内部,有效的避免了目的虚拟机1008对第一测试报文的处理。
本实施例中,源节点针对需要进行评估的业务报文配置第一测试报文,以使第一测试报文所经由的路径和业务报文所经由的路径一致,在路径上,业务报文和第一测试报文一起进行传输,在第一测试报文经由第二报文镜像点处实现了对第一测试报文进行镜像以生成第二镜像报文后,该第二报文镜像点结束第一测试报文的转发,从而有效的避免了目的虚拟机对第一测试报文进行处理的过程中所产生的噪声,且使用目的虚拟机的租户不会感知到第一测试报文的存在,避免了第一测试报文对租户业务的影响。
本实施例所示的步骤711和步骤712之间无执行时序上的先后限定。
步骤713、控制节点根据镜像报文对网络节点相关传输性能进行评估。
经由上述步骤所示,本实施例所示的控制节点可获取路径上每个网络节点所发送的第一镜像报文和第二镜像报文,控制节点根据第一镜像报文和第二镜像报文即可对源节点和目的节点之间,各网络节点相关传输性能进行评估,具体说明请参见图5所示的步骤505所示,具体不做赘述。
步骤714、控制节点向配置节点发送通知信息。
本实施例中,控制节点可根据路径中各网络节点相关传输性能的评估情况,生成评估结果信息,该评估结果信息包括该控制节点对路径中的各网络节点相关的传输性的评估结果,可选的,评估结果信息包括测试任务标识。具体的,控制节点针对配置节点所发送的测试任务信息完成了对路径中的各网络节点的相关传输性能的评估后,可将测试任务信息所包括的测试任务标识存储在评估结果信息中。
在控制节点完成了对路径中的各网络节点相关传输性能的评估后,控制节点可向配置节点发送通知信息,该通知信息用于指示该控制节点对路径中的各网络节点的相关传输性能的评估已完成。可选的,通知信息可包括有测试任务标识。
步骤715、配置节点接收来自控制节点的评估结果信息。
该配置节点根据来自该控制节点的通知信息,即可确定出与通知信息所包括的测试任务标识对应的路径已测试完成,若配置节点需要获取与该测试任务标识对应的路径中,各网络节点相关传输性能时,配置节点可将该测试任务标识发送给控制节点,控制节点根据测试任务标识将包括该测试任务标识的评估结果信息发送给配置节点,运维人员即可通过配置节点查询对与该测试任务标识对应的路径中,各网络节点相关传输性能的评估情况。
采用本实施例所示的方法的有益效果在于:
本实施例所示的方法中,在需要对用于传输业务报文的路径中,所包括的各网络节点相关传输性能进行评估时,针对业务报文的地址信息配置第一测试报文,以使第一测试报文和业务报文均沿路径进行传输,通过该第一测试报文即可对用于传输业务报文的路径上的各网络节点和/或网络节点间的传输性能进行评估,因无需对组网所包括的所有路径进行“全覆盖”式的检测,控制节点通过路径上各网络节点上报的镜像报文,即可分析出该路径上与该网络节点相关的至少一部分链路的传输性能,提高了对传输性能进行评估的灵活性,降低了评估的难度,节省了进行评估的计算开销,进而有效的节省了组网的业务资源。
控制节点通过路径上各网络节点上报的第一镜像报文和第二镜像报文,能够准确的检测各网络节点的传输性能以及该网络节点和下一跳网络节点之间的链路的传输性能,实现了对传输性能的精确检测。而且用于对传输性能进行评估的第一测试报文不会转发至目的虚拟机中,从而有效的避免了目的虚拟机对第一测试报文进行处理的过程中所产生的噪声,且使用目的虚拟机的租户不会感知到第一测试报文的存在,避免了第一测试报文对租户业务的影响。
上述图7所示以单向测试模式为例对路径的传输性能进行评估为例,以下结合图11所示,说明如何以双向测试模式对路径的传输性能进行评估的过程进行示例性说明:
步骤1101、配置节点接收测试任务信息。
本实施例所示的测试任务信息所包括的测试模式为双向测试模式,对测试任务信息的说明,请详见上述步骤701所示,具体不做赘述。
步骤1102、配置节点向控制节点发送测试任务信息。
步骤1103、配置节点向源节点发送地址信息。
步骤1104、源节点根据地址信息配置第一测试报文。
步骤1105、源节点对第一测试报文进行镜像以生成镜像报文。
步骤1106、源节点向控制节点发送镜像报文。
步骤1107、控制节点接收来自源节点的镜像报文。
步骤1108、源节点向转发节点发送第一测试报文。
步骤1109、转发节点向控制节点发送镜像报文。
步骤1110、转发节点向目的节点发送第一测试报文。
步骤1111、目的节点向控制节点发送镜像报文。
步骤1112、目的节点结束第一测试报文的转发。
本实施例所示的步骤1102至步骤1112的具体执行过程,请详见图7所示的步骤702至步骤712所示,具体执行过程不做赘述。
步骤1113、控制节点向目的节点发送地址信息。
本实施例中,在控制节点确定出测试任务信息所包括的测试模式为双向测试模式的情况下,则控制节点将地址信息分别发送给源节点和目的节点,本实施例中,步骤1113和步骤1102至步骤1112之间,并无执行时序上的先后限定。
步骤1114、目的节点根据地址信息配置第二测试报文。
本实施例中,在目的节点的代理接收到控制节点发送的业务报文的地址信息的情况下,目的节点的代理即可确定出需要配置第二测试报文,对第二测试报文的具体说明,请详见图5所示,具体在本实施例中不做赘述。
步骤1115、目的节点对第二测试报文进行镜像以生成镜像报文。
本实施例结合图10所示进行示例性说明,目的节点1000的代理1002用于根据控制节点所发送的地址信息配置第二测试报文,代理1002在确定满足发送触发条件的情况下,将已配置的第二测试报文经由报文镜像点1003输入至虚拟交换机1001,即本步骤所示的报文镜像点1003为用于使得第二测试报文流入至虚拟交换机1001的第一报文镜像点,虚拟交换机1001的报文镜像点1004作为用于使得第二测试报文流出虚拟交换机1001的第二报文镜像点,对第一报文镜像点和第二报文镜像点的具体说明,请详见图7所示,具体不做赘述;
以下对发送触发条件进行说明,需明确的是,本实施例对触发条件的说明为可选的示例,不做限定,只要在满足触发条件的情况下,代理1002能够将已配置的第二测试报文发送给虚拟交换机1001即可。
可选的,发送触发条件可为,目的节点的代理1002已接收到控制节点所发送的地址信息,且代理1002已接收到报文镜像点1003所发送的第二镜像报文。
继续如图10所示,在第二测试报文的传输过程中,作为第一报文镜像点的报文镜像点1003将第二测试报文进行镜像以生成第一镜像报文,并将第一镜像报文发送给代理1002;作为第二报文镜像点的报文镜像点1004将第二测试报文进行镜像以生成第二镜像报文,并将第二镜像报文发送给代理1002。
步骤1116、目的节点向控制节点发送镜像报文。
本实施例中,目的节点的代理,可将已接收到的根据第二测试报文进行镜像所生成的第一镜像报文和第二镜像报文向控制节点发送。
步骤1117、目的节点向转发节点发送第二测试报文。
步骤1118、转发节点向控制节点发送镜像报文。
步骤1119、转发节点向源节点发送第二测试报文。
步骤1120、源节点向控制节点发送镜像报文。
本实施例所示的步骤1117至步骤1120的目的节点向源节点发送第二测试报文以及源节点上报镜像报文的具体过程,可参见图7所示的步骤708至步骤710所示的源节点向目的节点发送第一测试报文以及目的节点上报镜像报文的具体过程,具体不做赘述。
步骤1121、源节点结束第二测试报文的转发。
本实施例所示的第二测试报文是用于对目的虚拟机和源虚拟机之间的路径中,各网络节点相关传输性能进行评估的,无需源虚拟机对第二测试报文进行处理,则本实施例中,在源节点对第二测试报文进行镜像以生成第二镜像报文后,源节点可结束第二测试报文的转发,即源节点不向其所承载的源虚拟机转发第二测试报文,以使源虚拟机不会对用于进行评估的第二测试报文进行处理。
继续以图8所示为例,在报文镜像点803对第二测试报文进行镜像以生成第二镜像报文后,报文镜像点803即可结束第二测试报文的传输,以使第二测试报文不会传输至源节点800所承载的源虚拟机805内部,从而有效的避免了源虚拟机805对第二测试报文的处理,从而有效的避免了源虚拟机对第二测试报文进行处理的过程中所产生的噪声。
步骤1122、控制节点根据镜像报文对路径的传输性能进行评估。
本实施例中,控制节点可根据第一测试报文沿路径传输过程中,各网络节点上报的镜像报文以及第二测试报文沿与路径相反的方向传输过程中,各网络节点上报的镜像报文对路径的传输性能进行评估。
步骤1123、控制节点向配置节点发送通知信息。
步骤1124、配置节点接收来自控制节点的评估结果信息。
本实施例所示的步骤1123至步骤1124的具体执行过程,请详见图7所示的步骤714至步骤715所示,具体执行过程不做赘述。
采用本实施例所示的方法的有益效果在于:
本实施例所示的方法,控制节点在可通过第一测试报文和第二测试报文对源节点和目的节点之间的路径进行评估,图11所示的双向测试模式相对于图7所示的单向测试模式而言,可增加对路径上各网络节点的传输性能和相邻的两个网络节点之间的链路的传输性能进行评估的次数,从而增加了对路径的传输性能进行评估的准确性,有效的避免了误判的情况。
基于图5、图7以及图11所示的方法,以下结合图12所示说明上述实施例中控制节点如何根据镜像报文对路径的传输性能进行评估的具体过程:
步骤1201、控制节点接收来自配置节点的测试任务信息。
本实施例所示的测试任务信息的具体说明,请详见图7所示的步骤701所示,具体在本实施例中不做赘述。
步骤1202、控制节点接收来自网络节点的镜像报文。
控制节点接收路径上至少部分网络节点所发送的镜像报文,具体的,若路径所包括的各网络节点以及任意相邻的两个网络节点之间均未出现丢包事件,则控制节点可接收到路径上所有网络节点所上报的镜像报文,若路径所包括的部分网络节点出现丢包事件和/或至少一对相邻的两个网络节点之间的链路出现丢包事件,则控制节点接收到能够正常运行的网络节点所上报的镜像报文,其中,正常运行的网络节点是指,能够成功接收到测试报文且未出现丢包事件的网络节点。控制节点接收镜像报文的具体过程的说明,请详见上述实施例步骤707所示,具体在本实施例中不做赘述。
步骤1203、控制节点判断第一目标时长内是否接收到来自网络节点的第二镜像报文,若否,则执行步骤1204,若是,则执行步骤1205。
本实施例所示的网络节点为路径上的任一网络节点,如图4所示,网络节点可为源节点,或转发节点,或目的节点;控制节点可确定出该网络节点是否出现丢包事件,具体如下:
本示例中以每一网络节点的代理接收到各报文镜像点上报的镜像报文后,立即将镜像报文发送给控制节点为例进行示例性说明:控制节点接收到网络节点所承载的代理所发送的第一镜像报文后,控制节点立即启动计时器,计时器的计时起点为网络节点所发送的第一镜像报文所携带的第一生成时间戳,具体的,第一生成时间戳指示网络节点的第一报文镜像点生成第一镜像报文的时间戳,计时器所计的时长为第一目标时长,该第一目标时长可由运维人员预先输入至控制节点,或第一目标时长可由控制节点向控制节点所发送,具体在本实施例中不做限定。
步骤1204、控制节点生成第一事件信息。
本实施例中,若控制节点确定在计时器所计时的第一目标时长内,控制节点没有接收到网络节点所承载的代理所上报的第二镜像报文,则控制节点生成第一事件信息,第一事件信息用于指示网络节点出现丢包事件。
为更好的理解,以下举具体事例进行示例性说明:
该控制节点接收来自网络节点的镜像报文,且该镜像报文携带的生成位置信息包括“efec-fece-0987”以及“in”;该控制节点根据该“efec-fece-0987”的指示,确定出该控制节点接收来自UUID为“efec-fece-0987”的网络节点所上报的镜像报文,且根据“in”的指示,确定出该第一镜像报文为该网络节点的第一报文镜像点对第一测试报文进行镜像所生成的镜像报文,对于字符“in”的说明,可参见图7所示的实施例,具体在本实施例中不做赘述。
该控制节点在确定接收到该第一镜像报文时,即可启动该计时器的计时,若控制节点确定出在该计时器所计时长内,未接收到该网络节点所上报的第二镜像报文的情况下,则说明该网络节点的虚拟交换机在对该第一测试报文进行处理的过程中出现了丢包事件,以使该第一测试报文无法成功转发至第二报文镜像点,该控制节点无法成功接收到第二报文镜像点所上报的第二镜像报文,则该控制节点生成该第一事件信息。
可选的,控制节点所生成的第一事件信息可包括有网络节点的UUID,则运维人员在获取到该第一事件信息的情况下,运维人员即可确定出具有第一事件信息所包括的UUID的网络节点出现丢包。
可见,采用本示例所示,控制节点可根据第一事件信息所包括的UUID确定出路径中丢包的具体位置,实现了对路径中丢包位置的精确定位。
本实施例所示的步骤1203至步骤1204为可选执行的步骤。
步骤1205、控制节点判断第二目标时长内是否接收来自下一跳网络节点的第三镜像报文,若否,则执行步骤1206,若是,则执行步骤1207。
本实施例所示的路径还包括该网络节点的下一跳网络节点,在该网络节点的第二报文镜像点完成了对该第一测试报文的镜像后,该网络节点即可根据第一测试包括所包括的地址信息的指示,将该第一测试报文向下一跳网络节点转发;
该下一跳网络节点接收到该第一测试报文的情况下,该下一跳网络节点的报文镜像点即可对第一测试报文进行镜像以生成第一镜像报文,本实施例对该下一跳网络节点所包括的报文镜像点的数量和位置不做限定,为更准确的实现对路径上的各网络节点相关传输性能进行检测,则本实施例所示的下一跳网络节点的报文镜像点的设置位置和该网络节点的报文镜像点的设置位置相同,即该下一跳网络节点也包括该第一报文镜像点和该第二报文镜像点,可选的,本实施例所示的第三镜像报文可为该下一跳网络节点的第一报文镜像点对第一测试报文进行镜像所生成的镜像报文,该第三镜像报文包括生成时间戳和生成位置信息,具体说明,请详见图7所示,具体不做赘述。
本实施例中,在控制节点接收到网络节点所承载的代理所发送的第二镜像报文后,控制节点立即启动计时器,计时器的计时起点为网络节点已发送的第二镜像报文所携带的第二生成时间戳,第二生成时间戳指示网络节点的第二报文镜像点生成第二镜像报文的时间戳,计时器所计的时长为第二目标时长,该第二目标时长可由运维人员预先输入至控制节点,或第二目标时长可由控制节点向控制节点所发送,具体在本实施例中不做限定。
步骤1206、控制节点生成第二事件信息。
本实施例中,若控制节点确定在计时器所计时的第二目标时长内,控制节点没有接收到下一跳网络节点所承载的代理所上报的第三镜像报文,则控制节点生成第二事件信息,第二事件信息用于指示网络节点和下一跳网络节点之间的链路出现丢包事件;
为更好的理解,以下举具体事例进行示例性说明:
该控制节点接收来自网络节点的第二镜像报文,且该第二镜像报文携带的生成位置信息包括“efec-fece-0987”以及“out”;该控制节点根据该“efec-fece-0987”的指示,确定出该控制节点接收来自UUID为“efec-fece-0987”的网络节点所上报的镜像报文,且根据“out”的指示,确定出该第二镜像报文为该网络节点的第二报文镜像点对第一测试报文进行镜像所生成的镜像报文;本示例中,控制节点根据该第二镜像报文所携带的生成位置信息的指示,可确定出网络节点的第二报文镜像点已完成对该第一测试报文的镜像,该第一测试报文已从该网络节点的虚拟交换机中流出以转发至下一跳网络节点;
此时,该控制节点启动该计时器,若控制节点确定出在该计时器所计时长内,未接收到该下一跳网络节点所上报的第三镜像报文的情况下,则说明从该网络节点中流出的第一测试报文未成功转发至下一跳网络节点,该控制节点可确定出该网络节点和该下一跳网络节点之间出现丢包事件,则该控制节点即可生成该第二事件信息。
可选的,第二事件信息可包括网络节点的UUID,则运维人员根据第二事件信息确定出网络节点和下一跳网络节点之间的链路出现丢包事件。可见,采用本示例所示,控制节点可根据第二事件信息确定出路径中丢包的具体位置,实现了对路径中丢包位置的精确定位。
本实施例所示的步骤1205至步骤1206为可选执行的步骤。
步骤1207、控制节点获取第一目标时延。
本实施例所示的控制节点可基于同一网络节点所发送的第一镜像报文和第二镜像报文,确定出路径中发生网络拥塞事件的具体网络节点,具体如下:
本示例中,控制节点可根据已接收到的镜像报文所携带的生成位置信息确定同一网络节点上报的第一镜像报文和第二镜像报文,如,在该控制节点确定出第一镜像报文所携带的UUID和该第二镜像报文所携带的UUID相同,且均为“efec-fece-0987”,则该控制节点即可确定出该第一镜像报文和该第二镜像报文来自同一具有的UUID为“efec-fece-0987”的网络节点。
该控制节点获取该网络节点的第一目标时延,其中,第一目标时延为该网络节点所发送的第二生成时间戳和第一生成时间戳之间的差值。
步骤1208、控制节点生成第一拥塞指示信息。
本实施例中,在控制节点已接收到配置节点所发送的测试任务信息,其中,测试任务信息中包括有第一超时阈值;控制节点判断第一目标时延是否小于第一超时阈值,若是,则控制节点确定网络节点对第一测试报文的处理是正常的,即该网络节点内没有出现网络拥塞事件;若否,则控制节点生成第一拥塞指示信息,第一拥塞指示信息用于指示网络节点内出现网络拥塞事件,则运维人员根据第一拥塞指示信息确定出第一测试报文在传输至网络节点内时,出现了拥塞。可选的,第一拥塞指示信息可包括有网络节点的UUID,则运维人员根据该UUID即可精确的确定出路径中出现网络拥塞事件的具体网络节点。
本实施例所示的步骤1207至步骤1208为可选执行的步骤。
步骤1209、控制节点获取第二目标时延。
本实施例所示的控制节点可对路径上的网络节点所上报的镜像报文和下一跳网络节点所上报的镜像报文,确定出网络节点和下一跳网络节点之间的链路的传输时延;
本实施例所示的第二目标时延为该网络节点和下一跳网络节点之间的链路的传输时延,具体的,该第二目标时延可为下一跳网络节点所发送的第三镜像报文所携带的生成时间戳和该网络节点所发送的任一镜像报文所携带的生成时间戳之间的差值,其中,该下一跳网络节点所上报的第三镜像报文可为下一跳网络节点的第一报文镜像点所生成的镜像报文,也可为该下一跳网络节点的第二报文镜像点所生成的镜像报文,具体在本实施例中不做限定。
本实施例中,以该第二目标时延为该下一跳网络节点的第三镜像报文所携带的生成时间戳和该网络节点的第二镜像报文所携带的第二生成时间戳之间的差值为例进行示例性说明,其中,该第三镜像报文为该下一跳网络节点的第一报文镜像点所生成的镜像报文,该第二生成时间戳为网络节点的第二报文镜像点生成第二镜像报文的时间戳。可见本示例所示的第二目标时延为第一测试报文流入下一跳网络节点的虚拟交换机的时刻到第一测试报文从网络节点的虚拟交换机中流出的时刻之间的差值。
步骤1210、控制节点生成第二拥塞指示信息。
本实施例中,控制节点已接收到测试任务信息中包括有第二超时阈值;控制节点判断第二目标时延是否小于第二超时阈值,若是,则控制节点确定网络节点和下一跳网络节点之间的传输是正常的,即该网络节点和下一跳网络节点之间未出现网络拥塞事件。若否,则控制节点生成第二拥塞指示信息,第二拥塞指示信息用于指示网络节点和下一跳网络节点之间的链路出现网络拥塞事件,则运维人员根据第二拥塞指示信息确定出第一测试报文在传输至网络节点和下一跳网络节点之间时,出现了拥塞。可选的,第二拥塞指示信息可包括有网络节点的UUID和下一跳网络节点的UUID,以便于运维人员对网络节点和下一跳网络节点之间的链路出现网络拥塞事件的精确定位。
本实施例所示的步骤1209和步骤1210为可选执行的步骤。
步骤1211、控制节点获取第三目标时延。
本实施例所示的控制节点可确定出第一测试报文在路径上进行传输的单向路径传播时延(single trip time,STT);具体过程如下:
控制节点确定源节点发送的第一生成时间戳;控制节点确定目的节点发送的第二生成时间戳,对第一生成时间戳和第二生成时间戳的具体说明,请详见上述所示,具体不做赘述;
控制节点获取第三目标时延,第三目标时延为目的节点发送的第二生成时间戳和源节点发送的第一生成时间戳之间的差值。
可选的,控制节点可基于第三目标时延确定计算丢包率,具体计算过程,请详见上述所示,具体不做赘述。
本实施例所示的步骤1211为可选执行的步骤。
步骤1212、控制节点获取第四目标时延。
本实施例所示的第四目标时延为源节点和目的节点之间传输测试报文的往返时延(round trip time,RTT),具体过程如下:
控制节点确定目标第一生成时间戳,目标第一生成时间戳为源节点根据第一测试报文生成第一镜像报文的时间戳;
控制节点确定目标第二生成时间戳,目标第二生成时间戳为源节点根据第二测试报文生成第二镜像报文的时间戳;
控制节点获取第四目标时延,第四目标时延为目标第二生成时间戳和目标第一生成时间戳之间的差值。
本实施例所示的控制节点可基于第四目标时延确定计算丢包率,具体计算过程,请详见上述所示,具体不做赘述。
本实施例所示的步骤1212为可选执行的步骤。
步骤1213、控制节点获取预设路径。
本实施例所示的控制节点可从已接收到的测试任务信息中获取预设路径,其中,预设路径包括业务报文在源节点和目的节点之间传输过程中所经由的每一网络节点的节点类型。对预设路径的具体说明,请详见步骤701所示,具体在本实施例中不做赘述。
步骤1214、控制节点确定与测试报文对应的流量地图。
以下以控制节点获取与第一测试报文对应的流量地图为例进行示例性说明,因第一测试报文可完全复现业务报文的传输过程,通过第一测试报文沿路径传输过程中出现的故障即可复现出业务报文沿路径传输过程中所出现的故障。又因本实施例所示的第一测试报文和业务报文是去耦合的关系,即在路径中,第一测试报文和业务报文的传输是相互分离的,通过第一测试报文对路径的传输性能进行评估的过程中,不影响业务报文的正常传输,以下对控制节点根据各网络节点上报的镜像报文实现对路径的传输性能进行评估的过程进行说明:
本实施例所示的第一测试报文对应的流量地图是指,第一测试报文传输的过程中依次经过的网元实例,为更好的理解,则以下结合图13所示进行示例性说明:如图13所示,以路径包括源节点1301、第一转发集群1303、第二转发集群1304以及目的节点1302为例进行示例性说明,第一转发集群1303包括多个节点类型相同的转发节点,在第一转发集群1303接收到第一测试报文的情况下,由第一转发集群1303所包括的一个转发节点对第一测试报文进行转发,对第二转发集群1304的具体说明,请参见对第一转发集群1303的说明,具体不做赘述。
本实施例中,控制节点从控制节点所接收到的测试任务信息包括预设路径,对预设路径的具体说明,请详见步骤701所示,具体不做赘述;可见,控制节点通过所接收到的预设路径,能够确定出第一测试报文在源节点1301和目的节点1302之间传输的过程中,所经由的每一网络节点的节点类型,但是,控制节点根据预设路径的指示,无法确定第一测试报文在源节点1301和目的节点1302之间进行传输的具体过程中,所经由的每一转发节点的网元实例。
例如,若控制节点所接收到的预设路径为:计算节点、集中式虚拟路由器(VROUTER)、大二层网关(layer-2gateway,L2GW)以及计算节点。该预设路径是指,源虚拟机所位于源节点的节点类型为计算节点,目的虚拟机所位于的目的节点的节点类型为计算节点,源节点和目的节点之间包括依次连接的两个转发集群,第一个转发集群所包括的所有转发节点的节点类型为集中式虚拟路由器,第二个转发集群所包括的所有转发节点的节点类型为大二层网关。
继续以图13所示为例,第一转发集群1303为包括有多个集中式虚拟路由器的集群,第二转发集群1304为包括多个大二层网关的集群,基于预设路径的指示,控制节点能够确定出第一测试报文从源节点1301流出后,依次经由第一转发集群1303、第二转发集群1304以流入至目的节点1302,但是控制节点无法确定出第一测试报文流经第一转发集群1303时具体是由哪个集中式虚拟路由器进行转发的,也无法确定出第一测试报文流经第二转发集群1304时具体是由哪个大二层网关进行转发的。
采用本实施例所示的方法,各网络节点向控制节点所上报的镜像报文所携带的生成位置信息包括有该网络节点的UUID以及指示信息,其中,指示信息用于指示该网络节点的节点类型;
继续参见图13所示,可选的,源节点1301的第一报文镜像点向控制节点所上报的第一镜像报文包括源节点1301的UUID以及用于指示源节点1301的节点类型为计算节点的指示信息,源节点1301的第二报文镜像点向控制节点所上报的第二镜像报文也包括源节点1301的UUID以及指示信息,可选的,本实施例所示的第一镜像报文和第二镜像报文之间,可仅有一个镜像报文包括源节点1301的UUID以及指示信息;
在源节点1301根据第一测试报文所包括的五元组的指示下,确定出用于转发第一测试报文的下一跳转发节点为第一转发集群1303时,源节点1301可将第一测试报文向第一转发集群1303发送,第一转发集群1303可包括有与第一转发集群1303所包括的所有转发节点连接的分配器1305,分配器1305接收第一测试报文,本实施例对分配器的具体形态不做限定,只要分配器能够在转发集群1303中确定出用于对第一测试报文进行转发的网元实例即可,例如,分配器可为独立于第一转发集群1303内的各转发节点,且与各转发节点耦接的物理计算机设备。
继续以图13所示为例,分配器1305可基于负载均衡或随机选定等方式,确定出在第一转发集群1303中用于转发第一测试报文的网元实例。例如,在转发集群1303包括有N个集中式虚拟路由器的情况下,分配器1305可根据各集中式虚拟路由器的负载,确定出当前用于转发第一测试报文的集中式虚拟路由器,又如,分配器1305可在转发集群1303中随机选择一个集中式虚拟路由器用于转发第一测试报文。本实施例以分配器1305确定第一转发集群1303所包括的第二集中式虚拟路由器的负载最轻,则分配器1305确定由第二集中式虚拟路由器对第一测试报文进行转发。
在第二集中式虚拟路由器对第一测试报文进行转发的过程中,第二集中式虚拟路由器可对第一测试报文进行镜像以生成第一镜像报文和第二镜像报文,第二集中式虚拟路由器向控制节点上报的第一镜像报文和第二镜像报文中至少一个包括第二集中式虚拟路由器的节点类型以及第二集中式虚拟路由器的UUID。
在第二集中式虚拟路由器将第一测试报文向下一跳转发节点,即第二转发集群1304转发后,若第二转发集群1304的分配器1306确定出由第N大二层网关对第一测试报文进行转发时,则第N大二层网关向控制节点所发送的第一镜像报文和第二镜像报文中,至少一个镜像报文包括第N大二层网关的节点类型和第N大二层网关的UUID。
同理,目的节点1302向控制节点所上报的第一镜像报文和第二镜像报文中,至少一个镜像报文包括目的节点的节点类型以及目的节点UUID。
可见,路径上的同一网络节点向控制节点所发送的第一镜像报文和第二镜像报文中,至少一个镜像报文包括该网络节点的UUID以及用于指示该网络节点的节点类型的指示信息,本实施例以第一镜像报文和第二镜像报文均包括有UUID以及指示信息为例进行示例性说明:
控制节点将已接收到的第一测试报文所经由的每一网络节点所发送的第一镜像报文和第二镜像报文分别携带的网络节点的节点类型和UUID,与预设路径进行比对,从而确定出第一测试报文所经由的每一网络节点的网元实例,继续以图13所示为例,控制节点确定第一转发集群1303所上报的第一镜像和第二镜像报文包括的节点类型和预设路径所包括的节点类型相同,均为集中式虚拟路由器,则控制节点可根据第一转发集群1303所发送的第一镜像报文和第二镜像报文所包括的UUID,确定出用于转发第一测试报文的网元实例为第二集中式虚拟路由器,同理,控制节点可根据第二转发集群1304所发送的第一镜像报文和第二镜像报文所包括的UUID,确定出用于转发第一测试报文的网元实例为第N大二层网关。
可见,控制节点根据所接收到的所有第一镜像报文和第二镜像报文确定出目标节点类型对应的UUID,目标节点类型为预设路径所包括的任一节点类型,且目标节点类型为预设路径和镜像报文所包括的同一节点类型,则控制节点可根据所接收到的所有第一镜像报文和所有第二镜像报文刻画出流量地图,流量地图是指,第一测试报文传输的过程中依次经过的每一网络节点的UUID,如上述图13所示的示例,控制节点所刻画出的流量地图包括源节点1301的UUID、第二集中式虚拟路由器的UUID、第N大二层网关的UUID以及目的节点1302的UUID。
为更好的理解上述所示,以下结合表1所示,对控制节点基于路径上各网络节点上报的上述所示的指示信息和UUID,确定出第一测试报文的流量地图进行示例性说明:
表1
基于表1所示可知,控制节点通过该表1,能够指示出第一测试报文在路径中进行传输过程中,第一测试报文所经过的第一个网络节点的节点类型是“CNA”,且对应的UUID是“efec-fece-0987”,第一测试报文所经过的第二个网络节点的节点类型是“vRouter”,且对应的UUID是“VROUTER_server_2”,即图13所示的第二集中式虚拟路由器;第一测试报文所经过的第三个网络节点的节点类型是“L2GW”,且对应的UUID是“L2GW_server_N”,即图13所示的第N大二层网关;第一测试报文所经过的第四个网络节点的节点类型是“CNA”,且对应的UUID是“0c32-fece-641d”。
可见,采用本实施例所示的方法,在组网中,存在用于对第一测试报文进行转发的多个可选的路径的情况下,且在测试任务下发时,控制节点和处理器无法预先确定第一测试报文在传输过程中所经过的每个网络节点的网元实例的情况下,控制节点可基于第一镜像报文和第二镜像报文所包括的网络节点的节点类型和UUID确定出第一测试报文在传输的过程中实际所经由的路径,进而确定出源节点向目的节点发送的报文的走向。
本实施例所示的控制节点还可获取与第二测试报文对应的流量地图,其中,控制节点获取与第二测试报文对应的流量地图的具体过程的说明,请详见上述所示的控制节点获取与第一测试报文对应的流量地图为例进行示例性说明,具体在本实施例中不做赘述。
本实施例所示的步骤1213至步骤1214为可选执行的步骤。
步骤1215、控制节点向配置节点发送通知信息。
步骤1216、配置节点接收来自控制节点的评估结果信息。
本实施例所示的步骤1215至步骤1216的具体执行过程,请详见图7所示的步骤714至步骤715所示,具体不做赘述。
采用本实施例所示的方法的有益效果在于:
本实施例所示的方法中,控制节点通过路径上各网络节点上报的第一镜像报文和第二镜像报文,即可分析出网络节点和下一跳网络之间的链路、各个网络节点内部或第一测试报文传输过程中所经由的路径,是否出现故障,是否出现丢包事件以及是否出现网络拥塞事件等情况,从而实现了对路径上各网络节点相关传输性能的精确评估,降低了对组网进行传输性能评估的难度和开销,提高了评估效率。
因能够实现对出现丢包事件的网络节点的精确定位,则有效的避免了组网所出现的“灰度异常”的现象,而且能够确定出路径中,出现丢包事件的具体网络节点的UUID,或具体哪两个相邻的网络节点之间的链路出现了丢包事件,本实施例所示的方法,若组网出现“灰度异常”,则能够快速的实现对“灰度异常”的排查。
本实施例所示的控制节点能够针对测试报文确定出该测试报文的流量地图,即确定出测试报文传输过程中所经过的每一网络节点的具体网元实例,以使控制节点能够精确的确定源虚拟机和目的虚拟机之间进行传输的报文流向,以便于运维人员对组网进行流量调度、拥塞控制等。
基于图5、图7、图11以及图12所示的方法,以下结合图14所示对上述实施例所示的测试报文的配置过程和检测过程进行示例性说明:
步骤1401、配置节点接收测试任务信息。
步骤1402、配置节点向控制节点发送测试任务信息。
步骤1403、配置节点向源节点发送地址信息。
本实施例所示的步骤1401至步骤1403的具体执行过程,请详见图7所示的步骤701至步骤703所示,具体执行过程在本实施例中不做赘述。
步骤1404、源节点的代理根据地址信息配置第一测试报文。
具体的,本实施例所示的源节点所承载的代理用于进行第一测试报文的配置,代理所配置的第一测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,本实施例对第一标识字段和第二标识字段在第一测试报文中的具体位置不做限定,为提高对第一测试报文进行识别的效率,则第二标识字段的比特长度大于第一标识字段的比特长度,本实施例中,第一值和第二值共同指示一个报文为测试报文,具体的,在各报文镜像点接收到报文时,只有在报文镜像点确定出报文所包括的第一标识字段的取值为第一值,且报文所包括的第二标识字段的取值为第二值时,报文镜像点即可确定该报文为第一测试报文。
本实施例以第一测试报文的报文结构为网际协议版本4(internet protocolversion 4,IPv4)报文结构为例进行示例性说明,需明确的是,本实施例对第一测试报文的具体报文结构的说明为可选的示例,可选的,第一测试报文的报文结构还可为网际协议版本6(internet protocol version 6,IPv6)。
在第一测试报文的报文结构为IPv4报文结构的情况下,第一测试报文的报文结构可参见图15所示:如图15所示,第一测试报文1500由网络层头部1501和有效载荷数据1502构成,网络层头部1501可包括以太网头部(Ethernet Hdr),虚拟局域网(VLAN)号、IP头部、因特网控制信息协议(internet control message protocol,ICMP)头部、传输控制协议(transmission control protocol,TCP)头部、用户数据报协议(user datagramprotocol,UDP)头部等。
具体的,IP头部包括源IP地址、目的IP地址、协议、分片标志位等,其中,分片标志位的第一位(即预匹配比特字段)作为第一标识字段;在业务报文中,业务报文的IP头部所包括的保留位固定为0,在代理配置第一测试报文时,将该保留位设置为1。
在有效载荷数据1502内设置第二标识字段,本实施例中,第一标识字段的比特长度为1比特,本实施例对第二标识字段的长度不做限定,本实施例以第二标识字段的比特长度为128比特;有效载荷数据1502还包括测试任务标识、时间戳等,本实施例对有效载荷数据1502的其他结构的说明,不做限定。
可选的,本实施例所示的控制节点可预先向路径中的每个网络节点的代理发送取第一值的第一标识字段和取第二值的第二标识字段,在源节点的代理接收到取第一值的第一标识字段和取第二值的第二标识字段,且在源节点的代理接收到测试任务信息的情况下,源节点的代理即可配置包括有第一标识字段和第二标识字段的第一测试报文;通过上述实施例所示可知,源节点的代理将已配置完成的第一测试报文发送给源节点的第一报文镜像点。
步骤1405、源节点的报文镜像点判断报文的第一标识字段的取值是否为第一值,若是,则执行步骤1406,若否,则执行步骤1407。
具体的,在源节点的第一报文镜像点接收到报文后,该报文可能是源节点的代理向第一报文镜像点发送的第一测试报文,也可能是源虚拟机向第一报文镜像点发送的用于传输给目的虚拟机的业务报文,则第一报文镜像点需要对已接收到的报文进行识别,为识别出已接收到的报文是否为第一测试报文,则第一报文镜像点首先获取该报文所包括的第一标识字段,其中,第一标识字段在报文中的位置为预匹配比特字段,第一报文镜像点判断报文的第一标识字段是否取第一值;
若报文的第一标识字段的取值不为第一值,则说明该报文为需要传输给目的虚拟机进行处理的业务报文,则执行步骤1407;若报文的第一标识字段的取值为第一值,则确定该报文为预匹配报文,则需要执行步骤1406对该预匹配报文是否为第一测试报文进行进一步的精确判断,从而避免误判的可能。
以上述示例所示可知,第一标识字段为报文的IP头部内的预匹配比特字段且取值为1,第一报文镜像点接收到报文后,解析出报文的IP头部内的预匹配比特字段的取值,若取值为1,说明该报文为预匹配报文,若取值为0,说明该报文为业务报文。
步骤1406、源节点的报文镜像点判断预匹配报文的第二标识字段的取值是否为第二值,若否,则执行步骤1407,若是,则执行步骤1408。
在第一报文镜像点判断出预匹配报文的第二标识字段的取值为第二值的情况下,则第一报文镜像点确定出该预匹配报文为第一测试报文,若预匹配报文的第二标识字段的取值与第二值不相同时,则第一报文镜像点确定出该预匹配报文为业务报文。
步骤1407、源节点的虚拟交换机对业务报文进行处理。
本实施例中,在源节点的第一镜像点识别出业务报文的情况下,则该第一镜像点不对该业务报文进行镜像,并将该业务报文输入至虚拟交换机,以使虚拟交换机对该业务报文进行对应的处理,具体处理过程,请详见上述实施例所示,具体在本实施例中不做赘述。
步骤1408、源节点的报文镜像点对第一测试报文进行镜像以生成镜像报文。
在第一报文镜像点识别出报文为第一测试报文时,则源节点的第一报文镜像点对该第一测试报文进行镜像以生成第一镜像报文。
可选的,本实施例所示的第一报文镜像点可预先获取第一测试报文的匹配规则,匹配规则具体是指,第一报文镜像点通过步骤1405,实现对第一测试报文的预匹配,只有第一测试报文通过了预匹配之后,第一报文镜像点才会通过步骤1406实现对第一测试报文的精确匹配,在第一测试报文通过了精确匹配后,对第一测试报文进行镜像,其中,第一测试报文的匹配规则可存储于源节点的流表中或在第一报文镜像点的钩子函数(Hook)中增加第一测试报文的匹配规则。
本实施例所示的源节点内还包括有第二报文镜像点,对第二报文镜像点识别出第一测试报文,并对该第一测试报文进行镜像以生成第二镜像报文的具体过程,请详见上述所示的第一报文镜像点识别第一测试报文并生成第一镜像报文的具体说明,具体不做赘述。
步骤1409、源节点向控制节点发送镜像报文。
步骤1410、控制节点接收镜像报文。
本实施例所示的步骤1409至步骤1410的具体执行过程,请详见图7所示的步骤706至步骤707所示,具体执行过程不做赘述。
步骤1411、源节点向转发节点发送第一测试报文。
本实施例中,转发节点的第一报文镜像点和第二报文镜像点需要分别对已接收到的报文识别是否为第一测试报文,具体的识别过程,请参见上述步骤1406至步骤1408所示的源节点识别第一测试报文的具体过程,具体在本步骤中不做赘述。
步骤1412、转发节点向控制节点发送镜像报文。
本实施例所示的步骤1412的具体执行过程,请详见上述步骤710所示,具体执行过程不做赘述。
步骤1413、转发节点向目的节点发送第一测试报文。
本实施例中,目的节点的第一报文镜像点和第二报文镜像点需要分别对已接收到的报文识别是否为第一测试报文,具体的识别过程,请参见上述步骤1406至步骤1407所示的源节点识别第一测试报文的具体过程,具体在本步骤中不做赘述。
步骤1414、目的节点向控制节点发送镜像报文。
步骤1415、目的节点结束第一测试报文的转发。
步骤1416、控制节点根据镜像报文对路径的传输性能进行评估。
步骤1417、控制节点向配置节点发送通知信息。
步骤1418、配置节点接收来自控制节点的评估结果信息。
本实施例所示的步骤1414至步骤1418的具体执行过程,请详见图7所示的步骤711至步骤715所示,具体执行过程不做赘述。
本实施例以单向测试模式为例进行示例性说明,若本申请所示的评估网络节点相关传输性能的方法应用于双向测试模式,则目的节点配置第二测试报文的具体过程,请详见本实施例所示的源节点配置第一测试报文的具体过程,具体在本实施例中不做赘述;各网络节点识别已接收到的报文是否为第二测试报文的具体过程,请参见本实施例所示的各网络节点识别已接收到的报文是否为第一测试报文的具体过程,具体不做赘述。
采用本实施例所示的方法,可通过取第一值的第一标识字段和取第二值的第二标识字段共同指示一个报文为测试报文,以实现对测试报文的两级匹配,因第一标识字段的比特长度小于第二标识字段的比特长度,在报文的第一标识字段取值不为第一值时,不会耗费网络节点的资源对报文是否为测试报文继续进行检测,通过第一标识字段可以过滤大多数和测试报文无关的业务报文,从而节省了网络节点的资源,有效的降低对测试报文识别的开销。在报文的第一标识字段的取值为第一值时,网络节点才会判断报文的第二标识字段的取值是否为第二值,只有在报文的第二标识字段的取值为第二值,网络节点才会确定该报文为测试报文,因第二标识字段的比特长度比较长,通过第二标识字段对测试报文的识别避免了误识别的情况的出现,实现了对测试报文的精确识别,消除了对测试报文进行误识别的噪声。
为更好的理解上述实施例所示的评估网络节点相关传输性能的方法,以下结合各应用场景对本申请所示的评估网络节点相关传输性能的方法进行说明:
首先结合图16所示对本申请所示的评估网络节点相关传输性能的方法的一种应用场景进行示例性说明,通过该应用场景,能够实现对路径的丢包位置进行精确定位。
如图16所示,本应用场景以数据中心的“东西向虚拟私有云点对点连接流量”场景为例,“东西向虚拟私有云点对点连接流量”的预设路径上的网络节点依次为,源虚拟机所位于的源计算节点、集中式虚拟路由器(VROUTER)、大二层网关(L2GW)以及目的虚拟机所位于的目的计算节点。
本应用场景中,设定源虚拟机位于第一虚拟私有云(virtual private cloud,VPC),目的虚拟机位于第二VPC中,且第一VPC和第二VPC存在对等连接,用户通过源虚拟机访问目的虚拟机时,发现有灰度丢包的情况,即源虚拟机向目的虚拟机的某一个端口发送的报文,有一部分能够通过,而另一部分无法通过,导致源虚拟机和目的虚拟机之间的业务时断时续,运维人员根据该情况,确定源虚拟机和目的虚拟机之间的网络存在集群,以使从源虚拟机发出的报文可通过多种路径传输至目的虚拟机,而源虚拟机和目的虚拟机之间的多路径中,至少一条路径出现异常断路,导致丢包。
因此,运维人员通过配置节点1601创建测试任务信息,配置节点1601可将测试任务信息发送给源计算节点1603,由源计算节点1603配置由源虚拟机向目的虚拟机的第一测试报文,具体过程,请详见上述实施例所示,具体不做赘述;
本应用场景以源计算节点1603向目的计算节点1604发送第一测试报文的次数为10次为例进行示例性说明,具体的,源节点的代理将配置完成的第一测试报文向源节点的第一报文镜像点发送10次,每次发送的第一测试报文均通过第一报文镜像点流入源节点的虚拟交换机,并经由第二报文镜像点从虚拟交换机流出,对第一报文镜像点和第二报文镜像点的说明,请详见上述示例所示,具体不做赘述。
按第一测试报文的五元组的指示,从源计算节点1603流出的第一测试报文的下一跳为集中式虚拟路由器集群,该集中式虚拟路由器集群内有两个能够实现对第一测试报文进行转发的集中式虚拟路由器,即第一集中式虚拟路由器1605和第二集中式虚拟路由器1606;
因源计算节点1603向集中式虚拟路由器发送了10个第一测试报文,则集中式虚拟路由器集群接收到第一测试报文后,基于随时分发的原则可将10个第一测试报文中的3个发送给第一集中式虚拟路由器1605,将另外的7个发送给第二集中式虚拟路由器1606。
第一集中式虚拟路由器1605和第二集中式虚拟路由器1606,均需要通过第一报文镜像点对第一测试报文进行镜像以生成第一镜像报文,并将该第一镜像报文发送给控制节点1602,还需要通过第二报文镜像点对第一测试报文进行镜像以生成第二镜像报文,并将该第二镜像报文发送给控制节点1602,对第一报文镜像点和第二报文镜像点的具体说明,请详见上述实施例所示,具体不做赘述。
以第一集中式虚拟路由器1605为例,控制节点1602接收到第一集中式虚拟路由器1605上报的第一镜像报文后,以第一镜像报文所携带的第一生成时间戳为计时起点开始计时,判断第一集中式虚拟路由器1605是否在第一目标时长内接收到第一集中式虚拟路由器1605上报的第二镜像报文,本应用场景中,以控制节点1602接收到第二集中式虚拟路由器1606上报的第一镜像报文后,在第一目标时长内没有接收到第二集中式虚拟路由器1606上报的第二镜像报文,说明第二集中式虚拟路由器1606内部出现丢包事件,第二集中式虚拟路由器1606无法将第一测试报文向下一跳大二层网关集群转发。
可见,采用本应用场景所示,源计算节点1603发送的10次第一测试报文的丢包位置检测结果如表2所示,所发送的10次第一测试报文中,发生了7次丢包事件,即控制节点1602接收到第二集中式虚拟路由器1606上报的第一镜像报文,超过第一目标时长还是没有检测到第二集中式虚拟路由器1606上报的第二镜像报文,则确定出丢包事件,且丢包位置均在第二集中式虚拟路由器1606内部。其他的3次测试报文被分发到了第一集中式虚拟路由器1605上,可以正常的向下一跳大二层网关集群转发。以使控制节点1602能够精确诊断出“灰度丢包”的故障点位置是集中式虚拟路由器集群中的第二集中式虚拟路由器1606,实现了对“灰度丢包”的精确定位。
表2
网元实例 | 收到第一镜像报文的数量 | 收到第二镜像报文的数量 |
第一集中式虚拟路由器 | 3 | 3 |
第二集中式虚拟路由器 | 7 | 0 |
本应用场景还可评估源虚拟机和目的虚拟机之间的网络中,出现拥塞等异常的网络节点,具体如下:
继续以图16所示为例,本示例中以预设路径中的各网络节点均能够实现报文的正常转发为例,但是源虚拟机向目的虚拟机发送的ping测试时,发现某些ping的时延过长。为了发现瓶颈位置,由源计算节点1603配置第一测试报文。
控制节点1602接收到各网络节点发送的第一镜像报文和第二镜像报文后,即可确定出同一第一测试报文进出该网络节点的第一目标时延,对第一目标时延的具体说明,请详见上述所示,具体不做赘述。
例如,源计算节点1603共发送4000次第一测试报文,控制节点1602在分析每个网络节点的分组处理时延后,发现源虚拟机所在的源计算节点1603的处理时延存在异常,如表3所示,控制节点1602根据源计算节点1603所上报的所有第一镜像报文和第二镜像报文,能够确定出源计算节点1603转发4000个第一测试报文时,转发每个第一测试报文的第一目标时延,控制节点1602计算获取4000个第一目标时延,其中,4000个第一目标时延的最小值作为表3中的最小点内处理时延,4000个第一目标时延的最大值作为表3中的最大点内处理时延,4000个第一目标时延的平均值作为表3中的平均点内处理时延,4000个第一目标时延的标准差作为点内处理时延标准差,控制节点1602针对源计算节点1603的统计情况具体可参见表3所示。
从表3所示的测量结果看出,源计算节点1603内平均点内处理时延正常,所以租户的大多数ping测试结果正常。但是表3中的最大点内处理时延明显过大,由此定位源计算节点1603上的负责对第一测试报文进行转发的虚拟交换机存在偶发拥塞或其他异常,提示运维人员在该源计算节点1603内部进一步排查。
表3
节点类型 | 计算节点(CNA) |
uuid | 60c6c579-b9c1-4172-85bd-27f648132a40 |
第一测试报文的数量 | 4000 |
最小点内处理时延(ms) | 0.025331 |
最大点内处理时延(ms) | 0.410671 |
平均点内处理时延(ms) | 0.041166353 |
点内处理时延标准差 | 0.00727703 |
继续参见图16所示,预设路径上包括集中式虚拟路由器集群和大二层网关集群,在源虚拟机向目的虚拟机发送业务报文时,无法确定出业务报文所经由的实际转发路径,即无法确定出集中式虚拟路由器集群中,实际负责转发业务报文的集中式虚拟路由器,也无法确定出大二层网关集中中,实际负责转发业务报文的大二层网关。
为确定出源虚拟机和目的虚拟机之间真实的报文转发路径,则本应用场景以源计算节点1603的代理将第一测试报文向第一报文镜像点发送10次为例,而源计算节点1603向控制节点1602发送的第一镜像报文和第二镜像报文均包括用于指示网元类型的指示信息和UUID,具体说明请详见上述实施例所示,具体不做赘述;
控制节点1602根据各镜像报文所包括的指示信息和UUID还原出第一测试报文在源计算节点1603和目的计算节点1604之间进行转发的实际路径,以下结合表4所示,可以看出,由于集群多路径的存在,从源计算节点1603发出的10个第一测试报文被分发到了两条路径中,第一条路径覆盖了4个第一测试报文,第二条路径覆盖了6个第一测试报文。控制节点1602所统计的表3中给出了每条路径上网络节点的具体类型和UUID。运维人员通过该结果,可以刻画多路径场景中的流量地图,了解源计算节点1603和目的计算节点1604之间的所传输的报文具体的流量走向。
表4
表4
由表4所所示可知,源计算节点1603的节点类型是“CNA”,UUID是“efec-fece-0987”,从源计算节点1603所发送的10个第一测试报文中,4个第一测试报文沿第一条路径进行了传输,其中,第一条路径依次包括源计算节点1603、第一集中式虚拟路由器1605、第二大二层网关1608以及目的计算节点1604,其中,第一集中式虚拟路由器1605的类型是“vRouter”,UUID是“VROUTER_server_1”,第二大二层网关1608的类型是“L2GW”,UUID是“L2GW_server_2”,目的计算节点1604的类型是“CNA”,UUID是“0c32-fece-641d”。从源计算节点1603所发送的10个第一测试报文中,6个第一测试报文沿第二条路径进行了传输,其中,第二条路径依次包括源计算节点1603、第二集中式虚拟路由器1606、第二大二层网关1608以及目的计算节点1604,其中,第二集中式虚拟路由器1606的类型是“vRouter”,UUID是“VROUTER_server_2”,第二大二层网关1608的类型是“L2GW”,UUID是“L2GW_server_2”。
以上结合图5、图7、图11、图12以及图14对本申请提供的评估网络节点相关传输性能的方法进行了详细说明,下面结合图17介绍本申请提供的网络节点1700,网络节点1700属于一条从源节点到目的节点的路径,本实施例所示的网络节点1700用于执行上述实施例所示的评估网络节点相关传输性能的方法,具体执行过程,请详见上述实施例所示,具体不做赘述;
网络节点1700包括:
获取单元1701,用于获取测试报文,该测试报文包括与该路径对应的五元组;
处理单元1702,用于通过虚拟交换机处理该测试报文,以生成该测试报文对应的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置,该镜像报文用于评估该路径中,与该网络节点相关的至少一部分链路的传输性能;
发送单元1703,用于向控制节点发送该镜像报文。
可选的,处理单元1702具体用于,通过该网络节点的第一报文镜像点对该测试报文进行镜像以生成第一镜像报文,该测试报文经由该第一报文镜像点流入该虚拟交换机;和/或,通过该网络节点的第二报文镜像点对该测试报文进行镜像以生成第二镜像报文,该测试报文经由该第二报文镜像点流出该虚拟交换机。
可选的,测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,第一值和第二值共同指示一个报文为测试报文,第二标识字段的比特长度大于第一标识字段的长度。
可选的,第一标识字段为报文头部的预匹配比特字段,第二标识字段位于测试报文的有效载荷数据内部。
可选的,获取单元1701还用于,基于取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;并基于取第二值的第二标识字段,在至少一个预匹配报文中,确定出测试报文。
可选的,网络节点为目的节点,获取单元1701具体用于,接收到第一测试报文,第一测试报文携带的源地址为源节点的地址且携带的目的地址为目的节点的地址,处理单元1702还用于,在确定获取单元1701接收到第一测试报文的情况下,触发发送单元1703发送第二测试报文,发送单元1703还用于,向源节点发送第二测试报文,第二测试报文携带的源地址为目的节点的地址且携带的目的地址为源节点的地址。
可选的,网络节点为源节点或目的节点,处理单元1702还用于,通过第二报文镜像点结束测试报文的转发。
可选的,发送单元1703还用于,基于虚拟交换机根据测试报文包括的五元组,向下一跳网络节点转发测试报文。
以上结合图5、图7、图11、图12以及图14对本申请提供的评估网络节点相关传输性能的方法进行了详细说明,下面结合图18介绍本申请提供的控制节点1800,控制节点1800与一条从源节点到目的节点的路径所包括的多个网络节点分别耦接,本实施例所示的控制节点1800用于执行上述实施例所示的评估网络节点相关传输性能的方法,具体执行过程,请详见上述实施例所示,具体不做赘述;
控制节点1800包括:
接收单元1801,用于接收来自该网络节点的镜像报文,该镜像报文携带生成时间戳和生成位置信息,该生成时间戳用于指示该镜像报文生成时间的时间戳,该生成位置信息用于指示生成该镜像报文的位置;
处理单元1802,用于根据该镜像报文评估该路径中,与该网络节点相关的至少一部分链路的传输性能。
可选的,接收单元1801具体用于:接收来自该网络节点的第一镜像报文,该第一镜像报文所携带的第一生成位置信息用于指示该第一镜像报文在该网络节点的第一报文镜像点处生成,该第一镜像报文所携带的第一生成时间戳用于指示该第一报文镜像点生成该第一镜像报文的时间戳;和/或,接收来自该网络节点的第二镜像报文,该第二镜像报文所携带的第二生成位置信息用于指示该第二镜像报文在该网络节点的第二报文镜像点处生成,该第二镜像报文所携带的第二生成时间戳用于指示该第二报文镜像点生成该第二镜像报文的时间戳。
可选的,该处理单元1802具体用于,在第一目标时长内未接收到来自该网络节点的该第二镜像报文的情况下,生成第一事件信息,该第一事件信息用于指示该网络节点出现丢包事件,该第一目标时长的计时起点为该接收单元1801已接收的该第一镜像报文所携带的该第一生成时间戳,且该第一镜像报文所携带的该第一生成位置信息和该第二镜像报文所携带的该第二生成位置信息共同用于指示该网络节点。
可选的,该路径中还包括该网络节点的下一跳网络节点,该处理单元1802具体用于,在第二目标时长内未接收到来自该下一跳网络节点的第三镜像报文的情况下,生成第二事件信息,该第二事件信息用于指示该网络节点和该下一跳网络节点之间的链路出现丢包事件,该第二目标时长的计时起点为该接收单元1801从该网络节点已接收的该第二镜像报文所携带的第二生成时间戳,该第二镜像报文所携带的该生成位置信息用于指示该网络节点。
可选的,处理单元1802还用于,获取第一目标时延,第一目标时延为同一网络节点发送的第二生成时间戳和第一生成时间戳之间的差值。
可选的,处理单元1802具体用于,在第一目标时延大于或等于第一超时阈值的情况下,生成第一拥塞指示信息,第一拥塞指示信息用于指示网络节点内出现网络拥塞事件。
可选的,路径包括相邻的网络节点和下一跳网络节点,该下一跳网络节点为该网络节点的下一跳网络节点,处理单元1802还用于,获取第二目标时延,第二目标时延为下一跳网络节点发送的生成时间戳和网络节点发送的第二生成时间戳之间的差值。
可选的,处理单元1802具体用于,在第二目标时延大于或等于第二超时阈值的情况下,生成第二拥塞指示信息,第二拥塞指示信息用于指示网络节点和下一跳网络节点之间的链路出现网络拥塞事件。
可选的,该生成位置信息包括该网络节点的通用唯一识别码UUID,处理单元1802还用于,根据已接收到的来自该路径中的每一该网络节点的该镜像报文,获取该路径中的每一该网络节点的该UUID。
以下结合图19所示,从实体硬件的角度对设备的具体结构进行示例性说明,其中,图19所示的设备可作为控制节点或网络节点执行上述实施例所示的评估网络节点相关传输性能的方法,具体执行过程,请详见上述实施例所示,具体不做赘述。
如图19所示,设备1900包括:至少一个处理器1901,通信总线1902,存储介质1903以及至少一个通信接口1904。
处理器1901可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路,本实施例以所述处理器1901为集成电路为例进行示例性说明。
通信总线1902可包括一通路,在上述组件之间传送信息。
通信接口1904,使用任何收发器一类的装置,如该通信接口1904可为输入/输出接口、管脚或电路等。该通信接口1904用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area networks,WLAN)等。
存储介质1903可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储介质可以是独立存在,通过总线与处理器相连接。存储介质也可以和处理器集成在一起。
在具体实现中,作为一种实施例,设备1900还可以包括输出设备1905和输入设备1906。输出设备1905和处理器1901通信。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被计算机执行时,使得计算机执行任意一个方法实施例中由网络节点执行的操作和/或处理或使得计算机执行任意一个方法实施例中由控制节点执行的操作和/或处理。
本申请还提供一种计算机程序产品,计算机程序产品包括计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行任意一个方法实施例中由网络节点执行的操作和/或处理或使得计算机执行任意一个方法实施例中由控制节点执行的操作和/或处理。
本申请还提供一种芯片,芯片包括处理器,用于存储计算机程序的存储器独立于芯片而设置,处理器用于执行存储器中存储的计算机程序,以执行任意一个方法实施例中由网络节点执行的操作和/或处理或使得计算机执行任意一个方法实施例中由控制节点执行的操作和/或处理。进一步地,芯片还可以包括存储器和/或通信接口。通信接口可以是输入输出接口,输入输出电路等。
以上各实施例中提及的处理器可以是集成电路芯片,具有处理信号的能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。处理器可以是通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。本申请实施例公开的方法的步骤可以直接体现为硬件编码处理器执行完成,或者用编码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现,具体取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
该功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上该,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (33)
1.一种评估网络节点相关传输性能的系统,其特征在于,所述系统包括网络节点和与所述网络节点耦接的控制节点,所述网络节点属于一条路径:
所述网络节点用于获取测试报文,所述测试报文包括与所述路径对应的五元组;通过虚拟交换机处理所述测试报文,以生成所述测试报文对应的镜像报文,所述镜像报文携带生成时间戳和生成位置信息,所述生成时间戳用于指示所述镜像报文生成时间的时间戳,所述生成位置信息用于指示生成所述镜像报文的位置;所述控制节点用于接收来自所述网络节点所述镜像报文,以根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能;
所述测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,所述第一值和所述第二值共同指示一个报文为测试报文,所述第二标识字段的比特长度大于所述第一标识字段的长度;
所述网络节点具体用于:
基于所述取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;
基于取第二值的第二标识字段,在所述至少一个预匹配报文中,确定出所述测试报文。
2.根据权利要求1所述的系统,其特征在于,与所述网络节点相关的至少一部分链路的传输性能包括所述网络节点的传输性能,和/或,所述网络节点和所述路径中任一其他网络节点之间的链路的传输性能。
3.根据权利要求1或2所述的系统,其特征在于,所述网络节点具体用于;
通过第一报文镜像点对所述测试报文进行镜像以生成第一镜像报文,所述测试报文经由所述第一报文镜像点流入所述虚拟交换机;
和/或,
通过第二报文镜像点对所述测试报文进行镜像以生成第二镜像报文,所述测试报文经由所述第二报文镜像点流出所述虚拟交换机。
4.根据权利要求3所述的系统,其特征在于,所述控制节点具体用于:
在第一目标时长内未接收到来自所述网络节点的所述第二镜像报文的情况下,生成第一事件信息,所述第一事件信息用于指示所述网络节点出现丢包事件,所述第一目标时长的计时起点为所述控制节点已接收的所述第一镜像报文所携带的第一生成时间戳,且所述第一镜像报文所携带的所述生成位置信息和所述第二镜像报文所携带的所述生成位置信息共同用于指示所述网络节点。
5.根据权利要求3所述的系统,其特征在于,所述系统还包括在所述路径中,所述网络节点的下一跳网络节点;
所述网络节点还用于向所述下一跳网络节点发送处理后的所述测试报文;
所述下一跳网络节点用于接收来自所述网络节点的所述测试报文,基于所述测试报文生成第三镜像报文,以及向所述控制节点发送所述第三镜像报文;
所述控制节点还用于:在第二目标时长内未接收到来自所述下一跳网络节点的所述第三镜像报文的情况下,生成第二事件信息,所述第二事件信息用于指示所述网络节点和所述下一跳网络节点之间的链路出现丢包事件,所述第二目标时长的计时起点为所述控制节点从所述网络节点已接收的所述第二镜像报文所携带的第二生成时间戳,所述第二镜像报文所携带的所述生成位置信息用于指示所述网络节点,所述第三镜像报文所携带的位置信息用于指示所述下一跳网络节点。
6.根据权利要求1所述的系统,其特征在于,所述第一标识字段为报文头部的预匹配比特字段,所述第二标识字段位于所述测试报文的有效载荷数据内部。
7.一种评估网络节点相关传输性能的方法,其特征在于,所述方法用于网络节点,所述网络节点属于一条从源节点到目的节点的路径,所述方法包括:
所述网络节点获取测试报文,所述测试报文包括与所述路径对应的五元组;
所述网络节点通过虚拟交换机处理所述测试报文,以生成所述测试报文对应的镜像报文,所述镜像报文携带生成时间戳和生成位置信息,所述生成时间戳用于指示所述镜像报文生成时间的时间戳,所述生成位置信息用于指示生成所述镜像报文的位置,所述镜像报文用于评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能;
所述网络节点向控制节点发送所述镜像报文;
所述测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,所述第一值和所述第二值共同指示一个报文为测试报文,所述第二标识字段的比特长度大于所述第一标识字段的长度;
所述网络节点获取测试报文包括:
所述网络节点基于所述取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;
所述网络节点基于取第二值的第二标识字段,在所述至少一个预匹配报文中,确定出所述测试报文。
8.根据权利要求7所述的方法,其特征在于,与所述网络节点相关的至少一部分链路的传输性能包括所述网络节点的传输性能,和/或,所述网络节点和所述路径中任一其他网络节点之间的链路的传输性能。
9.根据权利要求7或8所述的方法,其特征在于,所述网络节点通过虚拟交换机处理所述测试报文,以生成所述测试报文的镜像报文包括:
所述网络节点的第一报文镜像点对所述测试报文进行镜像以生成第一镜像报文,所述测试报文经由所述第一报文镜像点流入所述虚拟交换机;
和/或,
所述网络节点的第二报文镜像点对所述测试报文进行镜像以生成第二镜像报文,所述测试报文经由所述第二报文镜像点流出所述虚拟交换机。
10.根据权利要求7所述的方法,其特征在于,所述第一标识字段为报文头部的预匹配比特字段,所述第二标识字段位于所述测试报文的有效载荷数据内部。
11.根据权利要求9所述的方法,其特征在于,所述网络节点为所述目的节点,则所述网络节点获取测试报文之后,所述方法还包括:
所述网络节点接收到第一测试报文的情况下,所述网络节点向源节点发送第二测试报文,所述第一测试报文携带的源地址为所述源节点的地址且携带的目的地址为所述目的节点的地址,所述第二测试报文携带的源地址为所述目的节点的地址且携带的目的地址为所述源节点的地址。
12.根据权利要求11所述的方法,其特征在于,若所述网络节点为目的节点,所述方法还包括:所述网络节点的第二报文镜像点结束第一测试报文的转发。
13.根据权利要求11所述的方法,其特征在于,若所述网络节点为源节点,所述方法还包括:所述网络节点的第二报文镜像点结束所述第二测试报文的转发。
14.根据权利要求7所述的方法,其特征在于,所述网络节点通过虚拟交换机处理所述测试报文,以生成所述测试报文的镜像报文之后,所述方法还包括:
所述网络节点的虚拟交换机根据所述测试报文包括的五元组,向所述路径中,所述网络节点的下一跳网络节点转发所述测试报文。
15.一种评估网络节点相关传输性能的方法,其特征在于,所述方法用于控制节点,所述控制节点与网络节点耦接,所述网络节点属于一条从源节点到目的节点的路径,所述方法包括:
所述控制节点接收来自所述网络节点的镜像报文,所述镜像报文携带生成时间戳和生成位置信息,所述生成时间戳用于指示所述镜像报文生成时间的时间戳,所述生成位置信息用于指示生成所述镜像报文的位置;
所述控制节点根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能;
所述镜像报文包括取第一值的第一标识字段和取第二值的第二标识字段,所述第一值和所述第二值共同指示一个报文为测试报文的镜像报文,所述第二标识字段的比特长度大于所述第一标识字段的长度;所述取第一值的第一标识字段用于从已接收到的多个报文中,确定出至少一个预匹配报文;所述取第二值的第二标识字段用于在所述至少一个预匹配报文中,确定出所述测试报文。
16.根据权利要求15所述的方法,其特征在于,所述控制节点接收来自所述网络节点的镜像报文包括:
所述控制节点接收来自所述网络节点的第一镜像报文,所述第一镜像报文所携带的第一生成位置信息用于指示所述第一镜像报文在所述网络节点的第一报文镜像点处生成,所述第一镜像报文所携带的第一生成时间戳用于指示所述第一报文镜像点生成所述第一镜像报文的时间戳;
和/或,
所述控制节点接收来自所述网络节点的第二镜像报文,所述第二镜像报文所携带的第二生成位置信息用于指示所述第二镜像报文在所述网络节点的第二报文镜像点处生成,所述第二镜像报文所携带的第二生成时间戳用于指示所述第二报文镜像点生成所述第二镜像报文的时间戳。
17.根据权利要求16所述的方法,其特征在于,所述控制节点根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能包括:
在第一目标时长内未接收到来自所述网络节点的所述第二镜像报文的情况下,所述控制节点生成第一事件信息,所述第一事件信息用于指示所述网络节点出现丢包事件,所述第一目标时长的计时起点为所述控制节点已接收的所述第一镜像报文所携带的所述第一生成时间戳,且所述第一镜像报文所携带的所述第一生成位置信息和所述第二镜像报文所携带的所述第二生成位置信息共同用于指示所述网络节点。
18.根据权利要求16所述的方法,其特征在于,所述路径中还包括所述网络节点的下一跳网络节点,所述控制节点根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能包括:
在第二目标时长内未接收到来自所述下一跳网络节点的第三镜像报文的情况下,所述控制节点生成第二事件信息,所述第二事件信息用于指示所述网络节点和所述下一跳网络节点之间的链路出现丢包事件,所述第二目标时长的计时起点为所述控制节点从所述网络节点已接收的所述第二镜像报文所携带的第二生成时间戳,所述第二镜像报文所携带的所述生成位置信息用于指示所述网络节点。
19.根据权利要求16所述的方法,其特征在于,所述方法还包括:
所述控制节点获取第一目标时延,所述第一目标时延为所述第二镜像报文所携带的所述第二生成时间戳和所述第一镜像报文所携带的第一生成时间戳之间的差值。
20.根据权利要求19所述的方法,其特征在于,所述控制节点根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能包括:
在所述第一目标时延大于或等于第一超时阈值的情况下,所述控制节点生成第一拥塞指示信息,所述第一拥塞指示信息用于指示所述网络节点内出现网络拥塞事件。
21.根据权利要求16、19以及20中的任一项所述的方法,其特征在于,所述路径还包括所述网络节点的下一跳网络节点,所述方法还包括:
所述控制节点获取第二目标时延,所述第二目标时延为所述下一跳网络节点所发送的第三镜像报文所携带的生成时间戳和所述网络节点所发送的所述第二镜像报文所携带的所述第二生成时间戳之间的差值。
22.根据权利要求21所述的方法,其特征在于,所述控制节点根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能包括:
在所述第二目标时延大于或等于第二超时阈值的情况下,所述控制节点生成第二拥塞指示信息,所述第二拥塞指示信息用于指示所述网络节点和所述下一跳网络节点之间的链路出现网络拥塞事件。
23.根据权利要求15所述的方法,其特征在于,所述生成位置信息包括所述网络节点的通用唯一识别码UUID,所述方法还包括:
所述控制节点根据已接收到的来自所述路径中的每一所述网络节点的所述镜像报文,获取所述路径中的每一所述网络节点的所述UUID。
24.一种网络节点,其特征在于,所述网络节点属于一条从源节点到目的节点的路径,所述网络节点包括:
获取单元,用于获取测试报文,所述测试报文包括与所述路径对应的五元组;
处理单元,用于通过虚拟交换机处理所述测试报文,以生成所述测试报文对应的镜像报文,所述镜像报文携带生成时间戳和生成位置信息,所述生成时间戳用于指示所述镜像报文生成时间的时间戳,所述生成位置信息用于指示生成所述镜像报文的位置,所述镜像报文用于评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能;
发送单元,用于向控制节点发送所述镜像报文;
所述测试报文包括取第一值的第一标识字段和取第二值的第二标识字段,所述第一值和所述第二值共同指示一个报文为测试报文,所述第二标识字段的比特长度大于所述第一标识字段的长度;
所述获取单元还用于,基于所述取第一值的第一标识字段,从已接收到的多个报文中,确定出至少一个预匹配报文;并基于取第二值的第二标识字段,在所述至少一个预匹配报文中,确定出所述测试报文。
25.根据权利要求24所述的网络节点,其特征在于,所述处理单元具体用于:
通过所述网络节点的第一报文镜像点对所述测试报文进行镜像以生成第一镜像报文,所述测试报文经由所述第一报文镜像点流入所述虚拟交换机;
和/或,
通过所述网络节点的第二报文镜像点对所述测试报文进行镜像以生成第二镜像报文,所述测试报文经由所述第二报文镜像点流出所述虚拟交换机。
26.根据权利要求24所述的网络节点,其特征在于,所述第一标识字段为报文头部的预匹配比特字段,所述第二标识字段位于所述测试报文的有效载荷数据内部。
27.一种控制节点,其特征在于,所述控制节点与网络节点耦接,所述网络节点属于一条从源节点到目的节点的路径,所述控制节点包括:
接收单元,用于接收来自所述网络节点的镜像报文,所述镜像报文携带生成时间戳和生成位置信息,所述生成时间戳用于指示所述镜像报文生成时间的时间戳,所述生成位置信息用于指示生成所述镜像报文的位置;
处理单元,用于根据所述镜像报文评估所述路径中,与所述网络节点相关的至少一部分链路的传输性能;
其中,所述镜像报文包括取第一值的第一标识字段和取第二值的第二标识字段,所述第一值和所述第二值共同指示一个报文为测试报文的镜像报文,所述第二标识字段的比特长度大于所述第一标识字段的长度;所述取第一值的第一标识字段用于从已接收到的多个报文中,确定出至少一个预匹配报文;所述取第二值的第二标识字段用于在所述至少一个预匹配报文中,确定出所述测试报文。
28.根据权利要求27所述的控制节点,其特征在于,所述接收单元具体用于:
接收来自所述网络节点的第一镜像报文,所述第一镜像报文所携带的第一生成位置信息用于指示所述第一镜像报文在所述网络节点的第一报文镜像点处生成,所述第一镜像报文所携带的第一生成时间戳用于指示所述第一报文镜像点生成所述第一镜像报文的时间戳;
和/或,
接收来自所述网络节点的第二镜像报文,所述第二镜像报文所携带的第二生成位置信息用于指示所述第二镜像报文在所述网络节点的第二报文镜像点处生成,所述第二镜像报文所携带的第二生成时间戳用于指示所述第二报文镜像点生成所述第二镜像报文的时间戳。
29.根据权利要求28所述的控制节点,其特征在于,所述处理单元具体用于,在第一目标时长内未接收到来自所述网络节点的所述第二镜像报文的情况下,生成第一事件信息,所述第一事件信息用于指示所述网络节点出现丢包事件,所述第一目标时长的计时起点为所述接收单元已接收的所述第一镜像报文所携带的所述第一生成时间戳,且所述第一镜像报文所携带的所述第一生成位置信息和所述第二镜像报文所携带的所述第二生成位置信息共同用于指示所述网络节点。
30.根据权利要求28所述的控制节点,其特征在于,所述路径中还包括所述网络节点的下一跳网络节点,所述处理单元具体用于,在第二目标时长内未接收到来自所述下一跳网络节点的第三镜像报文的情况下,生成第二事件信息,所述第二事件信息用于指示所述网络节点和所述下一跳网络节点之间的链路出现丢包事件,所述第二目标时长的计时起点为所述接收单元从所述网络节点已接收的所述第二镜像报文所携带的第二生成时间戳,所述第二镜像报文所携带的所述生成位置信息用于指示所述网络节点。
31.一种用于评估网络节点相关传输性能的设备,其特征在于,所述设备包括处理电路、存储介质和通信接口,所述处理电路用于执行所述存储介质所存储的指令,以使所述设备作为网络节点执行权利要求7至14任一项所述的方法。
32.一种用于评估网络节点相关传输性能的设备,其特征在于,所述设备包括处理电路、存储介质和通信接口,所述处理电路用于执行所述存储介质所存储的指令,以使所述设备作为控制节点执行权利要求15至23任一项所述的方法。
33.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行权利要求7至14任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910696540.0A CN112311614B (zh) | 2019-07-30 | 2019-07-30 | 评估网络节点相关传输性能的系统、方法以及相关设备 |
EP20847371.0A EP4002769B1 (en) | 2019-07-30 | 2020-06-11 | System and method for evaluating transmission performance related to network node and related device |
PCT/CN2020/095574 WO2021017658A1 (zh) | 2019-07-30 | 2020-06-11 | 评估网络节点相关传输性能的系统、方法以及相关设备 |
US17/586,853 US12126514B2 (en) | 2019-07-30 | 2022-01-28 | System and method for evaluating transmission performance related to network node, and related device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910696540.0A CN112311614B (zh) | 2019-07-30 | 2019-07-30 | 评估网络节点相关传输性能的系统、方法以及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112311614A CN112311614A (zh) | 2021-02-02 |
CN112311614B true CN112311614B (zh) | 2022-10-04 |
Family
ID=74230061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910696540.0A Active CN112311614B (zh) | 2019-07-30 | 2019-07-30 | 评估网络节点相关传输性能的系统、方法以及相关设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US12126514B2 (zh) |
EP (1) | EP4002769B1 (zh) |
CN (1) | CN112311614B (zh) |
WO (1) | WO2021017658A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11895092B2 (en) * | 2019-03-04 | 2024-02-06 | Appgate Cybersecurity, Inc. | Network access controller operation |
JP2021182689A (ja) * | 2020-05-19 | 2021-11-25 | 富士通株式会社 | スイッチ特定方法、及びスイッチ特定プログラム |
CN113037859B (zh) * | 2021-03-24 | 2022-04-22 | 新华三技术有限公司 | 一种会话信息管理方法、装置、交换设备及介质 |
CN113328956B (zh) * | 2021-06-07 | 2022-07-01 | 新华三技术有限公司 | 一种报文处理方法及装置 |
CN113542077B (zh) * | 2021-09-17 | 2022-01-21 | 南京赛宁信息技术有限公司 | openstack加密链路管理方法和系统 |
US11570058B1 (en) * | 2021-10-05 | 2023-01-31 | Bank Of America Corporation | Auto simulation of connectivity checks from the client side |
CN114172830B (zh) * | 2021-10-28 | 2023-12-12 | 阿里巴巴(中国)有限公司 | 网络时延检测方法、装置以及系统 |
CN115001988B (zh) * | 2022-05-20 | 2023-09-26 | 东北大学 | 一种基于跨链的多公有链网络中的实体分析方法 |
CN115412447B (zh) * | 2022-08-19 | 2024-05-24 | 浪潮思科网络科技有限公司 | 一种基于sdn的业务测试方法、设备及介质 |
CN117955880B (zh) * | 2024-03-26 | 2024-06-11 | 亚信科技(中国)有限公司 | 时延监测方法、装置、存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1802037A2 (en) * | 2005-12-23 | 2007-06-27 | Agilent Technologies, Inc. | System and method for measuring network performance using real network traffic |
CN102685014A (zh) * | 2012-05-29 | 2012-09-19 | 华为技术有限公司 | 用于测量业务流的性能指标的方法和发送端设备 |
CN103152223A (zh) * | 2013-03-15 | 2013-06-12 | 华为技术有限公司 | 网络性能监测方法及装置 |
CN106506636A (zh) * | 2016-11-04 | 2017-03-15 | 武汉噢易云计算股份有限公司 | 一种基于OpenStack的云平台集群方法及系统 |
CN107453884A (zh) * | 2016-05-30 | 2017-12-08 | 华为技术有限公司 | 一种网络设备的服务质量检测方法和装置 |
CN107820225A (zh) * | 2017-11-02 | 2018-03-20 | 中山大学 | 一种能量均衡的无线传感网络节点代码分发方法 |
CN108075936A (zh) * | 2016-11-16 | 2018-05-25 | 中国移动通信有限公司研究院 | VxLAN探测方法及装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101145848B1 (ko) * | 2006-11-29 | 2012-05-17 | 삼성전자주식회사 | 콘텐츠 전송을 위한 접근 제어 방법 및 상기 접근 제어방법을 이용하는 네트워크의 노드 |
CN101729197B (zh) * | 2008-10-14 | 2014-04-16 | 华为技术有限公司 | 一种丢包率检测方法、装置及系统 |
JP5538652B2 (ja) * | 2010-12-20 | 2014-07-02 | 三菱電機株式会社 | ネットワークの状態監視方式 |
US8964553B2 (en) * | 2011-12-13 | 2015-02-24 | Ixia | Network impairment unit with bandwidth-constrained packet duplication |
EP3461095B1 (en) * | 2014-07-21 | 2020-06-03 | Huawei Technologies Co., Ltd. | Network node, method, and storage medium for determining mptcp link adjustment policy |
US9954751B2 (en) | 2015-05-29 | 2018-04-24 | Microsoft Technology Licensing, Llc | Measuring performance of a network using mirrored probe packets |
US10341211B2 (en) * | 2015-09-25 | 2019-07-02 | Brocade Communications Systems LLC | Command response and completion determination |
CN106789177B (zh) | 2016-11-30 | 2019-09-10 | 武汉船舶通信研究所 | 一种网络故障处理的系统 |
US10333960B2 (en) * | 2017-05-03 | 2019-06-25 | Servicenow, Inc. | Aggregating network security data for export |
CN107888455A (zh) | 2017-12-04 | 2018-04-06 | 北京星河星云信息技术有限公司 | 一种数据检测方法、装置和系统 |
-
2019
- 2019-07-30 CN CN201910696540.0A patent/CN112311614B/zh active Active
-
2020
- 2020-06-11 WO PCT/CN2020/095574 patent/WO2021017658A1/zh unknown
- 2020-06-11 EP EP20847371.0A patent/EP4002769B1/en active Active
-
2022
- 2022-01-28 US US17/586,853 patent/US12126514B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1802037A2 (en) * | 2005-12-23 | 2007-06-27 | Agilent Technologies, Inc. | System and method for measuring network performance using real network traffic |
CN102685014A (zh) * | 2012-05-29 | 2012-09-19 | 华为技术有限公司 | 用于测量业务流的性能指标的方法和发送端设备 |
CN103152223A (zh) * | 2013-03-15 | 2013-06-12 | 华为技术有限公司 | 网络性能监测方法及装置 |
CN107453884A (zh) * | 2016-05-30 | 2017-12-08 | 华为技术有限公司 | 一种网络设备的服务质量检测方法和装置 |
CN106506636A (zh) * | 2016-11-04 | 2017-03-15 | 武汉噢易云计算股份有限公司 | 一种基于OpenStack的云平台集群方法及系统 |
CN108075936A (zh) * | 2016-11-16 | 2018-05-25 | 中国移动通信有限公司研究院 | VxLAN探测方法及装置 |
CN107820225A (zh) * | 2017-11-02 | 2018-03-20 | 中山大学 | 一种能量均衡的无线传感网络节点代码分发方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2021017658A1 (zh) | 2021-02-04 |
CN112311614A (zh) | 2021-02-02 |
US12126514B2 (en) | 2024-10-22 |
EP4002769B1 (en) | 2024-08-21 |
EP4002769A4 (en) | 2022-08-24 |
EP4002769A1 (en) | 2022-05-25 |
US20220150150A1 (en) | 2022-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112311614B (zh) | 评估网络节点相关传输性能的系统、方法以及相关设备 | |
US11671342B2 (en) | Link fault isolation using latencies | |
US11502932B2 (en) | Indirect testing using impairment rules | |
CN107465565B (zh) | 链路测试方法和装置及系统 | |
EP1802037B1 (en) | System and method for measuring network performance using real network traffic | |
CN110224883B (zh) | 一种应用于电信承载网的灰色故障诊断方法 | |
US20140258524A1 (en) | Detection of Load Balancing Across Network Paths in a Communication Network | |
Jin et al. | Zooming in on wide-area latencies to a global cloud provider | |
US10771363B2 (en) | Devices for analyzing and mitigating dropped packets | |
US20040260755A1 (en) | Detection of load balanced links in internet protocol networks | |
US10320648B2 (en) | Analysis of network performance | |
EP3295612B1 (en) | Uplink performance management | |
US7525922B2 (en) | Duplex mismatch testing | |
CN111030873A (zh) | 一种故障诊断方法及装置 | |
JP7397893B2 (ja) | トレースルート・ノードおよび対応するデバイスの識別 | |
US10819597B2 (en) | Network device measurements employing white boxes | |
US20160373334A1 (en) | Methods, systems, and computer readable media for microburst testing | |
US20200328957A1 (en) | Network performance monitoring using an active measurement protocol and relay mechanism | |
WO2012002849A1 (en) | Apparatus and method for monitoring of connectivity services | |
JP2018082425A (ja) | エッジ完了率を用いたパスプロービング | |
Zhang et al. | High fidelity off-path round-trip time measurement via TCP/IP side channels with duplicate SYNs | |
EP3701681B1 (en) | Method and coordinating node for providing current analysis result relating to a link | |
WO2023287666A1 (en) | Methods and systems for network diagnostic | |
CN117376182A (zh) | 一种网络故障诊断方法和相关设备 | |
CN116074213A (zh) | 一种基于链路质量分析的智能运维方法及装置 |
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 |