作用
BGP是一种运行在AS之间的外部路由协议
AS之间交换路由信息
选择最优路由
可以通过策略控制路由,提高网略安全性和性能
特点
BGP不会进行周期性的更新而是触发式更新
BGP路由信息携带多种路由属性,可以进行策略控制
工作原理
首先建立TCP会话,保证双方可以互相通信(邻居建立)
建立成功后开始交换路由信息
路由信息交换完毕后根据十三条路由优选原则进行路由优选
选择完成后将最优路由根据四条BGP通信原则传播
注入方式:BGP注入路由的方式有两种:1.network 2.import route
消息
open消息
当TCP会话建立完成后发送open消息来建立BGP
update消息
当拓扑或路由发生变化时会发送update消息来更新路由
keepalive消息
在对端收到open消息后,BGP路由器会发送该消息进行确认。该消息用于维持BGP会话的存活性
Notification消息
在BGP检测到错误时终止BGP,对端发送消息告知错误并终止BGP会话
状态
Indle(空闲状态):当BGP进程未启动、配置错误或空闲状态。该状态下BGP路由器不会发送或接收BGP消息
Connect(连接状态):正在尝试TCP连接建立,但建立尚未完成
Active(活动状态):正在尝试TCP建立,建立尚未成功,路由器可能会在Active下停留一段时间
OpenSent(打开发送状态):TCP建立成功,BGP路由器向对端发送open消息,等待对端回复open
OpenConfirm(打开确认状态):收到对端的open消息后,BGP路由器进入Openonfirm状态,表示BGP即将建立
Established(建立状态):成功建立BGP会话,在此状态下可以交换路由信息并计算最优路径
四条通告原则
只发布最优且有效(即下一条地址可达)的路由
从EBGP获取的路由会通告给所有BGP对等体
水平分割原则(从IBGP获取的路由不会通告给任何BGP对等体)
路由同步原则
四种属性
公认必遵(所有路由器必须识别并携带)
next_hop (下一条)
Origin(起源)
AS_PATH
公认任意(所有路由器必须识别可以不携带)
本地优先级
Atomic_aggregate
可选过渡(BGP路由器不识别但会接收并转发)
Agregator
Community(团体)
可选非过渡(BGP路由器不识别且不接收转发)
MED
Cluster-list
起源ID
RR(路由映射器)
作用:RR会将学习的路由反射出入,从而不需要再AS内建立IBGP全互联
三类角色
RR
客户
非客户
路由反射规则
从客户学到IBGP路由会反射给所有非客户以及除了该客户的所有客户
从非客户学到IBGP路由会反射给所有客户
从EBGP学到路由,反射给所有客户、非客户和IBGP
tips:反射时只将自己使用的最优BGP路由反射
十三条选路原则