首页 > 解决方案 > 如何使用 UDP 协议构建可靠的 P2P 数据传输

问题描述

正如您在标题中看到的那样,我必须使用 UDP 构建可靠的 P2P 数据传输(我是学生),所以我要求你们不要给我代码,实际上,我非常讨厌复制和粘贴,这样做我感到很痛苦,我正在寻求帮助,告诉我我需要什么工具,我熟悉 Javascript 和 Java 和 Python,如果你知道这些语言中的任何一种,请随时帮助我。

可靠性部分将通过校验和和 ACK(确认)来实现,所以我必须实现它们:-我知道如何计算校验和。-ACKs 可以通过 Stop-and-wait 协议的方式来实现(我认为这是最简单的一种),如果你知道另一种协议,那也没关系。

我真的迷路了,如果您有一些代码示例,我不知道从哪里开始,请分享一个有用的链接,这样我就可以从哪里开始构建一个想法。

谢谢。

标签: javascriptpythonjavaudpp2p

解决方案


以下是 github 中一些可靠的 UDP 示例,例如 kcp、quic、utp。您可以阅读它们并从中获取基本信息。

至于怎么做,有一些小建议:

  1. 您需要 ACK 来检查是否有任何数据包/数据报丢失,然后重新传输它
  2. 您需要使用 FEC
  3. 拥塞算法可以稍后考虑。

当你尝试构建自己的代码时,每一步都要做一个小目标,不要一开始就构建复杂的协议。


推荐阅读