• BGP邻居状态机


    idle 
    connect ( 已经建立完成了TCP三次握手 ) 
    open sent 
    open confirm 
    establish 
    connect 和 active 都是 TCP 连接阶段, active 是发起方, connect 是应答方 


    Idle State
    1 BGP 通常以 Idle State 开始( 此时拒绝接收所有入连接 )。当一个开始事件出现, BGP 过程初始化所有BGP 资源打开重试连接 ( ConnectRetry ) 计时器, 初始化到邻居的TCP 连接, 接听来自邻居的TCP 初始化消息并将它的状态转到 Connect State
    2 开始事件是由一个操作者配置一个BGP 过程, 或者重置一个已经存在的过程或者路由器软件重置 BGP 过程引起
    3 一个差错的出现会将 BGP 过程的状态转为 Idle State,  路由器可能会试图发起另外一个开始事件, 为了防止在持续差错条件下导致的摆动, 在第一次转回到 Idle State 后, 路由器会自动开启重试连接计时器, 当计时器终止后, 路由器就会放弃重新开始 BGP. 重试计时器第一次的时间为60s, 下一次为前一次的2 倍120s, 成指数形式增加

    Connect State
    此状态下BGP 过程会等到 TCP 连接完成以后再决定后续的动作 
    1 如果 TCP 连接建立成功, BGP 连接将 ConnectRetry 清零, 完成初始化并给邻居发送一个 Open Message 转移到 Open send State
    2 如果 TCP 连接建立失败, BGP 继续监听由邻居发起的连接, 重置 ConnectRetry 计时器并转移到 Active State
    3 如果在连接状态下, ConnectRetry 超时, 计时器将重新开始, 并再一次试图与邻居建立 TCP 连接, BGP 保持  Connect State, 此时如果有任何其他输入事件, 转入 Idle State

    Active State
    在此状态, BGP 过程试图与邻居建立一个TCP 连接
    1 如果连接成功, BGP 过程将 ConnectRetry 计时器清零, 完成初始化, 给邻居发送一个Open Message 并转移到 Open send State, Hold 计时器设置为 4mins
    2 如果在激活状态, ConnectRelay 计时器超时, 将回到 Connect State 并且重置 ConnectRelay 计时器.也发起一个到对等的 TCP 连接并继续监听来自对等体的连接.
    3 如果邻居试图与一个未知IP 建立TCP 会话, 同时ConnectRelay 计时器重置, 连接被拒绝并保持在 Active State
    4 任何一个事件(除开始事件)都回导致状态转向 idle State一直处于 Active State :

    Open send State   
    在此状态下, 已经发送了 Open Message, BGP 等待邻居发来的 Open Message
    1 当收到一个 Open Message, 如果发现差错, 将给邻居发一个 Notification Message 并转入 Idle State
    2 如果收到的 Open Message 没有差错, 将给邻居发送一个 Keepalive Message 并将 Keepalive 计时器清零此时协商一个较短的 holdtime , 如果 holdtime = 0, 则没有启动 holdtime 和 keepalive 计时器, 根据 AS 号选择 IBGP 或者 EBGP, 同时将状态转移到 OpenConfirm State
    3 如果收到一个TCP 断开消息, 本地断开BGP 连接, 重置 ConnectRetry 计时器, 并转入Active State

    Open Confirm State
    此状态下BGP 会等待一个Keepalive Message 或者  Notification Message 
    1 如果收到一个 Keepalive Message , 转移到 Establish State
    2 如果收到一个  Notification Message , 转入 Idle State, 并断开 TCP 连接
    3 如果 hold 计时器超时, 检测到一个差错或出现 stop 事件, BGP 将给邻居发送一个 Notification Message并断开连接转入 Idle State
    Establish State
    此状态下, BGP 对等体间的连接已经完全建立
    可以交换 Update Message , Keepalive Message , Notification  Message
    如果收到 Notification Message 转入 Idle State , 并中断连接


     

  • 相关阅读:
    windows 下读取文件夹下所有文件的文件名
    centos7安装python3
    python 实现google 在线中英文翻译
    删除docker /var/lib/docker报Device or resource busy问题处理
    java list 去重
    OpenStack与KVM的区别与联系
    虚拟化kvm virsh 常用命令
    linux 监控服务器流量
    openstack 全套学习资料地址
    二、Openstack入坑指南
  • 原文地址:https://www.cnblogs.com/cyrusxx/p/12824232.html
Copyright © 2020-2023  润新知