CN106506376B - 一种被监控邻居初始路由信息发送方法及装置 - Google Patents
一种被监控邻居初始路由信息发送方法及装置 Download PDFInfo
- Publication number
- CN106506376B CN106506376B CN201610955762.6A CN201610955762A CN106506376B CN 106506376 B CN106506376 B CN 106506376B CN 201610955762 A CN201610955762 A CN 201610955762A CN 106506376 B CN106506376 B CN 106506376B
- Authority
- CN
- China
- Prior art keywords
- routing
- information
- monitoring server
- bgp router
- target
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种被监控邻居初始路由信息发送方法及装置。该方法包括:在目标第二BGP路由器对应的预定条件满足时,将本地存储的来自目标第二BGP路由器的路由信息封装为第一路由报文,为已封装信息添加第一标记;依次发送第一路由报文后发送结束报文;若在发送第一路由报文时,接收到来自目标第二BGP路由器的第二路由报文,且对其解封装后获得的为对具有第一标记的路由信息的更新信息,为待更新路由信息添加第二标记,更新相应信息;发送完结束报文后,将具有第二标记的路由信息封装为第三路由报文,将该报文发送至监控服务器。可见,监控服务器收集邻居路由器的初始路由信息的时间得以缩短,监控服务器能够确定该初始路由信息收集完毕的时间。
Description
技术领域
本发明涉及技术通信技术领域,特别是涉及一种被监控邻居初始路由信息发送方法及装置。
背景技术
在通信技术领域中,用于监控某一边界网关协议BGP路由器的邻居路由器的监控服务器,例如遵循边界网关协议监控协议的监控服务器(以下均简称为BMP监控服务器)的应用变得越来越广泛。BMP监控服务器可以对某一BGP路由器的邻居路由器的路由信息、状态信息等进行监控,并且,其监控的各类信息中,该邻居路由器的路由信息最为重要,该邻居路由器的路由信息包括初始路由信息(BMP监控服务器对该邻居路由器进行监控前,该邻居路由器内已存储的路由信息)和实时路由信息(BMP监控服务器对该邻居路由器进行监控后,该邻居路由器新接收的路由信息)。
下面以一个具体的例子对BMP监控服务器的工作原理进行说明。
假设BMP监控服务器为S1,BGP路由器A的邻居路由器为BGP路由器B和BGP路由器C,BGP路由器A内可以预先配置有S1所监控的路由器的信息(假设该信息为B的信息),这样,A根据该信息可以获知S1所监控的为B。实际工作时,S1需要与A建立连接,例如传输控制协议TCP连接。由于B是A的邻居路由器,故A内已存储有B已接收到的路由信息。若A直接将自身已存储的来自于B的路由信息发送至S1,S1内会缺少B的实时路由信息。为了达到有效地监控的目的,A会向B发送用于获得路由信息的refresh请求。当B接收到该请求后,B会将初始路由信息,以及实时路由信息均发送至A,A则将接收到的路由信息发送至S1。这样,S1就能够收集到B的所有路由信息,S1能够有效地对B进行监控。
容易理解的是,B的初始路由信息量可能会非常大,故S1收集B的初始路由信息的过程可能需要花费特别长的时间。A在将B的初始路由信息全部发送至S1后,需要向S1发送一个表征初始路由信息收集完毕的EOR报文,以使得S1在获得该报文之后,对B的初始路由信息进行分析或处理。由于B的初始路由信息和实时路由信息是混杂在一起发送至A的,A不能分辨B的初始路由信息是什么时候收集完毕的,A无法向S1发送该报文。
因此,当通过监控服务器对某一BGP路由器的邻居路由器进行监控时,如何缩短监控服务器收集该邻居路由器的初始路由信息所需花费的时间,以及如何保证监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间是一个亟待解决的问题。
发明内容
本发明实施例的目的在于提供一种被监控邻居初始路由信息发送方法及装置,以在通过监控服务器对某一BGP路由器的邻居路由器进行监控时,缩短监控服务器收集该邻居路由器的初始路由信息所需花费的时间,以及保证监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
本发明实施例提供了一种被监控邻居初始路由信息发送方法,应用于第一边界网关协议BGP路由器,所述第一BGP路由器与监控服务器连接,所述监控服务器用于监控至少一个第二BGP路由器,各所述第二BGP路由器均为所述第一BGP路由器的邻居路由器,所述方法包括:
在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于所述目标第二BGP路由器的路由信息添加第一标记,其中,所述目标第二BGP路由器为至少一个第二BGP路由器中的任一个;
依次发送所有第一路由报文至所述监控服务器后,向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文;
若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息;
当发送完结束报文后,将具有所述第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有所述第二标记的各路由信息上的第二标记,将所述第三路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第三路由报文后,更新相应的路由信息。
本发明实施例还提供了一种被监控邻居初始路由信息发送装置,应用于第一边界网关协议BGP路由器,所述第一BGP路由器与监控服务器连接,所述监控服务器用于监控至少一个第二BGP路由器,各所述第二BGP路由器均为所述第一BGP路由器的邻居路由器,所述装置包括:
第一处理模块,用于在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于所述目标第二BGP路由器的路由信息添加第一标记,其中,所述目标第二BGP路由器为至少一个第二BGP路由器中的任一个;
第一发送模块,用于依次发送所有第一路由报文至所述监控服务器后,向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文;
第二处理模块,用于若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息;
第三处理模块,用于当发送完结束报文后,将具有所述第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有所述第二标记的各路由信息上的第二标记,将所述第三路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第三路由报文后,更新相应的路由信息。
与现有技术相比,本方案中,第一BGP路由器是将自身内部已存储的、来自于目标第二BGP路由器的初始路由信息直接发送至监控服务器的,目标第二BGP路由器无需重新向第一BGP路由器发送所有初始路由信息,故监控服务器收集目标第二BGP路由器的初始路由信息所需花费的时间会大大地缩减。此外,在第一BGP路由器将目标第二BGP路由器的初始路由信息均发送至监控服务器后,第一BGP路由器才会将目标第二BGP路由器的实时路由信息发送至监控服务器,即初始路由信息和实时路由信息是分开发送的,故第一BGP路由器可以向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,相应地,监控服务器能够确定出目标第二BGP路由器的初始路由信息收集完毕的时间。可以看出,当通过监控服务器对某一BGP路由器的邻居路由器进行监控时,本方案可以有效地缩短监控服务器收集该邻居路由器的初始路由信息所需花费的时间,以及保证监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为监控服务器、第一BGP路由器和第二BGP路由器的组网结构示意图;
图2为本发明实施例所提供的一种被监控邻居初始路由信息发送方法的流程图;
图3为第一BGP路由器的工作流程示意图;
图4为本发明实施例所提供的一种被监控邻居初始路由信息发送装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术存在的问题,本发明实施例提供了一种被监控邻居初始路由信息发送方法及装置。
下面首先对本发明实施例所提供的一种被监控邻居初始路由信息发送方法进行说明。
需要说明的是,本发明实施例所提供的一种被监控邻居初始路由信息发送方法可以应用于第一边界网关协议BGP路由器。具体地,如图1所示,第一BGP路由器与监控服务器连接,监控服务器用于监控至少一个第二BGP路由器,各第二BGP路由器均为第一BGP路由器的邻居路由器。
需要说明的是,第一BGP路由器和第二BGP路由器可以位于同一自治域内,此时第一BGP路由器和第二BGP路由器为内部边界网关协议IGBP邻居。当然,第一BGP路由器和第二BGP路由器也可以位于不同自治域内,此时第一BGP路由器和第二BGP路由器为外部边界网关协议EGBP邻居。
另外,监控服务器需要监控的可以是第一BGP路由器的所有邻居路由器,此时,至少一个第二BGP路由器构成了第一BGP路由器的所有邻居路由器。当然,监控服务器需要监控的也可以是第一BGP路由器的部分邻居路由器,此时,至少一个第一BGP路由器为第一BGP路由器的所有邻居路由器中的一部分。
本领域技术人员可以理解的是,由于各第二BGP路由器均为第一BGP路由器的邻居路由器,故第一BGP路由器内本身就存储有各第二BGP路由器内当前已存储的所有路由信息。
需要说明的是,监控服务器可以为BMP(Border Gateway ProtocolMonitoringProtocol,边界网关协议监控协议)监控服务器,第一BGP路由器与BMP监控服务器之间可以为TCP(Transmission Control Protocol,传输控制协议)连接。下述实施例均以监控服务器为BMP监控服务器,且第一BGP路由器与BMP监控服务器之间为TCP连接的情况为例进行说明。
参见图2,图中示出了本发明实施例所提供的一种被监控邻居初始路由信息发送方法的流程图。如图2所示,该方法可以包括如下步骤:
S201,在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于目标第二BGP路由器的路由信息添加第一标记,其中,目标第二BGP路由器为至少一个第二BGP路由器中的任一个。
其中,第一标记可以为batch标记,当第一BGP路由器的本地已存储的某一路由信息上具有batch标记时,这表示该路由信息已经被封装至第一路由报文中了。
可以理解的是,第一BGP路由器的本地已存储的、来自于目标第二BGP路由器的路由信息即为目标第二BGP路由器的初始路由信息,该初始路由信息的条数往往较多,相应地,该初始路由信息一般需要被封装为若干个第一路由报文,并依次发送至监控服务器。
需要强调的是,第二BGP路由器对应的预定条件的具体形式多样,为了布局清楚,后续进行举例介绍。
S202,依次发送所有第一路由报文至监控服务器后,向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文。
可以理解的是,第一路由报文的封装操作和第一路由报文的发送操作可以是并行的。具体来说,在第一个第一路由报文封装完成之后,第一BGP路由器可以一边封装第二个第一路由报文,一边将封装好的第一个第一路由报文发送至监控服务器。类似地,在第二个第一路由报文封装完成之后,第一BGP路由器可以一边封装第三个第一路由报文,一边将封装好的第二个第一路由报文发送至监控服务器,后续过程依此类推,在此不再赘述。可以看出,第一路由报文的发送效率可以得到较好地保证。
需要说明的是,第一路由报文的封装操作和第一路由报文的发送操作也可以不是并行的。具体来说,第一BGP路由器可以在将若干个第一路由报文分别封装好之后,再将若干个第一路由报文依次发送至监控服务器,这也是可行的。
对于监控服务器来说,在接收到任一个第一路由报文后,其会对接收到的该第一路由报文进行解封装,并存储解封装后获得的路由信息。这样,在第一BGP路由器将所有第一路由报文均发送至监控服务器,且监控服务器对接收到的所有第一路由报文均进行解封装后,监控服务器内将会存储有目标第二BGP路由器的所有初始信息,故第一BGP路由器可以向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,例如EOR报文。当监控服务器接收到该结束报文后,监控服务器就可以根据实际需求,对目标第二BGP路由器的初始路由信息进行分析或处理。
S203,若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为针对具有第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息。
其中,第二标记可以为batchchg标记,当第一BGP路由器的本地已存储的某一路由信息上具有batchchg标记时,这表示该路由信息在被封装至第一路由报文后发生了更改。
可以理解的是,在第一路由报文的发送过程中,第一BGP路由器可能会接收到来自于目标第二BGP路由器的第二路由报文(可以认为是实时路由信息)。此时,第一BGP路由器会对接收到的第二路由报文进行解封装。在解封装之后,第一BGP路由器获得的报文信息存在三种可能的类型,分别是:全新完整的路由信息、对已有路由信息的更新信息,以及对已有路由信息的删除信息。
需要说明的是,在对第二路由报文进行解封装后获得的为对已有路由信息的更新信息时,根据更新信息的针对对象的不同,后续处理过程存在着一定的差异。
具体来说,若解封装后获得的更新信息的针对对象是具有第一标记的路由信息,很显然,该更新信息的针对对象,即待更新路由信息已经被封装至第一路由报文中,并被发送至监控服务器了。由于监控服务器当前可能正在接收第一路由报文和对接收到的第一路由报文进行解封装,为了避免增加监控服务器的负担,在发送结束报文之前,第一BGP路由器仅会根据上述更新信息来更新本地存储的待更新路由信息,并为待更新路由信息添加第二标记,其并不会将经过更新的路由信息封装为路由报文发送至监控服务器。也就是说,在获得结束报文之前,监控服务器仅需要接收第一路由报文、对接收到的第一路由报文进行解封装,以及存储对第一路由报文进行解封装后获得的路由信息,而无需执行其他的操作。
相反,若解封装后获得的更新信息的针对对象是不具有第一标记的路由信息,很显然,该更新信息的针对对象,即待更新路由信息还未被封装至第一路由报文中,也未被发送至监控服务器。这时,第一BGP路由器可以直接根据上述更新信息来更新待更新路由信息,当待更新路由信息被更新之后,经过更新的路由信息就会被封装至第一路由报文中,并发送至监控服务器。当监控服务器获得该第一路由报文并对该第一路由报文解封装后,监控服务器获得的就是已经经过更新了的路由信息。
S204,当发送完结束报文后,将具有第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有第二标记的各路由信息上的第二标记,将第三路由报文发送至监控服务器,以使得监控服务器在接收并解封装第三路由报文后,更新相应的路由信息。
很明显,在S203中,当对第二路由报文解封装后获得为针对具有第一标记的路由信息的更新信息时,第一BGP路由器仅仅对本地存储的待更新路由信息进行了更新,并为待更新路由信息添加了第二标记,监控服务器内的路由信息并未进行相应的更新。为了使监控服务器内的路由信息也能够进行相应的更新,在将结束报文发送至监控服务器后,第一BGP路由器可以遍历本地当前存储的路由信息,以查找到具有第二标记的路由报文。接下来,第一BGP路由器可以将具有第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有第二标记的各路由信息上的第二标记,并将第三路由报文发送至监控服务器。可以理解的是,若第一BGP路由器的本地已存储的、具有第二标记的路由信息的数量较多,那么这些路由信息就会被封装为若干个第三路由报文,并依次发送至监控服务器。这样,当监控服务器接收并解封装第三路由报文后,监控服务器就会获得相应路由信息的更新信息,监控服务器可以根据获得的更新信息,对自身内部存储的、相应的路由信息进行更新。最终,监控服务器内存储的目标第二BGP路由器的路由信息将会与目标第二BGP路由器内存储的路由信息一致。
本方案中,在目标第二BGP路由器对应的预定条件满足的情况下,第一BGP路由器会将本地已存储的、来自于目标第二BGP路由器的路由信息,即目标第二BGP路由器的初始路由信息封装为第一路由报文并发送至监控服务器。在发送第一路由报文的同时,如果第一BGP路由器接收到了来自于目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为针对已发送至监控服务器的初始路由信息的更新信息时,第一BGP路由器仅会更新自身内部存储的待更新路由信息。在目标第二BGP路由器的初始路由信息均发送至监控服务器,且向监控服务器发送结束报文后,第一BGP路由器才会将经过更新的初始路由信息封装为第三路由报文并发送至监控服务器,以使得监控服务器在接收并解封装第三路由报文后,对相应的路由信息进行更新。
与现有技术相比,本方案中,第一BGP路由器是将自身内部已存储的、来自于目标第二BGP路由器的路由信息,即第二BGP路由器的初始路由信息直接发送至监控服务器的,目标第二BGP路由器无需重新向第一BGP路由器发送所有初始路由信息,故监控服务器收集目标第二BGP路由器的初始路由信息所需花费的时间会大大地缩减。此外,在第一BGP路由器将目标第二BGP路由器的初始路由信息均发送至监控服务器后,第一BGP路由器才会将目标第二BGP路由器的实时路由信息发送至监控服务器,即初始路由信息和实时路由信息是分开发送的,故第一BGP路由器可以向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,相应地,监控服务器能够确定出目标第二BGP路由器的初始路由信息收集完毕的时间。
可以看出,当通过监控服务器对某一BGP路由器的邻居路由器进行监控时,本方案可以有效地缩短监控服务器收集该邻居路由器的初始路由信息所需花费的时间,以及保证监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
可选地,该方法还可以包括:
若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为针对具有第一标记的路由信息的删除信息时,为待删除路由信息添加第三标记;
当发送完结束报文后,生成用于删除具有第三标记的路由信息的报文信息,将生成的报文信息封装为第四路由报文后发送至监控服务器,以使得监控服务器在接收并解封装第四路由报文后,删除相应的路由信息。
其中,第三标记可以为delete标记,当第一BGP路由器的本地存储的某一路由信息具有delete标记时,这说明该路由信息是无用的或者不可达的路由信息,该路由信息需要被删除。
可以理解的是,在第一路由报文的发送过程中,第一BGP路由器可能会接收到来自于目标第二BGP路由器的第二路由报文。此时,第一BGP路由器会对接收到的第二路由报文进行解封装。在解封装之后,第一BGP路由器获得的报文信息存在三种可能的类型,分别是:全新完整的路由信息、对已有路由信息的更新信息,以及对已有路由信息的删除信息。
需要说明的是,在对第二路由报文进行解封装后获得的为对已有路由信息的删除信息时,根据删除信息的针对对象的不同,后续处理过程存在着一定的差异。
具体来说,若解封装后获得的删除信息的针对对象是具有第一标记的路由信息,很显然,该删除信息的针对对象,即待删除路由信息已经被封装至第一路由报文中,并被发送至监控服务器了。由于监控服务器当前可能正在接收第一路由报文和对接收到的第一路由报文进行解封装,为了避免增加监控服务器的负担,在发送结束报文之前,第一BGP路由器仅会根据上述删除信息,为本地存储的待删除路由信息添加第三标记(即删除标记),以表征该路由信息在后续过程中需要被删除。也就是说,在获得结束报文之前,监控服务器仅需要接收第一路由报文、对接收到的第一路由报文进行解封装,以及存储对第一路由报文进行解封装后获得的路由信息,而无需执行其他的操作。
在发送完结束报文后,第一BGP路由器会生成用于删除具有第三标记的路由信息的报文信息,并将生成的报文信息封装为第四路由报文后发送至监控服务器。这样,当监控服务器接收并解封装第四路由报文后,监控服务器就会获得相应路由信息的删除信息,监控服务器根据获得的删除信息就可以对自身内部存储的、相应的路由信息进行删除。最终,监控服务器内存储的目标第二BGP路由器的路由信息将会与目标第二BGP路由器内存储的路由信息一致。
相反,若解封装后获得的删除信息的针对对象是不具有第一标记的路由信息,很显然,该删除信息的针对对象,即待删除路由信息还未被封装至第一路由报文中,也未被发送至监控服务器。这时,第一BGP路由器可以根据解封后获得的删除信息来删除待删除路由信息。当待删除路由信息被删除之后,第一BGP路由器中就不会存在这条路由信息了,相应地,这条已经删除的路由信息根本就不会被封装至第一路由报文中并发送至监控服务器。最终,监控服务器内存储的目标第二BGP路由器的路由信息也会与目标第二BGP路由器内存储的路由信息一致。
可以看出,本实施例不仅可以有效地减小监控服务器的负担,同时还可以保证监控服务器内存储的目标第二BGP路由器的路由信息与目标第二BGP路由器内存储的路由信息一致。
可选地,该方法还可以包括:
若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为全新完整的路由信息时,为该全新完整的路由信息添加第四标记;
当发送完结束报文后,将具有第四标记的路由信息封装为第五路由报文,删除本地已存储的、具有第四标记的各路由信息上的第四标记,将第五路由报文发送至监控服务器,以使得监控服务器在接收并解封装第五路由报文后,存储解封装后获得的路由信息。
其中,第四标记可以为new标记,若第一BGP路由器的本地存储的某一路由信息具有new标记,这说明该路由信息是一条全新的、可达的路由信息。
可以理解的是,在第一路由报文的发送过程中,第一BGP路由器可能会接收到来自于目标第二BGP路由器的第二路由报文。此时,第一BGP路由器会对接收到的第二路由报文进行解封装。在解封装之后,第一BGP路由器获得的报文信息存在三种可能的类型,分别是:全新完整的路由信息、对已有路由信息的更新信息,以及对已有路由信息的删除信息。
需要说明的是,若解封装后获得的报文信息为全新完整的路由信息,由于监控服务器当前正在接收第一路由报文和对接收到的第一路由报文进行解封装,为了避免增加监控服务器的负担,在发送结束报文之前,第一BGP路由器仅会在本地存储该全新完整的路由信息,并为该全新完整的路由信息添加第四标记,其并不会将该全新完整的路由信息封装为路由报文并发送至监控服务器。也就是说,在获得结束报文之前,监控服务器仅需要接收第一路由报文、对接收到的第一路由报文进行解封装,以及存储对第一路由报文进行解封装后获得的路由信息,而无需执行其他的操作。
在发送完结束报文后,第一BGP路由器会将具有第四标记的路由信息封装为第五路由报文,删除本地已存储的、具有第四标记的各路由信息上的第四标记,将第五路由报文发送至监控服务器。这样,当监控服务器接收并解封装第五路由报文后,监控服务器就会存储解封装后获得的路由信息。最终,监控服务器内存储的目标第二BGP路由器的路由信息会与目标第二BGP路由器内存储的路由信息一致。
可以看出,本实施例不仅可以有效地减小监控服务器的负担,同时还可以保证监控服务器内存储的目标第二BGP路由器的路由信息与目标第二BGP路由器内存储的路由信息一致。
可选地,监控服务器所监控的第二BGP路由器的数量为多个,第一BGP路由器内具有第一信息表,第一信息表中具有按照预设的优先级顺序排列的标识信息,第一信息表中的标识信息为监控服务器所监控的多个第二BGP路由器中、初始路由信息未被监控服务器收集的第二BGP路由器的标识信息。
其中,监控服务器所监控的第二BGP路由器的数量可以为两个、三个或者三个以上,这都是可行的。
需要说明的是,在第一BGP路由器与监控服务器建立TCP连接后,第一BGP路由器可以将该监控服务器所监控的第二BGP路由器的标识信息加入第一信息表中。可以理解的是,各标识信息被加入第一信息表中的时刻一般存在着先后顺序,相应地,各标识信息的排列顺序可以与该标识信息加入第一信息表中的时刻相关联。具体地,排在第一位的可以为加入时间最早的标识信息,排在第二位的可以为加入时间第二早的标识信息,……,排在最后一位的可以为加入时间最晚的标识信息。
需要说明的是,第二BGP路由器对应的预定条件的具体形式多样,下面进行举例介绍。
在本发明实施例的一种具体实现形式中,第二BGP路由器对应的预定条件可以为:当前不存在具有第五标记的标识信息,并且,目标第二BGP路由器的标识信息为第一信息表中优先级最高(即排在第一位)的标识信息。
相应地,在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于目标第二BGP路由器的路由信息封装为至少一个第一路由报文,可以包括:
在当前不存在具有第五标记的标识信息的情况下,从第一信息表中选取优先级最高的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器,从第一信息表中提取所选取的标识信息,并为所提取的标识信息添加第五标记,将本地已存储的、来自于目标第二BGP路由器的路由信息封装为至少一个第一路由报文;
向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,可以包括:
向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,并删除所提取的标识信息上的第五标记。
容易理解的是,若当前存在一具有第五标记的标识信息,这说明第一BGP路由器当前正在向监控服务器发送具有该标识信息的第二BGP路由器的初始路由信息,相应地,监控服务器正在收集具有该标识信息的第二BGP路由器的初始路由信息。这种情况下,其他的第二BGP路由器对应的预定条件均不会满足,故第一BGP路由器不会向监控服务器发送其他的第二BGP路由器的初始路由信息。
容易看出,第一BGP路由器每次只会向监控服务器发送某一第二BGP路由器的初始路由信息,这样可以有效地减小监控服务器的负担。
相反,若当前不存在具有第五标记的标识信息,这说明第一BGP路由器当前未在向监控服务器发送任一第二BGP路由器的初始路由信息。此时,第一BGP路由器可以去第一信息表中选取优先级最高(即排在第一位)的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器。此外,第一BGP路由器还可以从第一信息表中提取所选取的标识,并为所提取的标识信息添加第五标记。接下来,第一BGP路由器可以向监控服务器发送目标第二BGP路由器的初始路由信息。在发送完结束报文后,即表明该目标第二BGP路由器的初始路由信息已经被监控服务器收集完毕了,此时,第一BGP路由器可以删除所提取的标识信息上的第五标记。容易看出,当前又不存在具有第五标记的标识信息了,故第一BGP路由器会再次去第一信息表中选取优先级最高的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器。后续过程与上述描述类似,在此不再赘述。
需要说明的是,第一BGP路由器会不断重复上述操作,直至第一信息表中不存在任一标识信息。最终,监控服务器能够收集到其所监控的各第二BGP路由器的初始路由信息。
可以看出,本实施例可以保证监控服务器能够收集到其所监控的各第二BGP路由器的初始路由信息。另外,第一BGP路由器每次只会向监控服务器发送某一第二BGP路由器的初始路由信息,这样可以有效地减小监控服务器的负担。
可选地,第一BGP路由器与多个监控服务器连接,第一BGP路由器内还存储有与各第二BGP路由器一一对应的第二信息表,每个第二BGP路由器对应的第二信息表中包括监控该第二BGP路由器的各监控服务器的标识信息,其中,已收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第六标记,未收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第七标记。
其中,第六标记和第七标记可以对第二BGP路由器的初始路由信息是否被监控服务器收集过进行有效地标识。
依次发送所有第一路由报文至监控服务器后,向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,可以包括:
依次发送所有第一路由报文至目标监控服务器后,向目标监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,其中,目标监控服务器为具有目标标识信息的监控服务器,目标标识信息为目标第二BGP路由器对应的第二信息表中的、具有第七标记的标识信息。
本实施例中,在目标第二BGP路由器对应的第二信息表中、具有第七标记的标识信息的数量为多个(至少两个)的情况下,这说明当前存在着多个未收集过目标第二BGP路由器的初始路由信息的监控服务器。这时,第一BGP路由器可以向每个未收集过目标第二BGP路由器的初始路由信息的监控服务器发送第一路由报文。这样,第一BGP路由器只需要将自身内部存储的、来自于目标第二BGP路由器的路由信息封装一次即可,无需对同一路由信息进行重复封装,这样可以有效地减小第一BGP路由器的负担。
另外,需要强调的是,为了能够对第二BGP路由器的初始路由信息是否被监控服务器收集过进行有效地标识,除了利用第六标记和第七标记进行区分外,第一BGP路由器也可以针对每个第二BGP路由器分别存储第三信息表和第四信息表。其中,任一第二BGP路由器对应的第三信息表中存储有未收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息,任一第二BGP路由器对应的第四信息表中存储有已收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息,这也是可行的。
本实施例中,将第三路由报文发送至监控服务器,以使得监控服务器在接收并解封装第三路由报文后,更新相应的路由信息,可以包括:
将第三路由报文发送至目标监控服务器,并将目标第二BGP路由器对应的第二信息表中、目标标识信息上的标记更改为第六标记,以使得目标监控服务器在接收并解封装第三路由报文后,更新自身内部存储的相应的路由信息。
本实施例中,当第一BGP路由器将第三路由报文发送至目标监控服务器后,第一BGP路由器会将目标第二BGP路由器对应的第二信息表中、目标标识信息上的标记更改为第六标记,以表征目标第二BGP路由器的初始路由信息已经被具有目标标识信息的监控服务器收集过了。这样,第一BGP路由器不会向具有目标标识信息的监控服务器重复发送目标第二BGP路由器的初始路由信息经封装后得到的第一路由报文,相应地,各监控服务器也无需对重复接收到的路由报文进行解封装,这样可以有效地减小第一BGP路由器和监控服务器的负担。
该方法还包括:
当检测到自身与任一监控服务器的连接断开时,将该监控服务器的标识信息从其所在的各第二信息表中删除。
可以理解的是,若第一BGP路由器与任一监控服务器的连接断开,则该监控服务器将无法继续对第一BGP路由器的邻居路由器进行监控,相应地,第一BGP路由器无需再将该监控服务器所监控的第二BGP路由器的路由信息发送至该监控服务器,故第一BGP路由器可以直接将该监控服务器的标识信息从其所在的第二信息表中删除。
下面结合图3,以一个具体的例子对第一BGP路由器的工作流程进行详细地说明。
假设第一BGP路由器为A,监控服务器为S1,A的邻居路由器为B和C,如图3所示,A可以包括第一信息处理模块和第二信息处理模块,第二信息处理模块内可以预先配置有S1所监控的路由器的信息,例如B和C的信息,这样,无论A和S1是否建立TCP连接,A均能获知S1所监控的为B和C。实际工作时,S1可以与第二信息处理模块建立TCP连接,在TCP连接建立后,第二信息处理模块会将B的标识信息和C的标识信息依次加入第一信息表,即List1中。假设当前不存在具有第五标记的标识信息,并且,对于第一信息表中已存的各标识信息而言,B的标识信息的加入时间是最早的。这样,第一信息处理模块会从List1中取出B的标识信息,并为B的标识信息添加第五标记,同时,第一信息处理模块会将S1的标识信息添加至B所对应的第三信息表,即BeginList列表。第一信息处理模块会将本地已存储的,来自于B的路由信息(即B的初始路由信息)封装为第一路由报文,并为已封装的路由信息添加第一标记,即batch标记。具体地,该第一路由报文为标准BGP UPDATE报文。接下来,第一信息处理模块可以将封装好的第一路由报文通知给第二信息处理模块,此时,第二信息处理模块会在为第一路由报文加上BMP报文头后,将其发送至具有B所对应的第三信息表中的标识信息的各监控服务器(为了方便描述,下文中简称为监控组),很显然,该监控组中必然包括S1,因此,S1能够收集到B的初始路由信息。
可以理解的是,第二信息处理模块在向监控组发送加上了BMP报文头后的第一路由报文的同时,第一信息处理模块可能会接收到来在于B的第二路由报文,此时第一信息处理模块会对接收到的第二路由报文进行解封装,并且,解封装后获得的报文信息存在三种可能的类型,分别是:全新完整的路由信息、对已有路由信息的更新信息,以及对已有路由信息的删除信息。
对于第一信息处理模块而言,若解封装后获得的为对已有路由信息的更新信息,且该更新信息的针对对象,即待更新路由信息为具有batch标记的路由信息,此时,第一信息处理模块会为待更新路由信息添加第二标记,即batchchg标记。若解封装后获得的为对已有路由信息的删除信息,且该删除信息的针对对象,即待删除路由信息为具有batch标记的路由信息,此时,第一信息处理模块会为待删除路由信息添加第三标记,即delete标记。若解封装后获得的为全新完整的路由信息,此时,第一信息处理模块会为该全新完整的路由信息添加第四标记,即new标记。接下来,第一信息处理模块会继续将封装好的第一路由报文通知给第二信息处理模块,第二信息处理模块则会继续为第一路由报文加上BMP报文头,并将其发送至监控组。在将所有第一路由报文均通知给第二信息处理模块后,第一信息处理模块会向第二信息处理模块通知EOR报文,此时,第二信息处理模块会为该EOR报文加上BMP报文头,并将其发送至监控组,以告知监控组中的各监控服务器,B的初始路由信息发送完毕。
在向第二信息处理模块通知EOR报文后,第一信息处理模块可以将具有batchchg标记的路由信息封装为第三路由报文,并将该第三路由报文通知给第二信息处理模块。这样,第二信息处理模块会为该第三路由报文添加BMP报文头,并向监控组中的各监控服务器发送携带BMP报文头的第三路由报文。这样,监控组中的各监控服务器在接收到第三路由报文,并对其解封装后,其可以根据解封装后获得的报文信息更新自身内部存储的相应的路由信息。
在向第二信息处理模块通知EOR报文后,第一信息处理模块可以生成用于删除具有delete标记的路由信息的报文信息,将生成的报文信息封装为第四路由报文,并将该第四路由报文通知给第二信息处理模块。这样,第二信息处理模块会为该第四路由报文添加BMP报文头,并向监控组中的各监控服务器发送携带BMP报文头的第四路由报文。这样,监控组中的各监控服务器在接收到第四路由报文,并对其解封装后,其可以根据解封装后获得的报文信息删除自身内部存储的相应的路由信息。
在向第二信息处理模块通知EOR报文后,第一信息处理模块可以将具有new标记的路由信息封装为第五路由报文,并将该第五路由报文通知给第二信息处理模块。这样,第二信息处理模块会为该第五路由报文添加BMP报文头,并向监控组中的各监控服务器发送携带BMP报文头的第五路由报文。这样,监控组中的各监控服务器在接收到第五路由报文,并对其解封装后,其可以存储解封装后获得的路由信息。
需要强调的是,第一信息处理模块也可以将具有batchchg标记的路由信息、用于删除具有delete标记的路由信息的报文信息,以及具有new标记的路由信息同时封装在第六路由报文中,并将封装好的第六路由报文通知给第二信息处理模块,以使得第二信息处理模块在为该第六路由报文添加BMP报文头后,向监控组中的各监控服务器发送携带BMP报文头的第六路由报文。这样,监控组中的各监控服务器在接收到第六路由报文,并对其解封装后,其可以根据解封装后获得的报文信息的类型,执行相应的操作。
需要说明的是,在向第二信息处理模块通知EOR报文后,第一信息处理模块可以删除B的标识信息上的第五标记。另外,在将第三路由报文、第四路由报文和第五路由报文均通知给第二信息处理模块后,第一信息处理模块可以删除B所对应的BeginList列表中、监控组中的各监控服务器的标识信息,并向B所对应的第四信息表,即Endlist列表中添加监控组中的各监控服务器的标识信息。之后,第一信息处理模块可以取出List1中的下一个标识信息,并向相应的监控服务器发送具有所取出的标识信息的路由器的路由信息。
综上,在通过监控服务器对某一BGP路由器的邻居路由器进行监控时,本实施例有效地缩短了监控服务器收集该邻居路由器的初始路由信息所需花费的时间,同时保证了监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
下面对本发明实施例所提供的一种被监控邻居初始路由信息发送装置进行说明。
需要说明的是,本发明实施例所提供的一种被监控邻居初始路由信息发送装置可以应用于第一边界网关协议BGP路由器,第一BGP路由器与监控服务器连接,监控服务器用于监控至少一个第二BGP路由器,各第二BGP路由器均为第一BGP路由器的邻居路由器。
参见图4,图中示出了本发明实施例所提供的一种被监控邻居初始路由信息发送装置的结构框图。如图4所示,该装置可以包括:
第一处理模块41,用于在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于目标第二BGP路由器的路由信息添加第一标记,其中,目标第二BGP路由器为至少一个第二BGP路由器中的任一个;
第一发送模块42,用于依次发送所有第一路由报文至监控服务器后,向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文;
第二处理模块43,用于若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为针对具有第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息;
第三处理模块44,用于当发送完结束报文后,将具有第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有第二标记的各路由信息上的第二标记,将第三路由报文发送至监控服务器,以使得监控服务器在接收并解封装第三路由报文后,更新相应的路由信息。
与现有技术相比,本方案中,第一BGP路由器是将自身内部已存储的、来自于目标第二BGP路由器的路由信息,即第二BGP路由器的初始路由信息直接发送至监控服务器的,目标第二BGP路由器无需重新向第一BGP路由器发送所有初始路由信息,故监控服务器收集目标第二BGP路由器的初始路由信息所需花费的时间会大大地缩减。此外,在第一BGP路由器将目标第二BGP路由器的初始路由信息均发送至监控服务器后,第一BGP路由器才会将目标第二BGP路由器的实时路由信息发送至监控服务器,即初始路由信息和实时路由信息是分开发送的,故第一BGP路由器可以向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,相应地,监控服务器能够确定出目标第二BGP路由器的初始路由信息收集完毕的时间。
可以看出,当通过监控服务器对某一BGP路由器的邻居路由器进行监控时,本方案可以有效地缩短监控服务器收集该邻居路由器的初始路由信息所需花费的时间,以及保证监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
可选地,该装置还可以包括:
第四处理模块,用于若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为针对具有第一标记的路由信息的删除信息时,为待删除路由信息添加第三标记;
第五处理模块,用于当发送完结束报文后,生成用于删除具有第三标记的路由信息的报文信息,将生成的报文信息封装为第四路由报文后发送至监控服务器,以使得监控服务器在接收并解封装第四路由报文后,删除相应的路由信息。
可选地,该装置还可以包括:
第六处理模块,用于若在发送第一路由报文的同时,接收到来自目标第二BGP路由器的第二路由报文,且对第二路由报文进行解封装后获得的为全新完整的路由信息时,为该全新完整的路由信息添加第四标记;
第七处理模块,用于当发送完结束报文后,将具有第四标记的路由信息封装为第五路由报文,删除本地已存储的、具有第四标记的各路由信息上的第四标记,将第五路由报文发送至监控服务器,以使得监控服务器在接收并解封装第五路由报文后,存储解封装后获得的路由信息。
可选地,监控服务器所监控的第二BGP路由器的数量为多个,第一BGP路由器内具有第一信息表,第一信息表中具有按照预设的优先级顺序排列的标识信息,第一信息表中的标识信息为监控服务器所监控的多个第二BGP路由器中、初始路由信息未被监控服务器收集的第二BGP路由器的标识信息;
第一处理模块,具体用于:
在当前不存在具有第五标记的标识信息的情况下,从第一信息表中选取优先级最高的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器,从第一信息表中提取所选取的标识信息,并为所提取的标识信息添加第五标记,将本地已存储的、来自于目标第二BGP路由器的路由信息封装为至少一个第一路由报文;
第一发送模块,具体用于:
向监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,并删除所提取的标识信息上的第五标记。
可选地,第一BGP路由器与多个监控服务器连接,第一BGP路由器内还存储有与各第二BGP路由器一一对应的第二信息表,每个第二BGP路由器对应的第二信息表中包括监控该第二BGP路由器的各监控服务器的标识信息,其中,已收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第六标记,未收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第七标记;
第一发送模块,具体用于:
依次发送所有第一路由报文至目标监控服务器后,向目标监控服务器发送用于表征目标第二BGP路由器的初始路由信息发送完毕的结束报文,其中,目标监控服务器为具有目标标识信息的监控服务器,目标标识信息为目标第二BGP路由器对应的第二信息表中的、具有第七标记的标识信息;
第三处理模块,具体用于:
将第三路由报文发送至目标监控服务器,并将目标第二BGP路由器对应的第二信息表中、目标标识信息上的标记更改为第六标记,以使得目标监控服务器在接收并解封装第三路由报文后,更新自身内部存储的相应的路由信息;
该装置还包括:
第八处理模块,用于当检测到自身与任一监控服务器的连接断开时,将该监控服务器的标识信息从其所在的各第二信息表中删除。
综上,在通过监控服务器对某一BGP路由器的邻居路由器进行监控时,本实施例有效地缩短了监控服务器收集该邻居路由器的初始路由信息所需花费的时间,同时保证了监控服务器能够确定该邻居路由器的初始路由信息收集完毕的时间。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种被监控邻居初始路由信息发送方法,其特征在于,应用于第一边界网关协议BGP路由器,所述第一BGP路由器与监控服务器连接,所述监控服务器用于监控至少一个第二BGP路由器,各所述第二BGP路由器均为所述第一BGP路由器的邻居路由器,所述方法包括:
在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于所述目标第二BGP路由器的路由信息添加第一标记,其中,所述目标第二BGP路由器为至少一个第二BGP路由器中的任一个;
依次发送所有第一路由报文至所述监控服务器后,向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文;
若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息;
当发送完结束报文后,将具有所述第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有所述第二标记的各路由信息上的第二标记,将所述第三路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第三路由报文后,更新相应的路由信息;
所述监控服务器所监控的第二BGP路由器的数量为多个,所述第一BGP路由器内具有第一信息表,所述第一信息表中具有按照预设的优先级顺序排列的标识信息,所述第一信息表中的标识信息为所述监控服务器所监控的多个第二BGP路由器中、初始路由信息未被所述监控服务器收集的第二BGP路由器的标识信息;
所述在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文,包括:
在当前不存在具有第五标记的标识信息的情况下,从所述第一信息表中选取优先级最高的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器,从所述第一信息表中提取所选取的标识信息,并为所提取的标识信息添加所述第五标记,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的删除信息时,为待删除路由信息添加第三标记;
当发送完结束报文后,生成用于删除具有所述第三标记的路由信息的报文信息,将生成的报文信息封装为第四路由报文后发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第四路由报文后,删除相应的路由信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为全新完整的路由信息时,为该全新完整的路由信息添加第四标记;
当发送完结束报文后,将具有所述第四标记的路由信息封装为第五路由报文,删除本地已存储的、具有所述第四标记的各路由信息上的第四标记,将所述第五路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第五路由报文后,存储解封装后获得的路由信息。
4.根据权利要求1所述的方法,其特征在于,所述向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,包括:
向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,并删除所提取的标识信息上的第五标记。
5.根据权利要求1所述的方法,其特征在于,所述第一BGP路由器与多个监控服务器连接,所述第一BGP路由器内还存储有与各第二BGP路由器一一对应的第二信息表,每个第二BGP路由器对应的第二信息表中包括监控该第二BGP路由器的各监控服务器的标识信息,其中,已收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第六标记,未收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第七标记;
所述依次发送所有第一路由报文至所述监控服务器后,向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,包括:
依次发送所有第一路由报文至目标监控服务器后,向所述目标监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,其中,所述目标监控服务器为具有目标标识信息的监控服务器,所述目标标识信息为所述目标第二BGP路由器对应的第二信息表中的、具有所述第七标记的标识信息;
所述将所述第三路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第三路由报文后,更新相应的路由信息,包括:
将所述第三路由报文发送至所述目标监控服务器,并将所述目标第二BGP路由器对应的第二信息表中、所述目标标识信息上的标记更改为所述第六标记,以使得所述目标监控服务器在接收并解封装所述第三路由报文后,更新自身内部存储的相应的路由信息;
所述方法还包括:
当检测到自身与任一监控服务器的连接断开时,将该监控服务器的标识信息从其所在的各第二信息表中删除。
6.一种被监控邻居初始路由信息发送装置,其特征在于,应用于第一边界网关协议BGP路由器,所述第一BGP路由器与监控服务器连接,所述监控服务器用于监控至少一个第二BGP路由器,各所述第二BGP路由器均为所述第一BGP路由器的邻居路由器,所述装置包括:
第一处理模块,用于在目标第二BGP路由器对应的预定条件满足的情况下,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文,为本地已存储的、且已封装的来自于所述目标第二BGP路由器的路由信息添加第一标记,其中,所述目标第二BGP路由器为至少一个第二BGP路由器中的任一个;
第一发送模块,用于依次发送所有第一路由报文至所述监控服务器后,向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文;
第二处理模块,用于若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的更新信息时,为待更新路由信息添加第二标记,并更新待更新路由信息;
第三处理模块,用于当发送完结束报文后,将具有所述第二标记的路由信息封装为第三路由报文,删除本地已存储的、具有所述第二标记的各路由信息上的第二标记,将所述第三路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第三路由报文后,更新相应的路由信息;
所述监控服务器所监控的第二BGP路由器的数量为多个,所述第一BGP路由器内具有第一信息表,所述第一信息表中具有按照预设的优先级顺序排列的标识信息,所述第一信息表中的标识信息为所述监控服务器所监控的多个第二BGP路由器中、初始路由信息未被所述监控服务器收集的第二BGP路由器的标识信息;
所述第一处理模块,具体用于:
在当前不存在具有第五标记的标识信息的情况下,从所述第一信息表中选取优先级最高的标识信息,将具有所选取的标识信息的第二BGP路由器确定为所对应的预定条件满足的目标第二BGP路由器,从所述第一信息表中提取所选取的标识信息,并为所提取的标识信息添加所述第五标记,将本地已存储的、来自于所述目标第二BGP路由器的路由信息封装为至少一个第一路由报文。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第四处理模块,用于若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为针对具有所述第一标记的路由信息的删除信息时,为待删除路由信息添加第三标记;
第五处理模块,用于当发送完结束报文后,生成用于删除具有所述第三标记的路由信息的报文信息,将生成的报文信息封装为第四路由报文后发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第四路由报文后,删除相应的路由信息。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第六处理模块,用于若在发送所述第一路由报文的同时,接收到来自所述目标第二BGP路由器的第二路由报文,且对所述第二路由报文进行解封装后获得的为全新完整的路由信息时,为该全新完整的路由信息添加第四标记;
第七处理模块,用于当发送完结束报文后,将具有所述第四标记的路由信息封装为第五路由报文,删除本地已存储的、具有所述第四标记的各路由信息上的第四标记,将所述第五路由报文发送至所述监控服务器,以使得所述监控服务器在接收并解封装所述第五路由报文后,存储解封装后获得的路由信息。
9.根据权利要求6所述的装置,其特征在于,所述第一发送模块,具体用于:
向所述监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,并删除所提取的标识信息上的第五标记。
10.根据权利要求6所述的装置,其特征在于,所述第一BGP路由器与多个监控服务器连接,所述第一BGP路由器内还存储有与各第二BGP路由器一一对应的第二信息表,每个第二BGP路由器对应的第二信息表中包括监控该第二BGP路由器的各监控服务器的标识信息,其中,已收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第六标记,未收集过该第二BGP路由器的初始路由信息的监控服务器的标识信息上具有第七标记;
所述第一发送模块,具体用于:
依次发送所有第一路由报文至目标监控服务器后,向所述目标监控服务器发送用于表征所述目标第二BGP路由器的初始路由信息发送完毕的结束报文,其中,所述目标监控服务器为具有目标标识信息的监控服务器,所述目标标识信息为所述目标第二BGP路由器对应的第二信息表中的、具有所述第七标记的标识信息;
所述第三处理模块,具体用于:
将所述第三路由报文发送至所述目标监控服务器,并将所述目标第二BGP路由器对应的第二信息表中、所述目标标识信息上的标记更改为所述第六标记,以使得所述目标监控服务器在接收并解封装所述第三路由报文后,更新自身内部存储的相应的路由信息;
所述装置还包括:
第八处理模块,用于当检测到自身与任一监控服务器的连接断开时,将该监控服务器的标识信息从其所在的各第二信息表中删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610955762.6A CN106506376B (zh) | 2016-10-27 | 2016-10-27 | 一种被监控邻居初始路由信息发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610955762.6A CN106506376B (zh) | 2016-10-27 | 2016-10-27 | 一种被监控邻居初始路由信息发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106506376A CN106506376A (zh) | 2017-03-15 |
CN106506376B true CN106506376B (zh) | 2021-02-23 |
Family
ID=58321238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610955762.6A Active CN106506376B (zh) | 2016-10-27 | 2016-10-27 | 一种被监控邻居初始路由信息发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106506376B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572685B (zh) | 2020-04-29 | 2023-03-10 | 华为技术有限公司 | 一种信息上报方法、信息处理方法、装置及设备 |
CN113794644B (zh) * | 2021-10-12 | 2023-05-26 | 新华三信息安全技术有限公司 | 一种路由表项删除方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6970464B2 (en) * | 2003-04-01 | 2005-11-29 | Cisco Technology, Inc. | Method for recursive BGP route updates in MPLS networks |
CN101540696B (zh) * | 2009-04-15 | 2011-04-27 | 南京联创科技集团股份有限公司 | 基于智能路由模拟技术实现电信大网复杂的动态路由分析方法 |
US9225597B2 (en) * | 2014-03-14 | 2015-12-29 | Nicira, Inc. | Managed gateways peering with external router to attract ingress packets |
CN103986649B (zh) * | 2014-05-28 | 2017-08-11 | 新华三技术有限公司 | 一种边界网关协议平滑重启方法及路由设备 |
CN109246008B (zh) * | 2014-07-23 | 2021-08-20 | 华为技术有限公司 | 网络设备、系统和发送bgp信息的方法 |
CN104394079B (zh) * | 2014-11-26 | 2017-07-04 | 迈普通信技术股份有限公司 | 一种基于边界网关协议的下一跳路由检测方法及装置 |
CN106059934B (zh) * | 2016-06-27 | 2020-01-03 | 新华三技术有限公司 | 一种路由信息处理方法及装置 |
-
2016
- 2016-10-27 CN CN201610955762.6A patent/CN106506376B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106506376A (zh) | 2017-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9832130B2 (en) | Data packet routing method and device | |
CN111935014B (zh) | 基于SRv6网络的报文转发方法、装置、存储介质及电子设备 | |
RU2643475C2 (ru) | Многодоменная ретрансляция с маршрутизацией от источника на основе взаимодействующих сетевых контроллеров | |
US20150334000A1 (en) | Border gateway protocol (bgp) routes advertisement | |
CN105024985A (zh) | 一种报文处理方法及装置 | |
CN106899500B (zh) | 一种跨虚拟可扩展局域网的报文处理方法及装置 | |
US10855576B2 (en) | Information transmission method and device | |
CN106130819B (zh) | Vtep异常的检测方法及装置 | |
JP6195014B2 (ja) | 通信システム、通信方法、中継装置、および、通信プログラム | |
CN102970386B (zh) | 一种实现IPv6报文穿越IPv4网络的方法和设备 | |
CN106487537A (zh) | 业务链实现方法以及策略控制平台 | |
CN111510386A (zh) | 用于处理报文的方法和装置 | |
WO2018188663A1 (zh) | 信息通告方法及装置 | |
CN105025458B (zh) | 一种资源通告的方法、设备和系统 | |
WO2015080553A1 (en) | Method and system for enabling ip communication between an ip device and a non-ip internet of things device | |
CN106506376B (zh) | 一种被监控邻居初始路由信息发送方法及装置 | |
CN111130982B (zh) | 报文转发方法、装置、网关设备及可读存储介质 | |
CN104486217A (zh) | 跨网络的报文转发方法和设备 | |
US10764724B2 (en) | Method and apparatus for implementing member resource processing | |
JP2011055236A (ja) | 通信システム、マッピング情報通知装置、マッピング情報通知方法及びプログラム | |
CN110830354B (zh) | 数据转发方法、装置、设备及存储介质 | |
EP3174322A1 (en) | Method for deleting notification resource, and common service entity | |
CN105191231B (zh) | 网关装置 | |
CN102882797B (zh) | 批量删除VPNv4或VPNv6路由的方法及PE | |
CN102739519B (zh) | 根基多点服务实现方法、装置和系统、运营商边缘设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou science and Technology Industrial Park, high tech Industrial Development Zone, Zhejiang Province, No. six and road, No. 310 Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |