运营商或大型网络中的BGP协议,一分钟了解下BGP基础知识

网络 网络管理
BGP是一种路径矢量路由协议,用于传输自治系统间的路由信息,BGP需要通告的路由数目极大,由于TCP提供了可靠的传送机制,同时 TCP 使用滑动窗口机制,使得 BGP 可以不断地发送分组,而无需像OSPF或EIGRP那样停止发送并等待确认。

一、了解BGP协议

BGP 是一种路径矢量路由协议,用于传输自治系统间的路由信息,BGP 在启动的时候传播整张路由表,以后只传播网络变化的部分触发更新它采用 TCP 连接传送信息,端口号为 179 在 Internet 上,BGP 需要通告的路由数目极大,由于 TCP 提供了可靠的传送机制,同时 TCP 使用滑动窗口机制,使得 BGP 可以不断地发送分组,而无需像 OSPF 或 EIGRP 那样停止发送并等待确认。

1. 使用 BGP 一般有如下情况:

  • 一个 AS 允许包穿越它,到达其他的 AS
  • 一个 AS 连接多个 AS
  • 必须对数据流进入和离开 AS 进行控制

2. 不使用 BGP 一般有如下情况:

  • AS 只有一个出口
  • AS 的所有出口均为 1 个 ASP
  • 路由性能不高,内存较小,CPU 较慢,带宽不大

3. 认识BGP AS-Path

BGP 是路径矢量协议,它使用一个 AS 号列表,数据包必须通过这些 AS 才能到达目的,同时对产生的 AS-path 做一定的策略。AS-Path 对于路由环路非常容易检测到,如果路由器接受到一条含有本地 AS 号的 AS-path,说明出现环路。BGP 没有给出每个 AS 域内的拓扑结构,因此 BGP 只能看到 AS 树,而 IGP 只能看到 AS 域内拓扑结构.

[[283084]]

  1. R2>show ip bgp//查看路由表 

当某个特殊目的网络有并列的,等开销的路径时,Cisco 缺省执行 EBGP 只选择一条路径,但可以使用 maximum-paths改变并行路径缺省的最大数目,但仅对 EBGP 有效

二、BGP消息类型

1. Open

TCP 对话建立以后,两个邻居都要发送一个 Open 消息,每个邻居都用该消息来标示自己,并规定自己的 BGP 运行参数。

  • BGP version:它明确了发起者正在运行的 BGP 版本号(2,3,4),可以通过 neighbor version 修改,缺省版本号为 4。如果版本号不相同,路由器将自动降低版本号重发 Open 消息,直到版本一致
  • AS number:发起会话路由器的 AS 号,用于确认 EBGP 或者 IBGP 会话
  • Hold time:路由器必须收到一个 keepalive 或者更新消息之前允许经过的最大秒数。Holdtime 必须是 0(在这种情况下,必须是没有发送 Keepalive)或者至少 3s Cisco 默认的 holdtime 为 180s,如果两个邻居间 holdtime 不一致,选较短的那个做为两者可接受的时间
  • BGP router-ID:选取方式和 OSPF 相同,使用数值最大的 loopback 口地址,没有 loopback 则使用物理接口上数值最大的地址
  • Optional parameters:用于一些可选功能的支持.例如鉴别,多协议支持及路由刷新等

2. Keepalive

如果路由器接受了他在邻居的 Open 消息中的参数,它就会发送一个应答的 Keepalive 消息。

默认情况 Keepalive 间隔 60s,或者是达成一致的保持时间的 1/3

3. Update

Update message 用来公布可用的路由,撤销的路由或者两者兼顾Network Layer Reachability Information (NLRI)用来公布 IP 地址前缀和前缀长度的字节组,例如<19,198.24.160.0>Path Attributes该属性为 BGP 提供了选择最短路径,检查到路由环路以及决定路由策略的信息Withdrawn Routes用来描述已经变成不可达并正从业务中撤销的目的地址字节组(长度和前缀)虽然 NLRI 字段可以包含多个前缀,但每一个更新消息只描述一条 BGP 路由(因为路径属性只描述一条路径,但该路径可能会到达多个目的地)

4. Notification

当检测到差错的时候就会发送 Notification 消息,通常会导致 BGP 连接终止。

运营商或大型网络中的BGP协议,一分钟了解下BGP基础知识

 

责任编辑:赵宁宁 来源: 今日头条
相关推荐

2019-12-24 09:10:43

Ipv6IP址协议

2019-11-25 09:44:21

IPv6地址网络

2020-01-30 11:26:17

QinQVLAN协议

2020-02-10 10:55:37

路由协议OSPFLSA

2019-11-26 08:52:19

网络技术MPLS网络协议

2019-11-24 22:09:50

广域网PPPHDLC

2020-03-22 21:32:37

动态路由OSPFLSA

2017-07-06 08:12:02

索引查询SQL

2022-07-18 06:16:07

单点登录系统

2019-11-27 10:03:16

IPv6IPv4网络协议

2020-07-17 07:44:25

云计算边缘计算IT

2020-07-09 07:37:06

数据库Redis工具

2020-02-19 10:43:57

路由协议OSPF报文

2020-02-26 16:01:22

IP路由路由器

2020-02-07 12:38:44

IPSGIP网络安全

2022-07-04 08:01:16

OSPFRIPBGP

2016-09-14 15:57:53

架构分布式系统负载均衡

2019-11-19 08:40:12

数据包路由表数据

2017-03-30 19:28:26

HBase分布式数据

2018-08-17 07:19:34

网络故障硬件软件
点赞
收藏

51CTO技术栈公众号