【问题标题】:Are IceCandidate and SDP static?IceCandidate 和 SDP 是静态的吗?
【发布时间】:2015-06-06 01:47:03
【问题描述】:

IceCandidate 和 SDP 是固定值吗?将它们存储在服务器数据库中而不是在每个连接上检索是个好主意吗?如果更新这些数据是不可避免的,我应该什么时候更新?

【问题讨论】:

  • 它们是按连接创建的,因为端口和网络信息可能会因每个连接而改变
  • 似乎在 server 上,WebRTC 由于这个严重的限制而不能很好地扩展。没有梦想将所有 WebAssembly 客户端连接到单个高性能 UDP 服务器。只是协议限制。奇怪...

标签: javascript webrtc sdp candidate


【解决方案1】:

不,它们不是固定值。 Ice 候选者将用户定位在他们所驻留的网络拓扑中目前,除非您拥有静态 IP(几乎没有人拥有)和有线互联网连接和静态 LAN 地址,以及台式计算机仅通过这些方式连接,而不是通过 wifi 等方式连接,那么这可能会每小时、每天或每周发生变化。

SDP 还包含呼叫的媒体设置和其他信息,如果在呼叫期间添加、删除或更改视频或音频源,这些信息可能会因呼叫而异,甚至在呼叫中(需要重新协商) . SDP 可能还包含其他过期的东西,但希望这足以劝阻您。

【讨论】:

  • 你的意思是我有时可以重复使用它们?或者换句话说,它们不是临时值?
  • 几乎所有这些都是临时信息,因为它特定于两个特定端点之间的一次调用。候选人包含端口号,您显然不能通过它们同时进行两个持续连接。 SDP 答案是对唯一 SDP 报价的唯一响应,其 ID 必须匹配。我在这里没有看到很多重用的机会。成功连接两个对等点已经够难了,我不会冒险使用可能过时或不匹配的信息作为端点。
  • 我在想两个并排的对等方在网络连接一段时间失败时无法快速相互重新连接的情况。这是一个现实生活中的问题,希望将来可以解决。感谢您提供宝贵的信息。
  • 一旦 LAN 上的两个对等点连接起来,它们应该能够在互联网中断的情况下存活下来(除非您谈论的是 wifi 掉线)。另外,请参阅此other question 关于在没有互联网的情况下在 LAN 上连接的信息。
【解决方案2】:

不,他们不是。 Ice 候选项包含可以更改的端点的 IP 和端口组合。即使您有一个静态 IP 地址,每次都会生成一个新的端口号。

【讨论】:

    猜你喜欢
    • 2011-01-04
    • 2013-04-21
    • 1970-01-01
    • 2018-02-20
    • 2015-08-06
    • 2011-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多