为什么事务以块的形式发送到Receiver端

时间:2013-02-11 08:38:37

标签: c# sockets tcp wireshark

我正在一个客户端服务器应用程序中,我的应用程序充当客户端,我们正在向服务器发送事务。在我的这个通信中,我一次发送了4443个byes的事务,但是在服务器端,它们以块的形式接收这个事务详细信息。

当我在Wireshark的帮助下检查了我的TCP日志时,我发现从我的角度来看,事务也将以块的形式进入服务器端。我已经将我的套接字数据包的缓冲区大小设置为8092字节,但仍然存在这个问题,所以可能是因为我在一次中断从我的应用程序发送完整数据,为什么在网络中这些数据包是以块为单位。

请查找Ethereal日志文件以供参考

1 个答案:

答案 0 :(得分:2)

它取决于maximum transfer unit,它是底层网络的属性。以太网通常为1492或1500字节。因为您使用流协议(TCP),所以一旦数据包到达就会获得数据块,应用程序负责组织它,而不是套接字。