• 因特网采用分层次的路由选择协议
    • 内部网关协议IGP(例如路由信息协议RIP或开放最短路径优先OSPF)
      • 设法使分组在以恶搞自治系统内尽可能有效地从源网络传输到目的网络
      • 无需考虑自治系统外部其他方面的策略
    • 外部网关协议EGP(例如边界网关协议BGP)
      • 在不同自治系统内,度量路由的‘代价’(距离,带宽,费用等)可能不同。因此对于自治系统之间的路由选择,使用‘代价’作为度量来寻找最佳路由是不可行的。
      • 自治系统之间的路由选择必须考虑相关策略(政治,经济,安全等)
        • 比如国内站点在互相传送数据报时,不应去国外绕圈
        • 有些自治系统不愿让别的自治系统的数据报通过自己的网络
      • BGP只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
    • 在配置BGP时,每个自治系统的管理员要选择至少一个路由器作为该自治系统的“BGP发言人”
    • 不同系统的BGP发言人要交换路由信息,首先必须建立TCP连接,端口号为179
      • 在此TCP连接上交换BGP报文以建立BGP会话
      • 利用BGP会话交换路由信息(例如,增加新的路由,或撤销过时的路由,以及报告出错的情况等)
      • 使用TCP连接交换路由信息的两个BGP发言人,彼此称为对方的邻站对等站
    • BGP发言人出了运行BGP协议外,还必须运行自己所在自治系统所使用的内部网关协议IGP。
    • BGP发言人交换网络可达性的信息(要到达某个网络所要经过的一系列自治系统)
    • 当BGP发言人互相交换了网络可达性的信息后,各BGP发言人就根据所采用的策略从收到的路由信息中找出到达各自治系统的较好的路由。也就是构造出树形结构、不存在回路的自治系统连通图

    例如:
    image.png

    • BGP使用于多级结构的因特网

    image.png

    • BGP-4(BGP版本4)
      • OPEN报文:用来与相邻的另一个BGP发言人建立关系,使通信初始化
      • UPDATE报文:用来通告某一路由的信息,以及列出要撤销的多条路由。
      • KEEPALIVE报文:用来周期性地证实邻站地联通性。
      • NOTIFICATION报文:用来发送检测到地差错。

    例题
    image.png

    • R1和R2分别位于两个不同地自治系统AS1和AS2中;

    自治系统之间需要使用外部网关协议EGP这一类协议,具体为边界网关协议BGP,目前使用最多的版本是BGP-4,BGP-4的报文被封装在TCP报文段中进行传输。