【发布时间】:2015-10-30 08:52:30
【问题描述】:
我正在用 C 语言开发一个小型 webrtc 应用程序。我正在使用 sip 信令进行 webrtc 调用。我对 stun/turn/ice 的使用有以下疑问。
当我开始通话时,我会发送带有要约 (SDP) 的邀请。在 SDP 中,我们需要放置 ICE 候选人。
我有两种可能的情况。为了解释它,我将举一个例子。假设两个端点是 A 和 B。我有一个 sip 代理服务器说 P。另外我有一个转弯服务器(支持眩晕和转弯),说它是T。
案例 1
所有实体 A、B、P 和 T 都在同一个专用网络中。这里需要 STUN 分辨率吗?如果是,那么我需要处理哪些眩晕请求/响应?
案例 2
这里 A 在专用网络中。其他实体B、P和T在公共网络中。在这种情况下,我希望我们需要进行 STUN/TURN 解析。假设我从 STUN 开始,并获得了主持人和反身候选人。我在一些示例中看到,还使用了 Permission 、 Channel Bind 请求。如果我只使用 STUN(没有 TURN),在我获得主持人和反思候选人之后,我需要做任何额外的事情吗?
除此之外,是否有任何好的开源可用于 C 中使用 gnutls(无 openssl)的 stun/turn 客户端?
【问题讨论】:
标签: webrtc sip stun turn ice-protocol