BGP协议和TCP协议如何协同工作,进行控制路由的传播和选择最佳路由

前言

BGP是一种路由协议,它运行在TCP协议之上,用于在自治系统(AS)之间进行路由选择,实现不同AS之间的路由可达。自治系统是网络中一组相互连接的路由器,这些路由器使用BGP协议来决定数据包在网络中的最佳传输路径。BGP协议通过交换路由信息来维护和更新路由表,以确保数据包能够正确地到达目标位置。

AS是指在同一组织管理下,使用统一选路策略设备的集合。就是你可以把一个网络中的不同的设备划分到不同的组(AS)中,或者都划分在一个组中,那么一个组中的这些设备具备相同的路由协议。

BGP的路由器号(Router ID)

BGP 的 Router ID 是一个用于标识 BGP 设备的 32 位的值,通常是 IPv4 地址的形式,在 BGP 会话建立时发送的 Open 报文中携带。对等体之间建立 BGP 会话时,每个 BGP 设备都必须有唯一的Router ID,否则对等体之间不能建立 BGP 连接。

BGP 的 Router ID 在 BGP 网络中必须是唯一的,可以采用手动配置,也可以让 BGP 自己在设备上选取。缺省情况下, BGP 选择设备上的 Loopback 接口的 IPv4 地址作为 BGP 的 Router ID。如果设备上没有配置 Loopback 接口,系统会选择接口中最大的 IPv4 地址作为 BGP 的 Router ID。一旦选出 Router ID,除非发生接口地址删除等事件,否则即使配置了更大的地址,也保持原来的 Router ID。

BGP发言者(Speaker):运行BGP路由协议的路由器称为BGP发言者(BGP路由器);

BGP对等体(Peer):两个建立BGP会话(BGP的会话是基于TCP建立的)的路由器互为BGP对等体,BGP对等体之间可以交换路由表;若干相关的对等体可以构成对等体组(Peer Group)。

BGP路由协议基本特点:

1、BGP是一种外部网关协议,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最佳路由;(BGP有个好处就是不产生路由,只传递路由,并且具备丰富的路由策略)

2、BGP使用TCP作为其传输层协议(端口号179),提高了协议的可靠性;

3、BGP是一种距离矢量路由协议,在设计上就避免了环路的发生;

4、BGP提供了丰富的路由策略,能够实现路由的灵活过滤和选择;

5、BGP采用触发式增量更新,而不是周期性的更新;

协同流程

首先,BGP协议通过TCP三次握手条件建立TCP会话。在TCP三次握手过程中,BGP协议首先尝试通过目标端口为179的TCP连接建立会话。一旦TCP会话建立成功,BGP协议将进入邻居关系建立阶段。

在邻居关系建立阶段,BGP协议将通过发送Open报文来用于建立对等体的参数协商。Open报文是TCP连接建立后发送的第一个消息,用于建立BGP邻居间的连接关系。参数协商正常后双方相互发送keepalive报文,收到对方的keepalive报文后对等体建立成功,同时后续定期发送keepalive报文用于保持连接。邻居间将开始共享路由条目。

                                     

OPEN报文参数:

  • 自身AS号;
  • hold time:用于协商后续keepalive报文发送时间;
  • BGP identifier:自身router id;

                                         发送keepalive报文保持TCP连接

在路由条目共享阶段,BGP协议将通过Update报文来共享路由信息。Update报文用于在BGP邻居之间交换路由信息,包括新增、更新和删除的路由条目。通过接收和发送Update报文,BGP协议能够更新和维护路由表。

在路由表更新完成后,BGP协议将把最优路径加载到路由表中。这个最优路径可能不一定是最佳选路,但一定是BGP参数最佳的路径。加载完成后,BGP协议进入保活状态,仅通过Keepalive报文保持TCP会话的连接。

如果在保活状态下出现结构突变(如新增网段或断开网段),BGP协议将发送Update报文告知所有邻居。如果无法与邻居进行通信,将在3分钟时断开邻居关系和TCP会话,并删除从该邻居处学习到的所有信息。

总之,BGP协议和TCP协议在协同工作时,需要遵循一定的规则和流程。BGP协议通过TCP三次握手条件建立TCP会话,并通过Open报文、Update报文等与邻居进行通信。同时,TCP协议提供可靠的连接,确保数据包的顺序和完整性。通过结合这两个协议,可以确保数据在因特网上的可靠传输。

更多可参考:32张图详解BGP路由协议:BGP基本概念、BGP对等体、BGP报文类型、BGP状态机等-腾讯云开发者社区-腾讯云 (tencent.com)icon-default.png?t=N7T8https://cloud.tencent.com/developer/article/1922673

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

碱水丸子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值