<转>应用层协议 <原文>http://blog.csdn.net/mellymengyan/article/details/51107931
基于TCP协议的都用C/S方式:

一.TELNET(远程登录)
是Internet中用来进行远程访问的重要工具之一,远程登录功能允许用户与远程计算机进行动态交互,即用自己的键盘,鼠标等输入设备操纵远程计算机,运行远程计算机上的软件,在自己的显示器上了解运行情况,查看运行结果。
通信过程:用户的终端实际上与本地的TELNET客户机程序进行通信,远程主机与远程TELNET服务器进行通信。然后通过TCP进行连接,客户机与服务器之间采用NVT标准进行通信。
1.建立与服务器的TCP连接;
2.从键盘上接收用户输入的字符;
3.把用户输入的字符串变成标准格式并送给服务器
4.从远程服务器接收输出的信息
5.把该信息显示在用户的屏幕上
二.FTP(文件传送协议)
是因特网上使用最广泛的文件传送协议,负责将文件从一台计算机传送到另一台计算机上,并且保证其传输的可靠性。客户端提出文件传输请求,服务器接收请求并提供服务。首先在本地计算机上启动FTP客户程序,利用他与远程计算机建立连接,远程计算机上的服务端FTP程序被激活,这样本地的FTP程序成为一个客户,而远程FTP程序称为服务器,他们之间通过TCP建立连接,端口号为21.
FTP协议的客户机与服务器之间需要建立两个连接:一个用于控制数据传输(端口21),一个用于数据传输(端口20)。数据连接主要用于数据传输,完成文件内容的传输。控制连接主要用于传输FTP控制命令和服务器的回送消息。
FTP的功能:
1.可以从本地上传和从服务器下载文件
2.能够传输各种类型的文件
3.能够提供对本地和远程计算机的目录操作
4.对文件进行改名删除等操作
FTP的服务获取有两种方式:一种是通过输入用户名和登录口令,另一种是输入anonymous作为用户名,邮箱地址作为登录口令进行登录。
FTP客户与服务器之间可以通过命令和回答进行交互。
FTP的控制与数据连接:

三.SMTP(简单邮件传输协议)
包括两个标准子集,一个标准定义电子邮件信息的格式,另一个是传输邮件的标准。在互联网中,电子邮件的传送是依靠SMTP协议进行的。SMTP的主要任务是负责服务器之间的邮件传送,最大的特点是简单。只规定了电子邮件如何在互联网中通过TCP协议在发送方和接收方之间进行传送。
工作方式:基于客户、服务器方式进行的。发送人的主机为客户方,收件人的邮件服务器为服务方。在传送邮件的过程中,需要使用TCP协议进行连接(默认端口号为25)。发送主机先将邮件发送到本地SMTP服务器上,本地SMTP服务器与接收方的邮件服务器建立可靠的TCP连接,从而保证了邮件传输的可靠性。
注意:接收方必须使用POP3协议才能取得自己邮箱中的邮件。
POP3协议的主要任务是实现用户计算机和邮件服务器的俩节,从邮件服务器的电子邮箱中读取邮件。
SNMP邮件传输过程:

四.HTTP(超文本传输协议)
HTTP是一个属于应用层的面向对象的协议,由于其简捷快速的方式,适用于分布式超媒体信息系统。
HTTP协议的主要特点如下:
1.支持客户服务器模式
2.简单快速,客户向服务器请求服务时,只需传输请求方法和路径;请求方法有post,get,head.每种规定了客户与服务器联系的类型的不同
3.灵活:HTTP允许传输任意类型的对象
4.无连接:限制每次连接只处理一个请求。服务器处理完用户的请求就回断开连接,采用这种方式可以节省传输时间。
5.无状态:对事务处理没有记忆功能。缺乏状态意味着如果后续处理需要前面的信息,则他必须重传‘另一方面,在服务器不需要先前信息时他的应答就比较快。’
五.DNS(域名解析系统)
用域名系统来处理IP地址和主机名之间的转换,在DNS中主机名即为域名。
DNS也是一个应用层协议,为了提供主机名到IP地址的转换服务,DNS是运行在UDP协议之上,使用53号端口。
DNS通常被其他应用层协议(HTTP,SMTP,FTP)使用,以便将用户提供的主机名解析为IP地址。域名是一种分布式并具有层次结构的命名机制。
查询方法:
1.递归解析
当收到请求时,域名服务器应返回所要求的解析结果,不论该服务器是否有相关的信息。该服务器没有相关信息时,那么就该向其他的服务器进行请求,直到获得结果或错误信息,然后把结果返回给解析请求者。
2.重复解析
接收到请求时,域名服务器若有该域名的相关信息,则返回IP地址给解析请求者。若无该域名的相关信息,则该服务器不再进一步向其他域名服务器请求解析,而是返回一个可用的域名服务器的地址给解析请求者,让解析请求者自己去向该域名服务器作进一步的解析请求。
二者的区别:前者将域名解析的工作交给域名服务器完成,后者将主要的工作交给请求域名服务的主机来完成。
六.SNMP(简单网络管理协议)
用于网络管理的协议,SNMP用于网络设备的管理,工作方式:管理员需要向设备获取数据,所有SNMP提供了“读”操作;管理员需要向设备执行设置操作,所以SNMP提供了“写”操作。设备需要在重要状况改变的时候,向管理员通报事件的发生,所以SNMP提供了“Trap”操作。
SNMP被设计为工作在TCP/IP协议族上,SNMP基于TCP/IP协议工作,对网络中支持SNMP协议的设备进行管理。所有支持SNMP协议的设备都提供SNMP这个统一界面,使得管理员可以使用统一的操作进行管理,而不必理会设备是什么类型是哪个厂家生产的。
管理方式:

Get:读取网络设备的状态信息
Set:远程配置设备参数
Trap:管理站及时获取设备的重要信息
七.TFTP
全称为Trivial File Transfer Protocol,目标是在UDP之上建立一个类似于FTP的但仅支持文件上传和下载功能的传输协议,所以它不包含FTP协议中的目录操作和用户权限等内容。
工作流程:
1.server在端口为69的UDP上等待client发出写文件请求包
2.client通过UDP发送符合TFTP请求格式的WRQ包给server.从UDP包角度看,该UDP包的源端口由client随意选择,而目标端口则是server的69.
3.server收到这个请求包后,需发送ACK给client.对于写请求包,server发送的ACK包确认号为0
4.client发送data数据给server,server接收数据并写文件
5.当client发送的Data数据长度小于512字节时,server认为这次WRQ请求完成
优点:每个数据包大小固定,这样在内存分配处理的时候比较直接;实现简单;每个数据包都有确认机制,可以实现一定程度的可靠性。
缺点:传输效率不高;滑动窗口机制太简单,并且该窗口仅有一个包的大小;超时处理机制并不完善,RFC1350并没有给出详细的处理机制说明。

浙公网安备 33010602011771号