C# 中的路径 MTU 发现

发布于 2024-10-01 16:13:42 字数 79 浏览 6 评论 0原文

如何找到连接之间的路径 MTU?我需要它来定义 UDP 连接的数据包大小。 .Net 中有类似 Path MTU Discovery 的东西吗?

How do I find the path MTU between connection? I need this to define the packet size of my UDP connection. Is there things like Path MTU Discovery in .Net?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

注定孤独终老 2024-10-08 16:13:42

我找到了一种方法(解决方法)来查找 c# 上 udp 的路径 mtu。只需尝试发送 udpclient.dontfragment 设置为 true 的 udp 数据包。如果抛出异常,则减小数据包大小,直到不抛出异常。如果有人想看一些样品,尽管问。

i have found a way(workaround) to find the path mtu for udp on c#. just try send udp packet with udpclient.dontfragment set to true. if it throws an exception, reduce the packet size until no exception is thrown. if anybody would like to see some sample, just ask.

一个人的旅程 2024-10-08 16:13:42

取自此处

winsock 不支持报告
发现了 MTU,即使其他
TCP/IP 堆栈可以(例如 AIX 通过
套接字选项 IP_GETPMTU)。正如温索克
无法报告,.NET 无法提供
一个 API(必须位于顶部
的winsock)。

Taken from here:

winsock doesn't support reporting the
discovered MTU, even though other
TCP/IP stacks do (e.g. AIX through a
socket option IP_GETPMTU). As winsock
cannot report that, .NET can't provide
an API (which would have to be on top
of winsock).

嗫嚅 2024-10-08 16:13:42

您尝试过在 C# 中使用 libpcap 吗?您可以使用一个名为 SharpPCap 的库来查找 PMTU。

Have you tried using libpcap with C#? There is a library called SharpPCap that you can use to find the PMTU.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文