首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
欢迎光临中国IT实验室思科频道
您现在的位置: 中国IT实验室 >> Cisco >> 网络协议 >> 其他协议 >> 文章正文

详解: 网络支架BGP协议

文章来源中国IT实验室收集整理 作者佚名 更新时间2007-12-5 保存本文保存本文 推荐给好友推荐给好友 收藏本页收藏本页
  1. 概述
 
  因特网,在20世纪60年代末,作为一个实验,开始于DARPA(美国国防部的高级研究项目管理局)。随着研究机构、学院和政府加入,形成了最早的ARPANET.后来,美国国家科学基金会又开发了NSFNET(1995年4月停用)。发展到现在,因特网成为了由商业提供者运营的的更分散的体系。而下一代因特网(NGI)的计划已于1997年10月启动,目前已推出的主要方案有Internet2,Abilene等。
 
  出于管理和扩展的目的,因特网可以被分割成许多不同的自治系统(Autonomous System)。换句话说,因特网是由自治系统汇集而成的。
 
  BGPv4(Border gateway protocol Version 4)——边缘网关协议(定义于RFC1771),是现行因特网的实施标准,就是用来连接自治系统,实现自治系统间的路由选择功能的。
 
  2. IGP与EGP
 
  所有的路由选择协议可以被分成IGP和EGP两种。要了解IGP和EGP的概念,应该首先了解自治系统(AS)的概念。传统的AS定义(RFC1771):AS是同一个技术管理下的一组路由器,它们使用一种内部网关协议和一致的度量尺度来对数据包进行AS内部的路由,而使用外部网关协议来对发向其它AS的数据包进行路由选择。发展到现在,已经允许并且时常采用在一个自治系统AS中使用多个内部网关协议,甚至多个路由选择的度量标准。所以,现在的自治系统被扩展的定义为:共享同一路由选择策略的一组路由器。
 
  IGP(Interior gateway protocols)——内部网关协议,定义为在一个自治系统内部使用的路由协议(包括动态路由协议和静态路由)。IGP的功能是完成数据包在AS内部的路由选择,或者说,是讲述数据包如何穿过本地AS的。RIPv1&v2,IGRP,EIGRP,OSPF,ISIS都是典型的IGP.
 
  EGP(Exterior gateway protocols)——外部网关协议,定义为在多个自治系统之间使用的路由协议。它主要完成数据包在AS间的路由选择,或者说,讲述数据包为了到达目的IP,需要通过哪些AS.BGP4就是一种EGP.
 
  IGP只作用于本地AS内部,而对其他AS一无所知。它负责将数据包发到主机所在的网段(segment)。EGP作用于各AS之间,它只了解AS的整体结构,而不了解各个AS内部的拓扑结构。它只负责将数据包发到相应的AS中,余下的工作便交给IGP来做。
 
  每个自治系统AS都有唯一的标识,称为AS号(AS number),由IANA(Internet Assigned Numbers Authority)来授权分配。这是一个16位的二进制数,范围为1~65535,其中65412~65535为AS专用组(RFC2270)。
 
  3.BGP-4的基本概念
 
  BGP-4是典型的外部网关协议,是现行的因特网实施标准。它完成了在自治系统AS间的路由选择。可以说,BGP协议是现代整个网络的支架。
 
  BGP-4在RFC1771中作出了规定,并且还涉及其他很多的RFC文档。在这一新版本中,BGP开始支持CIDR(Classless interdomains routing)和AS路径聚合(Aggregation),这种新属性的加入,可以减缓BGP表中条目的增长速度。
 
  

  图一


 
  BGP协议是一种距离矢量(Distance vector)的路由协议,但是比起RIP等典型的距离矢量协议,又有很多增强的性能。BGP使用TCP作为传输协议,使用端口号179.在通信时,要先建立TCP会话,这样数据传输的可靠性就由TCP协议来保证,而在BGP的协议中就不用再使用差错控制和重传的机制,从而简化了复杂的程度。另外,BGP使用增量的、触发性的路由更新,而不是一般的距离矢量协议的整个路由表的、周期性的更新,这样节省了更新所占用的带宽。BGP还使用“保留”信号(Keepalive)来监视TCP会话的连接。而且,BGP还有多种衡量路由路径的度量标准(称为路由属性),可以更加准确的判断出最优的路径。
 
  与传统的内部路由协议相比,BGP还有一个有趣的特性,就是使用BGP的路由器之间,可以被未使用BGP的路由器隔开。这是因为BGP在独立的内部路由协议之上工作,所以通过BGP会话连接的路由器能被多个运行内部路由协议的路由器分开。
 
  建立了BGP会话连接的路由器被称作对等体(peers or neighbors),对等体的连接有两种模式:IBGP(Internal BGP)和EBGP(External BGP)。IBGP是指单个AS内部的路由器之间的BGP连接,而EBGP则是指AS之间的路由器建立BGP会话。
 
  

  图二

 
  前面已经提到,BGP是用来完成AS之间的路由选择的,所以对于BGP来说,每一个AS都是一个原子的跳度。那么,IBGP又起什么样的作用呢?IBGP是用来在AS内部完成BGP更新信息的交换。虽然这种功能也可以由“再分布” (Redistribution)技术来完成——将EBGP传送来的其他AS的路由“再分布”到IGP中,然后将其“再分布”到EBGP传送到其他AS.但是相比之下,IBGP提供了更高的扩展性、灵活性和管理的有效性。比如,IBGP提供了选择本地AS外出点的方式。
 
  IBGP的功能是维护AS内部连通性。BGP规定,一个IBGP的路由器不能将来自另一IBGP路由器的路由发送给第三方IBGP路由器。这也可以理解为通常所说的Split-horizon规则。当路由器通过EBGP接收到更新信息时,它会对这个更新信息进行处理,并发送到所有的IBGP及余下的EBGP对等体;而当路由器从IBGP接收到更新信息时,它会对其进行处理并仅通过EBGP传送,而不会向IBGP传送。所以,在AS中,BGP路由器必须要通过IBGP会话建立完全连接的网状连接,以此来保持BGP的连通性。如果没有在物理上实现全网状(full meshed)的连接,就会出现连通性上的问题。
 
  AS在BGP看来是一个整体,AS内部的BGP路由器都必须将相同的路由信息发送给边界的EBGP路由器。路由信息在通过IBGP链路时不会发生改变,只有通过EBGP链路时,路由信息才会发生变化。在AS内部,通过IBGP连接的路由器都有相同的BGP路由表(BGP路由表(BGP Routing Table)用于存放BGP路由信息,不同于IGP路由表,两个表之间的信息可以通过“再分布”(Redistribution)技术进行交换)。
 

[1] [2] [3] [4] 下一页  

【责编:Zenghui】
中国IT教育
相关产品和培训
文章评论
 友情推荐精华
 专题推荐

 ·HSRP热备份路由协议配置
 ·思科认证考试中心查询专题
 ·TCP/IP 协议专题
 ·利用RIP路由协议搭建网络
 ·引领潮流 千兆组网专题
 ·无“线”风光,配置实战专题
 ·访问控制列表(ACL)应用专题
 ·VLAN(虚拟局域网)实用专题
 ·大型实用解决方案专题目
 ·亲密接触QoS专题
 今日更新
 认证培训
 频道精选
 思科频道导航