《用TCP/IP进行网际互联 第一卷:原理,协议与结构》1、概述 2、底层网络技术 3、网际互联的概念和结构模型

第一章:引言与概述

1.1网际互联的动机

网际互联(internetworking)把许多不同的物理网络互联起来,并使它们成为一个协调的整体。提供了异构网络互联的方法,并提供了使之互操作的一组通信约定因此可容纳多种不同的硬件技术。internet技术隐藏了许多网络硬件的细节,允许计算机独立于它们的物理网络连接来进行通信。

intenet技术是开放系统互联( open system interconnection)的一个例子。它不像某个厂家专有的通信系统,它的规范( specification)可以公开得到的。任何人都能自己构建通过interet进行通信所需的软件。更重要的是,整个技术能够使不同硬件结构的机器进行通信、能够使用各种分组交换网络硬件,可适用于各种不同应用程序,并可适用于多种计算机操作系统。

1.2 TCP/IP Internet

远景规划局(Advanced Research Projects Agency,ARPA)投资研究,ARPA技术包括一组规定计算机通信细节的网络标准以及一组关于网络互联和通信量路由的约定。正式名称TCP/IP互联网协议族(TCP/IP Internet Protocol Suite),一般称为TCP/IP(取名于它的两个主要标准),使用它可在任何相互连接的一系列网络之间进行通信。

1.3联网的服务

如果不理解TCP/P所提供的服务,就很难理解它的基础技术细节。对服务的讨论重点放在标准上,即协议 (protocol )。

隐藏通信的底层细节有助于提高生产效率。

  • 第一,  程序员是与高级协议抽象打交道的,他们不必学习或记住诸如硬件配置等细节问题,因此能很快地编制新的程序
  • 第二,因为用更高一级抽象编出来的程序不受机器结构或网络硬件的限制,所以,当重新配置机器或网络时,也不必修改它们;
  • 第三,因为使用更高一级协议编写出来的程序是独立于底层硬件的,所以它们能为任意一对机器提供直接通信。程序员不必为每种计算机类型或每种网络类型建立特殊的应用程序软件版本,正相反,使用协议的软件是针对通用目的的,同样的代码可在任意计算机上编译和运行。

Internet上所有可用的服务都是用单独协议给出的。

1.3.1应用层的Internet服务

Internet是用它所基于的网络来执行有用的通信任务的应用程序集。“互操作性”(interoperability)表示不同计算系统协作解决计算问题的能力。

  • World Wide Web
  • 电子邮件(Electronic mail,或e-mail )
  • 文件传输(File transfer )
  • 远程登录(Remote login) 

1.3.2网络层Internet服务

在网络层,互联网提供所有应用程序都要使用的两种类型的服务。

无连接分组交付服务(Connectionless Packet Delivery Service )。它形成了所有其他互联网服务的基础无连接交付抽象地表示大多数分组交换网络都能提供的—种服务。指的是TCP/IP互联网按照报文上携带的地址信息把短报文从一台机器传递到另一台机器上。因为无连接服务单独传递每个分组,所以不能保证可靠、有序地传递。而且,由于无连接服务通常直接映射到底层的硬件上,所以非常有效有了无连接分组交换作为所有互联网服务的基础,使得TCP/IP协议可以适应多种网络硬件。
可靠的数据流传输服务(Reliable Stream Transport Service)要求通信软件能从传输错误分组丢失发送者与接收者之间路径上的交换机的故障中自动恢复过来,可靠的传输服务处理了这些问题。它允许计算机上的应用程序与另一台计算机上的应用程序之间建立一个“连接",然后通过该连接发送大量数据,就好像这是一个永久的直接硬件连接。在底层,通信协议把数据流分成一个个小报文来发送它们,一次一个,同时等待接收者发送确认接收的信息。
TCP/IP显著特征:

  • 网络技术独立性Network Technology Independence )。尽管TCP/P基于传统的分组交换技术但它独立于任何厂家的硬件。Internet包括许多网络技术,范围包括从设计用于在单个建筑物内进行操作的网络设计用于跨越很远距离的网络。TCP/IP协议定义了数据传输的单元,称为数据报(datagram ),并指定了如何在特定的网络上传输数据报。
  • 通用连接( Universal Interconnection)。TCP/IP互联网允许连接到它的任何一对计算机进行通信。每台计算机都被分配了一个互联网内普遍可识别的地址( address )。每个数据报都带有源地址和目的地址,中间的交换计算机使用目的地址选择路由。
  • 端到端确认(End-to-End Acknowledgement )。TCP/IP互联网协议提供的是最初的源站最终目的站之间的确认,而不是路径上相继网点之间的确认,即使源主机和目的主机并没有连接到同—物理网络上。
  • 应用协议标准( Application Protocol Standard)除了基本的传输层服务(如可靠的数据流连接)以外,TCP/IP协议也包含了用于普通应用程序的标准,这些程序包括电子邮件、文件传输和远程登录。

1.4 互联网的历史和范围

(翻书)

1.5 lnternet结构委员会

lnternet结构委员会( Internet Architecture Board,IAB)的工作组

1.6 IAB 的重新组织

1.7 Internet 协会

1.8 Internet 的RFC

1.9Internet协议和标准化

只要可以应用现有协议标准,就使用它们;只有当现有标准不够时才制定新的协议,而且,只要新标准可用并能提供等价的功能,就要准备使用新标准。

1.10未来的发展和技术                

最显著的变化不是产生于增加的网络连接,而是产生于增加的网络通信量。Internet也面临着开发及操作的非集中式管理所带来的复杂性。

1.11本书的组织

1.12小结

互联网由一组互相连接又像一个协作整体的一系列网络组成。互联网的主要优势是提供了通用的相互连接,同时又允许每个组织使用最适合自己需求的任何网络硬件。我们所讲解的技术,按照它的两个主要协议而称为TCP/IP,它是由远景规划局ARPA开发的。TCP/IP为Internet提供了基础,

深入研究

习题

  • 1.1 了解使用TCP/IP的网点上的一些应用程序。
  • 1.2 绘图示意本单位的TCP/IP技术和Internet访问的增长情况。每年有多少计算机、用户和网络连人Internet。
  • 1.3 TCP/IP产品每年创造数10亿美元的总收入。读一读商业出版物,查找提供此类产品的厂家清单。

第2章:底层网络技术的回顾

2.1引言

Internet不是一种新的物理网络。实际上,它是一种把物理网络互连的方法一组使用网络的约定,这些约定允许联网的计算机进行交互。因为在整体的设计中网络硬件只起了微小的作用,所以要理解互联网技术就要求我们能够区分出硬件本身提供的低级机制TCP/IP协议软件所提供的高级工具。理解分组交换技术所提供的工具如何影响我们对高级抽象方法的选择也非常重要。

2.2 网络通信的两种途径

根据通信网络提供的是一台计算机与另一台计算机之间的连接还是终端与计算机之间的连接
通信网络分成两种基本类型:电路交换(有时称为面向连接的)和分组交换(有时称为无连接)

电路交换网络两点之间形成专用连接(或线路)。电路交换的好处在于它保证容量:一旦建立一条线路,没有其他网络活动会减少线路的容量。电路交换的缺点是耗费较大:线路的耗费是固定的,与通信量的大小无关。例如,一个人要为一个电话呼叫交付固定的费用,即使是两边并没有交谈。

分组交换类型的网络常用于连接计算机。在分组交换网络中,网络上传输的数据被分成一个个小的信息片,称为分组,分组被多路复用在大容量机器间的连接上一个分组,通常含有几千比特的数据,载有标识信息,使得网络硬件知道怎样把数据发送到指定目的地例如, 一个要在两台机器之间传输的大文件,必须被分成许多分组,在网络上一个一个地传输。网络硬件把分组传输到指定目的地,在那里,软件把它们重新组装成一个文件。分组交换的主要优点是计算机之间的多路通信可以并行进行,机器间的连接被正在通信的每一对机器所共享。当然,它的缺点是,随着活动的增加,一对通信的计算机所收到的通信量远小于网络容量也就是说,一旦某个分组交换网络超载,那么,使用这个网络的计算机在能够继续发送分组之前,必须等待。

2.3广域网和局域网

2.3.1网络硬件地址

每种网络硬件技术都定义了一种编址机制,计算机使用这种机制指定每个分组的目的地。连到网络的计算机都被赋予一个惟一地址,通常是个整数。在网络上传送的分组包括一个目的地址字段( destination address field),其中有接收者的地址。在所有分组中,目的地址出现在同一位置上,使网络硬件能很容易地检测到目的地址。发送者必须知道接收者的地址,且必须在发送分组之前把接收者地址放到分组的目的地址字段中。

2.4以太网技术

(翻书)

第3章:网际互联的概念和结构模型

3.1引言

本章会有一个巨大的概念性跳跃,因为我们将描述一种模式, 允许把多种网络技术集成一个协调的
整体。根本目标隐藏所有底层网络硬件的细节,同时提供一般的通信服务。主要的结果是一个
高级抽象,为所有的设计决策提供框架。后面的章节讨论如何用该抽象建立互联网通信软件所需的
各层,
以及该软件如何隐藏底层的物理传输机制。后面的各章还要讲解应用程序如何使用形成的通
信系统

3.2应用层互连

隐藏网络细节:使用应用程序来处理异构性,或者隐藏操作系统的细节

早期的异构网络互连通过称为应用网关(application gateway)的应用层程序提供统一性。在这样的系统中,网络的每台计算机上执行的某个应用层程序了解了该计算机的网络连接的细节,并通过这些连接到其他计算机的应用程序进行互操作。例如,某些电子邮件系统由邮件程序组成,这些程序都设置为向下一台计算机上的邮件程序转发一个备忘录。从源站到目的站的路径可能经过许多不同网络,但是,只要所有计算机上的邮件系统能够通过转发每个邮件相互合作,一切都能顺利进行。

弊端:造成通信繁琐而且受到限制

  • 给系统添加新功能则意味着要为每台计算机建立一个新程序。
  • 添加新的网络硬件则意味着对每个可能的应用修改现有程序(或创建新程序)。
  • 在某台机器上,每个应用程序都必须了解本机的网络连接,其结果是代码的重复。
  • 按部就班的通信模式要求路径上执行的所有程序都必须正确。若中间程序出现故障, 源站和目的站都无法检测或控制这些问题。

因此,使用中间应用程序的系统无法保证可靠的通信。

3.3网络层互连

网络层互连提供一种机制,实时地把小型数据分组从它们的源站投递到最终目的站,中间不使用中介应用程序。交换的是小单位的数据而不是文件或很长的报文

优势:

  • 直接映射到底层网络硬件,十分高效
  • 网络层互连把数据通信活动从应用程序中分离出来,允许中间的计算机直接处理网络通信量,而不必了解发送或接收该通信量的应用程序;
  • 网络连接使整个系统更加灵活, 因此可以建立通用的通信工具
  • 这种模式允许网络管理员通过修改或増加一个新的网络层软件而添加新的网络技术,同时保持应用程序不发生变化

网际互联或互联网的概念是一个强有力的概念,它把通信这个观念从网络技术细节中分离出来, 并且对用户隐藏了底层的细节。更重要的是,它推动了所有软件的设计决策并解释了如何处理物理 地址和选择路由。在回顾基本的网际互联动机之后,我们将更多地考虑互联网的性质。

从设计通信系统的两个最基本观察点着手:

  • 没有一种单一的网络硬件技术可以满足所有的约束。
  • 用户期待一种通用的互连。

第一个观察是技术方面的。价格低廉的高速局域网受到地理跨度的限制;跨越长距离的广域网不能提供低费用的本地通信。没有哪种网络技术可以满足所有的需求,所以我们械迫考虑多底层硬件技术。

第二个,最终我们希望在任何两点之间进行通信,而且希望有一个不受任何物理网络界限限制的通信系统。

最终目标是建立一个支持通用的通信服务的统一、协调的互连网络

在每个网络内部,计算机将使用第2章所描述的依赖于底层技术的通信工具;新软件插入到与技术相关的通信机制与应用程序之间,隐藏了底层细节并使多个网络的集合看起来是一个大的网络。这种互连方式称为网际互联 (internetwork)或互联网(internet)。

建立一个互联网的思想是随着一种系统设计的标准模式产生的:研究人员想像某个高层计算工具,并从现有的计算技术开始工作,不断加上软件层,直到产生一个高效地实现所想像的高层工 具系统。

3.4 Internet的性质

通用服务的观念很重要,但仅它自己并不能概括我们对统一互联网的想法,因为通用服务可以有多种实现。在我们的设计中,要对用户隐藏底层互联网的结构。我们不要求用户或应用程序理解使用互联网的硬件连接细节,也不要求硬性规定一种网络拓扑。特别是当在互联网中添加新网络时,既不意味着要连到一个中心的交换节点上,也不意味着要在新网络和现有的所有网络 之间都建立直接的物理连接。我们要能够在中间网络上传输数据,即使它们没有直接连到源机器或目的机器上。我们要使互联网上所有机器共享一个机器标识符的通用集合(这个集合可以看作名字或地址)。

统一的互联网观念还包括:用户接口中的网络无关性。也就是说,我们需要一系列操作,用于建立通信或传输数据,以保持与底层网络技术和目的机器的无关性。当用户创建或使用通信应用程 序时,应该不需要了解网络互连的拓扑结构。

3.5Internet结构

多个网络如何互连形成一个互联网?

从物理上讲,两个网络只能通过与它们都相连的一台计算机连在一起。但是,物理连接并不提供我们所想的互连,因为这种连接不保证这台计算机和其他要通信的计算机之间能够相互协作。为了有一个可行的互联网,我们需要一个能够把分组从一个网络传递到另一个网络的计算机。连接两个网络并在它们之间传递分组的计算机称为互联网网关(internet gateway)互联网路由器(internet router )。

考虑图3.1所示的由两个物理网络组成的例子。在图中,路由器R既连到网络1又连到网络2。 要使R担当一个路由器,它必须捕获网络1中目的地是网络2中机器的分组,并传递它们。同样地, R必须捕获在网络2中目的地是网络I中机器的分组并传递它们。

3.6通过IP路由器互连

在包含许多网络和路由器的实际互联网中,每个路由器都需要知道它们所连接的网络以外的互联网拓扑结构。

在互联网中使用的互连原理:

  • 在一个TCP/IP互联网中,称为IP路由器或IP网关的计算机提供了物理网络之间的所有互连。

实际上,TCP/IP互联网所使用的路由器通常是小型的计算机。它们通常只有很小的磁盘存储器以及有限的主存。建立小型互联网路由器的技巧在于以下概念;

  • 当转发分组时,路由器使用的是目的网络,而不是目的主机。

如果分组转发是基于网络的,那么路由器所要保存的信息数量与互联网中的网络的数目(而不是主机的数目)正成比

3.7从用户的角度来看

TCP/IP的设计目的是独立于机器所在的某个网络,提供机器之间的通用互连

因此, 我们要求用户把互联网看作单一的虚拟网络,所有计算机都与它相连而不考虑实际的物理连接。图 3.3(a)告诉我们,想像成一个互联网而不是多个网络,就能简化许多细节,并使用户更容易将通 信概念化。除了互连物理网络的路由器以外,每一个主机上还需要有软件,以允许应用程序把互联网作为一个单独的物理网络来使用。

现在,在网络层提供互连的优势就很明显了。因为在互联网上通信的应用程序并不知道底层连接的细节,所以不做任何改变就能运行在任何机器上。因为每台机器的物理网络连接隐藏于互联网软件中,所以当添加新的物理连接或去掉现有物理连接时,只需改动互联网软件。事实上,在应用程序运行的时候,也可能通过改变物理连接来优化互联网的内部结构。

在网络层进行通信的另一个优势更微妙:用户不需要理解、记忆或指定网络如何连接,或者网络承载什么通信量。可以编写出独立于底层物理连接进行通信的应用程序。事实上,网络管理员可以自由地改变底层的互联网结构的内在部分,而不必改变互联网上大多数计算机的应用软件(当然, 当一台计算机换到一个新的网络时,必须重新配置网络软件)。

如图3.3(b)所示,路由器并不在每对网络之间提供宜接的连接。通信量从一台计算机传输到另一台时可能要穿过几个路由器,就像穿过中间网络一样。因此,参与一个互联网的网络类似于美国州际系统的高速公路:每个网络同意处理传输通信量的交换条件是在整个互联网上发送通信量。一般用户不会受到影响,也不会注意到本地网上的额外通信量。

3.8所有网络是平等的

2章回顾了用来建立TCP/IP互联网的网络硬件的例子,也表明了技术的多样性。我们已经把互联网描述成互相协作、互相连接的多个网络的集合。现在,理解一个基本的概念非常重要:从互联网的角度来看,独立于延迟和吞吐量特性、最大分组长度或地理范围,所有能够传输分组的通信系统都可视为一个单一的网络。图3.3(b)用同样的云状框表示所有物理网络,因为TCP/IP平等 地对待它们,不考虑其差异。这个观点是:

TCP/IP互联网协议平等对待所有的网络。类似以太网的局域同、用作主干网的广域网或者两台计算机之间的点到点链路,都可视为一个网络。

不熟悉互联网结构的读者可能会觉得难以接受这样一个过分简单化的网络观点。从本质上讲, TCP/IP定义了一个隐藏物理网络细节的抽象“网络”。我们将了解到,这种抽象使得TCP/IP的功能 极其强大。

3.9 未解答的问题

3.10 小结

互联网不仅仅是由许多计算机互连形成的网路集合。网际互联还意味着互连的系统都要遵循允许每台计算机与其他各台计算机通信的一些约定。需要特别指出的是,即使两台计算机之间的通信路径要穿过某个与它们中任何一个都不直接相连的网络,互联网仍允许这两台计算机进行通信。只有所有计算机都遵守一组通用标识符及一组把数据传输到最终目的地的规程时,才可能做到这种协作。

在互联网中,网络间互连是由称为IP路由器或IP网关的计算机形成的,IP路由器本身连接到两个或多个网络上。路由器通过从一个网络接收分组并将其发送到另一个网络上来进行网络间分组的转发。

深入研究

习题

  • 3.1 在互连的Internet上什么处理器已经用作了路由器?早期的路由器硬件的大小和速率使你感到惊讶吗?为什么?
  • 3.2 在你的网点上,大约有多少个网络组成了互联网?大约有多少个路由器?
  • 3.3 考虑图3.3 (b)示例的互联网的内部结构。哪个路由器是最关键的?为什么?
  • 3.4 改变一个路由器中的信息时不能大意,因为不可能同时改变所有路由器中的信息。试研究一个算法,以保证一组计算机上都进行改变或者这组计算机上都不进行改变。
  • 3.5 在一个互联网上,路由器定期交换路由表中的信息,所以出现新路由器并开始为分组选择路由是可行的。试研究用来交换路由信息的算法。
  • 3.6 对比TCP/IP互联网和Xerox公司设计的互联网的风格。
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TCP/IP详解 卷1:协议(原书第2版)PDF》是由美国计算机科学家 Douglas Comer 所著的一本关于 TCP/IP 协议的经典教材。该书详细介绍了 TCP/IP 协议栈的各个层级以及其应用和实际场景。 这本书主要分为两个部分:第一部分是对 TCP/IP 协议栈的介绍和分析,包括网络层、传输层、应用层等各个方面的内容。第二部分是对 TCP/IP 协议的应用和实践指导,包括网络管理、安全性、多媒体和网络编程等内容。 通过阅读这本书,读者可以深入了解 TCP/IP 协议栈的工作原理、网络通信的基本概念和技术细节。书中提供了大量的实践案例和代码示例,可以帮助读者理解和应用 TCP/IP 协议栈。 《TCP/IP详解 卷1:协议(原书第2版)PDF》是一本权威且经典的教材,被广泛用于计算机网络和通信领域的学习和研究。无论是网络工程师、系统管理员、还是对计算机网络感兴趣的人都可以从中获得深入的知识和实践经验。 该书在网络技术的发展历程中具有重要的地位和影响力,它不仅仅是一本理论教材,更是对 TCP/IP 协议的全面解析和实践指南。对于想要深入掌握和理解 TCP/IP 协议栈的人来说,这本书是一本必不可少的参考资料。 总而言之,《TCP/IP详解 卷1:协议(原书第2版)PDF》是一本经典且权威的 TCP/IP 协议教材,适合各个层次的读者阅读和学习。无论是初学者还是专业人士,都可以通过阅读这本书,深入理解和应用 TCP/IP 协议栈。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值