通过TCP套接字编程: 在我的应用程序中,接收方使用小尺寸缓冲区然后传输数据。因此,在收到所有数据之前,会多次调用recv()。在每次调用recv()时,使用的缓冲区被复制到另一个大缓冲区或部分附加到文件中。
我的问题是,我应该处理收到的TCP"数据包顺序"在我的代码中,或者TCP在后台自己的缓冲区上处理它?因为传输的TCP数据包不是以正确的顺序到达接收方。
答案 0 :(得分:1)
我的问题是,我应该处理收到的TCP"数据包顺序"在我的代码中另外
没有。 TCP保证它将按照接收的顺序将数据切换到应用程序。应用程序无需实现逻辑以确保数据接收的顺序。再次检查您的应用程序代码,查找导致收到的数据与发送的数据顺序不同的任何错误。