目录 第4章互联网路由结构与协议 4.1互联网路由结构与路由算法 41.1互联网结构特点 4.1.2互联网的路由结构 41.3路由算法分类 42互联网域内路由协议 42.1路由信息协议 422开放最短路径优先协议 43互联网域间路由协议 43.1自治系统级网络拓扑 4.32自治系统间连接关系 4.3.3边界网关协议 4.34BGP中的策略路由 44组播及组播地址 44.1计算机网络中的通信方式 44.2IP组播技术优缺点 44.3IPV4组播地址 444互联网组管理协议IGMP 45组播转发 4.5.1源树 4.52共享树 453源树和共享树的比较 4.54组播转发原理 4.6组播路由协议 46.1域内组播路由协议 462域间组播路由协议 463分析与比较
目 录 第 4 章 互联网路由结构与协议 4.1 互联网路由结构与路由算法 4.1.1 互联网结构特点 4.1.2 互联网的路由结构 4.1.3 路由算法分类 4.2 互联网域内路由协议 4.2.1 路由信息协议 4.2.2 开放最短路径优先协议 4.3 互联网域间路由协议 4.3.1 自治系统级网络拓扑 4.3.2 自治系统间连接关系 4.3.3 边界网关协议 4.3.4 BGP 中的策略路由 4.4 组播及组播地址 4.4.1 计算机网络中的通信方式 4.4.2 IP 组播技术优缺点 4.4.3 IPv4 组播地址 4.4.4 互联网组管理协议 IGMP 4.5 组播转发 4.5.1 源树 4.5.2 共享树 4.5.3 源树和共享树的比较 4.5.4 组播转发原理 4.6 组播路由协议 4.6.1 域内组播路由协议 4.6.2 域间组播路由协议 4.6.3 分析与比较
第4章互联网路由结构与协议 4.1互联网路由结构与路由算法 4.1.1互联网结构特点 从横向来看,包括计算机网络在内的任何通信网都由终端节点和网络节点构成,其 中终端节点是通信的主体(计算机网络中称为主机),网络节点是进行通信的接入和交 换设备,也可称为网络接口信息处理机。由于互联网这样一个广域的计算机网络自始至 终都具有这样一些特点:由国际范围内的组织松散的、自治的计算机网络构成,这些自 治的网络由一些智能的网络节点一路由器连接起来,用户数据封装在IP分组内,由 这些路由器一跳一跳地进行传递,直到目的主机。因此,互联网是一个基于路由器的通 信网络,所有终端节点(主机)都必须通过网络节点(路由器)才能与其它终端节点进 行通信。互联网的网络接口信息处理机就是路由器。图41说明了互联网的这一横向结 构特点(其中H表示主机,R表示路由器)。 图41互联网的横向结构特点 从纵向来看,即从OSI参考模型协议层次的观点来看,互联网为了屏蔽网络层以 下各种不同具体网络实现的差异,各主机之间从网络层及以上都遵守TCPP协议簇, 以实现网络层以上的互连。所有IP层以上协议都直接或间接地建立在IP这种不可靠的 无连接的数据报协议之上,IP分组是整个互联网数据传输的基本单元。因而,对于路 由器来说,最重要的便是实现IP协议,能够根据收到的IP分组的头部信息进行正确地 处理和转发。图42说明了互联网的纵向结构及路由器所处的位置
第 4 章 互联网路由结构与协议 4.1 互联网路由结构与路由算法 4.1.1 互联网结构特点 从横向来看,包括计算机网络在内的任何通信网都由终端节点和网络节点构成,其 中终端节点是通信的主体(计算机网络中称为主机),网络节点是进行通信的接入和交 换设备,也可称为网络接口信息处理机。由于互联网这样一个广域的计算机网络自始至 终都具有这样一些特点:由国际范围内的组织松散的、自治的计算机网络构成,这些自 治的网络由一些智能的网络节点——路由器连接起来,用户数据封装在 IP 分组内,由 这些路由器一跳一跳地进行传递,直到目的主机。因此,互联网是一个基于路由器的通 信网络,所有终端节点(主机)都必须通过网络节点(路由器)才能与其它终端节点进 行通信。互联网的网络接口信息处理机就是路由器。图 4.1 说明了互联网的这一横向结 构特点(其中 H 表示主机,R 表示路由器)。 R R R R R R R R H H H H H H H H H 图 4.1 互联网的横向结构特点 从纵向来看,即从 OSI 参考模型协议层次的观点来看,互联网为了屏蔽网络层以 下各种不同具体网络实现的差异,各主机之间从网络层及以上都遵守 TCP/IP 协议簇, 以实现网络层以上的互连。所有 IP 层以上协议都直接或间接地建立在 IP 这种不可靠的 无连接的数据报协议之上,IP 分组是整个互联网数据传输的基本单元。因而,对于路 由器来说,最重要的便是实现 IP 协议,能够根据收到的 IP 分组的头部信息进行正确地 处理和转发。图 4.2 说明了互联网的纵向结构及路由器所处的位置
应用层 主机A 路由器 主机B 示层 应用层 应用层 会话层 TCP UDP TCP UDP 传输层 IP分组 IP 网络层 数据链 数据链路层 数据链路层 数据链路层 物理接口 物理接口 物理接口 物理层 物理网络 物理网络 图42互联网与OSI纵向结构的对应关系 4.12互联网的路由结构 路由器系统组成了互联网的基本结构,运行在路由器上的单播路由协议则是互联网 正常运行的基本保证。互联网的路由选择模型以自治系统为基础,自治系统是指具有统 管理策略并且具有官方自治系统编号的网络,在自治系统内运行路由选择信息协议、 开放最短路径优先协议等内部网关协议,自治系统之间运行边界网关协议交换路由信息, 路由协议交换的路由信息最终会形成路由表保持在路由器中,路由器就是依据路由表来 决定每个到达的分组该往娜里转发。 从上述结构看出,是路由器把主机从繁重的路由负担中解放出来,决定IP分组转 发方向的关键因素是路由表。路由表的查找、建立、维护和更新工作是由路由器完成的 这一部分功能在路由器中占有很重要的地位,它直接涉及IP分组路由的正确与否以及 效率高低,以至整个互联网的稳定性。由于历史原因,本章许多地方用网关来指代路由 ,实际上两者具有相同的意义。 1、路由表的结构 IP地址编码具有其特殊性:可以用主机地址的高位部分来代表其所属网络的地址 IP分组在传送过程中,只有当它到达与其目的主机处于同一网络、同时也是转发途径中 的最后一个路由器时,其中的主机IP地址才对这个路由器有意义,之前的所有路由器 都只关心IP地址中的网络地址(高位部分)。因为具有相同网络地址的主机必定处于同 网络中,所以只要根据主机IP地址中的网络部分查找路由表即可得到下一个路由器
图 4.2 互联网与 OSI 纵向结构的对应关系 4.1.2 互联网的路由结构 路由器系统组成了互联网的基本结构,运行在路由器上的单播路由协议则是互联网 正常运行的基本保证。互联网的路由选择模型以自治系统为基础,自治系统是指具有统 一管理策略并且具有官方自治系统编号的网络,在自治系统内运行路由选择信息协议、 开放最短路径优先协议等内部网关协议,自治系统之间运行边界网关协议交换路由信息, 路由协议交换的路由信息最终会形成路由表保持在路由器中,路由器就是依据路由表来 决定每个到达的分组该往哪里转发。 从上述结构看出,是路由器把主机从繁重的路由负担中解放出来,决定 IP 分组转 发方向的关键因素是路由表。路由表的查找、建立、维护和更新工作是由路由器完成的。 这一部分功能在路由器中占有很重要的地位,它直接涉及 IP 分组路由的正确与否以及 效率高低,以至整个互联网的稳定性。由于历史原因,本章许多地方用网关来指代路由 器,实际上两者具有相同的意义。 1、路由表的结构 IP 地址编码具有其特殊性:可以用主机地址的高位部分来代表其所属网络的地址。 IP 分组在传送过程中,只有当它到达与其目的主机处于同一网络、同时也是转发途径中 的最后一个路由器时,其中的主机 IP 地址才对这个路由器有意义,之前的所有路由器 都只关心 IP 地址中的网络地址(高位部分)。因为具有相同网络地址的主机必定处于同 一网络中,所以只要根据主机 IP 地址中的网络部分查找路由表即可得到下一个路由器
的地址,这样一跳一跳地查表和转发,直到达到与目的主机直接相连于同一网络的路由 器,这时才利用ARP等地址解析协议把目的主机地址转换为物理地址,把IP分组发送 给目的主机。因此,路由表的表项只需保留目的主机的网络地址,而不是主机地址,这 样可使路由表的规模较小,同时也使查找速度加快。图4.3是说明上述情况的例子, 通向上游 路由器的 路径 ABC Net Nxt Hop default RI Direct RS defauLt[ R2 Net Nxt Hop 转发:次策下灬跳 路由;找钊端到端的路径 ABCDE Direct default 图43路由和转发实例 2、自治系统的概念 路由器在启动时,由外存读入或执行特定命令初始化其路由表,这是由网络管理员 事先配置好的。随着网络运行状态的变化,如链路、路由器和主机的增加和减少,故障 的发生和排除等,路由器必须能及时更新其路由表,以正确反映当前的网络状态,从而 尽可能准确快速地转发IP分组。因此路由器之间要根据事先商定的路由协议定期交换 和学习路由信息。那么,是否路由表中对于每个可能的目的网络都有一个表项,整个互 联网采用同一种全局路由算法呢?答案是否定的。首先,即使是以网络为索引,这也将 是一张非常庞大的表;其次,因为互联网分布范围太广,包括主机太多,动态变化要及 时反映到全部路由表中是不可能的,一旦发生变化,各路由器中的路由表就会在一段时 内丧失一致性;另外,这种全局的路由更新信息会占用大量的带宽,影响正常的数据 传输。因此,互联网采用的方法是把整个网络划分为一些相对自治的局部系统,采用 种或者多种分布式路由算法,路由表中也只保留局部的路由信息 互联网是在 ARPANET的基础上发展起来的。在互联网发展的初期, ARPANET广 域网已开始投入使用,设计者们自然而然地将 ARPANET作为主干,各本地局域网通过 网关(即路由器)连入 ARPANET,从而构成互联网。这些连接本地网络与 ARPANET
的地址,这样一跳一跳地查表和转发,直到达到与目的主机直接相连于同一网络的路由 器,这时才利用 ARP 等地址解析协议把目的主机地址转换为物理地址,把 IP 分组发送 给目的主机。因此,路由表的表项只需保留目的主机的网络地址,而不是主机地址,这 样可使路由表的规模较小,同时也使查找速度加快。图 4.3 是说明上述情况的例子。 图 4.3 路由和转发实例 2、自治系统的概念 路由器在启动时,由外存读入或执行特定命令初始化其路由表,这是由网络管理员 事先配置好的。随着网络运行状态的变化,如链路、路由器和主机的增加和减少,故障 的发生和排除等,路由器必须能及时更新其路由表,以正确反映当前的网络状态,从而 尽可能准确快速地转发 IP 分组。因此路由器之间要根据事先商定的路由协议定期交换 和学习路由信息。那么,是否路由表中对于每个可能的目的网络都有一个表项,整个互 联网采用同一种全局路由算法呢?答案是否定的。首先,即使是以网络为索引,这也将 是一张非常庞大的表;其次,因为互联网分布范围太广,包括主机太多,动态变化要及 时反映到全部路由表中是不可能的,一旦发生变化,各路由器中的路由表就会在一段时 间内丧失一致性;另外,这种全局的路由更新信息会占用大量的带宽,影响正常的数据 传输。因此,互联网采用的方法是把整个网络划分为一些相对自治的局部系统,采用一 种或者多种分布式路由算法,路由表中也只保留局部的路由信息。 互联网是在 ARPANET 的基础上发展起来的。在互联网发展的初期,ARPANET 广 域网已开始投入使用,设计者们自然而然地将 ARPANET 作为主干,各本地局域网通过 网关(即路由器)连入 ARPANET,从而构成互联网。这些连接本地网络与 ARPANET
主干的网关就称为核心网关。核心网关之间要不断交换各自的路由信息,以保证整个互 联网路由的一致性。图44是最初互联网的核心结构。 ARPANET主干网 入人广 核心路由器(网关) LANI 把LAN连接到 LAND ARPANET上 的路由器集 LAN上主机把所有非本地流量交换送给最近的核心路由器 图44互联网的核心结构 随着核心网关的增多,主干网上路由更新信息的开销增大,使得扩展很难。因而要 在核心网关下引入自治系统( Autonomous System,AS)的概念,其中可以包含多个网 络和网关(称为非核心网关),通过唯一核心网关与主干网相连。核心网关由INOC(互 联网网络操作中心)统一管理,可以保证极高的可靠性,并且互相交换路由信息,以保 证整个互联网路由的一致性;非核心网关在本地自行管理,一方面赋予本地网关极大的 灵活性,另一方面大大减轻INOC的负担。当然,自治系统要通过某一授权的非核心网 关向核心系统负责,其中包括向核心网关通告本地路由信息,使核心网关能对本地主机 进行路由;同时核心网关也要通过这个网关报告主干网的路由信息。从上面自治系统的 定义可以看出,各核心网关也构成了一个自治系统,只是由于其特殊性,通常把它独立 出来。 从上面的讨论可以得出互联网的路由模式:在自治系统内部,各外部网关共同完成 本地路由;当分组目的地址位于其它自治系统时,本地网络通过默认路径将数据分组发 往与之相连的核心网关,进入核心主干网,再通过核心网关的协同作用,将数据分组通 过与分组目的地址所在自治系统直接相连的核心网关进入自治系统内,通过自治系统内 部的路由到达目的主机。 各个网关之间通过路由协议来交换路由信息时,会遇到三种情况:核心网关之间、 自治系统内部之间,以及自治系统与核心网关之间。因而路由协议通常可分为三类:第
主干的网关就称为核心网关。核心网关之间要不断交换各自的路由信息,以保证整个互 联网路由的一致性。图 4.4 是最初互联网的核心结构。 LAN 上主机把所有非本地流量交换送给最近的核心路由器 图 4.4 互联网的核心结构 随着核心网关的增多,主干网上路由更新信息的开销增大,使得扩展很难。因而要 在核心网关下引入自治系统(Autonomous System,AS)的概念,其中可以包含多个网 络和网关(称为非核心网关),通过唯一核心网关与主干网相连。核心网关由 INOC(互 联网网络操作中心)统一管理,可以保证极高的可靠性,并且互相交换路由信息,以保 证整个互联网路由的一致性;非核心网关在本地自行管理,一方面赋予本地网关极大的 灵活性,另一方面大大减轻 INOC 的负担。当然,自治系统要通过某一授权的非核心网 关向核心系统负责,其中包括向核心网关通告本地路由信息,使核心网关能对本地主机 进行路由;同时核心网关也要通过这个网关报告主干网的路由信息。从上面自治系统的 定义可以看出,各核心网关也构成了一个自治系统,只是由于其特殊性,通常把它独立 出来。 从上面的讨论可以得出互联网的路由模式:在自治系统内部,各外部网关共同完成 本地路由;当分组目的地址位于其它自治系统时,本地网络通过默认路径将数据分组发 往与之相连的核心网关,进入核心主干网,再通过核心网关的协同作用,将数据分组通 过与分组目的地址所在自治系统直接相连的核心网关进入自治系统内,通过自治系统内 部的路由到达目的主机。 各个网关之间通过路由协议来交换路由信息时,会遇到三种情况:核心网关之间、 自治系统内部之间,以及自治系统与核心网关之间。因而路由协议通常可分为三类:第