应用层协议有域名系统DNS协议、FTP文件传输协议、telnet远程终端协议、HTTP超文本传送协议、SMTP电子邮件协议、POP3邮件读取协议、Telnet远程登录协议、SNMP简单网络管理协议、TFTP简单文件传送协议等。
而根据 OSI 参考模型,计算机网络被分为了七层,分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。其中前三层被称为通信子网,后三层被称为资源子网。应用层协议(application layer protocol)定义了运行在不同端系统上的应用程序进程如何相互传递报文。
应用层协议
1.DNS:域名系统
DNS 是一个分布式数据库,提供了主机名和 IP 地址之间相互转换的服务。这里的分布式数据库是指,每个站点只保留它自己的那部分数据。域名具有层次结构,从上到下依次为:根域名、顶级域名、二级域名。
DNS 可以使用 UDP 或者 TCP 进行传输,使用的端口号都为 53。大多数情况下 DNS 使用 UDP 进行传输,这就要求域名解析器和域名服务器都必须自己处理超时和重传从而保证可靠性。在两种情况下会使用 TCP 进行传输:
- 如果返回的响应超过的 512 字节(UDP 最大只支持 512 字节的数据)。
- 区域传送(区域传送是主域名服务器向辅助域名服务器传送变化的那部分数据)。
2.FTP:文件传输协议
FTP 是因特网上使用得最广泛的文件传送协议。FTP 提供交互式的访问,允许客户指明文件类型与格式,并允许文件具有存取权限。
FTP 使用 TCP 进行连接,需要两个链接来传送一个文件:
- 控制连接:服务器打开端口号 21 等待客户端的连接,客户端主动建立连接后,使用这个连接将客户端的命令传送给服务器,并传回服务器的应答。
- 数据连接:用来传送一个文件数据。
根据数据连接是否是服务器端主动建立,FTP 有主动和被动两种模式:
- 主动模式:服务器端主动建立数据连接,其中服务器端的端口号为 20,客户端的端口号随机,但是必须大于 1024,因为 0~1023 是熟知端口号。
- 被动模式:客户端主动建立数据连接,其中客户端的端口号由客户端自己指定,服务器端的端口号随机。
主动模式要求客户端开放端口号给服务器端,需要去配置客户端的防火墙。被动模式只需要服务器端开放端口号即可,无需客户端配置防火墙。但是被动模式会导致服务器端的安全性减弱,因为开放了过多的端口号。
3.Telnet:远程终端协议
telnet 是一个简单的远程终端协议,它也是因特网的正式标准。又称为终端仿真协议。
4.HTTP:超文本传送协议
HTTP 是面向事务的应用层协议,它是万维网上能够可靠地交换文件的重要基础。http 使用面向连接的 TCP 作为运输层协议,保证了数据的可靠传输。
5.SMTP:电子邮件协议
即简单邮件传送协议。SMTP 规定了在两个相互通信的 SMTP 进程之间应如何交换信息。SMTP 通信的三个阶段:建立连接、邮件传送、连接释放。
一个电子邮件系统由三部分组成:用户代理、邮件服务器以及邮件协议。邮件协议包含发送协议和读取协议,发送协议- SMTP,读取协议- POP3 和 IMAP。
发送协议 SMTP:SMTP 只能发送 ASCII 码,而互联网邮件扩充 MIME 可以发送二进制文件。MIME 并没有改动或者取代 SMTP,而是增加邮件主体的结构,定义了非 ASCII 码的编码规则。
读取协议 POP3 和 IMAP:POP3 的特点是只要用户从服务器上读取了邮件,就把该邮件删除。但最新版本的 POP3 可以不删除邮件。IMAP 协议中客户端和服务器上的邮件保持同步,如果不手动删除邮件,那么服务器上的邮件也不会被删除。IMAP 这种做法可以让用户随时随地去访问服务器上的邮件。
6.POP3:邮件读取协议
POP3(Post Office Protocol 3)协议通常被用来接收电子邮件。
7.SNMP:简单网络管理协议
SNMP 由三部分组成:SNMP 本身、管理信息结构 SMI 和管理信息 MIB。
SNMP 定义了管理站和代理之间所交换的分组格式。SMI 定义了命名对象类型的通用规则,以及把对象和对象的值进行编码。MIB 在被管理的实体中创建了命名对象,并规定类型。
8.TFTP:简单文件传送协议
TFTP 是 TCP/IP 协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为 69。
TFTP 是一个传输文件的简单协议,它基于 UDP 协议而实现,但是我们也不能确定有些 TFTP 协议是基于其它传输协议完成的。此协议设计的时候是进行小文件传输的。因此它不具备通常的 FTP 的许多功能,它只能从文件服务器上获得或写入文件,不能列出目录,不进行认证,它传输 8 位数据。传输中有三种模式:netascii,这是 8 位的 ASCII 码形式,另一种是 octet,这是 8 位源数据类型;最后一种 mail 已经不再支持,它将返回的数据直接返回给用户而不是保存为文件。
TAG:应用层协议