BGP知识

2018-04-01  本文已影响155人  狗达Da

Border Gateway Protocol 边界网关协议

1、四种消息类型:

Open消息:Open消息是TCP连接建立后发送的第一个消息,用于建立BGP对等体之间的连接关系。

Keepalive消息:BGP会周期性地向对等体发出Keepalive消息,用来保持连接的有效性。

Update消息:Update消息用于在对等体之间交换路由信息。它既可以发布可达路由信息,也可以撤销不可达路由信息。

Notification消息:当BGP检测到错误状态时,就向对等体发出Notification消息,之后BGP连接会立即中断。

2、邻居建立的状态和过程

空闲(Idle):为初始状态,当协议激活后开始初始化,复位计时器,并发起第一个TCP连接,并开始倾听远程对等体所发起的连接,同时转向Connect状态。。

连接(Connect):开始TCP连接并等待TCP连接成功的消息。如果TCP连接成功,则进入OpenSent状态;如果TCP连接失败,进入Active状态。

行动(Active):BGP总是试图建立TCP连接,若连接计时器超时,则退回到Connect状态,TCP连接成功就转为Open sent状态。

OPEN发送(Open sent):TCP连接已建立,自己已发送第一个OPEN报文,等待接收对方的Open报文,并对报文进行检查,若发现错误则发送Notification消息报文并退回到Idle状态。若检查无误则发送Keepalive消息报文,Keepalive计时器开始计时,并转为Open confirm状态。

OPEN证实(Open confirm):BGP等待Keepalive报文,同时复位保持计时器。如果收到了Keepalive报文,就转为Established状态,邻居关系协商完成。如果系统收到一条更新或Keepalive消息,它将重新启动保持计时器;如果收到Notification消息,BGP就退回到空闲状态。

已建立(Established):即建立了邻居(对等体)关系,路由器将和邻居交换Update报文,同时复位保持计时器。

3、路由通告遵循原则

  1. 多条路径时,BGP Speaker只选最优的给自己使用(负载均衡和FRR除外)。

  2. BGP Speaker只把自己使用的路由(最优路由)通告给相邻体。

  3. BGP Speaker从EBGP获得的路由会向自己所有BGP相邻体通告(包括EBGP和IBGP)。

  4. BGP Speaker从IBGP获得的路由不向自己的IBGP相邻体通告(反射器除外)。

  5. BGP Speaker从IBGP获得的路由是否通告给自己的EBGP相邻体要根据IGP和BGP同步的情况来决定。

  6. 当收到对端的refresh报文并且本端邻居支持refresh能力,BGP Speaker将把自己所 有BGP路由通告给对等体。

  7. GR过程中,主备倒换方在GR结束时BGP Speaker会把自己所有BGP路由通告给对等体。

4、BGP属性

路由器发送关于目标网络的BGP更新消息,更新的度量值被称为路径属性。属性可以是公认的或可选的、强制的或自由决定的、传递的或非传递的。属性也可以是部分的。并非组织的和有组合的都是合法的,
路径属性分为4类:公认必遵、公认自决、可选过渡、可选非过渡。

公认属性:
是公认所有BGP实现都必须识别的属性,这些属性被传递给BGP邻居。
公认强制属性必须出现在路由描述中,公认自由决定属性可以不出现在路由描述中。

可选属性:
非公认属性被称为可选的,可选属性可以是传递的或非传递的。
可选属性不要求所有的BGP实现都支持。
对于不支持的可选传递属性,路由器将其原封不动的传递给其他BGP路由器,在这种情况下,属性被标记为部分的。
对于可选非传递属性,路由器必须将其删除,而不将其传递给其他BGP路由器。

(1)公认必遵(Well-Known Mandatory)
ORIGIN(起源):这个属性说明了源路由是怎样放到BGP表中的。有三个可能的源IGP,EGP,以及INCOMPLETE.路由器在多个路由选择的处理中使用这个信息。路由器选择具有最低ORIGIN类型的路径。
AS_PATH(AS路径):指出包含在UPDATE报文中的路由信息所经过的自治系统的序列。
Next_HOP(下一跳)声明路由器所获得的BGP路由的下一跳,对EBGP会话来说,下一跳就是通告该路由的邻居路由器的源地址。

(2)公认自决(Well-Known Discretionary)
LOCAL_PREF(本地优先级):本地优先级属性是用于告诉自治系统内的路由器在有多条路径的时候,怎样离开自治系统。本地优先级越高,路由优先级越高。
ATOMIC_AGGREGATE(原子聚合):原子聚合属性指出已被丢失了的信息。

(3)可选过渡(Optional Transitive)
AGGREGATOR(聚合者):此属性标明了实施路由聚合的BGP路由器ID和聚合路由的路由器的AS号。
COMMUNITY(团体):此属性指共享一个公共属性的一组路由器。

(4)可选非过渡(Optional Nontransitive)
MED(多出口区分):该属性通知AS以外的路由器采用哪一条路径到达AS,它也被认为是路由的外部度量,低MED值表示高的优先级。
ORIGINATOR_ID(起源ID):路由反射器会附加到这个属性上,它携带本AS路由器的路由器ID,用以防止环路。
CLUSTER_LIST(簇列表):此属性显示了采用的反射路径。

上一篇下一篇

猜你喜欢

热点阅读