《分布式系统:概念与设计》一3.4.1 IP寻址

3.4.1 IP寻址

或许设计互联网协议最富有挑战之处是构造主机的命名和寻址方案以及将IP数据包路由到目的地的方案。分配主机网络地址的方案和计算机连接到它们的方案需要满足以下一些需求:

  • 这必须是通用的——任何主机必须可以发送数据包给互联网中的任何其他主机。
  • 地址空间的使用,必须是有效的——预知互联网的最终规模、网络数量和所需的主机地址数量是不可能的。地址空间必须仔细地分割以确保地址不会用完。1978—1982年,当开发TCP/IP协议时,108认为提供232(即约40亿,大致等于当时全世界的人口总数)的可寻址的主机就足够了。但这种判断已经被证明是目光短浅的,原因如下:
    —互联网的增长速度远远超过了当初的预测。

—地址空间的分配和使用比预期的要低效得多。

  • 寻址方案必须有助于开发灵活有效的路由方案,但地址本身并不能包括太多的用于将数据包路由到目的地的信息。
    所选的方案为互联网中的每个主机都分配一个IP地址——一个32比特的数字标识符,其中包括一个网络标识符(唯一标识了互联网中的某个子网)、一个主机标识符(唯一标识了到该网络的主机连接)。这些地址将放在IP数据包中并被路由到目的地。

互联网地址空间所采用的设计如图3-15所示。一共有4类已分配的互联网地址——A、B、C、D。D类地址为互联网组播通信保留,组播通信仅在一些互联网路由器中实现,其进一步的讨论见4.4.1节。E类地址包括一些未分配的地址,为满足未来的需求而保留。

这些包含网络标识符和主机标识符的32比特互联网地址通常写成由点分开的4个十进制数字序列。每个十进制数字表示一个字节或IP地址的8比特组(octets)。每一类网络地址的允许值如图3-16所示。

三类地址用于满足不同类型组织的需要。A类地址(在每个子网中能容纳224台主机)是为非常大的网络准备的,例如US NSFNet和其他全国性的广域网。B类地址可分配给网络中的计算机超过255台的组织,而C类地址则是分配给所有其他的网络。
主机标识符为0和全1(二进制)的互联网地址将留作特殊用途。主机标识符为0的地址代表“本机”,若主机标识符为全1,则表示这是一个广播消息,并将消息发送到与地址的网络标识符部分指定的网络连接的主机上。
网络标识符是由互联网编号管理局(IANA)分配给其网络与互联网相连的组织。连接到互联网的计算机的主机标识符是由相关网络的管理员来分配的。
既然主机的地址包括一个网络标识符,那么连接到多个网络的计算机必须在每个网络中都有独立的地址。每次计算机移到一个新的网络,它的互联网地址必须改变。这些需求导致了实质性的管理开销,在使用便携计算机的情况下就会有这种开销。
IP地址分配方案在实际中并不是很有效。主要的困难是,用户组织中的网络管理员不能很容易地预测出未来他们对主机地址需求的增长,一般都会过高地估计,从而选择B类地址。到了1990年前后,按照当时的IP地址分配速度,到1996年前后就可能用完所有的地址。当时采取了三个步骤。第一步是开始开发新的IP协议和寻址方案,结果也就是现在的IPv6。
第二步是从根本上修改IP地址的分配方案。一个新的旨在更加有效地利用IP地址空间的地址分配和路由方案诞生了,该方案称为无等级域间路由(CIDR),我们将在3.4.3节中讨论CIDR。图3-10中的局域网拥有多个C类地址规模的子网,从138.37.88~138.37.95,这些子网通过路由器连接。路由器负责将IP数据包传送到所有的子网,同时也负责处理子网间和子网到互联网其他部分的流量。该图也说明了使用CIDR划分一个B类地址空间,形成若干C类地址规模的子网。
第三步是使未注册的计算机能通过实现了网络地址翻译(NAT)方案的路由器间接地访问互联网。我们在3.4.3节讨论该方案。

时间: 2024-10-06 22:45:49

《分布式系统:概念与设计》一3.4.1 IP寻址的相关文章

《分布式系统:概念与设计》一第3节 练习

前 言 在互联网和Web持续发展并且对我们社会的每个方面都产生影响的时候,这本教材的第5版问世了.本书的介绍性章节提到互联网和Web对诸多(如金融.商业.艺术.娱乐等)应用领域的影响以及对信息社会的普遍影响.它还强调了诸如Web搜索和多人在线游戏等应用领域中的需求.从分布式系统的角度出发,这些开发在应用的范围.多个现代系统所支持的工作负载和系统大小等方面正在对底层系统架构提出实质性的新需求.重要的趋势包括网络技术上不断增加的多样性和普遍性(包括不断增加的无线网络的重要性).移动和无处不在计算元素

《分布式系统:概念与设计》一1.2 分布式系统的例子

1.2 分布式系统的例子 本节给出能激发读者学习积极性的当代分布式系统的例子,用于说明分布式系统所扮演的无处不在的角色和相关应用的多样性. 如1.1节所提及的那样,网络无处不在,成为我们现在认为理所当然的日常服务(互联网和相关的万维网.Web搜索.在线游戏.电子邮件.社会网络.电子商务,等等)的基础.为了进一步说明这一点,可参考图1-1,它描述了一系列所选的关键商务或社会应用部门,强调了相关的分布式系统技术已公认或新出现的应用. 正如所看到的,分布式系统包含近些年许多最重要的技术发展,因此理解底

《分布式系统:概念与设计》一3.4 互联网协议

3.4 互联网协议 本节将介绍TCP/IP协议组的主要特点,并讨论在分布式系统中使用它们的好处及局限性.互联网的研究始于20世纪70年代早期的ARPANET--第一个大规模计算机网络的开发[Leiner et al.1997],随着近20年的研究和开发,互联网渐渐成形.这项研究的一个重要部分是开发TCP/IP协议组,TCP指传输控制协议,IP是指网际协议.TCP/IP和互联网应用协议在美国研究网络中的广泛采用以及最近在许多国家的商业网络中的广泛使用,使得全国的网络可以集成为一个互连网络,这一网络

《PADS 9.5电路设计与仿真从入门到精通》——第一章 绪论 1.1 PCB的基本概念及设计工具

第一章 绪论 PADS 9.5电路设计与仿真从入门到精通 本章主要介绍PADS的基本概念及特点,包括PCB设计的一般原则.基本步骤.标准规范等.着重介绍了美国Mentor Graphics公司的PCB设计软件:PADS 9.5,包括了PADS 9.5的发展过程以及它的新特点.PADS 9.5是一款非常优秀的PCB设计软件,它具有完整强大的PCB绘制工具,界面和操作十分简洁,希望用户好好学习本书,以便更加方便地使用PADS 9.5软件. 1.1 PCB的基本概念及设计工具 PADS 9.5电路设计

《分布式系统:概念与设计》一练习

练习 1.1 列出能被共享的五种类型的硬件资源和五种类型的数据或软件资源,并举出它们在实际的分布式系统中发生共享的例子. 1.2 在不参考外部时间源的情况下,通过本地网络连接的两台计算机的时钟如何同步?什么因素限制了你描述的过程的准确性?由互联网连接的大量的计算机的时钟是如何同步的?讨论该过程的准确性. 1.3 考虑1.2.2节讨论的大型多人在线游戏的实现策略.采用单一服务器方法表示多个玩家游戏状态的好处是什么?这存在什么问题以及如何解决? 1.4 一个用户随身携带可以无线连网的PDA,来到一个

《分布式系统:概念与设计》一2.3.1 体系结构元素

2.3.1 体系结构元素 为了理解一个分布式系统的基础构建块,有必要考虑下面四个关键问题: 在分布式系统中进行通信的实体是什么? 它们如何通信,特别是使用什么通信范型? 它们在整个体系结构中扮演什么(可能改变的)角色,承担什么责任? 它们怎样被映射到物理分布式基础设施上(它们被放置在哪里)? 通信实体 上述前两个问题是理解分布式系统的关键:什么是通信和这些实体如何相互通信为分布式系统开发者定义了一个丰富的设计空间.它对从面向系统和面向问题的角度解决第一个问题是有帮助的. 从系统的观点,回答通常是

《分布式系统:概念与设计》一2.4.1 交互模型

2.4.1 交互模型 2.3节对系统体系结构的讨论表明分布式系统由多个以复杂方式进行交互的进程组成.例如: 多个服务器进程能相互协作提供服务,前面提到的例子有域名服务(它将数据分区并复制到互联网中的服务器上)和Sun的网络信息服务(它在局域网的几个服务器上保存口令文件的复制版本). 对等进程能相互协作获得一个共同的目标.例如,一个语音会议系统,它以类似的方式分布音频数据流,但它有严格的实时限制. 大多数程序员非常熟悉算法的概念--采取一系列步骤以执行期望的计算.简单的程序由算法控制,算法中的每一

《分布式系统:概念与设计》一3.1 简介

3.1 简介 要构建分布式系统所使用的网络,首先需要众多的传输介质,包括电线.电缆.光纤以及无线频道:然后需要一些硬件设备,包括路由器.交换机.网桥.集线器.转发器和网络接口:最后还需要软件组件,包括协议栈.通信处理器和驱动器.上述因素都会影响分布式系统和应用程序所能达到的最终功能和性能.我们把为分布式系统提供通信设施的软硬件组件称为通信子系统.计算机和其他使用网络进行通信的设备称为主机.结点则指的是在网络上的所有计算机或者交换设备.互联网是一个通信子系统,它为所有接入的主机提供通信服务.互联网

《分布式系统:概念与设计》一1.1 简介

1.1 简介 计算机网络无处不在.互联网也是其中之一,因为它是由许多种网络组成的.移动电话网.协作网.企业网.校园网.家庭网.车内网,所有这些,既可单独使用,又可相互结合,它们具有相同的本质特征,这些特征使得它们可以放在分布式系统的主题下来研究.本书旨在解释影响系统设计者和实现者的连网的计算机的特征,给出已有的可帮助完成设计和实现分布式系统任务的主要概念和技术.我们把分布式系统定义成一个其硬件或软件组件分布在连网的计算机上,组件之间通过传递消息进行通信和动作协调的系统.这个简单的定义覆盖了所有可