CN105991338A - 网络运维管理方法及装置 - Google Patents
网络运维管理方法及装置 Download PDFInfo
- Publication number
- CN105991338A CN105991338A CN201510098412.8A CN201510098412A CN105991338A CN 105991338 A CN105991338 A CN 105991338A CN 201510098412 A CN201510098412 A CN 201510098412A CN 105991338 A CN105991338 A CN 105991338A
- Authority
- CN
- China
- Prior art keywords
- port
- packet
- node
- fields
- sets
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种网络运维管理方法及装置,属于网络技术领域。所述方法包括:接收数据包;检测所述数据包的流特征是否与需要监控的流的流特征匹配;如果匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;根据所述指定类型的标识更新所述数据包经过的入端口和出端口上与所述流标记对应的计数器值;将所述数据包发送给下游相邻节点。本发明通过根据流特征来为数据包插入字段集,节点根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
Description
技术领域
本发明实施例涉及网络技术领域,特别涉及一种网络运维管理方法及装置。
背景技术
在通信网络的运维管理中,数据包计数技术是用于对网络故障进行诊断的一种重要手段。
现有技术中,上游节点将流经的数据包按照时间周期进行划分,将属于同一时间周期内的数据包的预定比特位中设置一个相同的标识,将相邻的两个时间周期内的数据包的预定比特位中设置不同的标识,以便下游节点进行数据包计数。图1示意性地示出了该过程,该网络中包括上游节点1和下游节点2。上游节点1包括CPU1和交换芯片1,交换芯片1提供有端口11、端口12和内部接口13,CPU1通过内部接口13与交换芯片1相连;下游节点2包括CPU2和交换芯片2,交换芯片2提供有端口21、端口22和内部接口23,CPU2通过内部接口23与交换芯片2相连。在上游节点1通过端口11接收到6个数据包后,上游节点1将属于第一个时间周期内的数据包1和数据包2中的预定比特位设为1,得到数据包1α和数据包2α;上游节点1将属于第二个时间周期内的数据包3和数据包4中的预定比特位设为0,得到数据包3β和数据包4β;上游节点1将属于第三个时间周期内的数据包5和数据包6中的预定比特位设为1,得到数据包5α和数据包6α。然后,上游节点1对预定比特位为1的数据包和预定比特位为0的数据包分别进行数据包计数,并通过端口12将6个数据包顺序发送给下游节点2。下游节点2通过端口21接收到6个数据包后,CPU2对预定比特位为1的数据包和预定比特位为0的数据包分别进行数据包计数。最后,外部的控制器统计上游节点1和下游节点2各自的数据包计数,并根据计数差值来判断上游节点1和下游节点2之间的路径上是否存在丢包。
在实现本发明实施例的过程中,发明人发现现有技术至少存在以下问题:
上述方法通过时间周期来为数据包中的预定比特位进行置位,从而实现数 据包计数。但该方法对同一时间周期内的所有数据包设置相同的标识,如果这些数据包分别属于不同的流,则无法针对单个流进行故障定位。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种网络运维管理方法及装置。
第一方面,本发明实施例提供了一种网络运维管理方法,所述方法包括:
接收数据包;
检测所述数据包的流特征是否与需要监控的流的流特征匹配;
如果所述数据包的流特征与所述需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记(英文:flow flag);所述流标记用于标识所述需要监控的流;
根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值;
根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值;
将所述数据包发送给下游相邻节点。
在第一方面的第一种可能的实施方式中,所述在所述数据包的包头中插入字段集,包括:
在所述数据包的以太帧头的虚拟局域网(英文:Virtual Local Area Network;简称:VLAN)字段之后插入所述字段集;
或,
在所述数据包的表示负荷的以太类型之前插入所述字段集。
在第一方面的第二种可能的实施方式中,所述字段集包括新的隧道头或原始隧道头中的新增字段;所述在所述数据包的包头插入字段集,包括:
在所述数据包的外部网际间互联协议(英文:Internet Protocol;简称:IP)报文头之后、内部负荷之前插入所述字段集。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述检测所述数据包的流特征是否与需要监控的流的流特征匹配之前,还包括:
接收监控指令;
根据所述监控指令获取所述需要监控的流的流特征。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式中,在第一方面的第四种可能的实施方式中,所述更新所述数据包的出端口上与所述流标记对应的计数器值,包括:
根据所述数据包的目的地址查询所述数据包的出端口;
检测所述数据包的类型是否为所述指定类型;
如果所述数据包的类型是所述指定类型,则提取所述字段集中的流标记;
更新所述出端口上与所述流标记对应的计数器值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,所述方法还包括:
接收初始化指令;
将各个端口上与所述流标记对应的计数器值置为初始值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式,在第一方面的第六种可能的实施方式中,所述方法还包括:
接收提取指令;
上报各个端口上与所述流标记对应的计数器值。
第二方面,本发明实施例提供了一种网络运维管理方法,所述方法包括:
接收数据包;
检测所述数据包的类型是否为指定类型;
如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记;
根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值;
将所述数据包发送给下游相邻节点。
在第二方面的第一种可能的实施方式中,所述根据所述字段集更新所述数 据包经过的入端口和/或出端口上的与所述流标记对应的计数器值,包括:
从所述数据包的包头提取所述字段集,得到所述字段集中的生存期(英文:Time To Live;简称:TTL);
检测所述TTL是否小于或等于预定阈值;
如果所述TTL小于或等于所述预定阈值,则从所述数据包的包头中删除所述字段集;
更新所述数据包的入端口上与所述流标记对应的计数器值。
在第二方面的第二种可能的实施方式中,所述根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值,包括:
从所述数据包的包头提取所述字段集,得到所述字段集中的TTL;
检测所述TTL是否小于或等于预定阈值;
如果所述TTL大于所述预定阈值,则将所述字段集中的TTL更新为TTL-1;
更新所述数据包的入端口和出端口上与所述流标记对应的计数器值。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,所述从所述数据包的包头提取字段集,包括:
从所述数据包的以太帧头的VLAN字段之后提取所述字段集;
或,
从所述数据包的表示负荷的以太类型之前提取所述字段集。
结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述节点是IP网节点,下游相邻节点是IP网节点;
所述将所述字段集中的TTL更新为TTL-1,包括:
在所述数据包的外部IP报文头之后、内部以太帧头之前插入新的字段集;
将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式,在第二方面的第五种可能的实施方式中,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述从所述数据包的包头提取字段集,包括:
从所述数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
结合第二方面的第五种可能的实施方式,在第二方面的第六种可能的实施方式中,所述节点为IP网节点、下游相邻节点是以太网节点;
所述将所述字段集中的TTL更新为TTL-1,包括:
删除位于所述数据包的外部IP报文头之后、内部以太帧头之前的所述字段集;
判断所述数据包的内部以太帧头中是否存在其他字段集;
如果存在,则将所述其他字段集中的TTL设置为提取到的TTL-1;
如果不存在,则在所述数据包的以太帧头中插入新的字段集,并将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式,在第二方面的第七种可能的实施方式中,所述节点是目的侧边缘节点;或,所述下游相邻节点是所述数据包的目的端设备;
所述将所述数据包发送给下游相邻节点之前,还包括:
从所述数据包的包头中删除所述字段集。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式或第二方面的第七种可能的实施方式,在第二方面的第八种可能的实施方式中,所述方法还包括:
接收初始化指令;
将各个端口上与所述流标记对应的计数器值置为初始值。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式或第二方面的第七种可能的实施方式或第二方面的第八种可能的实施方式,在第二方面的第九种可能的实施方式中,所述方法还包括:
接收提取指令;
上报各个端口上与所述流标记对应的计数器值。
第三方面,本发明实施例提供了一种网络运维管理方法,所述方法包括:
提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值;
向所述监控范围内的指定节点发送监控指令,所述监控指令用于指示所述指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述预定条件是所述数据包的流特征与需要监控的流的流特征匹配,所述指定类型的标识用于触发所述数据包经过的节点更新所述数据包经过的端口上与所述流标记对应的计数器值,所述流标记用于标识所述需要监控的流;
设置定时器;
在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值;
根据每个端口的第一计数器值和第二计数器值计算得到每个端口的第三计数器值;
根据上下游相邻端口的第三计数器值的差值进行节点内和/或节点间丢包测量。
在第三方面的第一种可能的实施方式中,所述根据上下游相邻端口的第三计数器值的差值进行节点内和节点间丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
在第三方面的第二种可能的实施方式中,所述根据相邻上下游相邻端口的第三计数器值的差值进行节点内丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;
如果所述下游相邻端口和所述当前端口属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器 值,则确定所述节点存在丢包。
结合第三方面的第二种可能的实施方式,在第三方面的第三种可能的实施方式中,所述检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点之后,还包括:
如果所述下游相邻端口和所述当前端口不属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
在第三方面的第四种可能的实施方式中,所述根据相邻上下游相邻端口的第三计数器值的差值进行节点间丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;
如果所述下游相邻端口和所述当前端口不属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口所属的节点和所述下游相邻端口所属的节点之间存在丢包。
结合第三方面的第四种可能的实施方式,在第三方面的第五种可能的实施方式中,所述检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点之后,还包括:
如果所述下游相邻端口和所述当前端口属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
结合第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式或第三方面的第四种可能的实施方式,在第三方面的第六种可能的实施方式中,所述方法,还包括:
检测所述下游相邻端口是否为所述路径的出端口;
如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口;
如果所述下游相邻端口是所述路径的出端口,则检测所述监控范围是否还存在其它路径;
如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
结合第三方面或第三方面的第一种可能的实施方式或第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式或第三方面的第三种可能的实施方式或第三方面的第四种可能的实施方式或第三方面的第五种可能的实施方式或第三方面的第六种可能的实施方式,在第三方面的第七种可能的实施方式中,所述向监控范围内的指定节点发送监控指令之前,还包括:
向监控范围内的所有节点发送初始化指令,所述初始化指令用于指示所述节点将各个端口上与所述流标记对应的计数器值置为初始值。
第四方面,本发明实施例提供了一种边缘节点,所述边缘节点包括:
接收模块,用于接收数据包;
特征匹配模块,用于检测所述数据包的流特征是否与需要监控的流的流特征匹配;
字段插入模块,用于如果所述数据包的流特征与所述需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述流标记用于标识所述需要监控的流;
入端口更新模块,用于根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值,
出端口更新模块,用于根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值;
发送模块,用于将所述数据包发送给下游相邻节点。
在第四方面的第一种可能的实施方式中,所述字段插入模块,用于在所述数据包的以太帧头的VLAN字段之后插入所述字段集;或,所述字段插入模块,用于在所述数据包的表示负荷的以太类型之前插入所述字段集。
在第四方面的第二种可能的实施方式中,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述字段插入模块,用于在所述数据包的外部IP报文头之后、内部负荷之前插入所述字段集。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式,在第四方面的第三种可能的实施方式中,所述边缘节点,还包 括:特征获取模块;
所述接收模块,还用于接收监控指令;
所述特征获取模块,还用于根据所述监控指令获取所述需要监控的流的流特征。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式,在第四方面的第四种可能的实施方式中,所述出端口更新模块,用于根据所述数据包的目的地址查询所述数据包的出端口;检测所述数据包的类型是否为所述指定类型;如果所述数据包的类型是所述指定类型,则提取所述字段集中的流标记;更新所述出端口上与所述流标记对应的计数器值。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式或第四方面的第四种可能的实施方式,在第四方面的第五种可能的实施方式中,所述边缘节点还包括:初始化模块;
所述接收模块,还用于接收初始化指令;
所述初始化模块,用于将各个端口上与所述流标记对应的计数器值置为初始值。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式或第四方面的第四种可能的实施方式或第四方面的第五种可能的实施方式,在第四方面的第六种可能的实施方式中,
所述接收模块,还用于接收提取指令;
所述发送模块,还用于上报各个端口上与所述流标记对应的计数器值。
第五方面,本发明实施例提供了一种节点,所述节点包括:
接收模块,用于接收数据包;
类型检测模块,用于检测所述数据包的类型是否为指定类型;
字段提取模块,用于如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记;
计数更新模块,用于根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值;
发送模块,用于将所述数据包发送给下游相邻节点。
在第五方面的第一种可能的实施方式中,所述计数更新模块,用于从所述数据包的包头提取所述字段集,得到所述字段集中的TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL小于或等于所述预定阈值,则从所述数据包的包头中删除所述字段集;更新所述数据包的入端口上与所述流标记对应的计数器值。
在第五方面的第二种可能的实施方式中,所述计数更新模块,用于从所述数据包的包头提取所述字段集,得到所述字段集中的TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL大于所述预定阈值,则将所述字段集中的TTL更新为TTL-1;更新所述数据包的入端口和出端口上与所述流标记对应的计数器值。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种可能的实施方式,在第五方面的第三种可能的实施方式中,所述字段提取模块,用于从所述数据包的以太帧头的VLAN字段之后提取所述字段集;或,所述字段提取模块,用于从所述数据包的表示负荷的以太类型之前提取所述字段集。
结合第五方面的第三种可能的实施方式,在第五方面的第四种可能的实施方式中,所述节点是IP网节点,所述下游相邻节点是IP网节点;
所述计数更新模块,还用于在所述数据包的外部IP报文头之后、内部以太帧头之前插入新的字段集;将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种可能的实施方式,在第五方面的第五种可能的实施方式中,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述字段提取模块,用于从所述数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
结合第五方面的第五种可能的实施方式,在第五方面的第六种可能的实施方式中,所述节点为IP网节点、所述下游相邻节点是以太网节点;
所述计数更新模块,还用于删除位于所述数据包的外部IP报文头之后、内部以太帧头之前的所述字段集;判断所述数据包的内部以太帧头中是否存在其他字段集;如果存在,则将所述其他字段集中的TTL设置为提取到的TTL-1; 如果不存在,则在所述数据包的以太帧头中插入新的字段集,并将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种可能的实施方式或第五方面的第三种可能的实施方式或第五方面的第四种可能的实施方式或第五方面的第五种可能的实施方式或第五方面的第六种可能的实施方式,在第五方面的第七种可能的实施方式中,所述节点是目的侧边缘节点;或,所述下游相邻节点是所述数据包的目的端设备;
所述节点,还包括:
字段删除模块,用于从所述数据包的包头中删除所述字段集。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种可能的实施方式或第五方面的第三种可能的实施方式或第五方面的第四种可能的实施方式或第五方面的第五种可能的实施方式或第五方面的第六种可能的实施方式或第五方面的第七种可能的实施方式,在第五方面的第八种可能的实施方式中,所述节点还包括:初始化模块;
所述接收模块,还用于接收初始化指令;
所述初始化模块,还用于将各个端口上与所述流标记对应的计数器值置为初始值。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种可能的实施方式或第五方面的第三种可能的实施方式或第五方面的第四种可能的实施方式或第五方面的第五种可能的实施方式或第五方面的第六种可能的实施方式或第五方面的第七种可能的实施方式或第五方面的第八种可能的实施方式,在第五方面的第九种可能的实施方式中,
所述接收模块,还用于接收提取指令;
所述发送模块,还用于上报各个端口上与所述流标记对应的计数器值。
第六方面,本发明实施例提供了一种网络管理中心,所述网络管理中心包括:
计数提取模块,用于提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值;
发送模块,用于向所述监控范围内的指定节点发送监控指令,所述监控指 令用于指示所述指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述预定条件是所述数据包的流特征与需要监控的流的流特征匹配,所述指定类型的标识用于触发所述数据包经过的节点更新所述数据包经过的端口上与所述流标记对应的计数器值,所述流标记用于标识所述需要监控的流;
定时模块,用于设置定时器;
所述计数提取模块,还用于在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值;
计算模块,用于根据每个端口的第一计数器值和第二计数器值计算得到每个端口的第三计数器值;
丢包测量模块,用于根据上下游相邻端口的第三计数器值的差值进行节点内和/或节点间丢包测量。
在第六方面的第一种可能的实施方式中,所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
在第六方面的第二种可能的实施方式中,所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当前端口属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述节点存在丢包。
结合第六方面的第二种可能的实施方式,在第六方面的第三种可能的实施方式中,所述丢包测量模块,还用于如果所述下游相邻端口和所述当前端口不属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
在第六方面的第四种可能的实施方式中,所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当 前端口不属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口所属的节点和所述下游相邻端口所属的节点之间存在丢包。
结合第六方面的第四种可能的实施方式,在第六方面的第五种可能的实施方式中,所述丢包测量模块,还用于如果所述下游相邻端口和所述当前端口属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
结合第六方面的第一种可能的实施方式或第六方面的第二种可能的实施方式或第六方面的第四种可能的实施方式,在第六方面的第五种可能的实施方式中,所述网络管理中心,还包括:
出口检测模块,用于检测所述下游相邻端口是否为所述路径的出端口;
所述丢包测量模块,还用于如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口;
路径检测模块,用于如果所述下游相邻端口是所述路径的出端口,则检测所述监控范围是否还存在其它路径;
所述丢包测量模块,还用于如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
结合第六方面或第六方面的第一种可能的实施方式或第六方面的第二种可能的实施方式或第六方面的第三种可能的实施方式或第六方面的第四种可能的实施方式或第六方面的第五种可能的实施方式,在第六方面的第六种可能的实施方式中,所述发送模块,还用于向监控范围内的所有节点发送初始化指令,所述初始化指令用于指示所述节点将各个端口上与所述流标记对应的计数器值置为初始值。
本发明根据流特征来为数据包插入字段集,节点根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术提供的数据包计数方法的流程示意图;
图2A是本发明一个实施例提供的交换网络的架构示意图;
图2B是本发明一个实施例提供的以太交换网络的路径示意图;
图2C是本发明一个实施例提供的以太-IP交换网络的路径示意图;
图3是本发明一个实施例提供的网络运维管理方法的流程示意图;
图4是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图5是本发明再一个实施例提供的网络运维管理方法的流程示意图;
图6A是本发明一个实施例提供的网络运维管理方法的流程示意图;
图6B是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图6C是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图6D是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图7是本发明一个实施例提供的故障处理方法的流程示意图;
图8是本发明一个实施例提供的网络运维管理方法的流程示意图;
图9是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图10是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图11是本发明另一个实施例提供的网络运维管理方法的流程示意图;
图12是本发明一个实施例提供的路径发现方法的流程示意图;
图13A是本发明另一个实施例提供的路径发现方法的流程示意图;
图13B是本发明另一个实施例提供的路径发现方法的流程示意图;
图13C是本发明另一个实施例提供的路径发现方法的流程示意图;
图14是本发明另一个实施例提供的交换网络的架构示意图;
图15是本发明实施例中网络管理中心向节点发送的指令的格式示意图;
图16是本发明一个实施例提供的边缘节点的结构示意图;
图17是本发明另一个实施例提供的边缘节点的结构示意图;
图18是本发明一个实施例提供的节点的结构示意图;
图19是本发明另一个实施例提供的节点的结构示意图;
图20是本发明一个实施例提供的网络管理中心的结构示意图;
图21是本发明另一个实施例提供的网络管理中心的结构示意图;
图22是本发明另一个实施例提供的节点的结构示意图;
图23是本发明另一个实施例提供的网络管理中心的结构示意图;
图24是本发明一个实施例提供的网络运维管理系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
参考图2A,其示出了本发明实施例所涉及的一种交换网络200的架构示意图。该交换网络200包括边缘节点220、中间节点240、控制器260和网络管理中心280。
每个边缘节点220可以与至少一台服务器10相连。
每个边缘节点220都与至少一个中间节点240相连。
各个服务器10之间通过交换网络200中的节点实现互联。也即,每个服务器10可以将报文通过交换网络200中的节点发送给其它服务器。
交换网络200还包括有控制器260,该控制器260与每个服务器10、每个边缘节点220、每个中间节点240分别相连。
交换网络200还包括有网络管理中心280,该网络管理中心280可以为独立于控制器260之外的硬件设备,也可以为控制器260中的一个逻辑模块。在下文中为了简化描述,以网络管理中心280是独立于控制器260之外的硬件设备来举例说明。
当该交换网络200是以太网络时,边缘节点220和中间节点240都是以太网节点,比如交换机。换句话说,当交换网络200是以太网络时,两个服务器10之间的路径上的节点全部为交换机,如图2B所示。
当该交换网络200既包括以太网络,又包括IP网络时,边缘节点220可能是以太网节点,比如交换机;也可能是IP网节点,比如路由器。中间节点220可能是以太网节点,比如交换机;也可能是IP网节点,比如路由器。换句话说,当交换网络200既包括以太网络,又包括IP网络时,两个服务器10之间的路径上的节点既可能是交换机,又可能是路由器,相邻的路由器之间通过隧道相连, 如图2C所示。
需要说明的是,图2A至图2C所示出的交换网络仅为便于本文中各个方法的描述,但对本文中各个方法在实施时的网络环境不做具体限定。也即,既不对网络环境中节点的数量做具体限定,也不对网络环境中的拓扑结构做具体限定。而且,本文中的监控范围可以是整个交换网络,也可以是交换网络中的一部分。当监控范围是交换网络的一部分时,边缘设备的划分可以以监控范围为准。
还需要说明的是,本文中的数据包是指具有一定长度的比特序列。在以太网络中,数据包也可以称之为以太帧;在IP网络中,数据包也可以称之为报文。但为了便于简化描述,本文中均采用数据包作为统一描述。
还需要说明的是,上述服务器10也可以视为边缘节点220的下游相邻节点。
请参考图3,其示出了本发明一个实施例提供的网络运维管理方法的流程示意图。本实施例以该网络运维管理方法应用于图2A所示的边缘节点和中间节点中的一个指定节点来举例说明,该指定节点通常是监控范围中一条路径上的起始侧边缘节点。该网络运维管理方法包括:
步骤301,接收数据包。
指定节点接收上游相邻节点发送的数据包,上游相邻节点通常是服务器,也可能是交换网络中的节点。
步骤302,检测所述数据包的流特征是否与需要监控的流的流特征匹配。
需要监控的流的流特征可以由管理员配置,或者,由网络管理中心下发的监控指令中携带。
流特征可以分为两类:一类是数据包自身携带的信息;另一类是该数据包的目的端设备上的特征信息。
流特征包括如下特征中的至少一项:数据包的源IP地址、数据包的目的IP地址、数据包的源MAC地址、数据包的目的MAC地址、数据包的源端口、数据包的目的端口、数据包的IP协议类型、数据包的以太类型、目的端设备的端口号或端口类型、虚拟局域网标识等等。
步骤303,如果所述数据包的流特征与需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记。
该字段集用于实现对该数据包的随路监控。
该字段集至少包括指定类型的标识和流标记。该指定类型的标识用于表明该数据包的类型为随路监控类型。所述流标记用于标识需要监控的流。随路监控是指所述数据包转发路径上的节点都需要监控所述数据包。
该字段集中还可选包括生存期(英文:Time To Live,简称:TTL)。该TTL用于表示该字段集在该数据包中的生存期。
步骤304,根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值。
该数据包在指定节点上经过一个入端口和一个出端口。指定节点根据所述指定类型的标识更新数据包经过的入端口上与流标记对应的计数器值。
步骤305,根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值。
对应地,指定节点还根据所述指定类型的标识更新数据包的出端口上与流标记对应的计数器值。
步骤306,将所述数据包发送给下游相邻节点。
本实施例提供的网络运维管理方法,根据流特征来为数据包插入字段集,节点根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
请参考图4,其示出了本发明另一个实施例提供的网络运维管理方法的流程示意图。本实施例以该网络运维管理方法应用于图2A所示的边缘节点和中间节点中的一个节点来举例说明,该节点通常是监控范围中一条路径上位于起始侧边缘节点之后的节点。该网络运维管理方法包括:
步骤401,接收数据包。
当前节点接收上游相邻节点发送的数据包。
步骤402,检测所述数据包的类型是否为指定类型。
所述指定类型是随路监控类型。
当前节点检测所述数据包的包头中是否包括所述指定类型的标识;
如果包括,则所述数据包的类型是指定类型;如果不包括,则所述数据包 的类型不是指定类型。
步骤403,如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记。
所述字段集至少包括指定类型的标识和流标记。可选包括:TTL。所述指定类型的标识用于指示该数据包的类型是随路监控类型。所述流标记用于标识需要监控的流。
步骤404,根据所述字段集更新所述数据包经过的入端口和/或出端口上与所述流标记对应的计数器值。
当前节点根据所述字段集仅更新所述数据包经过的入端口上与所述流标记对应的计数器值;或,
当前节点根据所述字段集同时更新所述数据包经过的入端口和出端口上与所述流标记对应的计数器值。
步骤405,将所述数据包发送给下游相邻节点。
下游相邻节点可能是中间节点或目的侧边缘节点,也可能是目的端设备。
本实施例提供的网络运维管理方法,节点根据数据包中插入的字段集来对数据包经过的端口上与流标记对应的计数器值进行计数,该字段集包括有流标记;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
请参考图5,其示出了本发明另一个实施例提供的网络运维管理方法的流程示意图。作为图3实施例更进一步的实施例,该网络运维管理方法包括:
步骤501,接收初始化指令。
指定节点接收网络管理中心的初始化指令,该初始化指令携带有流标记。该初始化指令用于指示节点对各个端口上与所述流标记对应的计数器值置为初始值。
步骤502,将各个端口上与所述流标记对应的计数器值置为初始值。
指定节点为各个端口都设置有与所述流标记对应的计数器。而且,指定节点可以为每个端口设置不止1个计数器,如果有n个需要监控的流,则为每个端口设置n个计数器。
该初始值通常为0。
步骤503,接收监控指令。
指定节点接收网络管理中心发送的监控指令。
监控指令从功能上可以分为:用于进行路径发现的监控指令、用于进行丢包测量的监控指令。
监控指令,至少包括:需要监控的流的流特征。流特征可以分为两类:一类是数据包自身携带的信息;另一类是该数据包的目的端设备上的特征信息。
流特征包括如下特征中的至少一项:数据包的源IP地址、数据包的目的IP地址、数据包的源MAC地址、数据包的目的MAC地址、数据包的源端口、数据包的目的端口、数据包的IP协议类型、数据包的以太类型、目的端设备的端口号或端口类型、虚拟局域网标识等等。
可选地,监控指令还包括:TTL、染色时长或被染色的数据包个数。染色是指对数据包插入所述字段集。
步骤504,根据所述监控指令获取需要监控的流的流特征。
所述指定节点从监控指令中提取需要监控的流的流特征。
步骤505,接收数据包。
指定节点接收上游相邻节点发送的数据包。上游相邻节点通常是服务器。
步骤506,检测所述数据包的流特征是否与需要监控的流的流特征匹配;
如果匹配,则执行步骤507;如果不匹配,则执行步骤512。
步骤507,如果数据包的流特征与需要监控的流的流特征匹配,则在数据包的包头中插入字段集,所述字段集包括指定类型的标识和所述流标记;
该字段集用于实现对该数据包的随路监控。
该字段集包括:指定类型的标识、所述流标记和TTL。该指定类型的标识是该数据包的类型为随路监控类型的标识。流标记用于识别需要监控的流。该TTL用于表示该字段集在该数据包中的生存期。
可选地,流标记可以为颜色标识(英文:Color);或者,为组标识(英文:Group)和颜色标识两者的组合。组标识用于标识管理组,且组标识在整个网络的管理域内唯一;颜色标识用于在整个管理组中标识监控流,且颜色标识在整个管理组中唯一。
步骤508,根据所述指定类型的标识更新所述数据包的入端口上与所述流标记对应的计数器值。
在所述数据包的包头中插入字段集之后,指定节点更新所述数据包的入端口上与所述流标记对应的计数器值。
步骤509,根据所述数据包的目的地址查询所述数据包的出端口。
在以太网络中,指定节点根据所述数据包的目的MAC地址查询数据包的出端口。
在IP网络中,指定节点根据所述数据包的目的IP地址查询数据包的出端口。
步骤510,检测所述数据包的类型是否为指定类型。
如果是,则执行步骤511;如果不是,则执行步骤513。
步骤511,如果是,则提取所述数据包的包头中的字段集中的流标记;
步骤512,更新所述数据包经过的出端口上与所述流标记对应的计数器值;
步骤513,将所述数据包发送给下游相邻节点。
在下游相邻节点是以太网节点时,所述指定节点通过链路将所述数据包发送给所述下游相邻节点。
在下游相邻节点是IP网节点时,所述指定节点通过隧道将所述数据包发送给所述下游相邻节点。
步骤514,接收提取指令。
所述指定节点还接收网络管理中心发送的提取指令。
步骤515,上报各个端口上与所述流标记对应的计数器值。
在接收到所述提取指令后,所述指定节点向网络管理中心上报各个端口上与所述流标记对应的计数器值。
本实施例提供的网络运维管理方法,节点根据流特征来为数据包插入字段集,并根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
另外,由于现有技术中提供的网络运维管理方法中,每个节点仅设置1个计数器,如果路径上存在分叉,则一个上游节点的数据包会分散至多个下游节点;如果路径汇聚,则多个上游节点的数据包会交织至一个下游节点,导致数据包无法计数。而本实施例中为一个节点中的每个端口上都设置有与流标记对应的计数器,即便网络拓扑中存在“节点-多个节点”的拓扑形式,由于节点上与其它节点相连的端口是互相独立的,所以该网络运维管理方法仍然能够正常 计数。
由于指定节点可能是以太网节点,也可能是IP网节点,所以在图5实施例中,该字段集在数据包的包头中的插入位置也可能不同。本文不对该插入位置做具体限定,该插入位置以不影响数据包在网络中的正常传输为确定基准。
当指定节点是以太网节点,比如图2B中的交换机1时,在数据包的以太帧头中插入该字段集。该字段集包括新的以太类型或现有以太类型的扩展字段。
在数据包的包头中包括虚拟局域网VLAN字段时,在数据包的以太帧头的VLAN字段之后插入字段集。
在数据包的包头中不包含VLAN字段时,在数据包的以太帧头的表示负荷的以太类型之前插入字段集。表示负荷的以太类型=0x0800。
比如,在数据包的包头中不包含VLAN字段时,数据包的以太帧头的目的MAC地址(英文:Destination MAC Address)和源MAC地址(英文:Source MAC Address)之后,以太类型(英文:Ethertype)之前,以新增字段的方式插入了字段集。该字段集包括:指定类型的标识:以太类型=0X8980、生存期、组标识和颜色标识。
当指定节点是IP节点,比如图2C中的路由器1时,指定节点在数据包的外部IP报文头之后、内部负荷之前插入字段集。该字段集包括新的隧道头或原始隧道头中的新增字段。
路由器之间的隧道可能是虚拟化可扩展的局域网(英文:Virtual eXtensible Local Area Network;简称:VXLAN)格式的隧道;也可能是通用网络虚拟化封装(英文:Generic Network Virtualization Encapsulation,简称:Geneve);
在隧道是VXLAN格式的隧道时,该数据包的包头包括:外部以太帧头、外部IP报文头、外部用户数据报协议(英文:User Datagram Protocol;简称:UDP)头、VXLAN隧道头、内部以太帧头、内部IP报文头和内部负荷。在外部UDP头之后、内部帧头之前的原始VXLAN隧道头的预留字段中插入了字段集。该字段集包括:指定类型的标识:C、生存期、组标识和颜色标识。
在隧道是Geneve格式的隧道时,该数据包的包头包括:外部以太帧头、外部IP报文头、外部用户数据报协议(英文:User Datagram Protocol;简称:UDP) 头、Geneve隧道头、内部以太帧头、内部IP报文头和载荷。在外部UDP头之后、内部帧头之前的原始Geneve隧道头的可变长度选项中插入了字段集。该字段集包括:指定类型的标识:选项类别、生存期、组标识和颜色标识。
本实施例对路由器之间的隧道的格式不做具体限定,还可能是通用路由封装协议(英文:Generic Routing Encapsulation;简称:GRE)格式的隧道以及IP-in-IP格式的隧道等等。路由器之间的隧道是GRE格式的隧道时,字段集可以插入在GRE隧道头之后、内部以太帧之前;路由器之间的隧道是IP-in-IP格式的隧道时,字段集可以插入在外部IP报文头之后、内部以太帧之前,诸如此类,不再一一赘述。
本实施例提供的网络运维管理方法,根据指定节点的类型不同,在数据包的包头中的不同位置添加字段集,使得该网络运维管理方法即可以用于以太网节点,也可以用于IP网节点。而在现有技术提供的网络运维管理方法中,预定比特位是添加在IP报文头中的比特位,仅适用于IP网节点,不适用于以太网节点。
请参考图6A,其示出了本发明另一个实施例提供的网络运维管理方法的流程示意图。作为图4实施例的更进一步的实施例。该网络运维管理方法包括:
步骤601,接收初始化指令。
当前节点接收网络管理中心的初始化指令,该初始化指令携带有流标记。该初始化指令用于指示节点对各个端口上与所述流标记对应的计数器值置为初始值。
步骤602,将各个端口上与所述流标记对应的计数器值置为初始值。
当前节点为各个端口都设置有与所述流标记对应的计数器。而且,当前节点可以为每个端口设置不止1个计数器,如果有n个需要监控的流,则为每个端口设置n个计数器。
该初始值通常为0。
步骤603,接收数据包。
所述当前节点接收上游相邻节点发送的数据包。
步骤604,根据所述数据包的目的地址查询所述数据包的出端口。
在以太网络中,当前节点根据所述数据包的目的MAC地址查询所述数据包 的出端口。
在IP网络中,当前节点根据所述数据包的目的IP地址查询所述数据包的出端口。
步骤605,检测所述数据包的类型是否为指定类型。
所述指定类型是随路监控类型。
所述当前节点检测所述数据包的包头中是否包括指定类型的标识;
如果包括,则数据包的类型是指定类型;如果不包括,则数据包的类型不是指定类型。
步骤606,如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的所述流标记和TTL;
如果所述数据包的类型是指定类型,则数据包的包头中被插入了字段集。
所述字段集包括指定类型的标识、流标记和TTL。当前节点从所述数据包的包头提取字段集,得到所述字段集中的所述流标记和TTL。
在以太网络中,当前节点从数据包的以太帧头中提取字段集。也即,当前节点从所述数据包的以太帧头的VLAN字段之后提取所述字段集;或,当前节点从所述数据包的以太帧头的表示负荷的以太类型之前提取所述字段集。
在IP网络中,当前节点从数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
步骤607,检测所述TTL是否小于等于预定阈值。
该预定阈值可以是1,也即,当前节点检测TTL是否等于1。
如果TTL等于1,则执行步骤608;如果TTL大于1,则执行步骤610。
步骤608,如果所述TTL等于1,则从所述数据包的包头中删除所述字段集。
当前节点从所述数据包的包头中删除所述字段集,重组为初始的数据包。
步骤609,更新所述数据包经过的入端口上与所述流标记对应的计数器值;
所述在TTL等于1时,当前节点仅更新数据包的入端口上与所述流标记对应的计数器值,然后执行步骤612。
步骤610,如果所述TTL大于1,则将所述字段集中的TTL更新为(TTL-1);
当前节点将所述字段集中的TTL更新为(TTL-1)。
步骤611,更新所述数据包经过的入端口和出端口上与所述流标记对应的计数器值。
在TTL大于1时,所述当前节点同时更新数据包的入端口和出端口上与所述流标记对应的计数器值。
步骤612,将所述数据包发送给下游相邻节点。
所述下游相邻节点可以是节点或目标端设备。
步骤613,接收提取指令。
当前节点还接收网络管理中心发送的提取指令。
步骤614,上报各个端口上与所述流标记对应的计数器值。
在接收到提取指令后,当前节点向网络管理中心上报各个端口上与流标记对应的计数器值。
本实施例提供的网络运维管理方法,节点根据数据包中插入的字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
另外,由于现有技术中提供的网络运维管理方法中,每个节点仅设置1个计数器,如果路径上存在分叉,则一个上游节点的数据包会分散至多个下游节点;如果路径汇聚,则多个上游节点的数据包会交织至一个下游节点,导致数据包无法计数。而本实施例中为一个节点中的每个端口上都设置有与流标记对应的计数器,即便网络拓扑中存在“节点-多个节点”的拓扑形式,由于节点上与其它节点相连的端口是互相独立的,所以该网络运维管理方法仍然能够正常计数。
需要说明的第一点是,由于图6A中的当前节点可能是监控范围的一条路径上的目的侧边缘节点,该目的侧边缘节点可能是交换网络上与目的侧服务器相连的边缘节点;也可能不是交换网络上与目的侧服务器相连的边缘节点,因为监控范围通常小于交换网络,当前节点仅仅是监控范围的一条路径上的目的侧边缘节点。此时,当前节点也需要将所述数据包的包头中的字段集删除,以不影响数据包的正常传输。也即,上述方法在步骤607之后、步骤612之前还包括步骤615,如图6B所示:
步骤615,检测当前节点是否为目的侧边缘节点,或,检测下游相邻节点是数据包的目的端设备。
一方面,可以由网络管理中心以监控指令的形式预先告知当前节点是目的侧边缘节点;另一方面,当前节点可以通过数据包的目的地址和下游相邻节点的地址来检测下游相邻节点是否为数据包的目的端设备。
如果是,则执行步骤608;如果否,则执行步骤610。也即,在当前节点为目的侧边缘节点,或,下游相邻节点是数据包的目的端设备时,从数据包的包头中删除字段集,以保证数据包的正常传输。
需要说明的第二点是,如果上一跳节点是以太网节点、当前节点是IP网节点,下一跳节点是IP网节点,由于数据包要从以太网络穿越到IP网络,字段集的插入位置需要发生改变,则步骤610可替换为步骤610a和步骤610b,如图6C所示:
步骤608a,在数据包的外部IP报文头之后、内部负荷之前插入新的字段集。
插入过程可以参考图5所示出的实施例。
对于位于数据包的以太帧头中已经被插入的字段集,当前节点可以删除,也可以保留。
步骤608b,将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
需要说明的第三点是,如果上一跳节点是IP网节点、当前节点是IP网节点,下一跳节点是以太网节点,由于数据包要从IP网络穿越到以太网络,字段集的插入位置需要发生改变,则步骤610可替换为步骤610c至步骤610g,如图6D所示:
步骤610c,删除位于所述数据包的外部IP报文头之后、内部负荷之前的所述字段集;
步骤610d,判断数据包的以太帧头中是否其他字段集;
步骤610e,如果存在,则将以太帧头中的所述其他字段集中的TTL设置为提取到的TTL-1。
步骤610f,如果不存在,则在数据包的以太帧头中插入新的字段集;
插入过程可以参考图5所示出的实施例。
步骤610g,将插入的字段集中的流标记设置为提取到的流标记,将所述新 的字段集中的TTL设置为提取到的TTL-1。
网络管理中心可以在需要进行网络故障诊断时,指示监控范围内的节点执行上述网络运维管理方法,从而实现路径发现或者丢包测量。
由控制器触发网络管理中心进行网络故障诊断的过程,请参考图7,其示出了本发明一个实施例提供的故障处理方法的流程示意图。本实施例以该故障处理方法应用于图2A所示出的交换网络200来举例说明。该故障处理方法包括:
步骤701,每台服务器上的代理实时监控与其它服务器通信时的网络参数。
该网络参数包括:丢包率、传输控制协议(英文:Transmission Control Protocol,简称:TCP)重传次数、往返时延(英文:round-trip time,简称:RTT)、带宽等。
步骤702,每台服务器根据网络参数和本机规则决策是否投票给异常的服务器。
步骤703,在决策结果为投票给异常的服务器时,服务器向控制器投票异常的服务器和自身。
步骤704,控制器根据每个服务器的投票结果,将得票最多的前N个服务器确定为问题服务器。
步骤705,控制器查找问题服务器中通信存在异常的五元组信息,并根据该五元组信息计算出问题通信路径。
步骤706,控制器计算出问题通信路径上的节点,将节点报警给网络管理中心。
该节点可以是问题通信路径上的起始侧边缘节点和目的节点,也可以是问题通信路径上的全部节点。
步骤707,网络管理中心根据报警的节点确定监控范围,进行网络故障诊断。
网络管理中心根据报警的节点,确定监控范围和诊断方案,对监控范围进行网络故障诊断。网络管理中心中可以预设多种诊断方案。
本实施例提供的故障处理方法,控制器根据服务器的投票结果发现问题通信路径,并将问题通信路径上的节点报警给网络管理中心,从而触发网络管理中心采用上述实施例提供的网络运维管理方法进行网络故障诊断。
网络管理中心在路径已知时,执行下述实施例提供的网络运维管理方法。网络管理中心在路径未知时,需要执行下述实施例提供的路径发现方法。
请参考图8,其示出了本发明一个实施例提供的网络运维管理方法的流程示意图。本实施例以该网络运维管理方法应用于网络管理中心来举例说明。该网络运维管理方法包括:
步骤801,提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值。
网络管理中心向监控范围内的所有节点发送第一提取指令,网络管理中心接收每个节点反馈的各个端口上与所述流标记对应的第一计数器值。
或者,网络管理中心向监控范围内的所有节点发送初始化指令,该初始化指令用于指示每个节点将各个端口上与流标记对应的计数器值置为初始值,且网络管理中心将初始值作为第一计数器值,初始值可以为0。
步骤802,向监控范围内的指定节点发送监控指令,所述监控指令用于指示指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记。
预定条件是数据包的流特征符合需要监控的流的流特征。
指定类型的标识用于触发数据包经过的节点更新数据包经过的端口上与流标记对应的计数器值。
该监控指令包括:需要监控的流的流特征、TTL、染色时长或被染色数据包的个数。其中,染色是指数据包的包头插入所述字段集。
换句话说,该监控指令用于指示指定节点对符合预定条件的所有数据包的包头中插入字段集;或,用于指示指定节点在预定时间段内对符合预定条件的所有数据包的包头中插入字段集;或,用于指示指定节点对符合预定条件的n个数据包的包头中插入字段集,n为正整数。
步骤803,设置定时器。
步骤804,在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值。
网络管理中心向所述监控范围内的所有节点发送第二提取指令,网络管理中心接收每个节点反馈的各个端口上与所述流标记对应的第二计数器值。
步骤805,根据每个端口的所述第一计数器值和所述第二计数器值计算得到每个端口的第三计数器值。
将每个端口的所述第二计数器值减去所述第一计数器值得到每个端口的第三计数器值。
步骤806,根据上下游相邻端口的所述第三计数器值的差值进行节点内和/或节点间丢包测量。
本实施例提供的网络运维管理方法,通过指示指定节点对符合预定条件的数据包的包头中插入字段集,使节点根据字段集进行网络运维管理,并根据计数结果进行丢包测量,达到了可以针对单个流中的数据包进行丢包测量的效果。
本实施例中的网络运维管理方法,还通过每次探测过程只对1个数据包插入字段集,通过定时器来收集各个节点的各个端口上与流标记对应的计数器值,使得该网络运维管理方法对全网时间同步的依赖性较低;而在现有技术中,上游节点和下游节点需要严格的时间同步,否则不同时间周期的数据包会发生计数偏差。
图8所示出的网络运维管理方法可以进行三种形式的丢包测量:
第一,一条路径上任意两个相邻端口之间的丢包测量;
第二,一条路径上每个节点内的丢包测量;
第三,一条路径上任意两个相邻节点间的丢包测量。
对于第一种丢包测量方式,步骤806可替换为步骤806a至步骤806i,如图9所示。
步骤806a,选择所述监控范围内的一条路径上的源端口作为当前端口。
步骤806b,检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值。
步骤806c,如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
步骤806d,如果所述下游相邻端口的第三计数器值等于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间不存在丢包。
步骤806e,检测所述下游相邻端口是否为所述路径的出端口。
步骤806f,如果所述下游相邻端口是所述路径的出端口,则检测所述监控 范围是否还存在其它路径。
步骤806h,如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
再次执行步骤806b。
步骤806g,如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口。
再次执行步骤806b。
步骤806i,结束流程。
对于第二种丢包测量方式,步骤806a和806b之间还增加有步骤807和步骤808,如图10所示。
步骤807,检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点。
如果是,则执行步骤806b。
如果否,则执行步骤808。
步骤808,将所述下游相邻端口确定为新的当前端口。
在所述当前端口和所述下游相邻端口不属于同一节点时,网络管理中心跳过这两个端口的丢包测量,将所述下游相邻端口确定新的当前端口后,再次执行步骤807。也即,检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点。
对于第三种丢包测量方式,步骤806a和806b之间还增加有步骤809和步骤810,如图11所示。
步骤809,检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点。
如果否,则执行步骤806b。
如果是,则执行步骤810。
步骤810,将所述下游相邻端口确定为新的当前端口。
在所述当前端口和所述下游相邻端口属于同一节点时,网络管理中心跳过这两个端口的丢包测量,将所述下游相邻端口确定新的当前端口后,再次执行 步骤809。也即,检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点。
请参考图12,其示出了本发明一个实施例提供的路径发现方法的流程示意图。本实施例以该路径发现方法应用于网络管理中心来举例说明。该路径发现方法包括:
步骤1201,向监控范围内的指定节点发送监控指令,所述监控指令用于指示指定节点对符合预定条件的一个数据包的包头中插入字段集,所述字段集包括指定类型的标识、流标记和生存期TTL。
指定节点通常是路径上的起始侧边缘节点。在路径的起始侧边缘节点已知时,该指定节点为确定的节点;在路径的起始侧边缘节点未知时,该指定节点是所有可能作为起始侧边缘节点的节点。
预定条件是数据包的流特征符合需要监控的流的流特征。指定类型的标识是该数据包的类型为随路监控类型的标识。流标记是需要监控的流的标识。该TTL用于表示该字段集在该数据包中的生存期。
其中,指定类型的标识用于触发数据包经过的节点更新数据包经过的端口上与流标记对应的计数器值。
监控指令,还可以包括染色时长和被染色数据包的个数,染色是指对数据包插入字段集。本实施例中,被染色数据包的个数通常为1。
在路径发现的第一次探测过程中,TTL通常设置为1。
步骤1202,设置定时器。
定时器的值大于数据包的单次传输时长。
步骤1203,在所述定时器到期时,提取所述监控范围内的各个节点的各个端口上与所述流标记对应的计数器值。
步骤1204,根据所述计数器值在所述监控范围内确定所述需要监控的流的路径。
本实施例提供的路径发现方法,通过指示指定节点对符合预定条件的数据包的包头中插入字段集,使节点根据字段集进行网络运维管理,并根据计数结果进行路径发现。解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中进行路径发现的效果。
请参考图13A,在图12所示的基础上,其示出了本发明一个实施例提供的路径发现方法的流程示意图。该路径发现方法中,步骤1201前还包括:
步骤1200,向监控范围内的所有节点发送初始化指令,初始化指令用于指示节点将各个端口上与流标记对应的计数器值置为初始值。
该初始值可以为0。
所述步骤1204具体包括:
步骤1204a,检测最近一次出现的计数器值为非初始值的端口与路径已知上的距离源端最远的端口是否属于同一节点的端口。
通常,一次探测过程会导致两个端口上与流标记对应的计数器值由初始值变为初始值+1。
对于这两个端口,网络管理中心检测最近一次出现的计数器值为非初始值的端口与路径上已知的距离源端最远的端口是否属于同一节点的端口。
由于与源端相连的端口通常是已知状态,初始状态下,路径上已知的距离源端最远的端口就是起始侧边缘节点上与源端相连的端口。
步骤1204b,如果端口与路径上已知的距离源端最远的端口属于同一节点的端口,则确定端口是路径上已知的距离源端最远的端口的下游相邻端口。
步骤1204c,如果端口与路径上已知上的距离源端最远的端口不属于同一节点的端口,则确定端口是路径上已知的距离源端最远的端口的下下游端口。
步骤1204d,将端口插入路径。
步骤1204e,将TTL更新为TTL+1,再次执行向监控范围内的指定节点发送监控指令的步骤。
本实施例提供的路径发现方法,通过指示指定节点对符合预定条件的数据包的包头中插入字段集,使节点根据字段集进行网络运维管理,并根据计数结果进行路径发现。解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中进行路径发现的效果。
本实施例中的路径发现方法,还通过每次探测过程只对1个数据包插入字段集,通过定时器来收集各个节点的各个端口上与流标记对应的计数器值,使得该路径发现方法对全网时间同步的依赖性较低;而在现有技术中,上游节点和下游节点需要严格的时间同步,否则不同时间周期的数据包会发生计数偏差。
另外,由于本实施例中为节点的各个端口都设置有与流标记对应的计数器, 能够实现以端口为单位的路径发现流程,使发现的路径更为准确和细化。
需要说明的是,如果目的侧边缘节点为已知,则上述步骤1204e可替换为步骤1205至步骤1207,如图13B所示。
步骤1205,判断目的侧边缘节点的各个端口上与流标记对应的计数器值是否具有非初始值。
如果不具有非初始值,则进入步骤1206;如果具有非初始值,则进入步骤1207。
步骤1206,如果目的侧边缘节点的各个端口上与流标记对应的计数器值都不具有非初始值,则执行将TTL更新为TTL+1的步骤。
步骤1207,如果目的侧边缘节点的一个端口上与流标记对应的计数器值具有非初始值,则结束本次路径发现诊断。
需要说明的是,如果目的侧边缘节点为未知,则上述步骤1204e至步骤1204g可替换为步骤1208至步骤1210,如图13C所示。
步骤1208,判断TTL是否大于或等于最大阈值。
如果TTL小于最大阈值,则进入步骤1209;如果TTL大于或等于最大阈值,则进入步骤1210。
步骤1209,如果TTL小于最大阈值,则执行将TTL更新为TTL+1的步骤。
步骤1210,如果TTL大于或等于最大阈值,则结束本次路径发现诊断。
下面结合图14所示出的网络拓扑对图13A提供的路径发现方法做更进一步的说明。图14所示出的网络拓扑包括节点1、节点2、节点3、节点4和节点5。
节点1包括端口1、端口2和端口3。其中,端口1分别与端口2和端口3相连,节点1通过端口2与节点2上的端口4相连,节点1通过端口3与节点3上的端口6相连。
节点2包括端口4和端口5。其中,端口4和端口5相连,节点2通过端口5与节点4的端口8相连。
节点3包括端口6和端口7。其中,端口6和端口7相连,节点3通过端口7与节点4上的端口9相连。
节点4包括端口8、端口9和端口10。其中,端口8和端口9分别与端口10相连,节点4通过端口10与节点5上的端口11相连。
节点5包括端口11和端口12,端口11和端口12相连。
在初始状态,网络管理中心对每个节点所包括的端口、起始侧边缘节点为节点1、目的侧边缘节点是节点5为已知状态,但对端口之间的连接关系未知。
首先,网络管理中心向各个节点发送初始化指令,该初始化指令指示各个节点将各个端口上与流标记为100的计数器值置为0。每个端口上可以为不同的流标记设置各自对应的计数器值此时,计数器值示意如下:
在第一次探测过程中,网络管理中心向节点1发送监控指令,该监控指令指示节点1对流标记为100的一个数据包插入字段集,且TTL为1。在定时器到期后,计数器值示意如下:
其中,端口1是与源端设备相连的端口,首先将端口1作为路径上已知的距离源端最远的端口。端口2和端口4是最近一次出现的计数器值非0的端口,由于端口2和端口1属于同一节点,将端口2作为端口1的下游相邻端口;端口4和端口1不属于同一节点,将端口4作为端口1的下下游端口。将这两个端口插入路径,得到路径为:节点1的端口1→节点1的端口2→节点2的端口4。
由于目的侧边缘节点5的端口上的计数器都是0,将TTL+1后,执行第二次探测过程。
在第二次探测过程中,网络管理中心向节点1发送监控指令,该监控指令 指示节点1对流标记为100的一个数据包插入字段集,且TTL为2。在定时器到期后,计数器值示意如下:
此时,端口4是路径上已知的距离源端最远的端口,端口5和端口8是最近一次出现的计数器值非0的端口,由于端口5和端口4属于同一节点,将端口5作为端口4的下游相邻端口;端口8和端口4不属于同一节点,将端口8作为端口4的下下游端口。将这两个端口插入路径,得到路径为:节点1的端口1→节点1的端口2→节点2的端口4→节点2的端口5→节点4的端口8。
由于目的侧边缘节点5的端口上的计数器都是0,将TTL+1后,执行第三次探测过程。
在第三次探测过程中,网络管理中心向节点1发送监控指令,该监控指令指示节点1对流标记为100的一个数据包插入字段集,且TTL为3。在定时器到期后,计数器值示意如下:
此时,端口8是路径上已知的距离源端最远的端口,端口10和端口11是最近一次出现的计数器值非0的端口,由于端口10和端口11属于同一节点,将端口10作为端口8的下游相邻端口;端口11和端口8不属于同一节点,将端口11作为端口8的下下游端口。将这两个端口插入路径,得到路径为:节点1的端口1→节点1的端口2→节点2的端口4→节点2的端口5→节点4的端口8→节点4的端口10→节点5的端口11。
由于目的侧边缘节点5的端口11上的计数器由0变为1,终止本次路径发现过程。
但需要补充说明的是,由于网络拓扑的复杂性和数据包的路径不确定性,在上述探测过程中,可能会出现数据包流经节点3的情形。在第二次探测过程中,网络管理中心向节点1发送监控指令,该监控指令指示节点1对流标记为100的一个数据包插入字段集,且TTL为2。在定时器到期后,计数器值示意如下:
此时,端口4是路径上已知的距离源端最远的端口,与第一次探测相比,端口3、端口6、端口7和端口9是最近一次出现的计数器值非0的端口,网络管理中心检测出最近一次出现的计数器值非0的端口与端口4均不属于同一节点,则网络管理中心重新执行第二次探测过程。
也即,上述路径发现方法还可选包括:在最近一次出现的计数器值非初始值的端口与路径上已知的距离源端最远的端口均不属于同一节点时,保持TTL不变,再次执行向指定节点发送监控指令的步骤。
需要说明的是,由于每个端口上为不同流标记设置有各自对应的计数器值,针对不同监控流的路径发现过程可以并行执行,只需要每个流标记各自唯一即可。
还需要补充说明的是,上述实施例中以路径发现的最开始,网络管理中心向各个节点发送一次初始化指令为例来举例说明。但是作为另外一种可能的实施方式,网络管理中心每次向各个节点发送监控指令之前,都可以发送一次初始化指令,要求每个节点将流标记对应的计数器值置为初始值。在这种实施方式下,每次探测后的计数器值示意如下:
请参考图15,其示出了本发明一个实施例提供的网络管理中心向节点发送的指令的格式示意图。该指令是提取指令、初始化指令或监控指令。该指令包括:
命令类字段(英文:command class)、类型字段(英文:type)、长度字段(英文:length)、命令描述字段(英文:command specification)。其中:
命令类字段,可以置为:设置(英文:set)和提取(英文:get)。
类型字段,可以置为:流描述(英文:flow specification)、初始化(英文:initialize)、组标识(英文:group)、颜色标识(英文:color)、节点标识(英文:node)、端口标识(英文:port)。
其中,提取指令通常包括:命令类字段为提取,组标识和颜色标识。初始化指令通常包括:命令类字段为设置,类型字段包括初始化、组标识和颜色标识。监控指令通常包括:命令类字段为设置,类型字段包括流描述、组标识和颜色标识。
请参考图16,其示出了本发明一个实施例提供的边缘节点的结构示意图,该边缘节点也可称之为网络运维管理装置,该边缘节点通常为监控范围内一条路径上的起始侧边缘节点,所述边缘节点能够执行图3和图5所示的方法。所述边缘节点包括:
接收模块1610,用于接收数据包。
特征匹配模块1620,用于检测所述数据包的流特征是否与需要监控的流的流特征匹配。
字段插入模块1630,用于如果所述数据包的流特征与所述需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述流标记用于标识所述需要监控的流。
入端口更新模块1640,用于根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值。
出端口更新模块1650,用于根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值。
发送模块1660,用于将所述数据包发送给下游相邻节点。
本实施例提供的边缘节点,根据流特征来为数据包插入字段集,节点根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
可选地,所述字段插入模块1630,用于在所述数据包的以太帧头的VLAN字段之后插入所述字段集;或,所述字段插入模块1630,用于在所述数据包的表示负荷的以太类型之前插入所述字段集。
可选地,所述字段集包括新的隧道头或原始隧道头中的新增字段。
所述字段插入模块1630,用于在所述数据包的外部IP报文头之后、内部负荷之前插入所述字段集。
可选地,在图16所示的基于上,如图17所示,在另一个实施例中,所述边缘节点还可以进一步包括:特征获取模块1670。
所述接收模块1610,还用于接收监控指令。
所述特征获取模块1670,用于根据所述监控指令获取所述需要监控的流的流特征。
可选地,所述出端口更新模块1650,用于根据所述数据包的目的地址查询所述数据包的出端口;检测所述数据包的类型是否为所述指定类型;如果所述数据包的类型是所述指定类型,则提取所述字段集中的流标记;更新所述出端口上与所述流标记对应的计数器值。
可选地,所述边缘节点还包括:初始化模块1680。
所述接收模块1610,还用于接收初始化指令。
所述初始化模块1680,用于将各个端口上与所述流标记对应的计数器值置为初始值。
可选地,所述接收模块1610,还用于接收提取指令;所述发送模块1660,还用于上报各个端口上与所述流标记对应的计数器值。
本实施例提供的边缘节点,根据流特征来为数据包插入字段集,并根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
另外,由于现有技术中提供的方法中,每个节点仅设置1个计数器,如果路径上存在分叉,则一个上游节点的数据包会分散至多个下游节点;如果路径汇聚,则多个上游节点的数据包会交织至一个下游节点,导致数据包无法计数。而本实施例中为边缘节点中的每个端口上都设置有与流标记对应的计数器,即便网络拓扑中存在“节点-多个节点”的拓扑形式,由于节点上与其它节点相连的端口是互相独立的,所以该边缘节点仍然能够正常计数。
请参考图18,其示出了本发明一个实施例提供的节点的结构示意图。该节点也可称之为网络运维管理装置,该节点通常是监控范围内一条路径上位于起始侧边缘节点之后的中间节点或者边缘节点。所述节点可以执行如图4或图6A所示出的方法,所述节点包括:
接收模块1810,用于接收数据包。
类型检测模块1820,用于检测所述数据包的类型是否为指定类型。
字段提取模块1830,用于如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记。
计数更新模块1840,用于根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值。
发送模块1850,用于将所述数据包发送给下游相邻节点。
本实施例提供的节点,根据数据包中插入的字段集来对数据包经过的端口上与流标记对应的计数器值进行计数,该字段集包括有流标记;解决了现有技术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
可选地,所述计数更新模块1840,用于从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL小于或等于所述预定阈值,则从所述数据包的包头中删除所述字段集;更新所述数据包的入端口上与所述流标记对应的计数器值。
可选地,所述计数更新模块1840,用于从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL大于所述预定阈值,则将所述字段集中的TTL更新为TTL-1;更新所述数据包的入端口和出端口上与所述流标记对应的计数器值。
可选地,所述字段提取模块1830,用于从所述数据包的以太帧头的VLAN字段之后提取所述字段集;或,所述字段提取模块1830,用于从所述数据包的表示负荷的以太类型之前提取所述字段集。
可选地,所述节点是IP网节点,下游相邻节点是IP网节点。
所述计数更新模块1840,还用于在所述数据包的外部IP报文头之后、内部以太帧头之前插入新的字段集;将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
可选地,所述字段集包括新的隧道头或原始隧道头中的新增字段。
所述字段提取模块1830,用于从所述数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
可选地,所述节点为IP网节点、下游相邻节点是以太网节点。
所述计数更新模块1840,还用于删除位于所述数据包的外部IP报文头之后、内部以太帧头之前的所述字段集;判断所述数据包的内部以太帧头中是否存在其他字段集;如果存在,则将所述其他字段集中的TTL设置为提取到的TTL-1;如果不存在,则在所述数据包的以太帧头中插入新的字段集,并将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
可选地,所述节点是目的侧边缘节点;或,所述下游相邻节点是所述数据包的目的端设备。
可选地,在图18所示的基于上,如图19所示,在另一个实施例中,所述边缘节点还可以进一步包括:
字段删除模块1860,用于从所述数据包的包头中删除所述字段集。
可选地,所述节点还包括:初始化模块1870。
所述接收模块1810,还用于接收初始化指令。
所述初始化模块1870,还用于将各个端口上与所述流标记对应的计数器值置为初始值。
可选地,所述接收模块1810,还用于接收提取指令.
所述发送模块1850,还用于上报各个端口上与所述流标记对应的计数器值。
本实施例提供的节点,根据流特征来为数据包插入字段集,并根据该字段集来对数据包经过的端口上与流标记对应的计数器值进行计数;解决了现有技 术中无法对单个流进行故障定位的问题;达到了可以针对单个流中的数据包进行监控的效果。
另外,由于现有技术中提供的方法中,每个节点仅设置1个计数器,如果路径上存在分叉,则一个上游节点的数据包会分散至多个下游节点;如果路径汇聚,则多个上游节点的数据包会交织至一个下游节点,导致数据包无法计数。而本实施例中为一个节点中的每个端口上都设置有与流标记对应的计数器,即便网络拓扑中存在“节点-多个节点”的拓扑形式,由于节点上与其它节点相连的端口是互相独立的,所以该节点仍然能够正常计数。
请参考图20,其示出了本发明一个实施例提供的网络管理中心的结构示意图。该网络管理中心也可以称为网络运维管理装置,该网络管理中心包括:
计数提取模块2010,用于提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值。
发送模块2020,用于向所述监控范围内的指定节点发送监控指令,所述监控指令用于指示所述指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述预定条件是所述数据包的流特征与需要监控的流的流特征匹配,所述指定类型的标识用于触发所述数据包经过的节点更新所述数据包经过的端口上与所述流标记对应的计数器值,所述流标记用于标识所述需要监控的流。
定时模块2030,用于设置定时器。
所述计数提取模块2010,还用于在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值。
计算模块2040,用于根据每个端口的第一计数器值和第二计数器值计算得到每个端口的第三计数器值。
丢包测量模块2050,用于根据上下游相邻端口的第三计数器值的差值进行节点内和/或节点间丢包测量。
本实施例提供的网络管理中心,通过指示指定节点对符合预定条件的数据包的包头中插入字段集,使节点根据字段集进行网络运维管理,并根据计数结果进行丢包测量,达到了可以针对单个流中的数据包进行丢包测量的效果。
可选地,所述丢包测量模块2050,用于选择所述监控范围内的一条路径上 的源端口作为当前端口;检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
可选地,所述丢包测量模块2050,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当前端口属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述节点存在丢包。
可选地,所述丢包测量模块2050,还用于如果所述下游相邻端口和所述当前端口不属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
可选地,所述丢包测量模块2050,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当前端口不属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口所属的节点和所述下游相邻端口所属的节点之间存在丢包。
可选地,所述丢包测量模块2050,还用于如果所述下游相邻端口和所述当前端口属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
可选地,在图20的基础上,如图21所示,在另一个实施例中,所述网络管理中心还包括:
出口检测模块2062,用于检测所述下游相邻端口是否为所述路径的出端口;
所述丢包测量模块2050,还用于如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口;
路径检测模块2064,用于如果所述下游相邻端口是所述路径的出端口,则检测所述监控范围是否还存在其它路径;
所述丢包测量模块2050,还用于如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
可选地,所述发送模块2020,还用于向监控范围内的所有节点发送初始化指令,所述初始化指令用于指示所述节点将各个端口上与所述流标记对应的计数器值置为初始值。
本实施例提供的网络管理中心,通过指示指定节点对符合预定条件的数据包的包头中插入字段集,使节点根据字段集进行网络运维管理,并根据计数结果进行丢包测量,达到了可以针对单个流中的数据包进行丢包测量的效果。
本实施例中的网络管理中心,还通过每次探测过程只对1个数据包插入字段集,通过定时器来收集各个节点的各个端口上与流标记对应的计数器值,使得该网络运维管理方法对全网时间同步的依赖性较低;而在现有技术中,上游节点和下游节点需要严格的时间同步,否则不同时间周期的数据包会发生计数偏差。
请参考图22,其示出了本发明另一个实施例提供的节点的结构示意图。该节点包括处理器2210、存储器2220和转发芯片2230。
所述处理器2210和所述存储器2220相连,所述处理器2210和所述转发芯片2230相连。
所述转发芯片2230提供至少多个端口32,所述多个端口32包括与上游相邻节点相连的端口、与下游相邻节点相连的端口和与网络管理中心相连的端口。
所述转发芯片2230上还设置有至少1个计数器34。
存储器2220存储有一个或一个以上的指令,所述处理器2210调用所述指令以实现本发明所述网络运维管理方法。具体来讲:
当所述节点是监控范围中一条路径上的起始侧边缘节点时,所述处理器2210调用一个指令以实现图3或图5所示的方法。
当所述节点是位于监控范围中一条路径上的中间节点或目的侧边缘节点时,所述处理器2210调用另一个指令以实现图4和图6A至6D任意一个所示的方法。
请参考图23,其示出了本发明另一个实施例提供的网络管理中心的结构示意图。该网络管理中心包括:处理器2310、分别与处理器2310相连的存储器2320和收发器2330。所述存储器2320存储有1个或1个以上的指令,所述处理器2310调用所述指令以实现图8至图13任意一个所示的方法。
请参考图24,其示出了一种网络运维管理系统的结构示意图,所述系统包括:至少两个节点2420和与各个节点2420相连的网络管理中心2440。
至少一个所述节点2420是图16所示实施例或图17所示实施例或图22所示实施例所述的节点。
至少一个所述节点2420是如图18所示实施例或图19所示实施例或图23所示实施例所述的节点。
所述网络管理中心2440是如图20所示实施例或图21所示实施例或图23所示实施例所述的网络管理中心。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (50)
1.一种网络运维管理方法,其特征在于,所述方法包括:
接收数据包;
检测所述数据包的流特征是否与需要监控的流的流特征匹配;
如果所述数据包的流特征与所述需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述流标记用于标识所述需要监控的流;
根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值;
根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值;
将所述数据包发送给下游相邻节点。
2.根据权利要求1所述的方法,其特征在于,所述在所述数据包的包头中插入字段集,包括:
在所述数据包的以太帧头的虚拟局域网VLAN字段之后插入所述字段集;
或,
在所述数据包的表示负荷的以太类型之前插入所述字段集。
3.根据权利要求1所述的方法,其特征在于,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述在所述数据包的包头插入字段集,包括:
在所述数据包的外部网际互联协议IP报文头之后、内部负荷之前插入所述字段集。
4.根据权利要求1至3任一所述的方法,其特征在于,所述检测所述数据包的流特征是否与需要监控的流的流特征匹配之前,还包括:
接收监控指令;
根据所述监控指令获取所述需要监控的流的流特征。
5.根据权利要求1至4任一所述的方法,其特征在于,所述更新所述数据包的出端口上与所述流标记对应的计数器值,包括:
根据所述数据包的目的地址查询所述数据包的出端口;
检测所述数据包的类型是否为所述指定类型;
如果所述数据包的类型是所述指定类型,则提取所述字段集中的流标记;
更新所述出端口上与所述流标记对应的计数器值。
6.根据权利要求1至5任一所述的方法,其特征在于,所述方法还包括:
接收初始化指令;
将各个端口上与所述流标记对应的计数器值置为初始值。
7.根据权利要求1至6任一所述的方法,其特征在于,所述方法还包括:
接收提取指令;
上报各个端口上与所述流标记对应的计数器值。
8.一种网络运维管理方法,其特征在于,所述方法包括:
接收数据包;
检测所述数据包的类型是否为指定类型;
如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记;
根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值;
将所述数据包发送给下游相邻节点。
9.根据权利要求8所述的方法,其特征在于,所述根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值,包括:
从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;
检测所述TTL是否小于或等于预定阈值;
如果所述TTL小于或等于所述预定阈值,则从所述数据包的包头中删除所述字段集;
更新所述数据包的入端口上与所述流标记对应的计数器值。
10.根据权利要求8所述的方法,其特征在于,所述根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值,包括:
从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;
检测所述TTL是否小于或等于预定阈值;
如果所述TTL大于所述预定阈值,则将所述字段集中的TTL更新为TTL-1;
更新所述数据包的入端口和出端口上与所述流标记对应的计数器值。
11.根据权利要求8至10任意一项所述的方法,其特征在于,所述从所述数据包的包头提取字段集,包括:
从所述数据包的以太帧头的VLAN字段之后提取所述字段集;
或,
从所述数据包的表示负荷的以太类型之前提取所述字段集。
12.根据权利要求11所述的方法,其特征在于,当前节点是IP网节点,所述下游相邻节点是IP网节点;
所述将所述字段集中的TTL更新为TTL-1,包括:
在所述数据包的外部IP报文头之后、内部以太帧头之前插入新的字段集;
将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
13.根据权利要求8至10任一所述的方法,其特征在于,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述从所述数据包的包头提取字段集,包括:
从所述数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
14.根据权利要求13所述的方法,其特征在于,当前节点为IP网节点、所述下游相邻节点为以太网节点;
所述将所述字段集中的TTL更新为TTL-1,包括:
删除位于所述数据包的外部IP报文头之后、内部以太帧头之前的所述字段集;
判断所述数据包的内部以太帧头中是否存在其他字段集;
如果存在,则将所述其他字段集中的TTL设置为提取到的TTL-1;
如果不存在,则在所述数据包的以太帧头中插入新的字段集,并将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
15.根据权利要求8至14任一所述的方法,其特征在于,所述当前节点是目的侧边缘节点;或,所述下游相邻节点是所述数据包的目的端设备;
所述将所述数据包发送给下游相邻节点之前,还包括:
从所述数据包的包头中删除所述字段集。
16.根据权利要求8至15任一所述的方法,其特征在于,所述方法还包括:
接收初始化指令;
将各个端口上与所述流标记对应的计数器值置为初始值。
17.根据权利要求8至16任一所述的方法,其特征在于,所述方法还包括:
接收提取指令;
上报各个端口上与所述流标记对应的计数器值。
18.一种网络运维管理方法,其特征在于,所述方法包括:
提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值;
向所述监控范围内的指定节点发送监控指令,所述监控指令用于指示所述指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述预定条件是所述数据包的流特征与需要监控的流的流特征匹配,所述指定类型的标识用于触发所述数据包经过的节点更新所述数据包经过的端口上与所述流标记对应的计数器值,所述流标记用于标识所述需要监控的流;
设置定时器;
在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值;
根据每个端口的第一计数器值和第二计数器值计算得到每个端口的第三计数器值;
根据上下游相邻端口的第三计数器值的差值进行节点内和/或节点间丢包测量。
19.根据权利要求18所述的方法,其特征在于,所述根据上下游相邻端口的第三计数器值的差值进行节点内和节点间丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
20.根据权利要求18所述的方法,其特征在于,所述根据相邻上下游相邻端口的第三计数器值的差值进行节点内丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;
如果所述下游相邻端口和所述当前端口属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述节点存在丢包。
21.根据权利要求20所述的方法,其特征在于,所述检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点之后,还包括:
如果所述下游相邻端口和所述当前端口不属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
22.根据权利要求18所述的方法,其特征在于,所述根据相邻上下游相邻端口的第三计数器值的差值进行节点间丢包测量,包括:
选择所述监控范围内的一条路径上的源端口作为当前端口;
检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;
如果所述下游相邻端口和所述当前端口不属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;
如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口所属的节点和所述下游相邻端口所属的节点之间存在丢包。
23.根据权利要求22所述的方法,其特征在于,所述检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点之后,还包括:
如果所述下游相邻端口和所述当前端口属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
24.根据权利要求19或20或22所述的方法,其特征在于,所述方法,还包括:
检测所述下游相邻端口是否为所述路径的出端口;
如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口;
如果所述下游相邻端口是所述路径的出端口,则检测所述监控范围是否还存在其它路径;
如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
25.根据权利要求18至24任一所述的方法,其特征在于,所述向监控范围内的指定节点发送监控指令之前,还包括:
向监控范围内的所有节点发送初始化指令,所述初始化指令用于指示所述节点将各个端口上与所述流标记对应的计数器值置为初始值。
26.一种边缘节点,其特征在于,所述边缘节点包括:
接收模块,用于接收数据包;
特征匹配模块,用于检测所述数据包的流特征是否与需要监控的流的流特征匹配;
字段插入模块,用于如果所述数据包的流特征与所述需要监控的流的流特征匹配,则在所述数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述流标记用于标识所述需要监控的流;
入端口更新模块,用于根据所述指定类型的标识更新所述数据包经过的入端口上与所述流标记对应的计数器值,
出端口更新模块,用于根据所述指定类型的标识更新所述数据包经过的出端口上与所述流标记对应的计数器值;
发送模块,用于将所述数据包发送给下游相邻节点。
27.根据权利要求26所述的边缘节点,其特征在于,
所述字段插入模块,用于在所述数据包的以太帧头的VLAN字段之后插入所述字段集;
或,
所述字段插入模块,用于在所述数据包的表示负荷的以太类型之前插入所述字段集。
28.根据权利要求26所述的边缘节点,其特征在于,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述字段插入模块,用于在所述数据包的外部IP报文头之后、内部负荷之前插入所述字段集。
29.根据权利要求26至28任一所述的边缘节点,其特征在于,所述边缘节点,还包括:特征获取模块;
所述接收模块,还用于接收监控指令;
所述特征获取模块,还用于根据所述监控指令获取所述需要监控的流的流特征。
30.根据权利要求26至29任一所述的边缘节点,其特征在于,
所述出端口更新模块,用于根据所述数据包的目的地址查询所述数据包的出端口;检测所述数据包的类型是否为所述指定类型;如果所述数据包的类型是所述指定类型,则提取所述字段集中的流标记;更新所述出端口上与所述流标记对应的计数器值。
31.根据权利要求26至30任一所述的边缘节点,其特征在于,所述边缘节点还包括:初始化模块;
所述接收模块,还用于接收初始化指令;
所述初始化模块,用于将各个端口上与所述流标记对应的计数器值置为初始值。
32.根据权利要求26至31任一所述的边缘节点,其特征在于,
所述接收模块,还用于接收提取指令;
所述发送模块,还用于上报各个端口上与所述流标记对应的计数器值。
33.一种节点,其特征在于,所述节点包括:
接收模块,用于接收数据包;
类型检测模块,用于检测所述数据包的类型是否为指定类型;
字段提取模块,用于如果所述数据包的类型是所述指定类型,则从所述数据包的包头提取字段集,得到所述字段集中的流标记;
计数更新模块,用于根据所述字段集更新所述数据包经过的入端口和/或出端口上的与所述流标记对应的计数器值;
发送模块,用于将所述数据包发送给下游相邻节点。
34.根据权利要求33所述的节点,其特征在于,
所述计数更新模块,用于从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL小于或等于所述预定阈值,则从所述数据包的包头中删除所述字段集;更新所述数据包的入端口上与所述流标记对应的计数器值。
35.根据权利要求33所述的节点,其特征在于,
所述计数更新模块,用于从所述数据包的包头提取所述字段集,得到所述字段集中的生存期TTL;检测所述TTL是否小于或等于预定阈值;如果所述TTL大于所述预定阈值,则将所述字段集中的TTL更新为TTL-1;更新所述数据包的入端口和出端口上与所述流标记对应的计数器值。
36.根据权利要求33至35任意一项所述的节点,其特征在于,
所述字段提取模块,用于从所述数据包的以太帧头的VLAN字段之后提取所述字段集;
或,
所述字段提取模块,用于从所述数据包的表示负荷的以太类型之前提取所述字段集。
37.根据权利要求36所述的节点,其特征在于,所述节点是IP网节点,所述下游相邻节点是IP网节点;
所述计数更新模块,还用于在所述数据包的外部IP报文头之后、内部以太帧头之前插入新的字段集;将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
38.根据权利要求33至35任一所述的节点,其特征在于,所述字段集包括新的隧道头或原始隧道头中的新增字段;
所述字段提取模块,用于从所述数据包的外部IP报文头之后、内部负荷之前提取所述字段集。
39.根据权利要求38所述的节点,其特征在于,所述节点为IP网节点、所述下游相邻节点是以太网节点;
所述计数更新模块,还用于删除位于所述数据包的外部IP报文头之后、内部以太帧头之前的所述字段集;判断所述数据包的内部以太帧头中是否存在其他字段集;如果存在,则将所述其他字段集中的TTL设置为提取到的TTL-1;如果不存在,则在所述数据包的以太帧头中插入新的字段集,并将所述新的字段集中的流标记设置为提取到的所述流标记,将所述新的字段集中的TTL设置为提取到的TTL-1。
40.根据权利要求33至39任一所述的节点,其特征在于,所述节点是目的侧边缘节点;或,所述下游相邻节点是所述数据包的目的端设备;
所述节点,还包括:
字段删除模块,用于从所述数据包的包头中删除所述字段集。
41.根据权利要求33至40任一所述的节点,其特征在于,所述节点还包括:初始化模块;
所述接收模块,还用于接收初始化指令;
所述初始化模块,还用于将各个端口上与所述流标记对应的计数器值置为初始值。
42.根据权利要求33至41任一所述的节点,其特征在于,
所述接收模块,还用于接收提取指令;
所述发送模块,还用于上报各个端口上与所述流标记对应的计数器值。
43.一种网络管理中心,其特征在于,所述网络管理中心包括:
计数提取模块,用于提取监控范围内的所有节点的各个端口上与流标记对应的第一计数器值;
发送模块,用于向所述监控范围内的指定节点发送监控指令,所述监控指令用于指示所述指定节点对符合预定条件的数据包的包头中插入字段集,所述字段集包括指定类型的标识和流标记;所述预定条件是所述数据包的流特征与需要监控的流的流特征匹配,所述指定类型的标识用于触发所述数据包经过的节点更新所述数据包经过的端口上与所述流标记对应的计数器值,所述流标记用于标识所述需要监控的流;
定时模块,用于设置定时器;
所述计数提取模块,还用于在所述定时器到期时,提取所述监控范围内的所有节点的各个端口上与所述流标记对应的第二计数器值;
计算模块,用于根据每个端口的第一计数器值和第二计数器值计算得到每个端口的第三计数器值;
丢包测量模块,用于根据上下游相邻端口的第三计数器值的差值进行节点内和/或节点间丢包测量。
44.根据权利要求43所述的网络管理中心,其特征在于,
所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口和所述下游相邻端口之间存在丢包。
45.根据权利要求43所述的网络管理中心,其特征在于,
所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当前端口属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述节点存在丢包。
46.根据权利要求45所述的网络管理中心,其特征在于,
所述丢包测量模块,还用于如果所述下游相邻端口和所述当前端口不属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
47.根据权利要求43所述的网络管理中心,其特征在于,
所述丢包测量模块,用于选择所述监控范围内的一条路径上的源端口作为当前端口;检测所述当前端口的下游相邻端口是否与所述当前端口属于同一节点;如果所述下游相邻端口和所述当前端口不属于同一节点,则检测所述下游相邻端口的第三计数器值是否小于所述当前端口的第三计数器值;如果所述下游相邻端口的第三计数器值小于所述当前端口的第三计数器值,则确定所述当前端口所属的节点和所述下游相邻端口所属的节点之间存在丢包。
48.根据权利要求47所述的网络管理中心,其特征在于,
所述丢包测量模块,还用于如果所述下游相邻端口和所述当前端口属于同一节点,则将所述下游相邻端口确定为新的当前端口,执行检测所述新的当前端口的下游相邻端口是否与所述新的当前端口属于同一节点的步骤。
49.根据权利要求44或45或47所述的网络管理中心,其特征在于,所述网络管理中心,还包括:
出口检测模块,用于检测所述下游相邻端口是否为所述路径的出端口;
所述丢包测量模块,还用于如果所述下游相邻端口不是所述路径的出端口,则将所述下游相邻端口确定为新的当前端口;
路径检测模块,用于如果所述下游相邻端口是所述路径的出端口,则检测所述监控范围是否还存在其它路径;
所述丢包测量模块,还用于如果所述监控范围还存在其它路径,则选择所述其它路径上的源端口作为新的当前端口。
50.根据权利要求43至49任一所述的网络管理中心,其特征在于,
所述发送模块,还用于向监控范围内的所有节点发送初始化指令,所述初始化指令用于指示所述节点将各个端口上与所述流标记对应的计数器值置为初始值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510098412.8A CN105991338B (zh) | 2015-03-05 | 2015-03-05 | 网络运维管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510098412.8A CN105991338B (zh) | 2015-03-05 | 2015-03-05 | 网络运维管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105991338A true CN105991338A (zh) | 2016-10-05 |
CN105991338B CN105991338B (zh) | 2019-11-12 |
Family
ID=57038768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510098412.8A Active CN105991338B (zh) | 2015-03-05 | 2015-03-05 | 网络运维管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105991338B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108512735A (zh) * | 2017-02-25 | 2018-09-07 | 华为技术有限公司 | 一种数据传输方法和装置 |
CN109525451A (zh) * | 2018-09-13 | 2019-03-26 | 中兴通讯股份有限公司 | 一种mpls网络检测的实现方法、装置、网络设备和控制器 |
CN110113230A (zh) * | 2019-04-30 | 2019-08-09 | 新华三技术有限公司 | 一种报文统计方法及网络设备 |
CN110209716A (zh) * | 2018-02-11 | 2019-09-06 | 北京华航能信科技有限公司 | 智能物联网水务大数据处理方法和系统 |
CN110233770A (zh) * | 2018-03-06 | 2019-09-13 | 华为技术有限公司 | 网络流量标记及测量方法、节点 |
CN111837361A (zh) * | 2018-03-13 | 2020-10-27 | 华为技术有限公司 | 使用带外消息采集网络oam流数据 |
CN112165409A (zh) * | 2020-09-16 | 2021-01-01 | 烽火通信科技股份有限公司 | 端口管理方法、系统、设备及可读存储介质 |
CN112262554A (zh) * | 2018-06-06 | 2021-01-22 | 华为技术有限公司 | 包可编程流遥测剖析和分析 |
KR20210013207A (ko) * | 2018-06-06 | 2021-02-03 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 데이터 메시지 검출 방법, 디바이스 및 시스템 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767456A (zh) * | 2004-10-27 | 2006-05-03 | 华为技术有限公司 | 一种调度数据的方法及装置 |
CN101569137A (zh) * | 2006-12-29 | 2009-10-28 | 朗讯科技公司 | 使用IPv6能力的有效性能监控 |
WO2009129841A1 (en) * | 2008-04-21 | 2009-10-29 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for network fault management |
CN102055627A (zh) * | 2011-01-04 | 2011-05-11 | 深信服网络科技(深圳)有限公司 | 识别p2p应用连接的方法和装置 |
US20110222412A1 (en) * | 2010-03-15 | 2011-09-15 | Juniper Networks, Inc. | Operations, administration, and management fields for packet transport |
CN103581021A (zh) * | 2013-10-23 | 2014-02-12 | 华为技术有限公司 | 软件定义网络下业务检测的方法及设备 |
CN103999431A (zh) * | 2011-12-22 | 2014-08-20 | 瑞典爱立信有限公司 | 软件定义的网络中灵活的并且可扩展的流处理系统 |
WO2014191048A1 (en) * | 2013-05-31 | 2014-12-04 | Telecom Italia S.P.A. | Performance measurement of a link of a packet-switched communication network |
-
2015
- 2015-03-05 CN CN201510098412.8A patent/CN105991338B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767456A (zh) * | 2004-10-27 | 2006-05-03 | 华为技术有限公司 | 一种调度数据的方法及装置 |
CN101569137A (zh) * | 2006-12-29 | 2009-10-28 | 朗讯科技公司 | 使用IPv6能力的有效性能监控 |
WO2009129841A1 (en) * | 2008-04-21 | 2009-10-29 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for network fault management |
US20110222412A1 (en) * | 2010-03-15 | 2011-09-15 | Juniper Networks, Inc. | Operations, administration, and management fields for packet transport |
CN102055627A (zh) * | 2011-01-04 | 2011-05-11 | 深信服网络科技(深圳)有限公司 | 识别p2p应用连接的方法和装置 |
CN103999431A (zh) * | 2011-12-22 | 2014-08-20 | 瑞典爱立信有限公司 | 软件定义的网络中灵活的并且可扩展的流处理系统 |
WO2014191048A1 (en) * | 2013-05-31 | 2014-12-04 | Telecom Italia S.P.A. | Performance measurement of a link of a packet-switched communication network |
CN103581021A (zh) * | 2013-10-23 | 2014-02-12 | 华为技术有限公司 | 软件定义网络下业务检测的方法及设备 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108512735A (zh) * | 2017-02-25 | 2018-09-07 | 华为技术有限公司 | 一种数据传输方法和装置 |
CN110209716A (zh) * | 2018-02-11 | 2019-09-06 | 北京华航能信科技有限公司 | 智能物联网水务大数据处理方法和系统 |
CN110233770A (zh) * | 2018-03-06 | 2019-09-13 | 华为技术有限公司 | 网络流量标记及测量方法、节点 |
CN110233770B (zh) * | 2018-03-06 | 2023-01-06 | 华为技术有限公司 | 网络流量标记及测量方法、节点 |
CN111837361B (zh) * | 2018-03-13 | 2021-11-09 | 华为技术有限公司 | 使用带外消息采集网络oam流数据的方法及网络节点 |
CN111837361A (zh) * | 2018-03-13 | 2020-10-27 | 华为技术有限公司 | 使用带外消息采集网络oam流数据 |
CN112262554A (zh) * | 2018-06-06 | 2021-01-22 | 华为技术有限公司 | 包可编程流遥测剖析和分析 |
KR20210013207A (ko) * | 2018-06-06 | 2021-02-03 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 데이터 메시지 검출 방법, 디바이스 및 시스템 |
CN112262554B (zh) * | 2018-06-06 | 2022-09-09 | 华为技术有限公司 | 包可编程流遥测剖析和分析 |
KR102569305B1 (ko) | 2018-06-06 | 2023-08-22 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 데이터 메시지 검출 방법, 디바이스 및 시스템 |
US12040990B2 (en) | 2018-06-06 | 2024-07-16 | Huawei Technologies Co., Ltd. | Packet programmable flow telemetry profiling and analytics |
WO2020052274A1 (zh) * | 2018-09-13 | 2020-03-19 | 中兴通讯股份有限公司 | 一种mpls网络检测的实现方法、装置、网络设备和控制器 |
CN109525451B (zh) * | 2018-09-13 | 2021-06-01 | 中兴通讯股份有限公司 | 一种mpls网络检测的实现方法、装置、网络设备和控制器 |
CN109525451A (zh) * | 2018-09-13 | 2019-03-26 | 中兴通讯股份有限公司 | 一种mpls网络检测的实现方法、装置、网络设备和控制器 |
CN110113230B (zh) * | 2019-04-30 | 2021-03-09 | 新华三技术有限公司 | 一种报文统计方法及网络设备 |
CN110113230A (zh) * | 2019-04-30 | 2019-08-09 | 新华三技术有限公司 | 一种报文统计方法及网络设备 |
CN112165409A (zh) * | 2020-09-16 | 2021-01-01 | 烽火通信科技股份有限公司 | 端口管理方法、系统、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105991338B (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11533258B2 (en) | In-situ passive performance measurement in a network environment | |
CN105991338A (zh) | 网络运维管理方法及装置 | |
US9306819B2 (en) | Controller driven OAM for split architecture network | |
US11228515B2 (en) | Data packet detection method, device, and system | |
EP2544409B1 (en) | Generic monitoring packet handling mechanism for OpenFlow 1.1 | |
CN108123824A (zh) | 一种网络故障检测方法及装置 | |
CN103475556A (zh) | Pbt网络中的中间节点上的以太网oam | |
CN103069754A (zh) | 通信单元、通信系统、通信方法、以及记录介质 | |
US10623278B2 (en) | Reactive mechanism for in-situ operation, administration, and maintenance traffic | |
KR20140117993A (ko) | 링크 장애 추적을 위한 mpls-tp 네트워크 및 방법 | |
CN114430386A (zh) | 组播业务流的检测方法及相关装置 | |
US20200344152A1 (en) | Network Operations Reactive to Operations Data included in Seamless Bidirectional Forwarding Detection (S-BFD) Packets | |
CN105681223B (zh) | 一种sdn的数据包转发方法及装置 | |
EP2858302A1 (en) | Connectivity check method of service stream link, related apparatus and system | |
CN106803803A (zh) | 虚拟局域网络复原方法、系统及其装置 | |
CN114157595B (zh) | 一种通信系统、数据处理方法以及相关设备 | |
CN106411748B (zh) | 跨网络的动态拓扑维护方法 | |
CN115604150A (zh) | 一种基于标记位的数据包转发一致性检测系统和检测方法 | |
CN118316841A (zh) | 一种确定iFIT Egress探测点的方法和节点设备 | |
KR20130085488A (ko) | 패킷 전달망의 oam 프레임 처리 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |