Tcp 会自动分包,包最好分成多大?(200分)

  • 主题发起人 主题发起人 bsense
  • 开始时间 开始时间
B

bsense

Unregistered / Unconfirmed
GUEST, unregistred user!
刚刚做了个tcp 收发 发现 用 8192 字节 发送的话,会自动随机 分成多个包在服务器收到,比如7200字节1包,992 字节1包,

服务器是 delphi fishiocp控件,缓冲区4096字节,

客户端 vs2005 c# ,mobile 模拟器,.net compact framework 8192字节分包 new socket stream 模式, tcp

发现用1024字节在客户端发送就不会出现自动被系统切割的状况.

还可以用多大(越大越好) ,不会被系统自动分包?
 
一般TCP的数据表为1400个字节,超出这个大小就会被分包。不过根据网络情况的不同也可能有其他不同的表现,主要有趣tcp传输数据是以“流”的概念来传输的。所以一般都需要自己分包的,比如说固定每次发送的数据的长度,或者在每次发送的数据头、尾放置特殊的标识符。
 
谢谢回答
 
后退
顶部