为什么 sdp 中的 m= 行包含一个端口?这对候选人来说不是多余的吗?
Why does the m= line in sdp contain a port? Isn't this redundant with candidates?
根据 RFC 4566 https://www.rfc-editor.org/rfc/rfc4566#page-22,sdp 中的 m= 行包含一个端口:
m=audio 49170 RTP/AVP 0
ICE候选人不是已经确定端口了吗?这些也包含端口:
a=candidate:1 1 UDP 2130706431 10.0.1.1 8998 typ host
如 RFC 5245 https://www.rfc-editor.org/rfc/rfc5245#page-9 所述,
"ICE 是一个
offer/answer 模型的扩展,并通过包含一个
SDP 提供和答案中的多个 IP 地址和端口,
然后通过对等连接测试连接
检查。
这是否意味着 m= 行中指定的端口已过时?
当使用 libjingle 创建新的 sdp 提议时,它显示 IP 地址 0.0.0.0
,以及端口 9(这是“丢弃”端口)。所以它显然没有看到 m= 行中的相关端口:
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 106 105 13 127 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
有人知道吗?
m= 行中的 IP 和候选人是候选人前时代的遗留物,当时使用固定 IP 和端口进行通信。
至少使用 WebRTC,如第 33 页 https://datatracker.ietf.org/doc/html/draft-ietf-rtcweb-jsep-15 中所述,
"端口值设置为默认ICE候选端口
这个 m= 部分,但考虑到还没有候选人
聚集后,必须使用“虚拟”端口值 9(丢弃),因为
在 [I-D.ietf-ice-trickle],第 5.1 节中指出。",和
"m= 行后面必须紧跟一个 "c=" 行,如指定的那样
在 [RFC4566] 的第 5.7 节中。同样,由于还没有候选人
收集到,“c=”行必须包含“虚拟”值“IN IP4
0.0.0.0",定义见 [I-D.ietf-ice-trickle],第 5.1 节。",
简单地说,m= 行包含一个虚拟 IP 和端口,只要没有收集到候选者并且不需要媒体流,然后是默认候选者的 IP 和端口。
根据 RFC 4566 https://www.rfc-editor.org/rfc/rfc4566#page-22,sdp 中的 m= 行包含一个端口:
m=audio 49170 RTP/AVP 0
ICE候选人不是已经确定端口了吗?这些也包含端口:
a=candidate:1 1 UDP 2130706431 10.0.1.1 8998 typ host
如 RFC 5245 https://www.rfc-editor.org/rfc/rfc5245#page-9 所述,
"ICE 是一个 offer/answer 模型的扩展,并通过包含一个 SDP 提供和答案中的多个 IP 地址和端口, 然后通过对等连接测试连接 检查。
这是否意味着 m= 行中指定的端口已过时?
当使用 libjingle 创建新的 sdp 提议时,它显示 IP 地址 0.0.0.0
,以及端口 9(这是“丢弃”端口)。所以它显然没有看到 m= 行中的相关端口:
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 106 105 13 127 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
有人知道吗?
m= 行中的 IP 和候选人是候选人前时代的遗留物,当时使用固定 IP 和端口进行通信。
至少使用 WebRTC,如第 33 页 https://datatracker.ietf.org/doc/html/draft-ietf-rtcweb-jsep-15 中所述,
"端口值设置为默认ICE候选端口 这个 m= 部分,但考虑到还没有候选人 聚集后,必须使用“虚拟”端口值 9(丢弃),因为 在 [I-D.ietf-ice-trickle],第 5.1 节中指出。",和
"m= 行后面必须紧跟一个 "c=" 行,如指定的那样 在 [RFC4566] 的第 5.7 节中。同样,由于还没有候选人 收集到,“c=”行必须包含“虚拟”值“IN IP4 0.0.0.0",定义见 [I-D.ietf-ice-trickle],第 5.1 节。",
简单地说,m= 行包含一个虚拟 IP 和端口,只要没有收集到候选者并且不需要媒体流,然后是默认候选者的 IP 和端口。