CN110855457A - 生成网络模型以及配置网络的方法、设备 - Google Patents

生成网络模型以及配置网络的方法、设备 Download PDF

Info

Publication number
CN110855457A
CN110855457A CN201810949801.0A CN201810949801A CN110855457A CN 110855457 A CN110855457 A CN 110855457A CN 201810949801 A CN201810949801 A CN 201810949801A CN 110855457 A CN110855457 A CN 110855457A
Authority
CN
China
Prior art keywords
network
configuration
topology
network model
protocol
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
Application number
CN201810949801.0A
Other languages
English (en)
Other versions
CN110855457B (zh
Inventor
吴鑫
王春生
马效东
佘敦成
程飙
郭天晨
许辉
马卿
张铭
刘洪强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810949801.0A priority Critical patent/CN110855457B/zh
Publication of CN110855457A publication Critical patent/CN110855457A/zh
Application granted granted Critical
Publication of CN110855457B publication Critical patent/CN110855457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种生成网络模型以及配置网络的方案,该方案中的网络模型的每个拓扑层可以准确描述网络中网络设备之间的拓扑关系信息,而各个拓扑层之间可以根据网络的实际配置情况灵活关联,因此该分层的网络模型能够方便、准确地描述不同网络的配置情况,而在配置网络时,可以利用上述分层的网络模型,不直接对网络设备进行配置,而是通过设定目标网络的网络模型,计算其与当前网络的网络模型之间的差异,来生成对网络设备进行相应配置的配置命令,因此可以精准地定义网络在实现生命周期时的配置差异,有效管理网络配置的生命周期。

Description

生成网络模型以及配置网络的方法、设备
技术领域
本申请涉及信息技术领域,尤其涉及一种生成网络模型以及利用网络模型配置网络的方案。
背景技术
网络设备的行为是由其配置定义的,网络配置有其自身的生命周期,主要包括网络新建、单设备变更和全网变更。在网络新建时,初始配置命令被全量的推送到网络设备上,在单设备变更时,配置命令会被增量的推送到单个网络设备上,而在全网变更时,多个设备的配置需要遵循一个事先规定的计划,一步步从初始状态变化为目标状态,才能确保整个变更过程平滑,不影响部署的业务。但是,目前没有一种较好的方式能够实现对网络配置的整个生命周期进行有效的管理。
申请内容
本申请的一个目的是提供一种生成网络模型以及利用生成的网络模型配置网络的方案,用以解决无法有效管理网络配置的整个生命周期的问题。
为实现上述目的,本申请提供了一种生成网络模型的方法,该方法包括:
获取网络的配置信息;
根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息;
确定所述多个拓扑层之间的关联关系。
此外,本申请还提供了一种配置网络的方法,该方法包括:
获取当前网络的第一网络模型和目标网络的第二网络模型,其中,所述网络模型包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应;
根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量;
根据所述待变更的配置变量,生成配置命令;
将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。
基于本申请的另一方面,还提供了一种生成网络模型的设备,配置获取装置,用于获取网络的配置信息;
模型构建装置,用于根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,以及根据数据传输时对数据逐层封装的依赖顺序,确定所述多个拓扑层之间的关联关系,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息。
此外,本申请实施例还提供了一种配置网络的设备,该设备包括:
模型获取装置,用于获取当前网络的第一网络模型和目标网络的第二网络模型,其中,所述网络模型包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应;
变更管控装置,用于根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量,以及将配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置;
配置生成装置,用于根据所述待变更的配置变量,生成配置命令。
此外,本申请实施例还提供了一种计算设备,包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行前述生成网络模型的方法或配置网络的方法。
本申请提供了一种生成网络模型的方案,该方案首先获取网络的配置信息,然后根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,进而确定所述多个拓扑层之间的关联关系,由于每个拓扑层可以准确描述网络中网络设备之间的拓扑关系信息,而各个拓扑层之间可以根据网络的实际配置情况灵活关联,因此该分层的网络模型能够方便、准确地描述不同网络的配置情况。
而在配置网络时,可以利用上述分层的网络模型,不直接对网络设备进行配置,而是通过设定目标网络的网络模型,计算其与当前网络的网络模型之间的差异,来生成对网络设备进行相应配置的配置命令,然后将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。由于上述分层的网络模型能够方便、准确地描述不同网络的配置情况,通过目标网络和当前网络的网络模型对比,可以精准地定义网络在实现生命周期时的配置差异,因此可以有效管理网络配置的生命周期。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例提供的一种生成网络模型的方法的处理流程图;
图2为本申请实施例的网络中物理拓扑层的拓扑图;
图3为本申请实施例的网络中逻辑拓扑层的拓扑图;
图4为本申请实施例的网络中BGP协议拓扑层的拓扑图;
图5为本申请实施例的网络中多个拓扑层之间的关联关系示意图;
图6为本申请实施例提供的一种配置网络的方法的处理流程图;
图7为本申请实施例中配置网络时当前网络和目标网络的示意图;
图8为本申请实施例中配置网络时的配置变更计划的示意图;
图9为本申请实施例中在配置过程中进行检查的处理流程示意图;
图10为本申请实施例提供的一种生成网络模型的设备的结构示意图;
图11为本申请实施例提供的一种配置网络的设备的结构示意图;
图12为本申请实施例提供的一种计算设备的结构示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的装置或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本申请实施例提供了一种生成网络模型的方法以及利用该网络模型来配置网络的方法,该方法中的网络模型包括多个拓扑层,这些拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,且多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应,可以根据网络的实际配置情况灵活关联,因此该分层的网络模型能够方便、准确地描述不同网络的配置情况。在配置网络时,通过目标网络和当前网络的网络模型对比,可以精准地定义网络在实现生命周期时的配置差异,因此可以有效管理网络配置的生命周期,实现网络的新建、变更、迁移等一系列配置操作。在本申请实施例中,上述方法的执行主体可以包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
图1示出了本申请实施例提供的一种生成网络模型的方法,其中,该方法包括:
步骤S101,获取网络的配置信息。在实际场景中,网络内会包含多个网络设备,所述网络设备是指在网络中用于实现数据互联的设备,例如可以包括中继器、网桥、路由器、网关、防火墙、交换机等,其数量根据网络规模的大小而定,对于大规模的网络,其包含的网络设备的数量亦会十分庞大。
在获取网络的配置信息时,可以先获取网络中每个网络设备的配置文本。配置文本一般会以配置文件的形式保存,由此可以向每个网络设备调取其当前的配置文件,或者可以由同一保存网络中每个网络设备配置文件的数据库(例如网络的配置中心)中调取这些配置文件,进而从配置文件中读取相应的配置文本。由于配置信息会以特定格式形成配置文本,因此在读取到配置文件之后,可以解析所述配置文本,获取每个网络设备的配置信息。例如,配置文本中某部分的内容如下:
IPADDR=192.168.0.110
NETMASK=255.255.255.0
BROADCAST=192.168.0.255
GATEWAY=192.168.0.1
DNS1=202.202.202.222
DNS2=222.222.222.222
其具有一定格式,例如“IPADDR=”之后“X.X.X.X”形式的内容为IP地址,“NETMASK=”之后“X.X.X.X”形式的内容为子网掩码。由此,通过解析该部分配置文本可以获知,该网络设备相关配置信息:IP地址为192.168.0.110、子网掩码为255.255.255.0、广播地址为192.168.0.255,网关地址为192.168.0.1,域名系统地址为202.202.202.222和222.222.222.222。在此,本领域技术人员应当理解,上述配置文本中包含的内容仅为举例,实际场景中配置文本将包含更多的内容,并且由于不同网络设备在网络中起到的作用不同,不同网络设备对应的配置文本中包含的内容也会有所不同。
在解析获得配置信息之后,可以关联所述网络设备,从而获取所述获取网络的配置信息。在关联所述网络设备时,可以利用配置信息中能够描述各个网络设备之间关联关系的信息,例如通过路由表可以确定一个网络设备在接收到数据包时会将该数据包发送至哪个网络设备,由此可以确定两个网络设备之间会存在关联。通过关联网络内的网络设备,可以组合各个网络设备的配置信息,进而获得这些网络设备所在的整个网络的配置信息。
步骤102,根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层。
在实际场景中,所述拓扑层至少包括物理拓扑层和协议拓扑层,为了可以生成物理拓扑层和协议拓扑层,网络的配置信息中至少需要包括网络设备之间的物理链路、所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,由此,可以根据所述网络设备之间的物理链路确定物理拓扑层,并根据所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,确定多个协议拓扑层。其中,所述物理拓扑层用于描述所述网络设备之间在物理链路上的拓扑关系信息,例如两个网络设备是否通过通信线缆连接,而所述协议拓扑层用于描述所述网络设备之间关于对应协议的拓扑关系信息,例如两个网络设备是否为协议上的邻居关系(Neighbor),每个拓扑层包含的信息可以采用拓扑图的方式来表示。
对于物理拓扑层,网络设备之间在物理链路上的拓扑关系信息包括网络设备的节点标识以及网络设备之间连接的物理链路。例如,图2为物理拓扑层的拓扑图,其中,网络设备的节点标识为节点WAN、DCA和DCB,分别表示三个网络设备,两个节点之间的连线表示两个网络设备之间存在的物理链路,例如通过网线连接了两个网络设备。其中,节点WAN和节点DCA之间具有两条物理链路,两端的物理端口分别为eth1和eth2,节点WAN和节点DCB之间具有一条物理链路,两端的物理端口为eth3,节点DCA和节点DCB之间具有一条物理链路,两端的物理端口为eth4,由此可知节点WAN、DCA和DCB两两之间均存在连接的物理链路。
图3和图4为两个协议拓扑层。其中图3对应LACP(Link Aggregation ControlProtocol,链路汇聚控制协议),节点WAN、DCA和DCB分别表示三个网络设备,两个节点之间的连线表示两个网络设备之间存在的逻辑链路,因此LACP对应的协议拓扑层也可以称为逻辑拓扑层。图4对应BGP(Border Gateway Protocol,边界网关协议),节点WAN、DCA和DCB分别表示三个网络设备,对应三个AS(Autonomous System,自治系统),节点WAN和节点DCA之间的连线以及节点WAN和节点DCB之间的连线,表示两者之间分别为邻居关系。
对于协议拓扑层,所述网络设备之间关于对应协议的拓扑关系信息可以包括网络设备的节点标识以及网络设备之间关于对应协议的连接路径。例如图3中,节点WAN和节点DCA之间具有一条逻辑链路,该条逻辑链路的PC(port channel,端口隧道)汇聚了两个物理端口eth1和eth2,聚合为一个逻辑端口,由此将两条物理链路汇聚为一条逻辑链路,该条逻辑链路即为节点WAN和节点DCA之间关于LACP的连接路径。该条逻辑链路两端的逻辑端口所汇聚的物理端口以及IP地址分别为192.168.0.1和192.168.0.0,即为LACP的属性。节点WAN和节点DCB之间具有一条逻辑链路,对应一条物理链路,逻辑端口和物理端口一一对应,两端的端口IP地址分别为192.168.1.1和192.168.1.0。类似地,节点DCA和节点DCB之间同样具有一条逻辑链路。
图4中,节点WAN、DCA和DCB所对应三个AS的ASN(Autonomous System Number,自治系统号)分别为100、300和400。节点WAN和节点DCA之间的连线以及节点WAN和节点DCB之间的连线,表示两者分别为邻居关系,并且包含了数据接收和发送时的路由策略,该路由策略为BGP的属性,例如对于节点WAN,“IN=allow prefix-list DCB.net”为BGP协议在该节点上的入方向策略,表示节点WAN允许接收DCB.net这条路由的数据。而“OUT=allow prefix-list agg=10.0.0.0/8”为BGP协议在该节点上的出方向策略,表示节点WAN允许发送10.0.0.0/8这条路由的数据。类似地,对于节点DCB,“IN==allow prefix-list agg=10.0.0.0/8”为BGP协议在该节点上的入方向策略,表示节点DCB允许接收10.0.0.0/8这条路由的数据,而“OUT=allow prefix-list DCB.net”为BGP协议在该节点上的出方向策略,表示节点DCB允许发送DCB.net这条路由的数据。
步骤S103,确定所述多个拓扑层之间的关联关系,由此可以生成分层的网络模型。
本申请实施例中,在确定所述多个拓扑层之间的关联关系时,可以根据数据传输时对数据逐层封装的依赖顺序。由于数据在传输时需要添加相应的包头来进行封装,为相关协议的工作提供信息,例如BGP协议工作时需要依赖IP包头。数据在添加包头时会存在一定的依赖关系,例如“数据|TCP包头|IP包头|MPLS包头”为数据封装时的一种依赖顺序,即数据在发送时会先在头部加上添加TCP包头,包含TCP相关的四层协议工作所需的信息,然后在TCP包头之外再添加IP包头,包含IP相关的三层协议工作所需的信息,IP包头之外还可以添加MPLS包头,使得数据包可以利用标记(label)进行数据转发。在实际场景中,根据网络构架的不同,IP包头之外还可以添加MAC包头,为二层协议工作提供必要的信息。
在确定所述多个拓扑层之间的关联关系时,物理拓扑层会与二层协议对应的协议拓扑层之间的关联关系,例如LACP的协议拓扑层(逻辑拓扑层),而对于协议拓扑层,仅有数据封装的依赖顺序相邻的协议拓扑层之间会存在关联关系,例如BGP协议拓扑层与LACP协议拓扑层会与存在关联关系,若节点DCA的配置信息中存在多个VRF(Virtual RoutingForwarding),则BGP协议拓扑层中的多个节点会关联到LACP协议拓扑层中的一个节点。而赖顺序相邻的协议拓扑层之间则不会存在关联关系,例如BGP协议拓扑层不会跨过LACP协议拓扑层,而直接与物理拓扑层进行存在关联关系。例如,对于以下几个拓扑层,其关联关系如图5所示,由下至上依次为:物理拓扑层501,逻辑拓扑层502,IGP协议拓扑层503,BGP协议拓扑层504以及Segment Routing协议拓扑层505。
由于前述分层的网络模型能够方便、准确地描述不同网络的当前配置情况,可以利用该网络模型来配置网络,以显示对网络配置过程中全生命周期的管理。由此,本申请实施例提供了一种配置网络的方法,该方法的处理流程如图6所示,包括如下处理步骤:
步骤S601,获取当前网络的第一网络模型和目标网络的第二网络模型。所述当前网络是指在进行配置之前的网络,而目标网络是配置完成之后预期的网络,本方法的目的在于通过向网络设备下发配置命令,使得当前网络变更为目标网络。例如,图7中,网络710即为当前网络,而网络740为目标网络。
第一和第二所述网络模型均是指前述分层的网络模型,包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应。当前网络的第一网络模型可以采用前述生成网络模型的方法来生成,而目标网络的第二网络模型,可以有网络管理员在第一网络模型的基础上直接修改获得,也可以基于需要的目标网络的配置信息采用前述生成网络模型的方法来生成。
步骤S602,根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量。所述待变更的配置变量是与厂商无关,用于表示网络需要改变时网络设备需要发生变化的配置信息,例如以图7为例,由于需要加入新的节点MAN,并且节点WAN和DC1、DC2之间拓扑关系会发生改变,因此在第一网络模型和第二网络模型中,各个拓扑层均会产生差异,例如物理拓扑层中各个节点之间的物理链路需要发生变化、逻辑链路的聚合策略需要发生变化、自治系统的划分或者邻居关系需要发生变化等,这些发生变化的差异信息需要通过配置的改变来实现,由此会有对应的待变更的配置变量。
步骤S603,根据所述待变更的配置变量,生成配置命令。在实际场景中,由于不同厂商之间会有不同的标准,不同厂商的网络设备在实现相同的配置操作时,其配置命令可能会不同,因此可以预先存储各个厂商的配置命令模版,当需要生成关于某一厂商的配置命令时,根据所述待变更的配置变量对应的网络设备,获取与所述网络设备的厂商相关的配置命令模版,然后将所述配置命令模版中的变量值替换为所述待变更的配置变量,由此可以快速生成与所述网络设备的厂商相关的配置命令。
步骤S604,将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。由此,网络管理员在需要对网络进行配置时,无需操作网络设备,直接在每个网络设备中修改配置信息,而是提供目标网络的第二网络模型即可,配置网络的设备可以通过获取当前网络的配置信息,生成当前网络的第一网络模型,并与输入的目标网络的第二网络模型进行比较,进而自动生成并下发各个网络设备的配置命令。根据第一网络模型和第二网络模型之间的不同差异,可以方便地实现网络新建、单设备变更和全网变更等全生命周期的管理。
在本申请的一种实施例中,在根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量时,可以根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,生成配置变更计划,其中,所述配置变更计划包括将当前网络变更至目标网络所需的多个配置步骤,所述配置步骤包括至少一个待变更的配置变量。以图7所示的网络为例,在由当前网络710的网络模型变更至目标网络740的网络模型时,若直接由进行变更,可能会引起造成网络的中断,影响部署于当前网络上的应用对外提供服务。因此,可以生成配置变更计划,使其包含三个配置步骤Step1、Step2和Step3,每个配置步骤都包含相应的配置变量,完成之后都会对应一个过渡状态的网络,如图8所示。
而在生成每个配置步骤中待变更的配置变量所对应的配置命令之后,可以按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤。例如,可以先将配置步骤Step1对应的配置命令发送给网络设备,使得网络设备执行,从而完成配置步骤Step1,此时该网络会变化为720。然后,将配置步骤Step2对应的配置命令发送给网络设备,使得网络设备执行,从而完成配置步骤Step2,此时该网络会变化为730,进而配置步骤Step4之后该网络变化为最终的目标网络740,由此逐步由当前网络过渡至目标网络,从而保证在网络变更中避免或者减少对当前网络的影响。
在按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤的过程中,若其中一个配置步骤出现问题,例如某一个网络设备的某项配置未修改成功,此时后续的配置步骤将无法进行。因此,可以在每个步骤完成时对过渡状态的网络进行检查,以确保每一个配置步骤都正确的完成。图9示出了在配置过程中进行检查的处理流程,包括以下的处理步骤:
步骤S901,按照配置步骤的顺序将所述配置变更计划中一个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行所述配置步骤对应的配置命令。例如,例如首先发送第一个配置步骤Step1对应的配置命令,在网络设备执行并通过检查之后,再发送第二个配置步骤Step2对应的配置命令,以此类推直至发送完所有配置步骤对应的配置命令。
步骤S902,获取执行配置命令后当前网络的第三网络模型。例如配置步骤Step1实际完成后会形成过渡状态的网络720,通过获取该网络720的配置信息,可以生成其对应的第三网络模型,而在理想状态下,若配置步骤Step1顺利完成将会形成一个预期的第四网络模型。
步骤S903,将所述第三网络模型与所述配置步骤完成后预期的第四网络模型进行比较。
步骤S904,若所述第三网络模型和所述第四网络模型一致,则表示配置步骤中的配置命令已经顺利执行,由此可以确定完成所述配置步骤,并按照顺序重新由步骤S901开始处理下一个配置步骤,直至完成所有配置步骤。
步骤S905,若所述第三网络模型和所述第四网络模型不一致,则表示配置步骤中的配置命令未顺利执行,此时可以控制所述网络设备撤销所述配置步骤对应的配置命令,并重新处理所述配置步骤。由此,可以保证每一个配置步骤的原子性,避免因部分配置未完成而影响网络的正常服务。
基于同一发明构思,本申请实施例中还提供了生成网络模型的设备以及利用该网络模型来配置网络的设备,所述设备对应的方法是前述实施例中生成网络模型的方法和配置网络的方法,并且其解决问题的原理与所述方法相似。
本申请实施例提供的生成网络模型的设备以及配置网络的设备,可以采用网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
图10示出了本申请实施例提供的一种生成网络模型的设备,该设备包括配置获取装置1010和模型构建装置1020。其中,配置获取装置1010用于获取网络的配置信息。在实际场景中,网络内会包含多个网络设备,所述网络设备是指在网络中用于实现数据互联的设备,例如可以包括中继器、网桥、路由器、网关、防火墙、交换机等,其数量根据网络规模的大小而定,对于大规模的网络,其包含的网络设备的数量亦会十分庞大。
在获取网络的配置信息时,可以先获取网络中每个网络设备的配置文本。配置文本一般会以配置文件的形式保存,由此可以向每个网络设备调取其当前的配置文件,或者可以由同一保存网络中每个网络设备配置文件的数据库(例如网络的配置中心)中调取这些配置文件,进而从配置文件中读取相应的配置文本。由于配置信息会以特定格式形成配置文本,因此在读取到配置文件之后,可以解析所述配置文本,获取每个网络设备的配置信息。例如,配置文本中某部分的内容如下:
IPADDR=192.168.0.110
NETMASK=255.255.255.0
BROADCAST=192.168.0.255
GATEWAY=192.168.0.1
DNS1=202.202.202.222
DNS2=222.222.222.222
其具有一定格式,例如“IPADDR=”之后“X.X.X.X”形式的内容为IP地址,“NETMASK=”之后“X.X.X.X”形式的内容为子网掩码。由此,通过解析该部分配置文本可以获知,该网络设备相关配置信息:IP地址为192.168.0.110、子网掩码为255.255.255.0、广播地址为192.168.0.255,网关地址为192.168.0.1,域名系统地址为202.202.202.222和222.222.222.222。在此,本领域技术人员应当理解,上述配置文本中包含的内容仅为举例,实际场景中配置文本将包含更多的内容,并且由于不同网络设备在网络中起到的作用不同,不同网络设备对应的配置文本中包含的内容也会有所不同。
在解析获得配置信息之后,可以关联所述网络设备,从而获取所述获取网络的配置信息。在关联所述网络设备时,可以利用配置信息中能够描述各个网络设备之间关联关系的信息,例如通过路由表可以确定一个网络设备在接收到数据包时会将该数据包发送至哪个网络设备,由此可以确定两个网络设备之间会存在关联。通过关联网络内的网络设备,可以组合各个网络设备的配置信息,进而获得这些网络设备所在的整个网络的配置信息。
模型构建装置1020用于根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,以及确定所述多个拓扑层之间的关联关系,由此可以生成分层的网络模型。
在实际场景中,所述拓扑层至少包括物理拓扑层和协议拓扑层,为了可以生成物理拓扑层和协议拓扑层,网络的配置信息中至少需要包括网络设备之间的物理链路、所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,由此,可以根据所述网络设备之间的物理链路确定物理拓扑层,并根据所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,确定多个协议拓扑层。其中,所述物理拓扑层用于描述所述网络设备之间在物理链路上的拓扑关系信息,例如两个网络设备是否通过通信线缆连接,而所述协议拓扑层用于描述所述网络设备之间关于对应协议的拓扑关系信息,例如两个网络设备是否为协议上的邻居关系(Neighbor),每个拓扑层包含的信息可以采用拓扑图的方式来表示。
对于物理拓扑层,网络设备之间在物理链路上的拓扑关系信息包括网络设备的节点标识以及网络设备之间连接的物理链路。例如,图2为物理拓扑层的拓扑图,其中,网络设备的节点标识为节点WAN、DCA和DCB,分别表示三个网络设备,两个节点之间的连线表示两个网络设备之间存在的物理链路,例如通过网线连接了两个网络设备。其中,节点WAN和节点DCA之间具有两条物理链路,两端的物理端口分别为eth1和eth2,节点WAN和节点DCB之间具有一条物理链路,两端的物理端口为eth3,节点DCA和节点DCB之间具有一条物理链路,两端的物理端口为eth4,由此可知节点WAN、DCA和DCB两两之间均存在连接的物理链路。
图3和图4为两个协议拓扑层。其中图3对应LACP(Link Aggregation ControlProtocol,链路汇聚控制协议),节点WAN、DCA和DCB分别表示三个网络设备,两个节点之间的连线表示两个网络设备之间存在的逻辑链路,因此LACP对应的协议拓扑层也可以称为逻辑拓扑层。图4对应BGP(Border Gateway Protocol,边界网关协议),节点WAN、DCA和DCB分别表示三个网络设备,对应三个AS(Autonomous System,自治系统),节点WAN和节点DCA之间的连线以及节点WAN和节点DCB之间的连线,表示两者之间分别为邻居关系。
对于协议拓扑层,所述网络设备之间关于对应协议的拓扑关系信息可以包括网络设备的节点标识之间关于对应协议的连接路径。例如图3中,节点WAN和节点DCA之间具有一条逻辑链路,该条逻辑链路的PC(port channel,端口隧道)汇聚了两个物理端口eth1和eth2,聚合为一个逻辑端口,由此将两条物理链路汇聚为一条逻辑链路,该条逻辑链路即为节点WAN和节点DCA之间关于LACP的连接路径。该条逻辑链路两端的逻辑端口所汇聚的物理端口以及IP地址分别为192.168.0.1和192.168.0.0,即为LACP的属性。节点WAN和节点DCB之间具有一条逻辑链路,对应一条物理链路,逻辑端口和物理端口一一对应,两端的端口IP地址分别为192.168.1.1和192.168.1.0。类似地,节点DCA和节点DCB之间同样具有一条逻辑链路。
图4中,节点WAN、DCA和DCB所对应三个AS的ASN(Autonomous System Number,自治系统号)分别为100、300和400。节点WAN和节点DCA之间的连线以及节点WAN和节点DCB之间的连线,表示两者分别为邻居关系,并且包含了数据接收和发送时的路由策略,该路由策略为BGP的属性,例如对于节点WAN,“IN=allow prefix-list DCB.net”为BGP协议在该节点上的入方向策略,表示节点WAN允许接收DCB.net这条路由的数据。而“OUT=allow prefix-list agg=10.0.0.0/8”为BGP协议在该节点上的出方向策略,表示节点WAN允许发送10.0.0.0/8这条路由的数据。类似地,对于节点DCB,“IN==allow prefix-list agg=10.0.0.0/8”为BGP协议在该节点上的入方向策略,表示节点DCB允许接收10.0.0.0/8这条路由的数据,而“OUT=allow prefix-list DCB.net”为BGP协议在该节点上的出方向策略,表示节点DCB允许发送DCB.net这条路由的数据。
由于数据在传输时需要添加相应的包头来进行封装,为相关协议的工作提供信息,例如BGP协议工作时需要依赖IP包头。数据在添加包头时会存在一定的依赖关系,例如“数据|TCP包头|IP包头|MPLS包头”为数据封装时的一种依赖顺序,即数据在发送时会先在头部加上添加TCP包头,包含TCP相关的四层协议工作所需的信息,然后在TCP包头之外再添加IP包头,包含IP相关的三层协议工作所需的信息,IP包头之外还可以添加MPLS包头,使得数据包可以利用标记(label)进行数据转发。在实际场景中,根据网络构架的不同,IP包头之外还可以添加MAC包头,为二层协议工作提供必要的信息。
在确定所述多个拓扑层之间的关联关系时,物理拓扑层会与二层协议对应的协议拓扑层之间的关联关系,例如LACP的协议拓扑层(逻辑拓扑层),而对于协议拓扑层,仅有数据封装的依赖顺序相邻的协议拓扑层之间会存在关联关系,例如BGP协议拓扑层与LACP协议拓扑层会与存在关联关系,若节点DCA的配置信息中存在多个VRF(Virtual RoutingForwarding),则BGP协议拓扑层中的多个节点会关联到LACP协议拓扑层中的一个节点。而赖顺序相邻的协议拓扑层之间则不会存在关联关系,例如BGP协议拓扑层不会跨过LACP协议拓扑层,而直接与物理拓扑层进行存在关联关系。例如,对于以下几个拓扑层,其关联关系如图5所示,由下至上依次为:物理拓扑层501,逻辑拓扑层502,IGP协议拓扑层503,BGP协议拓扑层504以及Segment Routing协议拓扑层505。
本申请实施例中,模型构建装置1020在确定所述多个拓扑层之间的关联关系时,可以根据数据传输时对数据逐层封装的依赖顺序。由于前述分层的网络模型能够方便、准确地描述不同网络的当前配置情况,可以利用该网络模型来配置网络,以显示对网络配置过程中全生命周期的管理。由此,本申请实施例还提供了一种配置网络的设备,该设备的结构如图11所示,包括模型获取装置1110、变更管控装置1120和配置生成装置1130。其中,模型获取装置1110用于获取当前网络的第一网络模型和目标网络的第二网络模型。所述当前网络是指在进行配置之前的网络,而目标网络是配置完成之后预期的网络,本设备的目的在于通过向网络设备下发配置命令,使得当前网络变更为目标网络。例如,图7中,网络710即为当前网络,而网络740为目标网络。
第一和第二所述网络模型均是指前述分层的网络模型,包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应。当前网络的第一网络模型可以采用前述生成网络模型的设备来生成,而目标网络的第二网络模型,可以有网络管理员在第一网络模型的基础上直接修改获得,也可以基于需要的目标网络的配置信息采用前述生成网络模型的设备来生成。
变更管控装置1120用于根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量。所述待变更的配置变量是与厂商无关,用于表示网络需要改变时网络设备需要发生变化的配置信息,例如以图7为例,由于需要加入新的节点MAN,并且节点WAN和DC1、DC2之间拓扑关系会发生改变,因此在第一网络模型和第二网络模型中,各个拓扑层均会产生差异,例如物理拓扑层中各个节点之间的物理链路需要发生变化、逻辑链路的聚合策略需要发生变化、自治系统的划分或者邻居关系需要发生变化等,这些发生变化的差异信息需要通过配置的改变来实现,由此会有对应的待变更的配置变量。
配置生成装置1130用于根据所述待变更的配置变量,生成配置命令。在实际场景中,由于不同厂商之间会有不同的标准,不同厂商的网络设备在实现相同的配置操作时,其配置命令可能会不同,因此可以预先存储各个厂商的配置命令模版,当需要生成关于某一厂商的配置命令时,配置生成装置可以根据所述待变更的配置变量对应的网络设备,获取与所述网络设备的厂商相关的配置命令模版,然后将所述配置命令模版中的变量值替换为所述待变更的配置变量,由此可以快速生成与所述网络设备的厂商相关的配置命令。
变更管控装置1120还用于将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。由此,网络管理员在需要对网络进行配置时,无需操作网络设备,直接在每个网络设备中修改配置信息,而是提供目标网络的第二网络模型即可,配置网络的设备可以通过获取当前网络的配置信息,生成当前网络的第一网络模型,并与输入的目标网络的第二网络模型进行比较,进而自动生成并下发各个网络设备的配置命令。根据第一网络模型和第二网络模型之间的不同差异,可以方便地实现网络新建、单设备变更和全网变更等全生命周期的管理。
在本申请的一种实施例中,变更管控装置1120在根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量时,可以根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,生成配置变更计划,其中,所述配置变更计划包括将当前网络变更至目标网络所需的多个配置步骤,所述配置步骤包括至少一个待变更的配置变量。以图7所示的网络为例,在由当前网络710的网络模型变更至目标网络740的网络模型时,若直接由进行变更,可能会引起造成网络的中断,影响部署于当前网络上的应用对外提供服务。因此,可以生成配置变更计划,使其包含三个配置步骤Step1、Step2和Step3,每个配置步骤都包含相应的配置变量,完成之后都会对应一个过渡状态的网络,如图8所示。
而在生成每个配置步骤中待变更的配置变量所对应的配置命令之后,变更管控装置可以按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤。例如,可以先将配置步骤Step1对应的配置命令发送给网络设备,使得网络设备执行,从而完成配置步骤Step1,此时该网络会变化为720。然后,将配置步骤Step2对应的配置命令发送给网络设备,使得网络设备执行,从而完成配置步骤Step2,此时该网络会变化为730,进而配置步骤Step4之后该网络变化为最终的目标网络740,由此逐步由当前网络过渡至目标网络,从而保证在网络变更中避免或者减少对当前网络的影响。
变更管控装置在按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤的过程中,若其中一个配置步骤出现问题,例如某一个网络设备的某项配置未修改成功,此时后续的配置步骤将无法进行。因此,变更管控装置可以在每个步骤完成时对过渡状态的网络进行检查,以确保每一个配置步骤都正确的完成。图9示出了在配置过程中进行检查的处理流程,包括以下的处理步骤:
步骤S901,变更管控装置按照配置步骤的顺序将所述配置变更计划中一个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行所述配置步骤对应的配置命令。例如,例如首先发送第一个配置步骤Step1对应的配置命令,在网络设备执行并通过检查之后,再发送第二个配置步骤Step2对应的配置命令,以此类推直至发送完所有配置步骤对应的配置命令。
步骤S902,变更管控装置获取执行配置命令后当前网络的第三网络模型。例如配置步骤Step1实际完成后会形成过渡状态的网络720,通过获取该网络720的配置信息,可以生成其对应的第三网络模型,而在理想状态下,若配置步骤Step1顺利完成将会形成一个预期的第四网络模型。
步骤S903,变更管控装置将所述第三网络模型与所述配置步骤完成后预期的第四网络模型进行比较。
步骤S904,若所述第三网络模型和所述第四网络模型一致,则表示配置步骤中的配置命令已经顺利执行,由此变更管控装置可以确定完成所述配置步骤,并按照顺序重新由步骤S901开始处理下一个配置步骤,直至完成所有配置步骤。
步骤S905,若所述第三网络模型和所述第四网络模型不一致,则表示配置步骤中的配置命令未顺利执行,此时变更管控装置可以控制所述网络设备撤销所述配置步骤对应的配置命令,并重新处理所述配置步骤。由此,可以保证每一个配置步骤的原子性,避免因部分配置未完成而影响网络的正常服务。
综上所述,本申请实施例提供的生成网络模型的方案中,由于每个拓扑层可以准确描述网络中网络设备之间的拓扑关系信息,而各个拓扑层之间可以根据网络的实际配置情况灵活关联,因此该分层的网络模型能够方便、准确地描述不同网络的配置情况。而在配置网络时,可以利用上述分层的网络模型,不直接对网络设备进行配置,而是通过设定目标网络的网络模型,计算其与当前网络的网络模型之间的差异,来生成对网络设备进行相应配置的配置命令,然后将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。由于上述分层的网络模型能够方便、准确地描述不同网络的配置情况,通过目标网络和当前网络的网络模型对比,可以精准地定义网络在实现生命周期时的配置差异,因此可以有效管理网络配置的生命周期。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一些实施例包括一个如图12所示的计算设备,该计算设备包括存储有计算机可读指令的一个或多个存储器1210和用于执行计算机可读指令的处理器1220,其中,当该计算机可读指令被该处理器执行时,使得所述设备执行基于前述本申请的多个实施例的方法和/或技术方案。
此外,本申请的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (25)

1.一种生成网络模型的方法,其中,该方法包括:
获取网络的配置信息;
根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息;
确定所述多个拓扑层之间的关联关系。
2.根据权利要求1所述的方法,其中,所述配置信息包括网络设备之间的物理链路、所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性;
根据所述网络设备的配置信息,确定所述网络设备对应的网络模型中的多个拓扑层,包括:
根据所述网络设备之间的物理链路确定物理拓扑层,其中,所述物理拓扑层用于描述所述网络设备之间在物理链路上的拓扑关系信息;
根据所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,确定多个协议拓扑层,其中,所述协议拓扑层用于描述所述网络设备之间关于对应协议的拓扑关系信息。
3.根据权利要求2所述的方法,其中,确定所述多个拓扑层之间的关联关系,包括:
确定所述物理拓扑层与二层协议对应的协议拓扑层之间的关联关系,以及确定依赖顺序相邻的协议拓扑层之间的关联关系。
4.根据权利要求2所述的方法,其中,所述网络设备之间在物理链路上的拓扑关系信息,包括网络设备的节点标识以及网络设备之间连接的物理链路。
5.根据权利要求2所述的方法,其中,所述网络设备之间关于对应协议的拓扑关系信息,包括网络设备的节点标识以及网络设备之间关于对应协议的连接路径。
6.根据权利要求1所述的方法,其中,获取网络的配置信息,包括:
获取网络中每个网络设备的配置文本;
解析所述配置文本,获取每个网络设备的配置信息;
关联所述网络设备,获取所述获取网络的配置信息。
7.一种配置网络的方法,其中,该方法包括:
获取当前网络的第一网络模型和目标网络的第二网络模型,其中,所述网络模型包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应;
根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量;
根据所述待变更的配置变量,生成配置命令;
将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置。
8.根据权利要求7所述的方法,其中,根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量,包括:
根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,生成配置变更计划,其中,所述配置变更计划包括将当前网络变更至目标网络所需的多个配置步骤,所述配置步骤包括至少一个待变更的配置变量。
9.根据权利要求8所述的方法,其中,将所述配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置,包括:
按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤。
10.根据权利要求9所述的方法,其中,按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤,包括:
按照配置步骤的顺序将所述配置变更计划中一个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行所述配置步骤对应的配置命令;
获取执行配置命令后当前网络的第三网络模型;
将所述第三网络模型与所述配置步骤完成后预期的第四网络模型进行比较;
若所述第三网络模型和所述第四网络模型一致,则确定完成所述配置步骤,并按照顺序处理下一个配置步骤。
11.根据权利要求10所述的方法,其中,该方法还包括:
若所述第三网络模型和所述第四网络模型不一致,则控制所述网络设备撤销所述配置步骤对应的配置命令,并重新处理所述配置步骤。
12.根据权利要求7所述的方法,其中,根据所述待变更的配置变量,生成配置命令,包括:
根据所述待变更的配置变量对应的网络设备,获取与所述网络设备的厂商相关的配置命令模版;
将所述配置命令模版中的变量值替换为所述待变更的配置变量,生成与所述网络设备的厂商相关的配置命令。
13.一种生成网络模型的设备,其中,该设备包括:
配置获取装置,用于获取网络的配置信息;
模型构建装置,用于根据所述网络的配置信息,确定所述网络对应的网络模型中的多个拓扑层,以及根据数据传输时对数据逐层封装的依赖顺序,确定所述多个拓扑层之间的关联关系,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息。
14.根据权利要求13所述的设备,其中,所述配置信息包括网络设备之间的物理链路、所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性;
所述模型构建装置,用于根据所述网络设备之间的物理链路确定物理拓扑层,其中,所述物理拓扑层用于描述所述网络设备之间在物理链路上的拓扑关系信息;以及根据所述网络设备之间进行数据传输所使用的协议、所述网络设备之间关于所述协议的连接路径和所述协议的属性,确定多个协议拓扑层,其中,所述协议拓扑层用于描述所述网络设备之间关于对应协议的拓扑关系信息。
15.根据权利要求14所述的设备,其中,所述模型构建装置,用于确定所述物理拓扑层与二层协议对应的协议拓扑层之间的关联关系,以及确定依赖顺序相邻的协议拓扑层之间的关联关系。
16.根据权利要求14所述的设备,其中,所述网络设备之间在物理链路上的拓扑关系信息,包括网络设备的节点标识以及网络设备之间连接的物理链路。
17.根据权利要求14所述的设备,其中,所述网络设备之间关于对应协议的拓扑关系信息,包括网络设备的节点标识以及网络设备之间关于对应协议的连接路径。
18.根据权利要求13所述的设备,其中,所述配置获取装置,用于获取网络中每个网络设备的配置文本,解析所述配置文本,获取每个网络设备的配置信息,以及关联所述网络设备,获取所述获取网络的配置信息。
19.一种配置网络的设备,其中,该设备包括:
模型获取装置,用于获取当前网络的第一网络模型和目标网络的第二网络模型,其中,所述网络模型包括多个拓扑层,所述拓扑层用于描述所述网络中的网络设备之间的拓扑关系信息,所述多个拓扑层之间的关联关系与进行数据传输时对数据逐层封装的依赖顺序对应;
变更管控装置,用于根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,确定待变更的配置变量,以及将配置命令发送至网络设备,以使所述网络设备执行所述配置命令,完成配置;
配置生成装置,用于根据所述待变更的配置变量,生成配置命令。
20.根据权利要求19所述的设备,其中,所述变更管控装置,用于根据所述第一网络模型和第二网络模型中各个拓扑层的差异信息,生成配置变更计划,其中,所述配置变更计划包括将当前网络变更至目标网络所需的多个配置步骤,所述配置步骤包括至少一个待变更的配置变量。
21.根据权利要求20所述的设备,其中,所述变更管控装置,用于按照配置步骤的顺序依次将所述配置变更计划中每个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行每个配置步骤对应的配置命令,依次完成每个配置步骤。
22.根据权利要求21所述的设备,其中,所述变更管控装置,用于按照配置步骤的顺序将所述配置变更计划中一个配置步骤对应的配置命令发送至网络设备,以使所述网络设备按照所述顺序执行所述配置步骤对应的配置命令,获取执行配置命令后当前网络的第三网络模型,将所述第三网络模型与所述配置步骤完成后预期的第四网络模型进行比较,以及在所述第三网络模型和所述第四网络模型一致时,确定完成所述配置步骤,并按照顺序处理下一个配置步骤。
23.根据权利要求22所述的设备,其中,所述变更管控装置,还用于在所述第三网络模型和所述第四网络模型不一致时,控制所述网络设备撤销所述配置步骤对应的配置命令,并重新处理所述配置步骤。
24.根据权利要求19所述的设备,其中,所述配置生成装置,用于根据所述待变更的配置变量对应的网络设备,获取与所述网络设备的厂商相关的配置命令模版,以及将所述配置命令模版中的变量值替换为所述待变更的配置变量,生成与所述网络设备的厂商相关的配置命令。
25.一种计算设备,包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行权利要求1至12中任一项所述的方法。
CN201810949801.0A 2018-08-20 2018-08-20 生成网络模型以及配置网络的方法、设备 Active CN110855457B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810949801.0A CN110855457B (zh) 2018-08-20 2018-08-20 生成网络模型以及配置网络的方法、设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810949801.0A CN110855457B (zh) 2018-08-20 2018-08-20 生成网络模型以及配置网络的方法、设备

Publications (2)

Publication Number Publication Date
CN110855457A true CN110855457A (zh) 2020-02-28
CN110855457B CN110855457B (zh) 2022-10-14

Family

ID=69595047

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810949801.0A Active CN110855457B (zh) 2018-08-20 2018-08-20 生成网络模型以及配置网络的方法、设备

Country Status (1)

Country Link
CN (1) CN110855457B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112636968A (zh) * 2020-12-18 2021-04-09 中国建设银行股份有限公司 网络方案的构建方法、装置、可读介质以及设备
CN112953768A (zh) * 2021-02-10 2021-06-11 中国工商银行股份有限公司 三层网络变更方案验证方法及系统
CN113626278A (zh) * 2021-06-30 2021-11-09 苏州浪潮智能科技有限公司 一种硬件拓扑生成方法及其相关设备
CN114553706A (zh) * 2020-11-18 2022-05-27 中国移动通信集团广东有限公司 网络拓扑发现方法、装置及电子设备
CN114666373A (zh) * 2022-04-01 2022-06-24 明阳产业技术研究院(沈阳)有限公司 物联网终端的维护方法及相关设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103036692A (zh) * 2011-09-29 2013-04-10 中国移动通信集团江苏有限公司 针对it支撑网生成网络拓扑的方法及装置
CN103117877A (zh) * 2013-01-29 2013-05-22 四川大学 一种基于迭代式ttl-ipid数据包分类的网络拓扑自动生成装置
CN103269282A (zh) * 2013-04-25 2013-08-28 杭州华三通信技术有限公司 网络配置自动部署方法和装置
US20160094383A1 (en) * 2014-09-30 2016-03-31 At&T Intellectual Property I, L.P. Methods and Apparatus to Track Changes to a Network Topology

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103036692A (zh) * 2011-09-29 2013-04-10 中国移动通信集团江苏有限公司 针对it支撑网生成网络拓扑的方法及装置
CN103117877A (zh) * 2013-01-29 2013-05-22 四川大学 一种基于迭代式ttl-ipid数据包分类的网络拓扑自动生成装置
CN103269282A (zh) * 2013-04-25 2013-08-28 杭州华三通信技术有限公司 网络配置自动部署方法和装置
US20160094383A1 (en) * 2014-09-30 2016-03-31 At&T Intellectual Property I, L.P. Methods and Apparatus to Track Changes to a Network Topology

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114553706A (zh) * 2020-11-18 2022-05-27 中国移动通信集团广东有限公司 网络拓扑发现方法、装置及电子设备
CN114553706B (zh) * 2020-11-18 2023-09-19 中国移动通信集团广东有限公司 网络拓扑发现方法、装置及电子设备
CN112636968A (zh) * 2020-12-18 2021-04-09 中国建设银行股份有限公司 网络方案的构建方法、装置、可读介质以及设备
CN112636968B (zh) * 2020-12-18 2023-03-28 中国建设银行股份有限公司 网络方案的构建方法、装置、可读介质以及设备
CN112953768A (zh) * 2021-02-10 2021-06-11 中国工商银行股份有限公司 三层网络变更方案验证方法及系统
CN112953768B (zh) * 2021-02-10 2023-02-24 中国工商银行股份有限公司 三层网络变更方案验证方法及系统
CN113626278A (zh) * 2021-06-30 2021-11-09 苏州浪潮智能科技有限公司 一种硬件拓扑生成方法及其相关设备
CN113626278B (zh) * 2021-06-30 2023-08-04 苏州浪潮智能科技有限公司 一种硬件拓扑生成方法及其相关设备
CN114666373A (zh) * 2022-04-01 2022-06-24 明阳产业技术研究院(沈阳)有限公司 物联网终端的维护方法及相关设备

Also Published As

Publication number Publication date
CN110855457B (zh) 2022-10-14

Similar Documents

Publication Publication Date Title
CN110855457B (zh) 生成网络模型以及配置网络的方法、设备
US11888603B2 (en) Assurance of security rules in a network
CN110521169B (zh) 用于服务链的策略保证
EP3613181B1 (en) Assurance of quality-of-service configurations in a network
US11218508B2 (en) Assurance of security rules in a network
US11044273B2 (en) Assurance of security rules in a network
US8683028B2 (en) Generic multi-layer provisioning service management layer systems and methods
US9288104B2 (en) Chassis controllers for converting universal flows
CN110785964B (zh) 网络中第3层桥接域子网的验证
CN111596921A (zh) 支持基于图形的统一意图模型的编译和可扩展性
CN110754065B (zh) 网络的逻辑级和硬件级之间的网络验证
CN110692227A (zh) 识别网络意图形式对等性失败中的冲突规则
US20210329004A1 (en) Network verification method and apparatus
CN110855458B (zh) 配置命令生成方法及设备
US10050859B2 (en) Apparatus for processing network packet using service function chaining and method for controlling the same
CN110741602B (zh) 响应于网络意图形式对等性失败的事件生成
US11405299B2 (en) Determining node behavior in deterministic networks
CN110710159A (zh) 针对网络意图形式对等失败的反例的生成
US10764214B1 (en) Error source identification in cut-through networks
CN111034123A (zh) 网络中第1层接口的验证
US11178018B2 (en) Method and system for managing real network systems using simulation results
CN114553689A (zh) 连接性模板
CN107040423B (zh) 一种网络拓扑发现的方法及系统
CN110855456B (zh) 网络变更的方法及设备
CN109861869B (zh) 一种配置文件的生成方法及装置

Legal Events

Date Code Title Description
PB01 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