--编辑
我使用的命令行是:
tcpdump -s 1500 -w mylog
tcpdump 抓取了数据包,但仅记录了前大约55秒。这是客户端发送文件到套接字所需的时间。之后,它停止记录,即使服务器继续接收和将文件写入硬盘。-- 编辑2
源代码:
client.cpp
server.cpp
common.hpp
common.cpp
-- 最终编辑
正如你们中的许多人指出的(也正如我怀疑的),源代码中存在几个误解/错误。在我清理了它(或几乎重写了它)之后,它能够按预期与tcpdump一起使用。我将接受@Laurent Parenteau的答案,但仅针对第5点,因为这是唯一与问题相关的。如果有人对正确的代码感兴趣,这里是它:
源代码已编辑:
client.cpp
server.cpp
common.hpp
common.cpp