更高级别的协议都位于 “Level 3”,这层是 ARPANET 的应用层 。Telnet 协议,它提供到另一台主机的一个虚拟电传链接,其可能是这些协议中最重要的 。但在这层中也有许多其他协议,例如用于传输文件的 FTP 协议和各种用于发送 Email 的协议实验 。
在这一层中有一个不同于其他的协议:初始链接协议Initial Connection Protocol(ICP) 。ICP 被认为是一个 “Level-3” 层协议,但实际上它是一种 “Level-2.5” 层协议,因为其他 “Level-3” 层协议都依赖它 。之所以需要 ICP,是因为 “Level 2” 层的 Host-Host 协议提供的链接只是单向的,但大多数的应用需要一个双向(例如:全双工)的连接来做任何有趣的事情 。要使得运行在某个主机上的客户端能够连接到另一个主机上的长期运行的服务进程,ICP 定义了两个步骤 。第一步是建立一个从服务端到客户端的单向连接,通过使用服务端进程的众所周知的套接字号来实现 。第二步服务端通过建立的这个连接发送一个新的套接字套接字号给客户端 。到那时,那个存在的连接就会被丢弃,然后会打开另外两个新的连接,它们是基于传输的套接字号建立的“读”连接和基于传输的套接字号加 1 的“写”连接 。这个小插曲是大多数事务的一个前提——比如它是建立 Telnet 链接的第一步 。
以上是我们逐层攀登了 ARPANET 协议层次结构 。你们可能一直期待我在某个时候提一下 “网络控制协议Network Control Protocol”(NCP)。在我坐下来为这篇文章和上一篇文章做研究之前,我肯定认为 ARPANET 运行在一个叫 “NCP” 的协议之上 。这个缩写有时用来指代整个 ARPANET 协议,这可能就是我为什么有这个想法的原因 。举个例子,RFC801讨论了将 ARPANET 从 “NCP” 过渡到 “TCP” 的方式,这使 NCP 听起来像是一个相当于 TCP 的 ARPANET 协议 。但是对于 ARPANET 来说,从来都没有一个叫 “网络控制协议” 的东西(即使大英百科全书是这样认为的),我怀疑人们错误地将 “NCP” 解释为 “网络控制协议Network Control Protocol” ,而实际上它代表的是 “网络控制程序Network Control Program”。网络控制程序是一个运行在各个主机上的内核级别的程序,主要负责处理网络通信,等同于现如今操作系统中的 TCP/IP 协议栈 。用在 RFC 801 的 “NCP” 是一种转喻,而不是协议 。
与 TCP/IP 的比较ARPANET 协议以后都会被 TCP/IP 协议替换(但 Telnet 和 FTP 协议除外,因为它们很容易就能在 TCP 上适配运行) 。然而 ARPANET 协议都基于这么一个假设:就是网络是由一个单一实体(BBN)来构建和管理的 。而 TCP/IP 协议套件是为网间网设计的,这是一个网络的网络,在那里一切都是不稳定的和不可靠的 。这就导致了我们的现代协议套件和 ARPANET 协议有明显的不同,比如我们现在怎样区分网络层和传输层 。在 ARPANET 中部分由 IMP 实现的类似传输层的功能现在完全由在网络边界的主机负责 。
我发现 ARPANET 协议最有趣的事情是,现在在 TCP 中的许多传输层的功能是如何在 ARPANET 上经历了一个糟糕的青春期 。我不是网络专家,因此我拿出大学时的网络课本(让我们跟着 Kurose 和 Ross 学习一下),他们对传输层通常负责什么给出了一个非常好的概述 。总结一下他们的解释,一个传输层协议必须至少做到以下几点 。这里的 “段segment” 基本等同于 ARPANET 上的术语 “消息message”:
提供进程之间的传送服务,而不仅仅是主机之间的(传输层多路复用和多路分解)在每个段的基础上提供完整性检查(即确保传输过程中没有数据损坏)像 TCP 那样,传输层也能够提供可靠的数据传输,这意味着:
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- linux和windows的区别 linux系统是什么语言
- 制作ar需要的软件 ar技术和vr技术的区别是多少
- 网络打印机出现脱机状态 怎么查看网络打印机的ip地址是多少
- purchase的用法搭配 purchaseorder邮件
- 慢跑的好处与慢跑的最佳时间
- 如何根据体形选择适合自己的有氧运动
- 慢跑的7大好处
- 跑步时的小技巧
- 随身携带的“有氧运动”
- 对付减肥懒惰者的n种有氧运动