FTP协议以前我用得挺少的,网络课上刘孜文老师曰FTP协议过时也就跳过了。不过现在FTP用得还是挺多的,所以决定围观下FTP。
刘孜文老师的经典名言是:我所学到的东西都不是从课堂上得来的。这点我挺赞同的。
刘孜文老师超强悍,中科院的博士,2个月看完了Linux内核的代码。
记得第一节课他说可以不用去上课,只要自己学就好了,于是偶深入贯彻刘老师的话,所以就一学期也没去上网络课了。
课下的时间都花在Scar上,网络也没仔细研究过,悲剧了,现在开始要好好补下才行了。
以下的内容是关于FTP协议的。
HTTP和FTP都是文件传输协议,他们都运行在TCP之上.
最显著的区别在于FTP使用两个并行的TCP连接,一个是控制连接(control connection),一个是数据连接(data connection).通常控制连接使用21端口.
因为FTP协议使用一个分离的控制连接,所以我们也称FTP的控制信息是带外(out-of-band)传送的。而HTTP协议在TCP连接中发送请求和响应首部行来控制,所以HTTP也可以说是带内(in-band)发送控制信息。
FTP服务器必须在整个会话中保存用户的状态信息,也就是说要保存用户的权限信息,远程目录树的当前位置。而HTTP协议则是无状态的,要通过cookie来保存用户状态。