BGP基本概念:
BGP特点:
l BGP是一种外部路由协议,与OSPF、RIP不同,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最好的路由。
l BGP通过携带AS路径信息,可以彻底的解决路由循环问题。
l 为了控制路由的传播和路由的选择,为路由附带属性信息。
l 使用TCP作为其传输层协议,提高了协议的可靠性。端口号179。
l BGP-4支持CIDR(无类别域间选路),CIDR的引入简化了路由聚合,减化了路由表。
l BGP更新时只发送增量路由,减少了BGP传播路由占用的带宽。
l 提供了丰富的路由策略。
1、 自治系统
定义:由同一技术管理机构管理,使用统一选路策略的一些路由器的集合。每一个自治系统都有唯一的自治系统编号,这个编号是由因特网授权管理机构分配的。
引用自治系统的思想是:通过不同的编号来区分不同的自治系统。
自治系统的编号范围是1到65535,其中1到65411是注册的因特网编号,65412到65535是专用网络编号。
2、 BGP工作机制
BGP作为一个应用层协议运用在一台特定的路由器上,系统启动时通过发送整个BGP路由表交换路由信息,之后为了更新路由表,只交换更新信息,在系统运行过程中,通过接收和发送keep-alive消息来检测相互之间连接是否正常。
自治系统分为过渡自治系统和SUTB自治系统。
BGP发送优选的BGP路由和引入的IGP路由给对等体(peer)。
3、 BGP的两种邻居
IBGP:对等体之间不一定是物理直连的,但必须保证逻辑上的全连接。(TCP连接)
EBGP:对等体之间有物理上的直接链路。
4、 BGP的路由通造原则
多条路径时,BGP speaker 只选择最优的路径给自己使用。
BGP speaker只将自己使用的路由通告给相邻体。
BGP speaker从EBGP获得的路由会向所有的BGP相邻体通告。
BGP speaker从IBGP获得的路由不向它的IBGP相邻体通告。
BGP speaker从IBGP获得的路由信息是否通告给EBGP相邻体,要依据IGP和BGP的同步情况来决定。
连接一建立,BGP speaker将自己所有的BGP路由信息通告给新相邻体。
5、 BGP同步
BGP必须等待直到IGP在其自治系统中成功的传播该选路信息,才向其它自治系统通告过渡信息。
当As中所有的BGP路由器组成IBGP全合闭网时,可以取消同步。
路由器在向IBGP邻居通告路由时强制下一跳为自己本身的接口。
6、 BGP的三种路由来源
BGP的路由信息需要通过配置命令的方式注入到BGP中。
纯动态注入:路由器将通过IGP路由协议动态获得的路由信息直接注入到BGP中。
半动态注入:路由器有选择性的将IGP路由协议获得的动态路由信息注入到BGP中。
静态注入:路由器将静态配置的某条路由注入到BGP系统中。
7、 BGP的四种报文
Open报文:用来交换各自版本号、自治系统号、保持时间、BGP标识等信息,进行协商。
Updata报文:携带更新路由信息,其中包括撤消路由信息和可达路由信息及其路径属性。
撤消路由和目的地址的表示方法为:length表示地址前缀的长度,prefix表示地址前缀。
UPDATA由不可达路由、路径属性和网终可达性信息三部分构成。
一个UPDATA消息一次只能通告一个路由,但可以携带多个路径属性。
一个UPDATA消息一次可以通告多个路由,但它的路径属性必须相同。
一个UPDATA消息一次可以列出多个被撤消的路由。
Notification报文:BGP检测到连接中断、协商出错、报文差错时,关闭同对等体的连接。
Keepalive报文:在BGP对等体之间周期性的发送报文,以确保其连接有效。
OPEN报文首先建立邻居关系,其它对等体收到OPEN报文后,以KEEPALIVE作出响应,握手成功后开始UPDATA,之后是KEEPALIVE和NOTIFICATION等消息的交换操作。
![nixsky[www.nixsky.com]](/templets/images/toplogo.gif)

