一种拓扑图构造方法和系统的制作方法

文档序号:7721240阅读:260来源:国知局
专利名称:一种拓扑图构造方法和系统的制作方法
技术领域
本申请涉及通信技术领域,尤其涉及一种拓扑图构造方法和系统。
背景技术
拓扑图是以图像的方式来显示网络的结构关系,在电信网管系统中,拓扑图用于显示电信设备管理对象之间的层次和连接关系。 电信网络资源管理系统中的网络拓扑图一直是网络资源管理的一个难点,过去使用的是客服端/服务器(C/S,Client Server)的开发模式,这种开发模式下,客户端可以采用较多的实现技术。是随着Internet技术的兴起和发展,电信领域对C/S模式进行改进和发展,现在电信网络资源管理系统由CS转为浏览器/服务器(B/S, Browser/Server)的开发模式。在这种模式下,要实现网络拓扑,有比较多的限制。主要是因为浏览器不太容易实现图形交互。 发明人通过研究发现,在B/S模式下,现有的实现拓扑展现的技术有通用的拓扑组件TWAVER或者使用JavaScript+VML以及用脚本控制的FLASH呈现,使用这几种方式都可以实现网络拓扑,但都有一个问题,即每次开发通用性差,开发成本较高,开发效率极为低下。

发明内容
有鉴于此,本申请实施例的目的是提供一种拓扑图构造方法和系统,快速、简单、高效地实现电信网络资源拓扑图展示。 为实现上述目的,本申请实施例提供了如下技术方案
—种拓扑图构造方法,包括 获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象; 根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根
据所述关联构造当前业务资源实体的拓扑图。
利用所述线对象为两个点对象建立关联包括 确定第一点对象、第二点对象和第一线对象; 利用所述第一线对象连接所述第一点对象和第二点对象,形成连接线。
根据所述关联构造当前业务资源实体的拓扑图具体为 对于任意两条连接线,如果有两个端点相同,则将相同的端点合并。 所述方法还包括 对所述点对象和线对象进行渲染; 利用经渲染的点对象和线对象展示所构造的当前业务资源实体的拓扑图。
对所述点对象和线对象进行渲染包括 确定所述点对象和所述线对象的参数; 根据所述点对象和所述线对象的参数渲染出对象实体;
3
其中所述点对象的参数为颜色、形状、大小、名称;
所述线对象的参数为颜色、线型、长度、名称。
—种拓扑图构造系统,包括 对象构造单元,用于获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象; 拓扑图构造单元,用于根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。
所述拓扑图构造单元包括 对象确定子单元,用于确定第一点对象、第二点对象和第一线对象; 关联子单元,用于利用所述第一线对象连接所述第一点对象和第二点对象,形成
连接线; 构造子单元,用于对于任意两条连接线,如果有两个端点相同,则将相同的端点合并。
所述系统还包括 渲染单元,用于对所述点对象和线对象进行渲染; 展示单元,用于利用经渲染的点对象和线对象展示所构造的当前业务资源实体的拓扑图。
所述渲染单元包括 参数确定子单元,用于确定所述点对象和所述线对象的参数; 渲染子单元,用于根据所述点对象和所述线对象的参数渲染出对象实体; 其中所述点对象的参数为颜色、形状、大小、名称; 所述线对象的参数为颜色、线型、长度、名称。 可见,本申请实施例中,获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象;根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。由于将业务资源实体抽象为简单的对象即可构造业务资源实体的拓扑图,其通用性强,极大地降低了形成拓扑图的时间,提高了开发效率。


为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提
下,还可以根据这些附图获得其他的附图。 图1为本申请实施例所提供MVC架构示意图; 图2为本申请实施例所提供MVC架构与其他组件交互的示意图; 图3为本申请实施例所提供数据的类的示意图; 图4为本申请一实施例四提供的方法的流程图; 图5-1 图5-3为本申请实施例速提供的形成拓扑图的情况; 图6为本申请另一实施例所提供的方法的流程 图7为本申请一实施例所提供的方法对应数据流图
图8为本申请一实施例所形成的拓扑图的示意 图9为本申请一实施例所提供的系统的结构示意图,
具体实施例方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。 先介绍一下本申请实施例中的相关概念 1、点对象表示拓扑图上的所有设备实体的单元。 2、线对象用于对拓扑图上的所有点对象进行连接的线条。 本申请实施例所提供的方法中,每个点对象和线对象都有许多属性,对于点对象,
其属性可以包括颜色、形状、大小、名称等等,对于线对象,其属性可以包括颜色、线型、长
度、名称等等。例如,电信网络资源中的基站,将其抽象成本申请实施例中的一个点对象时,
其名称可以是基站,其形状可以是矩形、大小为10*30,颜色为黑色,如果有这样两个基站,
而这两个基站需要建立连接,那么可以通过线对象将这样两个点对象(两个基站)连接起
来,该线对象的颜色为黑色、长度为10、线型为直线等等。本领域技术人员可以知道,点对象
和线对象的具体属性可以根据实际情况进行设置,本申请对此不做限定。 本申请实施例所提供的方法基于即模型、视图、控制器(MVC, MODEL, VISION,
CONTROL)的架构,通过FLEX技术实现。 Flex是Macromedia发布的展I见月艮务(presentation server),它是JavaWebcontainer或者 net server的 一 个应用,根据 mxml文件(纯粹的xml描述文件和actionscript)产生相应的.swf文件,传送到客户端,由客户端的flash player或者Shockwave player解释执行,给用户以丰富的客户体验。也可以认为是可以编程交互的FLASH。 图1为本申请一实施例所使用的MVC架构的结构示意图,从图中可以看出,该MVC架构中包括数据模型(Dataltem)、视图(Gr即hCanvas)以及控制器(DataBox)三个部分,这三个部分有清楚的逻辑分工,具体为 Dataltem是MVC中的模型部分,根据拓扑状态,如查询、添加、修改、删除等状态通知视图,视图根据通知内容作出相应的变化。视图根据模型进行自动调整,无需专门的触发。 Gr即hCanvas是视图部分,视图根据模型进行图形绘制,并将绘制出的图形在前台界面上展示。视图也接收用户指令并发送到控制器,由控制器对视图进行各种选择。
DataBox是控制器,控制器对变化的数据进行控制,其中,变化的数据包括来自模型部分的数据和来自视图部分的数据。 当变化的数据来自模型部分时,控制器发送指令给视图,通知视图,模型中的数据更新了 ,视图根据来自控制器的指令进行重绘。
当变化的数据来自视图部分时,控制器发送指令给模型,通知模型,视图中的数据更新了 ,模型根据来自控制器的指令进行对相应的数据进行更新。 在DataBox上建立通知事件,调用者可以通过捕获事件,来得到数据变化或图形操作的通知,以作出相应的处理。 此外,DataBox可以通过发送事件与本MVC架构之外的其他的控件做出联动选择。
例如,DataBox与MVC架构之外的一树控件作联动选择 树控件监听DataBox发送的选定事件,当收到DataBox事件中的选定指令时,根据DataBox事件中的消息来更新树控件选择的数据。 参见图2,当树控件中的数据选定的时候,调用DataBox的方法选定DataBox中的Datalem。 Dataltem会自动处于选中状态。Dataltem还可以根据选中的业务状态,进行自动縮放到合适的比例,以方便用户查看。 Dataltem是整个数据模型基础,本申请实施例中的业务数据通过Dataltem被实例化,无论是传输网络资源、数据网络资源还是交换网络资源等,通过Dataltem被抽象成一个个对象,在组件里就可以统一进行处理,不再需要开发人员考虑业务资源相应的图形该如何绘制,只要实例化成对象,即可自动展现。 在进行拓扑图形展现时,可以定义多种展现方式,例如传输环网图,星形网络结构图,以及多种渲染方式,例如透明、半透明、不透明等。
整个基础拓扑组件的类图如图3所示,其中 Dataltem类,为基础类,用于定义数据的常规属性和方法。Node和edge是继承于Dataltem的基本对象,表示拓扑图上的节点和边,这两个类都实现IRender接口 ,可以对自己进行渲染。将node和edge添加到dataBox中就可以实现这些类在图上的现实。
RenderManger是渲染类,对IRender类进行聚合,由Dataltem进行调用。
IRender是渲染接口,Node、Edge类通过该接口对自己进行渲染。各种特定的基于电信拓扑网络的渲染算法都可以通过该类来实现。 DefaultRender是缺省渲染类,当没有专门的渲染实现时,系统调用该类来渲染图形。 DataBox是控制器类,Dataltem聚合于该类中。该类是调用者主要实例化的一个类。 ISe 1 ectMode 1是选择控制接口, DataBox类通过调用ISelectModel接口进行选择Dataltem。 DefaultSelectModel,缺省选择实现类,如果没有对ISelectModel接口作特定的实现,ISelectModel接口将使用该类作为缺省的选择实现。 Gr即hCanvas,视图类,完成图形绘制及展现视图给用户。该类接收用户输入,通过DataBox进行各种控制操作。 下面参见图4,说明本申请实施例基于上述MVC架构所提供的拓扑图构造方法,包括 S401、获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象; 结合图1所示的MVC架构,本申请实施例中,根据业务资源实体构造业务层点对象
6和线对象的工作由Dataltem完成。 S402、根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图; 点对象之间的连接关系由具体的业务确定,本发明实施例中,可以预先根据具体
的业务确定。例如网络连接的端点一定是网络交换机或电脑,这是由使用者在使用之前就
明确了的。本申请实施例中,关联的动作是由控制器即DataBox来完成的。 在将业务资源实体抽象成点对象和线对象之后,这些对象都是零散的,而要构造
拓扑图,必须根据业务资源实体间的连接关系将点对象关联起来。本申请实施例中,根据各
个业务资源实体之间的连接关系,通过线对象将点对象进行结合来构建点对象和线对象之
间的关联,包括 首先,确定第一点对象、第二点对象和第一线对象;然后利用所述第一线对象连接所述第一点对象和第二点对象,形成以所述第一点对象和所述第二点对象为端点的连接线。 通过上述方法,通过线对象将有连接关系的点对象都连接了起来,将原本零散的
点对象和线对象形成了多条连接线。
根据连接线构造拓扑图的过程包括 将所有的连接线按照端点进行连接,构造拓扑图。本发明实施例中,任意两个点对象,如果存在关联关系,那么这个关联关系不会因为两个点对象位置的变化而变化。参见图5-1,点对象1和点对象2是关联的,那么无论这两个点对象形成图5-1左边的两条连接线中的哪一种,其实质都如图5-1右边所示。
本发明实施例中,将连接线按照端点进行连接具体包括 对于任意两条连接线,如果有两个端点相同,则将相同的端点合并;否则,则构造两条连接线。以图5-2 图5-3所示的情形为例 图5-2中,其中一条连接线的端点为点对象1和点对象2,另一条连接线的端点为点对象2和点对象3,那么把四个端点中的两个相同的端点进行合并即可;图5-3中,两条连接线的四个端点均不相同,那么保持这两条连接线不变。 本申请实施例所提供的方法,以MVC架构为基础,将网络资源抽象为简单的对象即可以构造网络资源的拓扑图,极大地降低了形成网络资源拓扑图的时间,提高了网络资源拓扑图的构造效率。 进一步地,本发明实施例所提供的方法还包括
S403、对所述点对象和所述线对象进行渲染; 如之前介绍的,点对象和线对象都可以包括很多的属性,例如颜色、形状或者线型
等等,要能够在拓扑图上真实地对这些对象进行反映,就需要根据这些属性参数对点对象
和线对象进行渲染,本申请一实施例中,对点对象和线对象进行渲染包括 首先,确定所述点对象和所述线对象的属性参数,然后,根据所述点对象和所述线
对象的属性参数渲染出对象实体。例如,某个点对象,颜色为黑色、形状为矩形、名称为基
站。根据这三个属性的属性对象对这个点对象进行渲染,最后渲染出来的点对象的对象实
体即为一个黑色的矩形,该矩形的名称为"基站"。 渲染的工作也由Dataltem完成,具体地,由Dataltem通过IRender接口实现。
7
S404、利用经渲染的点对象和线对象展示所构造的当前业务资源实体的拓扑图。
当点对象和线对象被渲染完成后,被送入DataBox,由DataBox利用经渲染的点对 象和线对象通过Gr即hCanvas展示所构造的当前业务资源实体的拓扑图。
参见图6和图7、以一个移动网络资源拓扑图的展现过程为例,对本申请实施例所 提供的方法做进一步的说明。其中,图6为该方法的流程图,图7则为该方法对应的数据流 图。具体地,该方法包括 S601、根据业务资源实体构造业务层节点,包括构造点对象和线对象。 本申请实施例中,业务资源实体包括移动基站、交换机、基站控制器、位置寄存器
和中继电路,如图7所示。 业务层节点即业务层点对象或者线对象。 一般情况下,将具体的设备抽象成点对
象,而将线路之类的业务资源实体抽象成线对象。根据这个基本原则,参照图7可以知道,
移动基站、交换机、基站控制器、位置寄存器都被构造成点对象,而中继电路被构造成线对
象,具体的,可以根据如下方式构造点对象和线对象 点对象的构造可以为NODE nodel = new NODE(移动基站); 线对象的构造可以为Edge edge = newEdge (topoLink)。构造结果包括点对象
1 (移动基站)、点对象2 (交换机)、点对象3 (基站控制器)、点对象4 (位置寄存器)和线
对象l(中继电路)。 S602、将两个点对象和线对象进行关联,根据所述关联构造当前业务资源实体的 拓扑图。 本申请实施例中,关联的方式为,将点对象两两结合,通过一线对象连接表示为一 新线对象,例如,本申请一实施例中,可以通过如下方法建立连接线
Edge edge = new Edge (起始NODE,终止NODE, topoLink)。 topoLink是一种比较特别的线条,这样的线条的两个端点一旦确定后,线条不会 因为端点的移动而与端点所连接的物体断开。 从上例中可以看出,该线对象中指定了起点和终点的点对象,同时指定了线对象 topoLink对起点和终点的点对象进行连接。 为了描述方便,将由点对象和线对象构成的该新线对象记为连接线。 本实施例中,移动基站上连基站控制器,基站控制器上连交换机,交换机上连位置
寄存器。根据这些连接关系建立如下连接线 Edge edge = new Edge (点对象1,点对象3, topoLink); Edge edge = new Edge (点对象3,点对象2, topoLink); ......等等。 在根据点对象之间的关联得到连接线之后,可以在该连接线的基础上构造当前业 务资源实体的拓扑图,具体地,可以根据上述建立的连接线的端点将各个连接线进行连接, 形成拓扑图。 S603、根据各个线对象和点对象的属性对各个线对象和点对象进行渲染。
渲染是展示拓扑图必备的一步。每个点对象和线对象最终在拓扑图中的具体呈现 效果都由渲染出来的效果决定。例如,对于点对象1-移动基站,其属性参数分别为名称 移动基站,形状100*100,颜色白色,那么只有通过渲染,才能在最后的拓扑图中显示出上述各个属性的点对象。 S604、 DataBox利用经渲染的点对象和线对象通过Gr即hCanvas展示所构造的当 前业务资源实体的拓扑图。 图8为本申请一实施例所提供的方法所形成的拓扑图的示意图,从图中可以看
出,有6个点对象,每个点对象通过线对象与其他点对象连接形成了该拓扑图。 在拓扑图上,可以按照要求摆放拓扑节点的位置,在拓扑节点上做自定义的业务
操作。当两个点对象被关联后,不会因为两个点对象具体的位置关系影响两个点对象的连
接关系。 本申请实施例所提供的拓扑图展现方法,将实际的网络资源实体构造成点对象和 线对象,然后为点对象和线对象建立关联,并根据该关联构造拓扑图,DataBox对各个点对 象和线对象进行渲染,利用渲染后的点对象和线对象通过GraphCanvas来展示拓扑图,可 见,本申请实施例所提供的方法极大地简化了拓扑图的构造过程,减少了形成网络资源拓
扑图的时间,提高了网络资源拓扑图的展示效率。 参见图9,本申请一实施例还提供一种拓扑图构造系统,该系统同样基于本申请实 施例所提供的MVC框架实现,该系统包括 对象构造单元901,用于获取业务资源实体,并根据所述业务资源实体构造业务层 点对象和线对象; 拓扑图构造单元902,用于根据业务资源实体之间的连接关系,利用所述线对象为
两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。 在本申请的另一实施例中,该拓扑图构造单元902包括 对象确定子单元,用于确定第一点对象、第二点对象和第一线对象; 关联子单元,用于利用所述第一线对象连接所述第一点对象和第二点对象,形成
连接线。 构造子单元,用于对于任意两条连接线,如果有两个端点相同,则将相同的端点合 并。 本申请实施例所提供的系统,以MVC架构为基础,将网络资源抽象为简单的对象 即可以构造网络资源的拓扑图,极大地降低了构造网络资源拓扑图的时间,提高了网络资 源拓扑图的构造效率。 进一步地,本发明另一实施例中,图9所示的系统还包括
渲染单元903,用于对所述点对象和所述线对象进行渲染; 展示单元904,用于利用经渲染的点对象和线对象展示所构造的当前业务资源实 体的拓扑图。 具体地,在本申请另一实施例中,所述渲染单元903包括
参数确定子单元,用于确定所述点对象和所述线对象的属性参数;
渲染子单元,用于根据所述点对象和所述线对象的参数渲染出对象实体。
该属性参数可以包括颜色、形状、名称等等。 本申请实施例所提供的系统,以MVC架构为基础,在将网络资源抽象为简单的对 象即可以构造网络资源的拓扑图的基础上进一步对抽象出来的点对象和线对象进行渲染, 并利用渲染后的点对象和线对象对该拓扑图进行展示,提高了网络资源拓扑图的展示效
9率。 本领域技术人员可以知道,实际应用中,可以通过将图9所示的系统中的各个单 元互相结合构成MVC架构中的数据模型、视图以及控制器,本申请对图9所示的各个单元的 具体形式不做限定。 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本 申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。 通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可 借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质 上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品 可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些 部分所述的方法。 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部 分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实 施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例 的部分说明即可。 本申请可用于众多通用或专用的计算系统环境或配置中。例如个人计算机、服务
器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶 盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的
分布式计算环境等等。 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序 模块。 一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组 件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由 通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以 位于包括存储设备在内的本地和远程计算机存储介质中。 虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和 变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的 精神。
权利要求
一种拓扑图构造方法,其特征在于,包括获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象;根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。
2. 根据权利要求1所述的方法,其特征在于,利用所述线对象为两个点对象建立关联包括确定第一点对象、第二点对象和第一线对象;利用所述第一线对象连接所述第一点对象和第二点对象,形成连接线。
3. 根据权利要求2所述的方法,其特征在于,根据所述关联构造当前业务资源实体的拓扑图具体为对于任意两条连接线,如果有两个端点相同,则将相同的端点合并。
4. 根据权利要求1 3任意一项所述的方法,其特征在于,还包括对所述点对象和线对象进行渲染;利用经渲染的点对象和线对象展示所构造的当前业务资源实体的拓扑图。
5. 根据权利要求4所述的方法,其特征在于,对所述点对象和线对象进行渲染包括确定所述点对象和所述线对象的参数;根据所述点对象和所述线对象的参数渲染出对象实体;其中所述点对象的参数为颜色、形状、大小、名称;所述线对象的参数为颜色、线型、长度、名称。
6. —种拓扑图构造系统,其特征在于,包括对象构造单元,用于获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象;拓扑图构造单元,用于根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。
7. 根据权利要求6所述的系统,其特征在于,所述拓扑图构造单元包括对象确定子单元,用于确定第一点对象、第二点对象和第一线对象;关联子单元,用于利用所述第一线对象连接所述第一点对象和第二点对象,形成连接线;构造子单元,用于对于任意两条连接线,如果有两个端点相同,则将相同的端点合并。
8. 根据权利要求6或7任意一项所述的系统,其特征在于,还包括渲染单元,用于对所述点对象和线对象进行渲染;展示单元,用于利用经渲染的点对象和线对象展示所构造的当前业务资源实体的拓扑图。
9. 根据权利要求8所述的系统,其特征在于,所述渲染单元包括参数确定子单元,用于确定所述点对象和所述线对象的参数;渲染子单元,用于根据所述点对象和所述线对象的参数渲染出对象实体;其中所述点对象的参数为颜色、形状、大小、名称;所述线对象的参数为颜色、线型、长度、名称。
全文摘要
本申请实施例公开了一种网络资源拓扑图构造方法和系统,其中,所述方法包括获取业务资源实体,并根据所述业务资源实体构造业务层点对象和线对象;根据业务资源实体之间的连接关系,利用所述线对象为两个点对象建立关联,根据所述关联构造当前业务资源实体的拓扑图。本申请实施例所提供的方法,以MVC架构为基础,以FLEX技术实现,将网络资源抽象为简单的对象即可以构造网络资源的拓扑图,极大地降低了构造网络资源拓扑图的时间,提高了网络资源拓扑图的构造效率。
文档编号H04L12/24GK101777993SQ20091024383
公开日2010年7月14日 申请日期2009年12月23日 优先权日2009年12月23日
发明者邢忠贤, 陈建慧 申请人:大唐软件技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1