【问题标题】:Are WebRTC SDP blobs reusable between peers?WebRTC SDP blob 在对等点之间是否可重用?
【发布时间】:2013-07-03 07:20:57
【问题描述】:

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

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

【问题讨论】:

    标签: javascript html webrtc sdp


    【解决方案1】:

    通常不需要:您需要来自来源 PeerConnection 的报价;不能保证 PC1 的 blob 可以与 PC2 一起使用(并且可能不能)。现在,如果他们已经创建了一个 peerconnection,完成了 CreateOffer,并保持 peerconnection 直到 SDP 被使用 - 那么是的,但这并不是真正的“重用”。

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

    【讨论】:

    • 您能否证明您的论点,即 PC1 的 blob 不能与 PC2 一起使用?不是我怀疑你,我只是想知道具体是什么方面阻止了这种情况。
    猜你喜欢
    • 2014-03-14
    • 2019-05-28
    • 2020-07-19
    • 1970-01-01
    • 2022-01-18
    • 2017-06-26
    • 2015-02-01
    • 2019-03-16
    • 1970-01-01
    相关资源
    最近更新 更多