HCIP(八)

BGP --- 边界网关协议
AS --- 自治系统 --- 由单一的组织或者机构所管理的一系列IP网络即设备所构成的集合。
1,范围太大,协议跑不过来,需要划分范围。
2,自治
AS号 --- 16位二进制构成 --- 0 - 65535 --- 其中,0和65535保留 --- 1 - 65534。其
中,64512-65534这一部分的AS号被称为私有AS号。 --- 目前也有拓展版的AS号存在 ---
32位二进制构成。
BGP --- BGPV4 --- IPV4
--- BGPV4+(MP-BGP) --- 支持多种地址组
重发布的缺点:
1,选路不佳
2,ASBR的归属问题
BGP被称为 --- 无类别路径矢量协议
        1,无类别代表传递路由信心时将携带掩码信息
        2,距离矢量中是以路由器为单位,而路径矢量是以AS为单位。
        3,距离矢量是算法的概念,而对于BGP而言,就不存在算法。 --- 因为BGP协议仅需要将IGP(包括静态,直连)协议计算出的路由信息传递到其他的AS中,并不需要进行计算,仅仅是搬运路由而已。
IGP --- 收敛快,占用资源少,选路佳
1,可控性 --- 所谓可控,就是更方便对路由信息做策略进行控制。 ---- BGP为了实现可控性,直接舍弃了开销值。取而代之的是,BGP设计了很多 路由属性
BGP协议因为需要承载大量的路由信息,所以,其仅具有触发更新,而一定不能存在周期更新。
2,可靠性 --- BGP协议为了保证传输的可靠性,其传输层,直接使用TCP协议。 --- BGP协议的端口号为179。
         IGP协议之所以不选择TCP协议,主要因为TCP占用资源大,速度较慢。并且,TCP仅能实现单 播,将不能使用组播或者广播的形式自动发现邻居。
          BGP使用TCP协议,所以,需要手工建立邻居关系。
BGP是支持非直连建邻 --- TCP --- IGP协议是BGP协议非直连建邻的基础
EBGP对等体 --- 在两个不同的AS之间的设备建立的BGP对等体
IBGP对等体 --- 在同一个AS中的设备建立BGP对等体
       
        一般情况下,EBGP对等体之间采用直连建邻的方式,IBGP对等体之间采用非直连建邻。为
了保证这一点,BGP存在设定,EBGP对等体之间数据包的TTL值为1,而IBGP对等体之间的TTL
值为255。如果,EBGP对等体之间需要非直连建邻,则需要修改TTL值。
3,AS-BY-AS --- 在BGP中,需要将一个AS作为一个整体来看。
        在BGP中不存在负载均衡。到达同一个目标网段即使拥有多条路由信息,也将选择其中的一条进行加表。

1,BGP的数据包

OSPF中的hello --- 周期性发现,建立,保活邻居关系。
在BGP中,因为使用的是TCP协议,所以,需要手工指定邻居关系。
Open报文 --- 用来建立邻居关系,携带参数进行比对。
              AS号 --- OPEN报文会携带本端的AS号,之后,对端将根据配置中指定的AS号和数据包中的AS号进行比对,如果相同,则正常建立邻居关系。
               认证 --- BGP的认证是在TCP建立连接的过程中进行的,如果邻居双方认证通过,则正常建立邻居关系。
           Route-ID --- 为了区分不同的设备。在open报文将携带该参数,之后,邻居将比对RID,如果不同,则将继续建立邻居关系。
               在BGP中,RID的获取方法(和OSPF一样)
                           1,手工配置;
                           2,自动生成
  
1,Holdtime --- 保活时间 --- 默认180S --- 如果在保活时间内,接收到对方发送 的keeplive报文以及Update报文,则将刷新保活时间。 ---- 该参数也将携带在 OPEN报文,需要协商。这个参数允许双方不统一,但是,在执行时必须相同,将 以更小的为准。
2,路由刷新功能。双方是否支持路由刷新将通过OPEN报文协商,如果都支持,则将开启该功能,有一方不支持,则将关闭该功能
Keeplive报文 --- 1,周期性保活邻居关系 --- 周期时间默认是1/3的保活时间
                           2,在OPEN报文建立邻居关系时,临时充当确认包的作用 --- 这里的确认指的是  确认OPEN报文中的参数是否认同,认通则发送该数据包进行确认,而传输可靠性的确认均由TCP协议来保证。
Update报文 --- 真正携带路由信息的数据包。路由信息主要包含目标网段,掩码,以及各种路由属性。
       在Update报文中,存在撤销路由条目字段,则不需要通过带毒的方式让对方删除路由信息。
Notification报文 --- 告警机制 --- 在BGP运行的全过程中,如果出现错误,则均可以通过该报文来进行告警。
Route-refresh报文 --- 用于改变路由策略后请求对等体重新发送路由信息。注意,该功能需要通信双方均支持才可开启。

2,BGP的状态机

注意,在BGP中,建立邻居关系和发布路由是分开实现的,所以,这里的状态机,仅标
识建邻过程中的状态变化。

 

Idle --- 空闲状态 --- 启动BGP进程之后,指定邻居关系后, 将进入到一个检测环节,根据本地的路由表检查邻居IP是否可达
如果检查可达,则将进入到connect状态,建立TCP的会话。 --- 注意,在建立TCP连接时,将出现双方均发起建立,最终可能会造成重复建立,所以,最后将在建立完成后,断开后连接的一条。
如果连接成功,则进入Opensent状态 --- 开始发送Open报文
如果连接失败,则进入Active状态,则将重新尝试建立TCP连接。
如果收到对方的OPEN报文,并且,里面的参数没有问题,则将发送keeplive报文进行确认,之后进入到下一个状态 --- OpenConfirm状态。
如果收到对方的Keeplive,则将进入到最终的状态 --- Established --- 建立完成状态。

 

3,BGP的工作过程

1,基于IGP实现路由可达
2,指定邻居关系,之后,通过单播传输数据,建立TCP的三次握手,之后,BGP所有的
数据包其传输的可靠性均由TCP协议来保证。
3,使用Open报文携带参数,建立邻居关系,需要使用keeplive报文对Open报文中的
参数进行确认。邻居关系建立完成后,将生成 --- 邻居表
4,使用Update报文携带路由信息,路由信息中将包含各种路径属性。之后,将所有收
集到的路由信息保存在本地的 --- BGP表 中。
5,之后,将BGP表中的最优选路(靠属性选择)加载到本地 路由表 中。
6,收敛完成后,将使用Keeplive报文进行周期保活。
7,如果出现结构突变,则需要使用update报文进行触发更新
8,如果全过程中出现错误,则需要使用notification报文进行告警
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值