最新站长seo网站外链发布平台wordpress小程序主题
FTP
FTP:文件传输协议
- 向远程主机上传输文件或从远程主机接收文件
 - 客户/服务器模式 
- 客户端:发起传输的一方
 - 服务器:远程主机
 
 - ftp:RFC 959
 - ftp服务器:端口号为21
 

FTP:控制连接与数据连接分开
控制连接
- FTP客户端与FTP服务器通过端口 21 联系,并使用TCP为传输协议
 - 客户端通过控制连接获得身份确认
 - 客户端通过控制连接发送命令浏览远程目录
 
数据连接
- 收到一个文件传输命令时,服务器打开一个到客户端的数据连接
 - 一个文件传输完成后,服务器关闭连接
 
继续控制连接
- 客户端继续通过控制连接发送命令:下载文件
 
重新开启数据连接
- 服务器打开 第二个TCP 数据连接用来传输另一个文件(服务器主动)
 - 然后又关闭连接
 
控制连接: 带外( “out of band” )传送 ,就是服务端可以向客户端发送请求建立连接
FTP服务器维护用户的状态信息: 当前路径、用户帐户与控制连接对应
FTP是有状态的协议
FTP命令、响应
命令样例
- 在控制连接上以ASCII文本方式传送
 
| 命令 | 说明 | 
|---|---|
| USER username | 发送用户名 | 
| PASS password | 发送命令 | 
| LIST | 请服务器返回远程主机当前目录的文件列表 | 
| RETR filename | 从远程主机的当前目录检索文件 (gets) | 
| STOR filename | 向远程主机的当前目录存放文件 (puts) | 
返回码示例
| 状态码 | 状态信息 | 
|---|---|
| 331 | Username OK, password required | 
| 125 | data connection already open; transfer starting | 
| 425 | Can’t open data connection | 
| 452 | Error writing file | 
