常见应用层协议解析
应用层常见的协议
1、Telnet(远程登录)(c/s,tcp)
远程登录功能允许用户与远程计算机进行动态交互,即用自己的键盘,鼠标等输入设备操纵远程计算机,运行远程计算机上的软件,在自己的显示器上了解运行情况,查看运行结果。默认端口23
通信过程
用户的终端实际上与本地的TELNET客户机程序进行通信,远程主机与远程TELNET服务器进行通信。然后通过TCP进行连接, 客户机与服务器之间采用NVT标准进行通信。
1:建立与服务器的TCP连接;
2:从键盘上接收用户输入的字符;
3:把用户输入的字符串变成标准格式并送给服务器;
4:从远程服务器接收输出的信息;
5:把该信息显示在用户的屏幕上。
2、FTP (文件传送协议)(C/S)(TCP)
概述:
文件传输协议,负责将文件从一台计算机传送到另一台计算机上,并且保证其传输的可靠性。
客户端提出文件传输请求,服务器接收请求并提供服务。首先在本地计算机上启动FTP客户程序,利用他与远程计算机建立连接,远程计算机上的服务端FTP程序被激活。这样本地的FTP程序成为一个客户,而远程FTP程序成为服务器,他们之间通过TCP建立连接,端口号为21.
FTP协议的客户机与服务器之间需要建立两个连接, 一个用于控制数据传输(端口21), 一个用于数据传输(端口20)。数据连接主要用于数据传输,完成文件内容的传输。控制连接主要用于传输FTP控制命令和服务器的回送消息。
FTP的功能:
1:可以从本地上传和从服务器下载文件;
2:能够传输各种类型的文件,包括文件,图片, 视频等;
3:能够提供对本地和远程计算机的目录操作。
4:对文件进行改名删除等操作。
FTP的服务获取有两种方式:一种是通过输入用户名和登录口令, 另一种是输入anonymous作为用户名,邮箱地址作为登录口令进行登录。 FTP客户与服务器之间可以通过命令和回答进行交互。
3:SMTP (简单邮件传输协议)(TCP)(C/S)
概述:
SMTP协议包括两个标准子集, 一个标准定义电子邮件信息的格式,另一个是传输邮件的标准。在互联网中,电子邮件的传送是依靠SMTP协议进行的。SMTP的主要任务是负责服务器之间的邮件传送,最大的特点是简单。只规定了电子邮件如何在互联网中通过TCP协议在发送方和接收方之间进行传送。
工作方式:
基于客户/服务器方式进行的。发送人的主机为客户方,收件人的邮件服务器为服务方。在传送邮件的过程中,需要使用TCP协议进行连接(默认端口号为25)。发送主机先将邮件发送到本地SMTP服务器上,本地SMTP服务器与接收方的邮件服务器建立可靠的TCP连接,从而保证了邮件传输的可靠性。
注意:
接收方必须使用POP3协议才能取得自己邮箱中的邮件。
POP3协议的主要任务是实现用户计算机和邮件服务器的连接,从邮件服务器的电子邮箱中读取邮件。
四:DNS (域名解析系统)(UDP)
概述:
用域名系统来处理IP地址和主机名之间的转换, 在DNS中主机名即为域名。
DNS也是一个应用层协议,为了提供主机名到IP地址的转换服务,DNS是运行在UDP协议之上,使用53号端口。
DNS通常被其他应用层协议(HTTP, SMTP, FTP)所使用, 以便将用户提供的主机名解析为IP地址。 域名是一种分布式并具有层次结构的命名机制
5:SNMP (简单网络管理协议)(UDP)
概述:
SNMP:“简单网络管理协议”,用于网络管理的协议。SNMP用于网络设备的管理。SNMP的工作方式:管理员需要向设备获取数据,所以SNMP提供了“读”操作;管理员需要向设备执行设置操作,所以SNMP提供了“写”操作;设备需要在重要状况改变的时候,向管理员通报事件的发生,所以SNMP提供了“Trap”操作。
SNMP被设计为工作在TCP/IP协议族上。SNMP基于TCP/IP协议工作,对网络中支持SNMP协议的设备进行管理。所有支持SNMP协议的设备都提供SNMP这个统一界面,使得管理员可以使用统一的操作进行管理,而不必理会设备是什么类型、是哪个厂家生产的。默认端口161
6:TFTP (UDP)
概述:
TFTP协议全称为Trivial File Transfer Protocol。目标是在UDP之上上建立一个类似于FTP的但仅支持文件上传和下载功能的传输协议,所以它不包含FTP协议中的目录操作和用户权限等内容;
工作流程:
l server在端口为69的UDP上等待Client发出写文件请求包
l Client通过UDP发送符合TFTP请求格式的WRQ包给Server。从UDP包角度看,该UDP包的源端口由Client随意选择,而目标端口则是Slient的69。
l Server收到Client的这个请求包后,需发送ACK给Client。对于写请求包,Server发送的ACK包确认号为0。
l Client发送DATA数据给Server,Sver接收数据并写文件
l 当Client发送的DATA数据长度小于512字节时,Server认为这次WRQ请求完成
优点:
l 每个数据包大小固定,这样在内存分配处理的时候比较直接
l 实现简单
l 每个数据包都有确认机制,可以实现一定程度的可靠性
缺点:
l 传输效率不高
l 滑动窗口机制太简单,并且该窗口仅有一个包的大小
l 超时处理机制并不完善,RFC1350并没有给出详细的处理机制说明
原文:https://blog.csdn.net/mellymengyan/article/details/51115521