FTP-基础知识

基础知识:

FTP(File Transfer Protocol)是文件传输协议的简称。正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
FTP 是一种基于 TCP 的上层 应用层协议,它 不支持 UDP 协议
FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口) 。通常21端口是命令端口,20端口是数据端口。当混入主动/被动模式的概念时,数据端口就有可能不是20了。
FTP支持两种方式的传输:文本(ASCII)方式和二进制(Binary)方式。通常文本文件的传输采用ASCII方式,而图象、声音文件、加密和压缩文件等非文本文件采用二进制方式传输,如果为了从一个系统上传输文件而使用了与本地系统不同的计算机字节位数,那么就必须使用Tenex模式。FTP以ASCII方式作为缺省的文件传输方式。

扩展:

实现一个ftp软件或工具,还是用socket去实现,需要弄清socket和端口是基础。注意以下几点:
1.socket分为客户端和服务端,通常情况下服务端需要进行bind绑定端口操作,而客户端不需要操心本地端口的操作,客户端只需要在connect的时候传入服务端的IP和端口参数。**其实在socket连接的过程中,双方都需要打开一个端口,只不过客户端的端口由系统自己产生,自己关闭。**因为客户端关心的是服务端的端口,而不需要关心本地的端口。很多人误以为客户端不需要端口。
2.ftp协议中会建立两条通道:一条是命令通道,进行命令传送,例如:客户端向服务端请求列表;另外一条是数据通道,就是在文件上传下载时使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值