应用层协议有哪些

#头条创作挑战赛#

一、应用层

应用层是 OSI / RM 体系中最高的一个功能层,是开放系统互联环境与本地系统的操作系统和应用系统直接接口的一个层次。在功能上,应用层为本地系统的应用进程( Application Process , AP )访问 OSI / RM 环境提供手段,也是唯一直接给应用进程提供各种应用服务的层次。根据分层原则,应用层向应用进程提供的服务是 OSI / RM 的所有层直接或间接提供服务的总和。

1.应用层功能与协议

常用的网络服务包括文件服务、电子邮件服务、打印服务、集成通信服务、目录服务、域名解析服务、网络管理、安全和路由互连服务等,如果要完成类似这样的网络服务,必须通过应用层的协议来完成。常用的应用层协议有 HTTP 、 FTP 、 Telnet 、 SNMP 、 SMTP 、 NNTPDNS .

2.应用层实现模型

简单地说,应用层是由应用进程和其使用的应用实体( Application Entity , AE )组成,应用进程把信息处理功能和通信功能组合在一起,通过一个全局的名字可以调用这个功能。例如,远程数据库访问可组成一个应用进程,这个应用进程与远处的数据库服务进程交互作用(发出检索命令、接收响应、处理结果),完成数据库检索。

应用进程的通信功能是由应用实体实现的。为了实现不同性质的通信,一个应用进程可能使用一个或多个应用实体。

一个应用实体还可以再划分为一个用户元素( User Element , UE )和若干的应用服务元素( Application Service Element , ASE )。ASE 是具有简单通信能力的功能模块,对等的 ASE 之间有专用的服务定义和协议规范。应用实体首先要与对等的应用实体建立应用联系( Application Association , AA ),然后才能通信。建立应用联系的过程主要是交换应用上下文( Application Context , AC )。 AC 是可以用名字(对象标识符)引用一组 ASE 及其调用规则。在建立联系期间通过协商确定共同认可的应用上下文,并在应用活动期间遵守商定的通信规则。

二、传输层

传输层能提供可靠或不可靠的服务。既然有可靠的服务可用,为什么应用程序开发人员还要使用不可靠的服务呢?这个选择取决于应用程序本身的特性。对于传输层的上一层和下一层,定义什么是可靠、什么是不可靠是有意义的。

1.可靠性传输

传输层中的可靠性是指传输协议对在网络中传送的数据具有提供某种保证的能力。通过提供保证,数据传送变得可靠。传输层中的不可靠性是指传输协议对在网络中传送的数据缺乏提供保证的能力。

由于网络是不可靠的。在 OSI / RM 的第5~第7层中会发生许多的事件,这些事件都需要传输层来处理。传输层必须对报文丢失提供一种检测方法,以便可以重新传输丢失的数据。有时网络层会通过不同的链路路由多个报文,这导致报文以错误的顺序到达目的地。传输层必须能把这些报文按正确的顺序进行重新汇编,以便将数据传送给应用程序。由于大多数应用程序都是以结构化的格式交换数据,因此在接收数据时必须按正确的顺序重新汇编。

传输层必须能协调所有的情况。之所以不需要使用可靠的传输层,是因为对可靠或不可靠服务的选择取决于应用程序要交换的信息的类型。例如,用户要把一个重要的财务数据表保存到网络服务器,该网络服务器显然需要可靠性保证,以防止在文件传输时有一两个报文丢失。那么,传输层仅仅重新传输数据就可以了,因为传输层就是这样提供可靠性的。

但是要是通过 IP 网络传送电话呢?如果传输层把交谈中可能丢失的所有数据都重新传输,这样有意义吗?每当含有声音的报文丢失,传输层只能在用户接收到声音数据后将丢失的报文重新传输。这将在电话的接收端引起严重混淆的接收效果。如果传输层等待一段时间并将要传输的数据存放在一个缓冲器中直到丢失的报文被重新传输完呢?这样做当然可以,不过由于附加的重新传输和重新汇编延迟,通话质量将严重下降。因此,在 IP 网络中使用不可靠协议传输声音数据会更好。

2.网络质量

根据通信子网提供的服务质量不同,网络服务可分为 A 、 B 和 C 类网络服务。

(1) A 型网络服务。 A 类网络是一个完整的、理想的、可靠的服务,所需传输层协议非常简单。在连类网络服务下,网络中传输的分组不会丢失和失序,因此传输层不需要提供故障恢复和重新排序服务,多数局域网可提供 A 型网络服务,但广域网则很难达。

(2) B 型网络服务。具有较好的数据服务(误码率低)和较差的连接服务(故障多),对该型网络,传输层协议必须提供故障恢复功能。大多数 X .25网为 B 型网络,

(3) C 类网络服务,网络传输不可靠,可能会丢失分组或出现重复分组:网络故障率也高,例如简单的无线网络,容易丢失数据,网络故障率也高。

3.协议与控制

传输层定义了5类协议,都是而向连接的。

(1)0类协议:最简单的协议,是而向 A 型网络服务的。该类协议没有差错恢复和复用功能。

(2)1类协议:提供基本的传输连接,是面向 B 型网络服务的。它在0类协议的基础上增加了基本差错恢复功能。

(3)2类协议:面向 A 型网络服务。该类协议具有流量控制、复用功能而没有网络连接和故障恢复功能。

(4)3类协议:面向 B 型网络服务,既具有差错恢复功能,又有复用功能。

(5)4类协议:是面向 C 型网络服务,具有差错检测、差错恢复、复用等功能。该类协议是最复杂、最全面的协议。

传输控制协议是实现端到端计算机之间的通信、实现网络系统资源共享所必不可少和非常重要的协议。传输控制协议所实现的功能不仅是保证相同计算机系统之间、相同计算机网络系统之间信息的可靠传输,还可实现不同计算机系统之间、不同计算机网络系统之间信息的可靠传输。

应用层协议有哪些