计算机网络(第 6 版)

Similar documents
Microsoft PowerPoint CN 19

Microsoft PowerPoint - Lecture18

最长前缀匹配举例 收到的分组的目的地址 D = 路由表中的项目 : / /25 2 查找路由表中的第 1 个项目 : 第 1 个项目 /22 的掩码 M 有 22 个连续的 1 M =

Chapter 4- 网络层 (4)-2017

Chapter #

PowerPoint Presentation

第 7 章 下 一 代 网 际 协 议 IPv6 141 足 的 措 施 只 能 是 权 宜 之 计 (3) 路 由 表 膨 胀 早 期 IPv4 的 地 址 结 构 也 造 成 了 路 由 表 的 容 量 过 大 IPv4 地 址 早 期 为 网 络 号 + 主 机 号 结 构, 后 来 引 入

动态路由选择协议、RIP

C. 政府标准 D. 标准化的高层协议 9 下列哪项不是 UDP 协议的特性? ( ) A. 提供可靠服务 B. 提供无连接服务 C. 提供端到端服务 D. 提供全双工服务 10 路由选择协议位于 ( ) A. 物理层 B. 数据链路层 C. 网络层 D. 应用层 11 在 差错控制方式中, 只会重

財金資訊-80期.indd

PowerPoint Presentation

Microsoft PowerPoint - CH06网络互连.ppt

Computer Networks and Internets

04.计算机网络-2017版-阮晓龙-第4章:网络层

Chapter 4- 网络层 (3)-2017

ebook67-10

untitled

1 1 2 OSPF RIP 2

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

计算机网络概论

一、选择题

计算机网络(第 6 版)

end to end 7.2 OSI 7 OSI 3 A B 7.2 Packet Routing LAN WAN

<4D F736F F F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

计算机网络(第 6 版)

实施生成树

MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP #

第3章

目录 1 IP 地址配置命令 IP 地址配置命令 display ip interface display ip interface brief ip address i

动态路由选择协议、RIP

路由器基本配置

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

目录 1 IP 地址 IP 地址配置命令 display ip interface display ip interface brief ip address 1-5 i

untitled

Computer Networks Lecture 8

第7章 路由器与IP交换技术

第4章网络层_2_.doc

通过动态路由协议实现链路备份

穨CAS1042快速安速說明.doc

计算机网络(第 6 版)

Microsoft PowerPoint - 数据通信-ch1.ppt

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

2. 要求学生掌握的基本概念 理论 原理了解计算机网络的形成 发展过程 掌握计算机网络的定义 重要功能与分类方法, 计算机网络的性能及衡量标准和计算机网络体系结构 3. 教学重点和难点教学重点是计算机网络的体系结构, 教学难点是计算机网络协议 (1) 计算机网络在信息时代中的作用 (2) 因特网概述

Microsoft Word

ch09.PDF

工程师培训

IS-IS路由协议中文教程v1

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

¶C¶L§§¬_™¨ A.PDF

ebook67-9

计算机网络

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 计 算 机 网 络 在

飞鱼星多WAN防火墙路由器用户手册

IP505SM_manual_cn.doc

<B1B1BEA9B9E2BBB7D0C2CDF8BFC6BCBCB9C9B7DDD3D0CFDEB9ABCBBEB4B43F3F12FB6CB293>

active phisical rp address: backup phisical rp address: 截取部分 TOPO 图说明到 不通的问题 : internet internet tengige 0/0/0/0 tengige

Microsoft Word - chp20路由重分布.doc

ebook67-1

第 1 部分 : 识别不同类型的 IPv6 地址 在第 1 部分, 您将复习 IPv6 地址的特征并识别 IPv6 地址的不同类型 第 1 步 : 查看 IPv6 地址的不同类型 一个 IPv6 地址的长度为 128 位 它通常表示为 32 个十六进制字符 每个十六进制字符相当于 4 位 (4 x

09.实验九:内部网关协议RIP与OSPF


NNM_Advance_DS_FNL.qxd

TCP/IP网络协议分析复习题答案,

网络层.pptx

第3章 计算机网络体系结构

PowerPoint 演示文稿

《计算机网络》专业术语目录

Segment Routing MPLS数据平面 中文版

9 Internet 10 Internet

ebook177-1

epub

( CIP) /,. - :, ISBN TP312 CIP ( 2004 ) : ( ) : : : : /16 : 21 : 347 : : : I

Microsoft Word - vlsm and ip unnumbered.doc

《计算机网络》本科理论课程教学大纲

基于OPNET的动态路由协议仿真研究

<4D F736F F F696E74202D20CDF8BCCABBA5C1ACD3EBD2F2CCD8CDF8>

ebook67-1

2 TCP/IP 1 Telnet FTP SMTP SNMP L A N F T P 1-2 FTP FTP FTP TCP IP 1-2 FTP F T P F T P Te l n e t T C P I P 1-2 U N I X F T P T C P I P T C P

计算机网络概论

功 能 和 优 势 业 界 知 名 的 保 修 服 务 - MLD 侦 听 : 将 IPv6 组 播 流 量 转 发 到 合 适 的 接 口 ; 避 免 IPv6 组 播 流 量 泛 洪 网 络 - IPv6 ACL/QoS: 支 持 ACL 和 IPv6 网 络 流 量 QoS - IPv6 就

计 算 机 网 络 基 础 任 务 教 程 () 组 成 计 算 机 网 络 的 每 台 计 算 机 都 是 独 立 的 即 计 算 机 之 间 没 有 明 显 的 主 从 关 系, 每 台 计 算 机 可 以 连 网 工 作, 也 可 以 不 连 网 工 作 (2) 建 立 计 算 机 网 络 的

IP-Routing-05.pdf

目 彔 1. 准 备 工 作 登 彔 设 置 功 能 说 明 实 时 监 控 基 本 控 制 功 能 设 置 画 质 调 节 彔 像 与 抓 拍

Microsoft PowerPoint - 12-CompNet(I)

C3_ppt.PDF


ebook

基于点到点链路的 OSPF 的初始配置

IPv6接入技术

TCP/IP概述

IEEE

eigrp

自顶向下网络设计(第二版)

三级计算机网络技术

自顶向下网络设计(第二版)

本试卷满分为 50 分, 考试时间为 90 分钟 二 考试方式考试方式为闭卷 笔试 三 试卷结构名词解释 简答题和论述题分别占 20% 60% 和 20% 左右 Ⅲ. 考查内容一 刑事科学技术概述 1. 刑事科学技术的概念 2. 刑事科学技术的研究对象 3. 刑事科学技术的研究内容 4. 国内外刑事

...31 (POTS) Internet VPN VPN VPN ATM ( ) CPE VPN L2TP PPTP ( ) IPSec ( ) VPN (PP-VPNs) MPLS VPN BGP/MPLS VPN RFC2547bis ( ) RFC 2547bis VPN RFC 2547b

Transcription:

计算机网络 ( 第 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 报文的格式 前 4 个字节都是一样的 0 8 16 31 类型代码检验和 ( 这 4 个字节取决于 ICMP 报文的类型 ) ICMP 的数据部分 ( 长度取决于类型 ) ICMP 报文 首部 数据部分 IP 数据报

4.4.1 ICMP 报文的种类 ICMP 报文的种类有两种, 即 ICMP 差错报告报文和 ICMP 询问报文 ICMP 报文的前 4 个字节是统一的格式, 共有三个字段 : 即类型 代码和检验和 接着的 4 个字节的内容与 ICMP 的类型有关

ICMP 差错报告报文共有 4 种 终点不可达 时间超过 参数问题 改变路由 ( 重定向 )(Redirect)

ICMP 差错报告报文的数据字段的内容 IP 数据报的数据字段 收到的 IP 数据报 IP 数据报首部 8 字节 ICMP 的前 8 字节 IP 数据报首部 8 字节 ICMP 差错报告报文 首部 ICMP 差错报告报文 IP 数据报 装入 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

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. 理想的路由算法 1 算法必须是正确的和完整的 2 算法在计算上应简单 3 算法应能适应通信量和网络拓扑的变化, 这就是说, 要有自适应性 4 算法应具有稳定性 5 算法应是公平的 6 算法应是最佳的

关于 最佳路由 不存在一种绝对的最佳路由算法 所谓 最佳 只能是相对于某一种特定要求下得出的较为合理的选择而已 实际的路由选择算法, 应尽可能接近于理想的算法 路由选择是个非常复杂的问题 它是网络中的所有结点共同协调工作的结果 路由选择的环境往往是不断变化的, 而这种变化有时无法事先知道

从路由算法的自适应性考虑 静态路由选择策略 即非自适应路由选择, 其特点是简单和开销较小, 但不能及时适应网络状态的变化 动态路由选择策略 即自适应路由选择, 其特点是能较好地适应网络状态的变化, 但实现起来较为复杂, 开销也比较大

2. 分层次的路由选择协议 互联网采用分层次的路由选择协议 这是因为 : (1) 互联网的规模非常大 如果让所有的路由器知道所有的网络应怎样到达, 则这种路由表将非常大, 处理起来也太花时间 而所有这些路由器之间交换路由信息所需的带宽就会使互联网的通信链路饱和 (2) 许多单位不愿意外界了解自己单位网络的布局细节和本部门所采用的路由选择协议 ( 这属于本部门内部的事情 ), 但同时还希望连接到互联网上

自治系统 AS (Autonomous System) 自治系统 AS 的定义 : 在单一的技术管理下的一组路由器, 而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由, 同时还使用一种 AS 之间的路由选择协议用以确定分组在 AS 之间的路由 现在对自治系统 AS 的定义是强调下面的事实 : 尽管一个 AS 使用了多种内部路由选择协议和度量, 但重要的是一个 AS 对其他 AS 表现出的是一个单一的和一致的路由选择策略

自治系统 AS 自治系统 R1 R1 R2 自治系统 R3 自治系统 R4 自治系统

互联网有两大类路由选择协议 内部网关协议 IGP (Interior Gateway Protocol) 在一个自治系统内部使用的路由选择协议 目前这类路由选择协议使用得最多, 如 RIP 和 OSPF 协议 外部网关协议 EGP (External Gateway Protocol) 若源站和目的站处在不同的自治系统中, 当数据报传到一个自治系统的边界时, 就需要使用一种协议将路由选择信息传递到另一个自治系统中 这样的协议就是外部网关协议 EGP 在外部网关协议中目前使用最多的是 BGP-4

自治系统和内部网关协议 外部网关协议 自治系统 A 用内部网关协议 ( 例如,RIP) R 用外部网关协议 1 R 2 ( 例如,BGP-4) 自治系统 B 用内部网关协议 ( 例如,OSPF) 自治系统之间的路由选择也叫做域间路由选择 (interdomain routing), 在自治系统内部的路由选择叫做域内路由选择 (intradomain routing)

这里要指出两点 互联网的早期 RFC 文档中未使用 路由器 而是使用 网关 这一名词 但是在新的 RFC 文档中又使用了 路由器 这一名词 应当把这两个术语当作同义词 IGP 和 EGP 是协议类别的名称 但 RFC 在使用 EGP 这个名词时出现了一点混乱, 因为最早的一个外部网关协议的协议名字正好也是 EGP 因此在遇到名词 EGP 时, 应弄清它是指旧的协议 EGP 还是指外部网关协议 EGP 这个类别

互联网的路由选择协议 内部网关协议 IGP: 具体的协议有多种, 如 RIP 和 OSPF 等 外部网关协议 EGP: 目前使用的协议就是 BGP 互联网路由选择协议 内部网关协议 (IGP) RIP OSPF 外部网关协议 (EGP) BGP

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) 过程较快 收敛 就是在自治系统中所有的结点都得到正确的路由选择信息的过程

2. 距离向量算法 路由器收到相邻路由器 ( 其地址为 X) 的一个 RIP 报文 : (1) 先修改此 RIP 报文中的所有项目 : 把 下一跳 字段中的地址都改为 X, 并把所有的 距离 字段的值加 1 (2) 对修改后的 RIP 报文中的每一个项目, 重复以下步骤 : 若项目中的目的网络不在路由表中, 则把该项目加到路由表中 否则若下一跳字段给出的路由器地址是同样的, 则把收到的项目替换原路由表中的项目 否则若收到项目中的距离小于路由表中的距离, 则进行更新, 否则, 什么也不做 (3) 若 3 分钟还没有收到相邻路由器的更新路由表, 则把此相邻路由器记为不可达路由器, 即将距离置为 16( 表示不可达 ) (4) 返回

2. 距离向量算法 距离向量算法的基础就是 Bellman-Ford 算法 ( 或 Ford-Fulkerson 算法 ) 这种算法的要点是这样的 : 设 X 是结点 A 到 B 的最短路径上的一个结点 若把路径 A B 拆成两段路径 A X 和 X B, 则每一段路径 A X 和 X B 也都分别是结点 A 到 X 和结点 X 到 B 的最短路径

路由器之间交换信息与路由表更新 RIP 协议让互联网中的所有路由器都和自己的相邻路由器不断交换路由信息, 并不断更新其路由表, 使得从每一个路由器到每一个目的网络的路由都是最短的 ( 即跳数最少 ) 虽然所有的路由器最终都拥有了整个自治系统的全局路由信息, 但由于每一个路由器的位置不同, 它们的路由表当然也应当是不同的

例 4-5 已知路由器 R 6 有表 4-9(a) 所示的路由表 现在收到相邻路由器 R 4 发来的路由更新信息, 如表 4-9(b) 所示 试更新路由器 R 6 的路由表 表 4-9(a) 路由器 R 6 的路由表 目的网络距离下一跳路由器 Net2 3 R 4 Net3 4 R 5 表 4-9(d) 路由器 R 6 更新后的路由表 目的网络距离下一跳路由器 Net1 4 R 4 Net2 5 R 4 Net3 2 R 4 计算更新 表 4-9(b) R 4 发来的路由更新信息 目的网络距离下一跳路由器 Net1 3 R 1 Net2 4 R 2 Net3 1 直接交付 距离加 1 表 4-9(c) 修改后的表 4-9(b) 目的网络距离下一跳路由器 Net1 4 R 4 Net2 5 R 4 Net3 2 R 4

例 路由表更新 从 C 来的 RIP 报文 Net2 4 Net3 8 Net6 4 Net8 3 Net9 5 旧路由表 Net1 7 A Net2 2 C Net6 8 F Net8 4 E Net9 4 F 增加跳数以后从 C 来的 RIP 报文 Net2 5 Net3 9 Net6 5 Net8 4 Net9 6 更新算法 Net1: 没有新信息, 不变 Net2: 相同的下一跳, 替换 Net3: 一条新路由, 增加 Net6: 不同的下一跳, 新跳数小, 替换 Net8: 不同的下一跳, 跳数相同, 不变 Net9: 不同的下一跳, 新跳数大, 不变 新路由表 Net1 7 A Net2 5 C Net3 9 C Net6 5 C Net8 4 E Net9 4 F

3. RIP2 协议的报文格式 4 字节地址族标识符 路由标记 命令 4 字节版本 必为 0 网络地址子网掩码下一跳路由器地址 距离 (1-16) IP 首部 UDP 首部 首部 路由部分 RIP 报文 路由信息 (20 字节 / 路由 ) 可重复出现最多 25 个 IP 数据报 UDP 用户数据报

RIP2 报文 RIP2 报文由首部和路由部分组成 RIP2 报文中的路由部分由若干个路由信息组成 每个路由信息需要用 20 个字节 地址族标识符 ( 又称为地址类别 ) 字段用来标志所使用的地址协议 路由标记填入自治系统的号码, 这是考虑到 RIP 有可能收到本自治系统以外的路由选择信息 再后面指出某个网络地址 该网络的子网掩码 下一跳路由器地址以及到此网络的距离

RIP2 报文 一个 RIP 报文最多可包括 25 个路由, 因而 RIP 报文的最大长度是 4 20 25 504 字节 如超过, 必须再用一个 RIP 报文来传送 RIP2 具有简单的鉴别功能 若使用鉴别功能, 则将原来写入第一个路由信息 (20 个字节 ) 的位置用作鉴别 在鉴别数据之后才写入路由信息, 但这时最多只能再放入 24 个路由信息

好消息传播得快, 坏消息传播得慢 RIP 协议特点 : 好消息传播得快, 坏消息传播得慢 RIP 存在的一个问题 : 当网络出现故障时, 要经过比较长的时间 ( 例如数分钟 ) 才能将此信息传送到所有的路由器

正常情况 1 1 1 2 R 1 网 1 网 2 网 3 R 1 R 2 1 表示 从本路由器到网 1 表示 直接交付 1 表示 距离是 1 R 1 说 : 我到网 1 的距离是 1, 是直接交付

正常情况 1 1 1 2 R 1 网 1 网 2 网 3 R 1 1 表示 从本路由器到网 1 R 1 表示经过 R 1 R 2 2 表示 距离是 2 R 2 说 : 我到网 1 的距离是 2, 是经过 R 1

正常情况 1 1 1 2 R 1 网 1 网 2 网 3 R 1 R 2 网 1 网 2 网 3 网 1 出了故障 R 1 1 16 R 2 1 2 R 1 R 1 说 : 我到网 1 的距离是 16 ( 表示无法到达 ), 是直接交付 但 R 2 在收到 R 1 的更新报文之前, 还发送原来的报文, 因为这时 R 2 并不知道 R 1 出了故障

正常情况 1 1 1 2 R 1 网 1 网 2 网 3 R 1 R 2 网 1 网 2 网 3 网 1 出了故障 R 1 1 16 1 3 R 2 R 2 1 2 R 1 R 1 收到 R 2 的更新报文后, 误认为可经过 R 2 到达网 1, 于是更新自己的路由表, 说 : 我到网 1 的距离是 3, 下一跳经过 R 2 然后将此更新信息发送给 R 2

正常情况 1 1 1 2 R 1 网 1 网 2 网 3 R 1 R 2 网 1 网 2 网 3 网 1 出了故障 R 1 1 16 R 2 1 2 R 1 1 3 R 2 1 4 R 1 R 2 以后又更新自己的路由表为 1, 4, R 1, 表明 我到网 1 距离是 4, 下一跳经过 R 1

这就是好消息传播得快, 而坏消息传播得慢 网络出故障的 1 1 1 2 R 传播时间往往需要较长的时间 ( 例如数分钟 ) 这是 1 RIP 的一网 1 网 2 网 3 个主要缺点 正常情况 R 1 R 2 网 1 网 2 网 3 网 1 出了故障 R 1 1 16 1 3 R 2 1 5 R 2 R 2 1 2 R 1 1 4 R 1 1 16 R 2 1 16 R 1 这样不断更新下去, 直到 R 1 和 R 2 到网 1 的距离都增大到 16 时,R 1 和 R 2 才知道网 1 是不可达的

RIP 协议的优缺点 优点 : 实现简单, 开销较小 缺点 : RIP 限制了网络的规模, 它能使用的最大距离为 15 (16 表示不可达 ) 路由器之间交换的路由信息是路由器中的完整路由表, 因而随着网络规模的扩大, 开销也就增加 坏消息传播得慢, 使更新过程的收敛时间过长

4.5.3 内部网关协议 OSPF 开放最短路径优先 OSPF (Open Shortest Path First) 是为克服 RIP 的缺点在 1989 年开发出来的 OSPF 的原理很简单, 但实现起来却较复杂

1. OSPF 协议的基本特点 开放 表明 OSPF 协议不是受某一家厂商控制, 而是公开发表的 最短路径优先 是因为使用了 Dijkstra 提出的最短路径算法 SPF 采用分布式的链路状态协议 (link state protocol) 注意 :OSPF 只是一个协议的名字, 它并不表示其他的路由选择协议不是 最短路径优先

三个要点 向本自治系统中所有路由器发送信息, 这里使用的方法是洪泛法 发送的信息就是与本路由器相邻的所有路由器的链路状态, 但这只是路由器所知道的部分信息 链路状态 就是说明本路由器都和哪些路由器相邻, 以及该链路的 度量 (metric) 只有当链路状态发生变化时, 路由器才用洪泛法向所有路由器发送此信息

链路状态数据库 (link-state database) 由于各路由器之间频繁地交换链路状态信息, 因此所有的路由器最终都能建立一个链路状态数据库 这个数据库实际上就是全网的拓扑结构图, 它在全网范围内是一致的 ( 这称为链路状态数据库的同步 ) OSPF 的链路状态数据库能较快地进行更新, 使各个路由器能及时更新其路由表 OSPF 的更新过程收敛得快是其重要优点

OSPF 的区域 (area) 为了使 OSPF 能够用于规模很大的网络,OSPF 将一个自治系统再划分为若干个更小的范围, 叫做区域 每一个区域都有一个 32 位的区域标识符 ( 用点分十进制表示 ) 区域也不能太大, 在一个区域内的路由器最好不超过 200 个

OSPF 划分为两种不同的区域 至其他自治系统 自治系统 AS 主干区域 0.0.0.0 网 1 R 1 R 3 R 5 R 6 R 7 网 6 R 9 R 2 网 2 R 4 网 7 网 3 网 5 R 8 网 8 网 4 区域 0.0.0.1 区域 0.0.0.3 区域 0.0.0.2

划分区域 划分区域的好处就是将利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统, 这就减少了整个网络上的通信量 在一个区域内部的路由器只知道本区域的完整网络拓扑, 而不知道其他区域的网络拓扑的情况 OSPF 使用层次结构的区域划分 在上层的区域叫做主干区域 (backbone area) 主干区域的标识符规定为 0.0.0.0 主干区域的作用是用来连通其他在下层的区域

主干路由器 至其他自治系统 自治系统 AS 主干区域 0.0.0.0 网 1 R 1 R 3 R 5 R 6 R 7 网 6 R 9 R 2 网 2 R 4 网 7 网 3 网 5 R 8 网 8 网 4 区域 0.0.0.1 区域 0.0.0.3 区域 0.0.0.2

区域边界路由器 至其他自治系统 自治系统 AS 主干区域 0.0.0.0 网 1 R 1 R 3 R 5 R 6 R 7 网 6 R 9 R 2 网 2 R 4 网 7 网 3 网 5 R 8 网 8 网 4 区域 0.0.0.1 区域 0.0.0.3 区域 0.0.0.2

OSPF 直接用 IP 数据报传送 OSPF 不用 UDP 而是直接用 IP 数据报传送 OSPF 构成的数据报很短 这样做可减少路由信息的通信量 数据报很短的另一好处是可以不必将长的数据报分片传送 但分片传送的数据报只要丢失一个, 就无法组装成原来的数据报, 而整个数据报就必须重传

OSPF 的其他特点 OSPF 对不同的链路可根据 IP 分组的不同服务类型 TOS 而设置成不同的代价 因此,OSPF 对于不同类型的业务可计算出不同的路由 如果到同一个目的网络有多条相同代价的路径, 那么可以将通信量分配给这几条路径 这叫做多路径间的负载平衡 所有在 OSPF 路由器之间交换的分组都具有鉴别的功能 支持可变长度的子网划分和无分类编址 CIDR 每一个链路状态都带上一个 32 位的序号, 序号越大状态就越新

OSPF 分组 位 0 8 16 31 版 本 类 型 分 组 长 度 路 由 器 标 识 符 区 域 标 识 符 检验和 鉴 别 类 型 鉴 别 鉴 别 24 字节 OSPF 分组首部 类型 1 至类型 5 的 OSPF 分组 IP 数据报首部 OSPF 分组 IP 数据报 OSPF 分组用 IP 数据报传送

2. OSPF 的五种分组类型 类型 1, 问候 (Hello) 分组 类型 2, 数据库描述 (Database Description) 分组 类型 3, 链路状态请求 (Link State Request) 分组 类型 4, 链路状态更新 (Link State Update) 分组, 用洪泛法对全网更新链路状态 类型 5, 链路状态确认 (Link State Acknowledgment) 分组

OSPF 的基本操作 确定可达性 达到数据库的同步 新情况下的同步 问候问候数据库描述数据库描述数据库描述数据库描述链路状态请求链路状态更新链路状态确认

OSPF 使用可靠的洪泛法发送更新分组 t 1 更新报文 R t 2 R t 3 R t t 4 R ACK 报文

OSPF 的其他特点 OSPF 还规定每隔一段时间, 如 30 分钟, 要刷新一次数据库中的链路状态 由于一个路由器的链路状态只涉及到与相邻路由器的连通状态, 因而与整个互联网的规模并无直接关系 因此当互联网规模很大时,OSPF 协议要比距离向量协议 RIP 好得多 OSPF 没有 坏消息传播得慢 的问题, 据统计, 其响应网络变化的时间小于 100 ms

指定的路由器 多点接入的局域网采用了指定的路由器 (designated router) 的方法, 使广播的信息量大大减少 指定的路由器代表该局域网上所有的链路向连接到该网络上的各路由器发送状态信息

4.5.4 外部网关协议 BGP BGP 是不同自治系统的路由器之间交换路由信息的协议 BGP 较新版本是 2006 年 1 月发表的 BGP-4 (BGP 第 4 个版本 ), 即 RFC 4271 ~ 4278 可以将 BGP-4 简写为 BGP

BGP 使用环境不同 互联网的规模太大, 使得自治系统之间路由选择非常困难 对于自治系统之间的路由选择, 要寻找最佳路由是很不现实的 当一条路径通过几个不同 AS 时, 要想对这样的路径计算出有意义的代价是不太可能的 比较合理的做法是在 AS 之间交换 可达性 信息 自治系统之间的路由选择必须考虑有关策略 因此, 边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由 ( 不能兜圈子 ), 而并非要寻找一条最佳路由

BGP 发言人 每一个自治系统的管理员要选择至少一个路由器 作为该自治系统的 BGP 发言人 (BGP speaker) 一般说来, 两个 BGP 发言人都是通过一个共享网络连接在一起的, 而 BGP 发言人往往就是 BGP 边界路由器, 但也可以不是 BGP 边界路由器

BGP 交换路由信息 一个 BGP 发言人与其他自治系统中的 BGP 发言人要交换路由信息, 就要先建立 TCP 连接, 然后在此连接上交换 BGP 报文以建立 BGP 会话 (session), 利用 BGP 会话交换路由信息 使用 TCP 连接能提供可靠的服务, 也简化了路由选择协议 使用 TCP 连接交换路由信息的两个 BGP 发言人, 彼此成为对方的邻站 (neighbor) 或对等站 (peer)

BGP 发言人和自治系统 AS 的关系 AS 1 BGP 发言人 BGP 发言人 AS 2 BGP 发言人 BGP 发言人 AS 4 AS 3 BGP 发言人 AS 5

AS 的连通图举例 BGP 所交换的网络可达性的信息就是要到达某个网络所要经过的一系列 AS 当 BGP 发言人互相交换了网络可达性的信息后, 各 BGP 发言人就根据所采用的策略从收到的路由信息中找出到达各 AS 的较好路由 AS 1 AS 2 AS 3 AS 4 AS 5

BGP 发言人交换路径向量 自治系统 AS 2 的 BGP 发言人通知主干网 AS 1 的 BGP 发言人 : 要到达网络 N 1 N 2 N 3 和 N 4 可经过 AS 2 主干网 (AS 1 ) 地区 ISP (AS 2 ) 地区 ISP (AS 3 ) 本地 ISP(AS 4 ) N 1, N 2 本地 ISP(AS 5 ) N 3, N 4 本地 ISP(AS 6 ) N 5 本地 ISP(AS 7 ) N 6, N 7

BGP 发言人交换路径向量 主干网还可发出通知 : 要到达网络 N 5 N 6 和 N 7 可沿路径 (AS 1, AS 3 ) 主干网 (AS 1 ) 地区 ISP (AS 2 ) 地区 ISP (AS 3 ) 本地 ISP(AS 4 ) N 1, N 2 本地 ISP(AS 5 ) N 3, N 4 本地 ISP(AS 6 ) N 5 本地 ISP(AS 7 ) N 6, N 7

BGP 协议的特点 BGP 协议交换路由信息的结点数量级是自治系统数的量级, 这要比这些自治系统中的网络数少很多 每一个自治系统中 BGP 发言人 ( 或边界路由器 ) 的数目是很少的 这样就使得自治系统之间的路由选择不致过分复杂

BGP 协议的特点 BGP 支持 CIDR, 因此 BGP 的路由表也就应当包括目的网络前缀 下一跳路由器, 以及到达该目的网络所要经过的各个自治系统序列 在 BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表 但以后只需要在发生变化时更新有变化的部分 这样做对节省网络带宽和减少路由器的处理开销都有好处

BGP-4 共使用四种报文 (1) 打开 (OPEN) 报文, 用来与相邻的另一个 BGP 发言人建立关系 (2) 更新 (UPDATE) 报文, 用来发送某一路由的信息, 以及列出要撤消的多条路由 (3) 保活 (KEEPALIVE) 报文, 用来确认打开报文和周期性地证实邻站关系 (4) 通知 (NOTIFICATION) 报文, 用来发送检测到的差错

BGP 报文具有通用首部 字节 16 2 1 标记长度 类型 BGP 报文通用首部 BGP 报文主体部分 TCP 首部 BGP 报文 IP 首部 TCP 报文

4.5.5 路由器的构成 路由器是一种典型的网络层设备 路由器是互联网中的关键设备 路由器的主要作用是 : 连通不同的网络 选择信息传送的线路 选择通畅快捷的近路, 能大大提高通信速度, 减轻网络系统通信负荷, 节约网络系统资源, 提高网络系统畅通率, 从而让网络系统发挥出更大的效益来

1. 路由器的结构 路由器是一种具有多个输入端口和多个输出端口的专用计算机, 其任务是转发分组 也就是说, 将路由器某个输入端口收到的分组, 按照分组要去的目的地 ( 即目的网络 ), 把该分组从路由器的某个合适的输出端口转发给下一跳路由器 下一跳路由器也按照这种方法处理分组, 直到该分组到达终点为止 路由器的转发分组正是网络层的主要工作

典型的路由器的结构 图中数字表示相应层次的构件 : 3 网络层 2 数据链路层 1 物理层 路由选择处理机 路由选择协议 路由表 路由选择 输入端口 输出端口 1 2 3 分组处理 3 2 1 输入端口 转发表 输出端口 分组转发 1 2 3 交换结构 3 2 1 课件制作人 : 谢希仁

典型的路由器的结构 整个的路由器结构可划分为两大部分 : 路由选择部分 分组转发部分 路由选择部分 也叫做控制部分, 其核心构件是路由选择处理机 路由选择处理机的任务是根据所选定的路由选择协议构造出路由表, 同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表

典型的路由器的结构 分组转发部分由三部分组成 : 交换结构 (switching fabric): 又称为交换组织, 其作用是根据转发表 (forwarding table) 对分组进行处理 一组输入端口 一组输出端口 ( 请注意 : 这里的端口就是硬件接口 )

转发 和 路由选择 的区别 转发 (forwarding) 就是路由器根据转发表将用户的 IP 数据报从合适的端口转发出去 路由选择 (routing) 则是按照分布式算法, 根据从各相邻路由器得到的关于网络拓扑的变化情况, 动态地改变所选择的路由 路由表是根据路由选择算法得出的 而转发表是从路由表得出的 在讨论路由选择的原理时, 往往不去区分转发表和路由表的区别

输入端口对线路上收到的分组的处理 路由器的输入端口里面装有物理层 数据链路层和网络层的处理模块 数据链路层剥去帧首部和尾部后, 将分组送到网络层的队列中排队等待处理 这会产生一定的时延 输入端口中的查找和转发功能在路由器的交换功能中是最重要的

输入端口对线路上收到的分组的处理 输入端口的处理 从线路接收分组 物理层处理 数据链路层处理 网络层处理分组排队 查表和转发 交换结构

输出端口将交换结构传送来的分组发送到线路 输出端口里面装有物理层 数据链路层和网络层的处理模块 输出端口从交换结构接收分组, 然后把它们发送到路由器外面的线路上 在网络层的处理模块中设有一个缓冲区 ( 队列 ) 当交换结构传送过来的分组的速率超过输出链路的发送速率时, 来不及发送的分组就必须暂时存放在这个队列中 数据链路层处理模块将分组加上链路层的首部和尾部, 交给物理层后发送到外部线路

输出端口将交换结构传送来的分组发送到线路 输出端口的处理 交换结构 网络层处理分组排队 缓存管理 数据链路层处理 物理层处理 向线路发送分组

分组丢弃 若路由器处理分组的速率赶不上分组进入队列的速率, 则队列的存储空间最终必定减少到零, 这就使后面再进入队列的分组由于没有存储空间而只能被丢弃 这种现象叫做溢出 路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因

2. 交换结构 交换结构是路由器的关键构件 正是这个交换结构把分组从一个输入端口转移到某个合适的输出端口 实现交换有多种方法 常用交换方法有三种 : 通过存储器 通过总线 通过纵横交换结构

2. 交换结构 通过存储器 当路由器的某个输入端口收到一个分组时, 就用中断方式通知路由选择处理机 然后分组就从输入端口复制到存储器中 路由器处理机从分组首部提取目的地址, 查找路由表, 再将分组复制到合适的输出端口的缓存中 若存储器的带宽 ( 读或写 ) 为每秒 M 个分组, 那么路由器的交换速率 ( 即分组从输入端口传送到输出端口的速率 ) 一定小于 M/2

2. 交换结构 通过总线 数据报从输入端口通过共享的总线直接传送到合适的输出端口, 而不需要路由选择处理机的干预 因为每一个要转发的分组都要通过这一条总线, 因此路由器的转发带宽就受总线速率的限制 现代的技术已经可以将总线的带宽提高到每秒吉比特的速率, 因此许多的路由器产品都采用这种通过总线的交换方式

2. 交换结构 通过纵横交换结构 (crossbar switch fabric) 这种交换结构常称为互连网络 (interconnection network) 它有 2N 条总线, 可以使 N 个输入端口和 N 个输出端口相连接 当输入端口收到一个分组时, 就将它发送到与该输入端口相连的水平总线上 若通向所要转发的输出端口的垂直总线是空闲的, 则在这个结点将垂直总线与水平总线接通, 然后将该分组转发到这个输出端口 但若该垂直总线已被占用 ( 有另一个分组正在转发到同一个输出端口 ), 则后到达的分组就被阻塞, 必须在输入端口排队

I 1 O 1 I 2 存 O 2 储器 I 3 O 3 I 1 I 2 总线 O 1 O 2 (a) 通过存储器 I 3 O 3 I 1 (b) 通过总线 I 2 I 3 互连网络 (c) 通过互连网络 O 1 O 2 O 3 三种常用的交换方法

4.6 IPv6 4.6.1 IPv6 的基本首部 4.6.2 IPv6 的地址 4.6.3 从 IPv4 向 IPv6 过渡 4.6.4 ICMPv6

4.6 IPv6 IP 是互联网的核心协议 互联网经过几十年的飞速发展, 到 2011 年 2 月, IPv4 的 32 位地址已经耗尽 ISP 已经不能再申请到新的 IP 地址块了 我国在 2014 2015 年也逐步停止了向新用户和应用分配 IPv4 地址 解决 IP 地址耗尽的根本措施就是采用具有更大地址空间的新版本的 IP, 即 IPv6

4.6.1 IPv6 的基本首部 IPv6 仍支持无连接的传送, 但将协议数据单元 PDU 称为分组 为方便起见, 本书仍采用数据报这一名词 所引进的主要变化如下 : 更大的地址空间 IPv6 将地址从 IPv4 的 32 位增大到了 128 位 扩展的地址层次结构 灵活的首部格式 IPv6 定义了许多可选的扩展首部 改进的选项 IPv6 允许数据报包含有选项的控制信息, 其选项放在有效载荷中

4.6.1 IPv6 的基本首部 所引进的主要变化如下 ( 续 ): 允许协议继续扩充 支持即插即用 ( 即自动配置 ) 因此 IPv6 不需要使用 DHCP 支持资源的预分配 IPv6 支持实时视像等要求, 保证一定的带宽和时延的应用 IPv6 首部改为 8 字节对齐 首部长度必须是 8 字节的整数倍 原来的 IPv4 首部是 4 字节对齐

IPv6 数据报的一般形式 IPv6 数据报由两大部分组成 : 基本首部 (base header) 有效载荷 (payload) 有效载荷也称为净负荷 有效载荷允许有零个或多个扩展首部 (extension header), 再后面是数据部分 发送在前 基本首部 扩展首部 1 扩展 首部 N 数据部分 选项 IPv6 数据报 有效载荷 40 字节不超过 65535 字节 具有多个可选扩展首部的 IPv6 数据报的一般形式

IPv6 数据报的基本首部 IPv6 将首部长度变为固定的 40 字节, 称为基本首部 把首部中不必要的功能取消了, 使得 IPv6 首部的字段数减少到只有 8 个 IPv6 对首部中的某些字段进行了如下的更改 : 取消了首部长度字段, 因为首部长度是固定的 40 字节 ; 取消了服务类型字段 ; 取消了总长度字段, 改用有效载荷长度字段 ; 把 TTL 字段改称为跳数限制字段 ; 取消了协议字段, 改用下一个首部字段 ; 取消了检验和字段 ; 取消了选项字段, 而用扩展首部来实现选项功能

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) IPv6 的有效载荷 ( 至 64 KB) 有效载荷 ( 扩展首部 / 数据 ) 40 字节长的 IPv6 基本首部

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 版本 (version) 4 位 它指明了协议的版本, 对 IPv6 该字段总是 6

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 通信量类 (traffic class) 8 位 这是为了区分不同的 IPv6 数据报的类别或优先级 目前正在进行不同的通信量类性能的实验

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 流标号 (flow label) 20 位 流 是互联网络上从特定源点到特定终点的一系列数据报, 流 所经过的路径上的路由器都保证指明的服务质量 所有属于同一个流的数据报都具有同样的流标号

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 有效载荷长度 (payload length) 16 位 它指明 IPv6 数据报除基本首部以外的字节数 ( 所有扩展首部都算在有效载荷之内 ), 其最大值是 64 KB

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 下一个首部 (next header) 8 位 它相当于 IPv4 的协议字段或可选字段

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 跳数限制 (hop limit) 8 位 源站在数据报发出时即设定跳数限制 路由器在转发数据报时将跳数限制字段中的值减 1 当跳数限制的值为零时, 就要将此数据报丢弃

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 源地址 128 位 是数据报的发送站的 IP 地址

位 0 4 12 16 24 31 版本通信量类流标号有效载荷长度下一个首部跳数限制 IPv6 的基本首部 (40 B) 源地址 (128 位 ) 目的地址 (128 位 ) 目的地址 128 位 是数据报的接收站的 IP 地址

IPv6 的扩展首部 IPv6 把原来 IPv4 首部中选项的功能都放在扩展首部中, 并将扩展首部留给路径两端的源站和目的站的主机来处理 数据报途中经过的路由器都不处理这些扩展首部 ( 只有一个首部例外, 即逐跳选项扩展首部 ) 这样就大大提高了路由器的处理效率

六种扩展首部 在 RFC 2460 中定义了六种扩展首部 : (1) 逐跳选项 (2) 路由选择 (3) 分片 (4) 鉴别 (5) 封装安全有效载荷 (6) 目的站选项 每一个扩展首部都由若干个字段组成, 它们的长度也各不相同 但所有扩展首部的第一个字段都是 8 位的 下一个首部 字段 此字段的值指出了在该扩展首部后面的字段是什么

4.6.2 IPv6 的地址 IPv6 数据报的目的地址可以是以下三种基本类型地址之一 : (1) 单播 (unicast): 传统的点对点通信 (2) 多播 (multicast): 一点对多点的通信 (3) 任播 (anycast): 这是 IPv6 增加的一种类型 任播的目的站是一组计算机, 但数据报在交付时只交付其中的一个, 通常是距离最近的一个

结点与接口 IPv6 将实现 IPv6 的主机和路由器均称为结点 一个结点就可能有多个与链路相连的接口 IPv6 地址是分配给结点上面的接口的 一个接口可以有多个单播地址 其中的任何一个地址都可以当作到达该结点的目的地址 即一个结点接口的单播地址可用来唯一地标志该结点

冒号十六进制记法 在 IPv6 中, 每个地址占 128 位 (16 字节 ), 地址空间大于 3.4 10 38 为了使地址再稍简洁些,IPv6 使用冒号十六进制记法 (colon hexadecimal notation, 简写为 colon hex) 每个 16 位的值用十六进制值表示, 各值之间用冒号分隔 例如 : 68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF 在十六进制记法中, 允许把数字前面的 0 省略 例如把 0000 中的前三个 0 省略, 写成 1 个 0

零压缩 冒号十六进制记法可以允许零压缩 (zero compression), 即一连串连续的零可以为一对冒号所取代 FF05:0:0:0:0:0:0:B3 可压缩为 : FF05::B3 注意 : 在任一地址中只能使用一次零压缩

点分十进制记法的后缀 冒号十六进制记法可结合使用点分十进制记法的后缀, 这种结合在 IPv4 向 IPv6 的转换阶段特别有用 例如 :0:0:0:0:0:0:128.10.2.1 再使用零压缩即可得出 : ::128.10.2.1 CIDR 的斜线表示法仍然可用 例如 :60 位的前缀 12AB00000000CD3 可记为 : 12AB:0000:0000:CD30:0000:0000:0000:0000/60 或 12AB::CD30:0:0:0:0/60 ( 零压缩 ) 或 12AB:0:0:CD30::/60 ( 零压缩 )

IPv6 地址分类 地址类型 二进制前缀 未指明地址 00 0(128 位 ), 可记为 ::/128 环回地址 00 1(128 位 ), 可记为 ::1/128 多播地址 11111111(8 位 ), 可记为 FF00::/8 本地链路单播地址 1111111010(10 位 ), 可记为 FE80::/10 全球单播地址 ( 除上述四种外, 所有其他的二进制前缀 )

IPv6 地址分类 未指明地址 这是 16 字节的全 0 地址, 可缩写为两个冒号 :: 这个地址只能为还没有配置到一个标准的 IP 地址的主机当作源地址使用 这类地址仅此一个 环回地址 即 0:0:0:0:0:0:0:1( 记为 ::1) 作用和 IPv4 的环回地址一样 这类地址也是仅此一个

IPv6 地址分类 多播地址 功能和 IPv4 的一样 这类地址占 IPv6 地址总数的 1/256 本地链路单播地址 (Link-Local Unicast Address) 有些单位的网络使用 TCP/IP 协议, 但并没有连接到互联网上 连接在这样的网络上的主机都可以使用这种本地地址进行通信, 但不能和互联网上的其他主机通信 这类地址占 IPv6 地址总数的 1/1024

IPv6 地址分类 全球单播地址 IPv6 的这一类单播地址是使用得最多的一类 曾提出过多种方案来进一步划分这 128 位的单播地址 根据 2006 年发布的草案标准 RFC 4291 的建议, IPv6 单播地址的划分方法非常灵活 结点地址 (128 bit) 子网前缀 (n bit) 接口标识符 (128 n ) bit 全球路由选择前缀 (n bit) 子网标识符 (m bit) 接口标识符 (128 n m ) bit IPv6 单播地址的几种划分方法

用 ipconfig 查看 IP 地址 d:\workspace\cmd>ipconfig 4. 网络层 118

4.6.3 从 IPv4 向 IPv6 过渡 向 IPv6 过渡只能采用逐步演进的办法, 同时, 还必须使新安装的 IPv6 系统能够向后兼容 : IPv6 系统必须能够接收和转发 IPv4 分组, 并且能够为 IPv4 分组选择路由 两种向 IPv6 过渡的策略 : 使用双协议栈 使用隧道技术

双协议栈 双协议栈 (dual stack) 是指在完全过渡到 IPv6 之前, 使一部分主机 ( 或路由器 ) 装有两个协议栈, 一个 IPv4 和一个 IPv6 双协议栈的主机 ( 或路由器 ) 记为 IPv6/IPv4, 表明它同时具有两种 IP 地址 : 一个 IPv6 地址和一个 IPv4 地址 双协议栈主机在和 IPv6 主机通信时是采用 IPv6 地址, 而和 IPv4 主机通信时就采用 IPv4 地址 根据 DNS 返回的地址类型可以确定使用 IPv4 地址还是 IPv6 地址

双协议栈 双协议栈 IPv6 IPv4 网络双协议栈 IPv6/IPv4 IPv6/IPv4 IPv6 A B C D E F 流标号 :X 源地址 :A 目的地址 :F 源地址 :A 目的地址 :F 源地址 :A 目的地址 :F 流标号 : 无源地址 :A 目的地址 :F 数据部分 数据部分 数据部分 数据部分 IPv6 数据报 IPv4 数据报 IPv4 网络 IPv4 数据报 IPv6 数据报 使用双协议栈进行从 IPv4 到 IPv6 的过渡

隧道技术 在 IPv6 数据报要进入 IPv4 网络时, 把 IPv6 数据报封装成为 IPv4 数据报, 整个的 IPv6 数据报变成了 IPv4 数据报的数据部分 当 IPv4 数据报离开 IPv4 网络中的隧道时, 再把数据部分 ( 即原来的 IPv6 数据报 ) 交给主机的 IPv6 协议栈

隧道技术 A IPv6 双协议栈 IPv6/IPv4 IPv4 网络 双协议栈 IPv6/IPv4 B C D E IPv6 隧道 IPv6 隧道 IPv6 隧道 F IPv6 流标号 :X 源地址 :A 目的地址 :F 数据部分 源地址 :B 目的地址 :E IPv6 数据报 源地址 :B 目的地址 :E IPv6 数据报 流标号 :X 源地址 :A 目的地址 :F 数据部分 IPv6 数据报 IPv4 数据报 IPv4 数据报 IPv6 数据报 IPv4 网络 使用隧道技术进行从 IPv4 到 IPv6 的过渡

4.6.4 ICMPv6 IPv6 也不保证数据报的可靠交付, 因为互联网中的路由器可能会丢弃数据报 因此 IPv6 也需要使用 ICMP 来反馈一些差错信息 新的版本称为 ICMPv6

4.6.4 ICMPv6 地址解析协议 ARP 和网际组管理协议 IGMP 协议的功能都已被合并到 ICMPv6 中 ICMP IGMP ICMPv6 IPv4 IPv6 ARP 版本 4 中的网络层 版本 6 中的网络层 新旧版本中的网络层的比较

ICMPv6 报文的分类 ICMPv6 是面向报文的协议, 它利用报文来报告差错, 获取信息, 探测邻站或管理多播通信 ICMPv6 还增加了几个定义报文的功能及含义的其他协议 ICMPv6 报文 差错报文 信息报文 邻站发现报文 ND (Neighbor-Discovery): 邻站发现 MLD (Multicast Listener Delivery): 多播听众交付 ND 协议 ICMPv6 报文的分类 组成员关系报文 MLD 协议

作业和实践 作业 4-31, 4-34, 4-37, 4-39, 4-41, 4-64 实践 4. 网络层 127