FTP使用的共享方式是复制整个文件,如果要存取服务器上的一个文件,必须先在本地获得一个副本,如果要修改文件,就要先修改本地的副本,再上传到服务器。总之FTP只能传送整个文件。
工作原理:
FTP运行时,服务器端会有两类进程,主进程和从属进程,主进程负责接受请求,从属进程负责处理不同的请求。主进程和从属进程是并发进行的。
例如,在数据传输过程中,就要建立两个进程控制进程和数据传输进程,建立了两个TCP链接,控制进程只传输控制信息,数据传输进程负责传输数据。其步骤如下:
- 客户进程向服务器发送建立连接请求时,需要寻找FTP服务器的熟知端口21,并告知服务器自己的另一个端口号。
- 服务器用自己的另一个端口20与客户进程提供的端口号进行连接。
FTP每次传输都需要传送整个文件,如果只需要对远程的文件进行稍微的修改,就不适用于FTP。
网络文件系统NFS则允许应用进程打开一个远程文件,并能在该文件的某一个特定位置上开始读写数据。
简单文件传送协议TFTP
TFTP使用UDP数据报,需要有自己的差错改正措施。
TFTP的主要优点:
- 可用于UDP环境。
- 所占内存很小,适用于小型计算机或者特殊设备。
TFTP的主要特点;
- 每次传送512字节,最后一次可不足512.
- 数据报文按需编号。
- 支持ASCII或二进制传送。
- 可对文件进行读写。
- 使用简单的首部。
TFTP工工作像停止等待协议,发送一个文件块后等待确认,收不到确认就重发。接收方在规定时间内收不到下一个文件块就重发确认。
TFTP的结尾是一个不满512字节的数据字段,如果要传送的文件恰好是512字节的整数倍,则要再发送一个只有首部内容为空的数据报文。