CN109714221A - 网络数据包的确定方法、装置及系统 - Google Patents

网络数据包的确定方法、装置及系统 Download PDF

Info

Publication number
CN109714221A
CN109714221A CN201711010207.7A CN201711010207A CN109714221A CN 109714221 A CN109714221 A CN 109714221A CN 201711010207 A CN201711010207 A CN 201711010207A CN 109714221 A CN109714221 A CN 109714221A
Authority
CN
China
Prior art keywords
node
packet
data
network
packet loss
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.)
Granted
Application number
CN201711010207.7A
Other languages
English (en)
Other versions
CN109714221B (zh
Inventor
高峰宇
杨夫坤
马晨航
贾长春
陈华军
阎璐
赵立文
张岳
周磊
程飙
褚立超
朱晓波
席永青
吴鑫
曾宪龙
杨凯
张铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201711010207.7A priority Critical patent/CN109714221B/zh
Publication of CN109714221A publication Critical patent/CN109714221A/zh
Application granted granted Critical
Publication of CN109714221B publication Critical patent/CN109714221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例提供了一种网络数据包的确定方法、装置及系统,涉及通信技术领域。所述方法包括:确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点,向所述多个节点发送数据包统计指令,获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。本申请能够降低丢包检测的局限性,同时提高丢包检测的可靠性。

Description

网络数据包的确定方法、装置及系统
技术领域
本申请涉及通信技术领域,特别是涉及一种网络数据包的确定方法、装置及系统。
背景技术
随着通信技术的发展,通信网络的规模越来越大,该通信网络中所包括的网络设备的个数或种类都在快速增长。各网络设备可以作为通信网络中的节点,各节点之间可以通过网络传输来传输数据包,进而进行通信。但由于网络设备或线路出现异常,在通信过程中,所传输的数据包可能会丢失,从而降低通信的可靠性,所以需要对网络数据包丢失(丢包)的问题进行处理。
现有技术中,对于网络传输中可能存在丢包问题的路径,可以确定该路径的起始节点和终止节点以及各中间节点,基于IP(Internet Protocol,网络协议)隧道协议和该路径中各节点的地址,生成具有特殊结构的数据包,该特殊结构的数据包具有对多层分别与各节点的地址对应的隧道头部,通过与各节点的地址对应的隧道头部,使该特殊结构的数据包按照该路径进行传输,即通过传输该特殊结构的数据包模拟正常网络传输过程中业务数据包的传输过程,对该特殊结构的数据包的传输过程进行分析,即可确定该路径中是否确实存在网络丢包问题以及出现该问题的节点。
但在现有技术中,由于该特殊结构的数据包是基于IP隧道协议生成并传输的,所以一方面,该特殊结构的数据包只能够对三层网络结构中的丢包问题进行检测,局限性较大,另一方面,该特殊结构的数据包包括多层隧道头部,与业务数据包的结构差异很大,因此,传输该特殊结构的数据包的过程,与传输该业务数据包的过程差异也很大,通过传输该特殊结构的数据包难以准确模拟该业务数据包的传输过程,导致难以有效对网络丢包问题进行检测或其它处理,可靠性较低。
发明内容
鉴于上述问题,提出了本申请以便提供一种克服上述问题或者至少部分地解决上述问题的网络数据包的确定方法、装置及系统。
根据本申请的第一方面,提供了一种网络数据包的确定方法,包括:
确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
向所述多个节点发送数据包统计指令;
获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
可选的,在所述确定网络传输经过的多个节点之前,所述方法还包括:
获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点。
可选的,在所述获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点之后,所述方法还包括:
测试所述起始节点和所述终止节点之间存在网络传输的丢包事件。
可选的,所述确定网络传输经过的多个节点包括:
根据网络拓扑图查找所述起始节点至所述终止节点之间经过的中间节点。
可选的,所述方法还包括:
以所述起始节点经过所述中间节点发送至所述终止节点为一条路径,确定所述起始节点经过不同的所述中间节点发送至所述终止节点的路径个数;
以所述路径个数为丢包测试次数,并添加至所述数据包统计指令,以执行对应所述丢包测试次数的多个丢包检测任务。
可选的,所述向所述多个节点发送数据包统计指令包括:
将所述数据包统计指令发送至网络适配服务器,以由所述网络适配服务器将所述数据包统计指令转化为适用于各节点的节点数据格式,并发送至对应的节点。
可选的,所述获取所述多个节点中之至少一部分节点提交的数据包信息包括:
接收网络适配服务器从节点的节点数据格式转化为目标数据格式的所述数据包信息。
可选的,所述节点为各数据系统的数据服务器、数据系统内的网络管理设备、数据系统之间的网络管理设备中至少一种。
可选的,所述向所述多个节点发送数据包统计指令包括:
通过专用的命令通道向所述多个节点发送所述数据包统计指令。
可选的,所述根据所述数据包信息确定发生数据包丢失的目标节点包括:
对比各节点传输的数据包的个数;
查找传输的数据包的个数相比于前置节点发生减少的节点,并将查找的节点确定为所述目标节点。
可选的,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
确定当前节点不存在承接同一丢包检测任务的同级节点,所述同级节点为与当前节点具有同一前置节点的节点。
可选的,网络传输的数据包携带丢包检测任务的标识,所述确定当前节点不存在承接同一丢包检测任务的同级节点包括:
根据所述数据包所携带的丢包检测任务的标识,确定所述同级节点所传输的数据包中,不存在与所述当前节点对应同一丢包检测任务的数据包。
可选的,若当前节点以及同级节点传输的数据包的个数为零,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
判定所述当前节点以及所述同级节点共有的后置节点传输的数据包的个数,等于所述当前节点的前置节点传输的数据包的个数,则判定发生节点关联错误。
可选的,所述数据包信息包括业务数据包的镜像数据包;
所述根据所述数据包信息确定发生数据包丢失的目标节点还包括:
统计节点传输的镜像数据包的个数。
可选的,所述数据包信息包括第一计数值和第二计数值,所述第一计数值在接收到所述数据包统计指令之后且在传输数据包之前统计传输的数据包的个数,所述第二计数值在接收到所述数据包统计指令且探测数据包之后统计传输的数据包的个数;
所述统计节点传输的镜像数据包的个数包括:
将所述第一计数值与第二计数值的差值作为传输的数据包的个数。
根据本申请的第二方面,提供了一种网络数据包的确定方法,包括:
接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
获取数据包信息,并提交所述数据包信息,以根据所述多个节点中之至少一部分节点的数据包信息确定发生数据包丢失的目标节点。
可选的,所述获取数据包信息包括:
监测传输的探测数据包,并统计所述探测数据包的数据包信息。
可选的,所述方法还包括:
向所述节点的后置节点发送所述探测数据包。
可选的,所述获取数据包信息包括:
获取由所述网络传输中起始节点发送至终止节点的业务数据包;
生成所述业务数据包的镜像数据包;
所述提交所述数据包信息包括:
将生成镜像数据包作为数据包信息发送给丢包检测服务器。
根据本申请的第三方面,提供了一种网络数据包的确定装置,包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
根据本申请的第四方面,提供了一种网络数据包的确定装置,包括:
数据包统计指令接收模块,用于接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
数据包信息获取模块,用于获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生数据包丢失的目标节点。
根据本申请的第五方面,提供了一种网络数据包的确定系统,包括网络传输的多个节点以及丢包检测服务器,所述多个节点包括起始节点、中间节点和终止节点;
所述丢包检测服务器包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
可选的,所述系统还包括网络适配服务器;
所述丢包检测服务器,还用于将所述数据包统计指令发送至网络适配服务器;
所述网络适配服务器,用于将所述数据包统计指令转化为适用于节点的节点数据格式,并发送至对应的节点。
根据本申请的第六方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如前述一个或多个的方法。
根据本申请的第七方面,提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如前述一个或多个的方法。
在本申请实施例中,能够确定网络传输所经过的多个节点,包括起始节点、终止节点和中间节点,并向多个节点发送数据包统计指令,进而获取节点反馈的数据包信息,根据多个节点中之至少一部分节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其它的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本申请一个实施例一的一种网络数据包的确定方法流程图流程图;
图2示出了根据本申请一个实施例二的一种网络数据包的确定方法流程图流程图;
图3示出了根据本申请一个实施例三的一种网络数据包的确定方法流程图流程图;
图4示出了根据本申请一个实施例三的一种网络拓扑结构示意图;
图5示出了根据本申请一个实施例的一种丢包检测服务器的结构框图;
图6示出了根据本申请一个实施例的一种前端页面的示意图;
图7示出了根据本申请一个实施例的一种前端页面的示意图;
图8示出了根据本申请一个实施例的一种前端页面的示意图;
图9示出了根据本申请一个实施例的一种前端页面的示意图;
图10示出了根据本申请一个实施例的一种前端页面的示意图;
图11示出了根据本申请一个实施例的一种前端页面的示意图;
图12示出了根据本申请一个实施例四的一种网络数据包的确定装置的结构框图;
图13示出了根据本申请一个实施例五的一种网络数据包的确定装置的结构框图;
图14示出了根据本申请一个实施例六的一种网络数据包的确定系统的结构框图;
图15示出了根据本申请一个实施例的一种示例性系统的结构框图。
具体实施方式
下面将参照附图更详细地描述本申请示例性实施例。虽然附图中显示了本申请示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
为了便于本领域技术人员深入理解本申请实施例,以下将首先介绍本申请实施例中所涉及的专业术语的定义。
网络传输指通信网络中数据包的传输过程。该数据包中可以包括起始节点的地址,即源地址,以及终止节点的地址,即目的地址,从而指示该数据包从该起始节点传输至该终止节点。
节点表示通信网络中参与数据包传输的各网络设备,比如计算机、路由器、交换机等设备。
起始节点为数据包的来源设备,相应的,终止节点表示该数据包所要发送的目标设备,中间节点为将该数据包从该起始节点发送至该终止节点所经过的中间设备。
数据包统计指令用于指示节点对该节点传输的由起始节点传输至终止节点的数据包信息统计,并将统计得到的数据包信息进行反馈,此处针对数据包的统计可以是对数据包信息的提取、计算等处理。
数据包信息用于说明节点传输数据的状况,可以包括数据包所携带的数据、传输(包括接收和/或发送)数据包的个数、源地址、目标地址等信息,其中,源地址为起始节点的地址,目标地址为终止节点的地址。当然,在实际应用中,还可以包括与该数据包有关或者根据对该数据包信息处理得到的其它信息。
本申请实施例可以应用于通信网络中对网络传输过程中的网络丢包问题进行检测或处理的场景。由于在网络传输中,从起始节点发送的数据包,通常会经过中间节点发送给终止节点,因此本申请实施例可以确定网络传输经过的多个节点,然后向该多个节点发送数据包统计指令,从而指示多个节点统计并反馈数据包信息,当获取到多个节点中之至少一部分节点反馈的数据包信息时,即可根据该数据包信息确定丢包的目标节点,也即是,不需要依赖该特殊结构的数据包,也能够完成对网络传输中的网络丢包进行统计,确定该网络传输中出现丢网络丢包问题的节点或位置,以便于后续对所确定的节点进行修复或隔离,保障通信网络的安全性和可靠性,且由于不需要依赖特殊结构的数据包来确定网络丢包问题,也就避免了由特殊结构的数据包所带来的检测网路丢包的局限性较大以及可靠性较低的问题。
本申请实施例可以以网络丢包的统计软件的形式部署在远程服务器上,计算设备可以通过访问该远程服务器从而获取网络丢包的统计服务。当然,本申请实施例也可以实现为客户端或插件,计算设备可以从远程服务器获取并安装该客户端或插件,从而通过该客户端或插件来实施本申请实施例所提供的网络数据包的确定方法。
计算设备可以包括电脑等设备。
客户端可以包括至少一个应用程序。该客户端能够运行在计算设备中,从而实现本申请实施例提供的网络数据包的确定方法。
插件可以包括在运行于计算设备的应用程序中,从而实现本申请实施例提供的网络数据包的确定方法。
实施例一
参照图1,示出了根据本申请一个实施例的一种网络数据包的确定方法流程图,具体步骤包括:
步骤101,确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点。
由于在网络传输的过程中,数据包可能需要经过多个节点之间进行传输,而在任意两个节点的传输过程中,该数据包均可能会丢失,即出现网络丢包问题,因此,为了便于后续判断发生网络丢包的节点,丢包检测服务器可以确定网络传输所经过的过个节点。
其中,丢包检测服务器可以包括前述中部署有网络数据包的确定软件的服务器。
中间节点可以包括由起始节点至终止节点的至少一条路径中的至少一节点。
路径为由数据包由起始节点发送至终止节点的过程中,所经过的各节点顺次组成,该路径中各节点的顺序即为数据包在各节点中的传输顺序。
丢包检测服务器可以从网络拓扑中,根据该起始节点以及终止节点,确定至少一个路径以及各路径包括的节点。
网络拓扑用于说明当前通信网络中各网络设备的物理布局,包括各网络设备的真实或虚拟的排列方式。
其中,网络拓扑可以由该丢包检测服务器从本地存储的网络拓扑数据库获取得到,或者,从存储有该网络拓扑的业务服务器等设备中获取得到。
网络拓扑结构数据库用于存储与网络拓扑有关的信息,比如网络拓扑图、通信网络中各网络设备的设备信息等。
步骤102,向所述多个节点发送数据包统计指令。
为了避免依赖特殊结构的数据包信息网络丢包检测可能导致的局限性较大以及可靠性较低的问题,即为了减少网络丢包检测的局限性并提高网络丢包检测的可靠性,可以不控制起始节点向终止节点传输该特殊结构的数据包,而是向网络传输中的多个节点发送数据包统计指令,从而使各节点统计并反馈数据包信息,以便于通过后续步骤确定出现网络丢包的节点。
数据包统计指令中可以携带起始节点的源地址和终止节点的目标地址,从而使各节点对由该起始节点发送至该终止节点的数据包信息统计。
其中,数据包统计指令可以由用户通过执行点击操作、触摸操作等预设操作触发,当然,在实际应用中,丢包检测服务器也可以由其它事件触发,比如通过定时器定时触发等。
步骤103,获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
由于数据包信息可以包括数据包所携带的数据、传输(包括接收和/或发送)数据包的个数等信息,从而能够说明节点传输数据的状况,因此,丢包检测服务器可以根据节点反馈的数据包信息,确定网络传输中节点传输数据的状况,从而确定是否存在网络丢包问题,即发生该网络丢包问题的节点。
丢包检测服务器可以根据节点反馈的数据包信息包括的源地址、目标地址、数据包,确定由起始节点传输至终止节点的数据包,统计节点传输该数据包的个数。
当网络传输中多个节点中各节点不存在同级节点时,对于的任一节点,当如果该节点的前置节点向该节点发送的该数据包的个数大于该节点接收该数据包的个数,确定该节点为发生网络丢包的节点;或者,如果该节点的前置节点向该节点发送的该数据包的个数大于该节点向该节点的后置节点发送的该数据包的个数,确定该节点为发生网络丢包的节点;或者,如果该节点的前置节点接收到的该数据包的个数大于该节点接收到的该数据包的个数,确定该节点为发生网络丢包的节点。
当网络传输中多个节点中各节点存在同级节点时,对于的任一节点,如果该节点以及各同级节点的前置节点发送的该数据包的个数,大于该节点以及各同级节点的接收的该数据包的个数,则确定该节点以及各同级节点中可能存在丢包的节点;或者,如果该节点以及各同级节点的前置节点发送的该数据包的个数,大于该节点以及各同级节点向该节点以及各同级节点的后置节点发送的该数据包的个数,则确定该节点以及各同级节点中可能存在丢包的节点;或者,如果该节点以及各同级节点的前置节点接收到的该数据包的个数,大于该节点以及各同级节点的发送或接收的该数据包的个数,则确定该节点以及各同级节点中可能存在丢包的节点。
其中,前置节点为向当前节点发送数据包的节点,后置节点为接收当前节点发送的数据包的节点,同级节点为与当前节点共同接收前置节点发送的数据包的节点。
在本申请实施例中,能够确定网络传输所经过的多个节点,包括起始节点、终止节点和中间节点,并向各节点发送数据包统计指令,根据多个节点中之至少一部分节点的数据包信息对节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
实施例二
参照图2,示出了根据本申请一个实施例的一种网络数据包的确定方法流程图,具体步骤包括:
步骤201,接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点。
为了避免依赖特殊结构的数据包信息网络丢包检测可能导致的局限性较大以及可靠性较低的问题,即为了减少网络丢包检测的局限性并提高网络丢包检测的可靠性,网络传输中的多个节点可以不必传输该特殊结构的数据包,而是接收数据包统计指令,从而通过下述步骤统计并反馈数据包信息,以便于丢包检测服务器根据多个节点中之至少一部分节点反馈的数据包信息确定出现网络丢包的节点。
其中,数据包统计指令的触发方式可以参见前述中的相关描述,此处不再一一赘述。
步骤202,获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生丢包的目标节点。
网络传输中接收到数据包统计指令的各节点,可以对由起始节点发送至终止节点的数据包信息统计,从而获取得到数据包信息,并将统计的数据包信息反馈至丢包检测服务器,以使丢包检测服务器根据节点反馈的数据包信息,确定网络传输中是否存在网络丢包问题以及发生网络丢包的节点。
各节点可以对该节点发送和/或接收的由起始节点发送至终止节点的数据包的个数、数据包所携带的数据等信息进行统计。
在本申请实施例中,能够接收发送的数据包统计指令,获取并提交数据包信息,从而根据节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
实施例三
参照图3,示出了根据本申请一个实施例的一种网络数据包的确定方法流程图,具体步骤包括:
步骤301,丢包检测服务器获取发生丢包的网络传输对应的起始节点和终止节点。
由于通信网络中可能会包括的大量的节点,任意两个节点之间均有可能需要通过网络传输来进行通信,从而有可能发生丢包问题,所以为了便于针对发生丢包的网络传输进行检测,以快速确定网络传输中是否确实存在丢包的节点,提高丢包检测的准确性和效率,可以获取发生丢包的网络传输对应的起始节点和终止节点。
各节点可以在日常的网络传输过程中,根据所传输的数据确定该网络传输的过程中是否存在丢包现象,并在确定存在丢包现象时,将该网络传输对应的起始节点和终止节点反馈给丢包检测服务器;或者,由该丢包检测服务器对各节点进行网络传输的过程进行监控,从而判断是否存在丢包现象,并在确定存在丢包现象时,确定该网络传输的起始节点和终止节点。
其中,节点为各数据系统的数据服务器、数据系统内的网络管理设备、数据系统之间的网络管理设备中至少一种。
网络传输的起始节点、终止节点或者丢包检测服务器,可以通过哈希值验证、校验码验证或者其它验证方式,验证起始节点发送的数据与终止节点的接收的数据时间是否一致,即该终止节点接收的数据是否完整,如果验证通过则确定该网络传输不存在丢包现象,如果验证失败,则说明该网络传输中存在丢包现象。
节点可以向丢包检测服务器发送丢包检测请求,并在该丢包检测请求中携带待检测的网络传输对应的特征四元组或特征五元组,从而请求该丢包检测服务器对该网络传输中的丢包问题进行检测。
丢包检测请求用于请求丢包检测服务器对网络传输中的丢包问题进行检测。
特征四元组或特征五元组用于说明网络传输对应的起始节点和终止节点,其中,特征四元组可以包括源地址、源端口、目标地址和目标端口,特征五元组在特征四元组的基础上还包括DSCP(Differentiated Services CodePoint,差分服务代码点)。源地址和源端口分别为起始节点的地址和端口,目标地址和目标端口分别为终止节点的地址和端口。
丢包检测服务器可提供用于与用户交互的前端页面,通过公开接口接收来自该前端页面的丢包检测请求,并根据该丢包检测请求携带的特征四元组或五元组建立丢包测试任务,将该丢包测试任务存储至任务数据库,以便于该丢包检测服务器从任务数据库获取该丢包测试任务进行丢包检测。
其中,一个丢包测试任务中可以包括至少一个特征四元组或特征五元组。
当然,在实际应用中,可以由用户或者相关技术人员根据经验,判断网络传输中是否存在丢包现象,如果是则确定该网络传输的起始节点以及终止节点,并向该丢包检测服务器提交丢包检测请求。
步骤302,所述丢包检测服务器测试所述起始节点和所述终止节点之间存在网络传输的丢包事件。
为了进一步确定前述所确定的网络传输中存在丢包现象,以减少不必要的丢包统计或检测,降低服务器的压力并提高丢包检测的准确性,可以对该网络传输进行测试,即测试该网络传输的起始节点与终止节点之间的是否存在丢包事件。
丢包检测服务器可以向起始节点和终止节点发送丢包测试指令,当起始节点接收到该丢包测试指令时,从该起始节点向该终止节点发送探测数据包,并向丢包检测服务器反馈发送的探测数据包的个数,当该终止节点接收该丢包测试指令时,可以统计接收到的由该起始节点发送给该终止节点的探测数据包的个数,将统计的个数反馈给丢包检测服务器,该丢包检测服务器可以接收该起始节点和该终止节点反馈的个数,将该起始节点发送探测数据包的个数与该终止节点接收到探测数据包的个数进行比较,如果该终止节点接收到的探测数据包的个数小于该起始节点发送的探测数据包的个数,则确定该起始节点和该终止节点之间存在丢包事件。
其中,丢包检测服务器可以通过探测服务从前述中的任务数据库获取该丢包测试任务,根据该丢包测试任务携带的特征四元组或特征五元组,通过专用的命令通道向起始节点和终止节点发送丢包测试指令,包括指示起始节点通过发送探测数据包,指示终止节点通过抓包工具抓取探测数据包。
发包工具可以为用于发送数据包的应用程序、插件或一段程序代码,该发包工具可以由节点事先得到,比如,若节点为基于Linux系统的节点,该发包工具可以为RawSocket(原始套接字)。
抓包工具可以用于抓取数据包的应用程序、插件或一段程序代码,该抓包工具可以由节点事先得到,比如,该抓包工具可以为TCPDUMP。
探测数据包用于对起始节点和对应的终止节点之间丢包事件进行检测,探测数据包的结构与业务数据包的结构相同,且该探测数据包中携带探测标识,以说明携带该探测标识的数据包为探测数据包。
在本申请实施例中,可选的,由于不同的网络传输可能对丢包问题的容错性不同,即有的网络传输过程可能不会被丢包问题所影响,也就不需要进行丢包检测,因此,为了进一步提高丢包检测的效率和准确性,丢包检测服务器可以将测试结果显示给用户,该测试结果中包括至少一组的起始节点和终止节点,根据用户针对各组起始节点和终止节点的节点组选择指令,确定需要进行丢包检测的起始节点和终止节点,即由用户根据各组起始节点和终止节点发收探测数据包的个数,选择需要进行丢包检测的网络传输。
其中,丢包检测服务器可以通过前述中的前端页面,将测试结果显示给用户,并接收用户的节点组选择指令。
节点组选择指令用于在提供的各组起始节点和终止节点中,选择需要进行丢包测试的起始节点和终止节点,该节点组选择指令可以由用户通过执行预设操作触发。
例如,丢包检测服务器获取8组起始节点和终止节点,通过测试各组起始节点和终止节点的丢包事件,各组起始节点均向对应的终止节点发送50个探测数据包,且该丢包检测服务器确定第1-4组中终止节点未接收到探测数据包,即存在丢包事件,第5-7组中终止节点接收到的探测数据包不足50个,即也存在丢包事件,但与第1-4组相比,丢包情况轻微,第8组中终止节点接收到50个探测数据包。由于第1-4组起始节点和终止节点丢包问题较为严重,所以该丢包检测服务器确定第1-4组起始节点和终止节点需要进行丢包检测,或者,由于第1-7组起始节点和终止节点均存在着丢包问题,所以该丢包检测服务器可以确定第1-7组起始节点和终止节点需要进行丢包检测;或者,该丢包服务器将测试结果展示给用户,并根据用户的节点组选择指令,确定第3-6组起始节点和终止节点需要进行丢包检测。
另外,在实际应用中,为了提高丢包检测的效率,在获取发生丢包的网络传输对应的起始节点和终止节点之后,也可以不对该起始节点和该终止节点之间是否存在丢包事件进行测试,而是直接执行下述确定网络传输经过的多个节点的步骤。
步骤303,所述丢包检测服务器确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点。
在本申请实施例中,可选的,为了提高确定网络传输经过的多个节点的准确性及效率,进而提高丢包检测的准确性和效率,丢包检测服务器可以根据网络拓扑图查找所述起始节点至所述终止节点之间经过的中间节点。
其中,丢包检测服务器可以根据各组起始节点和终止节点,从前述中的网络拓扑数据库中获取对应的网络拓扑图,从该网络拓扑图中查找能够由该起始节点进行网络传输至该终止节点的各路径,从查找到的各路径中选择至少一个中间节点。
丢包检测服务器可以将各路径中的所有的中间节点;或者,可以在各路径中随机选择至少一个中间节点;或者,可以按照各路径,选择其中至少一个路径中所有的中间节点,或者,可以将网络拓扑图显示给用户,根据用户的针对任一中间节点的中间节点选择指令,确定至少一个中间节点。
例如,对于某一组起始节点和终止节点,丢包检测服务器生成由该起始节点至该终止节点的网络拓扑图如图4所示。由图4可知,起始节点A与终止节点B之间包括三级中间节点,其中,第一级中间节点包括节点C,第二级中间节点包括节点D,第三级中间节点包括节点E1和E2,即节点E1和E2为同级节点。当起始节点A向终止节点B发送数据包时,该数据包可能通过A-C-D-E1-B得到终止节点B,也可能通过A-C-D-E2-B得到终止节点B。丢包检测服务器将如图4所示的网路拓扑图显示给用户,基于中间节点C、D、E1接收要用户的中间节点选择指令,因此,确定至少一个中间节点为C、D、E1,也即是,确定对网络传输经过的节点A、C、D、E1和B进行丢包检测。
在本申请实施例中,可选的,丢包检测服务器可以通过前述中前端页面将网络拓扑图显示给用户。且为了便于用户准确选择中间节点,丢包检测服务器该可以基于该网络拓扑图,向用户提供节点的属性信息,包括设备名称、设备角色、设备丢包状态和链路丢包状态等,当然,在实际应用中,该属性信息还可以包括更多与节点有关的信息。
设备名称用于标识该节点的网络设备,该设备名称可以包括出厂序列号、IP地址或MAC(Media Access Control,媒体访问控制)地址等。
设备角色用于说明该节点的功能,比如,交换机、路由器或管理服务器等。
设备丢包状态用于说明该节点的在特定时间段是否丢包以及丢包的个数。该特定时间段可以由丢包检测服务器确定,比如自该节点入网至当前的时间段,该设备丢包状态可以从该节点的历史丢包记录汇中查询。
历史丢包记录用于说明节点在当前时刻之前丢包的相关信息,可以由丢包检测服务器对之前该节点进行丢包检测后统计得到,该历史丢包记录可以包括丢包的数据以及所丢失的数据对应的路径、各路径的起始节点、终止节点等。
链路丢包状态用于说明该节点分别在经过该节点的各路径的网络传输中的是否丢包以及丢包的个数。该链路丢包状态可以根据前述的历史丢包记录获取得到。
由于通过前述步骤,丢包检测服务器已经确定了至少一组网络传输经过的多个节点,因此,丢包检测服务器可以针对各组网络传输经过的多个节点,生成丢包检测任务,并将该丢包检测任务存储至任务数据库,进而通过下述步骤对该组网络传输经过的多个节点进行丢包检测。
丢包检测任务用于指示网络传输经过的多个节点进行丢包检测,该丢包检测任务中可以包括一个起始节点、一个终止节点、以及该起始节点和该终止节点之间的中间节点。
步骤304,所述丢包检测服务器向所述多个节点发送数据包统计指令。
丢包检测服务器可以从任务数据库获取丢包检测任务,从而根据该丢包检测任务向网络传输经过的多个节点送数据包统计指令。
在本申请实施例中,可选的,为了确保能够准确地向多个节点发送数据包统计指令,从而提高对网络传输进行丢包检测的可靠性,该丢包检测服务器可以通过专用的命令通道向节点发送所述数据包统计指令。
在本申请实施例中,可选的,由于各节点可能分别为来自不同厂商的网络设备,因此,不同的节点可能只能够识别特定格式的指令或数据,所以,为了确保各节点能够准确地识别并执行接收到的指令,提高进行丢包检测的可靠性,丢包检测服务器可以将所述数据包统计指令发送至网络适配服务器,以由所述网络适配服务器将所述数据包统计指令转化为适用于各节点的节点数据格式,并发送至对应的节点。
网络适配服务器用于对丢包检测服务器于节点之间交互的数据进行格式转换,包括将来自该丢包检测服务器的数据的数据格式转换为节点的节点数据格式,或者,将来自节点的数据的节点数据格式转换为该丢包检测服务器的数据格式。
节点数据格式为该节点所能够识别的数据格式,可以由该节点的厂商设置得到。
其中,该网络适配服务器中可以事先获取多个针对不同格式转换的指令适配模板,将该多个指令适配模板按照各节点的属性信息进行标记,之后,当该网络适配服务器接收到数据包统计指令时,可以根据各指令适配模板所标记的对应节点的属性信息,选择对应的指令适配模板,将该数据包统计指令的数据格式转换为该节点的节点数据格式。
当然,在实际应用中,节点的厂商也可以事先将该节点的指令适配模板存储至该节点,进而使该节点在接收到丢包检测服务器的数据包统计指令时,对该数据包统计指令进行格式转化。
在本申请实施例中,可选的,由于一组起始节点和终止节点之间,可能存在多条路径,在网络传输时,数据包可能通过任一路径传输至该终止节点,所以为了确保能够统计到各路径的数据包信息,以准确确定发生丢包问题的节点或路径,进而提高丢包检测的可靠性,该丢包检测服务器可以以所述起始节点经过所述中间节点发送至所述终止节点为一条路径,确定所述起始节点经过不同的所述中间节点发送至所述终止节点的路径个数,以所述路径个数为丢包测试次数,并添加至所述数据包统计指令,以执行对应所述丢包测试次数的多个丢包检测任务。
丢包测试服务器可以根据前述中的网络拓扑图,确定各组起始节点与终止节点之间的路径个数。
当然,在实际应用中,丢包测试次数还可以大于该路径个数。
步骤305,节点接收发送的所述数据包统计指令。
其中,节点可以通过前述中专用的命令通道接收数据包统计指令,该数据包统计指令可以直接来自与丢包检测服务器,也可以直接来自于网络适配服务器,即所接收到的数据包统计指令为进行格式转换后的数据包统计指令。
另外,在实际应用中,为了进一步确保节点能够准确地获取到数据保信息,节点在通过下述步骤获取数据包信息之前,还从可以通过网络适配服务器,从丢包检测服务器获取流量统计配置信息,根据获取到的流量统计配置信息进行流量统计配置初始化,并将流量统计配置初始化结果反馈给网络适配服务器或丢包检测服务器,网络适配服务器或丢包检测服务器可以根据事先存储的初始化关键字列表与该流量统计配置初始化结果进行匹配,如果不存在匹配的关键字,则确定流量统计配置初始化成功,从而能够执行下述步骤获取数据包信息,否者,可以重新进行流量统计配置初始化或者对该节点进行修复。
其中,流量统计配置信息用于指示节点对传输的数据进行统计的方式进行配置,从而使该节点能够准确地对传输的数据进行统计,从而获取得到数据包信息。
初始化关键字列表用于存储流量统计配置初始化失败时产生的关键字,关键字可以包括一个字符或字符串,比如可以是一串由数字、字母和标点符号构成的错误代码。
步骤306,所述节点获取数据包信息,并提交所述数据包信息。
其中,节点可以通过传输探测数据包或者业务数据包的镜像数据包,从而对网络传输中的丢包问题进行检测。
节点可以从该数据包统计指令中获取该数据包统计指令所携带的数据包类型。
在本申请实施例中,可选的,探测数据包或镜像数据包中还携带丢包检测任务的标识,以便于各节点按照该丢包检测任务的标识,对传输的探测数据包或镜像数据包信息统计。
其中,丢包检测任务的标识用于唯一标识一个丢包检测任务,以说明探测数据包或镜像数据包所对应的丢包检测任务。该丢包检测任务的标识可以由丢包检测服务器确定,比如,按照建立丢包检测任务的次序确定的编号,或者按照所检测的各节点确定的名称等。
在本申请实施例中,可选的,由于探测数据包是专门用于进行丢包探测的数据包,所以为了提高丢包检测的准确性,节点可以通过传输探测数据包信息丢包检测,因此,节点可以通过监测传输的探测数据包,并统计所述探测数据包的数据包信息。
由前述可知,探测数据包中携带探测标识,所以节点可以通过抓包工具获取该探测标识、起始节点和终止节点数据包,即获取得到由该起始节点传输至该终止节点的探测数据包,并对获取到的探测数据包的数据包信息进行统计。
其中,由于节点在当统计数据包信息之前,可已经针对其它的丢包检测任务或者该节点的其它功能统计了数据包信息,比如数据包的个数,即可能存在残留的数据包信息,因此,该节点在进行数据包信息统计之前,可以将之前统计的数据包信息进行清除,然后进行本次的数据包信息统计。
在本申请实施例中,可选的,由于节点所残留的数据包信息也能够一定程度上说明该节点传输数据的状况,有利于对网络传输中的丢包问题进行准确判断,即提高丢包检测的准确性,节点在传输探测数据包之前,统计当前该节点的数据包信息,包括传输的数据包的第一计数值,在传输对该数据包信息进行统计之后,再次统计当前该节点的数据包信息,包括传输的数据包的第二计数值,并两次统计的数据包信息反馈给丢包检测服务器。也即是,所述数据包信息包括第一计数值和第二计数值,所述第一计数值由节点在接收到所述数据包统计指令之后且在传输探测数据包之前统计传输的数据包的个数,所述第二计数值由所述节点在接收到所述数据包统计指令且传输探测数据包之后统计传输的数据包的个数。
在本申请实施例,可选的,为了准确对节点可能出现的丢包问题进行检测,提高丢包检测的准确性,一个节点可以向该节点的后置节点发送所述探测数据包。
其中,该节点的后置节点可以为该节点的任一后置节点,即可以为不包括在数据包统计指令中的节点。
当然,如果该节点为终止节点,说明网络传输已经结束,没有后置节点,可以不再向其它节点发送该探测数据包。
例如,以前述中对节点A、C、D、E1和B进行丢包检测为例,节点A、C、D、E1和B在传输由A发送至B的探测数据包之前,分别统计的第一计数值为100、90、90、50和80,在传输由A发送至B的探测数据包之后,分别统计的第二计数值为150、140、138、72和128,节点A、C、D、E1和B分别将统计得到的第一计数值和第二计数值作为数据包信息发送给丢包检测服务器。
另外,在实际应用中,节点也可以计算得到第一计数值与第二计数值之间的差值,将计算得到的差值作为数据包信息发送给该丢包检测服务器。
在本申请实施例中,可选的,为了使丢包检测的过程不影响通信网络的正常业务处理,确保该通信网路的可靠性,节点可以获取由所述网络传输中起始节点发送至终止节点的业务数据包,生成所述业务数据包的镜像数据包,相应的,可以将生成的镜像数据包发送给丢包检测服务器,以供所述丢包检测服务器统计所述镜像数据包的数据包信息。也即是,所述数据包信息包括第一计数值和第二计数值,所述第一计数值由丢包检测服务器在发送所述数据包统计指令之后且在传输镜像数据包之前统计传输的数据包的个数,所述第二计数值由所述丢包检测服务器在接收到所述数据包统计指令且传输镜像数据包之后统计传输的数据包的个数。
其中,镜像数据包中可以携带镜像标识,该镜像标识用于说明携带该镜像标识的数据包为镜像数据包。
例如,以前述中对节点A、C、D、E1和B进行丢包检测为例,节点A、C、D、E1和B在传输由A发送至B的业务数据包时,分别根据所传输的业务数据包生成镜像数据包,并将生成的镜像数据包作为数据包信息发送给丢包检测服务器。其中,节点A向节点C发送了50个业务数据包,并对应生成50各镜像数据包发送给该丢包检测服务器;C接收到该50个业务数据包中的48个,将该48业务数据包发送给节点D,并对应生成48个业务数据包发送给该丢包检测服务器;节点D接收到该48个业务数据包,将该48个业务数据包发送给节点E1,并对应生成48个镜像数据包发送给该丢包检测服务器;节点E1接收到该镜像数据包中的40个,将该40业务数据包发送给节点B,并对应生成40个镜像数据包发送给该丢包服务器;节点B接收到该48个业务数据包中的45个,对应生成45个镜像数据包发送给该丢包检测服务器。
当然,在实际应用中,丢包检测服务器还可以通过与上述统计传输探测数据包的数据包信息相似的方式,统计节点传输的由该网络传输中起始节点发送至终止节点的业务数据包的个数,将统计的个数作为数据包信息发送给丢包检测服务器。也即是,所述数据包信息包括第一计数值和第二计数值,所述第一计数值由节点在接收所述数据包统计指令之后且在传输镜像数据包之前统计传输的数据包的个数,所述第二计数值由节点在接收到所述数据包统计指令且传输镜像数据包之后统计传输的数据包的个数。
步骤307,所述丢包检测服务器获取多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
其中,获取节点提交的数据包信息以及根据数据包信息确定发生丢包的目标节点的方式,可以参见前述中的相关描述。
在本申请实施例中,可选的,由于数据包信息可以包括业务数据包的镜像数据包,因此,为了准确对各节点是否发生丢包问题进行判断,提高丢包检测的可靠性,丢包检测服务器可以统计各节点传输的镜像数据包的个数。
其中,丢包检测服务器可以接收节点反馈的镜像数据包,按照各镜像数据包携带的丢包检测任务的标识,该丢包检测任务中各节点传输的镜像数据包的个数。
在本申请实施例中,可选的,由于数据包信息可以包括第一计数值和第二计数值,因此,为了确保能够对各节点传输的数据包信息统计,以便于后续准确地对各节点是否丢包进行判断,即提高丢包检测的准确性,丢包检测服务器可以将所述第一计数值与第二计数值的差值作为传输的数据包的个数。
例如,以前述中对节点A、C、D、E1和B进行丢包检测为例,节点A、C、D、E1和B向丢包检测服务发送的丢包信息中包括的第一计数值分别为100、90、90、50和80,第二计数值分别为150、140、138、72和128,丢包服务器分别计算第一计数值和第二计数值的差值,从而确定节点A传输的数据包的个数为50,节点C传输的数据包的个数为50,节点D传输的数据包的个数为48,节点E1传输的数据包的个数为22,节点B接收到的数据包的个数为48。
在本申请实施例中,可选的,为了确保丢包服务器能够准确地获取到节点反馈的数据包信息,丢包检测服务器可以接收网络适配服务器从节点的节点数据格式转化为目标数据格式的所述数据包信息。也即是,各节点将统计得到的数据包信息发送给网络适配服务器,由该网络适配服务器对该数据包信息进行格式转换,将转换后的数据包信息发送给丢包检测服务器。
其中,目标数据格式即为丢包检测服务器能够识别的数据格式。
在本申请实施例中,可选的,由于该数据包均为由起始节点发送给终止节点的数据包,因此,各节点所传输的数据包的个数应该相同,所以为了能够准确判断网络传输所经过的多个节点是否发生丢包现象,从而提高丢包检测的准确性,丢包检测服务器可以对比各节点传输的数据包的个数,查找传输的数据包的个数相比于前置节点发生减少的节点,并将查找的节点确定为所述目标节点。
其中,丢包检测服务器可以按照前述中的方式,根据各节点传输的个数包的个数,分别对各节点进行是否发生丢包进行判断。比如,对于节点,如果该节点接收到的数据包的个数小于该节点的前置节点发送的数据包的个数,则可以确定该节点存在丢包问题。
在本申请实施例中,可选的,由前述可知,在网络传输的过程中,对于任一节点,可能存在同级节点,因此,数据包可能从该节点以及该节点的同级节点中的任一节点通过,即该同级节点可能会影响该节点传输的数据包的个数,所以为了进一步提高丢包检测的可靠性,在前述将查找的节点确定为发生丢包的目标节点之前,丢包检测服务器可以确定当前节点不存在承接同一丢包检测任务的同级节点,所述同级节点为与当前节点具有同一前置节点的节点。
其中,丢包检测服务器可以通过前述中的各组起始节点和终止节点的网络拓扑图,来判断该组起始节点与终止节点之间的各级节点是否包括同级节点。
在本申请实施例中,可选的,由前述可知,各节点的同级节点可能会影响该节点传输的数据包的个数,且网络传输的数据包携带丢包检测任务的标识,因此,为了准确地判断各节点的同级节点是否参与此次丢包检测过程的数据包传输,进而提高对各节点进行丢包检测的准确性,丢包检测服务器可以根据所述数据包所携带的丢包检测任务的标识,确定所述同级节点所传输的数据包中,不存在与所述当前节点对应同一丢包检测任务的数据包。
在本申请实施例中,可选的,由于进行丢包检测的多个节点中,可能其中某个节点实际不存在与该多个节点中起始节点至终止节点之间的路径中,即该节点可能为不相关的节点,因此,为了提高丢包检测的准确性,若当前节点以及同级节点传输的数据包的个数为零,丢包检测服务器可以判定所述当前节点以及所述同级节点共有的后置节点传输的数据包的个数,等于所述当前节点的前置节点传输的数据包的个数,则判定发生节点关联错误。
当然,在实际应用中,丢包检测服务器可以通过其它策略,根据各节点反馈的数据包信息,对各几点是否发生丢包问题进行判断。
例如,以前述中对节点A、C、D、E1和B进行丢包检测为例,节点A向节点C发送了50个数据包,而节点C接收到并向节点D发送了50个数据包,则可以确定节点A以及节点C未发生丢包;而节点D接收到并发送了48个数据包,小于50个,则可以确定节点D发生丢包;而节点E1只接收并发送了22个数据包,且节点E1存在同级节点E2,E1与E2的后置节点B接收到48个数据包,所以可以确定E2接收并发送了节点D发送的其余的26个数据包,即可以确定节点E1未丢包,且节点B未丢包。当然,如果节点B接收的数据包不足48个,则无法确定节点E2是否接收并发送了数据包,继而也无法确定E1是否丢失数据包;或者,在另一种可能的情况之中,也统计了节点E2传输的数据包的个数为25个,此时由于节点E1与节点E2接收并发送的数据包的个数小于节点D发送的数据包的个数,可能当前网络传输中,节点采用了基于包的随机式负载均衡策略进行数据包分流,也无法确定节点E1和E2是否丢包;或者,在另一种可能的情况中,也统计了E2传输的数据包的个数为0个,E1接收并发送的数据包的个数为22,则可以确定节点E1丢包;在另一种可能的情况中,E1接收并发送的数据包的个数也为48,即可确定节点E1未丢包;或者,在另一种可能的情况中,统计得到节点E1和节点E2传输的数据包的个数均为0,则节点E1和节点E2可能丢包,当然,如果此时节点B接收到的数据包的个数为48,即与节点D传输的数据包的个数相同,则可以确定节点E1和节点E2为不相关的节点,即节点E1和节点E2关联错误。
另外,在完成对各节点进行丢包检测之后,丢包检测服务器可以通过对各节点是否丢包的判断结果,在网络拓扑图中对各节点进行标记,从而向用户展示检测结果,以便于对出现丢包问题的节点进行隔离或修复。
其中,对于确定丢包的节点可以进行隔离或修复,对于确定是否丢包的节点可以再次进行检测或者由相关技术人员进行进一步的分析鉴别,对于关联错误的节点,可以将该节点从当前的网络拓扑图中删除,以对该网络拓扑图进行更新。
在本申请实施例中,首先,能够确定网络传输所经过的多个节点,包括起始节点、终止节点和中间节点,并向多个节点发送数据包统计指令,进而获取多个节点中之至少一部分节点反馈的数据包信息,根据各节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
其次,丢包检测服务器可以通过网络拓扑图快速准确地查找到网络传输经过的中间节点,提高了确定多个节点准确性的效率,进而也提高了对该多个节点进行丢包检测的准确性和效率。
另外,丢包检测服务器可以将数据包统计指令发送给网络适配服务器,从而通过网络适配服务器将该数据包指令的数据格式转换为各节点能够识别的节点数据格式,确保了各节点能够准确地识别并执行丢包检测服务器的指令,从而提高了丢包检测的可靠性。
另外,丢包检测服务器可以确定网络传输中各节点传输数据包的个数,将各级节点传输的数据包的个数进行比较,从而准确地查找到该网络传输中是否存在丢包问题以及发生丢包问题的节点,提高了丢包检测的准确性。
另外,丢包检测服务器可以使各节点传输专用的探测数据包,来统计得到各节点传输的数据包的个数,以提高统计各节点传输数据包的个数的准确性,进而进一步提高丢包检测的准确性。
另外,丢包检测服务器可以获取各节点的业务数据包的业务员数据包,从而统计得到各节点传输的数据包的个数,确保了丢包检测过程不会影响到各节点的正常业务处理,提高了通信网络的可靠性。
本领域的技术人员应可理解,上述实施例中的方法步骤并非每一个都必不可少,在具体状况下,可以省略其中的一个或多个步骤,只要能够实现丢包检测的技术目的。本发明并不限定的实施例中步骤的数量及其顺序,本发明的保护范围当以权利要求书的限定为准。
为了便于本领域技术人员更好地理解本申请,以通过如图5所示的丢包检测服务器实施本申请实施例的网络数据包的确定方法的过程为例进行说明,具体包括如下步骤:
由如图5所示的丢包检测服务器的结构框图可知,该丢包检测服务可以包括前端页面,网络拓扑数据库、任务数据库、公开接口、控制模块、指令发送模块以及发包探测模块。
前端界面用于与用户之间的交互,包括展示进行丢包检测的有关的数据(比如,网络拓扑图或者丢包检测进度),以及接收用户的各种指令。
网络拓扑数据库用于存储通信网络的全局拓扑结构。
任务数据库用于存储丢包检测过程中建立的各项任务,当然,也可以用于存储丢包检测过程中产生的其它数据。
公开接口包括拓扑计算模块和分析模块。其中,拓扑计算模块用于根据全局拓扑结构、以及确定的起始节点和终止节点,计算在该起始节点和该终止节点之间进行网络传输的网络拓扑结构,从而确定该网络传输中的多个节点;分析模块用于根据获取到的多个节点中之至少一部分节点的数据包信息等流量统计数据,检测该网络传输中是否发生丢包问题以及发生丢包问题的节点。当然,在实际应用中,根据丢包检测需要,该公开接口中还可以包括其它模块。
控制模块用于控制各节点进行流量统计或者发送数据包。
指令发送模块用于向各节点发送对应节点数据格式的各项指令,比如前述中的数据包统计指令,该指令发送模块还用于向控制模块反馈其它数据,比如各节点对指令的执行结果等。
发包探测模块用于指示各节点发送或接收数据包以及向控制模块反馈其它数据。
步骤S1,丢包检测服务器寻找发生丢包的五元组。
业务方或通信网络的监控人员可以根据对通信网络的使用经验和历史等,确定存在发生丢包的五元组,从而通过丢包检测服务器的前端页面,向公开接口提交丢包检测请求;该丢包检测服务器接收到该丢包检测请求后根据该五元组建立丢包检测任务,将建立的丢包检测任务存储至任务数据库中;之后,该丢包检测服务器通过控制模块,从任务数据库获取该丢包检测任务,通过调用报文探测服务对至少一个五元组进行探测,包括对各五元组进行拆分,确定该五元组的起始节点和终止节点,调用服务器管控通道,控制起始节点通过发包工具发送数据包,控制终止节点通过抓包工具抓取数据包,得到对各五元组的初步探测结果。
当然上述的五元组也可以通过四元组代替。
其中,丢包检测服务器根据四元组建立的丢包检测任务可以如图6所示,其中包括8组四元组,各组四元组后方还包括删除等操作按钮,该删除按钮用于将对应的四元组从当前的任务中删除,且8组四元组的下方还包括清空列表按钮,该清空列表按钮用于快速将任务中所有的四元组进行删除。该页面的上方包括与当前的任务相关的其它信息,比如,任务模式、任务进度条、开始检测按钮、下一步按钮、任务执行的各阶段简介等。该页面的右方还包括编辑列表和快速导入区域,编辑列表用于输入源地址、源端口、目标地址和目标端口等四元组包括的内容,以在当前的任务中新增加四元组;快速导入区域用于导入一个已经编辑包的四元组。
在对如图6所示的丢包检测任务进行初步探测处理后,得到探测结果如图7所示,在图7中,在包括四元组的基础上还包括DSCP,即图7中所示为五元组。另外,图7中还包括各五元组的探测结果:源地址的发送数据包的个数,即发包量,以及对应的目标地址接收数据包的个数,即收包量。图7中,各五元组还对应设置有选择复选框,从而便于用户通过选中复选框,确定需要进行后续丢包检测的五元组。
步骤S2,所述丢包检测服务器查询拓扑,选择需要进行流量统计的设备。
当用户选择需要进行丢包检测的五元组之后,对于任一组五元组,可以显示如图8所示的页面,在该页面中,前端页面调用拓扑计算模块,生成由起始节点至终止节点的网络拓扑,并基于显示的该网络拓扑,确定用户的指令,选择需要进行流量统计的设备,即需要进行丢包检测的节点。另外,为了便于用户选择需要进行流量统计的设备,该页面中还可以显示各节点的属性信息、通过不同颜色对已选择或未选择的设备进行标记,比如,如图8中,在页面的下方还显示有当前网络拓扑的设备名称列表,在该页面的右方还显示有对设备通过不用颜色标记的图例、网络拓扑显示方式的控制选项、且该页面的右方还显示用户当前选中的节点的属性信息,以便于用户通过点击查看。
步骤S3,所述丢包检测服务器对需要进行流量统计的设备进行流量统计配置初始化。
对于需要进行流量统计的设备之后,丢包检测服务器可以通过前端页面引导用户向各设备发送流量统计配置信息,对各设备进行流量统计配置初始化。
其中,为了对来自不同厂商的设备进行流量统计配置,可以网络自动化系统编写多个适配模板,通过脚本语言的方式将对不同厂商不同型号的设备输入指令的方式写入该流量统计配置信息。
步骤S4,所述丢包检测服务器第一次采集各设备的流量统计数值。
各设备可以在传输探测数据包之前先进行一次流量统计,得到传输探测数据包前已传输的数据包的个数,将该个数反馈给丢包检测服务器。
步骤S5,所述丢包检测服务器按照查找到的五元组,发送探测数据包。
丢包检测服务器可以按照查找到的五元组,指示需要进行丢包检测的各设备传输探测数据包,以便于后续根据探测数据包的传输情况,对各设备是否丢包进行检测。
步骤S6,所述丢包检测服务器第二次采集各设备的流量统计数值。
各设备可以在传输探测数据包之后,再次进行流量统计,得到传输探测数据包后已传输的数据包个数,将该个数反馈给丢包检测服务器。
丢包检测服务器在接收到两次采集的流量统计数值后,可以显示采集结果如图9所示。在图9所示的页面中显示有当前进行丢包检测的五元组所对应的拓扑图,在该页面的下方,显示有对各设备初始化的结果、第一次采集的流量统计数值以及第二采集的流量统计数据,在该页面的右方还显示有根据各设备流量采集状况对各设备进行标记的图例。
步骤S7,所述丢包检测服务器对各设备进行丢包诊断。
丢包检测服务器可以通过公开接口中的分析模块,基于前述中的网络拓扑图、各设备的流量统计数值,对各设备进行筛选,从而确定出各设备中不相关节点、丢包节点、可能丢包节点、正常节点,并按照不同颜色对各设备进行标记区分,显示诊断结果页面如图10所示。在图10中,在网络拓扑中以第一颜色标记了可能丢包的前两个节点,通过第二颜色标记了最后未丢包节点,即正常节点。当然,为了便于用户确认数据包正常通过的路径,可以将正常节点构成的路径进行高亮显示,如图11所示。
步骤S8,所述丢包检测服务器进行流量统计清理。
在丢包检测结束之后,丢包检测服务器可以将各设备的流统配置进行清除,包括删除在进行流量统计配置时建立的ACL(Access Control List,访问控制列表)。
当然,该丢包检测服务器可以对丢包节点进行端口隔离来修复由该丢包节点带来的丢包问题。
实施例四
参照图12,示出了根据本申请一个实施例的一种网络数据包的确定装置的结构框图,包括:
第一节点确定模块1201,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块1202,用于向所述多个节点发送数据包统计指令;
第二节点确定模块1203,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
可选的,所述装置还包括:
起始节点和终止节点获取模块,用于获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点。
可选的,所述装置还包括:
测试模块,用于测试所述起始节点和所述终止节点之间存在网络传输的丢包事件。
可选的,所述第一节点确定模块包括:
中间节点查找子模块,用于根据网络拓扑图查找所述起始节点至所述终止节点之间经过的中间节点。
可选的,所述装置还包括:
路径个数确定模块,用于以所述起始节点经过所述中间节点发送至所述终止节点为一条路径,确定所述起始节点经过不同的所述中间节点发送至所述终止节点的路径个数;
添加模块,用于以所述路径个数为丢包测试次数,并添加至所述数据包统计指令,以执行对应所述丢包测试次数的多个丢包检测任务。
可选的,所述数据包统计指令发送模块包括:
第一数据包统计指令发送子模块,用于将所述数据包统计指令发送至网络适配服务器,以由所述网络适配服务器将所述数据包统计指令转化为适用于各节点的节点数据格式,并发送至对应的节点。
可选的,所述第二节点确定模块包括:
数据包信息接收子模块,用于接收网络适配服务器从节点的节点数据格式转化为目标数据格式的所述数据包信息。
可选的,所述节点为各数据系统的数据服务器、数据系统内的网络管理设备、数据系统之间的网络管理设备中至少一种。
可选的,所述数据包统计指令发送模块包括:
第二数据包统计指令发送子模块,用于通过专用的命令通道向各节点发送所述数据包统计指令。
可选的,所述第二节点确定模块包括:
数据包个数对比子模块,用于对比各节点传输的数据包的个数;
目标节点查找子模块,用于查找传输的数据包的个数相比于前置节点发生减少的节点,并将查找的节点确定为所述目标节点。
可选的,所述第二节点确定模块还包括:
同级节点确定子模块,用于确定当前节点不存在承接同一丢包检测任务的同级节点,所述同级节点为与当前节点具有同一前置节点的节点。
可选的,网络传输的数据包携带丢包检测任务的标识,所述同级节点确定子模块还用于:
根据所述数据包所携带的丢包检测任务的标识,确定所述同级节点所传输的数据包中,不存在与所述当前节点对应同一丢包检测任务的数据包。
可选的,若当前节点以及同级节点传输的数据包的个数为零,所述二节点确定模块还包括:
节点关联错误判定子模块,用于判定所述当前节点以及所述同级节点共有的后置节点传输的数据包的个数,等于所述当前节点的前置节点传输的数据包的个数,则判定发生节点关联错误。
可选的,所述数据包信息包括业务数据包的镜像数据包;
所述第一节点确定模块还包括:
镜像数据包统计子模块,用于统计各节点传输的镜像数据包的个数。
可选的,所述数据包信息包括第一计数值和第二计数值,所述第一计数值在接收到所述数据包统计指令之后且在传输数据包之前统计传输的数据包的个数,所述第二计数值在接收到所述数据包统计指令且探测数据包之后统计传输的数据包的个数;
所述第一节点确定模块还包括:
差值计算子模块,用于将所述第一计数值与第二计数值的差值作为传输的数据包的个数。
在本申请实施例中,能够确定网络传输所经过的多个节点,包括起始节点、终止节点和中间节点,并向各节点发送数据包统计指令,进而获取各节点反馈的数据包信息,根据多个节点中之至少一部分节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
实施例五
参照图13,示出了根据本申请一个实施例的一种网络数据包的确定装置的结构框图,包括:
数据包统计指令接收模块1301,用于接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
数据包信息获取模块1302,用于获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生丢包的目标节点。
可选的,所述数据包信息获取模块包括:
探测数据包监测子模块,用于监测传输的探测数据包,并统计所述探测数据包的数据包信息。
可选的,所述数据包信息获取模块还包括:
探测数据包发送子模块,用于向所述节点的后置节点发送所述探测数据包。
可选的,所述数据包信息获取模块包括:
业务数据包获取子模块,用于获取由所述网络传输中起始节点发送至终止节点的业务数据包;
镜像数据包生成模块,用于生成所述业务数据包的镜像数据包;
镜像数据包发送子模块,用于将生成镜像数据包作为数据包信息发送给丢包检测服务器。
在本申请实施例中,能够接收发送的数据包统计指令,获取并提交数据包信息,从而根据各节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
实施例六
参照图14,示出了根据本申请一个实施例的一种网络数据包的确定系统的结构框图,包括网络传输的多个节点1401以及丢包检测服务器1402,所述多个节点包括起始节点、中间节点和终止节点;
所述丢包检测服务器1402包括:
第一节点确定模块1201,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块1202,用于向所述多个节点发送数据包统计指令;
第二节点确定模块1203,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
可选的,所述系统还包括网络适配服务器;
所述丢包检测服务器还用于将所述数据包统计指令发送至网络适配服务器;
所述网络适配服务器用于将所述数据包统计指令转化为适用于节点的节点数据格式,并发送至对应的节点。
在本申请实施例中,丢包检测服务器能够确定网络传输所经过的多个节点,包括起始节点、终止节点和中间节点,并向各节点发送数据包统计指令,进而获取各节点反馈的数据包信息,根据多个节点中之至少一部分节点的数据包信息对各节点是否丢包进行判断,由于不需要控制起始节点向终止节点传输特殊结构的数据包,即不需要依赖特殊结构的数据包来进行丢包检测,降低了丢包检测的局限性,同时也提高了丢包检测的可靠性。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的系统。图15示意性地示出了可被用于实现本申请中所述的各个实施例的示例性系统(或装置)1500。
对于一个实施例,图15示出了示例性系统1500,该系统具有一个或多个处理器1502、被耦合到(一个或多个)处理器1502中的至少一个的系统控制模块(芯片组)1504、被耦合到系统控制模块1504的系统存储器1506、被耦合到系统控制模块1504的非易失性存储器(NVM)/存储设备1508、被耦合到系统控制模块1504的一个或多个输入/输出设备1510,以及被耦合到系统控制模块1506的网络接口1512。
处理器1502可包括一个或多个单核或多核处理器,处理器1502可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,系统1500能够作为本申请实施例中所述的丢包检测服务器或各节点。
在一些实施例中,系统1500可包括具有指令的一个或多个计算机可读介质(例如,系统存储器1506或NVM/存储设备1508)以及与该一个或多个计算机可读介质相合并被配置为执行指令以实现模块从而执行本申请中所述的动作的一个或多个处理器1502。
对于一个实施例,系统控制模块1504可包括任意适当的接口控制器,以向(一个或多个)处理器1502中的至少一个和/或与系统控制模块1504通信的任意适当的设备或组件提供任意适当的接口。
系统控制模块1504可包括存储器控制器模块,以向系统存储器1506提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
系统存储器1506可被用于例如为系统1500加载和存储数据和/或指令。对于一个实施例,系统存储器1506可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,系统存储器1506可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。
对于一个实施例,系统控制模块1504可包括一个或多个输入/输出控制器,以向NVM/存储设备1508及(一个或多个)输入/输出设备1510提供接口。
例如,NVM/存储设备1508可被用于存储数据和/或指令。NVM/存储设备1508可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。
NVM/存储设备1508可包括在物理上作为系统1500被安装在其上的设备的一部分的存储资源,或者其可被该设备访问而不必作为该设备的一部分。例如,NVM/存储设备1508可通过网络经由(一个或多个)输入/输出设备1510进行访问。
(一个或多个)输入/输出设备1510可为系统1500提供接口以与任意其他适当的设备通信,输入/输出设备1510可以包括通信组件、音频组件、传感器组件等。网络接口1512可为系统1500提供接口以通过一个或多个网络通信,系统1500可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器1502中的至少一个可与系统控制模块1504的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1502中的至少一个可与系统控制模块1504的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP)。对于一个实施例,(一个或多个)处理器1502中的至少一个可与系统控制模块1504的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器1502中的至少一个可与系统控制模块1504的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC)。
在各个实施例中,系统1500可以但不限于是:工作站、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)。在各个实施例中,系统1500可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,系统1500包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。
其中,如果显示器包括触摸面板,显示屏可以被实现为触屏显示器,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在终端设备时,可以使得该终端设备执行本申请实施例中各方法步骤的指令(instructions)。
在一个示例中提供了一种装置,包括:一个或多个处理器;和,其上存储的有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如本申请实施例中丢包检测服务器或各节点执行的方法。
在一个示例中还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如本申请实施例中丢包检测服务器或各节点执行的方法。
本申请实施例公开了一种网络数据包的确定方法、装置及系统。
示例1、一种网络数据包的确定方法,包括:
确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
向所述多个节点发送数据包统计指令;
获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
示例2可包括示例1所述的方法,在所述确定网络传输经过的多个节点之前,所述方法还包括:
获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点。
示例3可包括示例2所述的方法,在所述获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点之后,所述方法还包括:
测试所述起始节点和所述终止节点之间存在网络传输的丢包事件。
示例4可包括示例1所述的方法,所述确定网络传输经过的多个节点包括:
根据网络拓扑图查找所述起始节点至所述终止节点之间经过的中间节点。
示例5可包括示例1所述的方法,所述方法还包括:
以所述起始节点经过所述中间节点发送至所述终止节点为一条路径,确定所述起始节点经过不同的所述中间节点发送至所述终止节点的路径个数;
以所述路径个数为丢包测试次数,并添加至所述数据包统计指令,以执行对应所述丢包测试次数的多个丢包检测任务。
示例6可包括示例1所述的方法,所述向所述多个节点发送数据包统计指令包括:
将所述数据包统计指令发送至网络适配服务器,以由所述网络适配服务器将所述数据包统计指令转化为适用于各节点的节点数据格式,并发送至对应的节点。
示例7可包括示例1所述的方法,所述获取所述多个节点中之至少一部分节点提交的数据包信息包括:
接收网络适配服务器从节点的节点数据格式转化为目标数据格式的所述数据包信息。
示例8可包括示例1所述的方法,所述节点为各数据系统的数据服务器、数据系统内的网络管理设备、数据系统之间的网络管理设备中至少一种。
示例9可包括示例8所述的方法,所述向所述多个节点发送数据包统计指令包括:
通过专用的命令通道向所述多个节点发送所述数据包统计指令。
示例10可包括示例1所述的方法,所述根据所述数据包信息确定发生数据包丢失的目标节点包括:
对比各节点传输的数据包的个数;
查找传输的数据包的个数相比于前置节点发生减少的节点,并将查找的节点确定为所述目标节点。
示例11可包括示例10所述的方法,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
确定当前节点不存在承接同一丢包检测任务的同级节点,所述同级节点为与当前节点具有同一前置节点的节点。
示例12可包括示例11所述的方法,网络传输的数据包携带丢包检测任务的标识,所述确定当前节点不存在承接同一丢包检测任务的同级节点包括:
根据所述数据包所携带的丢包检测任务的标识,确定所述同级节点所传输的数据包中,不存在与所述当前节点对应同一丢包检测任务的数据包。
示例13可包括示例10所述的方法,若当前节点以及同级节点传输的数据包的个数为零,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
判定所述当前节点以及所述同级节点共有的后置节点传输的数据包的个数,等于所述当前节点的前置节点传输的数据包的个数,则判定发生节点关联错误。
示例14可包括示例1所述的方法,所述数据包信息包括业务数据包的镜像数据包;
所述根据所述数据包信息确定发生数据包丢失的目标节点还包括:
统计节点传输的镜像数据包的个数。
示例15可包括示例1所述的方法,所述数据包信息包括第一计数值和第二计数值,所述第一计数值在接收到所述数据包统计指令之后且在传输数据包之前统计传输的数据包的个数,所述第二计数值在接收到所述数据包统计指令且探测数据包之后统计传输的数据包的个数;
所述根据所述数据包信息确定发生数据包丢失的目标节点还包括:
将所述第一计数值与第二计数值的差值作为传输的数据包的个数。
示例16、一种网络数据包的确定方法,包括:
接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生丢包的目标节点。
示例17可包括示例16所述的方法,所述获取数据包信息包括:
监测传输的探测数据包,并统计所述探测数据包的数据包信息。
示例18可包括示例17所述的方法,所述方法还包括:
向所述节点的后置节点发送所述探测数据包。
示例19可包括示例16所述的方法,所述获取数据包信息包括:
获取由所述网络传输中起始节点发送至终止节点的业务数据包;
生成所述业务数据包的镜像数据包;
所述提交所述数据包信息包括:
将生成镜像数据包作为数据包信息发送给丢包检测服务器。
示例20、一种网络数据包的确定装置,包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
示例21、一种网络数据包的确定装置,包括:
数据包统计指令接收模块,用于接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
数据包信息获取模块,用于获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生丢包的目标节点。
示例22、一种网络数据包的确定系统,包括网络传输的多个节点以及丢包检测服务器,所述多个节点包括起始节点、中间节点和终止节点;
所述丢包检测服务器包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
示例23可包括示例22所述的系统,所述系统还包括网络适配服务器;
所述丢包检测服务器,还用于将所述数据包统计指令发送至网络适配服务器;
所述网络适配服务器用于将所述数据包统计指令转化为适用于节点的节点数据格式,并发送至对应的节点。
示例24、一种装置,包括:一个或多个处理器;和其上存储的有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如权利要求示例1-示例19一个或多个的方法。
示例25、一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如权利要求示例1-示例19一个或多个的方法。
虽然某些实施例是以说明和描述为目的的,各种各样的替代、和/或、等效的实施方案、或计算来达到同样的目的实施例示出和描述的实现,不脱离本申请的实施范围。本申请旨在覆盖本文讨论的实施例的任何修改或变化。因此,显然本文描述的实施例仅由权利要求和它们的等同物来限定。

Claims (25)

1.一种网络数据包的确定方法,其特征在于,包括:
确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
向所述多个节点发送数据包统计指令;
获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
2.根据权利要求1所述的方法,其特征在于,在所述确定网络传输经过的多个节点之前,所述方法还包括:
获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点。
3.根据权利要求2所述的方法,其特征在于,在所述获取发生数据包丢失的网络传输对应的所述起始节点和所述终止节点之后,所述方法还包括:
测试所述起始节点和所述终止节点之间存在网络传输的丢包事件。
4.根据权利要求1所述的方法,其特征在于,所述确定网络传输经过的多个节点包括:
根据网络拓扑图查找所述起始节点至所述终止节点之间经过的中间节点。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
以所述起始节点经过所述中间节点发送至所述终止节点为一条路径,确定所述起始节点经过不同的所述中间节点发送至所述终止节点的路径个数;
以所述路径个数为丢包测试次数,并添加至所述数据包统计指令,以执行对应所述丢包测试次数的多个丢包检测任务。
6.根据权利要求1所述的方法,其特征在于,所述向所述多个节点发送数据包统计指令包括:
将所述数据包统计指令发送至网络适配服务器,以由所述网络适配服务器将所述数据包统计指令转化为适用于各节点的节点数据格式,并发送至对应的节点。
7.根据权利要求1所述的方法,其特征在于,所述获取所述多个节点中之至少一部分节点提交的数据包信息包括:
接收网络适配服务器从节点的节点数据格式转化为目标数据格式的所述数据包信息。
8.根据权利要求1所述的方法,其特征在于,所述节点为各数据系统的数据服务器、数据系统内的网络管理设备、数据系统之间的网络管理设备中至少一种。
9.根据权利要求8所述的方法,其特征在于,所述向所述多个节点发送数据包统计指令包括:
通过专用的命令通道向所述多个节点发送所述数据包统计指令。
10.根据权利要求1所述的方法,其特征在于,所述根据所述数据包信息确定发生数据包丢失的目标节点包括:
对比各节点传输的数据包的个数;
查找传输的数据包的个数相比于前置节点发生减少的节点,并将查找的节点确定为所述目标节点。
11.根据权利要求10所述的方法,其特征在于,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
确定当前节点不存在承接同一丢包检测任务的同级节点,所述同级节点为与当前节点具有同一前置节点的节点。
12.根据权利要求11所述的方法,其特征在于,网络传输的数据包携带丢包检测任务的标识,所述确定当前节点不存在承接同一丢包检测任务的同级节点包括:
根据所述数据包所携带的丢包检测任务的标识,确定所述同级节点所传输的数据包中,不存在与所述当前节点对应同一丢包检测任务的数据包。
13.根据权利要求10所述的方法,其特征在于,若当前节点以及同级节点传输的数据包的个数为零,在所述将查找的节点确定为所述目标节点之前,所述方法还包括:
判定所述当前节点以及所述同级节点共有的后置节点传输的数据包的个数,等于所述当前节点的前置节点传输的数据包的个数,则判定发生节点关联错误。
14.根据权利要求10所述的方法,其特征在于,所述数据包信息包括业务数据包的镜像数据包;
所述根据所述数据包信息确定发生数据包丢失的目标节点还包括:
统计节点传输的镜像数据包的个数。
15.根据权利要求14所述的方法,其特征在于,所述数据包信息包括第一计数值和第二计数值,所述第一计数值在接收到所述数据包统计指令之后且在传输数据包之前统计传输的数据包的个数,所述第二计数值在接收到所述数据包统计指令且探测数据包之后统计传输的数据包的个数;
所述统计节点传输的镜像数据包的个数包括:
将所述第一计数值与第二计数值的差值作为传输的数据包的个数。
16.一种网络数据包的确定方法,其特征在于,包括:
接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
获取数据包信息,并提交所述数据包信息,以根据所述多个节点中之至少一部分节点的数据包信息确定发生数据包丢失的目标节点。
17.根据权利要求16所述的方法,其特征在于,所述获取数据包信息包括:
监测传输的探测数据包,并统计所述探测数据包的数据包信息。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
向所述节点的后置节点发送所述探测数据包。
19.根据权利要求16所述的方法,其特征在于,所述获取数据包信息包括:
获取由所述网络传输中起始节点发送至终止节点的业务数据包;
生成所述业务数据包的镜像数据包;
所述提交所述数据包信息包括:
将生成镜像数据包作为数据包信息发送给丢包检测服务器。
20.一种网络数据包的确定装置,其特征在于,包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
21.一种网络数据包的确定装置,其特征在于,包括:
数据包统计指令接收模块,用于接收发送的数据包统计指令,所述统计指令在确定网络传输经过的多个节点之后发送至当前节点;
数据包信息获取模块,用于获取数据包信息,并提交所述数据包信息,以根据所述多个节点的数据包信息确定发生数据包丢失的目标节点。
22.一种网络数据包的确定系统,其特征在于,包括网络传输的多个节点以及丢包检测服务器,所述多个节点包括起始节点、中间节点和终止节点;
所述丢包检测服务器包括:
第一节点确定模块,用于确定网络传输经过的多个节点,所述多个节点包括起始节点、中间节点和终止节点;
数据包统计指令发送模块,用于向所述多个节点发送数据包统计指令;
第二节点确定模块,用于获取所述多个节点中之至少一部分节点提交的数据包信息,并根据所述数据包信息确定发生数据包丢失的目标节点。
23.根据权利要求22所述的系统,其特征在于,所述系统还包括网络适配服务器;
所述丢包检测服务器,还用于将所述数据包统计指令发送至网络适配服务器;
所述网络适配服务器,用于将所述数据包统计指令转化为适用于节点的节点数据格式,并发送至对应的节点。
24.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-19一个或多个的方法。
25.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-19一个或多个的方法。
CN201711010207.7A 2017-10-25 2017-10-25 网络数据包的确定方法、装置及系统 Active CN109714221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711010207.7A CN109714221B (zh) 2017-10-25 2017-10-25 网络数据包的确定方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711010207.7A CN109714221B (zh) 2017-10-25 2017-10-25 网络数据包的确定方法、装置及系统

Publications (2)

Publication Number Publication Date
CN109714221A true CN109714221A (zh) 2019-05-03
CN109714221B CN109714221B (zh) 2022-11-01

Family

ID=66252440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711010207.7A Active CN109714221B (zh) 2017-10-25 2017-10-25 网络数据包的确定方法、装置及系统

Country Status (1)

Country Link
CN (1) CN109714221B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110191027A (zh) * 2019-06-19 2019-08-30 上海电气泰雷兹交通自动化系统有限公司 一种ccu和mcu之间的通信错误诊断方法
CN111061718A (zh) * 2019-12-19 2020-04-24 中国建设银行股份有限公司 一种数据检核方法及装置
CN112737884A (zh) * 2020-12-28 2021-04-30 北京达佳互联信息技术有限公司 数据的转发及检测网络性能的方法、相关装置
CN113300816A (zh) * 2020-07-15 2021-08-24 阿里巴巴集团控股有限公司 节点定位方法、网络传输方法、装置及设备
CN113783711A (zh) * 2020-06-10 2021-12-10 深信服科技股份有限公司 一种丢包定位方法、装置、设备和存储介质
CN115086199A (zh) * 2021-03-15 2022-09-20 中国电信股份有限公司 网络质量测试方法及装置、存储介质、电子设备
CN115118632A (zh) * 2022-06-21 2022-09-27 中电信数智科技有限公司 一种基于云网融合的主机丢包自动检测方法
CN115242673A (zh) * 2022-07-21 2022-10-25 深圳市凯利华电子有限公司 一种检测路由器网络稳定的检测装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100054133A1 (en) * 2007-03-05 2010-03-04 Panasonic Corporation Loop Detection For Mobile IP Home Agents
CN101668027A (zh) * 2008-09-04 2010-03-10 中国电信股份有限公司 多媒体内容的提供方法、系统、内容服务器和客户端
CN102904775A (zh) * 2012-09-29 2013-01-30 华为技术有限公司 网络丢包测量方法、设备和系统
CN103716201A (zh) * 2013-12-12 2014-04-09 中国科学院信息工程研究所 一种开放型无线传感网性能测试方法及系统
CN105812210A (zh) * 2016-05-25 2016-07-27 赵鹏 分布式网络性能测量系统
CN105871661A (zh) * 2016-06-16 2016-08-17 上海帝联信息科技股份有限公司 公网服务器探测方法及探测服务器
CN106130825A (zh) * 2016-08-04 2016-11-16 华为技术有限公司 一种数据传输质量检测方法及装置
US20160337200A1 (en) * 2014-01-29 2016-11-17 Huawei Technologies Co., Ltd. Method and Apparatus for Visualized Network Operation and Maintenance
CN106170950A (zh) * 2014-12-12 2016-11-30 华为技术有限公司 一种节点的运行状态检测方法及装置
CN107294767A (zh) * 2017-05-05 2017-10-24 中广热点云科技有限公司 一种直播网络传输故障监测方法及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100054133A1 (en) * 2007-03-05 2010-03-04 Panasonic Corporation Loop Detection For Mobile IP Home Agents
CN101668027A (zh) * 2008-09-04 2010-03-10 中国电信股份有限公司 多媒体内容的提供方法、系统、内容服务器和客户端
CN102904775A (zh) * 2012-09-29 2013-01-30 华为技术有限公司 网络丢包测量方法、设备和系统
CN103716201A (zh) * 2013-12-12 2014-04-09 中国科学院信息工程研究所 一种开放型无线传感网性能测试方法及系统
US20160337200A1 (en) * 2014-01-29 2016-11-17 Huawei Technologies Co., Ltd. Method and Apparatus for Visualized Network Operation and Maintenance
CN106170950A (zh) * 2014-12-12 2016-11-30 华为技术有限公司 一种节点的运行状态检测方法及装置
CN105812210A (zh) * 2016-05-25 2016-07-27 赵鹏 分布式网络性能测量系统
CN105871661A (zh) * 2016-06-16 2016-08-17 上海帝联信息科技股份有限公司 公网服务器探测方法及探测服务器
CN106130825A (zh) * 2016-08-04 2016-11-16 华为技术有限公司 一种数据传输质量检测方法及装置
CN107294767A (zh) * 2017-05-05 2017-10-24 中广热点云科技有限公司 一种直播网络传输故障监测方法及系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110191027A (zh) * 2019-06-19 2019-08-30 上海电气泰雷兹交通自动化系统有限公司 一种ccu和mcu之间的通信错误诊断方法
CN111061718A (zh) * 2019-12-19 2020-04-24 中国建设银行股份有限公司 一种数据检核方法及装置
CN113783711A (zh) * 2020-06-10 2021-12-10 深信服科技股份有限公司 一种丢包定位方法、装置、设备和存储介质
CN113300816A (zh) * 2020-07-15 2021-08-24 阿里巴巴集团控股有限公司 节点定位方法、网络传输方法、装置及设备
CN112737884A (zh) * 2020-12-28 2021-04-30 北京达佳互联信息技术有限公司 数据的转发及检测网络性能的方法、相关装置
CN115086199A (zh) * 2021-03-15 2022-09-20 中国电信股份有限公司 网络质量测试方法及装置、存储介质、电子设备
CN115118632A (zh) * 2022-06-21 2022-09-27 中电信数智科技有限公司 一种基于云网融合的主机丢包自动检测方法
CN115118632B (zh) * 2022-06-21 2024-02-06 中电信数智科技有限公司 一种基于云网融合的主机丢包自动检测方法
CN115242673A (zh) * 2022-07-21 2022-10-25 深圳市凯利华电子有限公司 一种检测路由器网络稳定的检测装置

Also Published As

Publication number Publication date
CN109714221B (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
CN109714221A (zh) 网络数据包的确定方法、装置及系统
US10880197B2 (en) Methods, systems, and computer readable media for testing a network node using source code for programming a packet forwarding plane of the network node
CN106294614B (zh) 用于访问业务的方法和装置
US8051163B2 (en) Synthetic transactions based on system history and load
JP5909139B2 (ja) トランザクショントレースグラフと論理的サブシステムのマップとの関係の可視化
JP5909138B2 (ja) 論理的なサブシステムのマップを介してのフローによるトランザクショントレースの可視化
US7805510B2 (en) Hierarchy for characterizing interactions with an application
US9467330B2 (en) Diagnosing connectivity in a network
JP2012221499A (ja) 複雑なトランザクションの構造的および動作的な記述を有するトランザクションモデル
CN104796240A (zh) 一种有状态网络协议的模糊测试系统
CN107426007A (zh) 用于跟踪网络交换机中的网络装置信息的方法及系统
CN102427445B (zh) It仿真基础架构离线合规性安全审计方法
CN106933709A (zh) 一种测试方法及装置
US20160156516A1 (en) Monitoring device, method, and medium
CN105579976B (zh) 网页自动化测试方法及装置
CN107113191A (zh) 数据中心结构网络中的内联数据包追踪
CN106559431A (zh) 一种用于汽车安全检测的可视化分析方法和装置
US20160057043A1 (en) Diagnostic routing system and method for a link access group
CN107003931A (zh) 将测试验证从测试执行分离
US20090207756A1 (en) Network configuration management method
CN106130897A (zh) 基于路由模拟的性能优化方法
CN107733837A (zh) 基于应用层网络异常报文的异常检测方法及装置
CN108039968A (zh) 网络优化方法、设备及计算机可读存储介质
CN102739446B (zh) 选择网络时间协议服务器的方法和装置
CN106878106A (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