BGP和internet

BGP 和 Internet

BGP(Border Gateway Protocol,边界网关协议)是一种被设计出来应用于 Internet 中的 Distance Vector 类型动态路由协议,

能够在不同的 AS(Autonomous System,自治系统)间交换 Route Informations(路由信息)。因为 BGP Router 通常被部

署在不同的 AS 之间的边界上,故命名为 “边界网关”。

BGP 协议起源于 1989 年 1 月举行的第 12 次 IETF 会议。在那时,由于 Internet 的快速发展,使得 Internet 中的各种网络的

数量(AS 数量)快速增加,早期的手动静态路由配置方式显然已经无法满足在大量的 AS 之间管理路由信息。因此,会议上

讨论的主题就是需要一种新的 EGP 动态路由协议。

 

 

AS(自治系统)是 Internet 的基本定义之一,指的是一个逻辑上自包含的、自洽的 IP 网络系统,不同的 AS 之间可能运行着

各自不同的 IGP 路由协议。

Internet 上的每个 AS 都具有一个 ASN(AS Number)作为唯一标识,全球 ASN 由 IANA(Internet Assigned Numbers Authority,

互联网分配号码管理局)统一管理和分配,共有 1-65535 多个,代码体现为一个长度 16bits 的数字。其中:

  • 1~64511:是全球唯一的 Internet 编号。
  • 64512~65535:是自用的编号,作用类似于 IP 私网网段。

如下图所示,每个在 Internet 上提供网络服务的 AS(例如:运营商、大学、政企网络等)都需要拥有自己

的 AS Number。在 BGP 协议出现之前,这些 AS 就像是一座座孤岛,与外界隔离。IETF 第 12 次会议的目的就是为了将这些

大量的这些 AS 连接起来,其主要成果就是 BGP 协议。

 

 

在会议结束后,由 Len Bosack、Kirk Lougheed 和 Yakov Rekhter 等人在餐巾纸上完成了 BGP 协议的设计草稿,为了解决 2

个 AS 之间的互联互通问题,其最初的设计也比较简单,归纳为以下 5 个想法:

  1. 为了连接不同的 AS,应该在 2 个 AS 中分别部署 Border Gateway Router(边界网关路由器),由它们专门负责在不
  2. 同的 AS 之间交换 Routes。
  3. 为了避免在多个 AS 之间形成路由环路,应该在 Routes 中包含特定的 Path Attribute(路径属性),以此来确定 AS
  4. 之间的最优路径。
  5. 为了在 WAN 中可靠的交换 Routes,应该使用 TCP 作为传输层协议。
  6. 为了减少全球 Border Gateway Router 之间需要交换的海量 Routes,应该采用增量同步的交换方式。
  7. 使用 TLV(Type-Length-Value)数据编码方式来定义 Message 的数据结构,使其拥有更好的功能可扩展性。

 

 

最终在 1989 年 6 月发布了 RFC1105 BGPv1 标准。经过多年的发展后,现如今被广泛应用的是 BGPv4 版本,已经具有了以

下完备的功能特性:

  1. 支持 IPv4 和 IPv6;
  2. 支持 CIDR(Classless Inter-Domain Routing);
  3. 支持 Multi-Path(多路径),提高网络的可用性和容错能力;
  4. 支持 BGP Confederations(联盟);
  5. 支持 BGP Route-Reflectors(路由反射器);
  6. 支持 BGP Community(团体属性);
  7. 支持 BGP Route Dampening(路由惩罚);
  8. 支持 BGP MP(Multi-protocols Extensions,多协议扩展);
  9. 支持 Capability Advertisement(能力通告);
  10. 支持 BGPSEC 安全协议;
  11. 等等。

 

posted @ 2023-12-05 13:29  bobo哥  阅读(22)  评论(0)    收藏  举报