gpt4 book ai didi

c# - 使用 C# 获取和设置 udp 包标志和校验和

转载 作者:行者123 更新时间:2023-11-30 17:16:17 24 4
gpt4 key购买 nike

我知道如何通过 udp 协议(protocol)将字节数据发送到服务器。如何激活我发送的包裹上的一些标志?我如何判断收到的包裹是否激活了某些标志。此外,如何读取包中包含的校验和?如果我想发送一个没有数据而只有一个标志的包裹,我该怎么做?我想用 c# 来做这个。我不想修改本地端点、远程端点或每个包的任何其他内容。

编辑

我之所以要这样做,是因为我已经很努力地做了tcp punch holing。我在 forward traffic from port X to computer B with c# "UDP punch hole into firewall" 打开了一个赏金问题无论如何,我设法做了 udp punch holing。因此,我想让 udp 可靠。

换句话说,我想创建一个算法,使我能够以正确的顺序发送 udp 数据包到达目的地。如果我可以设置并读取一些标志,那么这将有助于该算法。

我知道创建起来并不容易,但至少我想尝试一下。我花了很多时间寻找一个可以执行此操作的 c# 库...

最佳答案

UDP 已经有一个 checksum .

您是想问类似 RUDP 的问题吗? ?这使您可以保证数据包的交付和排序(两者都没有,或两者都没有)。 Lidgren实现可靠的 UDP 协议(protocol)。

如果您想自己动手,请继续阅读如何 SEQ and ACK work in TCP ;并通过 UDP 进行模拟(Lidgren 基本上就是这么做的)。

关于c# - 使用 C# 获取和设置 udp 包标志和校验和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7328700/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com