BGP(Border Gateway Protocol)是互联网中用于跨自治系统(AS)传播路由信息的协议,而BGP路由器与其邻居之间的连接具有5种状态:Idle、Connect、Active、OpenSent和Established。在本文中,我们将从多个角度分析这5种状态。
1. Idle状态
当BGP路由器创建邻居关系时,其初始状态为Idle。在此状态下,路由器会等待与邻居建立连接。当没有连接时,路由器不会发送任何消息,并等待连接状态的改变。
2. Connect状态
在Connect状态下,BGP路由器试图建立与邻居的TCP连接。路由器将向邻居发送SYN消息,并等待对方应答。如果邻居响应,则会进入OpenSent状态,否则,路由器会返回Idle状态,并重复尝试建立连接。
3. Active状态
当BGP路由器在Connect状态下等待连接的应答时,如果没有收到应答,则其会进入Active状态。路由器将尝试发送一连串的SYN消息,直到收到应答为止。如果路由器达到了最大的尝试次数,如3次,则此次连接尝试失败,并返回Idle状态。在Active状态下,路由器不会发送任何的BGP消息,只会等待连接状态的改变。
4. OpenSent状态
当BGP路由器与邻居成功建立TCP连接后,其会进入OpenSent状态。在此状态下,路由器将向邻居发送Open消息,并等待接收邻居的Open消息。如果邻居接收了此消息,则其会向路由器发送Keepalive消息,表示其接受该连接。在此状态下,如果邻居没有接收到Open消息,则连接失败,路由器会返回Idle状态。
5. Established状态
在建立邻居关系并成功传递Open消息之后,BGP路由器将进入Established状态。在此状态下,路由器可以向邻居发送和接收BGP路由信息。当连接处于此状态时,路由器可以执行路由器选择过程,以确定它们将如何传输互联网流量。当路由器决定从邻居路由器接收了BGP路由信息后,路由器必须将该路由信息添加到其路由表中,然后应答邻居路由器,表示其已接受该路由信息。
在总体上,BGP路由器连接的5种状态代表了路由器如何与邻居路由器建立并维护连接。无论是路由器选择过程还是路由信息传递,这些状态都是非常重要的。
扫码咨询 领取资料