IPTV网络中基于动态链路实现实时智能故障分析的方法
技术领域
本发明涉及IPTV网络领域,特别涉及IPTV网络故障探测定位技术领域,具体是指一种IPTV网络中基于动态链路实现实时智能故障分析的方法。
背景技术
IP网络运维有以下三个要求:快速解决故障,即当网络和业务出现故障时,需要快速解决问题,实现迅速的故障定界和定位;主动预防问题,即对业务质量和网络性能实时监控,及时发现问题,IP承载网的故障需要关联到被影响的业务上,并通过趋势分析,提前做出预警;网络日常管理,即建立网络质量监控和健康评估***,通过整套的KQI/KPI指标体系来反映和管理用户体验,掌握网络的实际运行状态,不断提高终端用户的忠诚度。
目前IPTV网络中的故障根源大部分来自于硬件、链路的劣化,尤其是网络中的链路,如光纤、微波等,容易受到环境影响,从而导致接口闪断。接口反复UP/DOWN,将引发大量接口的告警,同时又引起IGP协议收敛,引发IGP反复告警,进而引发LSP的反复告警。即链路的告警将衍生出大量的协议告警。
目前用于IPTV网络故障探测链路定位的技术主要有:
1、路径预期和检测:尽管IP的控制平面采用了动态协议,但其运行的基础仍然是物理链路和SPF(Shortest Path First)算法,链路规划越简单,路径预期就越清晰。如在大部分的中小型城域网设计中,网络层次少,层次之间采用主备双链路进行保护,路径非主即备。对于这种网络,只要维护好网络拓扑图,就可以满足故障处理的需要。
对于大型、复杂的网络,管理员通过物理链路的分布,已无法快速识别业务路径。在这种情况下,需要采用仿真计算的方式,将网络上的配置、拓扑等集中到仿真软件中,计算出业务的预期路径。
预期建立之后,定期获取路径的现状并与预期对比的方式,若不一致即发送告警,并提示管理员网络发生了故障。中小型、简单网络可以采用TraceRt获取路径。大型、复杂网络一般都会存在ECMP(Equal-Cost MultiPath等价多路径),此类情况一般可以综合TraceRt、转发表查询等方式来详细判断业务流的路径。另一种方式是通过分析IGP的泛洪报文,掌握 路径建立的详细过程,根据路由算法和配置来掌握转发路径。
2、转发预期和检测:在转发平面上,预期的建立和检测非常密切,按照实现方式的不同,可以分为三种情况:非业务随路检测、业务随路检测和业务分析。这三种方式不是非此即彼的关系。
第一种是非业务随路检测。简单地说,就是自行定义预期,在网络上注入OAM检测报文。由于接收方已预先掌握了检测报文的大小、时间间隔等特征,当收到的报文不符合自行定义的预期特征时,即是发生故障。
这种方式的优点是容易获取和实施,网络各层面均有OAM检测协议可以使用,如BFD、EthOAM、ICMP Ping、MPLS OAM等,缺点是OAM检测报文特征与业务流量特征不完全一致,可能会出现检测未发现问题,但实际业务却发生了问题的情况。
第二种方式是业务随路检测,直接对业务流进行度量,典型代表是ITU-T Y.1731标准中定义的丢包统计功能,其原理简单地说就是“包守恒”,体现在以下的公式:接收报文数量=发送报文数量.具体实现上,发送方和接受方都对业务流进行计数统计,发送方定时将计数发送到接收方,由接收方进行核对,核对出错即是故障发生。
第三种是业务分析。这种方式度量业务数据,并和预定义的标准阈值进行对比,如针对IPTV业务,采用专用硬件挂接在设备端口上,直接度量网络上IPTV流量的vMOS值等业务指标。这种方式需要采用DPI等方式,对实际业务报文进行采样统计或深度解析,按照业务已经定义的预期,分析其是否出现问题。该方式的优点是真实,缺点是设备部署和维护的成本高。
相关技术指标有:
1、TR101-290
这个指标是广泛使用的视频传输质量指标,它可以跨越不同的传输媒体:卫星,HFC,IP。它针对MPEG-2TS传输的质量制定了三级告警。每层告警针对不同程度的视频传输问题:第一级是严重的网络传输问题告警,对视频观看有明显的影响。比如,黑屏,严重马赛克;第二级是音视频解码问题,一定情况下会对视频观看效果有影响。比如,音视频不同步,频道切换速度。第三级是更严格的告警级别,主要针对高要求的视频传输。TR101-290本身没有针对特定传输媒体的测量方法,因为网络传输的故障将反映到第一级告警中。在跨媒体的视频传输***中,运维人员可能无法直接从监测点的TR101-290第一级告警定位故障。
2、RFC4445 MDI(媒体传输质量指标)
这个指标主要针对IP层传输视频流的视频质量指标,是主要IPTV测试的行业标准。该 指标对IP有广泛的适用性。针对IPTV实现的多样性,厂家可以对RFC 4445 MDI进行灵活扩展。目前支持ISMA和MPEG-2 TS的应用。MDI同时具有良好的扩展性,能够在目前硬件芯片水平上达到同时监测上千路视频流的能力。
3、PSNR,BT.500,其它综合评分的视频测试指标
它们的提出主要是针对视频编码质量。因为PSNR和BT.500具有复杂的算法,这两种测试指标仅仅被高端的视频测试仪所支持,主要用在视频编码器和编码效率的测试。硬件成本阻挡它们成为IPTV全网监测的候选指标。同时,一些测试厂商试图通过简化的方式提供综合视频测试指标。比如,将网络抖动,丢包,MPEG-2不同类型帧的对播出效果的权重进行综合,提出类似MOS的评分机制。在应用中,这些测试指标会出现与实际机顶盒播放效果不一致的结果。比如,IP视频流的纠错机制往往是私有的实现。综合评分的视频测试指标需要对机顶盒的重传机制和视频错误纠正(concealment)因素进行合理的调整。在极端的情况下综合视频测试指标会出现指标钝化现象。比如,一定数目的IP视频封包丢失是可以被机顶盒的纠错机制恢复的。但是综合指标读数将出现极低的数值,运维人员无法设置合理的告警门槛进行视频质量监测。调整综合视频测试指标将是复杂的过程,最后可能导致对算法的彻底调整
另外,为了进行IPTV网络动态链路智能定位,还需要P2P技术中Gnutella(具体请参阅Gnutella development forum,the Gnutella v0.6 protocol[EB/OL],http://groups.yahoo.com/group/the gdf/files/,2001)协议支持,提供多个检测设备之间自组织网络并进行信息共享。
Gnutella是一种非集中控制的协议,Gnutella被广泛使用并且有很多新的改进。Gnutella的特别之处在于它的分布式的文件定位和响应方法。由于数据的查询不依赖于任何有结构的拓扑结构,其查询的方式只能把请求广播到所有邻近的节点(Peer),相应节点响应消息,之后下载所需的文件。这种网络的突出优势在于良好的健壮性和可扩展性,明显的缺点在于会带来很大的查询消耗。一个节点想要加入Gnutella的网络,首先连接一些全局的可以连接的节点,一旦建立连接,节点以广播的方式通告给其他的存在。开始每一个消息被赋予一个唯一的随机产生的标识,其他节点记录到该节点的路由信息,用来防止重新广播和后向传播。广播消息通过生存时间(TTL)和经过的跳数来控制消息泛洪的范围。节点之间通过周期性的类似Ping机制的消息维护彼此的连接,每个节点建立的连接都根据本地信息来选择。最新的Gnutella引入了超级节点的概念用来提高路由查找的效率。但是由于网络本身的自组织特性使得这种超级节点的部署优势不能充分的发挥。
目前市面的IPTV检测设备主要针对接入点的网络状况进行探测,而无法与其他设备动态联网,进而分析定位链路上的故障点以及成因。虽然有网管***记录各设备之间的拓扑关系,但由于网状拓扑多路径以及路由选择的问题,无法知道用户收看IPTV节目的实时数据流到底流经了哪些设备。当用户收看时发生故障,无从准确定位发生故障时是哪条链路哪个节点发生故障。而仅从网管中拓扑上的设备状态以及告警,容易导致判断错误。比如,STB1报障,而到STB1有两条拓扑路径,那么哪条拓扑路径上出现问题导致STB1报故障?这种情况是无法很清晰的区分和鉴别的,因此就给IPTV网络的检测和维护带来了很大的不便。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够实时诊断出网络异常以及异常出现的位置和原因、及时发出告警提示、实现链路故障的有效排查定位、处理过程快捷方便、工作性能稳定可靠、适用范围较为广泛的IPTV网络中基于动态链路实现实时智能故障分析的方法。
为了实现上述的目的,本发明的IPTV网络中基于动态链路实现实时智能故障分析的方法如下:
该IPTV网络中基于动态链路实现实时智能故障分析的方法,所述的IPTV网络中包括连接设置于各个网络节点处的探针设备,其主要特点是,所述的方法包括以下步骤:
(1)所述的各个探针设备进行***初始化操作;
(2)所述的各个探针设备根据所对应的IPTV网络节点进行配置操作,并生成相应的监测点信息配置文件;
(3)所述的探针设备根据所述的监测点信息配置文件进行监测点信息广播操作;
(4)所述的各个探针设备进行网络链路发现操作;
(5)所述的探针设备进行设备链路节点注册操作;
(6)所述的探针设备进行链路设备监测信息同步更新操作;
(7)所述的各个探针设备进行节点故障发现处理操作;
(8)所述的IPTV网络中出现故障的网络节点所对应的探针设备进行故障定位诊断操作;
(9)该IPTV网络中出现故障的网络节点所对应的探针设备进行故障定位告警提示操作;
(10)返回上述步骤(6)。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行***初始化操作,包括以下步骤:
(11)所述的探针设备读取设备***信息;
(12)所述的探针设备对预设的IP地址端口进行初始化处理。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的设备***信息包括IP地址信息、MAC地址信息、网关地址信息、本地路由表信息、节点配置信息、检测的指标体系信息及网络节点IP地址信息。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的根据所对应的IPTV网络节点进行配置操作,具体为:
所述的探针设备对相应的IPTV网络节点对象的信息以及该网络节点上的视频流通道的标识字段进行配置。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的视频流通道的标识字段包括用户名、PPPOE标识。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行监测点信息广播操作,具体为:
所述的探针设备基于动态发现机制并利用IP的多播原理,根据***预设的时间间隔周期性的将相应的监测点信息配置文件以IP数据包的方式发送到IPTV网络上。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的时间间隔为5分钟。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行网络链路发现操作,具体为:
所述的探针设备基于多播的动态发现机制,通过网络节点之间的相互连接从而扩展节点的发现和连接范围。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行设备链路节点注册操作,包括以下步骤:
(21)第一探针设备在对应的第一网络节点收到并识别出所述的IP数据包后,进行解包操作并与本地所收到的第一网络链路节点信息的标识字段一一比对;
(22)如果所述的标识字段能够比对命中,则回复命中的识别信息;
(23)以比对命中的标识字段创建链路,并把该标识字段所对应的第二网络节点以及该第一探针设备所对应的第一网络节点加入到所述的第一网络链路中;
(24)如果从该标识字段所对应的第二网络节点到该第一探针设备所对应的第一网络节点之间的链路已存在,则将该链路加入所述的第一网络链路中并保持该第一探针设备所对应的第一网络节点在该第一网络链路中的惟一性;
(25)所述的标识字段所对应的第二网络节点在收到所述的命中的识别信息后,该第二网络节点所对应的第二探针设备将所述的第一探针设备所对应的第一网络节点以及该第二网络节点加入到第二网络链路中;
(26)如果从该第二网络节点到该第一探针设备所对应的第一网络节点之间的链路已存在,则将该链路加入所述的第一网络链路中并保持该第二网络节点在该第二网络链路中的惟一性。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的命中的识别信息中包括网络节点名称、PPPoE账号名称、网络节点对象IP地址/MAC地址、探针设备IP地址/MAC地址。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行链路设备监测信息同步更新操作,具体为:
所述的探针设备周期性的将自身监测结果信息更新至所述的网络链路的列表中所对应的各个探针设备中。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行节点故障发现处理操作,包括以下步骤:
(31)当所述的探针设备发现所对应的网络节点的某路数据流出现指标异常,则实时评判该异常对终端用户体验的影响;
(32)如果评判结果的影响严重度大于***预设的程度,则返回发生故障的结果;
(33)否则返回到步骤(6)进行链路巡检处理。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行故障定位诊断操作,具体为:
所述的探针设备利用本地的专家知识库进行规则匹配,找到故障出现的节点位置以及相应的故障原因,从而得到相应的诊断结果。
该IPTV网络中基于动态链路实现实时智能故障分析的方法中的进行故障定位告警提示操作,具体为:
所述的探针设备的界面上显示出告警提示,并将所述的诊断结果通知给所述的网络链路的列表中所对应的各个探针设备。
采用了该发明的IPTV网络中基于动态链路实现实时智能故障分析的方法,由于其中在IPTV网络的主要网络节点(比如BRAS、SWITCH、DSLAM等)植入相应探针设备,将通过该节点的网络数据流镜像给该探针设备,该探针通过广播的方式采用P2P算法发现其他探 针设备,并根据接入结点的相关信息自组织成链路,在通过自动发现并自组织成链路之后,链路上探针定时进行节点探测信息同步,进行链路巡检,每个节点的内部专家知识库会根据汇集到的信息结合自身检测信息诊断出异常以及异常出现的位置和原因,当有节点发生故障时则会发出告警提示,从而达到链路故障排查定位的目的,处理过程快捷方便,工作性能稳定可靠,适用范围较为广泛。
附图说明
图1为本发明的IPTV网络中基于动态链路实现实时智能故障分析的方法所应用的具体网络拓扑结构示意图。
图2为本发明的IPTV网络中基于动态链路实现实时智能故障分析的方法的处理过程示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1和图2所示,该IPTV网络中基于动态链路实现实时智能故障分析的方法,所述的IPTV网络中包括连接设置于各个网络节点处的探针设备,其中包括以下步骤:
(1)所述的各个探针设备进行***初始化操作,包括以下步骤:
(a)所述的探针设备读取设备***信息;该设备***信息包括IP地址信息、MAC地址信息、网关地址信息、本地路由表信息、节点配置信息、检测的指标体系信息及网络节点IP地址信息;
(b)所述的探针设备对预设的IP地址端口进行初始化处理;
(2)所述的各个探针设备根据所对应的IPTV网络节点进行配置操作,并生成相应的监测点信息配置文件,具体为:
所述的探针设备对相应的IPTV网络节点对象的信息以及该网络节点上的视频流通道的标识字段进行配置;该视频流通道的标识字段包括用户名、PPPOE标识;
(3)所述的探针设备根据所述的监测点信息配置文件进行监测点信息广播操作,具体为:
所述的探针设备基于动态发现机制并利用IP的多播原理,根据***预设的时间间隔周期性的将相应的监测点信息配置文件以IP数据包的方式发送到IPTV网络上;该时间间隔为5分钟;
(4)所述的各个探针设备进行网络链路发现操作,具体为:
所述的探针设备基于多播的动态发现机制,通过网络节点之间的相互连接从而扩展节 点的发现和连接范围;
(5)所述的探针设备进行设备链路节点注册操作,包括以下步骤:
(a)第一探针设备在对应的第一网络节点收到并识别出所述的IP数据包后,进行解包操作并与本地所收到的第一网络链路节点信息的标识字段一一比对;
(b)如果所述的标识字段能够比对命中,则回复命中的识别信息;该命中的识别信息中包括网络节点名称、PPPoE账号名称、网络节点对象IP地址/MAC地址、探针设备IP地址/MAC地址;
(c)以比对命中的标识字段创建链路,并把该标识字段所对应的第二网络节点以及该第一探针设备所对应的第一网络节点加入到所述的第一网络链路中;
(d)如果从该标识字段所对应的第二网络节点到该第一探针设备所对应的第一网络节点之间的链路已存在,则将该链路加入所述的第一网络链路中并保持该第一探针设备所对应的第一网络节点在该第一网络链路中的惟一性;
(e)所述的标识字段所对应的第二网络节点在收到所述的命中的识别信息后,该第二网络节点所对应的第二探针设备将所述的第一探针设备所对应的第一网络节点以及该第二网络节点加入到第二网络链路中;
(f)如果从该第二网络节点到该第一探针设备所对应的第一网络节点之间的链路已存在,则将该链路加入所述的第一网络链路中并保持该第二网络节点在该第二网络链路中的惟一性;
(6)所述的探针设备进行链路设备监测信息同步更新操作,具体为:
所述的探针设备周期性的将自身监测结果信息更新至所述的网络链路的列表中所对应的各个探针设备中;
(7)所述的各个探针设备进行节点故障发现处理操作,包括以下步骤:
(a)当所述的探针设备发现所对应的网络节点的某路数据流出现指标异常,则实时评判该异常对终端用户体验的影响;
(b)如果评判结果的影响严重度大于***预设的程度,则返回发生故障的结果;
(c)否则返回到步骤(6)进行链路巡检处理。
(8)所述的IPTV网络中出现故障的网络节点所对应的探针设备进行故障定位诊断操作,具体为:
所述的探针设备利用本地的专家知识库进行规则匹配,找到故障出现的节点位置以及相应的故障原因,从而得到相应的诊断结果;
(9)该IPTV网络中出现故障的网络节点所对应的探针设备进行故障定位告警提示操作,具体为:
所述的探针设备的界面上显示出告警提示,并将所述的诊断结果通知给所述的网络链路的列表中所对应的各个探针设备;
(10)返回上述步骤(6)。
在实际使用当中,本发明的IPTV网络中基于动态链路实现实时智能故障分析的方法包括以下步骤:
(1)设备启动(***初始化):当探针设备启动后读取设备***信息:IP、MAC、网关地址,本地路由表以及节点配置:检测的指标体系,节点IP信息。对指定的IP地址端口进行初始化工作。
2、配置节点信息:对该设备检测的IPTV网络节点对象的各种信息以及该节点上视频流通道的标识字段(比如用户名、PPPOE标识等)进行配置,生成监测点信息配置文件(*.cfp),以便能标识出该探针所检测的网络节点以及该节点所收到的链路节点信息。
3、监测点信息广播:基于动态发现机制,利用IP的多播原理(multicast),定期(5分钟间隔)将监测点信息配置文件(*.cfp)以IP数据包方式发送到网络上,没有特定目标,可能会有回应,也可能没有。
4、网络链路发现:IPTV网络上的节点位于不同的网络区域(比如VLAN)内,通过节点之间的相互连接从而扩展节点的发现和连接范围,这就是基于多播的动态发现机制。
●A——→B
●B——→C
●A——→B——→C
该动态发现机制无需独立的公用服务器。
5、设备链路节点注册:
(1)当网络上的节点收到识别出该IP数据包后,解开后与本地收到的链路节点信息的标识字段一一比对,比如IP报文中表示STB1监测到2路视频流分别发给PPPoE账号为A1,A2的用户,而当前节点探针收到的视频流中也有发给PPPoE账号为A1的,则视为比对命中。如果发现有比对命中,则回复命中的识别信息,比如上例子中则回复<STB1,A1,本地监测对象IP/MAC,本地IP/MAC>。并以标识A1创建链路,把该节点以及本地监测节点加入到此链路中,如果链路已存在,则加入该链路中并保持此节点在链路中的惟一性。
(2)在收到命中回复后,也将对方以及本地监测节点加入到链路中,如果链路已存在,则加入该链路中并保持此节点在链路中的惟一性。
6、链路设备监测信息同步更新:定期将自身监测结果更新给链路列表中各个探针设备。
7、故障发现:当一个探针发现监测的节点的某路数据流出现指标异常,实时评判该异常对终端用户体验的影响,如果当影响严重度大于一定程度就会认为是故障,如果不是故障,则会到步骤6进行链路巡检。
8、故障定位诊断:当故障发现后,利用本地的专家知识库进行规则匹配,从而找到故障出现的节点位置以及故障原因。
9、故障定位告警提示:当诊断完成后,该节点的探针设备的界面上发出告警提示,并把这个诊断结果通知链路列表中的其他设备。
10、关机结束:以上步骤在关机前一直循环往复执行。
其中,本发明采用了自组织的网络链路构建方法,通过自组织形成局部P2P网络共享节点信息,从而构建出实时传输的网络链路;同时,本发明基于动态变化的网络链路实时QoS故障诊断分析,当网络链路变化时,实时获取到流经的网络链路,根据链路上的各节点的QoS状况,判断整个链路质量对用户体验的影响程度。
采用了上述的IPTV网络中基于动态链路实现实时智能故障分析的方法,由于其中在IPTV网络的主要网络节点(比如BRAS、SWITCH、DSLAM等)植入相应探针设备,将通过该节点的网络数据流镜像给该探针设备,该探针通过广播的方式采用P2P算法发现其他探针设备,并根据接入结点的相关信息自组织成链路,在通过自动发现并自组织成链路之后,链路上探针定时进行节点探测信息同步,进行链路巡检,每个节点的内部专家知识库会根据汇集到的信息结合自身检测信息诊断出异常以及异常出现的位置和原因,当有节点发生故障时则会发出告警提示,从而达到链路故障排查定位的目的,处理过程快捷方便,工作性能稳定可靠,适用范围较为广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。