首页 文章

TCP套接字数据发送/恢复操作

提问于
浏览
0

我正在研究一款MMO游戏服务器 . 我必须了解TCP数据发送/ recv操作(不是用法,详细信息) . 我想问一下:如果我从.net套接字客户端发送5kb数据,服务器套接字可以再次处理这个数据发送操作吗?即可以再接收5kb数据,如5kb = 1 . 操作:2kb 2.操作:3kb?

我想再说一遍;如果客户端将数据发送到服务器,我们的服务器侦听器的Recv()方法可以再次将此数据传递给我们的处理程序类(回调操作)吗?

1 回答

  • 3

    您是 not 保证从单个 Receive() 中获取单个 Send() 中的所有数据 .

    TCP算法透明地将您的数据拆分为单个数据包,并且单个数据包的数据太大了 . 有关TCP如何做到这一点的详细信息,请参阅Nagle's algorithm .

    如果要控制确切的数据包内容并发送时序,则应考虑使用基于数据包的协议 UDP .

相关问题