一种网络检测方法及装置、电子设备及存储介质与流程

文档序号:30418733发布日期:2022-06-15 12:22阅读:87来源:国知局
一种网络检测方法及装置、电子设备及存储介质与流程

1.本发明涉及网络技术领域,尤其涉及一种网络检测方法及系统、电子设备及存储介质。


背景技术:

2.现有技术中公有云由于单个机房规模极大,一般由硬件集成工程师协同软件实施工程师在数据中心现场进行联合部署。不同于一般部署在集中式数据中心的公有云,边缘云的特点是单个机房规模很小,机房极多,但在地理分布上极为分散。而边缘计算由于上述这些特殊性,一般要求软件实施人员在远程进行批量化自动化部署,以降低人力成本,提高部署效率。边缘计算部署时经常会碰到由于硬件实施人员和软件实施人员存在沟通不到位,导致硬件没有按照要求配置好;软件实施人员在远端发现由于硬件问题无法部署会严重影响进度,而其中很大一部分硬件问题是网络的连通性和配置问题。
3.针对上述硬件问题中的网络连通性问题,对于边缘计算这种特殊场景的云计算,现有技术中往往采用因特网包探索(packet internet groper,ping)方法进行网络连通性的检测。使用ping方法检测网络时,必须在服务器网络接口上配置网际互联协议(internet protocol,ip)地址,但是在使用了虚拟交换机(virtual switch)或者直通网卡(single root i/o virtualization,sriov)等特殊配置和加速硬件时,业务网、存储网、外网的网卡上一般不会配置ip地址,也不存在虚拟局域网(virtual local area network,vlan)子接口,这些网络报文一般不经过内核的网络协议栈,导致不能使用传统的ping方法进行检测。


技术实现要素:

4.有鉴于此,本发明实施例提供一种网络检测方法及系统、电子设备及存储介质。
5.本发明的技术方案是这样实现的:
6.第一方面,本发明实施例提供一种网络检测方法,应用于边缘计算集群内的检测节点中,包括:
7.获取被测节点的以太网接口的第一接口信息;
8.向被测节点发送第一指示;
9.接收被测节点基于第一指示发送的第一报文,其中,第一报文至少携带有被测节点发送第一报文的以太网接口的第二接口信息;
10.根据第二接口信息及第一接口信息的匹配结果,确定检测节点和被测节点之间接口连通性。
11.进一步地,接收被测节点基于第一指示发送的最大传输单元mtu长度值为第一阈值的第一报文;
12.接收被测节点基于第一阈值,依次发送的mtu长度值按预设间隔值递增的多个第一报文;
13.根据接收到的多个第一报文的mtu长度值,确定mtu长度最大值。
14.进一步地,根据接收到的多个第一报文的mtu长度值,确定mtu长度最大值,包括:
15.若成功接收到多个第一报文,读取每个接收到第一报文的mtu长度值,并确定多个第一报文中的mtu长度最大值。
16.进一步地,确定被测节点中以太网接口的类型;
17.根据以太网接口的类型,确定以太网接口的物理接口信息,其中,物理接口信息,用于由第一指示携带发送至被测节点,供被测节点确定发送第一报文的以太网接口所对应的物理接口。
18.进一步地,第一指示,用于指示被测节点根据物理接口信息发送第一报文。
19.进一步地,获取被测节点的以太网接口的第一接口信息,至少包括:
20.获取被测节点的以太网接口的接口名称。
21.进一步地,根据第二接口信息及第一接口信息的匹配结果,确定检测节点和被测节点之间接口连通性,包括:
22.若存在与第二接口信息匹配的第一接口信息,则确定检测节点和被测节点之间接口连通;
23.若不存在与第二接口信息匹配的第一接口信息,则确定检测节点和被测节点之间接口不连通。
24.第二方面,本发明实施例提供一种网络检测方法,应用于边缘计算集群内的被测节点中,包括:
25.接收检测节点发送的第一指示;
26.基于第一指示发送第一报文,其中,第一报文至少携带有被测节点发送第一报文的以太网接口的第二接口信息;第二接口信息,用于供检测节点根据与第一接口信息的匹配结果,确定检测节点和被测节点之间接口连通性。
27.进一步地,基于第一指示发送第一报文,包括:
28.基于第一指示发送mtu长度值为第一阈值的第一报文;
29.基于第一阈值,依次发送mtu长度值按预设间隔值递增的多个第一报文。
30.进一步地,当第一报文的mtu长度值达到第二阈值时,停止发送第一报文。
31.第三方面,本发明实施例提供一种网络检测装置,应用于边缘计算集群内的检测节点中,包括:
32.获取模块,用于获取被测节点的以太网接口的第一接口信息;
33.第一发送模块,用于向被测节点发送第一指示;
34.第一接收模块,用于接收被测节点基于第一指示发送的第一报文,其中,第一报文至少携带有被测节点发送第一报文的以太网接口的第二接口信息;
35.确定模块,用于根据第二接口信息及第一接口信息的匹配结果,确定检测节点和被测节点之间接口连通性。
36.进一步地,所述第一接收模块还用于:
37.接收被测节点基于第一指示发送的最大传输单元mtu长度值为第一阈值的第一报文;
38.接收被测节点基于第一阈值,依次发送的mtu长度值按预设间隔值递增的多个第一报文;
39.所述确定模块还用于:
40.根据接收到的多个第一报文的mtu长度值,确定mtu长度最大值。
41.进一步地,所述确定模块,具体用于:
42.若成功接收到多个第一报文,读取每个接收到第一报文的mtu长度值,并确定多个第一报文中的mtu长度最大值。
43.进一步地,所述确定模块还用于:
44.确定被测节点中以太网接口的类型;
45.根据以太网接口的类型,确定以太网接口的物理接口信息,其中,物理接口信息,用于由第一指示携带发送至被测节点,供被测节点确定发送第一报文的以太网接口所对应的物理接口。
46.进一步地,所述确定模块,具体用于:
47.若存在与第二接口信息匹配的第一接口信息,则确定检测节点和被测节点之间接口连通;
48.若不存在与第二接口信息匹配的第一接口信息,则确定检测节点和被测节点之间接口不连通。
49.第四方面,本发明实施例提供一种网络检测装置,应用于边缘计算集群内的被测节点中,包括:
50.第二接收模块,用于接收检测节点发送的第一指示;
51.第二发送模块,用于基于第一指示发送第一报文,其中,第一报文至少携带有被测节点发送第一报文的以太网接口的第二接口信息;第二接口信息,用于供检测节点根据与第一接口信息的匹配结果,确定检测节点和被测节点之间接口连通性。
52.进一步地,所述第二发送模块,具体用于:
53.基于第一指示发送mtu长度值为第一阈值的第一报文;
54.基于第一阈值,依次发送mtu长度值按预设间隔值递增的多个第一报文。
55.进一步地,所述装置还包括:
56.停止装置,用于当第一报文的mtu长度值达到第二阈值时,停止发送第一报文。
57.第五方面,本发明实施例提供一种电子设备,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;
58.处理器运行所述计算机程序时,执行前述一个或多个技术方案所述方法的步骤。
59.第六方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令;计算机可执行指令被处理器执行后,能够实现前述一个或多个技术方案所述方法。
60.本发明提供的网络检测方法,获取被测节点的以太网接口的第一接口信息;向所述被测节点发送第一指示;接收所述被测节点基于所述第一指示发送的第一报文,其中,所述第一报文至少携带有所述被测节点发送所述第一报文的以太网接口的第二接口信息;根据所述第二接口信息及所述第一接口信息的匹配结果,确定所述检测节点和所述被测节点之间接口连通性。如此,根据被测节点发送的报文中携带的接口信息,可以确定发送报文的接口。通过基于报文的收发和接口信息的匹配,一方面对被测节点和检测节点之间的链路连通性进行确定,另一方面,通过接口匹配,可以实现对开放式系统互联通信参考模型中2
层网络连通性的检测。
附图说明
61.图1为本发明实施例提供的一种网络检测方法的流程示意图;
62.图2为本发明实施例提供的一种网络检测方法的流程示意图;
63.图3为本发明实施例提供的一种网络检测方法的流程示意图;
64.图4为本发明实施例提供的一种网络检测方法的流程示意图;
65.图5为本发明实施例提供的一种网络检测方法的流程示意图;
66.图6为本发明实施例提供的一种网络检测方法的流程示意图;
67.图7为本发明实施例提供的一种网络检测方法的流程示意图;
68.图8为本发明实施例提供的一种网络检测方法的流程示意图;
69.图9为本发明实施例提供的一种网络检测装置的结构示意图;
70.图10为本发明实施例提供的一种网络检测装置的结构示意图;
71.图11为本发明实施例提供的一种边缘计算集群的结构示意图;
72.图12为本发明实施例提供的一种网络检测方法的流程示意图。
具体实施方式
73.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
74.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
75.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
76.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
77.如图1所示,本发明实施例提供一种网络检测方法,所述方法包括:
78.s110:获取被测节点的以太网接口的第一接口信息;
79.s120:向所述被测节点发送第一指示;
80.s130:接收所述被测节点基于所述第一指示发送的第一报文,其中,所述第一报文至少携带有所述被测节点发送所述第一报文的以太网接口的第二接口信息;
81.s140:根据所述第二接口信息及所述第一接口信息的匹配结果,确定所述检测节点和被测节点之间接口连通性。
82.这里,被测节点是边缘计算集群中用于实现业务功能的各个节点,例如访问节点及存储节点等。被测节点所处的网络,例如存储网等,在检测前应预先完成物理连接,且网
络检测工具客户端可运行于被测节点。检测节点是独立存在的用于对被测节点连通性进行检测的节点,例如可用于运行网络检测工具服务端的节点,检测节点与被测节点所处的网络连通,且检测节点的ip地址已完成配置。以太网接口是用于网络数据连接的接口,例如fddi接口、bnc接口、console接口等。第一接口信息用于标识每个以太网接口的身份,例如eth0、eth1等接口名称。
83.在一个实施例中,检测节点在向被测节点发送第一指示之前,可远程使用预启动执行环境(preboot execution environment,pxe)或者远程智能平台管理接口(intelligent platform management interface,ipmi)的方式,启动每个被测节点上的自生操作系统(livecd)。被测节点的livecd被启动后,开始读取全局配置文件,并监听检测节点的指令。检测节点向被测节点发送停止发包指令,使被测节点不再进行报文发送以进入到适宜网络检测的状态,从而降低被测节点一边与检测节点进行网络检测的报文发送,另一边正常收发数据报文对检测的干扰。在被测节点停止发送数据报文之后,检测节点向被测节点发送第一指示,被测节点接受到第一指示,进入到网络检测的检测状态,即进入到向检测节点以外的其他设备发送数据报文的状态,并向检测节点发送第一报文,因此检测节点在发送第一指示之后,会接收被测节点发送的第一报文。
84.在另一个实施例中,获取被测节点的以太网接口的第一接口信息,可以为直接获取边缘计算集群中被测节点中每个接口的接口名称,也可以为获取边缘计算集群中所有网络的网络信息列表,例如存储网等网络,网络信息列表可至少包含:网络中的接口名称,以供对接口组合信息的具体记录。根据每个网络的网络信息列表中记录的接口名称,生成网络的接口组合列表,其中包含网络中所有接口名称双向的全连接组合,例如一个业务网拥有接口名称为a,b,c的三个接口,则该业务网的接口组合列表包括[a-b,b-a,a-c,c-a,b-c,c-b]。
[0085]
在本发明实施例中,检测节点可以预先准备全局配置文件,用于指明和记录边缘计算集群中每个网络的虚拟局域网身份标识(vlan identity document,vlan id)信息、期望mtu值、绑定接口和其从属接口关系,其中,绑定接口为多个物理接口绑定形成的一个独立接口。遍历被测节点中主机上的所有以太网接口,并获取第一接口信息。可选地,获取每个以太网接口的接口名称并记录。检测节点的服务端中生成第一指示,第一指示用于指示被测节点发送预设格式和内容的第一报文。例如用于指示被测节点开始发送报文的“发送报文”指令等,并将第一指示发送至运行于被测节点的客户端中。
[0086]
第一报文用于供检测节点和被测节点收发以测试节点间的连通性,第一报文的格式和内容由检测节点定义,格式可以为js对象简谱(javascript object notation,json)格式。对于第一报文内容,可以首先确定其初始报文内容,初始报文至少包含所在被测节点的主机的序列号、用于标识发送该报文的接口的第二接口信息、vlan id、mtu长度值、发送报文时的时间戳。其中vlan id从配置文件中获取。实际报文内容为初始报文内容后加长度为n的空格,n由期望mtu长度(t1)减去初始报文长度、被测节点网际互联协议(internet protocol,ip)头部长度(20字节)以及被测节点用户数据报协议(user datagram protocol,udp)头部(8字节)得到。可选地,基于第二接口信息,和检测节点接收报文的接口,可以得到每个第一报文传输的源接口和目的接口。对应地,根据报文中记录的第二接口信息,以及获取到的第一接口信息,进行匹配,亦可以是根据报文的源接口和目的接口的组
合,在对应网络的接口信息列表中进行匹配,即可确定网络中所需检测的被测节点与检测节点之间接口的连通性。
[0087]
如此,被测节点向检测节点发送携带接口标识信息的报文,使得检测节点可以明确得知发出第一报文的接口,以便在连通性检测中更具有针对性地确定被测节点的待测以太网接口。可以基于接收到的报文中的接口信息,与节点中的全量接口信息进行匹配,准确确定网络中存在的连通性问题。而且,亦可准确获得连通成功或失败的接口信息,以便记录并提供精确全面的问题报告给测试人员进行修复。
[0088]
在一些实施例中,如图2所示,所述方法还包括:
[0089]
s150:接收所述被测节点基于所述第一指示发送的最大传输单元mtu长度值为第一阈值的所述第一报文;
[0090]
s160:接收所述被测节点基于所述第一阈值,依次发送的所述mtu长度值按预设间隔值递增的多个所述第一报文;
[0091]
s170:根据接收到的多个所述第一报文的mtu长度值,确定mtu长度最大值。
[0092]
在本发明实施例中,第一指示还可以携带mtu长度值的取值范围,例如包含一个第一阈值为1400和预设间隔值为100。可选地,第一指示中还可以携带一个第二阈值,其中第二阈值大于第一阈值,例如第二阈值可以为9600。则被测节点接收到第一指示后,首先发送一条mtu长度值为1400的第一报文,然后基于预设间隔值100,依次发送mtu长度值分别为1500、1600、1700

9600的多条第一报文。由于被测节点的接口具有mtu长度最大值,当第一报文的mtu长度值超出该接口所能承受的mtu长度最大值时,被测节点无法继续发送第一报文。同理,由于检测节点的接口具有不同的mtu长度最大值,因此当第一报文的mtu长度值超过检测节点所能承受的mtu长度最大值时,检测节点无法继续接收到第一报文。因而根据最终检测节点接收到的所有第一报文的mtu长度值,可以确定网络中所能进行传输的mtu长度最大值。
[0093]
如此,通过被测节点发送的携带不同mtu长度值的多个第一报文,可以检测由被测节点和检测节点所在的网络中所能用于传输的mtu长度最大值。在利用被测节点发送报文检测可达性的同时,又能同时确定出mtu长度最大值,进而得知网络中的数据传输能力。
[0094]
在一些实施例中,如图3所示,所述s170,包括:
[0095]
s171:若成功接收到多个所述第一报文,读取每个接收到所述第一报文的所述mtu长度值,并确定所述多个所述第一报文中的mtu长度最大值。
[0096]
在本发明实施例中,对于检测节点最终接收成功的所有第一报文,进行mtu长度值的获取,以确定mtu长度最大值。可选地,当检测节点在距离上一次接收到第一报文后的预设时间内没有再接收到第一报文时,确定本检测周期的第一报文发送已结束,则开始读取每条第一报文的mtu长度值。
[0097]
在一个实施例中,检测节点每次接收到一条第一报文,立即读取报文中携带的mtu长度值并记录,当本检测周期结束后,将统计的所有mtu长度值进行比较,确定其中的mtu长度最大值。
[0098]
在另一个实施例中,由于被测节点按递增序列依次发送不同mtu长度值的第一报文,因此,检测节点接收到的第一报文的时间顺序也是按照mtu长度值依次递增顺序的。所以当一个检测周期结束后,最后一条接收到的第一报文的mtu长度值应为本周期内的mtu长
度最大值。因此,若成功接收到多个所述第一报文,读取最后一个接收到的第一报文的mtu长度值,并确定为mtu长度最大值。
[0099]
如此,由于各节点所能传输的mtu长度最大值各不相同,因此在检测节点和被测节点的报文收发过程结束后,通过每个报文的mtu长度值的读取和比对,确定出其中的最大值,也就是本次检测的被测节点与检测节点所在的网络所能传输的mtu长度最大值。进而基于mtu长度最大值即可分析得到网络的数据传输能力。
[0100]
在一些实施例中,如图4所示,所述方法还包括:
[0101]
s100:确定所述被测节点中所述以太网接口的类型;
[0102]
s101:根据所述以太网接口的类型,确定所述以太网接口的物理接口信息,其中,所述物理接口信息,用于由所述第一指示携带发送至所述被测节点,供所述被测节点确定发送所述第一报文的以太网接口所对应的物理接口。
[0103]
在本发明实施例中,针对被测节点中以太网接口的类型进行确定,例如确定eth0接口的类型是有线接口,进而根据所确定的以太网接口类型,确定以太网接口在网络中映射的物理接口信息,例如eth0有线接口对应的物理接口信息是直通网卡物理功能(single root i/o virtualization physical function,sriov pf)接口。确定所有以太网接口的类型之后,记录被测节点中所有以太网接口映射的物理接口信息。第一指示可携带所记录的物理接口信息发送至被测节点,指示被测节点通过物理接口信息对应的物理接口发送第一报文。
[0104]
如此,可以将被测节点的发送接口限制为物理接口,实现对网络中物理接口的可达性测试。根据开放式系统互联通信参考模型(open system interconnection reference model,osi)中的七层定义,2层网络为数据链路层。基于对物理接口的连通性测试,即可实现对边缘计算集群的2层网络的连通性检测。
[0105]
在一些实施例中,所述第一指示,用于指示所述被测节点根据所述物理接口信息发送所述第一报文。被测节点可以根据第一指示的报文内容格式,以及物理接口信息,确定所需发送的报文以及发送报文的接口。
[0106]
如此,被测节点可以只通过所需的物理接口发送第一报文,实现对网络中物理接口的可达性测试,进而可实现对边缘计算集群的2层网络的连通性检测,提高对网络分层架构单独测试的效率。
[0107]
在一些实施例中,所述获取被测节点的以太网接口的第一接口信息,至少包括:获取被测节点的以太网接口的接口名称。
[0108]
接口名称是以太网接口的标识信息,例如eht0,eth1等。基于接口名称对待测以太网接口进行身份识别,可以在网络的完全部署之前,即尚未对接口的ip地址进行配置时,预先实现对网络连通性的准确检测。
[0109]
在一些实施例中,如图5所示,所述s140,包括:
[0110]
s141:若存在与所述第二接口信息匹配的所述第一接口信息,则确定所述检测节点和所述被测节点之间接口连通;
[0111]
s142:若不存在与所述第二接口信息匹配的所述第一接口信息,则确定所述检测节点和所述被测节点之间接口不连通。
[0112]
在本发明实施例中,对于接收到的第一报文中携带的第二接口信息,表征与检测
节点传输成功的被测节点中的待测接口。第一接口信息表征被测节点中以太网接口的全量接口信息,将二者进行匹配。如果在被测节点的全量第一接口信息中存在与第二接口信息匹配的第一接口信息,则表明当前与检测节点成功传输报文的接口,来自于目标被测节点中。
[0113]
在一个实施例中,检测节点读取接收到的第一报文中的源接口与目的接口,其中源接口为被测节点中发出第一报文的接口,即与第二接口信息对应的接口;目的接口为检测节点中接收第一报文的接口。并基于根据每个网络的网络信息列表生成的接口组合列表,在接口组合列表中查找所述第一报文中源接口与目的接口的组合。如果在列表中存在相同的接口组合,则表明源接口与目的接口所处的网络可连通。
[0114]
在另一个实施例中,收集边缘计算集群中所有检测节点接收到的第一报文,并记录报文内容至报文列表,其中至少包括:第一报文的源接口与目的接口,以及所属检测节点和被测节点。在接口组合列表中获取接口组合,在报文列表中进行查找匹配。如果存在相同的接口组合对应的第一报文,则表明源接口与目的接口所处的网络可连通。例如:在报文列表中查找源接口信息,如果没有找到,则记录在问题报告中,问题原因是:未找到服务器,并备注当前连接测试的源接口和目的接口,检测节点和被测节点,然后继续查找匹配;
[0115]
在报文列表中查找被测节点信息,如果没有找到,则记录在问题报告中,问题原因是:未找到源节点,并备注当前连接测试的源接口和目的接口,检测节点和被测节点,然后继续查找匹配;
[0116]
如果并未发现有匹配值,则记录在问题报告中,问题原因是:网卡连接错误或者是交换机vlan未配置正确,并备注当前连接测试的源接口和目的接口,检测节点和被测节点,然后继续查找匹配;
[0117]
如果发现有匹配值,比较前述确定的mtu长度最大值和全局配置文件中记录的期望mtu值。如果mtu长度最大值小于期望mtu值,则记录在问题报告中,问题原因是:网络mtu小于期望mtu值,并备注当前连接测试的源接口和目的接口,检测节点和被测节点,然后继续查找匹配;
[0118]
如图6所示,本发明实施例提供了一种网络检测方法,应用于边缘计算集群内的被测节点中,包括:
[0119]
s210:接收所述检测节点发送的所述第一指示;
[0120]
s220:基于所述第一指示发送所述第一报文,其中,所述第一报文至少携带有所述被测节点发送所述第一报文的以太网接口的第二接口信息;所述第二接口信息,用于供所述检测节点根据与所述第一接口信息的匹配结果,确定所述检测节点和所述被测节点之间接口连通性。
[0121]
在本发明实施例中,被测节点接收到第一指示后,向检测节点发送指定内容的第一报文。其中,第一报文至少携带发送报文的第二接口信息,用以提供给检测节点,由检测节点将第一接口信息与第二接口信息进行匹配,基于匹配结果确定检测节点与被测节点之间的连通性。
[0122]
在一个实施例中,被测节点在第一次接收第一指示,进入检测程序之前,可由测试人员远程使用预启动执行环境(preboot execution environment,pxe)或者远程智能平台管理接口(intelligent platform management interface,ipmi)的方式,启动每个被测节
点上的自生操作系统(livecd)。被测节点的livecd被启动后,开始读取全局配置文件,并监听检测节点的指令。被测节点接收检测节点发送的“停止发包”指令和“监听报文”指令,使自身的发包状态初始化,并准备接收第一指示。
[0123]
在另一个实施例中,被测节点读取检测节点的第一指示中携带的物理接口信息,并确定物理接口信息对应的本节点中的物理接口。进而通过确定的物理接口向检测节点发送第一报文。
[0124]
如此,被测节点通过接收检测节点的指令,进入网络连通性检测阶段,发送指定内容的第一报文,可以使检测节点准确获知第一报文的发送接口信息。进而以供检测节点匹配确定指定接口的连通情况,亦可以生成更加精确全面的问题报告供测试人员调试网络。
[0125]
在一些实施例中,如图7所示,所述s220,包括:
[0126]
s221:基于所述第一指示发送所述mtu长度值为第一阈值的所述第一报文;
[0127]
s222:基于所述第一阈值,依次发送所述mtu长度值按预设间隔值递增的多个所述第一报文。
[0128]
在本发明实施例中,被测节点接收的第一指示携带mtu长度值的取值范围,例如包含一个第一阈值1400和预设间隔值100。则被测节点接收到第一指示后,首先发送一条mtu长度值为1400的第一报文,然后基于预设间隔值100,依次发送mtu长度值分别为1500、1600、1700

的多条第一报文。
[0129]
由于被测节点的接口具有mtu长度最大值,当第一报文的mtu长度值超出该接口所能承受的mtu长度最大值时,被测节点无法继续发送第一报文。同理,由于检测节点的接口具有不同的mtu长度最大值,因此当第一报文的mtu长度值超过检测节点所能承受的mtu长度最大值时,检测节点无法继续接收到第一报文。因而根据最终检测节点接收到的所有第一报文的mtu长度值,可以确定网络中所能进行传输的mtu长度最大值。
[0130]
如此,通过被测节点发送的携带不同mtu长度值的多个第一报文,可以检测由被测节点和检测节点所在的网络中所能用于传输的mtu长度最大值。在利用被测节点发送报文检测可达性的同时,又能同时确定出mtu长度最大值,进而得知网络中的数据传输能力。
[0131]
在一些实施例中,如图8所示,所述方法还包括:
[0132]
s223:当所述第一报文的所述mtu长度值达到第二阈值时,停止发送所述第一报文。
[0133]
在本发明实施例中,第一指示还可以携带第二阈值,其中第二阈值大于第一阈值。例如包含一个第一阈值为1400和预设间隔值为100,以及第二阈值为9600。则被测节点接收到第一指示后,首先发送一条mtu长度值为1400的第一报文,然后基于预设间隔值100,依次发送mtu长度值分别为1500、1600、1700

9600的多条第一报文。由于被测节点的接口具有mtu长度最大值,当第一报文的mtu长度值超出该接口所能承受的mtu长度最大值时,被测节点无法继续发送第一报文。同理,由于检测节点的接口具有不同的mtu长度最大值,因此当第一报文的mtu长度值超过检测节点所能承受的mtu长度最大值时,检测节点无法继续接收到第一报文。因此设置第一报文mtu长度值的第二阈值,可以及时停止无效的报文发送过程。
[0134]
如此,对于需要进行检测数据传输能力的检测节点和被测节点,由于对两个节点所能传输的mtu长度最大值不确定,对于被测节点发送的携带递增序列mtu长度值的第一报
文,应设置第二阈值用以合理限制第一报文的发送过程。对于mtu长度最大值小于第二阈值的被测节点,可以减少生成无法发送的报文的资源浪费,提高网络检测效率。
[0135]
如图9所示,本发明实施例提供了一种网络检测装置,应用于边缘计算集群内的检测节点中,包括:
[0136]
获取模块110,用于获取被测节点的以太网接口的第一接口信息;
[0137]
第一发送模块120,用于向所述被测节点发送第一指示;
[0138]
第一接收模块130,用于接收所述被测节点基于所述第一指示发送的第一报文,其中,所述第一报文至少携带有所述被测节点发送所述第一报文的以太网接口的第二接口信息;
[0139]
确定模块140,用于根据所述第二接口信息及所述第一接口信息的匹配结果,确定所述检测节点和所述被测节点之间接口连通性。
[0140]
在一些实施例中,所述第一接收模块130,还用于:
[0141]
接收所述被测节点基于所述第一指示发送的最大传输单元mtu长度值为第一阈值的所述第一报文;
[0142]
接收所述被测节点基于所述第一阈值,依次发送的所述mtu长度值按预设间隔值递增的多个所述第一报文;
[0143]
所述确定模块140还用于:
[0144]
根据接收到的多个所述第一报文的mtu长度值,确定mtu长度最大值。
[0145]
在一些实施例中,所述确定模块140,具体用于:
[0146]
若成功接收到多个所述第一报文,读取每个接收到所述第一报文的所述mtu长度值,并确定所述多个所述第一报文中的mtu长度最大值。
[0147]
在一些实施例中,所述确定模块140,还用于:
[0148]
确定所述被测节点中所述以太网接口的类型;
[0149]
根据所述以太网接口的类型,确定所述以太网接口的物理接口信息,其中,所述物理接口信息,用于由所述第一指示携带发送至所述被测节点,供所述被测节点确定发送所述第一报文的以太网接口所对应的物理接口。
[0150]
在一些实施例中,所述确定模块140,具体用于:
[0151]
若存在与所述第二接口信息匹配的所述第一接口信息,则确定所述检测节点和所述被测节点之间接口连通;
[0152]
若不存在与所述第二接口信息匹配的所述第一接口信息,则确定所述检测节点和所述被测节点之间接口不连通。
[0153]
如图10所示,本发明实施例提供了一种网络检测装置,应用于边缘计算集群内的被测节点中,包括:
[0154]
第二接收模块210,用于接收所述检测节点发送的所述第一指示;
[0155]
第二发送模块220,用于基于所述第一指示发送所述第一报文,其中,所述第一报文至少携带有所述被测节点发送所述第一报文的以太网接口的第二接口信息;所述第二接口信息,用于供所述检测节点根据与所述第一接口信息的匹配结果,确定所述检测节点和所述被测节点之间接口连通性。
[0156]
在一些实施例中,所述第二发送模块220,具体用于:
[0157]
基于所述第一指示发送所述mtu长度值为第一阈值的所述第一报文;
[0158]
基于所述第一阈值,依次发送所述mtu长度值按预设间隔值递增的多个所述第一报文。
[0159]
在一些实施例中,所述装置还包括:
[0160]
停止模块230,用于当所述第一报文的所述mtu长度值达到第二阈值时,停止发送所述第一报文。
[0161]
以下结合上述任一实施例提供一个具体示例:
[0162]
1.如图11所示,网络检测工具分为服务端和客户端,服务端运行在独立的检测节点上,并且要求检测节点和被测边缘计算集群所有节点的管理网是连通的并且ip地址是配置好的,各被测节点的业务网、存储网、外网是预先在物理上互相连接好的,不要求配置ip和vlan。客户端运行在各个被测节点上。
[0163]
2.准备全局配置文件,需要指明每台服务器的业务网、存储网、外网的vlan id信息、mtu期望值、bond绑定接口和其从属端口关系。
[0164]
3.网络检测人员通过远程使用pxe或者远程ipmi加载虚拟iso方式,在每个服务器上都启动带有网络检测工具自生操作系统(livecd)。
[0165]
4.各被测节点的自生操作系统启动后,网络监测工具客户端会自动启动,读取全局配置文件,并监听服务端的调用命令,包括发送报文、停止发包、监听报文。
[0166]
5.服务端向所有节点的客户端发送"停止发包"指令,保证所有节点当处于初始状态。
[0167]
6.服务端向所有节点的客户端发送"监听报文"指令,保证所有节点当前发包状态处于监听状态。
[0168]
7.定义特定的报文组p,报文组要求如下:
[0169]
a)获取本节点的主机序列号,后续可用于区分报文来源。
[0170]
b)定义初始报文内容,内容可以为json格式,至少包含本主机的主机序列号、网络接口名称、网络vlan id、mtu长度值、发送报文时的时间戳。其中vlan_id从配置文件中获取。
[0171]
c)实际报文内容为:初始报文内容+长度为n的空格。n=期望mtu长度(t1)-初始报文长度-ip头部长度(20字节)-udp头部(8字节)。
[0172]
8.如图12所示,向所有节点的网络检测工具发送"发送报文"指令,报文组p要求重复向指定端口列表l中发送3次,避免由于特殊情况丢包导致结果不正确,每次发送的报文组要求如下:
[0173]
a)遍历主机上所有网络接口,生成接口列表l1。
[0174]
b)判断每个接口,在l1中移除本地环回接口,sriov的vf接口,虚拟网卡接口,vlan接口,只留下物理端口,sriov pf端口和bond绑定端口进行后续检测,生成接口列表l2。
[0175]
c)判断每个接口,如果是bond端口,则找到其所有从属接口(slave),记录从属关系,并加到l2中,生成接口列表l。
[0176]
d)对列表l中的每个接口,以及多种mtu长度的组合,向外发送广播报文p,所有节点的相关接口正常情况下都会收到报文。mtu长度取值范围为1400,1500,1600...9600,每次递增100。报文p的实际内容中需要填入:发送报文的接口名称,本次发送报文的mtu值:
mtu,协商速率双工模式以及发送报文的当前时间戳。
[0177]
9.所有节点的网络检测工具监听到接口传来的报文,并保存报文内容到列表c中。
[0178]
10.检查所有节点网络检测工具的发送状态,并等待所有节点报文发送完毕。
[0179]
11.在网络监测工具服务端处,收集所有节点的报文内容列表c。报文内容包括:源/目的主机节点序列号,源/目的网卡接口名,源网卡接口名,vlan_id,mtu,连接速率,双工模式,时间戳。
[0180]
12.在网络监测工具服务端处,比较报文连接信息,并记录问题报告r,比较方法如下:
[0181]
a)遍历所有节点信息,得到节点序列号。
[0182]
b)遍历所有网络,包括网络类型:业务网、存储网、外网,获得网络的期望vlan_id,期望mtu,bond从属接口,按照字典结构:{网络类型:{节点序列号:{网络信息}}}方式,保存到字典(all_networks)中。
[0183]
c)根据上述信息,分别生成业务网、存储网、外网的网络信息列表,其中包含所有节点序列号、网卡名称。
[0184]
d)根据网络信息列表,生成网卡接口的全连接的组合列表。
[0185]
e)遍历全连接组合列表中的源节点s1,源网卡n1,目的节点d1,目的网卡m1,根据all_network中的信息,取出每个网络的期望vlan_id:v1。
[0186]
f)遍历中,如果发现源节点和目的节点的名称一样,则跳过继续。
[0187]
g)在报文内容列表c中查找源节点(h)信息,如果没有找到,则记录在问题报告r中,问题原因是:未找到服务器h,并备注当前连接测试的源节点,源网卡,目的节点,目的网卡。然后跳过继续。
[0188]
h)在报文内容列表c中查找源网卡(d)信息,如果没有找到,则记录在问题报告r中,问题原因是:未找到源网卡d,并备注当前连接测试的源节点,源网卡,目的节点,目的网卡。然后跳过继续。
[0189]
i)在报文内容列表c中查找源网卡(d)下所连接的所有源网卡名列表(sl),并初始化变量"网卡连通状态"(has_connected_netdev)为"假"(false)。
[0190]
j)遍历所连接的所有源网卡名列表(sl),并获取其中的源节点序列号s2、源网卡n2、实际vlan id:v2、实际测试的mtu值。
[0191]
k)如果源网卡名列表(sl)中发现有网卡匹配:d1=s2,m1=n2,且v1=v2,则保存变量has_connected_netdev为"真"(true),并记录下该网卡匹配下,最大的测试mtu值:t2。
[0192]
l)如果源网卡名列表(sl)全部遍历完后,并未发现有匹配值(即:has_connected_netdev为"假"),则记录在问题报告r中,问题原因是:网卡连接错误或者是交换机vlan未配置正确,并备注当前连接测试的源节点,源网卡,目的节点,目的网卡。然后跳过继续。
[0193]
m)如果源网卡名列表(sl)全部遍历完后,发现有匹配值(即:has_connected_netdev为"真"),比较最大mtu值t2和配置文件中的期望mtu值t1。如果t2小于t1,则记录在问题报告r中,问题原因是:网络mtu小于期望mtu值,并备注当前连接测试的源节点,源网卡,目的节点,目的网卡。然后跳过继续。
[0194]
n)读取全局配置,找到bond绑定网卡以及其从属接口关系,并和报文内容列表c中的协商速率以及双工模式进行比较。如果发现同一个bond网卡下多个从属接口的实际协商
速率或实际双工模式不一致,则在r问题记录中记录为bond网卡从属接口速率或双工不一致问题,然后跳过继续。
[0195]
13.返回问题报告结果r给网络连通性测试人员。
[0196]
本发明实施例还提供一种电子设备,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,处理器运行所述计算机程序时,执行前述一个或多个技术方案所述方法的步骤。
[0197]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,计算机可执行指令被处理器执行后,能够实现前述一个或多个技术方案所述方法。
[0198]
本实施例提供的计算机存储介质可为非瞬间存储介质。
[0199]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它行驶的。
[0200]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0201]
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的行驶实现,也可以采用硬件加软件功能单元的行驶实现。
[0202]
在一些情况下,上述任一两个技术特征不冲突的情况下,可以组合成新的方法技术方案。
[0203]
在一些情况下,上述任一两个技术特征不冲突的情况下,可以组合成新的设备技术方案。
[0204]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0205]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1