2018/4/6 简中国神游我8大年 上次课的主要内容 4.1网络层提供的两种服务 4.2网际协议P 计算机网络(第7版) 42.1虚拟互连网络 42.2分类的P地址 42.31P地址与硬件地址 42.4地址解析协议ARP 42.5P数据报的格式 第4章网络层(2) 42.6IP层转发分组的流程 中国科学技术大学曾凡平 4.3划分子网和构造超网 431划分子网 43.2使用子网时分组的转发 4.33无分类编址CIDR(构造超网) 11 11 11,ga9 21 第4章网络层(2) 4.4网际控制报文协议ICMP 4.4网际控制报文协议ICMP ·为了更有效地转发P数据报和提高交付成功的机会, 42吧举霸 种类 在网际层使用了网际控制报文协议ICMP(Internet Control Message Protocol). 4.5互联网的路由选择协议 ·ICMP是互联网的标准协议。 4.5.1有关路由选择协议的几个基本概念 肉钢殷 ·ICMP允许主机或路由器报告差错情况和提供有关异 4.5.3 常情况的报告。 4.5.4外部网关协议BGP 4.5.5路由器的构成 ·但ICMP不是高层协议(看起来好像是高层协议, 4.6 IPv6 因为ICMP报文是装在P数据报中,作为其中的数 4.6.1Pv6的基本首部 据部分),而是P层的协议。 4.6.2P6的地址 4.6.3从Pv4向Pv6过波 4.6.41CMPv6 11me 3 11 ICMP报文的格式 4.4.1ICMP报文的种类 ·ICMP报文的种类有两种,即ICMP差错报告报 牛移 0 16 文和ICMP询问报文。 英级代两 业和 (这4个享节家决于CMP报文的黄厦) ·ICMP报文的前4个字节是统一的格式,共有三 个字段:即类型、代码和检验和。接着的4个字 CMP的最■都分(长度取决于典量) 节的内容与ICMP的类型有关。 IdMP探文 中首都 P量报 11 11 1
2018/4/6 1 计算机网络 (第 7 版) 第 4 章 网络层(2) 中国科学技术大学 曾凡平 上次课的主要内容 4.1 网络层提供的两种服务 4.2 网际协议 IP 4.2.1 虚拟互连网络 4.2.2 分类的 IP 地址 4.2.3 IP 地址与硬件地址 4.2.4 地址解析协议ARP 4.2.5 IP 数据报的格式 4.2.6 IP 层转发分组的流程 4.3 划分子网和构造超网 4.3.1 划分子网 4.3.2 使用子网时分组的转发 4.3.3 无分类编址 CIDR(构造超网) 4.网络层 2 第 4 章 网络层(2) 4.4 网际控制报文协议 ICMP 4.4.1 ICMP 报文的种类 4.4.2 ICMP 的应用举例 4.5 互联网的路由选择协议 4.5.1 有关路由选择协议的几个基本概念 4.5.2 内部网关协议 RIP 4.5.3 内部网关协议 OSPF 4.5.4 外部网关协议 BGP 4.5.5 路由器的构成 4.6 IPv6 4.6.1 IPv6 的基本首部 4.6.2 IPv6 的地址 4.6.3 从 IPv4 向 IPv6 过渡 4.6.4 ICMPv6 4.网络层 3 4.4 网际控制报文协议 ICMP • 为了更有效地转发 IP 数据报和提高交付成功的机会, 在网际层使用了网际控制报文协议 ICMP (Internet Control Message Protocol)。 • ICMP 是互联网的标准协议。 • ICMP 允许主机或路由器报告差错情况和提供有关异 常情况的报告。 • 但 ICMP 不是高层协议(看起来好像是高层协议, 因为 ICMP 报文是装在 IP 数据报中,作为其中的数 据部分),而是 IP 层的协议。 ICMP 报文的格式 首 部 ICMP 报文 0 数 据 部 分 类型 代码 检验和 (这 4 个字节取决于ICMP 报文的类型) 8 16 31 IP 数据报 前 4 个字节 都是一样的 ICMP 的数据部分(长度取决于类型) 4.4.1 ICMP 报文的种类 • ICMP 报文的种类有两种,即 ICMP 差错报告报 文和 ICMP 询问报文。 • ICMP 报文的前 4 个字节是统一的格式,共有三 个字段:即类型、代码和检验和。接着的 4 个字 节的内容与 ICMP 的类型有关
2018/4/6 ICMP差错报告报文共有4种 ICMP差错报告报文的数据字段的内容 ·终点不可达 ·时间超过 P数海绿的最海字聚 ·参数问题 妆测的P章量报 ·改变路由(重定向)(Redirect) 字节 ICMP整搬报告报文 iCMP差嫩景告报文 装入MP报文的P数据报 P败铜报 11 11 1/ 不应发送ICMP差错报告报文的几种情况 ICMP询问报文有两种 ·对ICMP差错报告报文不再发送ICMP差错报告 ·回送请求和回答报文 报文。 ·时间截请求和回答报文 ·对第一个分片的数据报片的所有后续数据报片都 不发送ICMP差错报告报文。 下面的几种ICMP报文不再使用: ·对具有多播地址的数据报都不发送1CMP差错报 ·信息请求与回答报文 告报文。 ·掩码地址请求和回答报文 ·对具有特殊地址(如127.0.0.0或0.0.0.0)的数据 ·路由器询问和通告报文 报不发送ICMP差错报告报文。 ·源点抑制报文 111 11 4.4.2ICMP的应用举例 PNG的应用举例 PING(Packet InterNet Groper) .d:\workspacelcmd>ping mail.sina.com.cn ·PNG用来测试两个主机之间的连通性。 ·PNG使用了ICMP回送请求与回送回答报文。 5套背器据ma7 n310821617具有 ·PNG是应用层直接使用网络层ICMP的例子, 来自113.108.216.17的回复:字节=32时间=51msTT1=54 它没有通过运输层的TCP或LUDP。 来自113.108.216.17的回复:字节=32时间=71 ms TTL=54 来自113.108.216.17的回复:字节=32时间=52 ns TTL=54 来自113.108.216.17的回复:字节=32时间=179msT1=54 113.108216.17的Png统计信息: 数据包:已发送=4。已接收=4,丢失=0(0%丢失), 往返行程的估计时间(以毫秒为单位): 最短=51ms,最长=179ms,平均=88ms 11 2
2018/4/6 2 ICMP 差错报告报文共有 4 种 • 终点不可达 • 时间超过 • 参数问题 • 改变路由(重定向)(Redirect) ICMP 差错报告报文的数据字段的内容 首部 IP 数据报 ICMP 的 前 8 字节 装入 ICMP 报文的 IP 数据报 IP 数据报 首部 ICMP 差错报告报文 8 字节 收到的 IP 数据报 IP 数据报 首部 8 字节 ICMP 差错报告报文 IP 数据报的数据字段 不应发送 ICMP 差错报告报文的几种情况 • 对 ICMP 差错报告报文不再发送 ICMP 差错报告 报文。 • 对第一个分片的数据报片的所有后续数据报片都 不发送 ICMP 差错报告报文。 • 对具有多播地址的数据报都不发送 ICMP 差错报 告报文。 • 对具有特殊地址(如127.0.0.0 或 0.0.0.0)的数据 报不发送 ICMP 差错报告报文。 ICMP 询问报文有两种 • 回送请求和回答报文 • 时间戳请求和回答报文 下面的几种 ICMP 报文不再使用: • 信息请求与回答报文 • 掩码地址请求和回答报文 • 路由器询问和通告报文 • 源点抑制报文 4.4.2 ICMP 的应用举例 PING (Packet InterNet Groper) • PING 用来测试两个主机之间的连通性。 • PING 使用了 ICMP 回送请求与回送回答报文。 • PING 是应用层直接使用网络层 ICMP 的例子, 它没有通过运输层的 TCP 或UDP。 PING 的应用举例 • d:\workspace\cmd>ping mail.sina.com.cn 正在 Ping common7.dpool.sina.com.cn [113.108.216.17] 具有 32 字节的数据: 来自 113.108.216.17 的回复: 字节=32 时间=51ms TTL=54 来自 113.108.216.17 的回复: 字节=32 时间=71ms TTL=54 来自 113.108.216.17 的回复: 字节=32 时间=52ms TTL=54 来自 113.108.216.17 的回复: 字节=32 时间=179ms TTL=54 113.108.216.17 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 51ms,最长 = 179ms,平均 = 88ms
2018/4/6 4.4.2ICMP的应用举例 4.4.2ICMP的应用举例 Traceroute的应用举例 ·在Windows操作系统中这个命令是tracert.。 ·场过最多30个纸点型踪 ·到omeo74年eaem,cm1I3.0R261刀的路h: ·用来跟踪一个分组从源点到终点的路径。 ·它利用IP数据报中的TTL字段和ICMP时间超 2224s23s35s1031.S 过差错报告报文实现对从源点到终点的路径的跟 ·请求超时。 ·413552ms45s61.10.251245 踪。 :8 ÷7167sS6msS3s113.9%4,14 ·8151ms63ms59ms113.10k.23线I62 ·9161m101m47m5级6323218 ·1015963m163m11310s.2617 ·星军完成。 111 11 4.5互联网的路由选择协议 4.5.1有关路由选择协议的几个基本概念 ·4.5.】有关路由选择协议的几个基本概念 1.理想的路由算法 ·4.5.2内部网关协议RIP ①算法必须是正确的和完整的。 ·4.5.3内部网关协议OSPF ②算法在计算上应简单。 ·4.5.4外部网关协议BGP ③算法应能适应通信量和网络拓扑的变化,这就 ·4.5.5路由器的构成 是说,要有自适应性。 ④算法应具有稳定性。 ⑤算法应是公平的。 ⑧算法应是最佳的。 11 11 关于“最佳路由” 从路由算法的自适应性考虑 ·不存在一种绝对的最佳路由算法。 ·静态路由选择策略一即非自适应路由选择,其 ·所谓“最佳”只能是相对于某一种特定要求下得 特点是简单和开销较小,但不能及时适应网络状 出的较为合理的选择而己。 态的变化。 ·实际的路由选择算法,应尽可能接近于理想的算 ·动态路由选择策略一即自适应路由选择,其特 法。 点是能较好地适应网络状态的变化,但实现起来 较为复杂,开销也比较大。 ·路由选择是个非常复杂的问题 ·它是网络中的所有结点共同协调工作的结果。 ·路由选择的环境往往是不断变化的,而这种变化有时 无法事先知道。 41 11 3
2018/4/6 3 4.4.2 ICMP 的应用举例 Traceroute 的应用举例 • 在 Windows 操作系统中这个命令是 tracert。 • 用来跟踪一个分组从源点到终点的路径。 • 它利用 IP 数据报中的 TTL 字段和 ICMP 时间超 过差错报告报文实现对从源点到终点的路径的跟 踪。 4.4.2 ICMP 的应用举例 • d:\workspace\cmd>tracert mail.sina.com.cn • 通过最多 30 个跃点跟踪 • 到 common7.dpool.sina.com.cn [113.108.216.17]的路由: • 1 * * * 请求超时。 • 2 224 ms 23 ms 35 ms 10.3.1.5 • 3 * * * 请求超时。 • 4 135 ms 52 ms 45 ms 61.190.251.245 • 5 199 ms 62 ms 39 ms 61.132.167.121 • 6 146 ms 42 ms 56 ms 202.97.59.9 • 7 167 ms 56 ms 53 ms 113.96.4.14 • 8 151 ms 63 ms 59 ms 113.108.209.162 • 9 161 ms 101 ms 47 ms 58.63.232.18 • 10 159 ms 63 ms 163 ms 113.108.216.17 • 跟踪完成。 4.5 互联网的路由选择协议 • 4.5.1 有关路由选择协议的几个基本概念 • 4.5.2 内部网关协议 RIP • 4.5.3 内部网关协议 OSPF • 4.5.4 外部网关协议 BGP • 4.5.5 路由器的构成 4.5.1 有关路由选择协议的几个基本概念 1. 理想的路由算法 ① 算法必须是正确的和完整的。 ② 算法在计算上应简单。 ③ 算法应能适应通信量和网络拓扑的变化,这就 是说,要有自适应性。 ④ 算法应具有稳定性。 ⑤ 算法应是公平的。 ⑥ 算法应是最佳的。 关于“最佳路由” • 不存在一种绝对的最佳路由算法。 • 所谓“最佳”只能是相对于某一种特定要求下得 出的较为合理的选择而已。 • 实际的路由选择算法,应尽可能接近于理想的算 法。 • 路由选择是个非常复杂的问题 • 它是网络中的所有结点共同协调工作的结果。 • 路由选择的环境往往是不断变化的,而这种变化有时 无法事先知道。 从路由算法的自适应性考虑 • 静态路由选择策略——即非自适应路由选择,其 特点是简单和开销较小,但不能及时适应网络状 态的变化。 • 动态路由选择策略——即自适应路由选择,其特 点是能较好地适应网络状态的变化,但实现起来 较为复杂,开销也比较大
2018/4/6 2.分层次的路由选择协议 自治系统AS ·互联网采用分层次的路由选择协议。这是因为: (Autonomous System) ·()互联网的规模非常大。如果让所有的路由器知道 所有的网络应怎样到达,则这种路由表将非常大,处 ·自治系统AS的定义:在单一的技术管理下的一组路由 理起来也太花时间。而所有这些路由器之间交换路由 器,而这些路由器使用一种AS内部的路由选择协议和 信息所需的带宽就会使互联网的通信链路饱和。 共同的度量以确定分组在该AS内的路由,同时还使用 ·(2)许多单位不愿意外界了解自己单位网络的布局细 一种A$之间的路由选择协议用以确定分组在A$之间的 幕码李所閤的豫枭鞋接销谈辆王本部门内 路由。 ·现在对自治系统A$的定义是强调下面的事实:尽管一 个A$使用了多种内部路由选择协议和度量,但重要的 是一个AS对其他AS表现出的是一个单一的和一致的 路由选择策略。 11 11 自治系统AS 互联网有两大类路由选择协议 自治系统 自治系统 ·内部网关协议IGP (Interior Gateway Protocol) ·在一个自治系统内部使用的路由选择协议。 ·目前这类路由选择协议使用得最多,如RP和OSPF 办。 ·外部网关协议EGP(External Gateway Protocol) ·若源站和目的站处在不同的自治系统中,当数据报传 个自治系统的边界时,就需要使用一种协议将路 由选择信息传递到另一个自治系统中。这样的协议就 是外部网关协议EGP。 ·在外部网关协议中目前使用最多的是BGP4。 治系统 治秀鳞 11 自治系统和 这里要指出两点 内部网关协议、外部网关协议 ·互联网的早期RFC文档中未使用“路由器”而 自治系统A 自治系统B 是使用“网关”这一名词。但是在新的RFC文 用外调关协横 档中又使用了“路由器”这一名词。应当把这两 《蜘,BGP-4) 个术语当作同义词。 用内都同关持模 用内邮同关物液 (例0,RP) (例钩,O5PF) ·IGP和EGP是协议类别的名称。但RFC在使用 EGP这个名词时出现了一点混乱,因为最早的 一个外部网关协议的协议名字正好也是EGP。 自治系统之间的略由选择也叫做城间略由选择 因此在遇到名词EGP时,应弄清它是指旧的协 interdomain routing),在自治系统内部的路由选坪 议EGP还是指外部网关协议EGP这个类别。 叫徽罐内路由选择(intradomain routing)· 11 4
2018/4/6 4 2. 分层次的路由选择协议 • 互联网采用分层次的路由选择协议。这是因为: • (1) 互联网的规模非常大。如果让所有的路由器知道 所有的网络应怎样到达,则这种路由表将非常大,处 理起来也太花时间。而所有这些路由器之间交换路由 信息所需的带宽就会使互联网的通信链路饱和。 • (2) 许多单位不愿意外界了解自己单位网络的布局细 节和本部门所采用的路由选择协议(这属于本部门内 部的事情),但同时还希望连接到互联网上。 自治系统 AS (Autonomous System) • 自治系统 AS 的定义:在单一的技术管理下的一组路由 器,而这些路由器使用一种 AS 内部的路由选择协议和 共同的度量以确定分组在该 AS 内的路由,同时还使用 一种 AS 之间的路由选择协议用以确定分组在 AS之间的 路由。 • 现在对自治系统 AS 的定义是强调下面的事实:尽管一 个 AS 使用了多种内部路由选择协议和度量,但重要的 是一个 AS 对其他 AS 表现出的是一个单一的和一致的 路由选择策略。 自治系统 AS R1 R4 自治系统 R3 自治系统 自治系统 R2 自治系统 R1 互联网有两大类路由选择协议 • 内部网关协议 IGP (Interior Gateway Protocol) • 在一个自治系统内部使用的路由选择协议。 • 目前这类路由选择协议使用得最多,如 RIP 和 OSPF 协议。 • 外部网关协议 EGP (External Gateway Protocol) • 若源站和目的站处在不同的自治系统中,当数据报传 到一个自治系统的边界时,就需要使用一种协议将路 由选择信息传递到另一个自治系统中。这样的协议就 是外部网关协议 EGP。 • 在外部网关协议中目前使用最多的是 BGP-4。 自治系统和 内部网关协议、外部网关协议 用内部网关协议 (例如,RIP) 自治系统 自治系统 B A 用外部网关协议 (例如,BGP-4) R1 R2 用内部网关协议 (例如,OSPF) 自治系统之间的路由选择也叫做域间路由选择 (interdomain routing),在自治系统内部的路由选择 叫做域内路由选择 (intradomain routing) 。 这里要指出两点 • 互联网的早期 RFC 文档中未使用“路由器”而 是使用“网关”这一名词。但是在新的 RFC 文 档中又使用了“路由器”这一名词。应当把这两 个术语当作同义词。 • IGP 和 EGP 是协议类别的名称。但 RFC 在使用 EGP 这个名词时出现了一点混乱,因为最早的 一个外部网关协议的协议名字正好也是 EGP。 因此在遇到名词 EGP 时,应弄清它是指旧的协 议 EGP 还是指外部网关协议 EGP 这个类别
2018/4/6 互联网的路由选择协议 4.5.2内部网关协议RIP ·内部网关协议IGP:具体的协议有多种,如RIP 1.工作原理 和OSPF等. ·外部网关协议EGP:目前使用的协议就是BGP。 ·路由信息协议RIP(Routing Information Protocol) 是内部网关协议IGP中最先得到广泛使用的协 议。 互联网略由选渠协议】 ·RIP是一种分布式的、基于距离向量的路由选择 协议。 内部网关物议IGP) 外邮网关协议(EGP) ·RP协议要求网络中的每一个路由器都要维护从 RIP BGP 它自己到其他每一个目的网络的距离记录。 OSPF 11 1/ “距离”的定义 “距离”的定义 ·从一个路由器到直接连接的网络的距离定义为1。 ·RP认为一个好的路由就是它通过的路由器的数 ·从一个路由器到非直接连接的网络的距离定义为 目少,即“距离短”。 所经过的路由器数加1。 ·RIP允许一条路径最多只能包含15个路由器。 ·RIP协议中的“距离”也称为“跳数”hop ·“距离”的最大值为16时即相当于不可达。可 cout),因为每经过一个路由器,跳数就加1。 见RP只适用于小型互联网。 ·这里的“距离”实际上指的是“最短距离”。 ·RP不能在两个网络之间同时使用多条路由。 RP选择一个具有最少路由器的路由(即最短路 由),哪怕还存在另一条高速(低时延)但路由器 较多的路由。 111 11 RIP协议的三个特点 路由表的建立 ·()仅和相邻路由器交换信息。 ·路由器在刚刚开始工作时,只知道到直接连接的网 ·(②)交换的信息是当前本路由器所知道的全部信 络的距离(此距离定义为1)。它的路由表是空的。 息,即自己的路由表。 ·以后,每一个路由器也只和数目非常有限的相邻路 ·(3)按固定的时间间隔交换路由信息,例如,每 由器交换并更新路由信息。 隔30秒。当网络拓扑发生变化时,路由器也及 ·经过若干次更新后,所有的路由器最终都会知道到 时向相邻路由器通告拓扑变化后的路由信息。 达本自治系统中任何一个网络的最短距离和下一跳 路由器的地址。 ·RIP协议的收敛(convergence)过程较快。“收敛” 就是在自治系统中所有的结点都得到正确的路由选 择信息的过程。 5
2018/4/6 5 互联网的路由选择协议 • 内部网关协议 IGP:具体的协议有多种,如 RIP 和 OSPF 等。 • 外部网关协议 EGP:目前使用的协议就是 BGP。 RIP OSPF 互联网路由选择协议 BGP 内部网关协议 (IGP) 外部网关协议 (EGP) 4.5.2 内部网关协议 RIP 1. 工作原理 • 路由信息协议 RIP (Routing Information Protocol) 是内部网关协议 IGP 中最先得到广泛使用的协 议。 • RIP 是一种分布式的、基于距离向量的路由选择 协议。 • RIP 协议要求网络中的每一个路由器都要维护从 它自己到其他每一个目的网络的距离记录。 “距离”的定义 • 从一个路由器到直接连接的网络的距离定义为 1。 • 从一个路由器到非直接连接的网络的距离定义为 所经过的路由器数加 1。 • RIP 协议中的“距离”也称为“跳数”(hop count),因为每经过一个路由器,跳数就加 1。 • 这里的“距离”实际上指的是“最短距离”。 “距离”的定义 • RIP 认为一个好的路由就是它通过的路由器的数 目少,即“距离短”。 • RIP 允许一条路径最多只能包含 15 个路由器。 • “距离”的最大值为 16 时即相当于不可达。可 见 RIP 只适用于小型互联网。 • RIP 不能在两个网络之间同时使用多条路由。 RIP 选择一个具有最少路由器的路由(即最短路 由),哪怕还存在另一条高速(低时延)但路由器 较多的路由。 RIP 协议的三个特点 • (1) 仅和相邻路由器交换信息。 • (2) 交换的信息是当前本路由器所知道的全部信 息,即自己的路由表。 • (3) 按固定的时间间隔交换路由信息,例如,每 隔 30 秒。当网络拓扑发生变化时,路由器也及 时向相邻路由器通告拓扑变化后的路由信息。 路由表的建立 • 路由器在刚刚开始工作时,只知道到直接连接的网 络的距离(此距离定义为 1)。它的路由表是空的。 • 以后,每一个路由器也只和数目非常有限的相邻路 由器交换并更新路由信息。 • 经过若干次更新后,所有的路由器最终都会知道到 达本自治系统中任何一个网络的最短距离和下一跳 路由器的地址。 • RIP 协议的收敛 (convergence) 过程较快。“收敛” 就是在自治系统中所有的结点都得到正确的路由选 择信息的过程