我正在通过 TCP 向一个极其古老的系统发送数据。我需要在一个数据包中发送 2000 字节,并且我需要它不被拆分(当我通过套接字写出 2000 字节时会发生什么)。
虽然,是的,我不必在应用程序级别关心这个问题 - 事实上我确实关心这个问题,因为我在旧系统上没有其他选项,所有内容都必须在单个数据包中接收。
还有比调用 netcat 更不可怕的事情吗?
最佳答案
除非您使用 jumbo frames 的链接通常MTU上ethernet是 1500。减去 IP (20 字节)和 TCP header (至少 20 个字节)。因此,单个数据包中包含 2000 字节是不可能的。
关于c# - 在 C# 中创建 TCP 数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2244768/