计算机网络基础 中文版 word可编辑016.docx
- 文档编号:11973731
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:18
- 大小:73.29KB
计算机网络基础 中文版 word可编辑016.docx
《计算机网络基础 中文版 word可编辑016.docx》由会员分享,可在线阅读,更多相关《计算机网络基础 中文版 word可编辑016.docx(18页珍藏版)》请在冰豆网上搜索。
计算机网络基础中文版word可编辑016
下载
第16章IP:
互联网协议地址
16.1概述
前一章介绍了用路由器连接多个物理网络的互联网的物理结构。
这一章开始讲述协议软件,该软件使互联网看上去像一个单一、无缝的通信系统。
本章介绍互联网协议(IP)采用的编址方案,并解释IP如何划分地址类型。
第16~19章对IP深入解说,每章详细讨论了协议的一个方面。
第16章到第19章作为一组,定义IP协议并解释IP软件怎样使计算机能在因特网上交换包。
16.2虚拟互联网地址
回顾第15章,网络互联的目标是提供一个无缝的通信系统。
为达到这个目标,互联网协议必须屏蔽物理网络的具体细节,并提供一个大虚拟网的功能。
虚拟互联网操作像任何网络一样操作,允许计算机发送和接收信息包。
互联网和物理网的主要区别是互联网仅仅是设计者想象出来的抽象物,完全由软件产生。
设计者可在不考虑物理硬件细节的情况下自由选择地址、包格式和发送技术。
编址是互联网抽象的一个关键组成部分。
为了以一个单一的统一系统出现,所有主机必须使用统一编址方案。
不幸的是,物理网络地址并不满足这个要求,因为一个互联网可包括多种物理网络技术,每种技术定义了自己的地址格式。
这样,两种技术采用的地址因为长度不同或格式不同而不兼容。
为保证主机统一编址,协议软件定义了一个与底层物理地址无关的编址方案。
虽然互联网编址方案是由软件产生的抽象,协议地址仍作为虚拟互联网的目的地址使用,类似于硬件地址
被作为物理网络上的目的地址使用。
为了在互联网上发送包,发送方把目的地协议地址放在包中,将包传给协议软件去发送。
这个软件使用的是目的地协议地址将包转发至目标机。
由于屏蔽了下层物理网络地址细节,统一编址有助于产生一个大的、无缝的网络的幻象。
两个应用程序不需知道对方的硬件地址就能通信。
这个幻象实在太完美了,以至于有些用户发现协议地址是由软件提供而不是计算机系统的一部分时大吃一惊(大多数用户并不使用协议地
址,他们提供计算机的名字,让软件映射名字到等价的地址。
第25章描述了怎样产生这种映射)。
有意思的是,我们将会发现协议软件的许多层也使用协议地址。
概述如下:
为了提供互联网中的统一编址,协议软件定义了一个抽象的编址方案,给每台主机分配一个唯一的地址。
用户、应用程序及高层协议软件都使用这一抽象地址进行通信。
16.3IP编址方案
在TCP/IP协议栈中,编址由互联网协议(InternetProtocol,IP)规定。
IP标准规定每台主机分配一个32位二进制数作为该主机的互联网协议地址(InternetProtocoladdress),常简写为IP地址或互联网地址(这三项在本著作及本文中作为同义词使用)。
在互联网上发送的每个包中含有这种32位的发送方(源)IP地址和想要送达的接收方(目的)IP地址。
这样,为了在使
用TCP/IP的互联网上发送信息,一台计算机必须知道接收信息的远程计算机的IP地址。
概述如
下:
互联网地址(IP地址)是一个分配给一台主机,并用于该主机所有通信的惟一的
32位二进制数。
16.4IP地址层次
概念上,每个32位IP地址被分割成两部分:
前缀和后缀,这样的两级层次结构设计使寻径很有效(16.4节讲述层次性,16.5节说明一个地址是如何分割成两部分,第19章解释IP软件如何使用地址的这两部分转发包)。
地址前缀部分确定了计算机从属的物理网络,后缀部分确定了该网络上的一台计算机。
也就是说,互联网中的每一物理网络分配了惟一的值作为网络号
(networknumber)。
网络号在从属于该网络的每台计算机地址中作为前缀出现。
更进一步说,同一物理网络上每台计算机分配了唯一的地址后缀。
虽然没有两个网络能分配同一个网络号,同一网络上也没有两台计算机分配同一个后缀,但是一个后缀值可在多个网络上使用。
例如,一个互联网包含三个网络,它们可分配网络号为
1、2、3。
从属于网络1的三台计算机可分配后缀为1、3和5,同时,从属于网络2的三台计算机
也可分配后缀为1、2和3。
IP地址层次保证了两个重要性质:
1)每台计算机分配一个惟一地址(即一个地址从不分配给多台计算机)。
2)虽然网络号分配必须全球一致,但后缀可本地分配,不需全球一致。
第一个性质得到保证,因为整个地址包括前缀和后缀,它们分配时保证惟一性。
如果两台
计算机从属于同一个物理网络,它们的地址有不同的后缀。
16.5IP地址分类
一旦IP的设计人员选择了IP地址的长度并决定把地址分为两部分,他们就必须决定每部分包含多少位。
前缀部分需要足够的位数以允许分配惟一的网络号给互联网上的每一个物理网络,后缀部分也需要足够位数以允许从属于一网络的每一台计算机都分配一个惟一的后缀。
这不是简单的选择就可行的,因为一部分增加一位就意味着另一部分减少一位。
选择大的前缀可容纳大量网络,但限制了每个网的大小;选择大的后缀意味着每个物理网络能包含大量计算机,但限制了网络的总数。
由于一个互联网可包括任意的网络技术,所以可能一个互联网由少量大的物理网络构成,而同时另外一个互联网由许多小的网络构成。
更重要的是,单个互联网能混合包含大网络和小
网络。
因此,设计人员选择了一个能满足大网和小网组合的折衷编址方案。
这个方案将IP地址空间划分为三个基本类:
每类有不同长度的前缀和后缀。
地址的前四位决定了地址所属的类别并且确定如何将地址的其余部分划分前缀和后缀。
图
16-1图示了五类地址,前几位用来决定类别和前缀及后缀的划分方法。
数字按照TCP/IP协议惯例,以0作为第一位,从左到右计数。
A、B和C类称为基本类(primaryclasses),因为它们用于主机地址。
D类用于组播传输,允许发送到一类计算机(IP组播传输是硬件组播传输的模拟,组播地址在这两者中都是可选的,并且即使参与组播传输,计算机也仍然保留它自己的个别地址)。
为使用IP组播传输,一组主机必须共享一个组播地址。
一旦组播传输组建立,任何发送到组播地址的包将传送副本到该组
中每一台主机。
位数
A类
012348162431
0前缀后缀
B类10前缀后缀
C类110
前缀后缀
D类1110
组播地址
E类1111
保留将来使用
图16-1五类IP地址,分配给主机的地址不是A类、B类就是C类。
前缀部分决定网络,后缀惟一对应于该网的主机
如图所示,基本类以八位一组为单位将地址划分为前缀和后缀。
A类在第一组和第二组间设置界限,B类在第二组和第三组间设置界限,C类在第三组和第四组间设置界限。
概述如下:
IP将主机地址划分为三个基本类。
地址的类别决定了网络前缀和主机后缀的界限。
16.6地址类别的计算
IP软件一接到包就计算目的地址的类别
由于这种计算经常反复进行,所以必须高效。
IP地址能从地址本身计算出地址类别,因而称为自标识的(selfidentifying)。
。
,
利用地址的头几位来确定地址类别,而不是计算结果值的范围来确定地址类别,其部分原因是想利用位运算来减少计算时间。
因为有一些计算机位的比较速度比整数比较要快。
例如,对一台包括布尔与(and)、移位
和索引查找等指令的计算机,地址的四位可抽出来,作为地址类别判定表的索引。
图16-2图示计算中所用表的内容。
如图所示,8组以0开头的地址对应于A类
4组以10开头的对应于B类,2组以110开头的对应于C类,一个以111开头的地址属于D类,
最后,一个以1111开头的地址属于保留类,
现在不用。
16.7点分十进制表示法
地址头四位表索引(十进制)地址类别
图16-2用于计算地址类别的一张表。
抽出地址的头四位作为查表的索引
虽然IP地址是32位二进制数,但用户很少以二进制方式输入或读其值。
相反,当与用户交
互时,软件使用一种更易于理解的表示法,称为点分十进制表示法(dotteddecimalnotation)。
其做法是将32位二进制数中的每8位为一组,用十进制表示,利用句点分割各个部分。
图16-3展示了一些二进制数和等价点分十进制形式的例子。
32位二进制数等价的点分十进制
图16-332位二进制数与等价的点分十进制表示。
每八位被写成一个十进制数,用点来分隔每个八位
点分十进制表示法把每一组作为无符号整数处理。
如同图中最后一例所示,当组内所有位都为0时,最小可能值为0;当组内所有位都为1时,最大可能值为255。
这样,点分十进制地址范围为0.0.0.0到255.255.255.255。
概述如下:
点分十进制表示法是一种语法形式。
当与人交互时,IP软件用它来表示32位二进制数值。
点分十进制表示法将32位数中的每八位作为一组,以十进制数表示,并用英语中的句点分隔每一组。
16.8类别和点分十进制表示法
点分十进制非常适合于IP地址,因为IP以八
组为界,把地址分为前缀和后缀。
在A类地址中三组对应于主机后缀。
类似地,B类地址有两组
后缀,C类地址有一个组主机后缀。
不幸的是,由于点分十进制表示法使得地址进制位不可见,地址类别必须从第一组的十进制新辨认。
图16-4表示了每类地址的十进制值的范围。
16.9地址空间的划分
类值范围
A0~127
B128~191
C192~223
D224~239
E240~255
图16-4各类地址的第一组十进制值对应的范围
IP分类方案并不把32位地址空间划分为相同大小的类,各类包含网络的数目并不相同。
例
如,所有IP地址中有一半(即首位为0的那些地址)位于A类中。
令人惊奇地是,A类只能包含
128个网络,因为A类地址首位必须为0并且前缀占据一个八位组,这样,仅剩下七位用来标识
A类网络。
图16-5总结了每类网络的数目和每类网络的主机数目。
地址类
前缀位数
最大网络数
后缀位数每个网络最大主机数
位位
,后主机
各个二值中重
图16-5三种基本IP地址类别所包含的网络数和每个网络的主机数
如图所示,分配给前缀和后缀的位数决定了能分配多少个不同的数。
例如,n位前缀允许
2n个不同的网络,n位后缀允许在给定的网络上分配2n台主机。
16.10地址的授权
在整个互联网中,网络前缀必须是惟一的。
连到全球因特网的网络,组织从提供因特网连
接的通信公司那儿得到网络号。
这样的公司叫因特网服务供应商(InternetServiceProvider,
ISP)。
ISP与称为因特网编号授权委员会(InternetAssignedNumberAuthority)的因特网中心组织协调,以保证网络前缀在整个因特网范围内是惟一的。
对于一个私有的互联网,网络前缀可由本组织选择。
为了保证每个前缀是惟一的,私有互联网筹备组必须决定如何协调网络号的分配。
通常由单个网络管理员给本公司互联网的所有网
络分配前缀以保证不重号(为帮助一个组织选择地址,RFC1597推荐了可用于私有互联网的A、
B和C类地址。
)
16.11编址实例
可用一个例子来澄清思想并解释在实际中怎样分配地址。
考虑一个组织,它要建立一个包含四个物理网络的私有TCP/IP互联网。
该组织必须购买路由器将四个网络互联,然后必须分配IP地址。
开始时,该组织应为每个网络选择一个惟一的前缀。
当分配一个网络前缀时,必须从A、B、C类中选择一个数。
这一选择由物理网络的大小决
定,通常分配C类地址,除非需要B类地址。
A类地址很少被认为是恰当的,因为很少有网络包含多于65536台主机。
对连到全球因特网的网络而言,由服务供应商做出选择,对在私有互联网中的网络而言,由本地网络管理员选择地址类型。
考虑上面所述的私有互联网的例子。
网络管理员估计每个物理网络的最大规模,并按这一规模选择一个前缀。
如果该组织希望一个小型网络,两个中型网络和一个特大型网络,网络管
理员可能选择分配一个C类前缀(如192.5.48),两个B类前缀(如128.10和128.211)和一个A类前缀(如10)。
图16-6说明了一个有4个物理网络的互联网,已经被分配了这样的前缀,并给出了分配给主机的IP地址的例子。
路由器
前缀128.10
前缀128.211
128.10.0.1128.10.0.2128.211.6.115
128.211.28.4
前缀10
前缀192.5.48
10.0.0.37
10.0.0.49
192.5.48.3
192.5.48.85
图16-6一个赋予了主机IP地址的私有互联网例子。
云的大小用于表示一个物理网络所期望的主机数,网络的规模决定分配地址的类型
正如图中所示的那样,分配给一个主机的IP地址总是以分配给主机所在物理网络的前缀开始。
由本地网络管理员分配的后缀可以是任意数。
在该例中,连到前缀为128.10的网络上的两个主机被分配后缀1和2。
尽管许多管理员选择顺序分配后缀,IP并不要求管理员这么做。
图中所示的分配表示了后缀可以是任意值,比如37或85。
16.12特殊IP地址
除了给每台计算机分配一个地址外,让地址用于表示整个网络或一组计算机也很方便。
IP
定义了一套特殊地址格式,称为保留地址(reserved)。
这就是说,特殊地址从不分配给主机。
本节说明每个特殊地址格式的语法和语义。
16.12.1网络地址
定义特殊地址格式的一个动机可从图16-6中看出—让一个地址用来表示赋予某个特定网络的前缀是很有用的。
IP保留主机地址为0的地址,并用它来表示一个网络。
因此,地址
128.211.0.0表示一个分配了B类前缀128.211网络。
网络地址指网络本身而非连到该网络上的主机。
因此,网络地址不应作为目标地址在包中
出现(指在伯克利广播中关于一个(非标准的)异常的部分)。
16.12.2直接广播地址
有时候,发送一个包的副本给在一个物理网络上所有的主机是很有用的。
为了使广播更容易,IP为每个物理网络定义了一个直接广播地址(directedbroadcastaddress)。
当一个包被发送到一个网络的直接广播地址时,只有单个包通过互联网到达该网络,然后送达该网络上的每一台主机。
在网络前缀后面增加一个所有位全1的后缀便形成了网络的直接广播地址。
为了确保每个网络都有直接广播,IP保留包含所有位全1的主机地址。
管理员不能分配全0或全1的主机地址给一个特定计算机,否则会导致软件功能失常。
如果一个网络软件支持广播,一个直接广播可使用硬件广播能力进行递送。
在这种情况下,
包的一次发送将到达网络上所有的计算机。
当一个直接广播被发送到一个不支持硬件广播的网络时,软件必须分别为网络上的每台主机发送一个该包的副本。
16.12.3有限广播地址
有限广播(limitedbroadcast)这一术语指在一个本地物理网的一次广播;可不太严格地说这一广播被限于一个“单一线路”。
有限广播用于一台尚不知道网络号,但已由计算机启动的系统。
IP保留所有位都是1的地址来表示有限广播。
因此IP将在本地网中广播任何发送到有限广
播地址的包。
16.12.4本机地址
计算机需要知道它的IP地址来发送或接收互联网包,因为每个包包含了源地址和目的地址。
TCP/IP协议系列包含了这样的协议,当计算机启动时能自动获得它的IP地址。
有趣的是,启动协议也使用IP来通信。
当使用这个启动协议时,计算机不可能支持一个正确的IP源地址。
为了处理这一情况,IP保留全0的地址指本计算机(thiscomputer)。
16.12.5回送地址
IP定义一个回送地址(loopbackaddress)用于测试网络应用程序。
在生成一个网络应用程序后,程序员经常使用回送测试来进行预调试。
要实现一个回送测试,程序员必须有两个打算通过网络进行通信的应用程序。
每个应用程序包含了同TCP/IP协议软件进行交互所需要的代码。
程序员不是在不同的计算机上执行每个程序,而是在同一台计算机上运行两个程序并指示它们
在通信时使用回送IP地址。
当一个应用程序发送数据给另一个应用程序时,数据向下穿过协议
栈到达IP软件,IP软件把数据向上通过协议栈返回第二个程序。
因此,程序员可很快地测试程序逻辑而无须两台计算机,也无须通过网络发送包。
IP保留A类网络前缀127供回送时使用。
和127一起使用的主机地址是无关紧要的,所有的
主机地址都一样处理。
根据习惯,程序员经常使用主机号1,形成最普遍的回送格式127.0.0.1。
在回送测试时,没有包离开计算机—IP软件将包从一个应用程序转发到另一个应用程序。
因此,回送地址永远不会出现于一个在网络中传输的包中。
16.13特殊IP地址小结
图16-7中的表概述了特殊IP地址格式。
前缀后缀地址类型用途
全0
全0
本机
启动时使用
网络
全0
网络
标识一个网络
网络
全1
直接广播
在特定网上广播
全1
127
全1
任意
有限广播
回送
在本地网上广播
测试
图16-7特殊IP地址格式一览
特殊地址是被保留的,不应分配给计算机。
而且,每个特殊地址只限于某种用途。
例如,广播地址永远不能作为源地址出现,全0地址在主机完成了启动程序并获得IP地址后也不能使用。
16.14伯克利广播地址格式
加州大学伯克利分校开发并分发了一个TCP/IP协议的早期版本,作为BSDUNIX的一部分
(BSD表示伯克利软件分发,BerkeleySoftwareDistribution)。
BSD版本包含了一个非标准特点,影响了许多随后的版本。
伯克利版本使用主机号全0而不是用全1表示直接广播地址。
这一地址格式被非正式地称为伯克利广播(Berkeleybroadcast)。
不幸的是,许多计算机制造商的早期TCP/IP软件继承了伯克利版本,有些站点还在使用伯
克利广播。
有些TCP/IP版本包括一个配置参数,可选择TCP/IP标准和伯克利格式,许多版本设计成既接收标准格式又接收伯克利广播地址格式。
16.15路由器和IP编址原则
除了给每个主机分配一个互联网地址外,IP规定路由器也应分配IP地址。
事实上,每个路由器分配了两个或更多的IP地址。
要理解为什么这样,回想如下两个事实:
1)一个路由器连接到多个物理网络。
2)每个IP地址包含一个特定物理网络的前缀。
因此,对一个路由器而言,单一IP地址并不够,因为每个路由器连接到多个网络。
IP方案可由一个基本定理解释:
一个IP地址并不标识一台特定的计算机,而是标识一台计算机和一个网络之间的一个连接。
一台连接多个网络的计算机(例如,路由器)必须为每个连接分配一个IP地址。
图16-8用一个例子来描绘这一思想,该
例中IP地址分配给连接三由器。
IP并不要求给路由器的
样的主机号。
例如上图中,和令牌环网的路由器有主机到以太网)和2(连接到令
IP并不反对为所有的连接
以太网131.108.0.0
131.108.99.5223.240.129.2
,
223.240.129.17
78.0.0.17
令牌环网
223.240.129.0
router
号。
因此,例子中显示出样的主机号17为连接令牌路由器的两个接口。
实际中,使用相同的主机号有利于管理员,因为单个数字较容易记忆。
16.16多穴主机
广域网78.0.0.0
图16-8IP地址分配给两个路由器的一个例子。
每个接口被分配了一个地址,包含该接口所连接网络的网络号
环网到广域网的
个网络的两个路
所有接口分配同连接到以太网号99.5(连接
牌环网)。
然而
使用同样的主机管理员选用了同
一个主机能有多个网络连接吗?
是的,一台主机连接到多个网络称为多穴的(multi-
homed)。
多穴主机有时用来增加可靠性—如果一个网络发生故障,主机仍能通过第二个连接到达互联网。
多穴主机也可用来增加性能—连接到多个网络使它能直接发送信息和避开有时
会阻塞的路由器。
像路由器一样,多穴主机有多个协议地址,每个网络连接有一个。
16.17小结
为了给出一个大型无缝网络的幻象,互联网使用统一的编址方案。
每台计算机分配一个协议地址,用户、应用程序及大多数协议在通信时使用协议地址。
在TCP/IP中,互联网协议(InternetProtocol,IP)规定了编址。
IP把每个互联网地址划分
成两层:
地址的前缀表示计算机连接的网络,后缀标识在这个网络中的一台特定计算机。
为了确保这一地址在整个特定互联网中惟一,必须由一个中心组织分配前缀。
一旦分配了一个前缀,本地网络管理员便能给该网络中的每个主机分配一个惟一的后缀。
一个IP地址是一个32位二进制数。
每个地址属于五类地址之一,而地址的类由地址的头4
位的值决定。
一个包含255到65534台主机的物理网络被分配B类网络号;更小的网络被分配一个C类网络号,更大的网络被分配一个A类网络号。
除了主机地址所用的三个基本类以外,IP为组播编址定义了一类,并定义了一系列有特殊
意义的保留地址。
特殊地址可被用于指明回送(用于测试)、网络的地址、在本物理网络上的广播及在一个远程网络上广播。
虽然认为一个IP地址使指定一台计算机很方便,但每个IP地址标识的是一台计算机与一个
网络的一个连接。
路由器和多穴主机连接到多个物理网络上,一定有多个IP地址。
练习
16.1画出你所在组织的TCP/IP互联网草图,并标识每个网络的IP前缀。
16.2扩充前一练习中的图,画出连接网络的路由器的地址。
16.3IP可被重新设计为使用硬件地址而不是当前所用的32位二进制地址吗?
为什么?
16.4如果每个地址是64位而不是32位,能重新设计IP完全消除地址类别吗?
试解释。
16.5写一个计算机程序,使其能在32位二进制数和点分十进制形式之间互相转换。
16.6写一个计算机程序,使其能用点分十进制形式读一个IP地址,判定该地址是A类、B
类还是C类,并打印网络部分和主机部分。
16.7扩展前一练习中的程序,使其能处理D类和E类地址。
16.8扩展前两个练习中的程序,使其能识别特殊IP地址,如有限广播地址、直接广播地址等等。
16.9阅读用于IP的子网编址方案。
划分子网能做些什么常规编址做不到的事情?
16.10阅读用于TCP/IP的无类别的域内路由(ClasslessInter-DomainRouting,CIDR)方案。
当使用CIDR时,IP地址怎样分配?
16.11在前一练习中,相对于本章提出的编址方案,CIDR的主要优点是什么?
16.12一些协议分配每台计算机一个单一地址,而不是分配每个网络连接一个地址。
路由器具有单一地址
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络基础 中文版 word可编辑016 计算机网络 基础 word 编辑 016