BGP原理

BGP基础
BGP,边界网关协议,用于在自治系统之间传递路由的协议。
自治系统概念:自治系统,就是一组被统一管理,并且运行同一种IGP协议的路由器组成的网络范围。
自治系统编号:分为私有AS,以及公有AS,公有AS范围为1-54511;私有AS范围为64512-65535。

BGP的协议特性:

  • BGP一条就是一个自治系统,从其他AS区域传来的路由在本区域中传播时,下一跳还是为上一个AS区域的出接口。
  • BGP只负责把路由从自治系统传递到另一个自治系统,从其他区域中传来的路由需要考本区域IGP协议进行传输。
  • BGP不产生路由,所有需要我们人为的下发路由,宣告在BGP中。
  • BGP有用自己独特的防环机制,AS防环机制:当当一跳路由从一个区域传出时,会把自己本区域的AS编号按照从右往左的顺序记录在AS-path属性中;一个路由器收到从其他AS收到的路由时,会第一时间检查此路由的AS-path属性,如果该属性中没有自己AS的编号,就会学习此路由,如果该属性出现了自己AS区域的编号,那就不学习该路由。
  • BGP基于TCP,必须手动配置邻居关系,目的端口号为179。
  • BGP为距离矢量协议,只会在第一次交互时发送完整的路由表,之后只会发送增量更新。
  • BGP有着多种属性可以控制路由选择

BGP的相关术语:

  • BGPspeaker:BGP发言者,表示运行了BGP的路由器。

  • BGP对等体,代表着BGP邻居,有两种邻居关系,IBGP邻居以及EBGP邻居。
    IBGP邻居:在同一个AS中的BGP邻居。
    EBGP邻居:运行在不同AS的的BGP邻居

BGP黑洞问题:
由于在IBGP邻居之间有没有运行BGP协议的路由器无法传输BGP路由从而导致数据包进入路由器后被丢弃
解决方法:
1:将BGP引入到IGP;(BGP路由表庞大,引入IGP中会造成IGP的路由表资源浪费,以及对设备性能有很大压力,慎重选择)
2:在黑洞路由器上配置到目的网段的静态路由。
3:IBGP全连接, AS中两两建立邻居关系,但是会导致环路,所有要运行IBGP放缓机制水平分割;IBGP邻居学到的路由不回传递给IBGP邻居,但是从EBGP邻居传来的路由,会传递给所有邻居。
4:BGP路由反射器,在AS中选一台为反射器,其他IBGP邻居只和反射器建立UBGP邻居;反射器原理:从IBGP邻居传递的路由会反射给其他的IBGP邻居。
5:通过使用私有的AS编号,把AS区域划分成若干小区域。

BGP报文

  • open报文,用于建立邻居关系,相当于OSPF的hello报文。
  • keeplive报文,保活报文,用于维持邻居关系。
  • Update,用于发送路由更新,以及路由撤销删除。
  • notification,用于BGP的报错消息。
  • Router-refrehs,用于通告邻居路由器重新发送制定地址族下的完整路由器。当入方向路由策略发生变化时,会发送Router-refresh报文通告对方发送指定地址族完整路由表,只有支持路由刷新能力的路由器才会相应Router-refresh报文。

BGP邻居建立条件
IBGP邻居建立条件

  • IBGP双方ip地址必须TCP可达,建议使用环回口地址指定IBGP邻居。
  • 如果使用环回口建立邻居,那么必须要更改更新源为环回口,而且必须和邻居指定的ip地址我一致。
  • IBGP不需要建立直连
    EBGP邻居建立条件
  • 对方的ip地址TCP可达,且需要直连
  • 更新源地址必须和邻居指定的ip地址一致

BGP的状态机

  • ldle 空闲状态,初始化时停留30秒,系统不分配任何资源,也拒绝所有的BGP连接。
  • Connect 连接中状态,等待对方向自己建立TCP连接
  • Active 活跃状态,,在Connect的时候失败会转换为活跃状态,此状态BGP会主动尝试与对方建立TCP连接。
  • Open-sent 开始发送状态 发出open报文,等待对方发送open报文。
  • Open-confirm 开始确认状态,收到了open报文,等待对方第一个keepalive报文
  • Established 已连接状态,收到对方的Keepalive报文,成功建立邻居。
    如果在任何状态下没有进行成功,就会回到初始状态

BGP计时器

  • Connect Rertry 重传计时器 为32秒
  • Keepalive 保活 一般为60秒,如果超过三个周期没有收到对方的Keepalive消息则判断邻居故障,保持时间可以改大,但是不能小区三个周期,如果两端Hoidtime不一致,双方接收较少的那一方

BGP路由发布规则

  • 只将本机最优的路由发布给邻居

  • 只将自己使用的路由发布给邻居

  • 从IBGP邻居学到的路由不传给其他IBGP邻居

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值