BGP 协议原理总结
BGP路由协议讲解

BGP路由协议讲解BGP(Border Gateway Protocol)是一种边界网关协议,用于在互联网中交换路由信息。
BGP是一种路径矢量协议,其目标是使自治系统(AS)之间的路由选择更加灵活和可靠。
本文将从BGP的背景、特点、工作原理、路由选择算法等方面进行详细讲解。
一、BGP的背景在互联网中,不同的自治系统之间需要相互交换路由信息,以实现跨网络的通信。
而为了确保网络的稳定和可扩展性,需要一个可靠且灵活的路由选择协议。
BGP应运而生,成为互联网中最常用的路由协议之一二、BGP的特点1.可靠性:BGP通过使用路由可达性信息(RFD)来确保网络的可靠性。
它可以检测并通告最优的路径,以保证数据的正常传输。
2.灵活性:BGP允许管理员根据实际需求进行路由策略的配置和调整。
它可以根据权重、AS路径长度、自治系统内部度量等因素进行灵活的路由选择。
3.可扩展性:BGP具有较好的可扩展性,可以支持大规模的网络环境。
它可以将路由信息进行聚合和汇总,减少路由表的大小,提高路由表的查询和更新效率。
三、BGP的工作原理1.BGP会话的建立:BGP通过TCP协议建立会话,使用TCP的可靠传输特性进行可靠的路由信息交换。
2.路由信息的传递:BGP通过UPDATE消息来传递路由信息,包括可达网络的前缀、下一跳的IP地址、AS路径等。
BGP通过交换UPDATE消息来更新路由表,以实现最优的路径选择。
3.路由信息的选择:BGP使用路径矢量算法来选择最优的路由。
它会考虑多个因素,如AS路径长度、自治系统内部度量、路由策略等,选择出最优的路径来进行路由转发。
4.路由信息的聚合和汇总:BGP可以将相邻自治系统的路由信息进行聚合和汇总,以减少路由表的大小和维护成本,并提高路由表的查询和更新效率。
四、BGP的路由选择算法1.AS路径长度:BGP会选择AS路径长度最短的路径作为最优路径。
这是BGP最基本的路由选择准则。
2. MED(Multi-Exit Discriminator)值:MED值是用来指示到达同一网络的不同出口之间的优先级。
浅谈BGP协议的工作原理

浅谈BGP协议的工作原理BGP(Border Gateway Protocol)是一种用于在不同自治系统(AS)之间交换路由信息的协议。
它是互联网中最重要的路由协议之一,负责决定数据包从源地址到目标地址的路径。
BGP协议的工作原理可以分为邻居建立、路由选择和路由传播三个主要阶段。
1. 邻居建立阶段:在BGP网络中,路由器之间通过建立邻居关系来交换路由信息。
邻居关系可以是双向的,也可以是单向的。
在邻居建立阶段,路由器之间通过交换Open消息来商议BGP会话的参数,包括版本号、自治系统号等。
一旦邻居关系建立成功,就可以开始交换路由信息。
2. 路由选择阶段:BGP协议使用路径向量算法来选择最佳路径。
在路由选择阶段,路由器会根据收到的路由信息,计算出到达目标网络的最佳路径,并将该路径记录在路由表中。
BGP协议会考虑多个因素来选择最佳路径,如路径长度、自治系统号、AS路径属性等。
路由器会选择路径中AS路径属性最短的路由作为最佳路径。
3. 路由传播阶段:在BGP网络中,路由的传播是通过向邻居发送Update消息来实现的。
当路由器的路由表发生变化时,它会向邻居发送Update消息,通知其最新的路由信息。
邻居收到Update消息后,会更新自己的路由表,并将更新后的路由信息传播给其他邻居。
这样,BGP路由信息就可以在整个自治系统间传播,实现全局的路由选择。
BGP协议的工作原理还涉及到一些重要的概念和功能,如路由器的角色、路由策略、自治系统间的互联等。
下面对这些概念进行简要介绍:1. 路由器的角色:在BGP网络中,路由器可以扮演不同的角色,包括边界路由器(border router)、内部路由器(interior router)和对等路由器(peer router)。
边界路由器是连接不同自治系统的路由器,负责与其他自治系统的边界路由器建立邻居关系,交换路由信息。
内部路由器是自治系统内部的路由器,负责在自治系统内部传播路由信息。
bgp工作原理

bgp工作原理BGP (Border Gateway Protocol)是一种路由选择协议,用于在互联网中的自治系统之间交换路由信息。
它是一种路径向量协议,根据网络拓扑和实际网络状况来确定最佳路由。
BGP的工作原理如下:1. 邻居建立:BGP运行在自治系统(AS)之间,每个自治系统都有一个BGP路由器。
BGP路由器之间通过TCP建立邻居关系。
建立邻居关系后,BGP路由器可以交换路由信息。
2. 路由传播:一旦邻居关系建立,BGP路由器会将自己所拥有的路由信息通过BGP协议传播给邻居。
它不仅会传递自己的网络前缀和路径,还会附加其他属性,如AS路径、自治系统之间的路由策略等。
3. 路由选择:BGP使用一种称为路径向量的机制来选择最佳路由。
每个BGP路由器都维护一张路由表,记录所有被接受的路由信息和其对应的属性。
在路径选择过程中,BGP会考虑不同的属性,如AS路径长度、自治系统策略、自治系统边界协议的可达性等。
4. 路由策略:BGP允许自治系统拥有者通过配置路由策略来控制路由的选择。
通过设置不同的属性值、过滤条件和路由映射,自治系统可以选择是否接受、传播或修改某个路由。
5. 路由更新:当网络拓扑或自治系统之间的连接出现变化时,BGP会更新路由信息。
路由器会向邻居发送更新,以便其他自治系统可以调整其路由表。
6. 路由收敛:BGP的主要目标是将路由信息传播到所有的自治系统,并确保网络中的路由收敛。
路由收敛是指当网络中没有任何更改时,所有自治系统的路由表都达到一致的状态。
总体来说,BGP通过在自治系统之间交换路由信息,利用路径向量协议来选择最佳路由,以及通过路由策略控制路由选择,实现了互联网中的路由控制和路由收敛。
BGP的原理和实现

BGP的原理和实现BGP(Border Gateway Protocol,边界网关协议)是一种用于在互联网中交换路由信息的动态路由协议。
它对互联网的可扩展性和稳定性起着关键作用。
本文将详细介绍BGP协议的原理和实现。
一、BGP的原理1.1背景知识在互联网中,路由器是实现互联网互联的关键设备。
每台路由器都维护着一张路由表,用于确定如何将数据包传输到目的地。
而BGP协议则是用于在不同自治系统(AS)之间交换路由信息的协议。
一个自治系统是一组具有相同路由策略的网络,由一个或多个运营者管理。
1.2BGP的工作原理BGP协议使用TCP协议进行可靠的路由信息交换。
它在两个不同的AS 之间建立TCP连接,并通过这个连接进行路由信息交换。
BGP协议交换的是网络前缀(也称为路由)和相应的路径属性。
BGP的工作原理可以分为以下几个步骤:(1)建立BGP邻居关系:两个相邻的BGP路由器之间需要建立邻居关系,通过建立TCP连接来进行通信。
(2)交换路由信息:一旦建立了邻居关系,路由器之间开始交换路由信息。
每个路由器向邻居发送它拥有的路由信息,以及该路由的路径属性。
(3)决策路径:一旦收到路由信息,BGP路由器将使用一系列的路由选择规则来决定最佳路径。
这些规则包括可达性、AS路径长度、自治系统的策略等因素。
(4)更新路由表:BGP路由器根据最佳路径决策算法更新自己的路由表,以便选择最佳路径向其他路由器转发数据包。
(5)持续监控:BGP路由器会持续监控邻居之间的连接,如果发现连接中断或者出现问题,将会立即重新建立连接。
1.3BGP的特点BGP协议具有以下几个特点:(1)BGP协议是一种路径矢量协议,它交换的是网络前缀和路径属性信息。
(2)BGP协议是一种自治系统之间的协议,用于跨自治系统的路由信息交换。
(3)BGP协议具有较强的可扩展性,能够支持互联网规模的路由表。
(4)BGP协议具有良好的稳定性,能够快速适应网络拓扑和路由变化。
BGP协议总结(比较详细,好理解)

BGPBorder Gateway Protocol(当前使用的版本是 BGP-4)动态路由协议可以按照工作范围分为IGP以及EGP。
IGP工作在同一个AS内,主要用来发现和计算路由,为AS内提供路由信息的交换;而EGP工作在AS与AS之间,在AS 间提供无环路的路由信息交换,BGP则是EGP的一种。
BGP是一种增强的路径矢量路由协议,同时BGP是拥有丰富的策略控制技术的外部网关协议。
多运行于AS与AS之间。
目录:BGP概述BGP基本概念BGP工作原理BGP与IGP交互BGP属性特点BGP选路规则BGP负载分担BGP扩展特性1.BGP概述BGP 其着眼点不在于自动发现网络拓扑,而在于在AS之间选择最佳路由和控制路由的传播。
Ⅰ。
BGP使用 TCP 作为其传输层协议(监听端口号为 179),提高了协议的可靠性,且不需要专门的机制来确保连接的可控性。
BGP进行域间的路由选择,对协议的稳定性要求非常高。
因此用TCP协议的高可靠性来保证BGP协议的稳定性。
BGP的对等体之间必须在逻辑上连通,并进行TCP连接。
目的端口号为179,本地端口号任意。
Ⅱ。
路由更新时 ,BGP 只发送更新的路由,大大减少了BGP传播路由所占用的带宽,适用于在Internet上传播大量的路由信息。
Ⅲ。
BGP从设计上 避免了环路 的发生。
AS之间:BGP通过携带AS路径信息来标记途经的AS,带有本地AS号的路由将被丢弃,从而避免了域间产生环路。
AS内部:BGP在AS内学到的路由不再通告给AS内的BGP邻居,避免了AS内产生环路。
Ⅳ。
支持CIDR 无类域间路由Ⅵ。
BGP提供了丰富的路由策略;提供了防止路由振荡的机制;BGP也易于扩展二.BGP基本概念Ⅰ。
自治系统AS (Autonomous System )AS是指在一个实体管辖下的拥有相同选路策略的IP网络。
每个AS都有唯一的自治系统编号,这个编号是由IANA分配的。
编号范围是1~65535(其中1到64511是注册的因特网编号,64512到65535是私有网络编号。
BGP的原理和实现

BGP的原理和实现BGP(Border Gateway Protocol,边界网关协议)是互联网中最常用的路由转发协议之一,用于使不同的自治系统(AS)之间交换网络前缀信息,以实现互联网的连通性和可达性。
BGP的基本原理如下:1.BGP是一种路径矢量协议,采用了AS路径作为路由选择的依据。
每个自治系统都有一个唯一的AS号,用于标识自己。
2.BGP使用TCP协议作为传输层协议,通过TCP连接来交换路由信息。
BGP会对连接进行可靠性检查和保持,以确保连接的稳定性。
3.BGP路由器通过邻居关系建立BGP对等体之间的连接。
邻居关系指的是两个BGP路由器之间的逻辑连接,通常通过直接物理链路或IP网络建立。
4. BGP路由器通过向邻居发送Update消息来交换路由信息。
Update消息中包含了本地路由器所知的前缀以及相应的AS路径信息。
5. 当BGP路由器收到Update消息时,会将其中的路由信息添加到自己的路由表中。
然后,BGP会通过向邻居发送Update消息,将这些路由信息传播给其他路由器。
6.BGP使用了一系列的路由策略来选择最佳路由。
这些策略可以基于AS路径长度、路径属性、连接性能等多个因素进行选择。
7. BGP路由器会定期发送Keepalive消息给邻居,以保持BGP邻居关系的活跃状态。
BGP的实现可以分为以下几个方面:1. 建立邻居关系:BGP路由器需要通过建立邻居关系来与其他BGP路由器进行通信。
在建立邻居关系之前,需要先配置本地路由器的AS号、IP地址等基本信息,然后配置邻居路由器的IP地址、AS号等信息。
然后,路由器会发送Open消息到邻居路由器,进行邻居关系的建立。
2. 交换路由信息:一旦邻居关系建立成功,BGP路由器就可以开始交换路由信息了。
路由器会定期发送Update消息给邻居路由器,将本地路由表中的前缀信息和相应的AS路径传递给邻居。
同时,路由器也会接收邻居路由器发送的Update消息,并将其中的前缀信息添加到自己的路由表中。
BGP协议原理及配置中文详解

BGP协议原理及配置中文详解BGP(Border Gateway Protocol)是一种用于在互联网中进行路由选择的协议。
它通过交换路由信息,使得不同的自治系统(AS)能够相互通信和寻找最优的路由。
本文将详细介绍BGP协议的原理,以及如何进行BGP的配置。
一、BGP协议原理1. BGP的基本概念BGP是一种路径矢量协议,使用AS路径作为路由选择的依据。
它与内部网关协议(IGP)如OSPF和EIGRP相比,具有更强大和灵活的路由选择功能。
2. BGP的路由选择原则BGP通过评估路径的属性来选择最佳的路径,其路由选择的原则包括:- AS路径长度:短的AS路径被认为是更优的路径。
- 接入点:具有多个接入点的AS被认为具有更好的可达性。
- 路径属性:权重、本地优先级、本地地址优先和原点等属性。
3. BGP的路由传播过程BGP路由传播过程包括以下步骤:- 邻居建立:通过建立BGP邻居关系,交换自己的路由信息。
- 路由更新:将本地的路由信息发送给邻居,并接收邻居的路由信息。
- 路由策略:基于策略进行路由选择和过滤,决定最佳路径。
- 路由保存:将最佳的路由信息保存在BGP路由表中,用于转发数据包。
4. BGP的自治系统边界路由器(ASBR)自治系统边界路由器是连接不同自治系统的路由器,其核心任务是将本地自治系统的路由信息传递给其他自治系统,并将其他自治系统的路由信息传递到本地自治系统。
ASBR是BGP协议的核心设备。
二、BGP的配置流程BGP的配置涉及到几个重要的步骤,包括配置BGP邻居关系、配置路由策略、配置BGP属性等。
1. 配置BGP邻居关系首先需要配置BGP路由器之间的邻居关系,包括远程路由器的IP 地址、AS号码等相关信息。
举例来说,假设我们要配置与邻居路由器A建立BGP邻居关系,需要在本地路由器上执行如下命令:```router bgp <本地AS号>neighbor <邻居路由器A的IP地址> remote-as <邻居路由器A的AS 号>```2. 配置路由策略在BGP配置过程中,我们可以根据需要配置策略,来控制路由的选择和传播。
BGP协议原理与配置

BGP协议原理与配置BGP(Border Gateway Protocol,边界网关协议)是一种用于互联网的路由协议,它在不同自治系统(AS)之间进行路由交换和传递。
BGP协议的原理和配置是网络工程师必须要了解和掌握的内容,本文将详细介绍BGP协议的原理以及如何配置BGP协议。
一、BGP协议原理1. 路由选择算法BGP协议通过路由选择算法确定最优的路由路径。
BGP使用路径矢量算法(Path Vector Algorithm),该算法基于路径长度和路径属性进行路由选择。
BGP路由选择的原则是首选最短AS-PATH(AS路径),然后根据预定义的路径属性来决定路径。
2. AS-PATH属性AS-PATH是BGP的一个重要属性,用来表示一个数据包从源主机到目标主机的经过的AS路径。
BGP协议根据AS-PATH属性来判断是否出现环路,并且选择路径时会优先选择AS-PATH最短的路径。
3. BGP会话和交互BGP协议使用TCP连接进行邻居之间的BGP会话。
在BGP会话中,邻居之间会交换路由信息和其他参数。
BGP会话通过“Open”、“Keepalive”和“Update”消息进行控制和交换。
4. BGP路由传递BGP协议通过从一个AS向另一个AS传递路由信息来实现全局路由的学习和传播。
BGP路由信息可以包括目标网络的地址和AS-PATH属性等信息。
BGP协议通过BGP邻居之间的交互来传递路由信息。
二、BGP协议配置要配置BGP协议,需要首先确定BGP邻居关系并配置路由策略。
1. 配置BGP邻居关系BGP邻居关系是指BGP路由器之间的互联。
要配置BGP邻居关系,需要设置每个BGP路由器的邻居IP地址和AS号码。
可以通过以下命令在BGP路由器上配置邻居关系:router bgp <本地AS号码>neighbor <邻居IP地址> remote-as <邻居AS号码>2. 配置路由策略路由策略是决定如何选择和传送路由的规则。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BGP协议原理总结BGP协议3:边界网关路由协议(版本3)RFC1267王尚201192339名词解释:1AS(自治系统):在单一技术管理下的一系列路由器,他们使用一个内部网关,在AS内部路由数据包的共同标准,使用同一个外部网关协议来想其他AS传输数据包。
因为这个经典的解释已经被扩展,所以对于一个单一的AS来说在内部使用多个内部网关协议和有时多个系列的标准已经很普遍了。
(在这里使用的AS强调了这样的事实,即便多个内部网关协议和度量标准被使用,一个AS面向其他的AS的管理拥有一个单一的连贯一致的内部路由方案,并且展示一个始终如一的图片,什么的网络通过它可以到达。
从外部的路由的观点来看一个AS可以被看做一个单片集成电路:)图1AS系统2IGP(内部的边界网关协议)专门用于自治系统中的网关间交换数据流转通道信息的协议3EGP(外部的边界网关协议)在自治系统间的相邻的网关主机间交换路由信息的协议。
常用于在INTERNET主机间交换路由表信息。
一个轮询协议,利用HELLO和I-HEARD-YOU消息的转换,能让每个网关控制盒接受网络可达性信息的速率,容许每个系统控制自己的开销,同时发出命令请求更新响应。
路由表包括一组一知路由器及这些路由器的可到达地址及路径开销,从而选择最佳路由。
每个路由器没个120或者480秒访问邻居一次,邻居发挥完整的路由表来响应。
4IBGP(内部边界网关协议)5EBGP(外部边界网关协议)6EBGP对等体7BGP和IGP同步:一个BGP路由器不将从内部Peer得知的目的地通告给外部Peer,除非该目的地也能通过IGP得知。
若一个路由器通过IGP得知该目的地,则可以认为路由能在AS中传播,内部通达已经可以得到保证。
BGP协议概述1BGP协议是外部路由协议,用来在AS之间传递路由信息。
2是一种增强的距离矢量路由协议。
具有以下特点:①可靠的路由更新机制②丰富的Metric度量方法③从设计上避免了环路的发生3可以为路由附带属性信息4支持CIDR(无类别域间路由)5丰富的路由过滤和路由策略6使用的传输层协议是TCP协议,使用的端口号是1797无需周期性的更新8周期性的发送KEEPALIVE报文验证TCP连接的连通性9在进行路由更新时只发送路由增量BGP路由通告原则1当存在多条路径时,BGPSpeaker只选择最优的给自己使用2BGPSpeaker只把自己只用的路由通告给邻居3BGPSpeaker从EBPG获得的路由会向他的所有BGP邻居通告(包括EBGP和IBGP)4BGPSpeaker从IBGP获得的路由不向它的IBGP邻居发送5BGPSpeaker从IBGP获得的路由是否会通告给他的EBGP对等体要依从于IGP和BGP同步的情况来决定6连接一但建立,BGPSpeaker将把自己所有BGP路由通告给新的邻居IBGP全连接①IBGP对等体物理意义上的全连接②IBGP对等体逻辑意义上的全连接BGP报文种类1Open:在TCP会话建立之后,两个邻居都将发送Open消息,每个邻居都利用该消息标识自己并指定BGP操作参数2KeepAlive:当路由器接受了由邻居发送来的Open消息中的指定参数。
它将响应一条KeepAlive消息,此后路由器每60秒发送一条KeepAlive消息,或是以协商的保持时间的1/3为周期发送KeepAlive消息。
由于KEEPALIVE纯粹是一个通信知会,不需要携带什么信息,因此KEEPALIVE报文实际上是不带数据的BGP报文头。
3Update:被用来宣告可行路由、撤销的路由4Notification:只要路由器检测到差错就会发送Notification消息并关闭BGP进程,随后我们将看到BGP邻居断开,然后试图重新建立BGP邻居。
BGP报文头BGP报文的格式都是一样的:BGP报文头+BGP报文体其中BGP报文头格式如下:图2BGP报文头⑴Maker(16byte):全为1,否则标记值要使用认证机制来计算(认证机制是通过认证信息的一部分来指定的)。
标记可以用来探测BGP对端的同步丢失,认证进入的BGP消息。
⑵Length(2byte)BGP报文的全长,长度值必须最少19个字节,最大4096个字节。
可能更多,根据报文类型决定⑶Type(1byte)1-Open2-UPDATE3—Notification4KeepAliveOpen报文:图3Open报文头⑷Version(1字节)当前BGP版本号为3⑸MyAutonomusSystem(2字节):发射者自导系统号⑹HoldTIME(2字节):BGP的Holdtime为180秒⑺BGPIDENTIFIER(4字节):发送者的BGProuteID⑻AUTH. CODE⑼AUTHENTICATIONDATAUpdate图4Update报文头⑽TOTALPathAttributeSLENGTH(2字节):总的路径属性长度0代表在UPDATE消息中没有网络层可达信息域⑾PathAttribute:路径属性,在一个UPDATE中可能存在多个路径属性对。
每个路径属性对包括AttributeFlags,Attributetypecode,AttributeDateLength三个字段。
AttributeFlags,Attributetypecode各占一个字节。
⒈AttributeFlags的8位分别表示:⒉Attributetypecode指明是什么属性。
图5Attributetypecode属性⑿Network(4字节):INTERNETNETWORK编码表明这个AS的路由由这个路径属性表明③KeepAlive报文④Notification报文图6Notification报文头⑴ERRORCODE:(1字节)⑵ErrorSubcode(1字节)⑶Date用来诊断Notification的原因。
依赖于错误码和错误子码。
MessageLength=21+datalengthBGP协议中消息的使用1通过TCP建立BGP连接时,发送Open报文2连接建立后,如果路由需要发送或者路由改变时,发送Update报文告知对端路由信息3稳定后此时要定时发送KeepAlive报文以保持BGP连接的有效性4档本地BGP在运行中发生错误时,发送Notification报文告知BGP对端BGP有限状态机BGP会话共有6种状态,分别是:1- Idle2- CONNECT3- ACTIVE4- OpenSENT5- OpenCONFIRM6- ESTABLISHEDBGP会话共有13种事件,影响BGP的会话,分别是:1- BGPSTART2- BGPStop3- BGPTransportConnectionOpen4- BGPTransportConnectionCLOSED5- BGPTransportConnectionOpenFAILED6- BGPTRANSPORTFATALERROR7- ConnectRetrytimerExPIRED8- HoldTimerExPIRED9- KeepAlivetimerExPIRED10- ReceiveOPENMESSAGE11- ReceiveKEEPALIVEMESSAGE12- ReceiveUpdateMESSAGES13- ReceiveNOTIFICATIONMESSAGE1空闲状态BGP通常以空闲状态开始。
在该状态下,它拒绝接收所有入连接。
当一个开始事件出现的时候,BGP初始化所有BGP资源,打开重试连接计时器(ConnectRetrytimer)、初始化到邻居的TCP连接、接听来自邻居的TCP初始化消息,并将它的状态转到连接状态。
开始事件是由一个操作者配置一个BGP过程,或重置一个已经存在的过程,或者由路由器软件重置BGP过程引起的。
一个差错的出现会将BGP过程的状态转为空闲状态。
路由器可能会试图发起另外一个是事件。
但是对于路由器如何完成这个过程应当加以限制——在具有持续差错的条件下,坚持不懈的试图重新开始会导致摆动。
因此,在第一次转向空闲状态以后,路由器会启动重试连接计时器,当计时器终止后,路由器就会放弃重新开始BGP。
下一次ConnectRetry时间是前一次的两倍,以此类推。
2连接状态在这种状态下,BGP过程会等到TCP连接完成以后再决定后续动作。
如果TCP连接成功,BGP连接将ConnectRetry清零,完成初始化过程,给邻居发送一个Open消息并转移到发送Open消息状态。
如果TCP连接建立失败。
BGP过程会继续监听由邻居发起的连接、重置ConnectRetry计时器并转移到激活状态。
如果再连接状态下,ConnectRetry计时器超时了,计时器将重新开始计时,并再一次试图与邻居建立一个TCP连接,BGP状态继续保持在连接状态。
任何一个其他输入事件的出现都会导致BGP状态转向空闲。
3激活状态在这个状态下,BGP过程试图与邻居建立一个TCP连接。
如果TCP连接建立成功,BGP过程将ConnectRetry清零,完成初始化工作,给邻居发送一个Open消息并转移到发送Open消息状态。
如果BGP在激活状态时,ConnectRetry计时器超时,该过程回到连接状态并且重置ConnectRetry计时器。
它同样也发起一个到对等的TCP连接并且继续监听来自对等得连接。
如果邻居试图与一个未知的IP地址建立TCP会话,那么ConnectRetry计时器会被重置,连接被拒绝并且本地过程保持在激活状态。
任何一个输入事件(除了开始事件,在激活状态下该事件会被忽略)都会导致状态转移为空闲。
4发送Open消息状态在这种状态下,已经发送了Open消息,BGP正在等待从邻居发来的Open消息。
当收到一个Open消息后,检查该消息的所有字段。
如果发现了差错,会给它的邻居发送一个Notification消息并且将状态转移到空闲。
如果再接收到的Open消息种没有发现差错。
BGP给邻居发送一个KeepAlive消息,并且将KeepAlive计时器置位。
邻居之间协商一个Hold时间,他们会选用较小的值。
如果协商的Hold时间是0,则没有启动Hold和KeepAlive计时器。
根据对等的AS号,决定该连接是内部的还是外部的,并且将状态转移到Open消息确认。
如果收到了一个TCP断开消息,本地过程断开BGP连接,重置ConnectRetry计时器,开始监听将要由邻居发起的新的连接并将状态转移到激活。
任何一个输入事件(除了开始事件,在激活状态下该事件会被忽略)都会导致状态转移为空闲。
5Open消息确认状态在这种状态下,BGP过程会等待一个KeepAlive或者Notification消息。