BGP基础知识一

BGP更新

        BGP更新可分为两类:一是人为的手动更新,二是BGP触发更新。

BGP分类

        BGP可以分为两类 :EBGP和IBGP

                EBGP:这类BGP,是为不是一个AS号之间的BGP对等体。

                IBGP:这类BGP,为相同AS号之间的BGP对等体。      

BGP的报文类型

         Open报文: 用于建立BGP邻居关系。

         update报文:用于在两端BGP对等体之间交互路由信息。

         keepalive报文:两端BGP对等体建立邻居,用于保持BGP邻居关系。这类报文默认每隔60s发送一次。

         notfication报文:两端BGP对等体之间交换信息,如果检测出错误信息就会发送此类报文。

         Route-refresh报文:这是路由跟新所发送的BGP报文。

    其中在上面的五种报文类型中,只有keepalive报文时周期性更新,其他都为触发性更新

BGP状态机

        BGP状态机可分为,idle--connect--active--openstart--openConfirm--Established

                idle空闲状态:idle这是BGP的初始状态,在此状态下,BGP禁止邻居发送来的链接请求,只有当start事件之后,BGP才会尝试与对等体之间进行TCP三次链接,并转到connect状态。

                connect连接状态:再此状态下,BGP启动重传定时器,等待TCP完成连接。

                                @如果连接成功,那么BGP就会发送Open报文,并转到openstart状态。

                                @如果TCP连接失败,那么就会转到active状态下。

                                @如果连接时,重传定时器超时,那么就会停留在connect状态下,继续跟其他BGP对等体之间建立连接。

                active状态:在此状态下,BGP总是在尝试与BGP对等体之间建立TCP连接。

                                @如果连接成功,那么就会发送Open报文,并转到openstart状态。

                                @如果连接失败,则继续停留在active状态下。

                                @如果连接重传定时器超时,BGP还是没有收到对等体发送来的报文,那么就会转到connect状态下。

                openstart状态:在此状态下,BGP会根据对等体发来的open报文,来对里面的AS号,区域号,和版本号等来进行检查。

                                @如果收到的open报文正确,那么就会发送keepalive报文,来保持BGP对等体之间的连接。

                                @如果收到的open报文有误差,那么就会发送notfication报文,并且状态恢复到idle状态。

                openConfirm状态:在这个状态下,BGP等待对等体发来,keepalive报文或者notfication报文。

                                @如果收到了keepalive报文,那么就会转到Established状态

                                @如果收到了notfication报文,那么就会转到idle状态

                Established状态:这个状态下,BGP就可以正常和对等体之间交互update报文,keepalive等报文。

 注意:openstart是接收open报文,发送keepalive报文和notfication报文;而openConfirm状态下是只接收keepalive报文和notfication报文。

BGP的防环机制

        EBGP使用AS-PATH属性来进行防环,首先当一个EBGP路由经过一个AS区域的时候,那么就会在最左面,也就是前面,加上这个经过的AS区域的AS号,当再次经过的这个区域的时候,区域就不会接收此类的路由。

        IBGP使用一种水平切割机制,来进行一种防环,他的意思就是,在一个IBGP区域内,在中间部分,逻辑上水平切割一下,路由不会到达切割的另一边。

BGP选路规则

        当到达同一目的地存在多条路由时,BGP采如下策略进行路由选择

                1.如果此路由的下一跳不可达,忽略此路由

                2.优选协议首选值(PreVal)最高的路由,默认0

                3.优选本地优先级(Local_Pref)最高的路由,默认为100

                4.优选本地生成的路由

                5.优选AS路径(AS-PATH)最短的路由

                6.比较Origin属性,依次选择Origin类型为IGP,EGP,Incomplete的路由

                7.优选MED值最低的路由

                8.优选从EBGP邻居学来的路由(EBGP路由优先级高于IBGP路由)

                9.优选到BGP下一跳IGP Metric较小的路由

                10.优选Cluster ID最短的路由

                11.优选Router ID最小的路由器发布的路由

                12比较对等体的 ip  address ,优选从具有较小ip address的对等体学来的路由

BGP 属性

1.BGP属性可分为四大类

        第一类:公认必遵属性@这类属性,能够被所有BGP对等体识别,且必须都需要遵守,必须都要携带,如果识别不出来的话,路由信息就会报错。

        第二类 : 公认任意@这类属性,可以不被BGP对等体识别,可以不用携带此类路由,不携带此类路由也不会报错。

        第三类 : 可选过渡@这类属性,可以不会被BGP对等体识别,即使不识别,BGP对等体一样会接收并转发此类的属性,并且不会报错。

        第四类 : 可选非过度@此类属性,不会被BGP 对等体识别,也会不转发此类属性报文到BGP邻居。     

        

如有不对的地方,欢迎大家提出,感谢观看!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值