一、从客户端上传文件给服务器
1、客户端发送 “STOR+文件名” 命令给服务器
2、客户端将文件数据 fread() 和 send() 给服务端
3、服务端用 recv() 接收数据后 fwrite() 至本地文件
4、网络断开,关闭 socket
5、客户端重新连接至服务端并正常登陆
6、客户端发送 “APPE+文件名” 命令给服务器
(1)、客户端发送 “SIZE+文件名” 命令给服务器
(2)、服务器返回文件大小
7、客户端根据文件大小,从断点处发送数据给服务器
8、服务端接收数据并追加到文件末尾
二、从服务器下载文件到客户端
1、客户端发送 “RETR+文件名” 命令给服务器
2、服务器将文件数据发送给客户端
3、客户端接收后写至本地文件
4、网络断开,关闭 socket
5、客户端重新连接至服务端并正常登陆
6、客户端发送 “REST+文件长度” 命令给服务器
7、客户端发送 “RETR+文件名” 命令给服务器
7、服务器根据文件大小,从断点处发送数据给客户端
8、客户端接收数据并追加到文件末尾