BGP 邻居都发起连接

BGP Neighbor both Initiating connection

我是这个论坛的新手,这是我在这个论坛上的第一个问题,不确定这个论坛是否合适。我申请了一份网络工作,今天接到了第一个电话..

面试官问了一个我无法回答的问题。想请教专家的意见。我尝试在 google 中搜索,但无法获得正确答案。

  1. 我有两个邻居,他们都在尝试发起连接。在这种情况下会发生什么?

    我的理解是:当我们配置邻居时,它会尝试发起一个TCP连接,如果双方都发送这个消息怎么办?有什么偏好之类的吗??

  2. 从 BGP Idle 状态,发起连接的人将进入 Active,接收到该活动消息的人将进入连接状态。

    问题是:它可以从 Connect -> Active 为什么?为什么我们不能直接从 Connect 转到 Idle,为什么不能转到 Active?

这个问题的最佳社区是“网络工程”

#1 RFC 4171 的第 6.8 节描述了 BGP 连接冲突是如何解决的:由具有最高 BGP 标识符的 BGP 发言者发起的 BGP 连接获胜。

#2 状态机在 RFC 4171 的第 8.2 节和 this blog 中进行了描述。总结:

  • 空闲意味着会话未尝试建立传出连接并且不接受传入连接。
  • Connect 表示会话已发起建立传出连接的尝试(发送 SYN)并正在等待连接完成(等待 SYN ACK)。
  • Active表示会话还没有发起传出连接,正在等待对方发起连接(等待SYN)
  • 通常,如果传出连接失败,我们仍希望接受传入连接。这就是为什么当传出连接失败时,我们通常会从 Connect 转到 Active(而不是 Idle)。