接收tcp/ip套接字的缓冲区大小

rem*_*dao 1 sockets buffer tcp

在接收操作中应该期望的最大数据大小是多少?必须发送的数据非常大,但在某些时候我会猜到数据包碎片?

Pav*_*sky 6

  1. 你总是可以限制缓冲区recv()填充的大小(参数)
  2. 您的应用程序设计不应对recv()愿意在一次调用中提供的字节数敏感.

它与MTU没什么关系.在某些TCP堆栈设计中,对recv()的一次调用不会返回多个基础数据包协议的数据报.在其他情况下,它可能与套接字的接收缓冲区一样大.