BGP笔记摘抄

AS边界运行BGP,用于AS之间交换路由信息。借助BGP,每个AS都可以选择合适自己的IGP协议,并通过BGP来获得其他AS的路由信息。

BGP需要做到:

支持从各类IGP引入路由信息

能够从这些数据中决策出最优路由

不论从哪类IGP引入,将最优路由对外发布时,都采用统一的格式

 

BGP存储路由信息的数据库叫RIB (routing informationbse),分为3个部分:

Adj-RIBs-In,保存BGP Speaker从邻居学到的路由信息,即初始路由

Loc-RIBs,保存经过决策从Adj-RIBs-In选取的路由信息,即最优路由

Adj-RIBs-Out,保存BGP Speaker发给邻居的路由信息,即发布路由

 

BGP承担的是大型网络之间接口的角色,选择TCP作为承载协议,使用端口号为179

 

什么叫邻居:只要双方指定地址路由可达,就可以建立邻居。

同一AS内,设备之间的邻居叫IBGP邻居

不同AS内,设备之间的邻居叫EBGP邻居

运行BGP的设备交BGP Speaker,相互之间称作BGP对等体

 

建立邻居时,BGP首先尝试建立TCP连接,如果连接成功,BGP发送open消息给对端,并等待对端的open消息,如果没有发现错误,就向对端发送keepalive消息并启动keepalive定时器,收到keepalive消息,则邻居建立。

当邻居检测到错误需要中断连接时,BGP发送notification消息通知对端。

Open用于建立邻居

Keepalive用于维持邻居

Update用于发布路由信息

Notification用于通知对端检测错误。

BGP建立邻居采用有限状态机,6种状态:

Idle:初始状态,系统不分配资源,只有收到startevent时,才分配BGP资源,启动connectRetry计时器,启动对其对等体的传输层连接,同时也侦听是否有来自其他对等体的连接

Connect:BGP等待TCP连接,若连接成功,清空connectRetry计时器,并发送open报文,状态变为opensent状态;

否则重置connectRetry,侦听是否有对等体启动连接,进入active状态

Active:BGP初始化TCP连接来获得一个对等体。如果连接成功,本地清空connectRetry计时器,并向对等体发open报文,进入opensent状态

Opensent:BGP等待对等体的open报文。收到后如果发现错误则发送Notification报文,进入idle状态;

如果报文正确,发送keepalive报文,转为confirm状态

Openconfirm:BGP等待keepalive或notification报文

Established:BGP可和其他对等体交换update,notification,keepalive报文

 

 

BGP决策过程:

1.      当本地BGP发言人收到EBGP邻居发来耳朵更新、替代或撤销路由时,为每条路由计算优先级,并将最高优先级的路由通告到所有的IBGP邻居

2.      在步骤1完成后,负责从到达目的地的所有路由选择最好的路由,同时安装每条选中的路由到相应的loc-rib,如果路由信息携带的下一跳路由不可达,则将该路由排除在这个决策过程之外

3.      在步骤2完成后激活,负责根据在PIB中的规则,发布Loc-rib中的路由到EBGP每个对端。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值