CN103944822A - Bgp路由通告方法和装置及bgp路由维护方法和装置 - Google Patents

Bgp路由通告方法和装置及bgp路由维护方法和装置 Download PDF

Info

Publication number
CN103944822A
CN103944822A CN201310022770.1A CN201310022770A CN103944822A CN 103944822 A CN103944822 A CN 103944822A CN 201310022770 A CN201310022770 A CN 201310022770A CN 103944822 A CN103944822 A CN 103944822A
Authority
CN
China
Prior art keywords
prefix
attribute
update message
neighbor node
notice
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
Application number
CN201310022770.1A
Other languages
English (en)
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.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201310022770.1A priority Critical patent/CN103944822A/zh
Priority to PCT/CN2014/070441 priority patent/WO2014110997A1/en
Priority to US14/648,149 priority patent/US20150334000A1/en
Publication of CN103944822A publication Critical patent/CN103944822A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing

Landscapes

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

Abstract

本发明公开了一种BGP路由通告方法和装置及BGP路由维护方法和装置。本发明在路由信息更新的通告时,将路由信息的前缀属性单独通告、并在单独通告前缀属性时附带能够标识该前缀属性的标识属性,而且,还将原本与前缀同时通告的前缀属性替换为长度更短的标识属性。因此,就相当于利用不同的UPDATE报文分别实现前缀属性和前缀的通告、并通过标识属性来确保前缀属性与前缀的关联性,由此,就使得前缀能够独占UPDATE报文的空间,相应地,就增加了UPDATE报文所能够携带的前缀数量,从而能够在通告路由信息更新时减少UPDATE报文的数量,进而提高路由信息更新通告的效率、并降低接收端用于解析UPDATE报文的开销。

Description

BGP路由通告方法和装置及BGP路由维护方法和装置
技术领域
本发明涉及BGP(Border Gateway Protocol,边界网关协议)路由技术,特别涉及一种BGP路由通告方法和装置、以及一种BGP路由维护方法和装置。
背景技术
BGP是一种用于AS(Autonomous System,自治系统)之间的动态路由协议,基于BGP所提供的网络可达信息在AS间交换的功能,能够在实现AS互联的基础上避免路由环路、并同时实现AS级别的可实施策略决策。
根据RFC4271定义,BGP有5种类型的报文:OPEN(打开)报文、KEEPALIVE(存活)报文、UPDATE(更新)报文、NOTIFICATION(通告)报文、以及ROUTE-REFRESH(路由刷新)报文。
其中,UPDATE报文主要用于邻居节点之间的路由信息通告。UPDATE报文出了19字节的报文头之外,还包括URL(Unfeasible Routes Length,不可达路由长度)字段、WR(WithdrawnRoutes,回收路由)字段、PAL(Path Arribute Length,路径属性长度)、PA(Path Arribute,路径属性)字段、以及网络层可达信息(Network Layer Reachability Information,NLRI)字段。一条UPDATE报文可以通告一类具有相同路径属性的可达路由,这些可达路由的前缀放在NLRI字段中,PA字段携带了这些路由的前缀属性,BGP根据这些前缀属性进行路由的选择;同时UPDATE报文还可以携带多条不可达路由,被撤销的不可达路由的前缀放在WR字段中。
请参见图1a,当邻居节点之间需要相互通告更新(首次出现、或发生变化)的路由信息时,作为发送端的邻居节点会将该路由信息的前缀属性和前缀携带在UPDATE报文中发送至作为接收端的其他邻居节点。此时发送的UPDATE报文中,NLRI字段内携带有路由信息的前缀,PA字段内携带有路由信息的所有前缀对应的前缀属性,PAL字段内填写前缀属性的长度,WR字段可以为空、URL字段可以填写为0。并且,若一个UPDATE报文的NLRI字段不足以携带路由信息的所有前缀,则可以将路由信息的所有前缀分别携带在多个UPDATE报文的NLRI字段中,但这些UPDATE报文的PA字段内均需要携带路由信息的所有前缀对应的前缀属性。
相应地,作为接收端的其他邻居节点在接收到上述的UPDATE报文后,会从UPDATE报文中提取出前缀及前缀属性,并将每个前缀所属的UPDATE报文中携带的前缀属性确认为该前缀对应的前缀属性,然后将提取出的前缀及对应的前缀属性更新至路由表中维护。
请参见图1b,当邻居节点之间需要相互通告撤销的路由信息时,作为发送端的邻居节点仍会向作为接收端的其他邻居节点发送UPDATE报文。与更新路由信息的情况不同,此时发送的UPDATE报文中,只需在WR字段中携带需要撤销的前缀、并在URL字段填写WR字段内的前缀的长度,而无需在PA字段内携带前缀属性、NLRI字段也为空,以及,PAL字段内填写为0。并且,若一个UPDATE报文的WR字段不足以携带所有前缀,则可以将所有前缀分别携带在多个UPDATE报文的WR字段中,且这些UPDATE报文的PA字段内均不需要携带对应的前缀属性。
相应地,作为接收端的其他邻居节点在接收到上述的UPDATE报文后,会从UPDATE报文中解析出需要撤销的前缀,然后将路由表中包含有该前缀以及该前缀对应的前缀属性的相应表项删除(图1b中以图形“×”表示删除),即,前缀及对应的前缀属性被同时删除。
按照上述方式,邻居节点之间可以利用UPDATE报文实现路由信息更新和路由信息撤销的通告,但是,在实现路由信息更新的通告时却存在如下问题:
在用于通告路由信息更新的每个UPDATE报文中,均需要同时携带前缀和前缀属性,但由于UPDATE报文的长度是有限的(最大长度为4096字节),因此,若前缀属性在UPDATE报文中占用的长度过多,则势必会减少每个UPDATE报文所能够携带的前缀数量,由此就会导致通告所需的UPDATE报文的数量过多。
例如,对于24位掩码路由的前缀来说,每条前缀需要占用UPDATE报文中的4字节。此时,若前缀属性仅占用UPDATE报文中的100字节,则1个UPDATE报文最多能够携带1000条左右的前缀,相应地,包含1000条前缀的路由信息只需要1个UPDATE报文即可实现通告。但若前缀属性占用UPDATE报文中的4000字节,则1个UPDATE报文最多只能携带20条左右的前缀,相应地,包含1000条前缀的路由信息需要将近50个UPDATE报文才可实现通告。
而且,随着网络的发展,BGP路由信息的前缀属性日趋复杂已经是不可避免的趋势,由此就会导致前缀属性在UPDATE报文中占用的长度会不断增长,从而使得用于通告路由信息更新的UPDATE报文数量随之增长。如此一来,不但导致路由信息更新的通告效率不高,而且还会使接收端用于解析UPDATE报文的开销过高。
发明内容
有鉴于此,本发明提供了一种BGP路由通告方法和装置、以及一种BGP路由维护方法和装置。
本发明提供的一种BGP路由通告方法,该BGP路由通告方法包括:
a1、当有更新的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
a2、将构造的第一UPDATE报文和第二UPDATE报文向邻居节点发送。
该BGP路由通告方法进一步包括:
a3、当有撤销的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
a4、将构造的第三UPDATE报文和第四UPDATE报文向邻居节点发送。
该BGP路由通告方法进一步包括:
a0、通过与邻居节点交互OPEN报文进行能力协商、以确定邻居节点是否支持属性的单独通告;其中,本端发出的OPEN报文中携带有表示可单独通告属性的能力标识;若邻居节点回复的OPEN报文中携带有该能力标识,则表示邻居节点支持属性的单独通告,否则表示邻居节点不支持属性的单独通告;
以及,步骤a1~a4均是在步骤a0确定邻居节点支持属性的单独通告之后执行的。
本发明提供的一种BGP路由维护方法,该BGP路由维护方法包括:
b1、接收邻居节点发送的用于通告路由信息的属性更新的第一UPDATE报文、以及用于通告路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
b2、将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
该BGP路由维护方法进一步包括:
b3、接收邻居节点发送的用于通告路由信息的属性撤销的第三UPDATE报文、以及用于通告该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
b4、依据第三UPDATE报文中携带的标识属性、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
该BGP路由维护方法进一步包括:
b0、通过与邻居节点交互OPEN报文进行能力协商、以向邻居节点告知本端是否支持属性的单独通告;其中,本端从邻居节点接收到的OPEN报文中携带有表示可单独通告属性的能力标识,本端向邻居节点回复的OPEN报文中携带有该能力标识、以向邻居节点告知本端支持属性的单独通告;
以及,步骤b1~b4均是在步骤b0向邻居节点告知本端支持属性的单独通告之后执行的。
该BGP路由维护方法进一步包括:
c0、当检测到本端与邻居节点断开时,判断本端是否与邻居节点在断开之前协商GR成功;
若是,则为属性列表中对应该邻居节点的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale标记,以待后续接收到邻居节点的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前。
本发明提供的一种BGP路由通告装置,该BGP路由通告装置包括:
更新通告构造模块,当有更新的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
更新通告发送模块,将构造的第一UPDATE报文和第二UPDATE报文向邻居节点发送。
该BGP路由通告装置进一步包括:
撤销通告构造模块,当有撤销的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
撤销通告发送模块,将构造的第三UPDATE报文和第四UPDATE报文向邻居节点发送。
该BGP路由通告装置进一步包括:
通告能力协商模块,通过与邻居节点交互OPEN报文进行能力协商、以确定邻居节点是否支持属性的单独通告;其中,本端发出的OPEN报文中携带有表示可单独通告属性的能力标识;若邻居节点回复的OPEN报文中携带有该能力标识,则表示邻居节点支持属性的单独通告,否则表示邻居节点不支持属性的单独通告;
以及,更新通告构造模块、更新通告发送模块、撤销通告构造模块、以及撤销通告发送模块均是在通告能力协商模块确定邻居节点支持属性的单独通告之后触发的。
本发明提供的一种BGP路由维护装置,该BGP路由维护装置包括:
更新通告接收模块,接收邻居节点发送的用于通告路由信息的属性更新的第一UPDATE报文、以及用于通告路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
更新通告处理模块,将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
该BGP路由维护装置进一步包括:
撤销通告接收模块,接收邻居节点发送的用于通告路由信息的属性撤销的第三UPDATE报文、以及用于通告该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
撤销通告处理模块,依据第三UPDATE报文中携带的标识属性、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
该BGP路由维护装置进一步包括:
通告能力协商模块,通过与邻居节点交互OPEN报文进行能力协商、以向邻居节点告知本端是否支持属性的单独通告;其中,本端从邻居节点接收到的OPEN报文中携带有表示可单独通告属性的能力标识,本端向邻居节点回复的OPEN报文中携带有该能力标识、以向邻居节点告知本端支持属性的单独通告;
以及,更新通告接收模块、更新通告处理模块、撤销通告接收模块、以及撤销通告处理模块均是在通告能力协商模块向邻居节点告知本端支持属性的单独通告之后触发的。
该BGP路由维护装置进一步包括:
邻居断开处理模块,当检测到本端与邻居节点断开时,判断本端是否与邻居节点在断开之前协商GR成功;
若是,则为属性列表中对应该邻居节点的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale标记,以待后续接收到邻居节点的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前缀。
由此可见,本发明在路由信息更新的通告时,将路由信息的前缀属性单独通告、并在前缀属性的单独通告时附带有能够标识该前缀属性的标识属性,而且,还将原本与前缀同时通告的前缀属性替换为长度更短的标识属性。因此,就相当于利用不同的UPDATE报文分别实现前缀属性和前缀的通告、并通过在UPDATE报文中携带标识属性来确保前缀属性与前缀的关联性,由此,就使得前缀能够独占UPDATE报文的空间,相应地,就增加了UPDATE报文所能够携带的前缀数量,从而能够在通告路由信息更新时减少UPDATE报文的数量,进而提高路由信息更新通告的效率、并降低接收端用于解析UPDATE报文的开销。
附图说明
图1a和图1b为现有技术中利用UPDATE报文实现BGP路由通告的原理示意图;
图2a和图2b为本发明实施例利用UPDATE报文实现BGP路由通告的原理示意图。具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
在本实施例中,当通告发送端需要通告更新的路由信息时,将路由信息的前缀属性单独通告、并在前缀属性的单独通告时附带有用于标识该前缀属性的标识属性,而且,还将原本与前缀同时通告的前缀属性替换为长度更短的标识属性。
因此,就相当于利用不同的UPDATE报文分别实现前缀属性和前缀的通告、并通过在UPDATE报文中携带标识属性来确保前缀属性与前缀在通告接收端路由维护时所需的关联性。
由此,就使得前缀能够独占UPDATE报文的空间、以增加UPDATE报文所能够携带的前缀数量,从而能够在通告路由信息更新时减少UPDATE报文的数量,进而提高路由信息更新通告的效率、并降低接收端用于解析UPDATE报文的开销。
例如,对于24位掩码路由的前缀来说,每条前缀需要占用UPDATE报文中的4字节。此时,即便前缀属性占用UPDATE报文中的4000字节,但由于前缀与前缀属性并不在同一个UPDATE中通告,并且,与前缀同在一个UPDATE报文中的标识属性的长度相比于UPDATE报文的最大长度4096字节可以忽略不计,因此,用于通告前缀的UPDATE报文所能够携带的前缀数量大约有1000条。相应地,包含1000条前缀的路由信息只需要2个UPDATE报文,1个用于单独通告前缀属性、1个用于单独通告1000条前缀。
可见,相比于现有技术所需的将近50个UPDATE报文,本实施例在需要通告大量路由前缀且前缀属性较长的情况下能够明显减少UPDATE报文的数量。
相应地,对于前缀属性与前缀分别通告的方式,通告接收端会对前缀属性和前缀分别进行维护、并通过标识属性相关联,因此,为了适应通过接收端对前缀属性和前缀采用的分别维护的方式,当通告发送端需要通告撤销的路由信息时,也需要分别通告前缀属性和前缀的撤销。虽然与现有技术相比,本实施例需要在通告撤销的路由信息时增加1个用于属性撤销通告的UPDATE报文,但相比于本实施例在通告路由信息更新时所能够减少的UPDATE报文数量,增加的该UPDATE报文所产生的影响可以忽略不计。
下面,对本实施例中的上述原理的具体实现进行详细说明。
首先,本实施例对BGP能力集进行了扩展,并在能力集中增加了Attr-Adv Cap(Attribute Advitise Capability,属性通告能力)标志,以此来表示邻居节点支持属性的单独通告,该能力标志的长度可以为1个字节。相应地,被配置有Attr-Adv Cap标记的邻居节点即具有可支持属性单独通告的Attr-Adv(Attribute Advitise,属性通告)特性,即,能够支持以本实施例中的原理实现路由通告。
在实际应用中,为了使本实施例与现有技术相兼容,可以在组网时只配置一部分邻居节点具备Attr-Adv特性,对于这种情况,当邻居节点之间的路由通告需要按照本实施例中的原理实现时,通告的双方可以通过交互OPEN报文进行能力协商、以确定对端的邻居节点是否支持属性的单独通告。
若任一端的邻居节点支持属性单独通告,则该邻居节点所发出的OPEN报文中会携带有上述的Attr-Adv Cap标志,相应地,若任一端的邻居节点从对端接收到的OPEN报文中携带有上述的Attr-Adv Cap标志,则可以确认对端的表示邻居节点支持属性的单独通告,否则认为邻居节点不支持属性的单独通告。
经过上述的能力协商过程,只有通告的双方都支持属性的单独通告时,邻居节点之间的路由通告才能够按照本实施例中如图2a和图2b所示的原理实现,否则,若有一端不支持支持属性的单独通告,则表示协商失败,此时只能按照现有的方式来实现通告。
当然,在实际应用中,也可以在组网时预先配置所有的邻居节点都支持属性的单独通告,这样,无需进行上述的能力协商即可使所有邻居节点之间的路由通告能够按照本实施例中的原理实现。
其次,本实施例对属性集进行了扩展,并在属性集中增加了上述的标识属性。其中,属性集中原有的各种前缀属性实际上是包含了具体的属性信息、并用于被前缀依附,但标识属性与属性集中的各种前缀属性不同,标识属性并未包含任何属性信息、而仅仅是包含了用来标记各种前缀属性的Attr-ID(Attribute Identify,属性标识),并且,标识属性也不用于被前缀依附、而仅仅是用于通过标识前缀属性而实现前缀与其依附的前缀属性相关联。
在具体实现时,标识属性可以按照协议规范所规定的属性格式来设置,即,包括属性类型、Flag(标记)、以及属性内容。其中:
属性类型可以设置为表示该属性专用于标记前缀属性的值,并且,对于所标记的前缀属性被更新和撤销的两种情况,属性类型的值也可以有所区分。例如,当标记的前缀属性被更新时,属性类型的值设置为0xff;当标记的前缀属性被撤销时,属性类型的值设置为0xfe。当然,在实际应用中,由于更新时的前缀通常携带在NLRI字段中、撤销时的前缀通常携带在WR字段中,此时,也可以不通过属性类型来区分更新和撤销的情况,而是直接依据前缀所在的字段来区分。
Flag可以设置为表示通告接收端必须识别该属性的值,例如0x40。即,只有具备可支持属性单独通告的Attr-Adv特性的接收端才能够识别该标识属性,因此,只有具备Attr-Adv特性的接收端才能够依据该标识属性进行相应的处理。
属性内容的长度可以设置为4字节、并包含用于标记前缀属性的Attr-ID。
另外,UPDATE报文在本实施例中需要实现四种通告功能:在路由信息更新时的属性通告、在路由信息更新时的前缀通告、在路由信息撤销时的属性通告、在路由信息撤销时的前缀通告。对于这四种功能的UPDATE报文的格式,本实施例也需要进行相应的修改。
1)对于在路由信息更新时实现属性通告的UPDATE报文(下文中为了便于描述而将其称为第一UPDATE报文),其只需在PA字段内携带前缀属性和标识属性、并在PAL字段内可以填写前缀属性和标识属性的长度之和,而无需包括NLRI字段;此外,其可以不需要WR字段、且URL字段可以填写为0;
2)对于在路由信息更新时实现前缀通告的UPDATE报文(下文中为了便于描述而将其称为第二UPDATE报文),其在PA字段内置需要携带标识属性、并在PAL字段内填写标识属性的长度(例如4字节),与此同时,其还在NLRI字段内携带前缀;此外,可以不需要WR字段、且URL字段可以填写为0;
3)对于在路由信息撤销时实现属性通告的UPDATE报文(下文中为了便于描述而将其称为第三UPDATE报文),其只需在PA字段内携带标识属性、并在PAL字段内填写标识属性的长度(例如4字节),而无需包括NLRI字段;此外,其可以不需要WR字段、且URL字段可以填写为0;
4)对于在路由信息撤销时实现前缀通告的UPDATE报文(下文中为了便于描述而将其称为第四UPDATE报文),其WR字段内携带前缀、并在URL字段可以填写为前缀的长度,可选地,在PA字段内置也可以携带标识属性、并在PAL字段内填写标识属性的长度(例如4字节);此外,其可以不需要NLRI字段。
基于上述原理及具体实现,本实施例提供了应用在通告发送端的一种BGP路由通告方法、以及应用在通告接收端的一种BGP路由维护方法,下面结合图2a和图2b进行详细说明。
请参见图2a,对于路由信息的更新,本实施例中的BGP路由通告方法包括在通告发送端执行的如下步骤:
a1、当有更新的路由信息需要向邻居节点(即通告接收端)通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
作为一种优选实施方式,可以在第一UPDATE报文的PA字段中携带有该路由信息的前缀属性,在第二UPDATE报文的NLRI字段携带有该路由信息的前缀,以及,在第一UPDATE报文和第二UPDATE报文的PA路径属性字段中均携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还利用属性类型中的值、例如0xff来表示该前缀属性用于更新;
a2、将构造的第一UPDATE报文和第二UPDATE报文向邻居节点(即通告接收端)发送。
上述步骤a2中,将所述第一UPDATE报文和第二UPDATE报文向邻居节点发送,以使得邻居节点将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性的属性内容中的Attr-ID,将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
相应地,仍参见图2a,对于路由信息的更新,本实施例中的BGP路由维护方法包括在通告接收端执行的如下步骤:
b1、接收邻居节点(即通告发送端)发送的用于通告路由信息的属性更新的上述第一UPDATE报文、以及用于通告路由信息的前缀更新的上述第二UPDATE报文;
b2、将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性的属性内容中的Attr-ID,将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
请参见图2b,对于路由信息的撤销,本实施例中的BGP路由通告方法包括在通告发送端执行的如下步骤:
a3、当有撤销的路由信息需要向邻居节点(即通告接收端)通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
作为一种优选实施方式,可以在第三UPDATE报文的路径属性字段中携带有标识属性,在第四UPDATE报文的WR字段携带需要撤销的路由信息的前缀。可选地,第四UPDATE报文的路径属性字段中也可以携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还可以利用标识属性的属性类型中的值、例如0xfe来表示该前缀属性用于撤销;
a4、将构造的第三UPDATE报文和第四UPDATE报文向邻居节点(即通告接收端)发送。
上述步骤a4中,将第三UPDATE报文和第四UPDATE报文向邻居节点发送,以使得邻居节点依据第三UPDATE报文中携带的标识属性中的属性类型值和Attr-ID、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
相应地,仍参见图2b,对于路由信息的撤销,本实施例中的BGP路由维护方法包括在通告接收端执行的如下步骤:
b3、接收邻居节点(通告发送端)发送的用于通告路由信息的属性撤销的上述第三UPDATE报文、以及用于通告该路由信息的前缀撤销的上述第四UPDATE报文;
b4、至少依据第三UPDATE报文中携带的标识属性中的属性类型值和Attr-ID、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
在实际应用中,通告发送端和通告接收端可以预先约定第一UPDATE报文和第二UPDATE报文之间的发送顺序、以及第三UPDATE报文和第四UPDATE报文之间的发送顺序,这样,可以简化通告接收端实现路由维护的复杂程度。
例如,对于路由信息的更新,通告发送端可以在步骤a2将对应相同路由信息的第一UPDATE报文先于第二UPDATE报文发出,即先通告前缀属性、后通告前缀;对于路由信息的撤销,通告发送端可以在步骤a4将对应相同路由信息的第四UPDATE报文先于第三UPDATE报文发出,即先撤销前缀、后撤销前缀属性。
相应地,通告接收端可以遵循上述的顺序准则进行处理,即,前缀只能与前缀属性同时存在、而不能单独存在;对于不符合上述顺序准则的情况,即前缀单独存在的情况,则认为出错。具体说:
通告接收端通过步骤b2在将第二UPDATE报文中的前缀更新至前缀列表之前,可以进一步依据第二UPDATE报文中携带的标识属性中的Attr-ID判断第二UPDATE报文中的前缀是否在属性列表存在对应的前缀属性;
若是,则执行第二UPDATE报文中的前缀向前缀列表的更新;
否则,认为出错、并进一步以丢弃该第二UPDATE报文中的前缀的方式进行出错处理。
以及,通告接收端可以在步骤b4以删除的方式实现对前缀属性和前缀的撤销处理,并且,通告接收端通过步骤b4在依据第四UPDATE报文对属性列表中维护的前缀属性执行撤销处理时,可以进一步依据第四UPDATE报文中携带的标识属性中的Attr-ID判断前缀列表中是否存在对应的前缀;
若是,则认为出错、并进一步以删除前缀列表中所有对应的前缀的方式进行出错处理;
否则,执行对属性列表中对应的前缀属性执行撤销处理。
当然,对于第一UPDATE报文和第二UPDATE报文之间的发送顺序、以及第三UPDATE报文和第四UPDATE报文之间的发送顺序,也可以不做要求,而是允许通告发送端在步骤a2将对应相同路由信息的第一UPDATE报文和第二UPDATE报文以随机顺序发,在步骤a4将对应相同路由信息的第三UPDATE报文和第四UPDATE报文以随机顺序发出。
相应地,通告接收端就需要允许前缀和前缀属性的单独存在,但对于单独存在、且不具有关联关系的前缀和前缀属性需要置为无效,只有同时存在对应相同Attr-ID的前缀和前缀属性时,才能够允许这样的前缀和前缀属性有效、并相互关联。具体说,在通告接收端内,属性列表中维护的前缀属性、以及前缀列表中维护的前缀前缀分别具有对应的有效性标识;其中:
当属性列表中维护的前缀属性在前缀列表中不存在对应的前缀时,该前缀属性的有效性标识被通告接收端通过步骤b2或步骤b4置为无效;
当前缀列表中维护的前缀在属性列表中不存在对应的前缀属性时,该前缀的有效性标识被通告接收端通过步骤b2或步骤b4置为无效;
当同时存在彼此对应的前缀和前缀属性时,该前缀与该前缀属性的有效性标识置均被通告接收端通过步骤b2置为有效、并被通告接收端通过步骤b2相互关联。
此外,对于需要能力协商的情况,本实施例中的BGP路由通告方法需要进一步包括在通告发送端执行的如下步骤:
a0、通过与邻居节点(通告接收端)交互OPEN报文进行能力协商、以确定邻居节点(通告接收端)是否支持属性的单独通告;
其中,本端发出的OPEN报文中携带有Attr-Adv Cap标志;若邻居节点(通告接收端)回复的OPEN报文中携带有该Attr-Adv Cap标志,则表示邻居节点(通告接收端)具备Attr-Adv特性、并支持属性的单独通告,否则表示邻居节点(通告接收端)不具备Attr-Adv特性、即不支持属性的单独通告;
并且,在通告发送端的步骤a1~a4均是在步骤a0确定邻居节点(通告接收端)支持属性的单独通告之后执行的。
相应地,对于需要能力协商的情况,本实施例中的BGP路由维护方法需要进一步包括在通告接收端执行的如下步骤:
b0、通过与邻居节点(通告发送端)交互OPEN报文进行能力协商、以向邻居节点(通告发送端)告知本端是否支持属性的单独通告;其中,本端从邻居节点(通告发送端)接收到的OPEN报文中携带有Attr-Adv Cap标志,本端向邻居节点回复的OPEN报文中携带有该Attr-Adv Cap标志、以向邻居节点(通告发送端)告知本端具备Attr-Adv特性、并支持属性的单独通告;
并且,在通告接收端的步骤b1~b4均是在步骤b0向邻居节点(通告发送端)告知本端支持属性的单独通告之后执行的。
另需要补充说明的是,对于通告接收端来说,当其检测到作为通告发送端的邻居节点断开时,可以不立即删除对应该邻居节点的所有信息,而是先判断本端与作为通告发送端的邻居节点在断开之前是否协商GR(Graceful Restart,平滑重启)成功;
若是,则为属性列表中对应该邻居节点(通告发送端)的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale(过期)标记,以待后续接收到邻居节点(通告发送端)的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前。
以上的BGP路由通告方法和BGP路由维护方法均可以由计算机程序来实现,因此,本实施例还提供了相应的BGP路由通告装置和BGP路由维护装置。
本实施例中的BGP路由通告装置可以应用在通告发送端、并包括:
更新通告构造模块,当有更新的路由信息需要向邻居节点(即通告接收端)通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文的PA字段中携带有该路由信息的前缀属性,第二UPDATE报文的NLRI字段携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文的PA路径属性字段中均携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还可以利用属性类型中的值、例如0xff来表示该前缀属性用于更新;
更新通告发送模块,将构造的第一UPDATE报文和第二UPDATE报文向邻居节点(即通告接收端)发送;
撤销通告构造模块,当有撤销的路由信息需要向邻居节点(即通告接收端)通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文的路径属性字段中携带有标识属性,可选地,第四UPDATE报文的路径属性字段中也可以携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还可以利用标识属性的属性类型中的值、例如0xfe来表示该前缀属性用于撤销;
撤销通告发送模块,将构造的第三UPDATE报文和第四UPDATE报文向邻居节点发送。
实际应用中,对应相同路由信息的第一UPDATE报文先于第二UPDATE报文发出,对应相同路由信息的第四UPDATE报文先于第三UPDATE报文发出;或者,对应相同路由信息的第一UPDATE报文和第二UPDATE报文以随机顺序发出,对应相同路由信息的第三UPDATE报文和第四UPDATE报文以随机顺序发出。
另外,对于需要能力协商的情况,该BGP路由通告装置可以进一步包括:
通告能力协商模块,通过与邻居节点(通告接收端)交互OPEN报文进行能力协商、以确定邻居节点(通告接收端)是否支持属性的单独通告;
其中,本端发出的OPEN报文中携带有Attr-Adv Cap标志;若邻居节点(通告接收端)回复的OPEN报文中携带有该Attr-Adv Cap标志,则表示邻居节点(通告接收端)具备Attr-Adv特性、并支持属性的单独通告,否则表示邻居节点(通告接收端)不具备Attr-Adv特性、即不支持属性的单独通告;
以及,更新通告构造模块、更新通告发送模块、撤销通告构造模块、以及撤销通告发送模块均是在通告能力协商模块确定邻居节点(通告接收端)支持属性的单独通告之后触发的。
本实施例中的BGP路由维护装置可以应用在通告接收端、并包括:
更新通告接收模块,接收邻居节点(即通告发送端)发送的用于通告路由信息的属性更新的上述第一UPDATE报文、以及用于通告路由信息的前缀更新的上述第二UPDATE报文;
其中,第一UPDATE报文的PA字段中携带有该路由信息的前缀属性,第二UPDATE报文的NLRI字段携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文的PA路径属性字段中均携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还可以利用属性类型中的值、例如0xff来表示该前缀属性用于更新;
更新通告处理模块,将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性的属性内容中的Attr-ID,将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联;
撤销通告接收模块,接收邻居节点(通告发送端)发送的用于通告路由信息的属性撤销的上述第三UPDATE报文、以及用于通告该路由信息的前缀撤销的上述第四UPDATE报文;
其中,第三UPDATE报文的路径属性字段中携带有标识属性,可选地,第四UPDATE报文的路径属性字段中也可以携带有标识属性,该标识属性用于利用属性内容中包含的Attr-ID标记该路由信息的前缀属性,且可选地,该标识属性还可以利用标识属性的属性类型中的值、例如0xfe来表示该前缀属性用于撤销;
撤销通告处理模块,至少依据第三UPDATE报文中携带的标识属性中的属性类型值和Attr-ID、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
实际应用中,通告发送端可以将对应相同路由信息的第一UPDATE报文先于第二UPDATE报文发出、并将对应相同路由信息的第四UPDATE报文先于第三UPDATE报文发出;或者,通告发送端也可以将对应相同路由信息的第一UPDATE报文和第二UPDATE报文以随机顺序发出、并将对应相同路由信息的第三UPDATE报文和第四UPDATE报文以随机顺序发出。
对于存在特定发送顺序的前一种情况:
更新通告处理模块在将第二UPDATE报文中的前缀更新至前缀列表之前,进一步依据第二UPDATE报文中携带的标识属性中的Attr-ID,判断第二UPDATE报文中的前缀是否在属性列表存在对应的前缀属性;
若是,则执行第二UPDATE报文中的前缀向前缀列表的更新;
否则,进一步以丢弃该第二UPDATE报文中的前缀的方式进行出错处理。
以及,撤销通告处理模块以删除的方式实现对前缀属性和前缀的撤销处理,并且,撤销通告处理模块在依据第四UPDATE报文对属性列表中对应的前缀属性执行撤销处理时,进一步依据依据第四UPDATE报文中携带的标识属性中的Attr-ID,判断前缀列表中是否存在对应的前缀;
若是,则进一步以删除前缀列表中所有对应的前缀的方式进行出错处理;
否则,执行对属性列表中对应的前缀属性执行撤销处理。
对于不存在特定顺序的后一种情况:
通告接收端在属性列表中维护的前缀属性、以及前缀列表中维护的前缀前缀分别具有对应的有效性标识;其中:
当属性列表中维护的前缀属性在前缀列表中不存在对应的前缀时,该前缀属性的有效性标识被更新通告处理模块或撤销通告处理模块置为无效;
当前缀列表中维护的前缀在属性列表中不存在对应的前缀属性时,该前缀的有效性标识被更新通告处理模块或撤销通告处理模块置为无效;
当同时存在彼此对应的前缀和前缀属性(即对应相同的Attr-ID)时,该前缀与该前缀属性的有效性标识置均被更新通告处理模块置为有效、并被更新通告处理模块相互关联。
另外,对于需要能力协商的情况,该BGP路由维护装置进一步包括:
通告能力协商模块,通过与邻居节点(通告发送端)交互OPEN报文进行能力协商、以向邻居节点(通告发送端)告知本端是否支持属性的单独通告;其中,本端从邻居节点(通告发送端)接收到的OPEN报文中携带有Attr-Adv Cap标志,本端向邻居节点回复的OPEN报文中携带有该Attr-Adv Cap标志、以向邻居节点(通告发送端)告知本端具备Attr-Adv特性、并支持属性的单独通告;
以及,更新通告接收模块、更新通告处理模块、撤销通告接收模块、以及撤销通告处理模块均是在通告能力协商模块向邻居节点(通告发送端)告知本端支持属性的单独通告之后触发的。
此外,对于有可能出现的邻居断开情况,该BGP路由维护装置进一步包括:
邻居断开处理模块,当检测到本端与邻居节点断开时,判断本端是否与邻居节点在断开之前协商GR成功;
若是,则为属性列表中对应该邻居节点的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale标记,以待后续接收到邻居节点的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前缀。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (14)

1.一种BGP路由通告方法,其特征在于,该BGP路由通告方法包括:
a1、当有更新的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
a2、将构造的第一UPDATE报文和第二UPDATE报文向邻居节点发送。
2.根据权利要求1所述的BGP路由通告方法,其特征在于,该BGP路由通告方法进一步包括:
a3、当有撤销的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
a4、将构造的第三UPDATE报文和第四UPDATE报文向邻居节点发送。
3.根据权利要求2所述的BGP路由通告方法,其特征在于,该BGP路由通告方法进一步包括:
a0、通过与邻居节点交互OPEN报文进行能力协商、以确定邻居节点是否支持属性的单独通告;其中,本端发出的OPEN报文中携带有表示可单独通告属性的能力标识;若邻居节点回复的OPEN报文中携带有该能力标识,则表示邻居节点支持属性的单独通告,否则表示邻居节点不支持属性的单独通告;
以及,步骤a1~a4均是在步骤a0确定邻居节点支持属性的单独通告之后执行的。
4.一种BGP路由维护方法,其特征在于,该BGP路由维护方法包括:
b1、接收邻居节点发送的用于通告路由信息的属性更新的第一UPDATE报文、以及用于通告路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
b2、将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
5.根据权利要求4所述的BGP路由维护方法,其特征在于,该BGP路由维护方法进一步包括:
b3、接收邻居节点发送的用于通告路由信息的属性撤销的第三UPDATE报文、以及用于通告该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
b4、依据第三UPDATE报文中携带的标识属性、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
6.根据权利要求5所述的BGP路由维护方法,其特征在于,该BGP路由维护方法进一步包括:
b0、通过与邻居节点交互OPEN报文进行能力协商、以向邻居节点告知本端是否支持属性的单独通告;其中,本端从邻居节点接收到的OPEN报文中携带有表示可单独通告属性的能力标识,本端向邻居节点回复的OPEN报文中携带有该能力标识、以向邻居节点告知本端支持属性的单独通告;
以及,步骤b1~b4均是在步骤b0向邻居节点告知本端支持属性的单独通告之后执行的。
7.根据权利要求5所述的BGP路由维护方法,其特征在于,该BGP路由维护方法进一步包括:
c0、当检测到本端与邻居节点断开时,判断本端是否与邻居节点在断开之前协商GR成功;
若是,则为属性列表中对应该邻居节点的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale标记,以待后续接收到邻居节点的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前。
8.一种BGP路由通告装置,其特征在于,该BGP路由通告装置包括:
更新通告构造模块,当有更新的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性更新的第一UPDATE报文、以及用于通告该路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
更新通告发送模块,将构造的第一UPDATE报文和第二UPDATE报文向邻居节点发送。
9.根据权利要求8所述的BGP路由通告装置,其特征在于,该BGP路由通告装置进一步包括:
撤销通告构造模块,当有撤销的路由信息需要向邻居节点通告时,构造出用于通告该路由信息的属性撤销的第三UPDATE报文、以及用于通告该该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
撤销通告发送模块,将构造的第三UPDATE报文和第四UPDATE报文向邻居节点发送。
10.根据权利要求9所述的BGP路由通告装置,其特征在于,该BGP路由通告装置进一步包括:
通告能力协商模块,通过与邻居节点交互OPEN报文进行能力协商、以确定邻居节点是否支持属性的单独通告;其中,本端发出的OPEN报文中携带有表示可单独通告属性的能力标识;若邻居节点回复的OPEN报文中携带有该能力标识,则表示邻居节点支持属性的单独通告,否则表示邻居节点不支持属性的单独通告;
以及,更新通告构造模块、更新通告发送模块、撤销通告构造模块、以及撤销通告发送模块均是在通告能力协商模块确定邻居节点支持属性的单独通告之后触发的。
11.一种BGP路由维护装置,其特征在于,该BGP路由维护装置包括:
更新通告接收模块,接收邻居节点发送的用于通告路由信息的属性更新的第一UPDATE报文、以及用于通告路由信息的前缀更新的第二UPDATE报文;
其中,第一UPDATE报文中携带有该路由信息的前缀属性,第二UPDATE报文中携带有该路由信息的前缀,以及,第一UPDATE报文和第二UPDATE报文中均携带有用于标记该路由信息的前缀属性的标识属性;
更新通告处理模块,将第一UPDATE报文中携带的前缀属性和第二UPDATE报文中携带的前缀分别更新至属性列表和前缀列表中,并依据第一和第二UPDATE报文中携带的标识属性将前缀列表中的各前缀分别与属性列表中的对应的前缀属性相关联。
12.根据权利要求11所述的BGP路由维护装置,其特征在于,该BGP路由维护装置进一步包括:
撤销通告接收模块,接收邻居节点发送的用于通告路由信息的属性撤销的第三UPDATE报文、以及用于通告该路由信息的前缀撤销的第四UPDATE报文;
其中,第三UPDATE报文中携带有用于标记该路由信息的前缀属性的标识属性,第四UPDATE报文中携带有该路由信息的前缀;
撤销通告处理模块,依据第三UPDATE报文中携带的标识属性、以及第四UPDATE报文中携带的前缀,分别对属性列表中对应的前缀属性和前缀列表中对应的前缀执行撤销处理。
13.根据权利要求12所述的BGP路由维护装置,其特征在于,该BGP路由维护装置进一步包括:
通告能力协商模块,通过与邻居节点交互OPEN报文进行能力协商、以向邻居节点告知本端是否支持属性的单独通告;其中,本端从邻居节点接收到的OPEN报文中携带有表示可单独通告属性的能力标识,本端向邻居节点回复的OPEN报文中携带有该能力标识、以向邻居节点告知本端支持属性的单独通告;
以及,更新通告接收模块、更新通告处理模块、撤销通告接收模块、以及撤销通告处理模块均是在通告能力协商模块向邻居节点告知本端支持属性的单独通告之后触发的。
14.根据权利要求12所述的BGP路由维护装置,其特征在于,该BGP路由维护装置进一步包括:
邻居断开处理模块,当检测到本端与邻居节点断开时,判断本端是否与邻居节点在断开之前协商GR成功;
若是,则为属性列表中对应该邻居节点的所有前缀属性以及前缀列表中对应该邻居节点的所有前缀均设置stale标记,以待后续接收到邻居节点的第一UPDATE报文和第二UPDATE报文后,再将属性列表中对应该邻居节点的前缀属性以及前缀列表中对应该邻居节点的前缀的stale标记删除;
否则,删除属性列表中对应该邻居节点的前缀属性、以及前缀列表中对应该邻居节点的前缀。
CN201310022770.1A 2013-01-21 2013-01-21 Bgp路由通告方法和装置及bgp路由维护方法和装置 Pending CN103944822A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310022770.1A CN103944822A (zh) 2013-01-21 2013-01-21 Bgp路由通告方法和装置及bgp路由维护方法和装置
PCT/CN2014/070441 WO2014110997A1 (en) 2013-01-21 2014-01-10 Border gateway protocol (bgp) routes advertisement
US14/648,149 US20150334000A1 (en) 2013-01-21 2014-01-10 Border gateway protocol (bgp) routes advertisement

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310022770.1A CN103944822A (zh) 2013-01-21 2013-01-21 Bgp路由通告方法和装置及bgp路由维护方法和装置

Publications (1)

Publication Number Publication Date
CN103944822A true CN103944822A (zh) 2014-07-23

Family

ID=51192312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310022770.1A Pending CN103944822A (zh) 2013-01-21 2013-01-21 Bgp路由通告方法和装置及bgp路由维护方法和装置

Country Status (3)

Country Link
US (1) US20150334000A1 (zh)
CN (1) CN103944822A (zh)
WO (1) WO2014110997A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104394104A (zh) * 2014-11-19 2015-03-04 杭州华三通信技术有限公司 一种路由信息发送方法及装置
CN106375221A (zh) * 2015-07-20 2017-02-01 思科技术公司 边界网关协议中的属性set_id
CN107465614A (zh) * 2016-06-06 2017-12-12 中兴通讯股份有限公司 一种实现边界网关协议二维路由的方法和装置
CN108390822A (zh) * 2018-03-13 2018-08-10 新华三技术有限公司 路由发布方法和装置
CN113271286A (zh) * 2020-02-14 2021-08-17 华为技术有限公司 一种用于实现bgp异常检测的方法、设备及系统
CN114374643A (zh) * 2021-12-22 2022-04-19 新华三技术有限公司合肥分公司 通信方法及装置
CN116760764A (zh) * 2023-08-18 2023-09-15 深圳捷誊技术有限公司 路由公告方法、服务器节点、信息公告板及存储介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9843498B2 (en) * 2015-07-20 2017-12-12 Cisco Technology, Inc. Attribute set—ID in border gateway protocol
EP3178462A1 (de) 2015-12-07 2017-06-14 WDT-Wolz-Dental-Technik GmbH Verfahren zur herstellung eines polychrom und/oder räumlich polychrom oder eines monochrom gefärbten keramischen körpers und vorrichtung hierfür
CN113273147B (zh) * 2018-11-02 2022-08-26 华为技术有限公司 用于实现控制器边界网关协议(cBGP)的系统及方法
US11153420B2 (en) * 2019-10-18 2021-10-19 Arista Networks, Inc. Neighbor equivalence groups
US11552876B1 (en) * 2020-11-10 2023-01-10 Amazon Technologies, Inc. Real-time identification of network prefix outage

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060171404A1 (en) * 2004-04-28 2006-08-03 Gargi Nalawade Network routing apparatus that performs soft graceful restart
CN101099342A (zh) * 2005-01-27 2008-01-02 思科技术公司 用于边界网关协议中的基于上下文的前缀更新的方法和设备
CN101741705A (zh) * 2008-11-27 2010-06-16 华为技术有限公司 一种并行处理路由更新报文的方法及装置
CN102045237A (zh) * 2009-10-15 2011-05-04 华为技术有限公司 一种路由撤销的方法、装置和系统
US20120093154A1 (en) * 2010-10-19 2012-04-19 Eric Rosenberg Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6968393B1 (en) * 2001-11-19 2005-11-22 Redback Networks, Inc. Method and apparatus for an attribute oriented routing update

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060171404A1 (en) * 2004-04-28 2006-08-03 Gargi Nalawade Network routing apparatus that performs soft graceful restart
CN101099342A (zh) * 2005-01-27 2008-01-02 思科技术公司 用于边界网关协议中的基于上下文的前缀更新的方法和设备
CN101741705A (zh) * 2008-11-27 2010-06-16 华为技术有限公司 一种并行处理路由更新报文的方法及装置
CN102045237A (zh) * 2009-10-15 2011-05-04 华为技术有限公司 一种路由撤销的方法、装置和系统
US20120093154A1 (en) * 2010-10-19 2012-04-19 Eric Rosenberg Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104394104A (zh) * 2014-11-19 2015-03-04 杭州华三通信技术有限公司 一种路由信息发送方法及装置
CN104394104B (zh) * 2014-11-19 2018-02-09 新华三技术有限公司 一种路由信息发送方法及装置
CN106375221A (zh) * 2015-07-20 2017-02-01 思科技术公司 边界网关协议中的属性set_id
CN107465614A (zh) * 2016-06-06 2017-12-12 中兴通讯股份有限公司 一种实现边界网关协议二维路由的方法和装置
CN108390822A (zh) * 2018-03-13 2018-08-10 新华三技术有限公司 路由发布方法和装置
CN113271286A (zh) * 2020-02-14 2021-08-17 华为技术有限公司 一种用于实现bgp异常检测的方法、设备及系统
CN113271286B (zh) * 2020-02-14 2022-07-29 华为技术有限公司 一种用于实现bgp异常检测的方法、设备及系统
CN114374643A (zh) * 2021-12-22 2022-04-19 新华三技术有限公司合肥分公司 通信方法及装置
CN114374643B (zh) * 2021-12-22 2024-02-09 新华三技术有限公司合肥分公司 通信方法及装置
CN116760764A (zh) * 2023-08-18 2023-09-15 深圳捷誊技术有限公司 路由公告方法、服务器节点、信息公告板及存储介质
CN116760764B (zh) * 2023-08-18 2023-11-17 深圳捷誊技术有限公司 路由公告方法、服务器节点、信息公告板及存储介质

Also Published As

Publication number Publication date
US20150334000A1 (en) 2015-11-19
WO2014110997A1 (en) 2014-07-24

Similar Documents

Publication Publication Date Title
CN103944822A (zh) Bgp路由通告方法和装置及bgp路由维护方法和装置
US8856584B2 (en) Transport control server that modifies routing information
CN100531146C (zh) 基于流转发的更新流转发表项内容的方法及设备
CN101141382A (zh) 路由更新方法和路由器
CN102422600A (zh) 实现从提供商桥网络到vpls或提供商骨干桥接网络的逐渐切换的地址解析优化过程
CN101312438A (zh) 路由器及其路由更新方法
CN104995902A (zh) 用于ipv4和ipv6装置之间的无缝网络通信的方法和系统
JP6195014B2 (ja) 通信システム、通信方法、中継装置、および、通信プログラム
CN105898001A (zh) 一种通信信息的处理方法、装置和服务器
CN105282682B (zh) 一种实现资源属性通告的方法和公共业务实体
CN103167464A (zh) 触发更新移动节点映射信息的方法、ms和mn
CN103916277A (zh) 实现重启时不中断转发业务的方法和装置
CN109195217A (zh) Lte网络拒绝行为的处理方法及装置
CN105025458B (zh) 一种资源通告的方法、设备和系统
CN106411727B (zh) 一种报文处理方法、装置及自治系统
CN102143077A (zh) 路由设备多业务链接实现方法、系统及路由设备
CN103297338A (zh) 一种vpn路由通告方法和设备
CN113285894B (zh) 基于可编程交换机的身份标识网络移动性控制方法及系统
CN102185763A (zh) 一种实现一体化网络子网移动的方法
CN107707689A (zh) 一种dhcp报文处理方法、dhcp服务器及网关设备
CN112671654B (zh) 路由信息更新方法、装置、设备、介质及ospf网络
CN102957606A (zh) 一种路由信息通告方法及装置
CN103596649B (zh) 一种在虚拟局域网中通信的方法、设备和系统
CN106506376B (zh) 一种被监控邻居初始路由信息发送方法及装置
CN102938704A (zh) 接入管理方法、装置和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
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 hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Applicant before: Huasan Communication Technology Co., Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140723