CN115865692A - 一种基于bgp-ls协议生成网络拓扑的方法 - Google Patents
一种基于bgp-ls协议生成网络拓扑的方法 Download PDFInfo
- Publication number
- CN115865692A CN115865692A CN202211332917.2A CN202211332917A CN115865692A CN 115865692 A CN115865692 A CN 115865692A CN 202211332917 A CN202211332917 A CN 202211332917A CN 115865692 A CN115865692 A CN 115865692A
- Authority
- CN
- China
- Prior art keywords
- data
- bgp
- information
- node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012545 processing Methods 0.000 claims abstract description 7
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 241000764238 Isis Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种基于bgp‑ls协议生成网络拓扑的方法,包括:S01、初始化项目,并获取采集信息,并通过信息获取采集节点的信息;S02、从kafka读取protobuf格式的bgp‑ls协议的数据;S03、对数据进行格式化,并确定数据的正确性,排除错误数据,根据数据;S04、对数据进行分别处理;S05、固定时间段,通过link和prefix的ip地址和ip域之间进行二次匹配,并将匹配成功的数据写入数据库。该方法及装置通过bgp‑ls协议的方式采集设备信息和网络拓扑,提高了采集的效率,并且便于扩展,可以定制化增加网络设备的各种信息的采集,比如链路带宽,丢包率等信息的采集,易于增加额外的采集任务。对于整个网络拓扑的状态监控提供了一种高效解决方案。
Description
技术领域
本发明涉及网络拓扑领域,尤其是一种基于bgp-ls协议生成网络拓扑的方法。
背景技术
在许多环境中,需要调用网络外部的组件来确定网络拓扑结构和网络内连接的当前状态的,例如流量工程(Traffic Engineering,TE)信息。这是通常由IGP路由协议在网络中分发的信息。受igp不同协议的限制,网络的链路状态和TE信息与外界共享比较困难。bgp-ls协议通过一种新的BGP网络层可达性信息(NLRI)编码格式实现通过BGP路由协议从网络中手机链路状态和TE信息并与外部组建共享。
BGP-LS(BGP Link-state)汇总IGP协议收集的拓扑信息上送给上层控制器。
BGP-LS是收集网络拓扑的一种新的方式。
BGP-LS特性产生前,路由器使用IGP(OSPF或IS-IS)协议收集网络的拓扑信息,IGP协议将各个域的拓扑信息单独上送给上层控制器,在这种拓扑收集方式下,存在以下几个问题:
对上层控制器的计算能力要求较高,且要求控制器也支持IGP协议及其算法;
当涉及到跨IGP域拓扑信息收集时,上层控制器无法看到完整的拓扑信息,无法计算端到端的最优路径;
不同的路由协议分别上送拓扑信息给上层控制器,控制器对拓扑信息的分析处理过程比较复杂。
BGP-LS特性产生后,IGP协议发现的拓扑信息由BGP协议汇总后上送给上层控制器,利用BGP协议强大的选路和算路能力,可产生以下几点优势:
降低对上层控制器计算能力的要求,且不再对控制器的IGP能力有要求;
BGP协议将各个进程或各个AS的拓扑信息做汇总,直接将完整的拓扑信息上送给控制器,有利于路径选择和计算;
网络中所有拓扑信息均通过BGP协议上送控制器,使拓扑上送协议归一化。
发明内容
为解决人工进行网络故障定位存在的上述问题,本发明提供一种基于bgp-ls协议生成网络拓扑的方法,通过kafka获取采集的bgp-ls信息,根据bgp-ls协议的四种node、ipv4prefix、ipv6prefix、link数据类型,对节点的网段、连接路径进行匹配,从而得到各个节点之间的连接信息,并根据链接信息得到各个节点之间的链接关系;通过对不同域的数据进行采集,可以完整还原整个网络的拓扑结构,并根据实时的数据变更,实时更新当前网络拓扑的状态,从而提高运维管理的效率。
为实现上述目的,本发明采用下述技术方案:
在本发明一实施例中,提出了一种基于bgp-ls协议生成网络拓扑的方法,该方法包括:
S01、初始化项目,并获取采集信息,并通过信息获取采集节点的信息;
S02、从kafka读取protobuf格式的bgp-ls协议的数据;
S03、对数据进行格式化,并确定数据的正确性,排除错误数据,根据数据携带的nlri_type字段确认数据类型,并解析为字典格式。
数据已经由采集端采集并进行了初步标记,所以这里标注的数据类型默认一定是对的。
字典格式为json格式,json是一种数据结构。
S04、对数据进行分别处理
S05、固定时间段,通过link和prefix的ip地址和ip域之间进行二次匹配,并将匹配成功的数据写入数据库。
由于可能存在prefix和link比node先进来的情况,所以每过一段时间需要对没有找到节点的prefix和node进行二次匹配,寻找是否存在node信息。这里需要注意,link是连接信息,需要两个端点即node,所以这里二次匹配还有一个目的就是找到对端的节点。link采集的信息有本端ip和对端ip,这里主要是根据对端ip找到对端的link,然后link之间进行绑定,这里的绑定是因为成对的link本端和对端的ip是相反的。
进一步地,所述S01中采集信息包括:node、prefix、link、policy、srv6sid,其中node信息即为节点信息,根据node创建节点。
进一步地,所述S02中的数据通过bgp-ls协议方式采集,并以protobuf格式发送到kafka。
进一步地,所述S03中确定数据的正确性流程包括:
S031、对bgp-ls采集程序采集的数据进行判断,采集程序对不同设备采集的信息缺失关键信息;
S032、缺失关键信息的数据直接丢弃,并告警让采集程序的维护人员进行优化。
进一步地,所述S031中的缺失关键信息包括但不限于:ip、as域。
进一步地,所述S03中数据类型包括:node、link、ipv4prefix、ipv6prefix。
进一步地,所述S04包括:
S041、node数据,判断是否存在对应node节点,如果存在则更新,如果不存在则创建新节点,并根据节点id匹配已经保存的prefix数据;
S042、如果是ipv4prefix或ipv6prefix数据,更新或创建新的prefix信息,并根据prefix的节点id匹配对应的node节点,根据prefix的网段匹配link;
S043、如果是link数据,更新或创建新的link信息,并根据link的ip匹配prefix;
S044、其他数据,更新或创建新的信息,并直接入库。
进一步地,所述S041中通过ip或id搜索内存里是否已经存在node信息来判断对应node节点;节点id通过设备采集。
进一步地,所述S041中的节点id通过ip网段匹配,匹配流程:找到所有网段容纳ip的所有prefix数据,得到数据为节点id所对应的数据;不同节点的ip网段互斥,根据节点ip反向匹配对应的网段。
在本发明一实施例中,还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现前述基于bgp-ls协议生成网络拓扑的方法。
在本发明一实施例中,还提出了一种计算机可读存储介质,计算机可读存储介质存储有执行基于bgp-ls协议生成网络拓扑的方法的计算机程序。
有益效果:
本发明通过bgp-ls协议的方式采集设备信息和网络拓扑,提高了采集的效率,并且便于扩展,可以定制化增加网络设备的各种信息的采集,比如链路带宽,丢包率等信息的采集,易于增加额外的采集任务。对于整个网络拓扑的状态监控提供了一种高效解决方案。
附图说明
图1是本发明的基于bgp-ls协议生成网络拓扑的方法流程模块化示意图;
图2是本发明的基于bgp-ls协议生成网络拓扑的方法流程图;
图3是本发明实施例的网络拓扑图;
图4是本发明一实施例的计算机设备结构示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
protobuf全称Google Protocol Buffers,是google开发的的一套用于数据存储,网络通信时的协议编解码。protobuf是一种灵活高效的独立于语言平台的结构化数据表示方法。
nlri_type数据里面表示该数据属于哪种数据的字段;
根据本发明的实施方式,提出了一种基于bgp-ls协议生成网络拓扑的方法,通过kafka获取采集的bgp-ls信息,根据bgp-ls协议的四种node、ipv4prefix、ipv6prefix、link数据类型,对节点的网段、连接路径进行匹配,从而得到各个节点之间的连接信息,并根据链接信息得到各个节点之间的链接关系;通过对不同域的数据进行采集,可以完整还原整个网络的拓扑结构,并根据实时的数据变更,实时更新当前网络拓扑的状态,从而提高运维管理的效率。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
如图1所示,该方法包括:
S01、初始化项目,并获取采集信息,并通过信息获取采集节点的信息;
S02、从kafka读取protobuf格式的bgp-ls协议的数据;
S03、对数据进行格式化,并确定数据的正确性,排除错误数据,根据数据携带的nlri_type字段确认数据类型,并解析为字典格式。
数据已经由采集端采集并进行了初步标记,所以这里标注的数据类型默认一定是对的。
字典格式为json格式,json是一种数据结构。
S04、对数据进行分别处理
S05、固定时间段,通过link和prefix的ip地址和ip域之间进行二次匹配,并将匹配成功的数据写入数据库。
由于可能存在prefix和link比node先进来的情况,所以每过一段时间需要对没有找到节点的prefix和node进行二次匹配,寻找是否存在node信息。这里需要注意,link是连接信息,需要两个端点即node,所以这里二次匹配还有一个目的就是找到对端的节点。link采集的信息有本端ip和对端ip,这里主要是根据对端ip找到对端的link,然后link之间进行绑定,这里的绑定是因为成对的link本端和对端的ip是相反的。
所述S01中采集信息包括:node、prefix、link、policy、srv6sid,其中node信息即为节点信息,根据node创建节点。
所述S02中的数据通过bgp-ls协议方式采集,并以protobuf格式发送到kafka。
所述S03中确定数据的正确性流程包括:
S031、对bgp-ls采集程序采集的数据进行判断,采集程序对不同设备采集的信息缺失关键信息;
S032、缺失关键信息的数据直接丢弃,并告警让采集程序的维护人员进行优化。
所述S031中的缺失关键信息包括但不限于:ip、as域。
所述S03中数据类型包括:node、link、ipv4prefix、ipv6prefix。
所述S04包括:
S041、node数据,判断是否存在对应node节点,如果存在则更新,如果不存在则创建新节点。并根据节点id匹配已经保存的prefix数据;
S042、如果是ipv4prefix或ipv6prefix数据,更新或创建新的prefix信息,并根据prefix的节点id匹配对应的node节点,根据prefix的网段匹配link;
S043、如果是link数据,更新或创建新的link信息,并根据link的ip匹配prefix;
S044、其他数据,更新或创建新的信息,并直接入库。
所述S041中通过ip或id搜索内存里是否已经存在node信息来判断对应node节点;节点id通过设备采集。
所述S041中的节点id通过ip网段匹配,匹配流程:找到所有网段容纳ip的所有prefix数据,得到数据为节点id所对应的数据;不同节点的ip网段互斥,根据节点ip反向匹配对应的网段。
如图2所示,读取配置文件,采集设备的ip地址,采集的igpasid(igp域id),并启动对应的数据处理进程。
启动kafka的消费者,读取protobuf结构(json类型)的bgp-ls协议的json数据。
对数据进行格式化,并确定数据的正确性,排除错误数据,根据数据类型分别进入node、prefix、link类型的处理流程。
如果是node,则从缓存读取node节点信息(通过router_id),如果找到了则更新节点信息,如果没找到则创建该节点。并将node信息写入到db。
如果是prefix,根据prefix携带的router_id寻找node节点,并寻找node上关联的link信息,通过ip网段计算,找到属于prefix携带的ip域的link信息,并记录link的信息。
如果是link,则首先根据link的local_router_id找到本端的node,然后根据local_ip寻找到对应的prefix,并进行互相信息关联。
如果prefix和link没有匹配到对方,也会记录信息,并等待下次匹配。
如果匹配到则写入到db。
需要说明的是,尽管在上述实施例及附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
为了对上述基于bgp-ls协议生成网络拓扑的方法进行更为清楚的解释,下面结合一个具体的实施例来进行说明,然而值得注意的是该实施例仅是为了更好地说明本发明,并不构成对本发明不当的限定。
实施例:
图3是实施例对应的网络拓扑图。如图3所示:
包含两个域,as64512域有三台交换机,对应启动isis协议。
EBGP
使用32网段的环回接口作为BGP建立邻居关系的接口;
R1和R2指定静态路由
此处列举R1、R2的配置
[r1]ip route-static 1.1.0.2 32 12.1.1.2
[r2]ip route-static 1.1.0.1 32 12.1.1.1
开始建立邻居关系,此处列举R2的配置
[r2]bgp 2
启动BGP协议,启动时需要键入AS号;没有多进程概念
[r2-bgp]router-id 2.2.2.2
建议配置RID;若不配置将自动生成—规则同OSPF相同
[r2-bgp]peer 1.1.0.1 as-number 1
对端环回接口ip地址,及对端所在AS号
[r2-bgp]peer 1.1.0.1 connect-interface LoopBack 0
一旦使用环回接口建立BGP的邻居关系;必须将源地址也修改为环回接口
修改R2的ttl值
[r2-bgp]peer 1.1.0.1 ebgp-max-hop 2
查询BGP邻居表,确认建立邻居关系成功
[r1-bgp]dis bgp peer
BGP local router ID:1.1.1.1
Local AS number:1
Total number of peers:1 Peers in established state:1
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
1.1.0.2 4 2 4 5 0 00:02:15 Established 0
R4 R5配置逻辑与上述一致
IBGP
R3的配置
[r3]bgp 2
[r3-bgp]router-id 3.3.3.3
与R2建邻
[r3-bgp]peer 1.1.0.2 as-number 1
[r3-bgp]peer 1.1.0.2 connect-interface LoopBack 0
与R4建邻
[r3-bgp]peer 1.1.0.4 as-number 1
[r3-bgp]peer 1.1.0.4 connect-interface LoopBack 0
查看BGP邻居表
[r3-bgp]dis bgp peer
BGP local router ID:3.3.3.3
Local AS number:2
Total number of peers:2
Peers in established state:2
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
1.1.0.2 4 2 60 58 0 00:55:07 Established 2
1.1.0.4 4 2 59 57 0 00:53:56 Established 2
BGP的宣告
在R1上将1.1.1.1/24环回在BGP进行宣告
[r1-bgp]network 1.1.1.0 255.255.255.0
在EBGP中该路由会传递给R1的邻居R2;
在IBGP中该路由由R2传递给R3时,R3的BGP表中关于这条路由的条目并不优;
因为基于AS-BY-AS规则,条目在一个AS内部传递时将不修改条目属性;导致通过IBGP邻居学习到的BGP路由可能出现下一跳不可达,导致条目不优,不加进路由表;
该条目并不会传递给R4,因为IBGP中存在水平分割,本地从一个IBGP邻居处学习到的路由条目,不得传递给本地的其他IBGP邻居;
此时R3的BGP路由表如下
[r3-bgp]dis bgp routing-table
BGP Local router ID is 3.3.3.3
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:1
Network NextHop MED LocPrf PrefVal Path/Ogn
I 1.1.1.0/24 1.1.0.2 0 100 0 1i
条目优秀的条件:1、同步问题(默认不关注)2、下一跳可达;
解决下一条不可达的问题,将传递的该条目的下一条改为学习该条目的路由器即可;
在R2上进行配置
[r2-bgp]peer 1.1.0.3 next-hop-local
再查看R3的BGP路由表,此刻该条目变为优秀,可加表
[r3-bgp]dis bgp routing-table
BGP Local router ID is 3.3.3.3
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:1
Network NextHop MED LocPrf PrefVal Path/Ogn
*>i 1.1.1.0/24 1.1.0.2 0 100 0 1i
还需解决R4由于IBGP水平分割无法学习到该条目的问题,需要将R2与R4建邻;
再将R4学习到的路由条目下一跳指向R2;
[r2-bgp]peer 1.1.0.4 next-hop-local
此时查看R4的BGP路由表,学习到,并加表
[r4-bgp]dis bgp ro
BGP Local router ID is 4.4.4.4
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:1
Network NextHop MED LocPrf PrefVal Path/Ogn
*>i 1.1.1.0/24 1.1.0.2 0 100 0 1i
此时,R4会将该路由条目传递给R5并加表;
因为当路由条目传递给本地的EBGP邻居时,属性将自动发生变化,包括下一跳地址;
查看R5的BGP路由表
[r5-bgp]dis bgp routing-table
BGP Local router ID is 5.5.5.5
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:1
Network NextHop MED LocPrf PrefVal Path/Ogn
*>1.1.1.0/24 1.1.0.4 0 2 1i
同理在R5上宣告5.5.5.5/24时,需要修改R4关于R3、R2传递路由条目的下一跳
[r4-bgp]peer 1.1.0.2 next-hop-local
[r4-bgp]peer 1.1.0.3 next-hop-local
查看R1的BGP路由表
[r1-bgp]dis bgp ro
BGP Local router ID is 1.1.1.1
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:2
Network NextHop MED LocPrf PrefVal Path/Ogn
*>1.1.1.0/24 0.0.0.0 0 0 i
*>5.5.5.0/24 1.1.0.2 0 2 3i
再依次宣告AS 1内的各个路由器上的24网段环回,由于各个路由之间下一条的设置已配置合理,且他们相互都是邻居,所以整个网络环境中都能学习到24网段的环回
宣告配置
[r2-bgp]network 2.2.2.2 24
[r3-bgp]network 3.3.3.3 24
[r4-bgp]network 4.4.4.4 24
查看R3的BGP路由表,已学习完整
[r3-bgp]dis bgp ro
BGP Local router ID is 3.3.3.3
Status codes:*-valid,>-best,d-damped,
h-history,i-internal,s-suppressed,S-Stale
Origin:i-IGP,e-EGP,?-incomplete
Total Number of Routes:5
Network NextHop MED LocPrf PrefVal Path/Ogn
*>i 1.1.1.0/24 1.1.0.2 0 100 0 1i
*>i 2.2.2.0/241.1.0.2 0 100 0 i
*>i 3.3.3.0/24 0.0.0.0 0 0 i
*>i 4.4.4.0/24 1.1.0.4 0 100 0 i
*>i 5.5.5.0/24 1.1.0.4 0 100 0 3i
基于同一发明构思,本发明还提出一种基于bgp-ls协议生成网络拓扑的装置。该装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的术语“模块”,可以是实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明一实施例的基于bgp-ls协议生成网络拓扑的装置结构包括:
处理器、缓存器与模型器,
处理器:对输入的bgp-ls数据进行匹配,并定时进行二次匹配;
缓存器:缓存并记录数据,方便进入的数据查找和更新。初始化的时候从数据库加载历史数据生成缓存状态;
模型器:对要写入数据的数据生成sql语句,并批量写入要更新的数据。
应当注意,尽管在上文详细描述中提及了基于bgp-ls协议生成网络拓扑的装置的若干模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
基于前述发明构思,如图3所示,本发明还提出一种计算机设备200,包括存储器210、处理器220及存储在存储器210上并可在处理器220上运行的计算机程序230,处理器220执行计算机程序230时实现前述基于bgp-ls协议生成网络拓扑的方法。
基于前述发明构思,本发明还提出一种计算机可读存储介质,计算机可读存储介质存储有执行前述基于bgp-ls协议生成网络拓扑的方法的计算机程序。
本发明提出的基于bgp-ls协议生成网络拓扑的方法,通过制订流程化的分析手段和预处理规则,及时有效地对故障进行预防和预处理,减轻网络运维人员工作压力,提升运维效率。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包含的各种修改和等同布置。
对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (11)
1.一种基于bgp-ls协议生成网络拓扑的方法,其特征在于,该方法包括:
S01、初始化项目,并获取采集信息,并通过信息获取采集节点的信息;
S02、从kafka读取protobuf格式的bgp-ls协议的数据;
S03、对数据进行格式化,并确定数据的正确性,排除错误数据,根据数据携带的nlri_type字段确认数据类型,并解析为字典格式;
S04、对数据进行分别处理;
S05、固定时间段,通过link和prefix的ip地址和ip域之间进行二次匹配,并将匹配成功的数据写入数据库。
2.根据权利要求1所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S01中采集信息包括:node、prefix、link、policy、srv6sid,其中node信息即为节点信息,根据node创建节点。
3.根据权利要求1所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S02中的数据通过bgp-ls协议方式采集,并以protobuf格式发送到kafka。
4.根据权利要求1所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S03中确定数据的正确性流程包括:
S031、对bgp-ls采集程序采集的数据进行判断,采集程序对不同设备采集的信息缺失关键信息;
S032、缺失关键信息的数据直接丢弃,并告警让采集程序的维护人员进行优化。
5.根据权利要求4所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S031中的缺失关键信息包括但不限于:ip、as域。
6.根据权利要求1所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S03中数据类型包括:node、link、ipv4prefix、ipv6prefix。
7.根据权利要求1所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S04包括:
S041、node数据,判断是否存在对应node节点,如果存在则更新,如果不存在则创建新节点,并根据节点id匹配已经保存的prefix数据;
S042、如果是ipv4prefix或ipv6prefix数据,更新或创建新的prefix信息,并根据prefix的节点id匹配对应的node节点,根据prefix的网段匹配link;
S043、如果是link数据,更新或创建新的link信息,并根据link的ip匹配prefix;
S044、其他数据,更新或创建新的信息,并直接入库。
8.根据权利要求7所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S041中通过ip或id搜索内存里是否已经存在node信息来判断对应node节点;节点id通过设备采集。
9.根据权利要求7所述的基于bgp-ls协议生成网络拓扑的方法,其特征在于,所述S041中的节点id通过ip网段匹配,匹配流程:找到所有网段容纳ip的所有prefix数据,得到数据为节点id所对应的数据;不同节点的ip网段互斥,根据节点ip反向匹配对应的网段。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1或2或4所述方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1或2或4所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211332917.2A CN115865692A (zh) | 2022-10-28 | 2022-10-28 | 一种基于bgp-ls协议生成网络拓扑的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211332917.2A CN115865692A (zh) | 2022-10-28 | 2022-10-28 | 一种基于bgp-ls协议生成网络拓扑的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115865692A true CN115865692A (zh) | 2023-03-28 |
Family
ID=85662002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211332917.2A Pending CN115865692A (zh) | 2022-10-28 | 2022-10-28 | 一种基于bgp-ls协议生成网络拓扑的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115865692A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101036355A (zh) * | 2004-12-01 | 2007-09-12 | 思科技术公司 | 具有igp扩展的域间te-lsp |
CN107005474A (zh) * | 2015-07-06 | 2017-08-01 | 华为技术有限公司 | 路由控制的方法、设备和系统 |
CN109818858A (zh) * | 2017-11-20 | 2019-05-28 | 中国电信股份有限公司 | 用于实现域间拓扑关系自动拼接的方法、装置和系统 |
CN113055297A (zh) * | 2019-12-26 | 2021-06-29 | 中国移动通信集团天津有限公司 | 网络拓扑发现方法及装置 |
CN114465943A (zh) * | 2020-11-04 | 2022-05-10 | 华为技术有限公司 | 拓扑信息的发布方法、网络拓扑收集方法及设备 |
-
2022
- 2022-10-28 CN CN202211332917.2A patent/CN115865692A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101036355A (zh) * | 2004-12-01 | 2007-09-12 | 思科技术公司 | 具有igp扩展的域间te-lsp |
CN107005474A (zh) * | 2015-07-06 | 2017-08-01 | 华为技术有限公司 | 路由控制的方法、设备和系统 |
CN109818858A (zh) * | 2017-11-20 | 2019-05-28 | 中国电信股份有限公司 | 用于实现域间拓扑关系自动拼接的方法、装置和系统 |
CN113055297A (zh) * | 2019-12-26 | 2021-06-29 | 中国移动通信集团天津有限公司 | 网络拓扑发现方法及装置 |
CN114465943A (zh) * | 2020-11-04 | 2022-05-10 | 华为技术有限公司 | 拓扑信息的发布方法、网络拓扑收集方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7108674B2 (ja) | 故障根本原因決定方法及び装置並びにコンピュータ記憶媒体 | |
US7484004B2 (en) | Analyzing an access control list for a router to identify a subsumption relation between elements in the list | |
CN113261245B (zh) | 网络链路或节点故障的恢复系统和方法 | |
CN100388695C (zh) | 互联网的域间路由监测与分析系统及其工作方法 | |
JP4018638B2 (ja) | Ipネットワーク内でトポロジー認識情報を提供する方法 | |
US20180041396A1 (en) | System and method for topology discovery in data center networks | |
US7869349B2 (en) | Method and system for deducing network routes by querying routers | |
CN107733713B (zh) | 混合网络中网络拓扑的获取方法、系统、设备及存储介质 | |
CN104168154A (zh) | 面向网络态势感知的多级别网络系统及其构建方法 | |
Vissicchio et al. | Improving network agility with seamless BGP reconfigurations | |
CN113055297B (zh) | 网络拓扑发现方法及装置 | |
CN113794618B (zh) | 基于虚拟网卡的冗余网络通信方法、装置及终端设备 | |
US9467374B2 (en) | Supporting multiple IEC-101/IEC-104 masters on an IEC-101/IEC-104 translation gateway | |
EP4152701A1 (en) | Routing processing method and related device | |
JP2014165521A (ja) | スイッチ、スイッチシステム及びプログラム | |
CN102308524B (zh) | 动态隧道故障诊断方法及设备和系统 | |
CN103746828A (zh) | 一种管理网络节点的方法及装置 | |
CN111917577B (zh) | Bgp路由信息采集方法、装置、计算机设备及存储介质 | |
CN115865692A (zh) | 一种基于bgp-ls协议生成网络拓扑的方法 | |
CN106230717B (zh) | 集群系统中的路由获取方法及装置 | |
CN114745763B (zh) | 一种更新最佳网络拓扑的方法及系统 | |
CN110324202A (zh) | 一种探测线路质量的方法和装置 | |
CN115277418A (zh) | 一种bgp网络运维系统 | |
CN116800606A (zh) | 网络变更方法、网络控制设备及存储介质 | |
EP2288054A1 (en) | Method for searching and establishing tcm path and management system for searching and establishing path |
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 |