CN103152272A - 一种bgp邻居关系维护方法及设备 - Google Patents
一种bgp邻居关系维护方法及设备 Download PDFInfo
- Publication number
- CN103152272A CN103152272A CN2013100604488A CN201310060448A CN103152272A CN 103152272 A CN103152272 A CN 103152272A CN 2013100604488 A CN2013100604488 A CN 2013100604488A CN 201310060448 A CN201310060448 A CN 201310060448A CN 103152272 A CN103152272 A CN 103152272A
- Authority
- CN
- China
- Prior art keywords
- address
- tcp
- neighbor device
- interface
- bgp
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种BGP邻居关系维护方法及设备。该方法包括:路由交换设备根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;当所述路由交换设备需要将本设备上用来与所述邻居设备建立TCP连接的源接口IP地址变更为目标接口IP地址时,与邻居设备建立备份TCP连接;在所述备份TCP连接建立完成后,将源接口IP地址变更为目标接口IP地址,根据该目标接口IP地址与邻居设备建立TCP连接。本发明可在建立BGP邻居的接口IP地址变化时,实现BGP会话的TCP连接迁移,保证转发不中断。
Description
技术领域
本发明涉及通信领域,尤其涉及一种BGP邻居关系维护方法及设备。
背景技术
随着网络需求的日益增多,网络的规模越来越大,作为边界网关协议的BGP(Border Gateway Protocol,边界网关协议),也在不断地推出新的功能以满足网络的需求。
BGP是一种AS(Autonomous System,自治系统或自治区域)外部路由协议,主要负责本自治区域和外部的自治区域间的路由可达信息的交换。BGP通过在路由信息中增加自治区域(AS)路径的属性,来构造自治区域的拓扑图,从而消除路由环路并实施用户配置的策略。同时,随着Internet的飞速发展,路由表的体积也迅速增加,自治区域间路由信息的交换量越来越大,影响了网络的性能。BGP支持无类型的区域间路由(Classless Inter Domain Routing,CIDR),可以有效的减少日益增大的路由表。
BGP广泛运用于网络中,随着网络越来越复杂,意味着BGP相关的配置也越来越复杂。当用于建立BGP会话的接口IP地址变化时,在对端设备上需要以手工方式对BGP进行重新配置,以触发重新建立BGP邻居关系,这样势必会导致原有的BGP邻居关系断开重建,无法及时在BGP邻居之间进行路由信息交换,造成流量转发中断,这对网络的稳定性带来较大影响。
发明内容
本发明实施例提供了一种BGP邻居关系维护方法及设备,用以在用于建立BGP会话的接口IP地址变化时,自动实现TCP连接迁移。
本发明实施例提供的BGP邻居关系维护方法,包括:
路由交换设备根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;所述映射关系表项中记录有本设备和邻居设备建立BGP会话的TCP连接所使用的接口IP地址以及邻居设备的描述信息;
当所述路由交换设备需要将本设备上用来与所述邻居设备建立BGP会话的TCP连接的源接口IP地址变更为目标接口IP地址时,执行以下步骤:
将用于建立BGP会话的备份TCP连接的接口IP地址发送给所述邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求,根据所述邻居设备发起的备份TCP连接建立请求,使用所述用于建立备份TCP连接的接口IP地址与所述邻居设备建立BGP会话的备份TCP连接;
在所述BGP会话的备份TCP连接建立完成后,将所述源接口IP地址变更为所述目标接口IP地址,根据所述目标接口IP地址更新本设备上所述邻居设备对应的映射关系表项,将所述目标接口IP地址发送给所述邻居设备,以使所述邻居设备根据所述目标接口IP地址更新对应本设备上的映射关系表项,通知所述邻居设备发起到所述目标接口IP地址的TCP连接建立请求,根据所述邻居设备发起的TCP连接建立请求,使用所述目标接口IP地址与所述邻居设备建立BGP会话的TCP连接。
本发明实施例提供的路由交换设备,运行有BGP协议,该设备包括:BGP协议模块、映射关系表维护模块和接口管理模块;
BGP协议模块,用于根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;根据所述接口管理模块的指示,将用于建立备份TCP连接的接口IP地址发送给邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求,并根据所述邻居设备发起的备份TCP连接建立请求,使用用于建立备份TCP连接的接口IP地址与所述邻居设备建立备份TCP连接;以及,根据所述接口管理模块的指示,将目标接口IP地址发送给邻居设备,以使所述邻居设备更新对应的映射关系表项以 及通知邻居设备发起到所述目标接口IP地址的TCP连接建立请求,并根据所述邻居设备发起的TCP连接建立请求,使用变更后的目标接口IP地址与所述邻居设备建立TCP连接;
映射关系表维护模块,用于维护本设备上的映射关系表项,所述映射关系表项中记录有本设备和邻居设备建立TCP连接所使用的接口IP地址以及邻居设备的描述信息;
接口管理模块,用于当本设备需要将用来与所述邻居设备建立TCP连接的源接口IP地址变更为目标接口IP地址时,指示所述BGP协议模块将用于建立备份TCP连接的接口IP地址发送给所述邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求;在所述备份TCP连接建立完成后,将所述源接口IP地址变更为所述目标接口IP地址,指示所述映射关系维护模块根据所述目标接口IP地址更新本设备上所述邻居设备对应的映射关系表项,指示所述BGP协议模块通知所述邻居设备发起到所述目标接口IP地址的TCP连接建立请求。
本发明的上述实施例中,由于在路由交换设备变更其TCP连接的接口IP地址前,先使用备份接口IP地址与邻居设备建立备份TCP连接,再进行接口IP地址变更并基于变更后的接口IP地址与邻居设备建立TCP连接,从而实现TCP连接从变更前的源接口IP地址到备份接口IP地址的迁移,以及从备份接口IP地址到变更后的目标接口IP地址的迁移。另一方面,由于路由交换设备在进行BGP邻居关系维护时,基于包含有邻居设备的描述信息的映射关系表项进行BGP邻居关系维护,在邻居设备的描述信息不改变的情况下,不会因邻居设备的接口IP地址变化而删除本设备上的BGP配置,从而减少了接口IP地址变化时BGP重新配置的工作量,以及减少BGP邻居的震荡,提高BGP协议的稳定性。
附图说明
图1为本发明实施例中的BGP组网示意图;
图2为本发明实施例提供的BGP邻居建立流程示意图;
图3为现有技术中的BGP消息头格式示意图;
图4为本发明实施例提供的BGP OPEN报文格式示意图;
图5为本发明实施例提供的BGP UPDATE报文格式示意图;
图6为本发明实施例提供的TCP连接迁移流程示意图;
图7为本发明实施例提供的设备结构示意图。
具体实施方式
针对现有技术存在的问题,本发明实施例提供了一种BGP邻居关系维护方案,对于相互之间建立有BGP会话的设备,通过在设备上创建用来建立BGP邻居的本端接口IP地址和对端接口IP地址以及对端设备的描述信息的映射表,并根据该映射表维护BGP邻居关系,在BGP会话的TCP(Transmission Control Protocol,传输控制协议)连接接口IP地址变化时,具有BGP邻居关系的设备能够自动更新该映射表,并根据更新后的映射表,将TCP连接迁移到备份IP接口地址上,再根据变更后的接口IP地址建立与BGP邻居之间的新的TCP连接,将TCP连接迁移到变更后的接口IP地址上,从而在BGP会话的BGP接口IP地址变化时,自动实现TCP连接迁移,维护BGP邻居关系,从而保证流量转发不中断。
下面以图1所示的BGP组网架构为例,对本发明实施例的具体实现过程进行详细描述。其中,RTA和RTB为运行BGP协议的路由交换设备(如路由器或三层交换机),RTA使用直连接口IP地址2.2.2.1与RTB的直连接口IP地址2.2.2.2建立BGP会话。
在初始化时,分别在需要建立BGP会话的路由交换设备上进行BGP配置。与现有技术不同的是,本发明实施例中除了在路由器上配置对端用于建立BGP会话的接口IP地址以外,还配置本端是否具有自动迁移TCP连接的能力信息, 并在配置为本端具有该能力时,还配置对端设备的描述信息。在需要建立BGP会话的设备中,设备的描述信息可以唯一标识该设备。比如,若路由器RT1需要与RT2、RT3和RT4建立BGP会话,则在RT1、RT2、RT3和RT4范围内,每个路由器的描述信息都唯一标识该路由器。
以图1中为例,RTA上的BGP配置信息包括以下内容:
bgp 100
peer 2.2.2.2 as-number 200
peer 2.2.2.2 capability-advertise auto-change
peer 2.2.2.2 description RTB
#
ipv4-family unicast
peer 2.2.2.2 enable
#
其中,“peer 2.2.2.2 capability-advertise auto-change”和“peer 2.2.2.2description RTB”两个配置信息为本发明实施例新增的配置信息,其中,“peer 2.2.2.2 capability-advertise auto-change”用来使能IP地址和描述信息自动映射能力(也即自动迁移TCP连接的能力),“peer 2.2.2.2 description RTB”用来配置对等体描述信息,其它配置语句遵循现有BGP配置规范。
上述各主要配置信息的说明如下:
“peer2.2.2.2 as-number 200”用于表示本端路由器(RTA)需要与直连接口IP地址为2.2.2.2的对端路由器建立BGP邻居,该对端路由器处于ID=200的AS域中;
“peer 2.2.2.2 capability-advertise auto-change”用于表示本端路由器(RTA)针对直连接口IP地址为2.2.2.2的对端路由器使能了自动迁移TCP连接的能力;
“peer 2.2.2.2 description RTB”用于指示出直连接口IP地址为2.2.2.2的对端路由器的描述信息为“RTB”,在本端路由器(RTA)针对直连接口IP地址为2.2.2.2的对端路由器使能了自动迁移TCP连接的能力时为必选配置。
RTB上的BGP配置信息与RTA上的BGP配置信息类似,具体为:
bgp 200
peer 2.2.2.1 as-number 100
peer 2.2.2.1 capability-advertise auto-change
peer 2.2.2.1 description RTA
#
ipv4-family unicast
peer 2.2.2.1 enable
#
在RTA上完成上述BGP配置后,即可在RTA上生成如表1所示的映射关系表项。同理,在RTB上完成上述BGP配置后,即可在RTB上生成如表2所示的映射关系表项。
表1
Local IP地址 | Description(描述信息) | Foreign IP地址 |
2.2.2.1 | RTB | 2.2.2.2 |
表2
Local IP地址 | Description(描述信息) | Foreign IP地址 |
2.2.2.2 | RTA | 2.2.2.1 |
表1中,Local IP地址字段中记录RTA自己的直连接口IP地址,Foreign IP地址字段中记录BGP邻居(RTB)的直连接口IP地址,Description字段中记录BGP邻居(RTB)的描述信息。表2中,Local IP地址字段中记录RTB自己的直连接口IP地址,Foreign IP地址字段中记录BGP邻居(RTA)的直连接口IP地址,Description字段中记录BGP邻居(RTA)的描述信息。
基于以上BGP配置,本发明实施例中,RTA和RTB在建立BGP会话时,需要协商自动迁移TCP连接的能力。
图2示出了图1所示的架构中,RTA和RTB建立BGP会话的流程,其中,RTA和RTB上分配使能了自动迁移TCP连接的能力,RTA的描述信息为“RTA”,RTB的描述信息为“RTB”。如图所示,该流程可包括:
步骤201,RTA发起与RTB之间的TCP连接建立过程,通过该过程建立RTA的直连接口IP地址2.2.2.1与RTB的直连接口IP地址2.2.2.2之间的TCP连接。
步骤202,RTA向RTB发送BGP OPEN(BGP打开)报文,其中携带有本端使能了自动迁移TCP连接的能力信息。
步骤203,RTB向RTA发送BGP OPEN报文,其中携带有本端使能了自动迁移TCP连接的能力信息。
至此,RTA和RTB完成BGP会话建立。需要说明的是,RTA和RTB之中若RTA先于RTB确认TCP连接建立,则RTA先发送上述携带了本端能力信息的BGP OPEN报文,反之,RTB先发送上述携带了本端能力信息的BGP OPEN报文。
BGP有5种类型的消息,分别为OPEN(打开),UPDATE(更新),KEEPALIVE(保活),NOTIFY(通知)和ROUTE REFRESH(路由更新),它们有相同的消息头。BGP消息头的格式可如图3所示,其中各字段的说明如下:
Marker:(16字节)鉴权信息;
Length:(2字节)消息的长度;
Type:(1字节)消息的类型;
1:OPEN
2:UPDATE
3:NOTIFICATION
4:KEEPALIVE
5:ROUTE REFRESH
上述流程中的BGP OPEN报文可在现有BGP OPEN报文的基础上进行改 进得到,通过该报文可承载本发明实施例定义的“自动迁移TCP连接”的能力信息。具体的,可通过扩展现有BGP OPEN报文的消息头来承载“自动迁移TCP连接”的能力信息。图4所示了一种BGP OPEN报文的消息头结构,其中各字段的说明如下:
Version:(1字节)发端BGP版本号;
My Autonomous System:(2字节无符号整数)本地AS号;
Hold Time:(2字节无符号整数)发端建议的保持时间;
BGP Identifier:(4字节)发端的路由器标识符;
OptParmLen:(1字节)可选的参数的长度;
Optional Parameters:(可变长)可选的参数。“自动迁移TCP连接”的能力信息可承载于该字段。
RTA和RTB根据映射表维护与对端的BGP会话。具体的,RTA在根据收到目的为本设备的来自于RTB的保活报文(keepalive报文)后,从该报文中提取发送该报文的设备的描述信息(此处为RTB),根据该报文的该设备的描述信息查询映射表中该邻居的设备描述信息对应的表项,由于能够匹配到对应的表项,则表明本设备的该IP接口地址与RTB建立有BGP会话,因此更新该BGP会话的保活定时器,在该保活定时器超时之前,RTA保持与RTB之间的BGP会话状态(比如包括保持TCP连接、保持BGP配置不变等)。同理,RTB根据其上的映射关系表项维护与RTA之间的BGP会话。
当需要将RTB上的直连接口IP地址2.2.2.2更新为2.2.2.8时,则触发TCP连接迁移流程,该流程可如图6所示,包括:
步骤601,RTB在BGP配置信息中增加1条表示使用备份接口IP地址与RTA建立TCP连接的配置信息,比如,该条配置信息可以是:peer RTA new3.3.3.2。其中,3.3.3.2是RTB上的一直连接口IP地址,3.3.3.2到2.2.2.1的路由与2.2.2.2到2.2.2.1的路由为等价路由。这里,3.3.3.2可预先指定,用于在接口IP地址变更过程中建立临时性的备份TCP连接。
该步骤中,当RTB上用于与RTA建立BGP会话的直连接口IP地址需要变更时,接口管理模块将这一直连接口IP地址变化信息上报给BGP协议模块,BGP协议模块判断本端和对端是否使能了自动迁移TCP连接的能力,并在判断为是的情况下,在BGP配置信息中增加1条表示使用备份接口IP地址与RTA建立TCP连接的配置信息,并继续执行以下步骤602;若判断为否,则按照常规流程进行处理,如解除相应BGP会话(包括删除相应TCP连接、删除相应BGP配置信息、删除相应保活定时器),撤销相应BGP路由等,从而触发BGP会话重建过程。
具体的,RTB首先根据需要更新的直连接口IP地址2.2.2.2匹配到Local IP地址字段的字段值为2.2.2.2的表项,该表项中的Foreign IP地址为RTA的直连接口IP地址2.2.2.1,因此RTB在相应BGP配置中增加1条配置信息“peer RTA new 3.3.3.2”。添加该条配置信息后,RTB上的BGP配置信息包括以下内容:
#
bgp 200
peer 2.2.2.1 as-number 100
peer RTA new 3.3.3.2
peer 2.2.2.1 capability-advertise auto-change
peer 2.2.2.1 description RTA
#
ipv4-family unicast
peer 2.2.2.1 enable
#
步骤602,RTB通知RTA发起TCP连接建立过程,以建立到RTB的备份TCP连接。其中,RTB将其用于建立备份TCP连接的接口IP地址3.3.3.2发送给RTA,以使RTA发起建立到该接口IP地址的备份TCP连接。
具体的,RTB通过本端接口IP地址为2.2.2.2、对端接口IP地址为2.2.2.1 的TCP连接,向RTA发送BGP UPDATE报文,其中携带接口IP地址3.3.3.2。
本发明实施例可通过对现有BGP UPDATE报文的消息头进行扩展,以承载本端的IP地址。通常,BGP UPDATE消息内容可如图5所示,其中各字段的说明如下:
Unfeasible Routes Len:(2字节无符号整数)不可达路由长度;
Withdrawn Routes:(变长)退出路由;
Path Attribute Len:(2字节无符号整数)路径属性长;
Path Attributes:(变长)路径属性(即路由的属性,包括路由的aspath(自治系统路径信息)、下一跳、med(Multi-ExitDiscriminators,多出口分区)、团体等属性);
Network Layer Reachability Information:(变长)网络可达信息(信宿)。
本发明实施例中,对上述消息内容进行了重新定义,即,Unfeasible Routes Len字段填写实际长度;Network Layer Reachability Information字段填的是本设备接口的IP地址;其他字段填全0。具备IP地址和设备描述信息自动映射能力(即自动迁移TCP连接的能力)的BGP邻居能识别这种特殊格式的BGP UPDATE报文。
步骤603,RTA接收到该BGP UPDATE报文后,根据其中携带的IP地址3.3.3.2更新本端的相应映射表表项,即,将映射表中RTB对应的表项的Foreign IP地址字段值从2.2.2.2更新为3.3.3.2,并向RTB发起TCP连接建立过程,通过该过程建立本端接口IP地址2.2.2.1与对端接口IP地址3.3.3.2之间的TCP连接。
具体的,RTA从本端接口IP地址为2.2.2.1、对端接口IP地址为2.2.2.2的TCP连接接收到携带有更新后的IP地址的BGP UPDATE报文后,匹配到相应的映射表项(本端接口IP地址为2.2.2.1、对端接口IP地址为2.2.2.2、描述信息为RTB),进而更新其中的对端接口IP地址。RTA上更新后的映射关系表项可如表3所示:
表3
Local IP地址 | Description(描述信息) | Foreign IP地址 |
2.2.2.1 | RTB | 3.3.3.2 |
步骤604,当RTA与RTB之间的新的TCP连接(本端接口IP地址2.2.2.1与对端接口IP地址3.3.3.2之间的TCP连接)建立完成后,RTB将本端直连接口IP地址2.2.2.2修改为2.2.2.8,更新相应映射关系表项,并通知RTA发起TCP连接建立过程,以建立到RTB的直连接口IP地址2.2.2.8的TCP连接。
具体的,RTB更新后的相应映射关系表项可如表4所示:
表4
Local IP地址 | Description(描述信息) | Foreign IP地址 |
2.2.2.8 | RTB | 2.2.2.1 |
RTB可通过本端直连接口IP地址为3.3.3.2、对端直连接口IP地址为2.2.2.1的TCP连接,向RTA发送BGP UPDATE报文,其中携带接口IP地址2.2.2.8,以使RTA发起建立到该接口IP地址的TCP连接。
步骤605,RTA接收到该BGP UPDATE报文后,根据其中携带的IP地址2.2.2.8更新本端的相应映射表项,即,将映射表中RTB对应的表项的Foreign IP地址字段值从3.3.3.2更新为2.2.2.8,并向RTB发起TCP连接建立过程,通过该过程建立本端接口IP地址2.2.2.1与对端接口IP地址2.2.2.8之间的TCP连接。
当RTA与RTB之间的新的TCP连接(本端接口IP地址2.2.2.1与对端接口IP地址2.2.2.8之间的TCP连接)建立完成后,RTA与RTB之间就可以通过该TCP连接向对端发送优选后的BGP路由,并在收到对端发送的BGP路由后,更新本地路由表和转发表。
由于在RTB将与RTA之间的BGP会话使用的接口IP地址2.2.2.2变更为2.2.2.8之前,首先基于接口IP地址3.3.3.2与RTA建立备份TCP连接,当备 份TCP连接建立完成后,RTB再将BGP会话使用的接口IP地址2.2.2.2变更为2.2.2.8,并使用接口IP地址2.2.2.8与RTA建立TCP连接。这样,在基于接口IP地址2.2.2.8的TCP连接建立之前,若RTA和RTB之间有BGP路由信息需要交换,则可通过该备份TCP连接进行BGP路由交换。
RTB可在基于接口IP地址2.2.2.8的TCP连接建立之后删除该备份TCP连接,此后,RTA和RTB之间通过基于接口IP地址2.2.2.8的TCP连接进行BGP路由交换。在另一实施例中,RTB在基于接口IP地址2.2.2.8的TCP连接是在该备份TCP连接的保活定时器(该保活定时器的计时时长不小于TCP连接建立过程所用的时长)超时的时候,删除该备份TCP连接。备份TCP连接的保活定时器是在建立备份TCP连接的过程中被启动的,由于在备份TCP连接建立完成后,RTB更新了接口IP地址,因此后续用于保活BGP会话的报文使用更新后的接口IP地址发送,该备份TCP连接的保活定时器在超时后该备份TCP连接将被删除。同理,基于接口IP地址为2.2.2.2的TCP连接在其保活定时器超时的时候被删除。
如前所述,RTA和RTB根据各自的映射关系表维护BGP会话,在上述TCP连接迁移过程中,由于对端的设备描述信息均未变化,因此RTA和RTB均不会因接口IP地址的变化而变更BGP会话状态,因而也就不会删除相应BGP配置信息,从而减少了接口IP地址变化时BGP重新配置的工作量,以及减少BGP邻居的震荡,提高BGP协议的稳定性。
进一步的,考虑到TCP连接建立过程需要一定时间,若发生异常将导致TCP连接建立过程过长,这样会影响流量转发。为了解决该问题,本发明的另一实施例中,当RTA接收到RTB发送的携带有接口IP地址的BGP UPDATE报文并发起建立到该接口IP地址的TCP连接时,对应于该TCP连接启动一定时器,在该定时器未超时前,BGP邻居关系、BGP路由都保持原有状态,该定时器计时时间可设置,通常为TCP连接建立的时长,优选的,略长于TCP连接建立的时长。当该TCP连接建立完成后(如收到对端确认TCP连接建立 的报文),RTA还进一步删除该定时器。若该定时器超时,则说明在该定时器的计时时长内,未收到对端发来的确认TCP连接建立的报文,此种情况下,RTA删除与该定时器对应的TCP连接,待完成新的BGP配置后,发起与对端的BGP会话建立过程。
基于相同的技术构思,本发明实施例还提供了一种路由交换设备,该设备可以是运行BGP协议的路由器或三层交换机等设备。
参见图7,为本发明实施例提供的路由交换设备的结构示意图,该路由交换设备可包括:BGP协议模块71、映射关系表维护模块72、接口管理模块73,其中:
BGP协议模块71,用于根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;根据接口管理模块73的指示,将用于建立备份TCP连接的接口IP地址发送给邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求,并根据所述邻居设备发起的备份TCP连接建立请求,使用用于建立备份TCP连接的接口IP地址与所述邻居设备建立备份TCP连接;以及,根据接口管理模块73的指示,将目标接口IP地址发送给邻居设备,以使所述邻居设备更新对应的映射关系表项以及通知邻居设备发起到所述目标接口IP地址的TCP连接建立请求,并根据所述邻居设备发起的TCP连接建立请求,使用变更后的目标接口IP地址与所述邻居设备建立TCP连接;
映射关系表维护模块72,用于维护本设备上的映射关系表项,所述映射关系表项中记录有本设备和邻居设备建立TCP连接所使用的接口IP地址以及邻居设备的描述信息;
接口管理模块73,用于当本设备需要将用来与所述邻居设备建立TCP连接的源接口IP地址变更为目标接口IP地址时,指示BGP协议模块71将用于建立备份TCP连接的接口IP地址发送给所述邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求; 在所述备份TCP连接建立完成后,将所述源接口IP地址变更为所述目标接口IP地址,指示映射关系维护模块72根据所述目标接口IP地址更新本设备上所述邻居设备对应的映射关系表项,指示BGP协议模块71通知所述邻居设备发起到所述目标接口IP地址的TCP连接建立请求。
具体的,BGP协议模块71接收到目的为本设备的用于保活BGP会话的报文后,获取所述报文中携带的邻居设备的描述信息;根据所述邻居设备的描述信息匹配本设备上的映射关系表项,若匹配到相应映射关系表项,则更新本设备与所述邻居设备之间的BGP会话的保活定时器;其中,在所述保活定时器超时之前,所述路由交换设备保持与所述邻居设备之间的BGP会话状态。
进一步的,BGP协议模块71在与所述邻居设备建立备份TCP连接之后,启动对应的保活定时器,所述保活定时器的时长不小于TCP连接建立过程所用的时长,在该保活定时器超时的时候,删除所述备份TCP连接。
进一步的,BGP协议模块71在当当本设备接收到所述邻居设备发送来的请求发起建立TCP连接的通知后,根据所通知的接口IP地址发起建立TCP连接的请求,并启动定时器,所述定时器的计时时长不小于TCP连接建立过程所用的时长;在本设备建立起到所通知的接口IP地址的TCP连接后删除所述定时器,若所述定时器超时,则删除与所述邻居设备间的BGP会话,并触发与所述邻居设备重建BGP会话。
进一步的,BGP协议模块71在与邻居设备完成BGP会话建立后,与所述邻居设备进行自动迁移TCP连接的能力的协商。相应的,接口管理模块73需要将本设备上用来与所述邻居设备建立BGP会话的TCP连接的源接口IP地址变更时,若本设备和所述邻居设备具备自动迁移TCP连接的能力,则指示BGP协议模块71将用于建立BGP会话的变更后的接口IP地址发送给所述邻居设备。
具体的,映射关系表维护模块72具体用于:根据本设备上的BGP配置信息创建映射关系表项,所述BGP配置信息中包括本设备和邻居设备建立BGP 会话的TCP连接所使用的接口IP地址以及邻居设备的描述信息。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (12)
1.一种边界网关协议BGP邻居关系维护方法,其特征在于,该方法包括:
路由交换设备根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;所述映射关系表项中记录有本设备和邻居设备建立BGP会话的TCP连接所使用的接口IP地址以及邻居设备的描述信息;
当所述路由交换设备需要将本设备上用来与所述邻居设备建立BGP会话的TCP连接的源接口IP地址变更为目标接口IP地址时,执行以下步骤:
将用于建立BGP会话的备份TCP连接的接口IP地址发送给所述邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求,根据所述邻居设备发起的备份TCP连接建立请求,使用所述用于建立备份TCP连接的接口IP地址与所述邻居设备建立BGP会话的备份TCP连接;
在所述BGP会话的备份TCP连接建立完成后,将所述源接口IP地址变更为所述目标接口IP地址,根据所述目标接口IP地址更新本设备上所述邻居设备对应的映射关系表项,将所述目标接口IP地址发送给所述邻居设备,以使所述邻居设备根据所述目标接口IP地址更新对应本设备上的映射关系表项,通知所述邻居设备发起到所述目标接口IP地址的TCP连接建立请求,根据所述邻居设备发起的TCP连接建立请求,使用所述目标接口IP地址与所述邻居设备建立BGP会话的TCP连接。
2.如权利要求1所述的方法,其特征在于,所述路由交换设备根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话,具体包括:
所述路由交换设备接收到目的为本设备的用于保活BGP会话的报文后,获取所述报文中携带的邻居设备的描述信息;
所述路由交换设备根据邻居设备的描述信息匹配本设备上的映射关系表项,若匹配到相应映射关系表项,则更新本设备与所述邻居设备之间的BGP会话的保活定时器;其中,在所述保活定时器超时之前,所述路由交换设备保持与所述邻居设备之间的BGP会话状态。
3.如权利要求1所述的方法,其特征在于,该方法还包括:
所述路由交换设备与所述邻居设备建立备份TCP连接之后,启动对应的保活定时器,所述保活定时器的时长不小于TCP连接建立过程所用的时长;当该保活定时器超时的时候,删除所述备份TCP连接。
4.如权利要求1所述的方法,其特征在于,该方法还包括:
当所述路由交换设备接收到所述邻居设备发送来的请求发起建立TCP连接的通知后,根据所通知的接口IP地址发起建立TCP连接的请求,并启动定时器,所述定时器的计时时长不小于TCP连接建立过程所用的时长;
所述路由交换设备建立起到所通知的接口IP地址的TCP连接后删除所述定时器;若所述定时器超时,则删除与所述邻居设备间的BGP会话,并触发与所述邻居设备重建BGP会话。
5.如权利要求1-4任一项所述的方法,其特征在于,路由交换设备在与邻居设备完成BGP会话建立后,还包括与所述邻居设备进行自动迁移TCP连接的能力的协商;
当所述路由交换设备需要将本设备上用来与所述邻居设备建立BGP会话的TCP连接的源接口IP地址变更时,若本设备和所述邻居设备具备自动迁移TCP连接的能力,则将用于建立BGP会话的变更后的接口IP地址发送给所述邻居设备。
6.如权利要求1-4任一项所述的方法,其特征在于,所述映射关系表项是所述路由交换设备根据本设备上的BGP配置信息的创建的,所述BGP配置信息中包括本设备和邻居设备建立BGP会话的TCP连接所使用的接口IP地址以及邻居设备的描述信息。
7.一种路由交换设备,所述路由交换设备用于运行有边界网关协议BGP设备,其特征在于,所述路由交换设备包括:BGP协议模块、映射关系表维护模块和接口管理模块;
BGP协议模块,用于根据本设备上的映射关系表项,维护与邻居设备之间的BGP会话;根据所述接口管理模块的指示,将用于建立备份TCP连接的接口IP地址发送给邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求,并根据所述邻居设备发起的备份TCP连接建立请求,使用用于建立备份TCP连接的接口IP地址与所述邻居设备建立备份TCP连接;以及,根据所述接口管理模块的指示,将目标接口IP地址发送给邻居设备,以使所述邻居设备更新对应的映射关系表项以及通知邻居设备发起到所述目标接口IP地址的TCP连接建立请求,并根据所述邻居设备发起的TCP连接建立请求,使用变更后的目标接口IP地址与所述邻居设备建立TCP连接;
映射关系表维护模块,用于维护本设备上的映射关系表项,所述映射关系表项中记录有本设备和邻居设备建立TCP连接所使用的接口IP地址以及邻居设备的描述信息;
接口管理模块,用于当本设备需要将用来与所述邻居设备建立TCP连接的源接口IP地址变更为目标接口IP地址时,指示所述BGP协议模块将用于建立备份TCP连接的接口IP地址发送给所述邻居设备,以通知所述邻居设备更新对应的映射关系表项以及发起到该接口IP地址的备份TCP连接建立请求;在所述备份TCP连接建立完成后,将所述源接口IP地址变更为所述目标接口IP地址,指示所述映射关系维护模块根据所述目标接口IP地址更新本设备上所述邻居设备对应的映射关系表项,指示所述BGP协议模块通知所述邻居设备发起到所述目标接口IP地址的TCP连接建立请求。
8.如权利要求1所述的方法,其特征在于,所述BGP协议模块具体用于,接收到目的为本设备的用于保活BGP会话的报文后,获取所述报文中携带的邻居设备的描述信息;根据所述邻居设备的描述信息匹配本设备上的映射关系表项,若匹配到相应映射关系表项,则更新本设备与所述邻居设备之间的BGP会话的保活定时器;其中,在所述保活定时器超时之前,所述路由交换设备保持与所述邻居设备之间的BGP会话状态。
9.如权利要求7所述的设备,其特征在于,所述BGP协议模块还用于,在与所述邻居设备建立备份TCP连接之后,启动对应的保活定时器,所述保活定时器的时长不小于TCP连接建立过程所用的时长;在该保活定时器超时的时候,删除所述备份TCP连接。
10.如权利要求7所述的设备,其特征在于,所述BGP协议模块还用于,当本设备接收到所述邻居设备发送来的请求发起建立TCP连接的通知后,根据所通知的接口IP地址发起建立TCP连接的请求,并启动定时器,所述定时器的计时时长不小于TCP连接建立过程所用的时长;在本设备建立起到所通知的接口IP地址的TCP连接后删除所述定时器,若所述定时器超时,则删除与所述邻居设备间的BGP会话,并触发与所述邻居设备重建BGP会话。
11.如权利要求7-10任一项所述的设备,其特征在于,所述BGP协议模块还用于,在与邻居设备完成BGP会话建立后,与所述邻居设备进行自动迁移TCP连接的能力的协商;
所述接口管理模块具体用于,当需要将本设备上用来与所述邻居设备建立BGP会话的TCP连接的源接口IP地址变更时,若本设备和所述邻居设备具备自动迁移TCP连接的能力,则指示所述BGP协议模块将用于建立BGP会话的变更后的接口IP地址发送给所述邻居设备。
12.如权利要求7-11任一项所述的方法,其特征在于,所述映射关系表维护模块具体用于,根据本设备上的BGP配置信息创建映射关系表项,所述BGP配置信息中包括本设备和邻居设备建立BGP会话的TCP连接所使用的接口IP地址以及邻居设备的描述信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310060448.8A CN103152272B (zh) | 2013-02-26 | 2013-02-26 | 一种bgp邻居关系维护方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310060448.8A CN103152272B (zh) | 2013-02-26 | 2013-02-26 | 一种bgp邻居关系维护方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103152272A true CN103152272A (zh) | 2013-06-12 |
CN103152272B CN103152272B (zh) | 2016-06-08 |
Family
ID=48550144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310060448.8A Active CN103152272B (zh) | 2013-02-26 | 2013-02-26 | 一种bgp邻居关系维护方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103152272B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104135438A (zh) * | 2014-07-08 | 2014-11-05 | 清华大学 | 报文携带路由信息的可扩展路由方法 |
CN104468368A (zh) * | 2014-11-10 | 2015-03-25 | 杭州华三通信技术有限公司 | 配置bgp邻居的方法及装置 |
CN106254255A (zh) * | 2016-10-13 | 2016-12-21 | 上海赛特斯信息科技股份有限公司 | Bgp路由通告限速方法和bgp路由通信方法 |
WO2017059708A1 (zh) * | 2015-10-09 | 2017-04-13 | 中兴通讯股份有限公司 | Bier信息的发送方法、接收方法及装置 |
CN107104900A (zh) * | 2016-02-23 | 2017-08-29 | 中兴通讯股份有限公司 | 一种组播信息处理方法和装置 |
CN108124023A (zh) * | 2016-11-29 | 2018-06-05 | 中兴通讯股份有限公司 | 支持地址变化的方法及装置 |
CN111740901A (zh) * | 2020-05-20 | 2020-10-02 | 北京华三通信技术有限公司 | 一种建立bgp对等体的方法及装置 |
CN113395179A (zh) * | 2021-06-11 | 2021-09-14 | 中国科学技术大学 | 提高ip网络中bgp对等体抖动告警信息可读性的方法 |
CN114567580A (zh) * | 2020-11-27 | 2022-05-31 | 华为技术有限公司 | 一种消息发送方法、消息处理方法、装置及系统 |
CN115941474A (zh) * | 2022-12-30 | 2023-04-07 | 迈普通信技术股份有限公司 | 一种软件升级方法、系统及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101517998A (zh) * | 2006-11-09 | 2009-08-26 | 华为技术有限公司 | 一种通告自治系统边界连接信息的方法和边界节点 |
CN101515891A (zh) * | 2009-04-02 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种边界网关协议路由处理方法和路由器 |
CN101631130A (zh) * | 2009-08-27 | 2010-01-20 | 杭州华三通信技术有限公司 | 直连ebgp邻居间的路由通告方法和设备 |
US20100284403A1 (en) * | 2009-05-11 | 2010-11-11 | Juniper Networks, Inc. | Scalable routing policy construction using dynamic redefinition of routing preference value |
CN102594714A (zh) * | 2012-03-29 | 2012-07-18 | 杭州华三通信技术有限公司 | 一种bgp路由处理方法和bgp路由设备 |
US20120254465A1 (en) * | 2010-01-04 | 2012-10-04 | Alcatel Lucent | Method and system for improved routing |
CN102761482A (zh) * | 2012-06-29 | 2012-10-31 | 杭州华三通信技术有限公司 | 一种bgp邻居的建立方法和设备 |
WO2012177201A1 (en) * | 2011-06-23 | 2012-12-27 | Telefonaktiebogalet Lm Ericsson (Publ) | Method and node for supporting routing via inter as path |
-
2013
- 2013-02-26 CN CN201310060448.8A patent/CN103152272B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101517998A (zh) * | 2006-11-09 | 2009-08-26 | 华为技术有限公司 | 一种通告自治系统边界连接信息的方法和边界节点 |
CN101515891A (zh) * | 2009-04-02 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种边界网关协议路由处理方法和路由器 |
US20100284403A1 (en) * | 2009-05-11 | 2010-11-11 | Juniper Networks, Inc. | Scalable routing policy construction using dynamic redefinition of routing preference value |
CN101631130A (zh) * | 2009-08-27 | 2010-01-20 | 杭州华三通信技术有限公司 | 直连ebgp邻居间的路由通告方法和设备 |
US20120254465A1 (en) * | 2010-01-04 | 2012-10-04 | Alcatel Lucent | Method and system for improved routing |
WO2012177201A1 (en) * | 2011-06-23 | 2012-12-27 | Telefonaktiebogalet Lm Ericsson (Publ) | Method and node for supporting routing via inter as path |
CN102594714A (zh) * | 2012-03-29 | 2012-07-18 | 杭州华三通信技术有限公司 | 一种bgp路由处理方法和bgp路由设备 |
CN102761482A (zh) * | 2012-06-29 | 2012-10-31 | 杭州华三通信技术有限公司 | 一种bgp邻居的建立方法和设备 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104135438A (zh) * | 2014-07-08 | 2014-11-05 | 清华大学 | 报文携带路由信息的可扩展路由方法 |
CN104135438B (zh) * | 2014-07-08 | 2017-10-17 | 清华大学 | 报文携带路由信息的可扩展路由方法 |
CN104468368A (zh) * | 2014-11-10 | 2015-03-25 | 杭州华三通信技术有限公司 | 配置bgp邻居的方法及装置 |
CN104468368B (zh) * | 2014-11-10 | 2018-09-04 | 新华三技术有限公司 | 配置bgp邻居的方法及装置 |
WO2017059708A1 (zh) * | 2015-10-09 | 2017-04-13 | 中兴通讯股份有限公司 | Bier信息的发送方法、接收方法及装置 |
CN107104900A (zh) * | 2016-02-23 | 2017-08-29 | 中兴通讯股份有限公司 | 一种组播信息处理方法和装置 |
WO2017143717A1 (zh) * | 2016-02-23 | 2017-08-31 | 中兴通讯股份有限公司 | 一种组播信息处理方法和装置 |
CN106254255A (zh) * | 2016-10-13 | 2016-12-21 | 上海赛特斯信息科技股份有限公司 | Bgp路由通告限速方法和bgp路由通信方法 |
WO2018099308A1 (zh) * | 2016-11-29 | 2018-06-07 | 中兴通讯股份有限公司 | 支持地址变化的方法、装置及存储介质 |
CN108124023A (zh) * | 2016-11-29 | 2018-06-05 | 中兴通讯股份有限公司 | 支持地址变化的方法及装置 |
CN111740901A (zh) * | 2020-05-20 | 2020-10-02 | 北京华三通信技术有限公司 | 一种建立bgp对等体的方法及装置 |
CN111740901B (zh) * | 2020-05-20 | 2022-09-02 | 北京华三通信技术有限公司 | 一种建立bgp对等体的方法及装置 |
CN114567580A (zh) * | 2020-11-27 | 2022-05-31 | 华为技术有限公司 | 一种消息发送方法、消息处理方法、装置及系统 |
CN114567580B (zh) * | 2020-11-27 | 2023-10-20 | 华为技术有限公司 | 一种消息发送方法、消息处理方法、装置及系统 |
CN113395179A (zh) * | 2021-06-11 | 2021-09-14 | 中国科学技术大学 | 提高ip网络中bgp对等体抖动告警信息可读性的方法 |
CN115941474A (zh) * | 2022-12-30 | 2023-04-07 | 迈普通信技术股份有限公司 | 一种软件升级方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103152272B (zh) | 2016-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103152272A (zh) | 一种bgp邻居关系维护方法及设备 | |
JP5759024B2 (ja) | 地理的冗長ゲートウェイでセッションを復元するシステムおよび方法 | |
CN101515891B (zh) | 一种边界网关协议路由处理方法和路由器 | |
CN101340369B (zh) | 实现虚连接支持优雅重启的方法和路由器 | |
JP2008312091A (ja) | 移動体通信システム、pdif及び移動端末の死活監視方法 | |
CN105282803A (zh) | 通讯接口和基于通讯接口的信息传递方法及系统 | |
CN108551679B (zh) | 基于局域网Mesh技术的无线设备通信方法及系统 | |
WO2013083034A1 (zh) | 触发更新移动节点映射信息的方法、ms和mn | |
WO2011091696A1 (zh) | 相邻基站连接的建立方法、建立设备和建立系统 | |
WO2015085715A1 (zh) | 一种处理无线接入的方法、转发设备及网络控制器 | |
CN101588569B (zh) | 在PMIPv6域内的移动节点切换过程中多LMA的选择方法 | |
JP2020508019A (ja) | データ伝送方法、基地局、ローカル・ブレイクアウトコントローラ、ゲートウェイ、及びシステム | |
CN104038427A (zh) | 路由更新方法和路由更新装置 | |
CN103491011B (zh) | Bgp会话变更方法及设备 | |
CN102724767A (zh) | 一种移动用户的虚拟专用网接入方法及其装置 | |
CN102395167B (zh) | 无线Mesh网络域间切换方法 | |
CN102780701B (zh) | 访问控制方法和设备 | |
CN101834741A (zh) | 一种调整家庭网关桥端口下设备配置的方法及装置 | |
WO2016039039A1 (ja) | 通信装置、その制御方法、通信システム、およびプログラム | |
CN101626611B (zh) | 维护承载的方法、装置及系统 | |
CN102368857B (zh) | 无线Mesh网络域内切换方法 | |
CN104270307A (zh) | 一种bgp邻居的建立方法及设备 | |
CN104869066A (zh) | 一种动态更新连接的方法和装置 | |
CN102752883A (zh) | 一种基于点对点网络的通讯系统及通讯方法 | |
CN107820326B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee 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 Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |