网络编程书籍讲义第三讲PPT课件

上传人:汽*** 文档编号:568803325 上传时间:2024-07-26 格式:PPT 页数:81 大小:651.50KB
返回 下载 相关 举报
网络编程书籍讲义第三讲PPT课件_第1页
第1页 / 共81页
网络编程书籍讲义第三讲PPT课件_第2页
第2页 / 共81页
网络编程书籍讲义第三讲PPT课件_第3页
第3页 / 共81页
网络编程书籍讲义第三讲PPT课件_第4页
第4页 / 共81页
网络编程书籍讲义第三讲PPT课件_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《网络编程书籍讲义第三讲PPT课件》由会员分享,可在线阅读,更多相关《网络编程书籍讲义第三讲PPT课件(81页珍藏版)》请在金锄头文库上搜索。

1、人民邮电出版社人民邮电出版社 第第第第3 3章章章章 互联网络层互联网络层互联网络层互联网络层13.1网络层的互联技术网络层的互联技术 3.1.1网络互联概述网络互联概述1.互联网互联网随着网络技术的发展与应用普及,人们提出了随着网络技术的发展与应用普及,人们提出了“网络孤岛网络孤岛”的概念。的概念。如果一个物理网络不能与其他的网络相互连接,这样当该网络上的如果一个物理网络不能与其他的网络相互连接,这样当该网络上的用户与另一个网络上的用户需要通信或共享网络资源时,就不能满用户与另一个网络上的用户需要通信或共享网络资源时,就不能满足用户的需求,这样一个网络就成了足用户的需求,这样一个网络就成了“

2、网络孤岛网络孤岛”,其应用范围和作,其应用范围和作用就受到了限制。用就受到了限制。如果利用网络互联设备将两个或多个物理网络相互连接,就成了互如果利用网络互联设备将两个或多个物理网络相互连接,就成了互联网络(联网络(internetwork),简称互联网(),简称互联网(internet,注意,注意“i”为小写,为小写,当当“I”为大写时,即为大写时,即Internet,特指全球范围内的互联网)。将多个,特指全球范围内的互联网)。将多个物理网络互联的最常用设备是路由器(物理网络互联的最常用设备是路由器(Router),如图),如图3-1所示所示 ,该该示意图有示意图有4个物理网络,这个物理网络,

3、这4个物理网络通过个物理网络通过R1、R2、R3、R4和和R5共共5个路由器来实现其互联互通的作用。个路由器来实现其互联互通的作用。 3.1网络层的互联技术网络层的互联技术 3.1网络层的互联技术网络层的互联技术 3.1.1网络互联概述网络互联概述2.Intranet与与Extranet如果一个企业内部网络,使用了如果一个企业内部网络,使用了Internet中的中的TCP/IP协议及其网协议及其网络互联技术,就是一个络互联技术,就是一个Intranet。简单地说,。简单地说,Intranet就是一个就是一个有限的、封闭的计算机网络,而该网络使用有限的、封闭的计算机网络,而该网络使用Intern

4、et技术共享数技术共享数据,一个据,一个Intranet可以是一个可以是一个Internet的子网,不过在子网与的子网,不过在子网与Internet的交界处增加了访问控制,以防止不受欢迎的访问。的交界处增加了访问控制,以防止不受欢迎的访问。由于由于Internet技术的成熟与普及,使使用了技术的成熟与普及,使使用了Internet技术的技术的Intranet实现和维护费用较低。如果一个实现和维护费用较低。如果一个Intranet通过防火墙等通过防火墙等技术与外部技术与外部Internet相连,该相连,该Intranet就是一个开放的,通过外就是一个开放的,通过外部可以访问的网络,这时它就成了一

5、个部可以访问的网络,这时它就成了一个Extranet,因此从某种,因此从某种程度上说,程度上说,Extranet就是公司与公司之间的网络。就是公司与公司之间的网络。3.1网络层的互联技术网络层的互联技术 3.1.2路由器路由器路由器是用于连接多个逻辑上分开的网络。路由器具有转发报路由器是用于连接多个逻辑上分开的网络。路由器具有转发报文和路由选择两大功能,它能在异种网络互联环境中,建立灵文和路由选择两大功能,它能在异种网络互联环境中,建立灵活的连接。路由器不关心各子网使用的硬件设备,但要求各网活的连接。路由器不关心各子网使用的硬件设备,但要求各网络层协议要运行功能一致的软件。一般来说,异种网络互

6、联与络层协议要运行功能一致的软件。一般来说,异种网络互联与多个子网互联都应采用路由器来完成。多个子网互联都应采用路由器来完成。1.路由器的工作原理路由器的工作原理当当IP子网中的一台主机发送子网中的一台主机发送IP报文给同一子网的另一台主机时,报文给同一子网的另一台主机时,它将直接把它将直接把IP报文送到网络上,对方就能收到。而要送给不同报文送到网络上,对方就能收到。而要送给不同IP子网上的主机时,它要选择一个能到达目的子网的路由器,把子网上的主机时,它要选择一个能到达目的子网的路由器,把IP报文送给该路由器,由路由器负责把报文送给该路由器,由路由器负责把IP报文送到目的地。如果没报文送到目的

7、地。如果没有找到这样的路由器,主机就把有找到这样的路由器,主机就把IP报文送给一个称为报文送给一个称为“默认网关默认网关”(default gateway)的路由器上。)的路由器上。“默认网关默认网关”是每台主机上是每台主机上的一个配置参数,它是接在同一个网络上的某个路由器端口的的一个配置参数,它是接在同一个网络上的某个路由器端口的IP地址。地址。3.1网络层的互联技术网络层的互联技术 3.1.2路由器路由器路由器转发路由器转发IP报文时,只根据报文时,只根据IP报文中目的报文中目的IP地址的网络号部分,地址的网络号部分,选择合适的端口,把选择合适的端口,把IP报文送出去。每个路由器在收到报文

8、送出去。每个路由器在收到IP报文后报文后也要判定端口所连接的是否是目的子网,如果是,就直接把报也要判定端口所连接的是否是目的子网,如果是,就直接把报文通过端口送到网络上,否则,也要选择下一个路由器来转发文通过端口送到网络上,否则,也要选择下一个路由器来转发IP报文。路由器也有它的报文。路由器也有它的“默认网关默认网关”,用来传送不知道往哪儿送,用来传送不知道往哪儿送的的IP报文。这样,通过路由器把知道如何传送的报文。这样,通过路由器把知道如何传送的IP正确转发出去,正确转发出去,不知道如何传送的不知道如何传送的IP报文送给报文送给“默认网关默认网关”,这样一级级地传送,这样一级级地传送,IP报

9、文最终将送到目的地,送不到目的地的报文最终将送到目的地,送不到目的地的IP报文则被网络丢弃报文则被网络丢弃了。了。3.1网络层的互联技术网络层的互联技术 3.1.2路由器路由器2.路由器的功能路由器的功能路由器是互联网中最常用的网络连接设备,在图路由器是互联网中最常用的网络连接设备,在图3-1中,不同的中,不同的物理网络之间通过路由器互相连接起来。顾名思义,路由器的物理网络之间通过路由器互相连接起来。顾名思义,路由器的起网络寻找路由的作用,即它为经过路由器的每个起网络寻找路由的作用,即它为经过路由器的每个IP报文寻找一报文寻找一条最佳的传输路径,最终将该条最佳的传输路径,最终将该IP报文传输到

10、目的节点。报文传输到目的节点。总之,路由器的功能主要包括下面几个方面:总之,路由器的功能主要包括下面几个方面:(1)在网络之间接收和发送数据包。将接收到的数据包根据包)在网络之间接收和发送数据包。将接收到的数据包根据包中所包含的源地址和目的地址,对照自己的路由信息表,把数中所包含的源地址和目的地址,对照自己的路由信息表,把数据包向目的节点转发。据包向目的节点转发。3.1网络层的互联技术网络层的互联技术 3.1.2路由器路由器2.路由器的功能路由器的功能(2)为网际间通信选择最合理的路由。)为网际间通信选择最合理的路由。(3)根据需要可对数据包进行拆分或组装。)根据需要可对数据包进行拆分或组装。

11、(4)对于支持多通信协议的路由器,可以将两个使用不同协议)对于支持多通信协议的路由器,可以将两个使用不同协议的网络连接起来。的网络连接起来。(5)网络安全功能,目前大部分路由器都具备一定的防火墙功)网络安全功能,目前大部分路由器都具备一定的防火墙功能,能够屏蔽内部网络的能,能够屏蔽内部网络的IP地址,自由设定地址,自由设定IP地址、通信端口过地址、通信端口过滤等,使网络更加安全。滤等,使网络更加安全。3.1网络层的互联技术网络层的互联技术 3.1.3面向连接的互联技术面向连接的互联技术图图3-1所示的互联网络,如果网络所示的互联网络,如果网络1中的主机中的主机A要与网络要与网络4中的主中的主机

12、机D进行通信,可以通过进行通信,可以通过“主机主机A网络网络1路由器路由器R3网络网络4主机主机D”这样的一条固定线路来完成,路由器这样的一条固定线路来完成,路由器R3就要保存一条这就要保存一条这样的信息,所有由网络样的信息,所有由网络1中的主机要传输到网络中的主机要传输到网络4中主机的信息,中主机的信息,都要由路由器都要由路由器R3接收并转发。这种解决方案就好像在通信的源接收并转发。这种解决方案就好像在通信的源端和目标端之间建立了一条逻辑通路,一般称为虚电路端和目标端之间建立了一条逻辑通路,一般称为虚电路(virtual circuit),即),即“网络网络1路由器路由器R3网络网络4”,当

13、然也可,当然也可以反过来以反过来“网络网络4路由器路由器R3网络网络1”,说明网络,说明网络4中主机要与网中主机要与网络络1中主机通信时,也要由路由器中主机通信时,也要由路由器R3转发。这就是所谓面向连接转发。这就是所谓面向连接(connect-oriented)的互联技术,这种方式看似简单,易于)的互联技术,这种方式看似简单,易于实现,但其最大的缺点是如果不能保证虚电路中沿途经过的节实现,但其最大的缺点是如果不能保证虚电路中沿途经过的节点都能可靠的发送数据,就可能使网络崩溃。由于互联网所连点都能可靠的发送数据,就可能使网络崩溃。由于互联网所连网络的复杂性和多样性,很难保证所节点都能可靠的发送

14、数据。网络的复杂性和多样性,很难保证所节点都能可靠的发送数据。3.1网络层的互联技术网络层的互联技术 3.1.4无连接的互联技术无连接的互联技术无连接的无连接的(connectionless)的互联网解决方案在源端和目标端的互联网解决方案在源端和目标端之间不需要建立一条逻辑通路,而是送到网络中的每个分组带之间不需要建立一条逻辑通路,而是送到网络中的每个分组带有完整的目标主机地址,收到分组的节点(主要是路由器)根有完整的目标主机地址,收到分组的节点(主要是路由器)根据目标地址和当前网络状况(如通信量等),选择一条合适的据目标地址和当前网络状况(如通信量等),选择一条合适的线路把分组发送到接近目标

15、端的下一个节点,通过多个节点的线路把分组发送到接近目标端的下一个节点,通过多个节点的转发,最终把分组送达目标节点。例如图转发,最终把分组送达目标节点。例如图3-1所示网络中,如果所示网络中,如果网络网络1中的主机中的主机A要与网络要与网络4中的主机中的主机D进行通信,可能通过进行通信,可能通过“主主机机A网络网络1路由器路由器R3网络网络4主机主机D”这样的一条逻辑链路这样的一条逻辑链路来完成,也可能通过来完成,也可能通过“主机主机A网络网络1路由器路由器R2网络网络3路由路由器器R4网络网络4主机主机D”这样的一条逻辑链路来完成,当然还可这样的一条逻辑链路来完成,当然还可以有其他的逻辑链路,

16、这就是所谓无连接的互联技术。以有其他的逻辑链路,这就是所谓无连接的互联技术。3.1网络层的互联技术网络层的互联技术 3.1.5IP互联原理互联原理不同的网络使用的协议不同、地址长度和寻址方式不同、数据不同的网络使用的协议不同、地址长度和寻址方式不同、数据帧的长度不同。物理网络的这些差别是无法改变的,也就是说,帧的长度不同。物理网络的这些差别是无法改变的,也就是说,我们无法做到物理网络的我们无法做到物理网络的“统一统一”。但是,我们可以对互联的不。但是,我们可以对互联的不同物理网络(具体表现就是不同网络的网络接口卡和设备驱动同物理网络(具体表现就是不同网络的网络接口卡和设备驱动程序互不相同)上传

17、输的数据帧,都加上一层相同的程序互不相同)上传输的数据帧,都加上一层相同的“包装包装”,使加了使加了“包装包装”后的网络数据帧对外有统一的后的网络数据帧对外有统一的“外表外表”(为了区别(为了区别数据帧,我们就把它叫数据帧,我们就把它叫“数据报数据报”),并且有足够的地址信息),并且有足够的地址信息(即(即IP地址)用来识别数据报从何而来(信源),要到什么地方地址)用来识别数据报从何而来(信源),要到什么地方去(信宿)。这样的数据报,不同网络中的节点(主要是路由去(信宿)。这样的数据报,不同网络中的节点(主要是路由器)都可以识别,因此,就可以根据数据报的目标地址,把它器)都可以识别,因此,就可

18、以根据数据报的目标地址,把它从一个节点转发到另一个节点,直到目标主机。最后由目标主从一个节点转发到另一个节点,直到目标主机。最后由目标主机对数据报的内容进行解释。机对数据报的内容进行解释。3.2IP协议协议 3.2.1IP协议概述协议概述IP协议是协议是TCP/IP协议簇中最重要的协议,从协议体系结构来看,协议簇中最重要的协议,从协议体系结构来看,向下它屏蔽了不同物理网络的低层,向上它提供了一个逻辑上向下它屏蔽了不同物理网络的低层,向上它提供了一个逻辑上统一的互联网。统一的互联网。TCP/IP网络中的网络中的IP就如同邮政服务中的就如同邮政服务中的“标准信标准信封封”,在这个基本的、有效的传送

19、机制中,任何种类的数据都能,在这个基本的、有效的传送机制中,任何种类的数据都能放入到该放入到该“标准信封标准信封”中,如图中,如图3-3所示。所示。IP协议头被封装在内的高层数据图3-3 IP协议示意图3.2IP协议协议 3.2.1IP协议概述协议概述1.IP协议的主要功能协议的主要功能IP协议所完成的主要功能包括以下内容:协议所完成的主要功能包括以下内容:将上层数据(如将上层数据(如 TCP,UDP数据)或同层的其它数据(如数据)或同层的其它数据(如ICMP数据)封装到数据)封装到IP数据报中。数据报中。将将IP数据报传送到最终目的地。数据报传送到最终目的地。为了使数据能够在链路层上进行传输

20、,对数据进行分段。为了使数据能够在链路层上进行传输,对数据进行分段。确定数据报到达其它网络的路径。确定数据报到达其它网络的路径。3.2IP协议协议 3.2.1IP协议概述协议概述2.IP协议在协议在TCP/IP协议栈中的地位与特点协议栈中的地位与特点互联网上的所有数据报都要经过互联网上的所有数据报都要经过IP协议进行传输,它是通信网络协议进行传输,它是通信网络与高层协议的分界,如图与高层协议的分界,如图3-4所示。所示。图3-4IP协议在TCP/IP协议簇中的地位物理传输介质应用层传输层网络层链路层应用程序应用程序应用程序应用程序TCPUDPICMPIPIGMPARP硬件接口RARP3.2IP

21、协议协议 3.2.1IP协议概述协议概述2.IP协议在协议在TCP/IP协议栈中的地位与特点协议栈中的地位与特点使用使用IP协议的互联网具有以下重要特点:协议的互联网具有以下重要特点:IP协议是一种无连接协议是一种无连接(connectionless)不可靠(不可靠(unreliable)的)的数据报传输协议。说它不可靠是因为数据报传输协议。说它不可靠是因为IP协议不能保证数据报能正协议不能保证数据报能正确的传输到目标主机。它负责数据报在网络中的传输,而不管确的传输到目标主机。它负责数据报在网络中的传输,而不管传输的正确与否,不进行数据报的确认,也不能保证数据报按传输的正确与否,不进行数据报的

22、确认,也不能保证数据报按正确的顺序到达(即先发的不一定先到达),但同时它也是正确的顺序到达(即先发的不一定先到达),但同时它也是“尽尽最大努力最大努力”的传输数据,因为它不随便丢弃传输中的数据报。的传输数据,因为它不随便丢弃传输中的数据报。3.2IP协议协议 3.2.1IP协议概述协议概述2.IP协议在协议在TCP/IP协议栈中的地位与特点协议栈中的地位与特点使用使用IP协议的互联网具有以下重要特点:协议的互联网具有以下重要特点:IP互联网中的计算机没有主次之分,所有主机地位平等(因为惟互联网中的计算机没有主次之分,所有主机地位平等(因为惟一标识它们的是一标识它们的是IP地址),当然从逻辑上来

23、说,所有网络不管规地址),当然从逻辑上来说,所有网络不管规模大小也没有主次之分。模大小也没有主次之分。IP互联网没有确定的拓扑结构,就像图互联网没有确定的拓扑结构,就像图3-1所示的哪样。所示的哪样。在在IP互联网中的任何一台主机,都至少有一个独一无二的互联网中的任何一台主机,都至少有一个独一无二的IP地址,地址,有多个网络接口卡的计算机每个接口可以有一个有多个网络接口卡的计算机每个接口可以有一个IP地址,这样一地址,这样一台主机可能就有多个台主机可能就有多个IP地址,有多个地址,有多个IP地址的主机叫多宿主机地址的主机叫多宿主机(multi-home host)。)。在互联网中有在互联网中有

24、IP地址的设备,不一定就是一台计算机,如地址的设备,不一定就是一台计算机,如IP路由路由器、网关等,因为与互联网有独立连接的设备都要有器、网关等,因为与互联网有独立连接的设备都要有IP地址。地址。3.2IP协议协议 3.2.1 IP数据报格式数据报格式IP协议是协议是TCP/IP协议族中最为核心的协议,前面我们已经讨论协议族中最为核心的协议,前面我们已经讨论过,它提供不可靠、无连接的数据报传输服务。过,它提供不可靠、无连接的数据报传输服务。IP层提供的服务层提供的服务是通过是通过IP层对数据报的封装与拆封来实现的。层对数据报的封装与拆封来实现的。IP数据报的格式分数据报的格式分为报头区和数据区

25、两大部分,其中数据区包括高层协议需要传为报头区和数据区两大部分,其中数据区包括高层协议需要传输的数据,报头区是为了正确传输高层数据而加的各种控制信输的数据,报头区是为了正确传输高层数据而加的各种控制信息。息。IP数据报的格式如图数据报的格式如图3-5所示。所示。版本号版本号(4位位)头长度头长度(4位位)服务类型服务类型TOS (8位位)总总 长长 度(度(16位)位)标标 识识 (16位)位)标志标志(3位位)片片 偏偏 移(移(13位)位)生存时间生存时间TTL(8位)位) 上层协议标识(上层协议标识(8位)位)头头 部部 校校 验验 和(和(16位)位)源源 I P 地地 址址 (3 2

26、位)位)目目 标标 I P 地地 址址 (3 2位)位)选选 项项数数 据据3.2IP协议协议 3.2.1 IP数据报格式数据报格式图图3-5中所表示的数据,最高位在左边,记为第中所表示的数据,最高位在左边,记为第0位;最低位在位;最低位在右边,记为第右边,记为第31位。在网络中传输时,先传输位。在网络中传输时,先传输07位,其次传位,其次传输输815位,然后传输位,然后传输1623位,最后传输的是位,最后传输的是2431位。由位。由于于TCP/IP协议首部中所有的二进制数在网络中传输时都要求以协议首部中所有的二进制数在网络中传输时都要求以这种次序进行,因此把它称为网络字节序。在进行程序设计时

27、这种次序进行,因此把它称为网络字节序。在进行程序设计时以其他形式存储的二进制数,必须在传输数据之前,使用网络以其他形式存储的二进制数,必须在传输数据之前,使用网络编程编程API提供的函数(这些函数在第提供的函数(这些函数在第2篇中介绍)把首部转换成篇中介绍)把首部转换成网络字节顺序。网络字节顺序。IP数据报中的每一个域包含了数据报中的每一个域包含了IP报文所携带的一些信息,正是这报文所携带的一些信息,正是这些信息来完成些信息来完成IP协议功能的,现说明如下:协议功能的,现说明如下:3.2IP协议协议 3.2.1 IP数据报格式数据报格式1. 版本号版本号占用占用4位二进制数,表示该位二进制数,

28、表示该IP数据报使用的是哪个版本的数据报使用的是哪个版本的IP协议。协议。目前在目前在Internet中使用的中使用的TCP/IP协议簇中,协议簇中,IP协议的版本号为协议的版本号为4,所以也常称为,所以也常称为IP v4。下一个。下一个IP协议的版本号为协议的版本号为6,即,即IP v6,当前正在试验中,在本章的最后一节介绍有关当前正在试验中,在本章的最后一节介绍有关IP v6的知识。的知识。2.头长度头长度用用4位二进制数表示,此域指出整个报文头的长度(包括选项),位二进制数表示,此域指出整个报文头的长度(包括选项),该长度是以该长度是以32位二进制数为一个计数单位的,接收端通过此域位二进

29、制数为一个计数单位的,接收端通过此域可以计算出报文头在何处结束及从何处开始读数据。普通可以计算出报文头在何处结束及从何处开始读数据。普通IP数据数据报(没有任何选项)该字段的值是报(没有任何选项)该字段的值是5(即(即20个字节的长度)。个字节的长度)。3.2IP协议协议 3.2.1 IP数据报格式数据报格式3.服务类型(服务类型(TOS-Type of Service)用用8位二进制数表示,规定对本数据报的处理方式。服务类型字位二进制数表示,规定对本数据报的处理方式。服务类型字段的段的8位分成了五个子域,如图位分成了五个子域,如图3-6所示。所示。(1)优先权:占)优先权:占02位,这位,这

30、3位二进制数表示的数据范围为位二进制数表示的数据范围为000111(07),数越大,表示该数据报优先权越高,如),数越大,表示该数据报优先权越高,如0表示一般的表示一般的优先权,优先权,7表示网络控制优先权。网络中的路由器可以使用优先表示网络控制优先权。网络中的路由器可以使用优先权进行拥塞控制,如当网络发生拥塞时可以根据数据报的优先权进行拥塞控制,如当网络发生拥塞时可以根据数据报的优先权来决定数据报的取舍。权来决定数据报的取舍。3.2IP协议协议 3.2.1 IP数据报格式数据报格式3.服务类型(服务类型(TOS-Type of Service)(2) 短延迟位短延迟位D(Delay):该位被

31、置该位被置1时,数据报请求以短延时时,数据报请求以短延时信道传输,信道传输,0表示正常延时。表示正常延时。(3) 高吞吐量位高吞吐量位T(Throughput):该位被置该位被置1时,数据报请求时,数据报请求以高吞吐量信道传输,以高吞吐量信道传输,0表示普通。表示普通。(4) 高可靠性位高可靠性位R(Reliability): 该位被置该位被置1时,数据报请求以时,数据报请求以高可靠性信道传输,高可靠性信道传输,0表示普通。表示普通。(5) 低费用位低费用位C(Cost):该位被置):该位被置1时表示低费用的路由。时表示低费用的路由。(6) 保留位:目前未用,需置保留位:目前未用,需置0。3.

32、2IP协议协议 3.2.1 IP数据报格式数据报格式4. 总长度总长度用用16位二进制数表示,总长度字段是指整个位二进制数表示,总长度字段是指整个IP数据报的长度,数据报的长度,以字节为单位。利用首部长度字段和总长度字段,就可以计算以字节为单位。利用首部长度字段和总长度字段,就可以计算出出IP数据报中数据内容的起始位置和长度。由于该字段长度为数据报中数据内容的起始位置和长度。由于该字段长度为16位二进制,所以从理论上来说,位二进制,所以从理论上来说,IP数据报最长可达数据报最长可达65535字节字节(实际由于受物理网络的限制,要比这个数值小得多)。(实际由于受物理网络的限制,要比这个数值小得多

33、)。3.2IP协议协议 3.2.1 IP数据报格式数据报格式5.生存时间(生存时间(TTL-Time to Live)用用8位二进制数表示,它指定了数据报可以在网络中传输的最长位二进制数表示,它指定了数据报可以在网络中传输的最长时间。在实际应用中为了简化处理过程,把生存时间字段设置时间。在实际应用中为了简化处理过程,把生存时间字段设置成了数据报可以经过的最大路由器数。成了数据报可以经过的最大路由器数。TTL的初始值由源主机设的初始值由源主机设置(通常为置(通常为32、64、128或者或者256),一旦经过一个处理它的路),一旦经过一个处理它的路由器,它的值就减去由器,它的值就减去1,当该字段的

34、值减为,当该字段的值减为0时,数据报就被丢时,数据报就被丢弃,并发送弃,并发送ICMP报文(第报文(第4节介绍)通知源主机,这样可以防节介绍)通知源主机,这样可以防止数据报进入一个循环回路时,数据报无休止的传输。止数据报进入一个循环回路时,数据报无休止的传输。6.上层协议标识上层协议标识用用8位二进制数表示,从图位二进制数表示,从图3-4我们知道,我们知道,IP协议可以承载多种上协议可以承载多种上层协议,目标端根据协议标识,就可以把收到的层协议,目标端根据协议标识,就可以把收到的IP数据报送数据报送TCP或或UDP等处理此报文的上层协议。表等处理此报文的上层协议。表3-2给出了常用的网际协议给

35、出了常用的网际协议编号。编号。3.2IP协议协议 3.2.1 IP数据报格式数据报格式十进制编号十进制编号协协 议议说说 明明0 0无无保留保留1 1ICMPICMP网际控制报文协议网际控制报文协议2 2IGMPIGMP网际组管理协议网际组管理协议3 3GGPGGP网关网关- -网关协议网关协议4 4无无未分配未分配5 5STST流流6 6TCPTCP传输控制协议传输控制协议8 8EGPEGP外部网关协议外部网关协议9 9IGPIGP内部网关协议内部网关协议1111NVPNVP网络声音协议网络声音协议1717UDPUDP用户数据报协议用户数据报协议3.2IP协议协议 3.2.1 IP数据报格式

36、数据报格式7. 校验和校验和用用16位位二二进进制制数数表表示示,这这个个域域用用于于协协议议头头数数据据有有效效性性的的校校验验,可以保证可以保证IP报头区在传输时的正确性和完整性。报头区在传输时的正确性和完整性。头头部部校校验验和和字字段段是是根根据据IP协协议议头头部部计计算算的的校校验验和和码码,它它不不对对头头部部后后面面的的数数据据进进行行计计算算。为为了了计计算算一一份份数数据据报报的的IP校校验验和和,首首先先把把校校验验和和字字段段置置为为0,然然后后对对首首部部中中每每16位位二二进进制制数数进进行行反反码码求求和和(整整个个首首部部看看成成是是由由多多个个16二二进进制制

37、数数组组成成)的的运运算算,结结果果存存在在检检验验和和字字段段中中。接接收收端端在在收收到到一一个个IP数数据据报报后后,同同样样对对首首部部中中每每个个16位二进制数进行反码求和运算。位二进制数进行反码求和运算。3.2IP协议协议 3.2.1 IP数据报格式数据报格式8.源地址源地址用用32位二进制数表示的发送端位二进制数表示的发送端IP地址。地址。9.目的地址目的地址用用32位二进制数表示的目的端位二进制数表示的目的端IP地址。地址。3.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组1.最大传输单元最大传输单元MTU正正如如图图3-1所所示示,IP数数据据报报在在互

38、互联联网网上上传传输输,可可能能要要经经过过多多个个物物理理网网络络数数据据报报才才能能从从源源端端传传输输到到目目标标端端。不不同同的的网网络络由由于于链链路路层层和和介介质质的的物物理理特特性性不不同同,因因此此在在进进行行数数据据传传输输时时,对对数数据据帧帧的的最最大大长长度度都都有有一一个个限限制制,这这个个限限制制值值叫叫最最大大传传输输单单元元MTU(Maximum Transmission Unit)。同同一一个个网网络络上上的的两两台台主主机机之之间间通通信信时时,该该网网络络的的MTU是是确确定定,不不存存在在分分片片问问题题。分分片片问问题题一一般般只只存存在在于于具具有

39、有不不同同MTU值值的的互互联联网网中中。由由于于现现在在互互联联网网主主要要使使用用路路由由器器进进行行网网络络连连接接,所所以以分片工作通常由路由器进行。分片工作通常由路由器进行。3.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组1.最大传输单元最大传输单元MTU如果两台主机之间的通信要通过多个具有不同如果两台主机之间的通信要通过多个具有不同MTU值的网络时,值的网络时,重要的不是两台主机所在网络的重要的不是两台主机所在网络的MTU值,而是两台通信主机路值,而是两台通信主机路径上的最小径上的最小MTU值,它被称作路径值,它被称作路径MTU。两台主机之间的路径。两台主机

40、之间的路径MTU不一定是个常数,它取决于数据报所经过的路径。由于路不一定是个常数,它取决于数据报所经过的路径。由于路由选择不一定是对称的(从由选择不一定是对称的(从A到到B的路由可能与从的路由可能与从B到到A的路由不的路由不同),因此,路径同),因此,路径MTU在两个方向上不一定是一致的。表在两个方向上不一定是一致的。表3-3列列出了几种常用网络的出了几种常用网络的MTU值。值。3.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组网络名称网络名称MTUMTU(单位:字节)(单位:字节)以太网以太网15001500IEEE802.3/802.2IEEE802.3/802.21

41、4921492FDDIFDDI43524352ATM(ATM(信元信元) )4848X.25X.25576576点到点(低延时)点到点(低延时)296296令牌环网(令牌环网(IBM 16MB/sIBM 16MB/s)1791417914令牌环网(令牌环网(IEEE802.5IBM IEEE802.5IBM 16MB/s16MB/s)446444643.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组2.分片分片当一个当一个IP数据报要通过链路层进行传输时,如果数据报要通过链路层进行传输时,如果IP数据报的长度数据报的长度比链路层比链路层MTU的值大,那么的值大,那么IP层

42、就需要对将要发送的层就需要对将要发送的IP数据报数据报进行分片,把一个进行分片,把一个IP数据报分成若干个长度小于或等于链路层数据报分成若干个长度小于或等于链路层MTU的的IP数据报,才能经过链路层进行传输。这种把一个数据数据报,才能经过链路层进行传输。这种把一个数据报为了适合网络传输而分成多个数据报的过程,叫分片报为了适合网络传输而分成多个数据报的过程,叫分片(fragmentation)。一定要注意,被分片后的各个)。一定要注意,被分片后的各个IP数据报,数据报,可能经过不同的路径到达目标主机。可能经过不同的路径到达目标主机。一个一个IP数据报在传输过程中可能被分片,也可能不被分片。如果数

43、据报在传输过程中可能被分片,也可能不被分片。如果被分片,分片后的被分片,分片后的IP数据报和原来没有分片的数据报和原来没有分片的IP数据报结构是相数据报结构是相同的,即也是由同的,即也是由IP头部和头部和IP数据区两部分组成。数据区两部分组成。3.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组3.重组重组当当分分了了片片的的IP数数据据报报被被传传输输到到最最终终目目标标主主机机时时,目目标标主主机机要要对对收收到到的的各各分分片片重重新新进进行行组组装装,以以恢恢复复成成源源主主机机发发送送时时的的IP数数据据报报,这这个个过过程程叫叫IP数数据据报报的的重重组组。重重

44、组组时时如如何何知知道道收收到到的的分分片片(IP数数据据报报)属属于于原原来来哪哪个个IP数数据据报报呢呢?解解决决这这个个问问题题就就要要使使用用IP数数据据报头部的标识字段。报头部的标识字段。在在IP数数据据报报头头部部中中,标标识识用用16位位二二进进制制数数表表示示,它它惟惟一一地地标标识识主主机机发发送送的的每每一一份份数数据据报报。通通常常在在源源端端保保持持着着一一个个计计数数器器,每每发发送送一一个个数数据据报报它它的的值值就就会会加加1,以以保保证证每每个个数数据据报报有有一一个个惟惟一一的的标标识识,而而在在一一个个数数据据报报被被分分片片时时,每每个个分分片片仅仅把把原

45、原数数据据报报标标识识字字段段的的值值原原样样复复制制一一份份,所所以以一一个个数数据据报报的的所所有有分分片片具具有有相相同的标识。同的标识。3.2IP协议协议 3.2.3 IP数据报的分片与重组数据报的分片与重组3.重组重组目目标标端端主主机机重重组组数数据据报报的的原原理理是是:根根据据标标识识可可以以确确定定收收到到的的分分片片属属于于哪哪个个原原IP数数据据报报;根根据据标标志志字字段段的的片片未未完完MF子子字字段段可可以以确确定定分分片片是是不不是是最最后后一一个个分分片片;根根据据偏偏移移量量就就可可以以确确定定分分片片在在原数据报中的位置。原数据报中的位置。3.2IP协议协议

46、 3.2.4 IP数据报选项数据报选项IP数数据据报报选选项项主主要要有有两两大大功功能能:一一个个可可以以用用来来实实现现对对数数据据报报传传输输过过程程的的控控制制,如如规规定定数数据据报报要要经经过过的的路路由由;二二是是进进行行网网络络测测试试,如一个数据报传输过程中经过了哪些路由器。如一个数据报传输过程中经过了哪些路由器。IP选选项项域域共共分分为为四四大大类类,见见表表3-4所所示示,每每类类分分为为若若干干个个选选项项,每每个个选选项项有有确确定定的的编编号号。0类类表表示示数数据据报报或或网网络络控控制制,有有6个个选选项项在在使使用用。2类类表表示示调调试试与与测测量量,有有

47、1个个选选项项在在使使用用。1类类和和3类类未使用。未使用。3.2IP协议协议 选项类选项类用途用途选项号选项号长度长度功能功能0 0类类数据报或数据报或网络控制网络控制0 0- -IPIP数据报头中的任选项域结束数据报头中的任选项域结束1 1- -无操作无操作2 21111字节字节安全和处理限制(用于军事领域,详细内容参见安全和处理限制(用于军事领域,详细内容参见RFC 1108Kent RFC 1108Kent 19911991)3 3可变可变设置宽松源路由选择设置宽松源路由选择7 7可变可变记录数据报经过的路由记录数据报经过的路由9 9可变可变设置严格源路由选择设置严格源路由选择1 1类

48、类未用未用2 2类类调试与测量调试与测量可变可变记录记录InternetInternet时戳时戳3 3类类未用未用选项类选项类用途用途选项号选项号长度长度功能功能0 0类类数据报或数据报或网络控制网络控制0 0- -IPIP数据报头中的任选项域结束数据报头中的任选项域结束1 1- -无操作无操作2 21111字节字节安全和处理限制(用于军事领域,详细内容参见安全和处理限制(用于军事领域,详细内容参见RFC 1108Kent RFC 1108Kent 19911991)3 3可变可变设置宽松源路由选择设置宽松源路由选择7 7可变可变记录数据报经过的路由记录数据报经过的路由9 9可变可变设置严格源

49、路由选择设置严格源路由选择1 1类类未用未用2 2类类调试与测量调试与测量可变可变记录记录InternetInternet时戳时戳3 3类类未用未用3.2IP协议协议 3.2.4 IP数据报选项数据报选项IP数数据据报报选选项项由由三三个个部部分分组组成成:选选项项码码、选选项项长长度度和和选选项项数数据据。选选项项码码和和选选项项长长度度各各占占一一个个字字节节,选选项项长长度度用用于于确确定定整整个个选选项项部分的长度,如图部分的长度,如图3-9所示。所示。图3-9IP数据报头标志位2位1位5位选项码选项长度选项数据复制选项类选项号3.2IP协议协议 3.2.4 IP数据报选项数据报选项其

50、中,选项码由复制、选项类和选项号三个部分组成。其中,选项码由复制、选项类和选项号三个部分组成。(1) 复复制制:占占1位位,用用来来控控制制一一个个带带有有选选项项的的IP数数据据报报被被分分片片时时,分分片片后后对对选选项项的的处处理理方方式式。如如果果该该位位被被置置1,将将选选项项复复制制到到所所有有分片中;被置分片中;被置0,将选项仅复制到第一个分片中。,将选项仅复制到第一个分片中。(2) 选选项项类类和和选选项项号号:选选项项类类占占2位位,选选项项号号占占5位位,用用于于确确定定该该选选项项是是哪哪类类选选项项中中的的哪哪个个选选项项。其其实实就就是是用用于于确确定定该该选选项项的

51、的功能。如表功能。如表3-4所示。所示。3.2IP协议协议 3.2.4 IP数据报选项数据报选项对几种常用的选项说明如下:对几种常用的选项说明如下:1 源路由选择源路由选择所所谓谓源源路路由由选选择择(source routing)是是指指IP数数据据报报在在互互联联网网中中传传输输时时,所所经经过过的的路路由由是是由由发发出出IP数数据据报报的的源源主主机机指指定定,以以区区别别于于数数据据报报在在互互联联网网中中传传输输时时,由由路路由由器器的的IP层层自自动动寻寻径径所所得得到到的的路路由。由。通通过过设设置置源源路路由由选选择择选选项项,可可进进行行测测试试网网络络中中指指定定路路由由

52、的的连连通通性性,以以使使数数据据报报绕绕开开出出错错的的网网络络,也也可可用用于于测测试试特特定定网网络络的的吞吞吐吐量量。源源路路由由选选择择分分为为两两类类,一一类类是是严严格格源源路路由由选选择择(strict source routing),另另一一类类是是宽宽松松源源路路由由选选择择(loose source. routing)。)。3.2IP协议协议 3.2.4 IP数据报选项数据报选项(1) 严格源路由选择严格源路由选择严严格格源源路路由由选选择择由由发发送送端端规规定定IP数数据据报报必必须须要要经经过过的的路路径径上上的的每每一一个个路路由由器器,相相邻邻路路由由器器之之间

53、间不不得得有有中中间间路路由由器器,并并且且所所经经过过路路由由器器的的顺顺序序不不可可更更改改。如如果果一一个个路路由由器器发发现现源源路路由由所所指指定定的的下下一一个个路路由由器器不不在在其其直直接接连连接接的的网网络络上上,那那么么它它就就返返回回一一个个“源源站站路路由由失失败败”的的ICMP差差错报文。其选项格式如图错报文。其选项格式如图3-10所示。所示。1 1字字节节1 1字字节节1 1字字节节4 4字节字节4 4字节字节4 4字节字节4 4字节字节选项选项码码选项选项长度长度指针指针第第1 1站站IPIP地址地址第第2 2站站IPIP地址地址第第3 3站站IPIP地址地址第第

54、9 9站站IPIP地址地址3.2IP协议协议 3.2.4 IP数据报选项数据报选项其其中中,选选项项码码为为1 00 01001(0X89),即即为为0类类9号号选选项项,最最高高位位为为1,是是因因为为分分片片后后的的数数据据也也要要按按严严格格源源路路由由传传输输。选选项项长长度度最最大大为为39,可可存存放放9个个IP地地址址。因因为为IP首首部部长长度度字字段段只只有有4位位二二进进制制,因因此此整整个个IP首首部部最最长长只只能能包包括括15个个32位位长长的的字字(即即60个个字字节节)。由由于于IP首首部部固固定定长长度度为为20字字节节,选选项项码码、选选项项长长度度和和指指针

55、针共共用用去去3个个字字节节,这这样样只只剩剩下下37个个字字节节(=60-20-3)来来存存放放IP地地址址清清单单,也也就就是是说说只只能能存存放放9个个IP地地址址。指指针针字字段段指指向向当当前前的的IP地地址址,每每经经过过一一个个路路由由器器,指指针针的的数数值值加加1,以以指指向向下下一一个个IP地地址址的的位位置置。在在指指针针之之后后是是IP数数据据报报所所要要经经过过路路由由器器的的IP地地址址列表。列表。3.2IP协议协议 3.2.4 IP数据报选项数据报选项(2) 宽松源路由选择宽松源路由选择宽宽松松源源路路由由选选择择由由发发送送端端指指明明一一个个数数据据报报经经过

56、过的的IP地地址址清清单单,但但是是在在数数据据报报传传输输的的路路径径上上,可可以以在在选选项项中中指指定定的的两两个个IP地地址址之之间间有有其其它它IP地地址址的的路路由由器器。宽宽松松源源路路由由选选择择选选项项的的格格式式与与图图3-13所所示示的的严严格格源源路路由由选选择择选选项项的的格格式式相相同同,各各字字段段的的含含意意也也一一样样,但选项码字段的值为但选项码字段的值为0x83。3.2IP协议协议 3.2.4 IP数据报选项数据报选项2. 记录路由记录路由通通过过设设置置记记录录路路由由选选项项,IP数数据据报报就就可可以以记记录录数数据据报报从从源源主主机机传传输到目标主

57、机时,所经过路径上各个路由器的输到目标主机时,所经过路径上各个路由器的IP地址。地址。记记录录路路由由选选项项的的数数据据格格式式与与图图3-9所所示示的的格格式式相相同同,但但选选项项码码字字段段的的值值为为0x87,指指针针的的初初值值为为4,指指向向存存放放第第一一个个IP地地址址的的位位置置。IP数数据据报报经经过过各各路路由由器器时时,每每个个路路由由器器的的IP地地址址存存入入选选项项的的数数据据区区中中,指指针针字字段段的的值值也也随随着着增增加加(从从4开开始始到到8、12、16、最最大大到到36),它它始始终终指指向向下下一一个个存存放放IP地地址址的的位位置置,当当记记录录

58、了了9个个IP地址后,指针字段的值为地址后,指针字段的值为40,表示数据区已满。,表示数据区已满。3.2IP协议协议 3.2.4 IP数据报选项数据报选项3. 记录时间戳记录时间戳所所谓谓记记录录时时间间戳戳就就是是IP数数据据报报每每经经过过一一个个路路由由器器都都记记下下它它的的IP地地址址和和时时间间。时时间间戳戳中中的的时时间间以以ms为为单单位位,时时间间戳戳的的取取值值一一般般为为格林威治时间(格林威治时间(universal time)自午夜开始计时的毫秒数。)自午夜开始计时的毫秒数。时时间间戳戳选选项项的的选选项项代代码码为为0x44。选选项项长长度度表表示示选选项项的的总总长

59、长度度(一一般般为为36或或40),指指针针指指向向下下一一个个可可用用空空间间的的指指针针(值值为为5,9,13等)。等)。接接下下来来的的两两个个字字段段各各占占4位位:溢溢出出字字段段OF(Over Flow)表表示示因因时时间间戳戳选选项项数数据据区区空空间间不不够够,而而未未能能记记录录下下来来的的时时间间戳戳个个数数。标志字段标志字段FL用于控制时间戳选项的格式。用于控制时间戳选项的格式。3.3IP地址地址3.3.1 IP地址的表示格式地址的表示格式互互联联网网是是由由很很多多网网络络连连接接而而成成的的,互互联联网网中中的的数数据据报报有有些些是是在在本本网网内内主主机机之之间间

60、传传输输的的,有有些些是是要要送送到到互互联联网网中中其其它它网网络络中中主主机机的的数数据据报报,因因此此,IP地地址址不不但但要要标标识识在在本本网网内内的的主主机机号号,还还要要标识在互联网中的网络号。标识在互联网中的网络号。一一个个IP地地址址由由网网络络号号和和主主机机号号两两部部分分组组成成,网网络络号号标标识识互互联联网网中中的的一一个个特特定定网网络络,主主机机号号标标识识该该网网络络中中的的一一台台特特定定主主机机。这这样样给给定定一一个个IP地地址址,就就可可以以很很方方便便的的知知道道它它是是哪哪个个网网络络上上的的哪哪一一台台主机。主机。3.3IP地址地址3.3.1 I

61、P地址的表示格式地址的表示格式表示方法表示方法举举 例例说说 明明二进制二进制10000110000110000000100001000010计算机内部使用计算机内部使用十进制十进制2249721922很少使用很少使用十六进制十六进制0X86180842较少使用较少使用点分十进点分十进制制134.24.8.66最常用最常用3.3IP地址地址3.3.2 IP地址的分类地址的分类在在Internet发发展展的的初初期期,人人们们用用IP地地址址的的前前8位位用用来来定定义义所所在在的的网网络络,后后24位位用用来来定定义义该该主主机机在在当当地地网网络络中中的的地地址址。这这样样互互联联网网中中最

62、最多多只只能能有有255(应应该该有有256个个,但但全全1的的IP地地址址用用于于广广播播)个个网网络络。后后来来由由于于这这种种方方案案可可以以表表示示的的网网络络数数太太少少,而而每每个个网网络络中中可可以以连连入入的的主主机机又又非非常常多多,这这不不符符合合互互联联网网的的实实际际情情况况。于于是是,人人们们设设计计了了一一种种新新的的编编码码方方案案,该该方方案案中中用用IP地地址址高高位位字字节节的的若若干干位位来来表表示示不不同同类类型型的的网网络络,以以适适应应大大型型、中中型型、小小型型网网络络对对IP地地址址的的需需求求。这这种种IP地地址址分分类类法法把把IP地地址址共

63、共分分为为A、B、C、D和和E共五类,用共五类,用IP地址的高位来区分。地址的高位来区分。3.3IP地址地址3.3.2 IP地址的分类地址的分类类别类别类标识类标识第一字第一字节节网络地址长度网络地址长度主机地址长度主机地址长度最大网络最大网络数数最大主机数最大主机数选用范围选用范围A类类011261字节字节3字节字节12616777214大型网络大型网络B类类101281912字节字节2字节字节1638265534中型网络中型网络C类类1101922233字节字节1字节字节2097150254小型网络小型网络D类类1110224239-多点播送多点播送E类类11110240247-保留地址保

64、留地址3.3IP地址地址3.3.3 子网的划分子网的划分1.子网与子网地址子网与子网地址IP地地址址最最初初使使用用两两层层地地址址结结构构(包包括括网网络络地地址址和和主主机机地地址址),在在这这种种结结构构中中A类类和和B类类网网络络所所能能容容纳纳的的主主机机数数非非常常庞庞大大,但但使使用用C类类IP地址的网络只能接入地址的网络只能接入254台主机。台主机。随随着着时时间间的的推推移移,计计算算机机网网络络技技术术不不断断普普及及,有有大大量量的的个个人人用用户户和和小小型型局局域域网网接接入入互互联联网网,对对于于这这样样的的用用户户,即即使使分分配配一一个个C类类网网络络地地址址仍

65、仍然然会会造造成成IP地地址址的的很很大大浪浪费费。因因此此,人人们们提提出出了了三三层层结结构构 的的 IP地地 址址 , 把把 每每 个个 网网 络络 可可 以以 进进 一一 步步 划划 分分 成成 若若 干干 个个 子子 网网(subnet),子网内主机的),子网内主机的IP地址由三部分组成。地址由三部分组成。一一个个网网络络可可以以划划分分成成多多少少个个子子网网,由由子子网网地地址址位位数数决决定定,当当然然一一种种给给定定类类型型的的IP地地址址,如如果果子子网网占占用用的的位位数数越越多多,子子网网内内主主机机就就越越少少。划划分分子子网网进进一一步步减减少少了了可可用用的的IP

66、地地址址数数量量,这这是是因因为为,把把主机地址的一部分拿走用于识别子网和进行子网内广播主机地址的一部分拿走用于识别子网和进行子网内广播.3.3IP地址地址3.3.3 子网的划分子网的划分2.子网掩码子网掩码对对于于划划分分了了子子网网的的网网络络,由由于于子子网网地地址址是是由由两两级级地地址址结结构构中中主主机机地地址址的的若若干干位位组组成成的的,具具体体子子网网所所占占位位数数的的多多少少,要要根根据据子子网网的的规规模模来来决决定定,如如果果一一个个网网络络内内的的子子网网数数较较少少,而而子子网网内内主主机机数数较较多多,就就应应该该把把两两级级地地址址结结构构中中主主机机地地址址

67、的的大大部部分分位位数数分分配配给给子子网网内内的的主主机机,少少量量位位用用来来表表示示子子网网号号。那那么么,究究竟竟在在一一个个IP地地址址中中哪哪些些位位用用来来表表示示网网络络号号,哪哪些些位位用用来来表表示示子子网网号号,以以及及哪哪些些位位用用来来表表示示主主机机号号呢呢?这这就就要要使使用用子子网网掩掩码码(subnet mask)来标识。)来标识。3.3IP地址地址3.3.3 子网的划分子网的划分2.子网掩码子网掩码子子网网掩掩码码用用32位位二二进进制制数数表表示示,常常用用点点分分十十进进制制数数格格式式来来书书写写,掩掩码码中中用用于于标标识识网网络络号号和和子子网网号

68、号的的位位置置为为1,主主机机位位为为0。举举例例来来说说,一一个个C类类地地址址取取主主机机号号的的两两位位为为子子网网号号,则则掩掩码码为为11111111.11111111.11111111.11000000(255.255.255.192),子子网网可可以以产产生生64个个可可能能的的主主机机地地址址,实实际际上上只只有有62个个地地址址是是可可用用的的,另另外外两两个个地地址址,一一个个用用于于识识别别子子网网自自身身,另另一一个个用用于于子子网网的的广广播播,因因此此得得到到子子网网内内最最大大可可用用的的主主机机数数时时总总要要减减去去2。如如2位位的的子子网网号号数数学学上上的

69、的组组合合为为00、01、10和和11共共四四种种,第第一一种种和和最最后后一一种种组组合合有有特特殊殊用用处处,只只剩剩下下01和和10可可用用于于识识别别子子网网,得得到到2个可用的子网地址。个可用的子网地址。3.3IP地址地址3.3.4 特殊特殊IP地址地址IP地地址址用用来来标标识识互互联联网网中中的的主主机机,但但少少数数IP地地址址有有特特殊殊用用途途,不不能能分分配配给给主主机机,共共有有如如下下几几种种(以以下下用用Netid表表示示网网络络号号,用用Hostid表示主机号)。表示主机号)。1.网络地址(网络地址(Netid=特定网络号,特定网络号,Hostid=0)在在互互联

70、联网网中中经经常常要要使使用用某某个个网网络络的的网网络络地地址址。在在IP地地址址编编码码方方案案中中,网网络络地地址址由由一一个个有有效效的的网网络络号号和和全全“0”的的主主机机地地址址组组成成。例例如如,某某主主机机的的IP地地址址为为100.1.1.110,它它是是一一个个A类类地地址址,则则该该主主机机 所所 在在 网网 络络 的的 地地 址址 为为 100.0.0.0, 某某 主主 机机 的的 IP地地 址址 为为157.34.12.56,它它是是一一个个B类类地地址址,则则主主机机所所在在网网络络的的地地址址为为157.34.0.0。3.3IP地址地址3.3.4 特殊特殊IP地

71、址地址2.直接广播地址(直接广播地址(Netid=特定网络号,特定网络号,Hostid=全全1)当当IP地地址址由由一一个个有有效效的的网网络络号号和和全全“1”的的主主机机地地址址组组成成时时,这这样样的的IP地地址址用用于于广广播播通通信信,即即同同时时向向指指定定网网络络中中的的所所有有主主机机发发送送数数据据报报,叫叫直直接接广广播播(directed broadcasting),具具有有这这种种特特点点的的IP地地址址叫叫直直接接广广播播地地址址。例例如如,当当互互联联网网中中的的一一台台主主机机如如果果使使用用157.34.255.255为为目目标标地地址址发发送送数数据据报报时时

72、,则则网网络络号号为为157.34.0.0的网络中的所有主机都能收到该数据报。的网络中的所有主机都能收到该数据报。3.3IP地址地址3.3.4 特殊特殊IP地址地址3.有限广播地址(有限广播地址(Netid=全全1,Hostid=全全1)有有限限广广播播(limited broadcast)地地址址也也称称为为本本网网广广播播地地址址,如如果果IP地地址址的的32位位二二进进制制数数全全为为“1”,这这样样的的地地址址用用于于对对本本网网广广播播通通信信。也也就就是是说说,如如果果一一台台主主机机发发送送的的数数据据报报,目目标标IP地地址址为为255.255.255.255,则该数据报被送到

73、本网中的每一台主机。则该数据报被送到本网中的每一台主机。4.本网特定主机地址(本网特定主机地址(Netid=全全0,Hostid=特定主机号)特定主机号)在在本本网网内内部部主主机机之之间间通通信信时时,可可以以用用网网络络地地址址全全为为“0”的的IP地地址址。这这有有两两种种情情况况:一一是是可可能能主主机机想想进进行行本本网网内内主主机机之之间间的的通通信信,但但又又不不知知道道本本网网的的网网络络地地址址;二二是是为为了了简简单单起起见见,在在本本网网络络内内通通信信时时只只给给出出目目标标主主机机的的主主机机号号。例例如如,某某主主机机发发送送数数据据报报时时,目目标标IP地地址址为

74、为0.0.123.42(B类类地地址址),则则表表示示该该数数据据报报要要送送到到本网主机号为本网主机号为123.42的主机上。的主机上。3.3IP地址地址3.3.4 特殊特殊IP地址地址5.回送地址(回送地址(Netid=127,Hostid=任意值)任意值)A类类地地址址中中网网络络地地址址为为127的的地地址址是是一一个个保保留留地地址址,用用于于网网络络软软件件测测试试或或本本机机进进程程间间通通信信,发发送送到到这这种种地地址址的的数数据据报报不不输输出出到到线线路路上上,而而是是数数据据报报被被立立即即返返回回,又又当当作作输输入入数数据据报报,在在本本机机内内部部进进行行处处理理

75、,所所以以称称为为回回送送(look back)地地址址。在在任任何何网网络络上上不不可可能能出出现现网网络络地地址址为为127的的数数据据报报在在传传输输,一一般般用用来来对对本本机机协议的正确性进行测试。协议的正确性进行测试。3.3IP地址地址3.3.4 特殊特殊IP地址地址6.本网络本主机(本网络本主机(Netid=全全0,Hostid=全全0)全全“0”的的IP地址表示本网络上的本主机。地址表示本网络上的本主机。从从上上面面可可以以看看出出,IP地地址址网网络络地地址址或或主主机机地地址址中中值值“全全0”和和值值“全全1”有有特特别别的的含含意意,值值“全全0”表表示示本本网网络络或

76、或本本主主机机;值值“全全1”表表示一个广播地址。示一个广播地址。如如果果用用户户网网络络不不与与互互联联网网相相连连,从从原原理理上上来来说说,可可以以由由用用户户自自行行分分配配IP地地址址,但但最最好好还还是是使使用用互互联联网网地地址址分分配配管管理理机机构构保保留留的的私有私有IP地址,这些地址范围是:地址,这些地址范围是:A类地址类地址:10.0.0.110.255.255.254B类地址类地址:172.13.0.1172.32.255.254C类地址类地址:192.168.0.1192.168.255.2543.4 Internet控制报文协议(控制报文协议(ICMP)3.4.1

77、 ICMP报文的封装与格式报文的封装与格式1.ICMP报文的封装报文的封装ICMP报报文文和和其其它它协协议议的的报报文文一一样样,也也由由ICMP报报文文头头区区和和数数据据区区两两部部分分组组成成。ICMP报报文文是是封封装装在在IP数数据据报报中中通通过过链链路路层层在在网网络络进进行行传传输输的的。这这与与高高层层其其它它协协议议(如如TCP、UDP等等)相相似似,它它在在IP数数据据报报头头中中的的协协议议标标识识是是1。我我们们通通常常还还是是把把ICMP看看成成是是网网络络层层(IP层层)协协议议,主主要要有有两两个个原原因因:一一是是ICMP只只传传送送差差错错与与控控制制报报

78、文文,不不可可能能在在TCP/IP协协议议簇簇中中构构成成一一个个单单独独的的层层;二二是是ICMP报报文文处处理理与与传传输输的的都都是是有有关关IP层层的的信信息息,收收到到ICMP报报文文的的主主机机一一般般也也把把报报文文交交给给IP层层的的ICMP模模块块进进行行处处理理,因因此此从从协议逻辑层次来说,协议逻辑层次来说,ICMP属于网络层协议。属于网络层协议。3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.1 ICMP报文的封装与格式报文的封装与格式2.ICMP报文的格式报文的格式ICMP报报文文的的格格式式如如图图3-17所所示示,其其中中报报文文头头分分为为

79、三三个个部部分分:类类型、代码和校验和。型、代码和校验和。类型类型(8(8位位) )代码代码(8(8位位) )校验和校验和(16(16位位) )ICMPICMP数据区数据区3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.2 ICMP差错报文差错报文1.ICMP差错报文的特点差错报文的特点报报告告IP数数据据报报在在传传输输中中的的差差错错是是ICMP报报文文最最基基本本的的功功能能,ICMP差差错报文有如下特点:错报文有如下特点:(1)ICMP差差错错报报文文都都是是由由路路由由器器发发送送到到源源主主机机的的,因因为为IP数数据据报报中中含含有有源源主主机机的的IP地地

80、址址,报报告告给给源源主主机机是是最最可可行行的的方方案案,另另外外,发发出出IP数据报的源主机最需要知道数据是否到达目标主机。数据报的源主机最需要知道数据是否到达目标主机。(2)ICMP差差错错报报文文只只提提供供IP数数据据报报在在传传输输过过程程中中的的差差错错报报告告,并并不不规规定定对对各各类类差差错错应应采采取取什什么么样样的的处处理理措措施施。具具体体对对差差错错的的处处理理,由由收收到到ICMP差差错错报报文文的的源源主主机机将将相相应应的的差差错错与与应应用用程程序序联联系系起起来来才能进行相应的差错处理。才能进行相应的差错处理。(3)ICMP差差错错报报文文不不享享受受任任

81、何何优优先先权权,也也没没有有特特别别的的可可靠靠性性保保证证措措施施,与与普普通通的的IP数数据据报报一一样样进进行行传传输输,传传输输过过程程中中可可能能被被丢丢失失、损坏,甚至被抛弃。损坏,甚至被抛弃。(4)ICMP差错报文是伴随着抛弃出错的差错报文是伴随着抛弃出错的IP数据报而产生的。数据报而产生的。3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.2 ICMP差错报文差错报文1.ICMP差错报文的特点差错报文的特点(5)当当路路由由器器发发送送一一份份ICMP差差错错报报文文时时,ICMP报报文文数数据据区区始始终终包包含含产产生生ICMP差差错错报报文文的的IP

82、数数据据报报的的首首部部和和其其数数据据区区的的前前8个个字字节节(64位位)。这这样样做做的的目目的的是是,接接收收到到ICMP差差错错报报文文的的模模块块就就会会把把它它与与某某个个特特定定的的上上层层协协议议TCP或或UDP(根根据据IP数数据据报报首首部部中中的的协协议议字字段段来来判判断断)联联系系起起来来,再再根根据据包包含含在在IP数数据据报报数数据据区区前前8个个字字节节中中的的内内容容,把把TCP或或UDP报报文文首首部部的的端端口口号号与与某某应应用用程程序序联联系系起起来来(端端口口在在下下一一章章介介绍绍,读读者者可可以以学学习习完完下下一一章章内内容容后后,回回过过头

83、头来来再再学学习习该该内内容容),这这样样就就可可以以知知道道是是哪哪个个应应用用程程序序发发送送的的数数据据未未送送到到目标主机,由应用程序做出相应的处理。目标主机,由应用程序做出相应的处理。(6)在在有有些些情情况况下下,为为了了防防止止在在网网络络中中产产生生大大量量的的ICMP差差错错报报文文(广广播播风风暴暴),影影响响网网络络的的正正常常工工作作,即即使使发发生生差差错错,也也不不会会产产生生ICMP差错报文。差错报文。3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.2 ICMP差错报文差错报文2.目标不可达目标不可达ICMP报文报文目目标标不不可可达达是是指

84、指当当一一个个路路由由器器检检测测出出一一个个IP数数据据报报不不能能发发往往它它的的目目的地时,路由器发出一个目标不可达的的地时,路由器发出一个目标不可达的ICMP差错报文。差错报文。3.IP数据报超时数据报超时ICMP报文报文当当IP数数据据报报报报头头中中生生存存时时间间TTL的的值值减减为为0时时,路路由由器器则则抛抛弃弃该该IP数数据据报报,并并且且产产生生一一个个ICMP超超时时报报文文,向向源源主主机机报报告告超超时时错错误误。ICMP超超时时报报文文的的格格式式与与图图3-18所所示示的的ICMP不不可可达达报报文文格格式式相相同同,类类型型字字段段取取值值为为11,代代码码字

85、字段段为为0或或为为1。为为0时时表表示示IP数数据据报报传传输输期间期间TTL超时,为超时,为1时表示分片重组时超时。时表示分片重组时超时。4.参数错误参数错误ICMP报文报文当当IP数数据据报报在在传传输输过过程程中中发发生生数数据据报报报报头头错错误误或或数数据据报报选选项项区区缺缺少少必必要要的的参参数数时时,路路由由器器则则抛抛弃弃该该IP数数据据报报,并并且且产产生生一一个个ICMP参参数数出出错错报报文文。类类型型字字段段为为12,代代码码字字段段为为0或或1,为为0时时表表示示IP数数据据报报头错误,引起错误的字节用一个指针字段指出,报报头错误,引起错误的字节用一个指针字段指出

86、,3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.3 ICMP控制报文控制报文1 拥塞控制与源站抑制报文拥塞控制与源站抑制报文当当一一个个路路由由器器接接收收IP数数据据报报的的速速度度比比其其处处理理IP数数据据报报的的速速度度快快,或或一一个个路路由由器器传传入入数数据据报报的的速速率率大大于于传传出出数数据据报报的的速速率率时时,就就会会产产生生拥拥塞塞(congestion)现现象象。这这时时路路由由器器可可以以通通过过发发送送源源站站抑抑制制(source quench)报报文文来来抑抑制制源源主主机机发发送送IP数数据据报报的的速速率率,避避免免可可能产生的差

87、错。能产生的差错。源站抑制技术是如何进行拥塞控制的呢?源站抑制技术是如何进行拥塞控制的呢?当当路路由由器器发发现现拥拥塞塞时时,发发出出ICMP源源站站抑抑制制报报文文。拥拥塞塞的的判判别别可可以以用用这这几几种种方方法法:一一是是根根据据路路由由器器缓缓存存区区已已满满, 二二是是给给缓缓存存区区输输出出队队列列设设置置一一个个阈阈值值,当当队队列列中中数数据据报报的的个个数数超超过过阈阈值值时时,三三是是检检测测到到某输入线路传输率过高时。某输入线路传输率过高时。源源主主机机收收到到抑抑制制报报文文后后,按按一一定定的的速速率率降降低低发发往往目目标标主主机机的的数数据据报报传输率。传输率

88、。如如果果在在一一定定的的时时间间间间隔隔内内源源主主机机没没有有收收到到抑抑制制报报文文,便便认认为为拥拥塞塞已已解除,源主机可以逐渐恢复到原来数据报的流量。解除,源主机可以逐渐恢复到原来数据报的流量。3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.3 ICMP控制报文控制报文2 路由控制与重定向报文路由控制与重定向报文在在主主机机启启动动后后,一一般般通通过过默默认认的的路路由由器器把把IP数数据据报报发发送送出出去去,但但不不能能保保证证是是最最优优的的路路由由,因因为为网网络络中中的的路路由由器器或或网网络络拓拓扑扑结结构构都都可可能能随随网网络络的的调整而以生变

89、化。调整而以生变化。ICMP重重向向定定报报文文的的格格式式如如图图3-21所所示示,它它的的类类型型字字段段为为5,代代码码字字段段为为03。路由器。路由器IP地址为源主机向目标主机发送地址为源主机向目标主机发送IP数据报时的优化路由。数据报时的优化路由。类类 型(型(8位)位)代代 码码 (8位位)校校 验验 和(和(16位)位)路路 由由 器器 IP地地 址址IP 数数 据据 报报 头头 部(一部(一 般般 为为 2 0个个 字字 节)节)IP 数数 据据 报报 数数 据据 区区 前前8个字节个字节3.4 Internet控制报文协议(控制报文协议(ICMP)3.4.4 ICMP请求与应

90、答报文请求与应答报文差差错错报报文文和和控控制制报报文文都都是是送送往往源源主主机机的的单单向向报报文文,并并且且对对源源主主机机来来说说都都是是被被动动的的接接受受。ICMP请请求求与与应应答答报报文文可可以以由由源源主主机机主主动动发发出出请请求求报报文文,为为了了响响应应一一个个请请求求,ICMP软软件件需需要要发发送送一一个个ICMP应应答答报报文文。通通过过这这种种方法可以获得网络中某些有用的信息,以便进行故障诊断和网络控制。方法可以获得网络中某些有用的信息,以便进行故障诊断和网络控制。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.1 路由表路由表网络层进行路

91、由选择的依据是保存在路由器中的路由表。网络层进行路由选择的依据是保存在路由器中的路由表。路路由由表表保保存存了了通通过过该该路路由由器器可可能能到到达达的的目目标标网网络络以以及及如如何何到到达达该该目目标标网网络络的的信信息息。路路由由表表中中的的基基本本表表项项包包括括目目标标网网络络地地址址、子子网网掩掩码码以以及及到到达达目目标标网网络络的的下下一一跳跳路路由由器器地地址址。目目标标地地址址一一般般为为目目标标网网络络地地址址,因因为为同同一一个个网网络络中中的的主主机机网网络络号号相相同同,这这样样做做的的优优点点是是可可以以减减少少路路由由表表的的规规模模,提提高高对对路路由由表表

92、的的搜搜索索速速度度。子子网网掩掩码码可可以以使使路路由由器器以以网网络络中中的的子子网网为为目目标标网网络络(该该例例中中没没有有划划分分子子网网)。下下一一站站路路由由器器是是一一个个与与该该路路由由器器连连接接在在同同一一个个网网络络上上的的路路由由器器,为为了了把把路路由由器器收收到到的的数数据据报报送送到到目目标标网网络络,路路由由器器必必须须把把数数据据报报传传输输到到该该地地址址指指定定的的接接口口,下下一一站站路路由由器器并并不不一一定定与与目目标标网网络络直直接接相相连连,但但是是通通过过它它可可以以把把数数据据报报转转发发到到最最终终目目的的主主机机。对与该路由器直接相连的

93、网络则可直接投递。对与该路由器直接相连的网络则可直接投递。路路由由表表的的目目标标地地址址主主要要是是目目标标网网络络地地址址,但但也也可可以以包包含含两两种种特特殊殊的的路路由由表表项项。一一种种是是默默认认路路由由,它它可可以以进进一一步步简简化化路路由由表表,当当路路由由表表中中没没有有表表项能与目标网络相匹配时,就把数据报发送到默认路由。项能与目标网络相匹配时,就把数据报发送到默认路由。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.2 路由选择算法路由选择算法路路由由器器具具体体如如何何实实现现路路由由选选择择,由由路路由由选选择择算算法法来来完完成成。路路由由

94、选选择择算算法法(routing algorithm)工工作作在在网网络络层层,它它负负责责确确定定对对所所收收到到的的IP数数据据报报应通过哪条传输线传出(转发)。下面给出路由选择的一般算法:应通过哪条传输线传出(转发)。下面给出路由选择的一般算法:1 路由器从收到的路由器从收到的IP数据报中取出目标数据报中取出目标IP地址;地址;2 搜搜索索路路由由表表,寻寻找找能能与与目目的的IP地地址址完完全全匹匹配配的的表表目目(网网络络号号和和主主机机号号都都要要匹匹配配)。如如果果找找到到,则则把把报报文文发发送送给给该该表表目目指指定定的的下下一一站站路路由由器器或或直直接接连连接接的的网网络

95、络接接口口,路路由由选选择择过过程程结结束束;如如果果找找不不到到,则则执执行行下下一一步操作;步操作;3 搜搜索索路路由由表表,把把目目标标IP地地址址与与子子网网掩掩码码逐逐位位求求“与与”后后,寻寻找找能能与与目目的的网网络络号号相相匹匹配配的的表表目目。如如果果找找到到,则则把把报报文文发发送送给给该该表表目目指指定定的的下下一一站站路路由由器器或或直直接接连连接接的的网网络络接接口口,路路由由选选择择过过程程结结束束;如如果果找找不不到到,则则执行下一步操作;执行下一步操作;4 搜搜索索路路由由表表,寻寻找找标标为为“默默认认(default)”的的表表目目。如如果果找找到到,则则把

96、把报报文文发发送送给给该该表表目目指指定定的的下下一一站站路路由由器器;如如果果找找不不到到,则则本本次次选选路路失失败败,发送一个发送一个“目标不可达目标不可达”的的ICMP报文给源主机。报文给源主机。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由表的建立与刷新路由表的建立与刷新路路由由器器是是根根据据路路由由表表对对所所收收到到的的数数据据报报进进行行转转发发的的,那那么么路路由由表表是是如如何何建建立立并并更更新新的的呢呢?本本小小节节我我们们将将回回答答这这个个问问题题。路路由由可可分分为为静静态态路路由由和和动态路由两种,它们的建立和维护方式不同。动态

97、路由两种,它们的建立和维护方式不同。1 静态路由静态路由静静态态路路由由是是由由互互联联网网网网络络管管理理员员,根根据据网网络络的的拓拓扑扑结结构构和和连连接接方方式式人人工工建建立立的的。静静态态路路由由在在目目的的地地址址和和路路由由器器端端口口之之间间的的关关系系配配置置好好之之后后,到到达一个特定目标网络的达一个特定目标网络的IP数据报的路径就固定了。数据报的路径就固定了。静静态态路路由由的的优优点点是是可可以以使使网网络络更更安安全全,因因为为只只有有一一条条流流进进和和流流出出网网络络的的路路径径(除除非非定定义义多多条条静静态态路路由由)。另另一一个个优优点点是是静静态态路路由

98、由配配置置简简单单,系系统统开开销销少少,因因为为它它不不使使用用路路由由器器上上的的CPU来来计计算算路路由由,需需要要很很少少的的存存储储器器就就可可以以保保存存静静态态路路由由。因因此此在在互互联联网网中中的的很很多多设设备备都都使使用用了了静静态态路路由由,大大多多数数操操作作系系统统提提供供了了路路由由的的配配置置命命令令route,用用于于查查看看、修修改改、增增加加或或删删除路由。除路由。静静态态路路由由的的缺缺点点是是配配置置静静态态路路由由工工作作量量大大,并并且且要要求求网网络络管管理理员员熟熟悉悉互互联联网网的的结结构构,一一旦旦配配置置有有错错误误就就可可能能造造成成网

99、网络络无无法法正正常常工工作作。当当网网络络发发生生问问题题或或拓拓扑扑结结构构发发生生变变化化时时,网网络络管管理理员员要要对对路路由由信信息息重重新新进进行行设设置置。另另外外,在在静静态态路路由由配配置置完完成成后后,由由于于去去往往某某一一目目标标网网络络的的路路径径是是固固定定的的,如果该路径出现故障,即使有其它路径存在,目标网络也是不可达的。如果该路径出现故障,即使有其它路径存在,目标网络也是不可达的。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由表的建立与刷新路由表的建立与刷新2 动态路由动态路由动动态态路路由由指指互互联联网网中中的的路路由由器器

100、可可以以通通过过自自身身的的学学习习,自自动动修修改改和和刷刷新新路路由由表表。它它是是通通过过相相邻邻路路由由器器之之间间的的通通信信,以以告告知知对对方方每每个个路路由由器器当当前前所所连连接接的的网网络络,收收到到路路由由信信息息的的路路由由器器就就用用这这些些信信息息对对自自己己的的路路由由进进行行更更新新。路路由由器器之之间间必必须须采采用用选选路路协协议议进进行行通通信信,这这样样的的选选路路协协议议有有很很多多种种。在在路路由由器器上上有有一一个个进进程程称称为为路路由由守守护护程程序序(routing daemon),它它运运行行选选路路协协议议,并并与与其其相相邻邻的的一一些

101、些路路由由器器进进行行通通信信。路路由由守守护护程程序序如如果果发发现现前前往往同同一一目目标标系系统统存存在在多多条条路路由由,那那么么它它以以某某种种方方法法,选选择择最最佳佳路路由由并并加加入入到到内内核核路路由由表表中中。如如果果路路由由守守护护程程序序发发现现一一条条链链路路已已经经断断开开(可可能能是是路路由由器器崩崩溃溃或或通通信信线线路路不不好好造造成成的的),那那么么它它可可以以删删除除受受影影响响的的路路由由或或增增加另一条路由。加另一条路由。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由表的建立与刷新路由表的建立与刷新2 动态路由动态路由路

102、路由由守守护护程程序序在在选选择择最最佳佳路路由由时时,是是根根据据一一定定的的选选路路策策略略(routing policy)来来进进行行的的。选选路路策策略略与与线线路路的的速速度度、带带宽宽、延延迟迟、可可靠靠性性、跳跳数数(IP数数据据报报到到达达目目标标站站必必须须经经过过的的路路由由器器个个数数)等等因因素素有有关关,每每条条线线路路的的好好坏坏用用一一个个数数字字来来表表示示,这这个个数数字字称称为为度度量量值值(Metric),度度量量值值小小的的线线路路,说说明明通通过过该该线线路路到到目目标标的的代代价价就就小小。这这样样在在动动态态路路由由表表中中每每个个表表项项必必须须

103、增增加加度度量量值值这这一一属属性性。为为了了简简化化对对度度量量值值的的计计算算,有有些些路路由由协议用跳数(协议用跳数(hop count)代替度量值。)代替度量值。动动态态路路由由的的刷刷新新要要通通过过执执行行路路由由选选择择协协议议来来实实现现,在在互互联联网网中中,目目前前采采用用了了许许多多不不同同的的选选路路协协议议。但但每每个个自自治治系系统统AS(Autonomous System,自自治治系系统统通通常常指指是是由由单单个个实实体体管管理理的的系系统统,如如一一个个公公司司或或一一个个大大学学校校园园都都可可以以定定义义为为一一个个自自治治系系统统)必必须须使使用用相相同

104、同的的选选路路协协议议。用用户户自自治治系系统统最最常常用用的的路路由由协协议议有有两两种种:一一种种是是基基于于距距离离-向向量量路路由由算算法法的的路路由由信信息息协协议议RIP(Routing Information Protocol);另另一一种种中中是是基基于于链链路路-状状态态路路由算法的开放式最短路径优先由算法的开放式最短路径优先OSPF (Open Shortest Path First)协议。协议。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由选择协议路由选择协议1 距离距离-向量路由算法和路由信息协议向量路由算法和路由信息协议RIP距距离离-

105、向向量量算算法法,有有时时也也称称为为Bellman-Ford算算法法。该该算算法法的的基基本本思思想想是是路路由由器器会会周周期期性性地地把把自自己己的的路路由由表表拷拷贝贝传传送送给给与与其其直直接接相相连连的的网网络络中中的的各各个个路路由由器器。也也就就是是说说,每每个个路路由由器器都都会会把把自自己己可可以以到到达达的的目目标标网网络络(或或主主机机)以以及及到到达达这这些些网网络络的的代代价价(一一般般为为跳跳数数)告告诉诉给给与与它它相相邻邻的的其其它它路路由由器器,相相邻邻路路由由器器根根据据收收到到的的路路由由信信息息修修改改或或刷刷新新自自己己的的路路由由表表。刷刷新新的的

106、原原则则是是使使该该路路由由器器到到其其它它目目标标网网络络的的代代价价最最小小。举举一一个个例例子子,如如果果路路由由器器A告告诉诉路路由由器器B它它到到路路由由器器C的的代代价价是是2,而而路路由由器器B自自己己记记录录的的去去路路由由器器C的的代代价价是是6,那那么么,路路由由器器B就就会会发发现现它它经经过过路路由由器器A去去路路由由器器C的的代代价价只只有有3(因因为为路路由由器器B到到路路由由器器A为为1,路路由由器器A到到路路由由器器C为为2),所所以以路路由由器器B就就会会刷刷新新自自己己去去路路由由器器C的的路路由由,改改为为通通过过路路由由器器A到到路路由由器器C,代价为,

107、代价为3。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由选择协议路由选择协议距离距离-向量算法的具体内容描述如下:向量算法的具体内容描述如下:(1)在在初初始始启启动动路路由由器器时时,各各路路由由器器的的路路由由表表中中只只包包含含了了与与本本路路由由器器直直接接相相连连网网络络的的路路由由,因因为为各各路路由由器器还还不不知知道道去去其其它它网网络络的的信信息息,并并把把距距离设为离设为0(与本路由器直接相连)。(与本路由器直接相连)。(2)各各路路由由器器周周期期性性地地向向相相邻邻的的路路由由器器广广播播自自己己的的路路由由表表信信息息,收收到到广广播播

108、路路由由信信息息的的其其它它路路由由器器,根根据据这这些些信信息息对对自自己己的的路路由由表表进进行行刷刷新新。如如果果路路由由器器A收收到到了了发发自自路路由由器器B的的路路由由信信息息(以以下下用用A和和B表表示示),则则路路由器由器A路由表的刷新可以分为以下几种情况:路由表的刷新可以分为以下几种情况: 添添加加表表项项:A收收到到的的路路由由信信息息中中包包含含A原原来来路路由由表表中中没没有有的的表表项项(不不可可达达),则则A增增加加该该表表项项。表表项项中中的的目目标标网网络络与与B的的目目标标网网络络一一样样,下下一一个路由器为个路由器为B,距离为,距离为B到该目标网络的距离加到

109、该目标网络的距离加1。 修修改改表表项项:A收收到到的的路路由由信信息息中中的的某某表表项项在在原原来来A的的路路由由表表中中已已经经存存在在,也也就就是是说说A可可达达该该表表项项中中指指出出的的目目标标网网络络。可可分分为为两两种种情情况况,一一种种情情况况是是A原原来来没没有有经经过过B到到该该目目标标网网络络,如如果果经经过过B到到该该目目标标网网络络则则距距离离更更短短,路路由由表表的的修修改改方方法法是是,表表项项中中的的目目标标网网络络不不变变,下下一一个个路路由由器器为为B,距距离离为为B到到该该目目标标网网络络的的距距离离加加1。另另一一种种情情况况是是A原原来来路路由由表表

110、中中到到达达该该目目标标网网络络经经过过B,但但新新收收到到B发发来来的的路路由由信信息息中中距距离离更更短短,A的的路路由由表表只只修改该表项的距离,变为修改该表项的距离,变为B的距离加的距离加1。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 3.5.3 路由选择协议路由选择协议 删删除除表表项项:原原来来A的的路路由由表表包包含含经经过过B去去某某目目标标网网络络的的表表项项,但但新新收收到到的的B发发送送的的路路由由信信息息中中没没有有该该表表项项,说说明明经经过过B已已经经不不能能到到达达该该目目标标网网络,则该表项必须从络,则该表项必须从A的路由表中删除。的路由表中删

111、除。距距离离-向向量量路路由由选选择择算算法法在在网网络络中中的的具具体体使使用用是是通通过过RIP协协议议来来实实现现,该该协协议议规规定定了了路路由由器器之之间间广广播播发发送送路路由由信信息息(报报文文)的的时时间间间间隔隔(一一般般为为30秒秒)、信信息息格格式式、错错误误处处理理等等内内容容。另另外外,该该协协议议对对于于相相同同开开销销的的路路由由采采用用了了先先入入为为主主为为原原则则,还还给给路路由由表表中中的的每每条条路路由由增增加加了了一一个个定定时时器器,如如果果在在180秒秒内内没没有有收收到到关关于于该该路路由由的的信信息息,则则认认为为该该路路由由已已过过时时,从从

112、路路由表中删除。由表中删除。距距离离-向向量量路路由由的的优优点点是是算算法法简简单单、易易于于实实现现,缺缺点点是是当当网网络络失失败败或或发发生生其其他他变变化化时时,路路由由器器需需要要较较长长的的时时间间才才能能收收敛敛到到对对网网络络拓拓扑扑的的正正确确认认识识。在在收收敛敛过过程程中中,网网络络可可能能是是脆脆弱弱的的,产产生生不不一一致致的的路路由由,甚甚至至路路由由环环。有有许许多多措措施施(如如限限制制路路由由的的最最大大距距离离、水水平平分分割割、保保持持对对策策、毒毒性性逆逆转转等等,读读者者可可参参看看专专门门介介绍绍网网络络知知识识的的书书籍籍)来来防防止止这这些些情

113、情况况发发生生,但但在在收敛过程中,网络的性能仍处于危险之中。收敛过程中,网络的性能仍处于危险之中。RIP协协议议要要求求路路由由器器每每隔隔30秒秒钟钟无无向向地地广广播播其其路路由由表表,在在具具有有许许多多节节点点的的大大型型网网络络中中,这这会会消消耗耗掉掉相相当当数数量量的的带带宽宽,它它采采用用先先入入为为主主的的原原则则,缺缺乏乏负负载载均均衡衡的的能能力力。最最大大距距离离规规定定为为15,等等于于或或超超过过16的的距距离离视视为为不不可可达达路路由由,限限制制了了网网络络规规模模。路路由由度度量量值值以以跳跳数数代代替替,并并且且默默认认跳跳数数使使用用1(相邻路由之间),

114、没有考虑其它因素。(相邻路由之间),没有考虑其它因素。3.5 IP数据报路由选择与路由协议数据报路由选择与路由协议 2 链路链路-状态路由算法和开放式最短路径优先状态路由算法和开放式最短路径优先OSPF协议协议链链路路-状状态态路路由由算算法法也也叫叫最最短短路路径径优优先先算算法法,它它的的基基本本思思想想是是每每个个路路由由器器主主动动地地测测试试与与其其相相连连链链路路的的状状态态,并并将将这这些些信信息息发发送送给给其其它它相相邻邻的的路路由由器器,这这样样利利用用扩扩散散,每每个个路路由由器器可可以以告告诉诉它它所所在在区区域域的的其其它它路路由由器器,与与它它相相邻邻的的路路由由器

115、器及及其其开开销销,每每个个路路由由器器接接收收这这些些链链路路状状态态信信息息并并保保存存在在一一个个数数据据库库中中。根根据据这这些些数数据据,每每个个路路由由器器都都可可以以构构造造出出一一个个关关于于网网络络结结构构的的拓拓扑扑图图,根根据据该该图图和和每每条条链链路路的的代代价价,利利用用最最短短路路径径算算法法,每每个个路路由由器器都都可可以以求求得得以以自自己己为为根根的的一一棵棵最最短短路路径径生生成成树树,再再利利用用该该树树生生成成路由表。路由表。开开放放式式最最短短路路径径优优先先OSPF协协议议是是基基于于链链路路-状状态态路路由由算算法法的的,它它的的收收敛敛速速度度

116、比比距距离离向向量量协协议议更更快快,也也就就是是说说在在路路由由发发生生变变化化后后(如如在在路路由由器器关关闭闭或或链链路路出出故故障障),它它可可以以较较快快的的稳稳定定下下来来。它它还还可可以以根根据据吞吞吐吐率率、往往返返时时间间、可可靠靠性性或或其其他他性性能能来来生生成成路路由由。另另外外,当当同同一一个个目目的的地地址址存存在在着着多多个个相相同同费费用用的的路路由由时时,OSPF在在这这些些路路由由上上可可以以平平均均分分配配流流量量(流流量量平平衡衡)。综综上上所所述述,OSPF是是一一个个真真正正意意义义上上的的动动态态路路由由协协议议,现现在在,由由于于大大部部分分厂厂

117、商商提提供供的的路路由由器器支支持持OSPF协协议议,因因此此使使用用OSPF的的网网络络越越来来越多。越多。3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议1.ARP报文格式报文格式在在常常用用的的以以太太中中,ARP报报文文被被封封装装成成如如图图3-26所所示示的的以以太太网网数数据据帧帧,然然后以广播方式发送到物理网络。后以广播方式发送到物理网络。以太网目标以太网目标地址地址(6字节字节)以太网源地以太网源地址址(6字节字节)帧类帧类型型(2字字节节)ARP报文报文(28字节字节)3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议1.ARP报文格式报文格式ARP报

118、文格式如图报文格式如图3-27所示,所示,硬硬 件件 类类 型(型(16位)位)协协 议议 类类 型(型(16位)位)硬件地址长硬件地址长度(度(8位)位)协议地址长协议地址长度(度(8位)位)操操 作作 代代 码(码(16位)位)发发 送送 方方 硬硬 件件 地地 址(以太网为址(以太网为6字节)字节)发发 送送 方方 协协 议议 地地 址(址(IP地址为地址为4字节)字节)目目 标标 方方 硬硬 件件 地地 址(以太网为址(以太网为6字节)字节)目目 标标 方方 协协 议议 地地 址(址(IP地址为地址为4字节)字节)3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议1.ARP报

119、文格式报文格式(1)硬硬件件类类型型:硬硬件件类类型型字字段段占占2个个字字节节,表表示示发发送送者者硬硬件件地地址址的的类类型型。它的值为它的值为1即表示以太网地址。即表示以太网地址。(2)协协议议类类型型:字字段段类类型型字字段段占占2个个字字节节,表表示示发发送送方方要要映映射射的的协协议议地地址址类类型型,该该字字段段的的常常用用值值见见表表3-10所所示示。协协议议地地址址为为IP地地址址时时,它它的的值值为为0x0800。它的值与包含。它的值与包含IP数据报的以太网数据帧中的类型字段的值相同,数据报的以太网数据帧中的类型字段的值相同,(3)硬硬件件地地址址长长度度和和协协议议地地址

120、址长长度度:各各占占一一个个1字字节节,分分别别指指出出硬硬件件地地址址和和协协议议地地址址的的长长度度,以以字字节节为为单单位位。对对于于以以太太网网上上IP地地址址的的ARP请请求求或或应答来说,它们的值分别为应答来说,它们的值分别为6和和4。(4)操操作作代代码码:由由于于ARP和和RARP在在设设计计时时的的协协议议格格式式完完全全相相同同,只只有有该该字字段段可可以以对对它它们们进进行行区区分分。该该字字段段指指出出四四种种操操作作报报文文类类型型:值值为为1时时表表示示ARP请请求求报报文文,值值为为2时时表表示示ARP应应答答报报文文,值值为为3时时表表示示RARP请请求求报文,

121、值为报文,值为4时表示时表示RARP应答报文。应答报文。3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议1.ARP报文格式报文格式(5)发发送送方方硬硬件件地地址址和和发发送送方方协协议议地地址址:长长度度由由硬硬件件地地址址长长度度字字段段和和协协议地址长度字段指定。议地址长度字段指定。(6)目目标标方方硬硬件件地地址址和和目目标标方方协协议议地地址址:长长度度由由硬硬件件地地址址长长度度字字段段和和协协议地址长度字段指定。议地址长度字段指定。3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议2.ARP工作原理工作原理ARP工工作作时时,首首先先由由知知道道目目标标主主

122、机机IP地地址址,但但不不知知道道目目标标主主机机物物理理地地址址的的主主机机发发出出一一份份ARP请请求求报报文文,该该报报文文中中填填有有发发送送方方硬硬件件地地址址、发发送送方方IP地地址址和和目目标标方方IP地地址址,操操作作代代码码为为1,目目标标方方硬硬件件地地址址填填的的是是广广播播地地址址(在在以以太太网网中中为为全全1),所所以以该该网网络络内内的的所所有有主主机机都都可可以以收收到到该该报报文文,其含意是其含意是“如果你是这个如果你是这个IP地址的拥有者,请回答你的硬件地址地址的拥有者,请回答你的硬件地址”。目目的的主主机机的的ARP层层收收到到这这份份广广播播报报文文后后

123、,识识别别出出这这是是发发送送方方在在寻寻问问它它的的IP地地址址,于于是是发发送送一一个个ARP应应答答报报文文。这这个个ARP应应答答报报文文包包含含它它的的IP地地址址及及对对应应的的硬硬件件地地址址,操操作作代代码码为为2,把把原原来来发发送送方方硬硬件件地地址址和和协协议议地地址址填填入入目目标标方方硬硬件件地地址址和和协协议议地地址址位位置置,也也就就是是说说这这时时目目标标方方变变成成了了发发送送方方,发发送送方方变变成成了了目目标标方方。请请求求方方收收到到ARP应应答答报报文文后后,就就可可以以使使用用目目标方物理地址进行标方物理地址进行IP数据报的发送了。数据报的发送了。3

124、.6 地址转换协议地址转换协议 3.6.1 ARP协议协议3.ARP高速缓冲高速缓冲一一台台主主机机向向另另一一台台主主机机发发送送数数据据报报后后,可可能能不不久久还还要要发发送送,如如果果每每发发送送一一次次数数据据报报就就进进行行一一次次ARP请请求求,那那么么ARP的的工工作作效效率率很很低低。另另外外由由于于ARP请请求求是是以以广广播播方方式式发发送送的的,因因此此频频繁繁使使用用ARP会会使使造造成成网网络络拥拥挤挤,影响网络的正常工作。解决该问题的关键是使用了影响网络的正常工作。解决该问题的关键是使用了ARP高速缓冲技术。高速缓冲技术。在在网网络络中中,每每台台主主机机上上都都

125、有有一一个个ARP高高速速缓缓存存,这这个个高高速速缓缓存存存存放放了了最最近近IP地址到硬件地址之间的映射记录。高速缓冲区中表项建立的方法是:地址到硬件地址之间的映射记录。高速缓冲区中表项建立的方法是: 请请求求主主机机收收到到ARP应应答答后后,主主机机就就把把获获得得的的IP地地址址与与物物理理地地址址的的映映射关系存入射关系存入ARP表中。表中。 由由于于ARP请请求求报报文文是是广广播播发发送送的的,所所有有收收到到ARP请请求求报报文文的的主主机机都都以以可可把把其其中中发发送送方方的的物物理理地地址址和和IP地地址址映映射射存存入入自自己己的的高高速速缓缓冲冲中中,以以备将来使用

126、。备将来使用。 网网络络中中的的主主机机在在启启动动时时,可可以以主主动动广广播播自自己己的的IP地地址址和和物物理理地地址址的的映映射射关关系系,以以免免其其它它主主机机对对它它提提出出ARP请请求求(这这也也使使一一台台主主机机在在启启动动时时,就可以知道自己的就可以知道自己的IP地址与网络中其它主机的地址与网络中其它主机的IP地址有没有冲突)。地址有没有冲突)。3.6 地址转换协议地址转换协议 3.6.1 ARP协议协议3.ARP高速缓冲高速缓冲使使用用了了高高速速缓缓存存后后,要要ARP解解析析一一个个IP地地址址时时,它它会会首首先先搜搜索索ARP 高高速速缓缓存存查查看看是是否否有

127、有与与该该IP地地址址匹匹配配的的ARP表表项项,如如果果找找到到,ARP地地址址解解析析就就完完成成了了。假假如如ARP没没找找到到一一个个匹匹配配的的IP地地址址,才才会会向向网网络络上上发发送送ARP请请求求报报文文。我我们们可可以以用用arp命命令令来来检检查查和和修修改改ARP高高速速缓缓存存中中的的表表项项。ARP高高速速缓缓冲冲中中的的表表项项一一般般分分为为动动态态表表项项和和静静态态表表项项两两种种,动动态态表表项项有有一一定定的的生生存存时时间间,它它随随时时间间的的推推移移自自动动添添加加和和删删除除,静静态态表表项项在在主主机机工工作期间一直保留在高速缓冲中,除非用作期

128、间一直保留在高速缓冲中,除非用ARP命令删除它。命令删除它。3.6 地址转换协议地址转换协议 3.6.2 RARP协议协议在在对对主主机机进进行行配配置置时时,IP地地址址一一般般保保存存在在本本机机的的磁磁盘盘上上,因因此此系系统统引引导导时时从从磁磁盘盘上上的的配配置置文文件件中中读读取取本本机机的的IP地地址址。但但是是对对互互联联网网中中的的无无盘盘工工作作站站或或X终终端端等等无无法法在在本本机机保保存存IP地地址址的的主主机机,如如何何获获得得IP地地址址呢呢?设设计计RARP就是为了解决这个问题。就是为了解决这个问题。在在互互联联网网中中一一台台主主机机的的标标识识是是IP地地址

129、址,在在一一个个局局域域网网络络中中主主机机的的标标识识是是硬硬件件地地址址,它它保保存存在在网网络络接接口口卡卡中中,它它可可以以惟惟一一标标识识一一个个网网络络中中的的一一台台主主机机。无无盘盘工工作作站站在在启启动动时时,利利用用从从网网络络接接口口卡卡上上读读取取的的硬硬件件地地址址做做标标识识,发发送送一一个个RARP请请求求报报文文,它它和和RAP正正好好相相反反,用用来来获获取取主主机机的的IP地地址址。RARP请请求求报报文文在在网网络络中中也也是是广广播播发发送送的的,询询问问“谁谁知知道道这这个个物物理理地地址址对对应应的的IP地地址址”。通通常常在在系系统统中中设设有有专

130、专门门用用来来响响应应RARP请请求求的的RARP服服务务器器,在在RARP服服务务器器中中保保存存有有本本网网络络中中主主机机的的物物理理地地址址与与IP地地址址的的映映射射表表,RARP规规定定只只有有RARP服服务务器器能能产产生生应应答答报报文文。许许多多网网络络指指定定了了多多个个RARP服服务务器器,这这样样做做既既是是为为了了平平衡衡负负载载也也是是为为了了出出现现问问题题时时进进行行备备份份,但但会会出出现现多多个个RARP服服务务器器同同时时回回答答一一个个RARP请请求求的的现现象象,为为此此可可以以指指定定某某个个RARP服服务务器器为为主主服服务务器器,其其它它的的为为备备份份服服务务器器,备备份份服服务务器器在在规规定定的的时时间间内内检检测测不不到到主主服服务务器器对对RARP请请求求的的响响应应时时,才才进行应答。进行应答。3.6 地址转换协议地址转换协议 3.6.2 RARP协议协议RARP报报文文的的格格式式与与ARP报报文文格格式式基基本本一一致致(见见图图3-27)。它它们们之之间间主主要要的的差差别别是是RARP请请求求或或应应答答的的帧帧类类型型代代码码为为0x8035,见见表表3-10所所示示,而且而且RARP请求的操作代码为请求的操作代码为3,应答操作代码为,应答操作代码为4。个人观点供参考,欢迎讨论

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号