C# 数据太大时UdpClient Send不工作
我正在反序列化一个对象并通过UdpClient发送它 如果我发送两个字节的数据,数据会被很好地接收,但是如果我将反序列化对象作为字节发送,则不会发送任何内容C# 数据太大时UdpClient Send不工作,c#,.net,C#,.net,我正在反序列化一个对象并通过UdpClient发送它 如果我发送两个字节的数据,数据会被很好地接收,但是如果我将反序列化对象作为字节发送,则不会发送任何内容 u.Send(b, b.Count(), "x.x.x.x", 1452); //does not work (b.Count()=3744) u.Send(new byte[] { 0x00, 0x00 }, 2, "x.x.x.x", 1452); //works 我认为这与数据的大小有关 我试图避免使用TcpClient,因为UDP
u.Send(b, b.Count(), "x.x.x.x", 1452); //does not work (b.Count()=3744)
u.Send(new byte[] { 0x00, 0x00 }, 2, "x.x.x.x", 1452); //works
我认为这与数据的大小有关
我试图避免使用TcpClient,因为UDP速度更快,但由于它是流式传输的,这在TCP中可以工作吗
谢谢。你寄什么回来?顺便说一句,UDP不能保证交付。UDP更快是一种谬论。在某些情况下,它具有较低的延迟,但在高带宽情况下,TCP实际上具有更好的吞吐量。实现起来也更简单。在任何情况下,关于UDP的最大数据报大小以及较大数据报对传输的影响,web上已有相当数量的信息可用。我开始认为这可能是目标防火墙的问题。现在检查一下u.Send=3744顺便说一句Mickyfirewall-如果较小的Send有效,我不会这么认为。3744似乎暗示它已成功发送。