在rtc
通信中,双方是如何进行的媒体数据的交换呢?
实时通信系统中信令起到了至关重要的作用,信令可以建立和维护、通信会话,能够功能协商和能力交换,也可以进行用户身份的验证,进行会话控制和控制状态,甚至可以进行错误处理和故障恢复。信令存在于通信过程中的各个方面。信令通道除了最常见的tcp外,还可以通过应用层协议http、webRTC、quic等协议进行传输,这些协议存在于不同的应用场景。对于一个简单的rtc系统,至少包含了九个基本信令,从登录信令开始,登入系统后可以发布媒体流,也可以订阅其他用户的媒体流,用户在房间内的操作都是通过信令来实现的。
在信令传输内容中最重要的载体就是媒体描述,媒体描述有多种格式,例如会话描述协议sdp,在通信中,双方交换完sdp后就可以进行数据传输了。
在传输过程中,可会可能会遇到一些问题,例如带宽的限制会导致发生网络拥堵,在rtc中带宽探测是一项重要的功能,它可以评估网络的可用宽带以优化实时通信质量,传统宽带检测方法有多种,每一种都有其优缺点,需要根据应用场景和需求选择合适的方法。
在实时通信领域,网络连接质量较差的情况,被称之为弱网,它可能会导致延迟增加,丢包增多,带宽不足,不稳定等常见问题。在应对弱网环境时,实时通讯可以采用自适应编码前向纠错、丢包恢复、码率自适应等来提高用户体验和通信质量。RTC传输过程中会进行分级策略,应对不同的网络环境。在某些条件下,系统或应用程序减少其功能或性能水平来提高兼容性,可靠性,这种情况就是性能降级,通常是为了适应特定的环境而发生的。
网络会出现抖动情况,这个时候就要通过抖动缓存来解决数据包到达时间的不确定性。超时重传与前项纠错是应对网络错误的主要技术手段。当发生丢包时,发送方可以通过重传丢包数据来进行错误恢复。前项纠错是一种通过添加冗余数据来纠正错误的技术,通过在数据包中添加冗余编码,使接收方能够在发生丢包时恢复丢失的数据,不过这种技术会增加带宽的开销。