文章目录
概述
应用层是计算机网络体系结构的最顶层 ,它直接面向用户和应用程序,解决通过应用进程的交互来实现特定网络应用的问题 ,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分。
应用层协议定义了应用进程间通信和交互的规则 ,这些协议主要解决的是网络应用程序与网络服务之间的通信问题。
在 TCP/IP 体系结构中,应用层协议利用传输层提供的服务(如 TCP 或 UDP)来实现各种网络应用。就像是一栋建筑的顶层,它是用户和计算机网络交互的接口,通过应用层协议来完成各种网络功能。
-
早期基于文本的应用(电子邮件、远程登录文件传输、新闻组)
-
20世纪90年代将因特网带入干家万户的万维网WWW
-
当今流行的即时通信、P2P文件共享及各种音视频应用
-
计算设备的小型化和"无处不在",宽带住宅接入和无线接入的日益普及和迅速发展,为未来更多的新型应用提供了广阔的舞台。
主要功能
应用层的主要功能包括:
-
提供应用服务接口 :为各种网络应用程序提供接口,使得应用程序能够方便地使用网络服务 。例如,Web 浏览器通过
HTTP
(超文本传输协议)与 Web 服务器进行通信,获取网页内容;电子邮件客户端通过SMTP
(简单邮件传输协议)发送邮件,通过POP3
(邮局协议第 3 版)或IMAP
(互联网消息访问协议)接收邮件。这些协议为应用程序提供了发送和接收数据的标准方式。 -
数据表示和转换 :负责处理应用程序之间交换的数据的格式和表示 。不同的应用程序可能使用不同的数据格式,应用层需要对这些数据进行转换,以确保数据能够在不同的系统之间正确地传输和理解。例如,在网页传输中,
HTML
(超文本标记语言)格式的网页内容需要被正确地编码和传输,接收方的浏览器再将其解码并显示出来。 -
应用进程通信协调 :协调不同应用进程之间的通信 。在一个复杂的网络环境中,可能有多个应用程序同时在进行通信,应用层需要对这些通信进行管理和协调。例如,在一个分布式系统中,应用层可以通过远程过程调用(
RPC
)协议来实现不同主机上的应用进程之间的通信,使得这些进程能够像在本地一样进行交互。
常见应用层协议
-
HTTP
/HTTPS
:-
HTTP
(超文本传输协议):用于在 Web 浏览器和 Web 服务器之间传输超文本,是构建万维网(WWW)的基础协议 。它采用请求 - 响应模式 ,浏览器发送请求(如GET
请求获取网页内容,POST
请求提交表单数据等),服务器收到请求后返回相应的响应,包括 HTML 文档、图片、脚本等资源。 -
HTTPS
(安全超文本传输协议):是HTTP
的安全版本 ,在HTTP
的基础上加入了SSL/TLS
(安全套接层 / 传输层安全)加密协议。它主要用于保护敏感信息(如用户登录信息、信用卡信息等)在网络传输过程中的安全,通过加密和身份认证机制,确保数据不被窃取或篡改。
-
-
SMTP
、POP3
和IMAP
:-
SMTP
(简单邮件传输协议):用于发送电子邮件 。它规定了邮件从发送方的邮件客户端发送到发送方的邮件服务器,再从发送方的邮件服务器传输到接收方的邮件服务器的过程。SMTP
使用简单的命令 - 响应格式进行通信,发送方通过SMTP
命令发送邮件相关信息(如发件人、收件人、邮件主题、邮件正文等)。 -
POP3
(邮局协议第 3 版):主要用于接收电子邮件 。用户通过POP3
协议从邮件服务器上下载自己的邮件到本地客户端。POP3
采用客户端 - 服务器模式,客户端连接到服务器后,可以列出邮件列表、下载邮件、删除邮件等操作。 -
IMAP
(互联网消息访问协议):也是用于接收电子邮件 ,但与 POP3 不同的是,IMAP 提供了更强大的邮件管理功能。用户可以在服务器上直接对邮件进行操作,如创建文件夹、移动邮件、标记邮件等,并且可以在多个设备上同步邮件状态,使得用户在不同设备上访问邮件时能够保持一致的体验。
-
-
DNS
(域名系统):用于将域名 (如www.example.com
)转换为对应的 IP 地址 。在网络通信中,计算机是通过 IP 地址来识别对方的,但对于用户来说,记住复杂的 IP 地址很困难,DNS
就起到了这个转换的作用。当用户在浏览器中输入域名时,浏览器会首先向DNS
服务器发送查询请求,DNS
服务器查找并返回对应的 IP 地址,然后浏览器再通过该 IP 地址与目标服务器进行通信。 -
FTP
(文件传输协议):用于在不同主机之间传输文件 。FTP
采用客户端 - 服务器模式 ,支持两种连接方式:控制连接和数据连接。控制连接用于传输命令,如用户登录、文件目录操作等命令;数据连接用于传输实际的文件数据。FTP
可以进行文件的上传(从客户端到服务器)和下载(从服务器到客户端)操作,并且可以支持多种文件类型和传输模式。