18外部网关协议BGP
概念:
(1)BGP 是不同自治系统的路由器之间交换路由信息的协议。
(2)边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
BGP 发言人:
(1)每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“ BGP 发言人” (BGP speaker) 。
(2)一般说来,两个 BGP 发言人都是通过一个共享网络连接在一起的,而 BGP 发言人往往就是 BGP 边界路由器,但也可以不是 BGP 边界路由器。
BGP 交换路由信息:
(1)一个 BGP 发言人与其他自治系统中的 BGP 发言人要交换路由信息,就要先建立 TCP 连接,然后在此连接上交换 BGP 报文以建立 BGP 会话(session),利用 BGP 会话交换路由信息。
(2)使用 TCP 连接能提供可靠的服务,也简化了路由选择协议。
(3)使用 TCP 连接交换路由信息的两个 BGP 发言人,彼此成为对方的邻站(neighbor)或对等站(peer) 。
BGP 协议的特点:
(1)BGP 协议交换路由信息的结点数量级是自治系统数的量级,这要比这些自治系统中的网络数少很多。
(2)每一个自治系统中 BGP 发言人(或边界路由器)的数目是很少的。这样就使得自治系统之间的路由选择不致过分复杂。
(3)BGP 支持 CIDR,因此 BGP 的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列。
(4)在BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。
BGP共使用四种报文:
(1) 打开 (OPEN) 报文,用来与相邻的另一个BGP发言人建立关系。
(2) 更新 (UPDATE) 报文,用来发送某一路由的信息,以及列出要撤消的多条路由。
(3) 保活 (KEEPALIVE) 报文,用来确认打开报文和周期性地证实邻站关系。
(4) 通知 (NOTIFICATION) 报文,用来发送检测到的差错