用于网络管理系统的拓扑编译器技术方案

技术编号:36179589 阅读:9 留言:0更新日期:2022-12-31 20:36
一种用于网络管理系统的拓扑编译器。一种管理多个网络设备的示例控制器设备包括一个或多个处理单元,其在电路中实现并且被配置为经由应用编程接口(API)框架接收意图的指示。该意图包括指示对数据结构的更新的数据,该数据结构包括表示多个网络设备的多个节点和连接多个节点的多个边。该一个或多个处理单元还被配置为处理该意图以从多个拓扑编译器中选择拓扑编译器,并且经由API框架,使用多个网络设备中的网络设备的角色和网络设备的指示作为输入来调用所选择的拓扑编译器,以生成抽象配置信息。该一个或多个处理单元还被配置为基于抽象配置信息来配置网络设备。于抽象配置信息来配置网络设备。于抽象配置信息来配置网络设备。

【技术实现步骤摘要】
用于网络管理系统的拓扑编译器
[0001]本申请要求2021年6月30日提交的美国专利申请第17/305,118号的权益,其全部内容通过引用并入本文。


[0002]本公开涉及计算机网络,更具体地,涉及网络设备的管理。

技术介绍

[0003]计算机网络是能够交换数据和共享资源的互连计算设备的集合。各种设备操作以促进计算设备之间的通信。例如,计算机网络可以包括路由器、交换机、网关、防火墙和各种其他设备以提供和促进网络通信。
[0004]这些网络设备通常包括用于本地或远程配置设备的机制,诸如管理接口。通过与管理界面交互,客户端可以执行配置任务以及执行操作命令,以收集和查看管理的设备的操作数据。例如,客户端可以配置设备的接口卡、调整用于支持的网络协议的参数、指定设备内的物理组件、修改由路由器维护的路由信息、访问驻留在设备上的软件模块和其他资源、以及执行其他配置任务。此外,客户端可以允许用户查看当前操作参数、系统日志、与网络连通性有关的信息、网络活动或来自设备的其他状态信息,以及查看从设备接收的事件信息并且对其作出反应。
[0005]网络配置服务可以由多个不同的设备来执行,诸如具有服务卡的路由器和/或专用服务设备。这种服务包括连通性服务,诸如第三层虚拟专用网络(L3VPN)、虚拟专用局域网服务(VPLS)和对等(P2P)服务。其他服务包括诸如Dot1q VLAN服务的网络配置服务。也称为控制器或控制器设备的网络管理系统(NMS)和NMS设备可以支持这些服务,使得管理员可以容易地创建和管理这些高等级网络配置服务。
[0006]具体地,设备的用户配置可以被称为“意图(intent)”。基于意图的网络系统允许管理员描述意图的网络/计算/存储状态。用户意图可以分类为业务策略和无状态意图。可以基于网络的当前状态来解析业务策略或有状态的意图。无状态意图可以是描述所意图的网络/计算/存储状态的完全声明性方式,而不考虑当前网络状态。
[0007]意图可以被表示为意图数据模型,其可以使用统一图来建模。意图数据模型可以表示为连接的图,使得可以跨意图数据模型来实现业务策略。例如,数据模型可以使用具有利用has

边和参考(ref)边连接的顶点的连接的图来表示。控制器设备可以将意图数据模型建模为统一图,使得可以将图模型表示为连通的。以这种方式,可以跨意图数据模型实现业务策略。当使用统一图模型对意图进行建模时,扩展新的意图支持需要扩展图模型和编译逻辑。
[0008]为了配置设备以执行意图,用户(诸如,管理员)可以编写转译程序,该转译程序将高等级配置指令(例如,根据意图数据模型的指令,其可以被表示为统一图模型)转译成低等级配置指令(例如,根据设备配置模型的指令)。作为配置服务支持的部分,用户/管理员可以提供意图数据模型以及意图数据模型到设备配置模型之间的映射。
[0009]为了简化针对用户的映射定义,控制器设备可以被设计为以简单的方式提供定义映射的能力。例如,一些控制器设备提供速率(Velocity)模板和/或可扩展样式表语言转换(XSLT)的使用。这样的转译器包含从意图数据模型到低等级设备配置模型的转译或映射逻辑。通常,意图数据模型中相对小数目的更改会影响跨设备配置的相对大数目的属性。当从意图数据模型创建、更新和删除服务时,可以使用不同的转译器。

技术实现思路

[0010]一般而言,本公开描述了用于管理网络设备的技术。本文也称为控制器或控制器设备的网络管理系统(NMS)设备可以被配置为将高等级配置(从管理员接收到的针对多个管理的网络设备的意图)转译为低等级配置(将应用于管理的网络设备本身)。在一些情况下,控制器设备可以接收对资源设备的拓扑和角色的指示,并且生成针对资源设备的设备等级配置信息。例如,管理员(例如,人)可以选择针对资源设备的拓扑(例如,脊或叶、3级Clos或5级Clos)和角色,并且提供意图。在一些示例中,控制器设备可以基于资源设备的角色、拓扑和意图来生成针对资源设备的设备等级配置。在一些情况下,由管理员提供给控制器设备的意图可以与多个(例如,多于10个、多于20个等)角色相关联。随着角色数目的增加,操作控制器设备的复杂性增加,这可能导致管理员将不正确的角色或拓扑分配给资源设备,使得控制器设备不能正确地实现意图。
[0011]根据本公开的技术,控制器设备可以支持多个拓扑编译器,其中每个拓扑编译器与相应的拓扑相关联。例如,第一拓扑编译器可以与3级Clos网络相关联,并且第二拓扑编译器可以与5级Clos网络相关联。拓扑编译器可以被配置为将规则分配给每个资源设备,而不是依赖于管理员将角色分配给每个资源设备。以这种方式,可以利用来自管理员的较少交互来实现使用拓扑来设置结构,这可以提高结构的可靠性。
[0012]此外,支持拓扑的每个资源设备可以调用分配给该拓扑的相应的拓扑编译器,而不是依赖于针对所有拓扑的指令集。例如,第一资源设备可以调用3级Clos网络拓扑编译器以及第一资源设备的角色的指示,并且3级Clos网络拓扑编译器可以生成针对第一资源设备的抽象配置。在该示例中,第一资源设备可以生成设备等级配置信息以将第一资源设备配置为实现由管理员提供的意图。以这种方式,针对资源设备的资源控制器可以根据所选择的拓扑自动生成必要的配置信息,这可以减少用于配置资源设备以实现意图的时间。
[0013]此外,控制器设备可以实现“可扩展框架”,其可以在维护公共框架的同时,允许一个或多个附加的拓扑编译器。以这种方式,控制器设备可以被配置为在运行时操作现有拓扑的同时,支持新的拓扑,而不修改针对现有拓扑的框架。
[0014]在一个示例中,一种方法包括由管理多个网络设备的控制器设备,经由应用编程接口(API)框架接收意图的指示。该意图包括指示对数据结构的更新的数据,该数据结构包括表示多个网络设备的多个节点和连接多个节点的多个边。该方法还包括由控制器设备处理该意图以从多个拓扑编译器中选择拓扑编译器,以及由控制器设备经由API框架,使用多个网络设备中的网络设备的角色和网络设备的指示作为输入来调用所选择的拓扑编译器,以生成抽象配置信息。该方法还包括由控制器设备基于抽象配置信息来配置网络设备。
[0015]在另一示例中,一种管理多个网络设备的控制器设备包括一个或多个处理单元,一个或多个处理单元被实现在电路中并且被配置为经由应用编程接口(API)框架接收意图
的指示。该意图包括指示对数据结构的更新的数据,该数据结构包括表示多个网络设备的多个节点和连接多个节点的多个边。该一个或多个处理单元还被配置为处理该意图以从多个拓扑编译器中选择拓扑编译器,以及经由API框架,使用多个网络设备中的网络设备的角色和网络设备的指示作为输入来调用所选择的拓扑编译器,以生成抽象配置信息。该一个或多个处理单元还被配置为基于抽象配置信息来配置网络设备。
[0016]在一个示例中,一种其上存储有指令的计算机可读存储介质,指令在被执行时使一种管理多个网络设备的控制器设备的处理器经由应用编程接口(API)框架本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:由管理多个网络设备的控制器设备经由应用编程接口API框架来接收意图的指示,其中所述意图包括指示对数据结构的更新的数据,所述数据结构包括表示所述多个网络设备的多个节点以及连接所述多个节点的多个边;由所述控制器设备处理所述意图以从多个拓扑编译器中选择拓扑编译器;由所述控制器设备经由所述API框架,使用所述多个网络设备中的网络设备的角色和所述网络设备的指示作为输入来调用所选择的所述拓扑编译器,以生成抽象配置信息;以及由所述控制器设备基于所述抽象配置信息来配置所述网络设备。2.根据权利要求1所述的方法,其中所述多个拓扑编译器中的每个拓扑编译器包括可插拔编译器,所述可插拔编译器被配置为符合由所述API框架可调用的标准。3.根据权利要求1所述的方法,还包括:由所述控制器设备接收所述多个网络设备的指示;由所述控制器设备确定针对所述多个设备的连通性信息;由所述控制器设备基于所述连通性信息来选择针对所述多个网络设备的拓扑,其中所选择的所述拓扑编译器与所选择的所述拓扑相关联;以及由所述控制器设备经由所述API框架,使用所述连通性信息作为输入来调用所选择的所述拓扑编译器,以确定所述网络设备的所述角色。4.根据权利要求3所述的方法,其中,调用所选择的所述拓扑编译器以确定所述网络设备的所述角色响应于用户交互指示对所选择的所述拓扑的确认。5.根据权利要求1至3中任一项所述的方法,其中,配置所述网络设备包括:基于所述抽象配置来确定针对所述网络设备的设备等级配置,以及将所述设备等级配置的指示输出到所述网络设备。6.根据权利要求1至3中任一项所述的方法,其中,所述多个拓扑编译器中的每个拓扑编译器与多个拓扑中的相应拓扑相关联。7.根据权利要求6所述的方法,其中,所述多个拓扑包括3级Clos网络拓扑、5级Clos网络拓扑或者脊和叶拓扑中的一个或多个。8.根据权利要求1至3中的任一项所述的方法,其中,所述多个边定义所述多个节点之间的关系。9.根据权利要求1至3中任一项所述的方法,其中,所述数据结构包括图模型。10.根据权利要求1至3中任一项所述的方法,其中,所述多个拓扑编译器中的每个拓扑编译器包括由所述控制器设备可执行的二进制文件。11.根据权利要求1至3中任一项所述的方法,其中,所述网络设备包括资源设备或服务设备中的一个或多个设备。12.一种控制器设备,其管理多个网络设备,所述控制器设备包括一个或多个处理单元,所述一个或多个处理单元被实现在电路中并且被配置为:经由应用编程接口API框架来接收意图的指示,其中...

【专利技术属性】
技术研发人员:M
申请(专利权)人:瞻博网络公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1