打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
TCP-IP协议 标准的简单服务,互联网,实现和应用编程接口

1.12 标准的简单服务

有一些标准的简单服务几乎每种实现都要提供。在本书中我们将使用其中的一些服务程

序,而客户程序通常选择 Te l n e t。图1 - 9描述了这些服务。从该图可以看出,当使用 T C P和

U D P提供相同的服务时,一般选择相同的端口号。标准的简单服务 互联网 实现 应用编程接口

如果仔细检查这些标准的简单服务以及其他标准的 T C P / I P服务(如Te l n e t、F T P、

S M T P等)的端口号时,我们发现它们都是奇数。这是有历史原因的,因为这些端口号

都是从N C P端口号派生出来的(N C P,即网络控制协议,是A R PA N E T的运输层协议,

是T C P的前身)。N C P是单工的,不是全双工的,因此每个应用程序需要两个连接,需

预留一对奇数和偶数端口号。当 T C P和U D P成为标准的运输层协议时,每个应用程序

只需要一个端口号,因此就使用了NCP中的奇数。

1.13 互联网

在图1 - 3中,我们列举了一个由两个网络组成的互联网—一个以太网和一个令牌环网。

在1 . 4节和1 . 9节中,我们讨论了世界范围内的互联网—I n t e r n e t,以及集中分配I P地址的需要

(I n t e r N I C),还讨论了知名端口号( I A N A)。i n t e r n e t这个词第一个字母是否大写决定了它具

有不同的含义。

i n t e r n e t意思是用一个共同的协议族把多个网络连接在一起。而 I n t e r n e t指的是世界范围内

通过T C P / I P互相通信的所有主机集合(超过 1 0 0万台)。I n t e r n e t是一个i n t e r n e t,但i n t e r n e t不等

于I n t e r n e t。

1.14 实现

既成事实标准的 T C P / I P软件实现来

自于位于伯克利的加利福尼亚大学的计

算机系统研究小组。从历史上看,软件

是随同4.x BSD系统(Berkeley Software

D i s t r i b u t i o n)的网络版一起发布的。它的源代码是许多其他实现的基础。图1 - 1 0列举了各种 B S D版本发布的时间,并标注了重要的 T C P / I P特性。列在左边的 B S D网络版,其所有的网络源代码可以公开得到:包括协议本身以及许多应用程序和工具(如Te l n e t和F T P)。在本书中,我们将使用'伯克利派生系统'来指 SunOS 4.x 、S V R 4以及AIX 3.2等那些基于伯克利源代码开发的系统。这些系统有很多共同之处,经常包含相同的错误。起初关于I n t e r n e t的很多研究现在仍然在伯克利系统中应用—新的拥塞控制算法( 2 1 . 7节)、多播(1 2 . 4节)、'长肥管道修改(2 4 . 3节)以及其他类似的研究。

1.15 应用编程接口

使用T C P / I P协议的应用程序通常采用两种应用编程接口( A P I):s o c k e t和T L I(运输层接口:Transport Layer Interface)。前者有时称作'Berkeley socket',表明它是从伯克利版发展

而来的。后者起初是由 AT & T开发的,有时称作 X T I(X / O p e n运输层接口),以承认X / O p e n这

个自己定义标准的国际计算机生产商所做的工作。 X T I实际上是T L I的一个超集。

本书不是一本编程方面的书,但是偶尔会引用一些内容来说明 T C P / I P的特性,不管大多

数的 A P I(s o c k e t)是否提供它们。所有关于 s o c k e t和T L I的编程细节请参阅文献 [ S t e v e n s 1 9 9 0 ]

1.16 测试网络

图1 - 11是本书中所有的例子运行的测试网络。

在这个图中(作者的子网),大多数的例子都运行在下面四个系统中。图中所有的 I P地址

属于B类地址,网络号为 1 4 0 . 2 5 2。所有的主机名属于 . t u c . n o a o . e d u这个域(n o a o代表

National Optical Astronomy Observatories,t u c代表Tu c s o n)。例如,右下方的系统有一个完

整的名字: s v r 4 . t u c . n o a o . e d u,其I P地址是:1 4 0 . 2 5 2 . 1 3 . 3 4。每个方框上方的名称是该

主机运行的操作系统。这一组系统和网络上的主机及路由器运行于不同的 T C P / I P实现。

需要指出的是,n o a o . e d u这个域中的网络和主机要比图 1 - 11中的多得多。这里列出来的

只是本书中将要用到的系统。

在3 . 4节中,我们将描述这个网络所用到的子网形式。在 4 . 6节中将介绍s u n与n e t b之间

的拨号S L I P的有关细节。2 . 4节将详细讨论S L I P。

总结:T C P / I P协议族分为四层:链路层、网络层、运输层和应用层,每一层各有不同的责任。

在T C P / I P中,网络层和运输层之间的区别是最为关键的:网络层( I P)提供点到点的服务,

而运输层(T C P和U D P)提供端到端的服务。

一个互联网是网络的网络。构造互联网的共同基石是路由器,它们在 I P层把网络连在一

起。第一个字母大写的I n t e r n e t是指分布在世界各地的大型互联网,其中包括 1万多个网络和超

过1 0 0万台主机。

在一个互联网上,每个接口都用 I P地址来标识,尽管用户习惯使用主机名而不是 I P地址。

域名系统为主机名和 I P地址之间提供动态的映射。端口号用来标识互相通信的应用程序。服

务器使用知名端口号,而客户使用临时设定的端口号。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
TCP-IP协议详解 分层(2)互联网的地址 域名系统和封装
C#网络编程概述
徐葳【2019版最新】40小时掌握Java语言之09网络编程+正则表达式
20-java笔记-网络编程
socket通信协议关系详解
IP和端口
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服