我们的服务器似乎是基于数据包的。它是对旧的基于串行的系统的改编。多年来,它已经被添加、修改、重建等。由于 TCP 是流协议而不是数据包协议,因此有时数据包会被分解。ServerSocket 的设计方式是,当 Client 发送数据时,部分数据包含我们消息的大小,例如55
. 有时这些数据包被分成多个部分。它们按顺序到达,但由于我们不知道如何拆分消息,因此我们的服务器有时不知道如何识别拆分消息。
所以,给了你背景信息。如果数据包被拆分,那么重建数据包的最佳方法是什么?我们正在使用 C++ Builder 5(是的,我知道,旧 IDE,但这是我们目前可以使用的全部内容。在 .NET 或更新的技术中重新设计的工作量很大)。