BGP工作原理
一、BGP报文
1.open报文
作用:建立邻居、协商参数
open报文只在邻居建立时发送,不会周期发送
内容:

- version:BGP版本
- My AS:自身的AS号
- hold time:超时时间
- 180S,取最小的数值
- BGP Identifier:BGP的router id
- 拓展能力参数
- 多协议能力支持(Multiprotocol extensions capability)
- IPv4(主地址簇/AFI)
- 单播(子地址簇/sub AFI) 默认支持:ipv4-family unicast
- 组播(子地址簇/sub AFI)
- VPNV4(子地址簇/sub AFI)ipv4-family vpnv4 需要配置mpls vpn后会出现
- IPV6(主地址簇)
- 单播(子地址簇/sub AFI)
- IPv4(主地址簇/AFI)
- 路由刷新能力(Route refresh capability) 默认支持
- 是否支持4字节AS号(Support for 4-octet AS number capbility) 华为设备默认支持
- ORF出方向路由过滤 (需要手工配置)
- 多协议能力支持(Multiprotocol extensions capability)
影响BGP邻居建立的因素
1.version需一致
2.My AS:收到报文中的My AS与在BGP进程下配置的该peer的as-number一致
3.BGP Identifier不能一致
4.扩展能力参数
- IPv4(主地址簇/AFI)需一致
- 路由刷新能力不影响
- 4字节AS号不影响
5.认证
2.keepalive报文

作用: 维护邻居关系,用于对open报文的确认
发送间隔:60S 超时时间:180S
HOLD TIME时间决定keepalive报文的存活时间
3.update报文
作用:BGP路由更新报文,用以更新BGP路由信息 或者 撤销BGP路由信息
携带丰富的路径属性描述路由(origin、AS path等)
发送方式:
-
邻居建立成功后
-
触发更新:network、import路由进入BGP
-
收到路由刷新报文(router refresh报文)
携带:
- 更新路由时,使用NLRI(网络层可达信息)字段携带路由
- 携带路径属性

- 撤销路由时,使用 withdraw routes携带撤销的路由
- 撤销路由时不携带任何路径属性

5.route-refresh报文
作用:用于请求邻居再次发送update报文
路由刷新报文用在当改变路由策略后请求邻居重新发送相关路由信息
refresh bgp all export/import
##export:发送update报文
##import:发送router refresh报文,请求邻居的update报文
route-refresh报文只有在输入以上命令后,才会发送

6.notification报文
作用:用于告警,断开邻居关系、TCP连接
当BGP路由器检测错误信息,会向邻居发出notification,立即中断TCP连接
组成:
- 错误代码 + 错误子代码组成
- 错误代码2:open报文错误
- 错误子代码2:peer as号错误

二、BGP状态机
1.idle
-
初始状态
-
拒绝所有TCP连接
-
等待start事件(配置peer命令)
- start事件:peer x.x.x.x as-number x
- 由开始start事件路由器先发起TCP连接,进入下一个状态connect状态
2.connect
- 启动连接重传定时器,等待TCP完成连接
- 如果连接成功,向对等体发送open报文,转至opensent状态
- 如果连接失败,进入active状态
- 如果连接重传定时器超时(32s),对等体没有回应,继续尝试。停留在connect状态
3.active
- 重新发起TCP连接,启动连接重传定时器
- 如果连接成功,像对等体发送open报文,转至opensent状态
- 如果连接失败,停留在active状态
- 如果连接重传定时器超时,对等体没有回应,转至connect状态

本文详细介绍了BGP(边界网关协议)的工作原理,包括BGP报文类型如open、keepalive、update、route-refresh和notification,以及BGP状态机的各个状态。此外,还阐述了BGP路由的产生方式、BGP数据库的构成和路由选择过程。在路由属性部分,提到了origin、AS_path、next_hop等关键属性。最后,讨论了BGP的选路原则,如Preference_Value、Local_Preference和AS_Path等。
最低0.47元/天 解锁文章
9174

被折叠的 条评论
为什么被折叠?



