对网络协议来说,需要做的通常就两件事情:1、建立连接,2、传输数据,WebRTC也不例外。
假设WebRTC应用的两端已经建立了连接,那么,剩下就是如何传输数据的问题了。
WebRTC同时支持传输音视频数据、自定义应用数据。这其中,涉及多种协议,包括UDP、RTP/SRTP、RTCP/SRTCP、DTLS、SCTP。
这些协议名字比较相似,很容易让人混淆,简单总结下:
-
传输音视频数据相关协议:UDP、DTLS、RTP/SRTCP;
-
传输自定义应用数据相关协议:UDP、DTLS、SCTP;
下面就简单介绍下,这些协议是做什么的,有什么区别,存在什么联系。
加密信道建立:UDP、DTLS
对WebRTC应用来说,不管是音视频数据,还是自定义应用数据,都要求基于加密的信道进行传输。DTLS 有点类似 TLS,在UDP的基础上,实现信道的加密。
DTLS的主要用途,就是让通信双方协商密钥,用来对数据进行加解密。
-
通信双方:通过DTLS握手,协商生成一对密钥;
-
发送方:对数据进行加密;
-
发送方:通过UDP传输加密数据;
-
接收方:对加密数据进行解密;
音视频数据传输:RTP/SRTP、RTCP/SRTCP
首先,我们先来看下RTP、RT

本文介绍了WebRTC中涉及的数据传输协议,包括UDP、DTLS、RTP/SRTP、RTCP/SRTCP和SCTP。DTLS用于建立加密信道,RTP/SRTP处理音视频数据传输,RTCP/SRTCP监控传输质量和同步,SCTP则用于自定义应用数据的传输。整个过程基于DTLS协商的密钥进行加密,确保数据安全。
最低0.47元/天 解锁文章
1718

被折叠的 条评论
为什么被折叠?



