5

我正在尝试将 WebRTC 用于纯粹的去中心点对点通信。我正在尝试构建一个 P2P 覆盖网络,其中节点交换其他节点的详细信息,以便它们可以连接到它们。

如果我在节点之间交换 SDP blob(会话描述对象),它们是否可重用,因为我可以简单地给定这个 blob 和一个 ICE 候选者就可以建立到一个节点的连接?

4

1 回答 1

4

一般不会:你需要来自源PeerConnection的offer;不能保证 PC1 的 blob 可以与 PC2 一起使用(并且可能不能)。现在,如果他们创建了对等连接,完成了 CreateOffer,并保持对等连接直到 SDP 被使用 - 那么是的,但这并不是真正的“重用”。

您可能会侥幸逃脱,但现在或将来的各种事情可能会半随机地打断您。最好的解决方案是从源节点创建一个报价,并通过 p2p 网络将其传递给目标节点,然后目标节点可以将响应传回。如果您可以让 PC 保持活动状态以等待传入的交易,那么“源”可以将其用于 createAnswer,并通过 p2p 网络减少一次行程。您需要处理冲突(两个节点试图使用通过网络分发的相同提议;基本上,失败/重试设置应该在极少数情况下需要处理它)。您还可以在答案中包含一个提议,以防万一发生碰撞。

于 2013-07-08T14:10:52.547 回答