FTP STOR命令,如何知道是否已发送所有数据?

FTP STOR命令,如何知道是否已发送所有数据?,ftp,ftp-server,Ftp,Ftp Server,我正在尝试构建一个简单的FTP服务器,但是对于STOR命令,我不确定如何区分数据连接关闭,因为所有数据都已发送,还是数据连接过早关闭 在RETR命令中,我知道要发送的文件的大小,但在STOR命令中,我不知道应该接收多少字节 如果数据连接过早关闭,FTP服务器该怎么办?FTP服务器无法知道传输是否中断。这是议定书的一个缺点。服务器只存储它获得的字节数,如果出现网络问题,则由客户端恢复上载(通常通过询问服务器远程文件大小,然后执行stor并跳过已保存的字节数) 这种行为通常会在服务器端进程希望对上载

我正在尝试构建一个简单的FTP服务器,但是对于STOR命令,我不确定如何区分数据连接关闭,因为所有数据都已发送,还是数据连接过早关闭

在RETR命令中,我知道要发送的文件的大小,但在STOR命令中,我不知道应该接收多少字节


如果数据连接过早关闭,FTP服务器该怎么办?

FTP服务器无法知道传输是否中断。这是议定书的一个缺点。服务器只存储它获得的字节数,如果出现网络问题,则由客户端恢复上载(通常通过询问服务器远程文件大小,然后执行stor并跳过已保存的字节数)

这种行为通常会在服务器端进程希望对上载的文件采取操作的设置中引起问题,因为它永远不知道上载何时完成。这通常是通过让客户端在上传完成后重命名文件来处理的