【发布时间】:2012-12-25 21:16:18
【问题描述】:
我正在尝试构建一个简单的 FTP 服务器,但对于 STOR 命令,我不确定如何区分数据连接关闭是因为所有数据都已发送,还是数据连接过早关闭。
在 RETR 命令中,我知道要发送的文件的大小,但在 STOR 命令中,我不知道应该接收多少字节。
如果数据连接过早关闭,FTP服务器应该怎么做?
【问题讨论】:
标签: ftp ftp-server
我正在尝试构建一个简单的 FTP 服务器,但对于 STOR 命令,我不确定如何区分数据连接关闭是因为所有数据都已发送,还是数据连接过早关闭。
在 RETR 命令中,我知道要发送的文件的大小,但在 STOR 命令中,我不知道应该接收多少字节。
如果数据连接过早关闭,FTP服务器应该怎么做?
【问题讨论】:
标签: ftp ftp-server
FTP 服务器无法知道传输是否中断。这是协议的一个缺点。服务器只存储它获得的字节数,如果出现网络问题,则由客户端恢复上传(通常通过向服务器询问远程文件大小,然后结合跳过字节数进行存储)已保存)。
这种行为通常会导致设置中出现问题,因为服务器端进程想要对上传的文件采取操作,因为它永远无法知道上传何时完成。这通常通过让客户端在上传完成后重命名文件来处理。
【讨论】: