【技术实现步骤摘要】
显示和分析多播分布拓扑图的方法
本专利技术为显示和分析多播分布拓扑图的方法,属于网络通信领域。该算法采用C/S架构,网络中一台PC机作为服务端,网络中的交换机或路由器作为客户端,客户端收集数据上报给服务端,服务端按照客户端上报的数据生成整个网络的拓扑图,同时反映网络中的多播分布情况。
技术介绍
现在网络中多播应用非常广泛,多播和广播相比有明显的优势:一点发送,多点接收,接收方可以选择离开或加入该多播组。和广播不同的是,不加入多播组的设备,可以不受多播影响,减轻了这些设置处理负担。多播的广泛的应用带来的一个问题就是管理员需要了解当前网络的多播分布情况,比如一个特定多播地址在网络中流动的路径,该多播的源发起端在何处,它的最终的目的端在何处,中间通过何种设备。本专利技术提出的算法可以解决上述问题,它计算整个网络的拓扑图,同时在拓扑图上显示多播分布情况,帮助用户诊断网络。它直观、实时地显示网络中的多播路径,查看特定多播流所经过的设备,以及该多播流的发送端和接收端。本算法支持复杂的拓扑图生成,和多播路径结合起来,可以在生成的网络拓扑图上显示特定拓扑节点的多播流,同时实时展示特定的多播流流经的拓扑节点,方便管理员的监视和管理。
技术实现思路
本算法采用C/S结构,选择网络中一台PC作为服务端,网络中交换机和路由器作为客户端,客户端和服务端之间采用UDP协议通讯。服务端的程序分成两个独立的线程,分别是通讯线程和服务线程。通讯线程负责和客户端的通讯并接收客户端的上传信息,根据上传信息生成网络拓扑图,保存各种上传数据,建立各网络节点和多播地址的对应关系。服务线程主要用来展现拓扑 ...
【技术保护点】
显示和分析多播分布的拓扑图算法,采用客户端/服务端架构实时显示网络中的邻居拓扑图,同时反映网络中的多播分布情况,其特征是:服务器和客户端上分别执行下述步骤:服务端是一台并行处理大量网络数据并具有良好人机界面的服务器,包括并行执行的两个线程:通讯线程和服务线程,通讯线程;它们的运行步骤如下:A通讯线程接收客户端发来的邻居信息报文和多播地址信息报文;B通讯线程根据接收的邻居信息和多播地址信息建立公共数据结构,该数据结构包含设备信息,端口邻居信息,多播地址信息;C通讯线程在建立公共数据结构后通知服务线程;D服务线程收到通知,扫描公共数据结构的信息,绘制拓扑图,同时在隐藏图层添加关于设备的多播地址信息;E服务实时显示网络拓扑图并等待用户的查询和显示请求,按照请求显示多播地址信息;客户端由支持LLDP协议,GMRP协议,IGMP协议的设备组成,运行步骤如下:A客户端通过LLDP协议进程、GMRP协议进程、IGMP协议进程同步收集邻居信息和多播地址信息;B收集到的消息传给客户进程;C客户进程把消息上传给服务端。
【技术特征摘要】
1.显示和分析多播分布拓扑图的方法,采用客户端/服务端架构实时显示网络中的邻居拓扑图,同时反映网络中的多播分布情况,其特征是:服务器和客户端上分别执行下述步骤:服务端是一台并行处理大量网络数据并具有良好人机界面的服务器,包括并行执行的两个线程:通讯线程和服务线程;它们的运行步骤如下:A.通讯线程接收客户端发来的邻居信息报文和多播地址信息报文;B.通讯线程根据接收的邻居信息和多播地址信息建立公共数据结构,该数据结构包含设备信息,端口邻居信息,多播地址信息;C.通讯线程在建立公共数据结构后通知服务线程;D.服务线程收到通知,扫描公共数据结构的信息,绘制拓扑图,同时在隐藏图层添加关于设备的多播地址信息;E.服务线程实时显示网络拓扑图并等待用户的查询和显示请求,按照请求显示多播地址信息;客户端由支持LLDP协议、GMRP协议、IGMP协议的设备组成,运行步骤如下:F.客户端通过LLDP协议进程、GMRP协议进程、IGMP协议进程同步收集邻居信息和多播地址信息;G.收集到的消息传给客户进程;H.客户进程把消息上传给服务端。2.根据权利要求1所示的显示和分析多播分布拓扑图的方法,公共数据结构包括设备链表、多播地址链表;设备链表由设备节点组成,设备节点包含指向端口节点的指针、指向下一个设备节点的指针、设备的IP地址、设备的mac地址;端口节点包含本端的端口编号、对端的端口编号、指向它的邻居设备的设备节点指针、指向属于同一个设备的下一个端口节点的指针;多播设备节点包括指向设备节点的指针、该多播地址使用的设备端口向量、指向下一个多播设备节点的指针;设备、端口、多播地址之间通过设备链表、多播地址表、端口节点建立关联;其特征是:公共数据结构的建立步骤如下:I.服务端收到客户端上传的邻居信息,邻居信息包括发送者信息、端口消息、端口的邻居信息;判断客户端发送者在设备链表是否存在,如果不存在,执行步骤J;如果存在执行步骤K;J.创建一个设备节点,同时创建一个端口节点,设备节点中的端口指针指向该端口节点;K.判断端口节点是否存在,如果不存在创建一个端口节点,设备节点中端口指针指向该端口节点;判断它的邻居设备在设备链表中是否存在,如果存在,端口节点的邻居设备指向该设备节点;如果不存在执行步骤L;L.创建一个设备节点,端口节点的邻居设备指针指向该设备;M.服务端收到客户端上传的多播地址信息,多播地址信息包含发送者信息和多播地址信息,首先判断该多播地址是否存在,如果不存在则创建一个多播地址节点;N.判断多播地址信息中的关于发送者设备是否存在;如果不存在则创建该设备节点;O.判断多播地址节点指向的多播设备节点中是否存在,如果不存在,创建该多播设备节点,计算端口向量,并把多播设备节点的设备指针指向设备节点。3.根据权利要求1所示的显示和分析多播分布拓扑图方法,服务端的服务线程负责绘制拓扑图,设备进行深度优先搜索的得到最长路径,在深度搜索过程中,如果出现环路,设置环网标志量,记录环路中各个节点和环路节点的总数;其特征是:求设备最大深度路径的步骤是:P.设置环网标志量为0表明没有出现环路,设备链表的每个节点设置为没有搜索完成标志;Q.寻找一个没有搜索完成的设备,如果没有找到该设备退出整个步骤;如果找到该设备,把该设备的当前深度和最大深度置0,建立设备的当前深度路径向量和最大深度路径向量,同时把所有设备的所有端口设置为未被访问标志;R.建立一个栈,栈的元素包含节点的类型、设备节点、端口节点;如果类型等于0代表存放的是设备;如果类型等于1存放的是端口,此时设备存放的是端口所在的设备节点,端口存放端口节点数据,代表当前设备节点入栈;把步骤Q找到的未搜索完成设备节点入栈,设备节点存入当前深度路径向量,当前深度值1;S.判断栈是否为空,如果...
【专利技术属性】
技术研发人员:周厚明,崔磊,
申请(专利权)人:武汉迈威实达软件有限公司,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。