BGP

来自站长百科
跳转至: 导航、​ 搜索

BGP(Border Gateway Protocol )边界网关协议,用来连接Internet上独立系统的路由选择协议。它是Internet工程任务组制定的一个加强的、完善的、可伸缩的协议。BGP4支持CIDR寻址方案,该方案增加了Internet上的可用IP地址数量。BGP是为取代最初的外部网关协议EGP设计的,也被认为是一个路径矢量协议,是自主网络系统中网关之间交换器路由信息的协议。边界网关协议常常应用于互联网的网关之间。路由表包含已知路由器的列表、路由器能够达到的地址以及到达每个路由器的路径的跳数,它使用IGP和普通度量值向其他自治系统转发报文。

BGP执行三类路由[ ]

  • AS间路 发生在不同AS的两个或多个BGP路由器之间,这些系统的对等路由器使用BGP来维护一致的网络拓扑视图,AS间通信的BGP邻居必须处于相同的物理网络。因特网就是使用这种路由的实例,因为它由多个AS(或称管理域)构成,许多域为构成因特网的研究机构、公司和实体。BGP经常用于为因特网内提供最佳路径而做路由选择。
  • AS内部路 发生在同一AS内的两个或多个BGP路由器间,同一AS内的对等路由器用BGP来维护一致的系统拓扑视图。BGP也用于决定哪个路由器作为外部AS的连接点。再次重申,因特网提供了AS间路由的实例。一个组织,如大学,可以利用BGP在其自己的管理域(或称AS)内提供最佳路由。BGP协议既可以提供AS间也可以提供AS内部路由。
  • 贯穿AS路 发生在通过不运行BGP的AS交换数据的两个或多个BGP对等路由器间。在贯穿AS环境中,BGP通信既不源自AS内,目的也不在该AS内的节点,BGP必须与AS内使用的路由协议交互以成功地通过该AS传输BGP通信。

BGP的分组格式[ ]

  1. 初始消息格式 bgpBGP初始消息由BGP信头和附加域构成。
  2. 更新消息格式 BGP更新消息由BGP信头和附加域构成。
  3. 信头格式 所有的BGP消息类型都使用基本的分组信头。初始、更新和通知消息有附加的域,而keep-alive消息只使用基本的分组信头。

BGP协议分析[ ]

  • BGP是一种自治系统间的动态路由发现协议,它的基本功能是在自治系统间自动交换无环路的路由信息。与OSPF和RIP等在自治区域内部运行的协议对应,BGP是一类EGP协议,而OSPF和RIP协议为IGP协议。
  • GP运行时刻分别与本自治区域外和区域内的BGP伙伴建立连接(使用Socket)。与区域内伙伴的连接称为IBGP(Internal BGP)连接,与自治区域外的BGP伙伴的连接称为EBGP(External BGP)连接。本地的BGP协议对IBGP和EBGP伙伴使用不同的机制处理。
  • BGP是在EGP应用的基础上发展起来的。EGP在此以前已经作为自治区域间的路由发现协议,广泛应用于NFSNET等主干网络上。但是,EGP被路由环路问题所困扰。BGP通过在路由信息中增加自治区域(AS)路径的属性,来构造自治区域的拓扑图,从而消除路由环路并实施用户配置的策略。

BGP路径的属性[ ]

  • 位0:0 表示此属性必选,1 表示此属性可选。
  • 位1:0 表示此属性为非过渡属性,1表示此属性为过渡属性。
  • 位2:0 表示所有属性均为路由起始处生成,1 表示中间AS加入了新属性。
  • 位3:0 表示路由属性长度由1字节指示,1表示由2字节指示。
  • 位4至位7:未用置0
  • 位0和位1标识了BGP的4类路由属性:
  • (01) 公认必选:BGP的UPDATE报文中必须存在的属性。它必须能被所有的BGP工具识别。公认必选属性的丢失意味着UPDATE报文的差错。这是为了保证所有的BGP工具统一于一套标准属性。
  • (01) 公认自决:能被所有BGP识别的属性,但在UPDATE报文中可发可不发
  • (11) 可选过渡:如果BGP工具不能识别可选属性,它就去找过渡属性位。如果此属性是过渡的,BGP工具就接受此属性,并把它向前传递给其它BGP路由器。
  • (10) 可选非过渡:当可选属性未被识别,且过渡属性也未被置位时,此属性被忽略,不传递给其它BGP路由器。

BGP协议的特点[ ]

  • BGP作为EGP的一种,选择路由时考虑的是AS间的链路花费,AS区域内的花费(由BGP路由器配置)等因素。
  • BGP是一种AS(自治区域)外部路由协议,主要负责本自治区域和外部的自治区域间的路由可达信息的交换。因此,它所关心的拓扑结构是AS(自治区域)的拓扑结构,BGP通过UPDATE消息中路由的AS属性来构造AS的拓扑结构图,进一步通过此结构图来选择路由。
  • 与OSPF,RIP等IGP协议相比,BGP的拓扑图要更抽象和粗略一些。因为IGP协议构造的是AS内部的路由器的拓扑结构图。IGP把路由器抽象成若干端点,把路由器之间的链路抽象成边,根据链路的状态等参数和一定的度量标准,每条边配以一定的权值,生成拓扑图。根据此拓扑图选择代价(两点间经过的边的权值和)最小的路由。

BGP商业价值[ ]

  • 中国互联网长期以来存在电信网通南北“割据”,虽然互联却不互通的状况。这种情况在网站上的表现,即是用网通接入的网站,使用电信线路的网民访问速度极慢,使用电信线路接入的网站,使用网通线路的网民访问速度极慢。
  • 要想解决这个问题,目前只能有两种办法:一是类似百度这样的大型网络公司,在全国各地设置镜像服务器,采用分布式网络拓扑结构实现快速访问,但缺点是投资大,动辄数百万的经费不是一般企业能承受的;另一种是将服务器同时接入电信、网通双线,支付双倍的网络费用。具有一定客户规模的建站公司就能承受这样的成本。
  • 部分虚拟主机商出于成本的考虑,往往悄悄测定客户的上网接入线路,如果客户上网是网通线路,他把服务器也接入网通线路,但电信接入的网民访问该客户的网站访问速度是很慢的;如果客户上网是电信线路,他把服务器也接入电信线路,但网通接入的网民访问该客户的网站访问速度是很慢的;而这一切,客户自己却浑然不知。

BGP路由策略[ ]

  1. 在neighbor distribute-list命令中使用ip访问列表
  2. 在neighbor prefix-list命令中使用前缀列表
  3. 在neighbor filter-list命令中使用as路径访问列表
  4. 在neighbor router-list命令中使用旅游映射

ISP网内部署BGP[ ]

BGP.jpg

随着Internet在中国的发展,ISP服务商与INTERNET的连接也在发生着变化。在网络连接上,从单一的连接,到通过多个电信公司多条线路连接到Internet;在所使用的路由协议方面,从使用的静态路由协议,发展到使用BGP(Border gateway protocol)。那么ISP如何随着网络的发展,在网络内部合理有效地部署BGP路由协议呢?我们将在本文中简要的介绍一下。实际上,如何在网内部署BGP路由协议的主导思想也就是如何使自治域内部的路由器获得自治域外部路由信息,从而引导访问域外的流量流出自治域。

相关条目[ ]

参考来源[ ]