壹、文件传输协议FTP
一、FTP简介
文件传送协议FTP曾是互联网上使用最广泛的协议;
- 在互联网发展的早期阶段,用FTP传送文件约占整个互联网的通信量的三分之一;知道1995年,www的通信量才首次超过FTP。
FTP实现的是通过网络实现异构计算机间文件的“拷贝”;
FTP屏蔽了计算机系统的细节,适合异构网络中任意计算机之间传送文件;
FTP提供交互式的访问,允许计算机指明文件的类型与格式,并允许文件具有存储权限。
FTP两个连接:
- 一个用于传输数据(20号端口)
- 一个用户传输命令(21号端口)
二、FTP的特点
采用客户服务器C/S模式,可为多个客户提供服务。
使用TCP可靠传输协议,客户在和服务器建立连接前要经过“三次握手”的过程,保证客户与服务器之间的连接是可靠的,而且是面向对象,位数据传输提供可靠保证。
三、FTP工作方式与工作情况
主动方式:客户机与服务器21号端口建立连接之后,监听N+1号端口,服务器用20号数据端口主动向客户N+1端口建立连接。
被动方式:客户机用端口N与服务器21号端口建立连接之后,客户端打开N+1端口,发送命令给服务器,服务器开启端口P,客户从端口N+1和服务器端口P建立连接,用来进行数据传送。
FTP的工作情况
客户端除了控制进程和数据传输进程外,还有一个用户界面进程用来和用户交互。
四、FTP文件传输模式与存在的问题
文本模式:ASC II模式,以文本序列传输数据
二进制模式:以二进制序列传输数据
- 传输文件之前必须要规定文件传输的模式
FTP存在的问题:
- 用户状态与控制联系起来,没有传送数据的用户会断开连接
- 必须追踪用户在服务器的目录树上的当前位置
- 会话数增多,会降低FTP服务器的性能
贰、简单文件传输协议TFTP
一、TFTP简介
TFTP是TCP/IP协议族中的简单文件传送协议,使用客户服务器C/S模式,只支持文件传输而不支持交互。TFTP不支持对用户进行身份验证。
使用UDP无连接协议,不提供可靠性保证。UDP的数据包头相对简单,只包含源端口号和目的端口号,头部开销小。
二、TFTP的主要特点
每次传送的数据单元PDU中有512字节的数据,但最后一次可以不足512字节。
若文件长度恰好为512字节的整数倍,则在文件传送完毕后,还必须最后发送一个只含首部而无数据的PDU。
TFTP的工作很像停止等待协议。发送完一个文件块后就等待对方的确认,确认时应指明所确认的块编号。发送完数据后在规定时间内收不到确认就要重发数据PDU。
三、TFTP报文格式
三、TFTP工作流程
ACK表示返回确认