Bgp动态迁移方法和装置的制作方法

文档序号:7695297阅读:160来源:国知局
专利名称:Bgp动态迁移方法和装置的制作方法
技术领域
本发明涉及移动通信领域,尤其涉及一种BGP动态迁移方法和装置。
背景技术
目前Internet路由的传递主要依靠边界网关协议 (Border Gateway Protocol,简称BGP)路由协议来完成,随着IP技术的迅速发展,全球Internet 用户数量越来越多,Internet路由数量也在持续增长,这就给BGP协议带来新 的^L战。目前的国际关口局组网有如下特点
(1) 外部BGP (External Border Gateway Protocol,简称EBGP)的邻居 (Peer)数目较多,常用场景需要16个,极端场景会多达100-200个;
(2) 路由量大,目前Internet的前缀数目约23万,而且随着时间增长, 这个数量还会继续增加;
(3) 路由分布特点显著,即相同前缀不同邻居的路由份数极多;
(4) 持续存在路由振荡,据相关资料介绍,平均6条/s。 为了解决上述一个CPU处理多个Peer,多条路由带来的负栽过大,压
力过重的缺陷,对BGP进行分布式设计,把Peer分布在不同的BGP进程 中,这样每个BGP只处理与自己相关的Peer,将原来集中式的处理分布开 来。基于Peer的分布式BGP ( Peer-Distributed BGP,简称PD-BGP )结 构示意图如图1所示,PD-BGP主要完成路由的接收和发送处理。PD-BGP 对接收的Peer发来的路由进行部分选路,只将局部最优路由发送给中心 BGP (Center BGP,简称CBGP),这样可以使CBGP上只保存那些可能成为 优选的路由信息,降低了 CBGP对内存的占用;PD-BGP对Peer发送的信息 或发送给Peer的信息进行入口策略和出口策略的过滤,这样可以降低CBGP对CPU的占用。CBGP主要功能为
(1 ) 4妄收各个PD-BGP发送的局部最优路由并进行全选路,选出全局最优
路由;
(2) 由全局最优路由生成转发表项,指导转发;
(3) 将全局最优路由发送给PD-BGP,以便发给Peer;
从功能上看,CBGP实现了所有BGP的基本功能,包括邻居的入口策略 和出口策略,CBGP上仍然可以正常配置BGP的Peer, CBGP接收路由的流 程图如图2所示,在本流程中,Adj-RIB (Routing Information Base, 简称RIB,路由信息表)-IN为BGP Peer的入口路由表,BGP会针对每一 个Peer形成一个Adj-RIB-IN,用来存放从该Peer收到的路由信息,存放 的^^由信息并没有经过选路。Loc-RIB为BGP的本地路由表,BGP对每一 个Peer收到的路由信息进行路由选路,将优选的路由信息存放到Loc-RIB 中。Loc-RIB中的路由用来形成转发信息表(Forwarding Information Base,简称FIB),将该FIB发送给Peer。 Adj-RIB-OUT为BGP Peer的出 口路由表,BGP会将优选的路由信息发送给相应的Peer,发送给Peer的 路由记录在Adj-RIB-OUT中。
由于系统的负载与系统的运行态有关,比如路由数量、振荡、策略等, 所以可能会出现某些PD-BGP的负载不均衡,这时就需要将某个Peer从一个BGP 进程迁移到另外一个BGP进程中;或者根据业务的发展,某个BGP进程已经不 能够承载该BGP的Peer,这时需要将该BGP的某些Peer迁移到其他BGP进程中, 以减少这个BGP进程的负载。
另外,由于业务的发展是动态的,所以前期的部署可能无法满足后面扩 展性的要求,这时就需要将Peer动态的从一个BGP进程中迁移到另外一个BGP 进程中,这时要做到不能因为动态迁移而造成业务中断。此外为了尽量减小 BGP的Peer在进程之间切换给网络带来的负担,要求BGP Peer的切换过程中在 不造成业务中断的前提下,不能影响BGP Peer会话,以及其他业务。迁移过程的触发可以是手工配置,也可以是系统自动检测各BGP进程的负载,比如占
用CPU时间、邻居数等等, 一旦发现某个BGP进程的负载较大,则自动触发从 该BGP进程中,将一些BGP Peer迁移到另夕l、一个BGP进程中。这个迁移过程不 受硬件设备的限制,可以发生在一块物理设备板上的各BGP进程之间。也可以 发生在两块物理设备板上。
为了解决BGPPeer动态迁移过程中的上述问题,目前一种方法采用了先 删除需要迁移的BGP Peer,再重新配置并部署到其它PD-BGP中的方案,但 该方法增加了配置的工作量,较为繁瑣,而且删除需要迁移的BGPPeer也 会删除该Peer的路由信息,会造成转发信息的丢失,影响正常的业务。目前 另一种方法采用了将BGP Peer会话先断开,借助优雅重启(Graceful Restart,简称GR )技术保证业务不断连,然后再将要迁移的Peer的相应 配置动态迁移到其他BGP进程的方案,但该方法造成会话断连,重新建连 时间以及数据平滑的时间比较长,不能及时响应网络拓朴变化,对网络影 响很大;而且要求本端和对端设备必须支持GR能力,对设备要求高。

发明内容
本发明实施例提供一种BGP动态迁移方法和装置,以解决现有技术Peer 迁移过程中出现的信息丟失、会话与业务断连等缺陷。
本发明实施例提供了一种BGP动态迁移方法,包括
接收动态迁移命令,并根据所述动态迁移命令创建虛拟邻居和备份TCP 连接;
获取迁移邻居在源边界网关协议进程上的配置信息以及所述迁移邻居在 源边界网关协议进程上的第一入口路由表中的路由信息,将所述配置信息存 储到所述虛拟邻居中,将所述第一入口路由表的路由信息存储到创建的迁移 邻居在目标边界网关协议进程上的第二入口路由表中,并根据存储到所述第 二入口路由表中的路由信息进行选路;将所述源边界网关协议进程上的TCP连接对应所述迁移邻居的报文数据 接收到备份TCP连接。
为了实现上述目的,本发明实施例还提供了一种BGP动态迁移装置,包

迁移准备模块,用于根据接收到的动态迁移命令创建虚拟邻居和备份TCP 连接;
路由存储模块,用于将获取的迁移邻居在源边界网关协议进程上的配置 信息存储到所述虚拟邻居中,将接收到的迁移邻居在源边界网关协议进程上 的第 一入口路由表中的路由信息存储到创建的迁移邻居在目标边界网关协议 进程上的第二入口路由表中,并根据存储到所述第二入口路由表中的路由信 息进行选路;
报文接收模块,用于将所述源边界网关协议进程上的TCP连接对应所述 迁移邻居的报文数据接收到备份TCP连接。
本发明实施例的BGP动态迁移方法和装置,通过在目标BGP进程创建虛 拟Peer和备份TCP连接,将迁移Peer在源BGP进程上的所有路由信息都迁 移到目标BGP进程对应迁移Peer的入口信息表中,并将源BGP进程的TCP连 接上对应迁移Peer的报文数据都迁移到备份TCP连接上,使得虛拟Peer成 为目标BGP进程的Peer。由于在迁移过程中该Peer与源BGP进程或目标BGP 进程始终保持连接,因此保证了业务和会话的正常进行。


图1为基于Peer的分布式BGP结构示意图; 图2为CBGP接收路由的流程图3为本发明实施例BGP动态迁移方法实施例一流程图 图4为本发明实施例BGP动态迁移方法实施例二流程图 图5为本发明实施例BGP动态迁移方法实施例三流程6为本发明实施例BGP动态迁移方法实施例四流程图7为本发明实施例BGP动态迁移装置实施例一结构示意图8为本发明实施例BGP动态迁移装置实施例二结构示意图。
具体实施例方式
本发明实施例是基于Peer的分布式BGP,如图3所示,为本发明实施 例BGP动态迁移方法实施例一流程图,具体包括
010、接收动态迁移命令,并根据该动态迁移命令创建虚拟Peer和备份 传输控制协议(Transmission Control Protocol,简称TCP)连才妄;
020、获取迁移Peer在源BGP进程上的配置信息和迁移Peer在源BGP进 程上的第一入口路由表中的路由信息,将第一入口路由表的路由信息存储到 创建的迁移Peer在目标BGP进程的第二入口路由表中,根据存储的路由信息 进行选路,将接收到的迁移Peer在源BGP进程上的配置信息存储到虚拟Peer中;
030、将源BGP进程的TCP连接上对应迁移Peer的报文数据接收到备份 TCP连接。
本发明实施例通过在目标BGP进程创建虛拟Peer和备份TCP连接,将迁 移Peer在源BGP进程的所有路由信息都迁移到目标BGP进程对应迁移Peer 的入口信息表中,并将源BGP进程的TCP连接上对应迁移Peer的报文数据都 迁移到备份TCP连接上,使得虛拟Peer成为目标BGP进程的Peer。由于在 迁移过程中该Peer与源BGP进程或目标BGP进程始终保持连接,因此保证了 业务和会话的正常进行。
如图4所示,为本发明实施例BGP动态迁移方法实施例二流程图,由于在 一台设备上,BGP进程会包含两类进程CBGP进程和PD-BGP进程,BGP进程是 CBGP进程和PD-BGP进程的统称,而Peer的迁移可以在两类进程之间进行,也 可以在两个PD-BGP进程之间进行。本实施例以BGP Peer在不同的PD-BGP进程 之间进行动态迁移,具体的,以迁移Peer从源PD-BGP进程(本实施例记为PD-BGP进程1)上迁移到目标PD-BGP进程(本实施例记为PD-BGP进程2 )为例 进行说明,具体包括
200、 PD-BGP进程2接收到动态迁移命令,创建虛拟Peer和备4分TCP连接;
本实施例中,PD-BGP进程2创建的虛拟Peer,用于存4诸迁移Peer的配置信 息;备份TCP连接用于存储PD-BGP进程l的TCP连接对应该迁移Peer的报文数 据,该备份TCP连接此时并不触发建立新的连接。
210、 PD-BGP进程2发送迁移准备完毕消息给PD-BGP进程1,并创建迁移 Peer在PD-BGP进程2上的入口路由表;
将PD-BGP进程2创建的入口路由表记为Adj-RIB-IN21;
220、 PD-BGP进程1收到该迁移准备完毕消息之后,发送迁移Peer在PD-BGP 进程l上入口路由表的路由信息,以及在PD-BGP进程1上的配置信息给PD-B(;P 进程2;并将该迁移Peer标记为正在切出状态,将接收到的迁移Peer在PD-BGP 进程1上的配置信息存储到虛拟Pee r中;
将迁移Peer在PD-BGP进程l上的入口路由表记为Adj-RIB-IN11;
230、 PD-BGP进程2将接收到的PD-BGP进程1发送的路由信息存储到创建的 Adj-RIB-IN21中,并对接收到的路由信息进行选路;
240、 PD-BGP进程2将选路得到的局部最优路由发送给CBGP进程;
250、 CBGP进程接收到局部最优路由后,进行全局最优路由的选路;
260、当PD-BGP进程l将Adj-RIB-IN11的路由信息发送完毕后,发送路由 发送完毕消息给PD-BGP进程2,并发送TCP连接对应迁移Peer的报文数据给 PD-BGP进程2的备卩分TCP连接;
270、 PD-BGP进程2根据接收到的路由发送完毕消息,得出局部最优路由 发送完毕的通知消息,发送该通知消息给CBGP进程,通知CBGP进程其局部最 优路由发送完毕,并指示备份TCP连接接收报文;
备份TCP连接对报文的接收过程可以包括TCP连接停止接收报文,则将 对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及还未接收完的报文数据发送给备份TCP连接;或者TCP连接继续接收报文,并且将 对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及还未 接收完的报文数据发送给备份TCP连接;当TCP连接对应迁移Peer的报文数据 与备份TCP连接对应迁移Peer的报文数据完全相同时,停止接收报文,然后备 份TCP触发新的连接。
备份TCP连接对报文进行处理和接收,比如对于原来接收但未来得及处理 的报文进行处理,将原来只接收了部分的报文继续接收。这时备份TCP已经能 够响应网络。
280、 CBGP进程根据接收的局部最优路由发送完毕的通知消息,选出全局 最优路由,然后发送迁移完毕消息给PD-BGP进程1;
由于PD-BGP进程2发送给CBGP进程的局部最优路由是从迁移Pe e r的路由 信息中选出,之前PD-BGP进程l也根据迁移Peer的路由信息选出局部最优路由 发送给CBGP进程,因此PD-BGP进程l发送的局部最优路由和PD-BGP进程2发送 的局部最优路由相同,这时CBGP进程就需要区分这两个局部最优路由是来自 PD-BGP进程1还是来自PD-BGP进程2,比如可以以进程号来区分,或者在局部 最优^^由上作标记。
290、 PD-BGP进程1根据接收到的迁移完毕消息,删除Adj-RIB-INll和 Ad j-RIB-1N11中迁移Peer的所有路由信息,删除迁移Pee r的配置信息,并删 除TCP连接上对应迁移Peer的所有报文数据信息。
然后CBGP也可以删除PD-BGP进程1发送的对应迁移Pee r的局部最优路由。
当迁移过程发生失败,比如PD-BGP进程2出现重启,那么PD-BGP进程1、 PD-BGP进程2以及TCP连接都恢复到迁移前的状态。
本发明实施例可以实现BGP的Peer在不同的PD-BGP之间动态迁移,由于其 没有配置的重复,迁移速度快,而且能够保证转发不中断,会话不断连。
如图5所示,为本发明实施例BGP动态迁移方法实施例三流程图,本 实施例以BGP Peer从PD-BGP进程动态迁移到CBGP进程,具体的,以迁
ii移Peer从源PD-BGP进程(本实施例记为PD-BGP进程1 )上迁移到目标 CBGP进程(本实施例记为CBGP进程3)为例进行说明,具体包括
300、 CBGP进程3接收到动态迁移命令后,创建虚拟Peer和备份TCP 连接;
CBGP进程3创建的虛拟Peer,用于存储迁移Peer的配置信息;备份TCP连 接用于存储PD-BGP进程l的TCP连接对应该迁移Peer的报文数据,此时备份TCP
连接并不触发建立新的连接。
310、 CBGP进程3发送迁移准备完毕消息给PD-BGP进程1,并创建迁移Peer 在CBGP进程3上的入口路由表;
将CBGP进程3创建的入口路由表记为Adj-RIB-IN31;
320、 PD-BGP进程1收到该迁移准备完毕消息之后,发送迁移Peer在PD-BGP 进程l上的配置信息,以及在PD-BGP进程1上入口路由表的路由信息、配置信 息给CBGP进程3;并将该迁移Peer标记为正在切出状态;
将迁移Peer在PD-BGP进程l上的入口路由表记为Adj-RIB-IN11;
330、 CBGP进程3将接收到的PD-BGP进程l发送的路由信息存储到创建的 Adj-RIB-IN31中,将接收到的迁移Peer在PD-BGP进程l上的配置信息存储到虛 拟Peer中,并对接收到的路由信息进行选路;
340、 CBGP进程3根据选路得到的局部最优路由进行全局最优路由的选路;
350、当PD-BGP进程l将Adj-RIB-IN11的路由信息发送完毕后,发送路由 发送完毕消息给CBGP进程3,并发送TCP连接对应迁移Peer的报文数据给CBGP 进程3的备份TCP连接;
360、 CBGP进程3根据接收到的路由发送完毕消息,指示备份TCP连接接收报
文;
备份TCP连接对报文的接收过程可以包括TCP连接停止接收报文,则将 对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及还未 接收完的报文数据发送给备份TCP连接;或者TCP连接继续接收报文,并且将对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及还未 接收完的报文数据发送给备份TCP连接;当TCP连接对应迁移Peer的报文数据 与备份TCP连接对应迁移Peer的报文数据完全相同时,停止接收报文,然后备 份TCP触发新的连接。
备份TCP连接对报文进行处理和接收,比如对于原来接收但未来得及处理 的报文进行处理,将原来只接收了部分的报文继续接收。这时备份TCP已经能 够响应网络。
370、 CBGP进程3根据接收的路由发送完毕消息,选出全局最优路由,然 后发送迁移完毕消息给PD-BGP进程1;
由于迁移进行之前,PD-BGP进程l会从迁移Peer的路由信息中选出局部最 优路由并发送给CBGP进程3;而这个局部最优路由与步骤330中CBGP进程3选路 得出的局部最优路由相同,因为都是根据迁移Peer的路由信息选出,因此CBGP 进程3就需要区分这两个局部最优路由是来自PD-BGP进程1还是来自CBGP进程 3,比如可以以进程号来区分,或者在局部最优路由上作标记。
380 、 PD-BGP进程1根据接收到的迁移完毕消息,删除Adj-RIB-IN11和 Adj-RIB-INll中所有迁移Peer的路由信息,配置信息,并删除TCP连接上对应 迁移Peer的所有数据。
然后CBGP进程3也可以删除其根据接收到的PD-BGP进程1发送的局部最优 路由选出的全局最优路由。
当迁移过程发生失败,比如CBGP进程3出现故障或重启,那么PD-BGP进程 1通知TCP连接迁移失败,PD-BGP进程1、 CBGP进程3以及TCP连接都恢复到迁移 前的状态。
本发明实施例可以实现BGP的Peer在PD-BGP进程和CBGP进程之间的动态 迁移,由于其没有配置的重复,迁移速度快,而且能够保证转发不中断,会 话不断连。
如图6所示,为本发明实施例BGP动态迁移方法实施例四流程图,本实施例以BGP Peer从CBGP进程动态迁移到PD-BGP进程,具体的,以迁 移Peer从源PD-BGP进程(本实施例记为CBGP进程3 )上迁移到目标PD-BGP 进程(本实施例记为PD-BGP进程2 )为例进行说明,具体步骤包括
400、 PD-BGP进程2接收到动态迁移命令,创建虚拟Peer和^^分TCP连接; PD-BGP进程2创建的虛拟Peer,用于存储迁移Peer的配置信息;备份TCP 连接用于存储CBGP进程3的TCP连接对应该迁移Peer的报文数据。 该备卩分TCP连接此时并不触发建立新的连接。
410、 PD-BGP进程2发送迁移准备完毕消息给CBGP进程3,并创建迁移Peer 在PD-BGP进程2上的入口路由表;
将PD-BGP进程2创建的入口路由表记为Adj-RIB-IN21;
420、 CBGP进程3收到该迁移准备完毕消息之后,发送迁移Peer在CBGP进 程3上入口路由表的路由信息,以及在CBGP进程3上的配置信息给PD-BGP进程 2;并将该迁移Peer标记为正在切出状态;
将迁移Peer在CBGP进程3上的入口路由表记为Adj-RIB-IN31;
430、 PD-BGP进程2将接收到的CBGP进程3发送的路由信息存储到创建的 Adj-RIB-IN21中,将接收到的配置信息存储到虛拟Peer中并对接收到的路由 信息进行选路;
440、 PD-BGP进程2将选路得到的局部最优路由发送给CBGP进程3;
450、 CBGP进程3根据选路得到的局部最优路由进行全局最优路由的选路;
460、当CBGP进程3将Adj-RIB-INll的路由信息发送完毕后,发送路由发 送完毕消息给PD-BGP进程2,并发送TCP连接对应迁移Peer的报文数据给 PD-BGP进程2的备份TCP连接;
470、 PD-BGP进程2根据接收到的路由发送完毕消息,指示备份TCP连接接 收报文数据;
备份TCP连接对报文数据的接收过程可以包括TCP连接停止接收报文, 则将对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及还未接收完的报文数据发送给备份TCP连接;或者TCP连接继续接收报文,并 且将对应迁移Peer的已处理完的报文数据、已接收还未处理的报文数据以及 还未接收完的报文数据发送给备份TCP连接;当TCP连接对应迁移Peer的报文 数据与备份TCP连接对应迁移Peer的报文数据完全相同时,停止接收报文,触 发备份TCP连接。
备份TCP连接对报文进行处理和接收,比如对于原来接收但未来得及处理 的报文进行处理,将原来只接收了部分的报文继续接收。这时备份TCP已经能 够响应网络。
480、 CBGPi^f呈3将Adj-RIB-IN31的路由信息发鋭毕后,选出全局最伊W各由; 由于PD-BGP进程2发送给CBGP进程3的局部最优路由是从迁移Pe e r的路由 信息中选出,之前CBGP进程3已经根据迁移Peer的路由信息选出局部最优路 由,因此PD-BGP进程2发送的局部最优路由和CBGP进程3自身的局部最优路由 相同,这时CBGP进程3就需要区分这两个相同的局部最优路由,比如以这两个 局部最优路由的进程号来区分,或者在这两个路由上加上标记。
490、 CBGP进程3删除Adj-RIB-IN31和Adj-RIB-IN31中迁移Peer的所有路 由信息,迁移Peer在PD-BGP进程2的配置信息,并删除TCP连接上对应迁移Peer 的所有数据。
然后CBGP进程3也可以删除未将迁移Peer迁移出时,该迁移Peer的路由信 息选路得出的局部最优路由。
当迁移过程发生失败,比如PD-BGP进程2出现重启或故障,那么PD-BGP 进程2、 CBGP进程3以及TCP连接都恢复到迁移前的状态。
本发明实施例可以实现BGP的Peer在CBGP进程和PD-BGP进程之间的动态 迁移,由于其没有配置的重复,迁移速度快,而且能够保证转发不中断,会 话不断连。
如图7所示,为本发明实施例提供的BGP动态迁移装置实施例一结构示 意图,本实施例包括迁移准备模块4、路由存储模块5和报文接收模块6。其中迁移准备模块4用于根据接收到的动态迁移命令创建虛拟Peer和备份 TCP连接,路由存储模块5用于将获取的迁移邻居在源BGP进程上的配置信 息存储到迁移准备模块4创建的虛拟邻居中,将接收到的迁移邻居在源BGP 进程上的第一入口路由表中的路由信息存储到创建的迁移邻居在目标BGP进程 上的第二入口路由表中,并根据存储到第二入口路由表中的路由信息进行选路;
报文接收模块6用于将源BGP进程上的TCP连接对应迁移邻居的报文数 据接收到备份TCP连接。
如图8所示,为本发明实施例提供的BGP动态迁移装置实施例二结构示 意图,本实施例还包括局部选路模块8,用于将根据路由存储模块5存储 到第二入口路由表的路由信息进行选路得到的局部最优路由发送给用于全局 最优路由的选路的中心BGP进程。完毕消息接收模块9,用于接收源BGP进 程发送的路由发送完毕消息。通知消息发送模块IO,用于根据完毕消息接收 模块9发送的路由发送完毕消息得出局部最优路由发送完毕的通知消息,发 送该局部最优路由发送完毕的通知消息给中心BGP进程;结束消息发送模块 12,用于中心BGP进程根据通知消息发送模块10发送的局部最优路由发送完 毕的通知消息选择出全局最优路由,并发送迁移结束消息给源BGP进程。还 包括路由删除模块13,用于源BGP进程根据接收的结束消息发送模块12发送的 迁移结束消息,删除迁移Peer在源BGP进程上的路由信息。报文删除模块14, 用于源BGP进程通知TCP连接删除该TCP连接上对应迁移Peer的报文数据。
本发明实施例可以实现BGP的Peer在CBGP进程和PD—BGP进程之间 的动态迁移,由于其没有配置的重复,迁移速度快,而且能够保证转发不 中断,会话不断连。最后应说明的是以上实施例仅用以说明本发明的技术 方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解其依然可以对本发明的技术方案进行修改 或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本 发明技术方案的精神和范围。
1权利要求
1、一种BGP动态迁移方法,其特征在于,包括接收动态迁移命令,并根据所述动态迁移命令创建虚拟邻居和备份传输控制协议TCP连接;获取迁移邻居在源边界网关协议进程上的配置信息以及所述迁移邻居在源边界网关协议进程上的第一入口路由表中的路由信息,将所述配置信息存储到所述虚拟邻居中,将所述第一入口路由表的路由信息存储到创建的迁移邻居在目标边界网关协议进程上的第二入口路由表中,并根据存储到所述第二入口路由表中的路由信息进行选路;将所述源边界网关协议进程上的TCP连接对应所述迁移邻居的报文数据接收到备份TCP连接。
2、 根据权利要求1所述的BGP动态迁移方法,其特征在于,还包括将 根据所述第二入口路由表的路由信息进行选路得到的局部最优路由发送给中 心边界网关协议进程,所述中心边界网关协议进程#4居所述局部最优;洛由进 行选路。
3、 根据权利要求2所述的BGP动态迁移方法,其特征在于,还包括 接收所述源边界网关协议进程的路由发送完毕消息,并根据所述的路由发送完毕消息得出局部最优路由发送完毕的通知消息;发送所述局部最优路由发送完毕的通知消息给所述中心边界网关协议进程;所述中心边界网关协议进程根据所述局部最优路由发送完毕的通知消息 选出全局最优路由,并发送迁移结束消息给所述源边界网关协议进程。
4、 根据权利要求3所述的BGP动态迁移方法,其特征在于,还包括所 述源边界网关协议进程根据所述迁移结束消息,删除所述迁移邻居在所述源 边界网关协议进程上的路由信息;所述源边界网关协议进程通知所述TCP连 接删除该TCP连接上对应所述迁移邻居的报文数据。
5、 根据权利要求1所述的BGP动态迁移方法,其特征在于,将所述源边 界网关协议进程上的TCP连接对应所述迁移邻居的报文数据接收到备份TCP 连接,具体包括所述TCP连接停止接收报文,将对应所述迁移邻居的已处理完的报文数 据、已接收还未处理的报文数据以及还未接收完的报文数据发送到所述备份 TCP连接;或者所述TCP连接继续接收报文,并且将对应所述迁移邻居的已处理完的报备份TCP连接;当所述TCP连接对应所述迁移邻居的报文数据与所述备份TCP 连接对应所述迁移邻居的报文数据完全相同时,停止接收报文。
6、 一种BGP动态迁移装置,其特征在于包括迁移准备模块,用于根据接收到的动态迁移命令创建虚拟邻居和备份TCP 连接;路由存储模块,用于将获取的迁移邻居在源边界网关协议进程上的配置 信息存储到所述虛拟邻居中,将接收到的迁移邻居在源边界网关协议进程上 的第 一入口路由表的路由信息存储到创建的迁移邻居在目标边界网关协议进 程上的第二入口路由表中,并根据存储到所述第二入口路由表中的路由信息 进行选路;报文接收模块,用于将所述源边界网关协议进程上的TCP连接对应所述 迁移邻居的报文数据接收到备份TCP连接。
7、 根据权利要求6所述的BGP动态迁移装置,其特征在于,还包括局 部选路模块,用于将根据所述第二入口路由表的路由信息进行选路得到的局 部最优路由发送给用于全局最优路由的选路的中心边界网关协议进程。
8、 根据权利要求7所述的BGP动态迁移装置,其特征在于,还包括 完毕消息接收模块,用于接收所述源边界网关协议进程发送的路由发送完毕消息;通知消息发送模块,用于根据所述的路由发送完毕消息得出局部最优路 由发送完毕的通知消息,发送所述局部最优路由发送完毕的通知消息给所述中心边界网关协议进程;结束消息发送模块,用于所述中心边界网关协议进程根据所述局部最优 路由发送完毕的通知消息选出全局最优路由,并发送迁移结束消息给所述源 边界网关协议进程。
9、根据权利要求8所述的BGP动态迁移装置,其特征在于,还包括 路由删除模块,用于所述源边界网关协议进程根据接收的迁移结束消息,删除所述迁移邻居在所述源边界网关协议进程上的路由信息;报文删除模块,用于所述源边界网关协议进程通知所述TCP连接删除该TCP连接上对应所述迁移邻居的报文数据。
全文摘要
本发明实施例公开了一种BGP动态迁移方法和装置,该方法包括根据接收到的所述动态迁移命令创建虚拟邻居和备份TCP连接;获取迁移邻居在源边界网关协议进程上的配置信息以及所述迁移邻居在源边界网关协议进程上的第一入口路由表中的路由信息,将所述配置信息存储到所述虚拟邻居中,将所述第一入口路由表的路由信息存储到创建的迁移邻居在目标边界网关协议进程上的第二入口路由表中,并根据存储到所述第二入口路由表中的路由信息进行选路;将所述源边界网关协议进程上的TCP连接对应所述迁移邻居的报文数据接收到备份TCP连接。本发明实施例能够实现Peer在分布式BGP之间的动态迁移,保证迁移过程中会话和业务的不断连。
文档编号H04L29/08GK101605089SQ20081011473
公开日2009年12月16日 申请日期2008年6月11日 优先权日2008年6月11日
发明者张立新, 涂伯颜, 陈双龙 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1