FTP实验报告
1、 实验目的
本实验要求在linux系统上完成一个文件传输协议,通过本实验,不但可以深入理解FTP协议的原理和细节,还可以学会利用Socket接口设计实现简单应用层协议,掌握网络应用程序的基本设计方法和实验技巧。
2、 实验说明
文件传输协议用于两台计算机之间传递文件,FTP包含了两个通道。一个是控制通道,一个是数据通道。控制通道是和FTP服务器进行沟通的通道,连接服务器,发送指令。数据通道则是和FTP服务器进行文件传输和获取文件列表的通道。
3、 实验内容
本实验要求在Linux系统上使用Socket接口实现FTP客户顿和服务器端的程序,使客户端可以连接至服务器,并且可以进行一些FTP的基本操作。应实现的FTP命令包括如下几点:
1、 get: 取远方的一个文件
2、 put: 传给远方一个文件
3、 pwd: 显示远方当前目录
4、 dir: 列出远方当前目录
5、 cd: 改变远方当前目录
6、 help: 显示提供的命令
7、 quit: 退出
4、 实验代码
客户端和服务器代码见附件。
5、 思考题
1.在FTP协议中,为什么要建立两个TCP连接来分别传送命令和数据? 答:如果只用一个连接,那就是复用一个端口。而我们知道,端口之间通信需要传输协议才能建立连接,端口的复用等于说在一个端口上同时使用2种协议以上,但如果是10种协议呢?不但会影响传输速度,数据出错的概率也变大了。