《计算机网络-第四章-网络层.ppt》由会员分享,可在线阅读,更多相关《计算机网络-第四章-网络层.ppt(161页珍藏版)》请在三一办公上搜索。
1、,计算机网络,教师:王建国 Email:电话:,计算机科学与技术系,计算机网络 教师:王建国,第四章 网络层,4.1 网络层提供的两种服务4.2 网际协议IP4.3 划分子网和构造超网4.4 网际控制报文协议ICMP4.5 因特网的路由选择协议4.6 IP多播4.7 虚拟专用网VPN和网络地址转换,计算机网络 教师:王建国,4.1网络层提供的两种服务,面向连接的服务还是无连接的服务?虚电路和数据报服务,因特网采用的设计思路,网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络在发送分组时不需要先建立连接。每一个分组(即 IP 数据报)独立发送,与其前后的分组无关(不进行编号)
2、。网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限。,采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。,4.1网络层提供的两种服务,虚电路服务与数据报服务的对比,计算机网络 教师:王建国,计算机网络 教师:王建国,4.2 网际协议IP,网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。与 IP 协议配套使用的还有四个协议:,地址解析协议 ARP(Address Resolution Protocol)逆地址解析协议 RARP(Reverse Address Resolution Prot
3、ocol)网际控制报文协议 ICMP(Internet Control Message Protocol)网际组管理协议 IGMP(Internet Group Management Protocol),计算机网络 教师:王建国,4.2 网际协议IP,网际层的 IP 协议及配套协议示意图,计算机网络 教师:王建国,4.2 网际协议IP,1、虚拟互连网络,不同的寻址方案;不同的最大分组长度;不同的网络接入机制;不同的超时控制;不同的差错恢复方法;不同的状态报告方法;不同的路由选择技术;不同的用户接入控制;不同的服务(面向连接服务和无连接服务);不同的管理与控制方式;,互连在一起的网络要进行通信,
4、会遇到许多问题需要解决,如:,计算机网络 教师:王建国,4.2 网际协议IP,1、虚拟互连网络,网络互相连接起来要使用一些中间设备;中间设备又称为中间系统或中继(relay)系统。,物理层中继系统:转发器(repeater)。数据链路层中继系统:网桥或桥接器(bridge)。网络层中继系统:路由器(router)。网桥和路由器的混合物:桥路器(brouter)。网络层以上的中继系统:网关(gateway)。,计算机网络 教师:王建国,4.2 网际协议IP,1、虚拟互连网络,所谓虚拟互连网络也就是逻辑互连网络,它的意思就是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用 IP 协议就
5、可以使这些性能各异的网络从用户看起来好像是一个统一的网络。使用 IP 协议的虚拟互连网络可简称为 IP 网。,使用虚拟互连网络的好处是:当互联网上的主机进行通信时,就好像在一个网络上通信一样,而看不见互连的各具体的网络异构细节。,计算机网络 教师:王建国,4.2 网际协议IP,1、虚拟互连网络,分组在互联网中的传送,计算机网络 教师:王建国,54321,主机H1,主机 H2,R1,R4,R5,R2,R3,R1,R2,R3,H1,R5,H2,R4,间接交付,间接交付,间接交付,间接交付,间接交付,直接交付,4.2 网际协议IP,计算机网络 教师:王建国,4.2 网际协议IP,2、分类的IP地址,
6、IP 地址及其表示方法,将整个因特网看成为一个单一的、抽象的网络。IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。IP 地址现在由因特网名字与号码指派公司ICANN(Internet Corporation for Assigned Names and Numbers)进行分配。,IP 地址的编址方法,分类的 IP 地址:这是最基本的编址方法,在 1981 年就通过了相应的标准协议。子网的划分:这是对最基本的编址方法的改进,其标准RFC 950在 1985 年通过。构成超网:这是比较新的无分类编址方法。1993 年提出后很快就得到推广应用。,
7、计算机网络 教师:王建国,4.2 网际协议IP,2、分类的IP地址,每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器)。两级的 IP 地址可以记为:IP 地址:=,(4-1),:=代表“定义为”,IP 地址中的网络号字段和主机号字段,计算机网络 教师:王建国,4.2 网际协议IP,计算机网络 教师:王建国,4.2 网际协议IP,2、分类的IP地址,点分十进制记法,采用点分十进制记法则进一步提高可读性,128.11.3.31,128 11 3 31,将每 8 位的二进制数
8、转换为十进制数,计算机网络 教师:王建国,4.2 网际协议IP,网络 最大 第一个 最后一个 每个网络类别 网络数 可用的 可用的 中最大的 网络号 网络号 主机数 A 126(27 2)1 126 16,777,214 B 16,383(214 1)128.1 191.255 65,534 C 2,097,151(221 1)192.0.1 223.255.255 254,IP 地址的使用范围,2、分类的IP地址,常用的三种类别的 IP 地址,一般不使用的特殊IP地址,课本,计算机网络 教师:王建国,4.2 网际协议IP,IP地址的一些重要特点,2、分类的IP地址,常用的三种类别的 IP 地
9、址,IP 地址是一种分等级的地址结构。实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号 net-id。所有分配到网络号 net-id 的网络,范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的。,计算机网络 教师:王建国,4.2 网际协议IP,需要注意的事项,2、分类的IP地址,常用的三种类别的 IP 地址,在同一个局域网上的主机或路由器的IP 地址中的网络号必须是一样的。路由器总是具有两个或两个以上的 IP 地址。路由器的每一个接口都有一个不同网络号的 IP 地址。两个路由器直接相连的
10、接口处,可指明也可不指明 IP 地址。如指明 IP 地址,则这一段连线就构成了一种只包含一段线路的特殊“网络”。现在常不指明 IP 地址。用网桥(工作在链路层)互连的网段仍然是一个局域网,只能有一个网络号。,计算机网络 教师:王建国,4.2 网际协议IP,3、IP地址与硬件地址,HA1,HA5,HA4,HA3,HA6,主机 H1,主机 H2,路由器 R1,硬件地址,路由器 R2,HA2,IP1,IP2,局域网,局域网,局域网,通信的路径H1经过 R1 转发再经过 R2 转发H2,查找路由表,查找路由表,HA1,HA5,HA4,HA3,HA6,主机 H1,主机 H2,路由器 R1,硬件地址,路由
11、器 R2,HA2,IP1,IP2,局域网,局域网,局域网,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,MAC 帧,IP2,IP4,IP3,IP5,路由器 R2,MAC 帧,MAC 帧,IP 数据报,从协议栈的层次上看数据的流动,HA1,HA5,HA4,HA3,HA6,主机 H1,主机 H2,路由器 R1,硬件地址,路由器 R2,HA2,IP1,IP2,局域网,局域网,局域网,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,MAC 帧,IP2,I
12、P4,IP3,IP5,路由器 R2,MAC 帧,MAC 帧,IP 数据报,从虚拟的 IP 层上看 IP 数据报的流动,HA1,HA5,HA4,HA3,HA6,主机 H1,主机 H2,路由器 R1,硬件地址,路由器 R2,HA2,IP1,IP2,局域网,局域网,局域网,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,MAC 帧,IP2,IP4,IP3,IP5,路由器 R2,MAC 帧,MAC 帧,IP 数据报,在链路上看 MAC 帧的流动,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H
13、2,路由器 R1,IP 层上的互联网,MAC 帧,IP2,IP4,IP3,IP5,路由器 R2,MAC 帧,MAC 帧,IP 数据报,在 IP 层抽象的互联网上只能看到 IP 数据报图中的 IP1IP2 表示从源地址 IP1 到目的地址 IP2 两个路由器的 IP 地址并不出现在 IP 数据报的首部中,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,MAC 帧,IP2,IP4,IP3,IP5,路由器 R2,MAC 帧,MAC 帧,IP 数据报,路由器只根据目的站的 IP 地址的网络号进行路由选择,IP1,HA1,HA5,
14、HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,IP2,IP4,IP3,IP5,路由器 R2,IP 数据报,在具体的物理网络的链路层只能看见 MAC 帧而看不见 IP 数据报,IP1,HA1,HA5,HA4,HA3,HA6,HA2,IP6,主机 H1,主机 H2,路由器 R1,IP 层上的互联网,IP2,IP4,IP3,IP5,路由器 R2,IP 数据报,IP层抽象的互联网屏蔽了下层很复杂的细节在抽象的网络层上讨论问题,就能够使用统一的、抽象的 IP 地址研究主机和主机或主机和路由器之间的通信,计算机网络 教师:王建国,4.2 网际协议IP,4
15、、地址解析协议ARP和逆地址解析协议RARP,IP 地址,物理地址,ARP,物理地址,IP 地址,RARP,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,关于地址解析协议 ARP,不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表。当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。如有,就可查出其对应的硬件
16、地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。,A,Y,X,B,Z,主机 B 向 A 发送ARP 响应分组,主机 A 广播发送ARP 请求分组,ARP 请求,ARP 请求,ARP 请求,00-00-C0-15-AD-18,08-00-2B-00-EE-0A,我是,硬件地址是 00-00-C0-15-AD-18我想知道主机 209.0.0.6 的硬件地址,我是 硬件地址是 08-00-2B-00-EE-0A,A,Y,X,B,Z,00-00-C0-15-AD-18,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,
17、关于ARP的高速缓存,为了减少网络上的通信量,主机 A 在发送其 ARP 请求分组时,就将自己的 IP 地址到硬件地址的映射写入 ARP 请求分组。当主机 B 收到 A 的 ARP 请求分组时,就将主机 A 的这一地址映射写入主机 B 自己的 ARP 高速缓存中。这对主机 B 以后向 A 发送数据报时就更方便了。,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,需注意的问题,ARP 是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。如果所要找的主机和源主机不在同一个局域网上,那么就要通过 ARP 找到一个位于本局域网上的某个路
18、由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。从IP地址到硬件地址的解析是自动进行的,主机的用户对这种地址解析过程是不知道的。只要主机或路由器要和本网络上的另一个已知 IP 地址的主机或路由器进行通信,ARP 协议就会自动地将该 IP 地址解析为链路层所需要的硬件地址。,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,使用 ARP 的四种典型情况,发送方是主机,要把IP数据报发送到本网络上的另一个主机。这时用 ARP 找到目的主机的硬件地址。发送方是主机,要把 IP 数据报发送到另一
19、个网络上的一个主机。这时用 ARP 找到本网络上的一个路由器的硬件地址。剩下的工作由这个路由器来完成。发送方是路由器,要把 IP 数据报转发到本网络上的一个主机。这时用 ARP 找到目的主机的硬件地址。发送方是路由器,要把 IP 数据报转发到另一个网络上的一个主机。这时用 ARP 找到本网络上的一个路由器的硬件地址。剩下的工作由这个路由器来完成。,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,逆地址解析协议 RARP,逆地址解析协议 RARP 使只知道自己硬件地址的主机能够知道其 IP 地址。这种主机往往是无盘工作站。因此 RARP协议目前已很
20、少使用。,计算机网络 教师:王建国,4.2 网际协议IP,4、地址解析协议ARP和逆地址解析协议RARP,为什么不直接使用硬件地址进行通信?,由于全世界存在着各式各样的网络,它们使用不同的硬件地址。要使这些异构网络能够互相通信就必须进行非常复杂的硬件地址转换工作,因此几乎是不可能的事。连接到因特网的主机都拥有统一的 IP 地址,它们之间的通信就像连接在同一个网络上那样简单方便,因为调用 ARP 来寻找某个路由器或主机的硬件地址都是由计算机软件自动进行的,对用户来说是看不见这种调用过程的。,计算机网络 教师:王建国,4.2 网际协议IP,5、IP数据报的格式,一个 IP 数据报由首部和数据两部分
21、组成。首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。,固定部分,可变部分,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,区 分 服 务,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,数 据 部 分,首 部,IP 数据报,4.2 网际协议IP,IP 数据报首部的固定部分中的个字段,可变部分,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,区 分
22、 服 务,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,数 据 部 分,首 部,IP 数据报,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,数 据 部 分,首 部,IP 数据报,固定部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时
23、间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,
24、总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏
25、移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,区 分 服 务,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,标志(flag)占 3 位,目前只有前两位有意义。标志字段的最低位是 MF(More Fragment)。MF 1 表示后面“还有分片”。MF 0 表
26、示最后一个分片。标志字段中间的一位是 DF(Dont Fragment)。只有当 DF 0 时才允许分片。,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字
27、段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,生存时间(8 位)记为 TTL(Time To Live)数据报在网络中可通过的路由器数的最大值。,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,
28、片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,首部,0,4,8,16,19,24,31,版 本,标志,生 存 时 间,协 议,标 识,总 长 度,片 偏 移,填 充,首 部 检 验 和,源 地 址,目 的 地 址,可 选 字 段(长 度 可 变),位,首部长度,数 据 部 分,固定部分,可变部分,区 分 服 务,4.2 网际协议IP,计算机网络 教师:王建国,5、IP数据报的格式,一数据报的总长度为3820字节,其数据部分为3800字节长(使用固定首部
29、),需要分片长度不超过1420字节的数据报片。因固定首部长度为20字节,因此每个数据报片的数据部分长度不能超过1400字节。于是分为3个数据报片,其数据部分的长度分别为1400,1400和1000字节。原始数据报首部被复制为各数据报片的首部,但必须修改相关字段的值。,【例4-1】IP 数据报分片,4.2 网际协议IP,偏移=0/8=0,偏移=0/8=0,偏移=1400/8=175,偏移=2800/8=350,1400,2800,3799,2799,1399,3799,需分片的数据报,数据报片 1,首部,数据部分共 3800 字节,首部 1,首部 2,首部 3,字节 0,数据报片 2,数据报片
30、3,1400,2800,字节 0,5、IP数据报的格式,4.2 网际协议IP,计算机网络 教师:王建国,注意:原始数据报首部被复制为数据报片的首部,但必须修改有关字段的值。,计算机网络 教师:王建国,4.2 网际协议IP,5、IP数据报的格式,IP 首部的可变部分就是一个选项字段,用来支持排错、测量以及安全等措施,内容很丰富。选项字段的长度可变,从 1 个字节到 40 个字节不等,取决于所选择的项目。增加首部的可变部分是为了增加 IP 数据报的功能,但这同时也使得 IP 数据报的首部长度成为可变的。这就增加了每一个路由器处理数据报的开销。实际上这些选项很少被使用。,IP 数据报首部的可变部分,
31、计算机网络 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,可以想像,若按目的主机号来制作路由表,则所得出的路由表就会过于庞大。但若按主机所在的网络地址来制作路由表,那么每一个路由器中的路由表就只包含 4 个项目。这样就可使路由表大大简化。,问题:有四个 A 类网络通过三个路由器连接在一起。每一个网络上都可能有成千上万个主机。如何建立路由表呢?,网 1,网 4,网 3,网 2,目的主机所在的网络,下一跳地址,直接交付,接口 1,直接交付,接口 0,路由器 R2 的路由表,R2,R3,R1,0,1,在路由表中,对每一条路由,最主要的是(目的网络地址,下一跳地址),计算机网络 教师:
32、王建国,4.2 网际协议IP,6、IP层转发分组的流程,计算机网络 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,IP 数据报最终一定可以找到目的主机所在目的网络上的路由器(可能要通过多次的间接交付)。只有到达最后一个路由器时,才试图向目的主机进行直接交付。,查找路由表,根据目的网络地址就能确定下一跳路由器,这样做的结果是:,计算机网络 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,这种路由是为特定的目的主机指明一个路由。采用特定主机路由可使网络管理人员能更方便地控制网络和测试网络,同时也可在需要考虑某种安全问题时采用这种特定主机路由。,特定主机路由,计算机网络
33、 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,路由器还可采用默认路由以减少路由表所占用的空间和搜索路由表所用的时间。这种转发方式在一个网络只有很少的对外连接时是很有用的。在主机发送 IP 数据报时往往更能显示出它的好处。如果一个主机连接在一个小网络上,而这个网络只用一个路由器和因特网连接,那么在这种情况下使用默认路由是非常合适的。,默认路由,N1,R1,因特网,目的网络 下一跳 N1 直接 N2 R2 默认 R1,路由表,N2,R2,只要目的网络不是 N1 和 N2,就一律选择默认路由,把数据报先间接交付路由器 R1,让 R1 再转发给下一个路由器。,计算机网络 教师:王建国
34、,4.2 网际协议IP,6、IP层转发分组的流程,计算机网络 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,IP 数据报的首部中没有地方可以用来指明“下一跳路由器的 IP 地址”。当路由器收到待转发的数据报,不是将下一跳路由器的 IP 地址填入 IP 数据报,而是送交下层的网络接口软件。网络接口软件使用 ARP 负责将下一跳路由器的 IP 地址转换成硬件地址,并将此硬件地址放在链路层的 MAC 帧的首部,然后根据这个硬件地址找到下一跳路由器。,必须强调指出,计算机网络 教师:王建国,4.2 网际协议IP,6、IP层转发分组的流程,(1)从数据报的首部提取目的主机的 IP 地址
35、D,得出目的网络地址为 N。(2)若网络 N 与此路由器直接相连,则把数据报直接交付目的主机 D;否则是间接交付,执行(3)。(3)若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。(4)若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)。(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)。(6)报告转发分组出错。,分组转发算法,计算机网络 教师:王建国,4.3 划分子网和构造超网,划分子网的基本思路划分子网纯属一个单位内部的事情。单位对外仍然表现为没有
36、划分子网的网络。从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位。形如:IP地址:=,凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器。然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网。最后就将 IP 数据报直接交付目的主机。,1、划分子网,从两级 IP 地址到三级 IP 地址,计算机网络 教师:王建国,4.3 划分子网和构造超网,划分子网后变成了三级结构当没有划分子网时,IP 地址是两级结构。划
37、分子网后 IP 地址就变成了三级结构。划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id。,1、划分子网,从两级 IP 地址到三级 IP 地址,一个未划分子网的 B 类网络,计算机网络 教师:王建国,4.3 划分子网和构造超网,1、划分子网,划分为三个子网后对外仍是一个网络,计算机网络 教师:王建国,4.3 划分子网和构造超网,1、划分子网,计算机网络 教师:王建国,4.3 划分子网和构造超网,从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分。使用子网掩码(subnet mask)可以找出 IP
38、 地址中的子网部分。,1、划分子网,子网掩码,IP 地址的各字段和子网掩码,计算机网络 教师:王建国,4.3 划分子网和构造超网,1、划分子网,(IP 地址)AND(子网掩码)=网络地址,计算机网络 教师:王建国,4.3 划分子网和构造超网,1、划分子网,默认子网掩码,计算机网络 教师:王建国,4.3 划分子网和构造超网,1、划分子网,计算机网络 教师:王建国,4.3 划分子网和构造超网,子网掩码是一个重要属性子网掩码是一个网络或一个子网的重要属性。路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器。路由器的路由表中的每一个项目,除了要给出目的网络地址外,
39、还必须同时给出该网络的子网掩码。若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。,1、划分子网,子网掩码,计算机网络 教师:王建国,4.3 划分子网和构造超网,例4-2:已知IP地址是,子网掩码是255.255.192.0。试求网络地址。,1、划分子网,子网掩码,计算机网络 教师:王建国,4.3 划分子网和构造超网,在不划分子网的两级 IP 地址下,从 IP 地址得出网络地址是个很简单的事。但在划分子网的情况下,从 IP 地址却不能唯一地得出网络地址来,这是因为网络地址取决于那个网络所采用的子网掩码,但数据报的首部并没有提供子网掩码的信息。因此分组转发的算法也必须做相应的改动。,
40、2、使用子网时分组的转发,计算机网络 教师:王建国,4.3 划分子网和构造超网,在划分子网的情况下路由器转发分组的算法,2、使用子网时分组的转发,(1)从收到的分组的首部提取目的 IP 地址 D。(2)先用各网络的子网掩码和 D 逐位相“与”,看是否和 相应的网络地址匹配。若匹配,则将分组直接交付。否则就是间接交付,执行(3)。(3)若路由表中有目的地址为 D 的特定主机路由,则将 分组传送给指明的下一跳路由器;否则,执行(4)。(4)对路由表中的每一行的子网掩码和 D 逐位相“与”,若其结果与该行的目的网络地址匹配,则将分组传送 给该行指明的下一跳路由器;否则,执行(5)。(5)若路由表中有
41、一个默认路由,则将分组传送给路由表 中所指明的默认路由器;否则,执行(6)。(6)报告转发分组出错。,0,H1,子网1:网络地址 子网掩码,1,R2,子网2:网络地址 子网掩码,H2,0,1,H3,子网3:网络地址 子网掩码,4.3 划分子网和构造超网,例4-4:如图所示的互联网,以及路由器R1中的路由表。现在主机H1向H2发送分组。试讨论R1收到H1向H2发送的分组后查找路由表的过程。,计算机网络 教师:王建国,4.3 划分子网和构造超网,2、使用子网时分组的转发,1、H1 首先检查主机 128.30.33.138 是否连接在本网络上;如果是,则直接交付;否则,就送交路由器 R1,并逐项查找
42、路由表。2、主机 H1 首先将本子网的子网掩码 与分组的 IP 地址 128.30.33.138 逐比特相“与”(AND 操作)。H1 的网络地址,计算机网络 教师:王建国,4.3 划分子网和构造超网,2、使用子网时分组的转发,3、H1 必须把分组传送到路由器 R1然后逐项查找路由表。路由器 R1 收到分组后就用路由表中第 1 个项目的子网掩码和 128.30.33.138 逐比特 AND 操作。不匹配!(因为128.30.33.128 与路由表中的 128.30.33.0 不一致)。4、路由器 R1 再用路由表中第 2 个项目的子网掩码和 128.30.33.138 逐比特 AND 操作。匹
43、配!这表明子网 2 就是收到的分组所要寻找的目的网络。,计算机网络 教师:王建国,4.3 划分子网和构造超网,网络前缀,3、无分类编址CIDR(构造超网),CIDR 最主要的特点:,CIDR 消除了传统的 A 类、B 类和 C 类地址以及划分子网的概念,因而可以更加有效地分配 IPv4 的地址空间。CIDR使用各种长度的“网络前缀”(network-prefix)来代替分类地址中的网络号和子网号。IP 地址从三级编址(使用子网掩码)又回到了两级编址。,计算机网络 教师:王建国,4.3 划分子网和构造超网,网络前缀,3、无分类编址CIDR(构造超网),无分类的两级编址:,无分类的两级编址的记法是
44、:IP地址:=,CIDR 还使用“斜线记法”(slash notation),它又称为CIDR记法,即在 IP 地址面加上一个斜线“/”,然后写上网络前缀所占的位数(这个数值对应于三级编址中子网掩码中 1 的个数)。CIDR 把网络前缀都相同的连续的 IP 地址组成“CIDR 地址块”。,计算机网络 教师:王建国,4.3 划分子网和构造超网,网络前缀,3、无分类编址CIDR(构造超网),CIDR地址块:,表示的地址块共有 212 个地址(因为斜线后面的 20 是网络前缀的位数,所以这个地址的主机号是 12 位)。这个地址块的起始地址是。在不需要指出地址块的起始地址时,也可将这样的地址块简称为“
45、/20 地址块”。地址块的最小地址:地址块的最大地址:全 0 和全 1 的主机号地址一般不使用。,表示的地址(212 个地址),10000000 00001110 00100000 0000000010000000 00001110 00100000 0000000110000000 00001110 00100000 0000001010000000 00001110 00100000 0000001110000000 00001110 00100000 0000010010000000 00001110 00100000 0000010110000000 00001110 00101111
46、 1111101110000000 00001110 00101111 1111110010000000 00001110 00101111 1111110110000000 00001110 00101111 1111111010000000 00001110 00101111 11111111,所有地址的 20 位前缀都是一样的,最小地址,计算机网络 教师:王建国,4.3 划分子网和构造超网,网络前缀,3、无分类编址CIDR(构造超网),路由聚合:,一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称为路由聚合,它使得路由表中的一个项目可以表示很多个(例如上千个)原来传统分类地址的路
47、由。路由聚合也称为构成超网(supernetting)。CIDR 虽然不使用子网了,但仍然使用“掩码”这一名词(但不叫子网掩码)。对于/20 地址块,它的掩码是 20 个连续的 1。斜线记法中的数字就是掩码中1的个数。,计算机网络 教师:王建国,4.3 划分子网和构造超网,网络前缀,3、无分类编址CIDR(构造超网),CIDR 记法的其他形式:,可简写为 10/10,也就是将点分十进制中低位连续的 0 省略。相当于指出 IP 地址 10.0.0.0 的掩码是,即 11111111 11000000 00000000 00000000网络前缀的后面加一个星号*的表示方法 如 00001010 0
48、0*,在星号*之前是网络前缀,而星号*表示 IP 地址中的主机号,可以是任意值。,计算机网络 教师:王建国,4.3 划分子网和构造超网,最长前缀匹配,3、无分类编址CIDR(构造超网),使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配(longest-prefix matching)。网络前缀越长,其地址块就越小,因而路由就越具体(more specific)。最长前缀匹配又称为最长匹配或最佳匹配。,计算机网络 教师:王建国,4.3 划分子网和构造超网,3、无分类编址CI
49、DR(构造超网),例:收到的分组的目的地址;路由表中的项目:(ISP);(四系),最长前缀匹配,第 1 个项目 的掩码 M 有 22 个连续的 1。M=11111111 11111111 11111100 00000000。因此只需把 D 的第 3 个字节转换成二进制。01000100,相与之后的结果是206.0.01000100.0,与 匹配。,再查找路由表中的第 2 个项目。第 2 个项目 的掩码 M 有 25 个连续的 1。M=11111111 11111111 11111111 10000000。因此只需把 D 的第 4 个字节转换成二进制。10000000,相与之后的结果是206.0
50、.71.10000000,与 匹配。,选择两个匹配的地址中更具体的一个,即选择最长前缀的地址。,计算机网络 教师:王建国,4.3 划分子网和构造超网,使用二叉线索查找路由表,3、无分类编址CIDR(构造超网),当路由表的项目数很大时,怎样设法减小路由表的查找时间就成为一个非常重要的问题。为了进行更加有效的查找,通常是将无分类编址的路由表存放在一种层次的数据结构中,然后自上而下地按层次进行查找。这里最常用的就是二叉线索(binary trie)。IP 地址中从左到右的比特值决定了从根结点逐层向下层延伸的路径,而二叉线索中的各个路径就代表路由表中存放的各个地址。为了提高二叉线索的查找速度,广泛使用