微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DASH 和 WebRTC 使用哪种传输协议?为什么?

如何解决DASH 和 WebRTC 使用哪种传输协议?为什么?

从我在网上搜索内容来看,DASH 似乎使用 TCP 而 WebRTC 似乎使用 UDP
除了 UDP 比 TCP 快之外,我真的想不出为什么 WebRTC 选择在 TCP 上使用 UDP 的充分理由。据我了解,DASH 使用 TCP 是因为在视频流方面,可靠性(又名 pkt 序列)超过了速度。 谁能告诉我他们使用不同传输协议的几个原因?

解决方法

除了UDP比TCP快...

不是。如果使用 UDP 发送,数据包不会神奇地更快地传输,也不会固有地更好地利用带宽。相反 - TCP 尝试优化低开销,而 UDP 则没有。

我实在想不出为什么 WebRTC 选择使用 UDP over TCP 的充分理由。

WebRTC 用于实时通信,即音频、视频数据,这些数据必须低延迟到达。例如,这与双向语音和音频呼叫相关,其中过多的延迟会显着影响呼叫质量。由于丢包的重传会造成过多的延迟,丢包是可以接受的,而音频和视频编解码器就是为了处理这种丢包而设计的,这增加了一些开销。

DASH(基于 HTTP 的动态自适应流媒体)对实时性没有那么高的要求,因为用例不是双向通信。这允许 DASH 依赖更强大的 TCP 协议,该协议关心丢失数据包的重传。由于 DASH 可以假设没有数据丢失,因此它也可以使用更高效的编解码器,从而更有效地利用带宽。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。