如何在一个TCP数据包中从不同的文件中分离数据



假设我已经传输了两个文件A.binB.bin

TCP是一个字节流。它没有固有的消息语义,即既不在包边界也不在包内部。任何消息语义都需要由应用层协议来完成,或者必须是传输数据中固有的。

如果没有特定的应用程序协议以某种方式描述A.bin结束和B.bin开始的位置,并且如果这些信息不是这些文件中固有的(比如具有特定的文件格式(,那么就不可能分离这些文件。但是,假设这是一个真实世界的应用程序,接收器知道如何分离文件,那么您必须将接收器所拥有的相同知识应用于数据包捕获。但这并没有通用的魔术方法。

最新更新