WebRTC 的实现中媒体数据和媒体控制数据通过 RTP/RTCP 来传,媒体数据的处理及媒体数据传输控制基于 RTP/RTCP 来实现。除了 RTP/RTCP 外,连接建立,参数协商,RTP/RTCP 包的传输等过程由信令协议、peer connection 和 p2p 完成,这部分也用到了非常多的协议,包括 ICE,STUN,TURN,SDP,DTLS 等,这些协议有许多的 RFC 定义。这些协议大多也都随着时间在更新优化。

这里梳理一下相关的协议及它们的变化发展。

ICE 相关协议

RFC 5245, Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols
RFC 6336, IANA Registry for Interactive Connectivity Establishment (ICE) Options
RFC 8445, Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal
RFC 8839, Session Description Protocol (SDP) Offer/Answer Procedures for Interactive Connectivity Establishment (ICE)
RFC 8838, Trickle ICE: Incremental Provisioning of Candidates for the Interactive Connectivity Establishment (ICE) Protocol
RFC 8863, Interactive Connectivity Establishment Patiently Awaiting Connectivity (ICE PAC)

STUN 和 TURN 相关协议

RFC 5389, Session Traversal Utilities for NAT (STUN)
RFC 7350, Datagram Transport Layer Security (DTLS) as Transport for Session Traversal Utilities for NAT (STUN)
RFC 8553, DNS AttrLeaf Changes: Fixing Specifications That Use Underscored Node Names
RFC 5928, Traversal Using Relays around NAT (TURN) Resolution Mechanism
RFC 8489, Session Traversal Utilities for NAT (STUN)

RFC 5766, Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN)
RFC 6156, Traversal Using Relays around NAT (TURN) Extension for IPv6
RFC 8656, Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN)

DTLS 相关协议

RFC 4347, Datagram Transport Layer Security
RFC 5746, Transport Layer Security (TLS) Renegotiation Indication Extension
RFC 7507, TLS Fallback Signaling Cipher Suite Value (SCSV) for Preventing Protocol Downgrade Attacks
RFC 6347, Datagram Transport Layer Security Version 1.2

RFC 5763, Framework for Establishing a Secure Real-time Transport Protocol (SRTP) Security Context Using Datagram Transport Layer Security (DTLS)
RFC 8842, Session Description Protocol (SDP) Offer/Answer Considerations for Datagram Transport Layer Security (DTLS) and Transport Layer Security (TLS)

SDP 相关协议

RFC 4566, SDP: Session Description Protocol
RFC 8866, SDP: Session Description Protocol

WebRTC 的传输协议相关推荐

  1. Salsify: 低延迟的网络视频框架设计--视频编解码器和传输协议的紧密集成

    本文出自论文Salsify: Low-Latency Network Video through Tighter Integration between a Video Codec and a Tra ...

  2. webrtc 和 rtp 协议

    我会开辟一个空间rtp协议,包含vp9 h264 h265 aac opus 等rtp实例,包含实例代码,让看文章的人得到真实的提升 一.webrtc rtp协议为实时传输协议 real transf ...

  3. 流媒体传输协议浅析(一)

    一.常见的流媒体协议 关于流媒体传输协议,涉及到不同领域,不同业务场景,种类众多,下面一张图是目前常见的流媒体协议. 常见的流媒体传输协议 1)从交互方式来看,流媒体分为点播(VOD)和直播(LIVE ...

  4. 最详细的流媒体传输协议-rtsp协议详解

    流媒体传输协议-rtsp协议详解 参阅:RTSP协议详解和分析从零开始写一个RTSP服务器(一)RTSP协议讲解关于RTSP_RTP_RTCP协议的深刻初步介绍 rtsp RTSP出现以前,最热的大概 ...

  5. 新一代直播传输协议SRT

    Photo by Vlad Alexandru Popa from Pexels SRT协议是基于UDT的传输协议,保留了UDT的核心思想和机制,抗丢包能力强,适用于复杂的网络.在LiveVideoS ...

  6. 视频直播技术干货:一文读懂主流视频直播系统的推拉流架构、传输协议等

    1.引言 随着移动网络网速的提升与资费的降低,视频直播作为一个新的娱乐方式已经被越来越多的用户逐渐接受.特别是最近这几年,视频直播已经不仅仅被运用在传统的秀场.游戏类板块,更是作为电商的一种新模式得到 ...

  7. 音视频传输协议众多, 5G时代不同业务应该如何选择?

    摘要:音视频传输协议众多, 不同业务应该如何选择? RTSP.RTMP.RTP/RTC.HLS.MSS.DASH.WEBRTC.RIST.SRT:在此我们就从业务发展的视角来理解各种流媒体协议,帮助大 ...

  8. WebRTC进阶-SDP协议详解

    文章目录 SDP结构 会话描述 会话创建者o 媒体描述 媒体信息 音频媒体信息 a=rtpmap a=fmtp 视频媒体信息 SSRC与CNAME PlanB与UnifiedPlan 网络描述 a=c ...

  9. WebRTC中RTP协议详解

    WebRTC中RTP协议详解 WebRTC中RTP协议详解 WebRTC中RTP协议详解 前言 一.RTP/RTCP在协议栈中的位置 1. RTP传输流程图 二.RTP Header 的结构图 1.R ...

最新文章

  1. 教你用Python解决非平衡数据问题(附代码)
  2. 轻松搭建基于 Serverless 的 Egg.js Web 应用
  3. Istio 1.1.1 发布,修复漏洞并改进鲁棒性
  4. long java 比较_Java到底是不是一种纯面向对象语言?
  5. 如何通过建造餐厅来了解Scala差异
  6. mac启动mysql,apache,php
  7. struts2 在线用户记录
  8. QStackedWidget设置无效问题
  9. linux查看程序的快捷键,linux操作系统的快捷键及命令讲解
  10. MUI框架开发HTML5手机APP(一)--搭建第一个手机APP(转)
  11. centos6配置mysql5.7_CentOS 6.7 下 MYSQL 5.7 的安装与配置
  12. [usOJ5529]小奇探险
  13. 【读书笔记】法治的细节——做我们觉得对的事情,然后接受它的事与愿违
  14. 如何将图片一键重命名按顺序_图片批量重命名工具(RenameIt)
  15. 汇编指令 int 21 h 调用
  16. 百度网盘安装在c盘显示系统权限限制的解决方法
  17. 【IDM】IDM下载腾讯视频下载广告和分段的问题
  18. 职场打拼的15个基本能力
  19. Adobe Photoshop CS5如何调出标尺和网格
  20. 【前端面试之Vue】

热门文章

  1. 数据库-设置mysql编码
  2. php面向对象项目,PHP的面向对象编程:开发大型PHP项目的方法(一)
  3. 210228Linux 条件变量 线程池
  4. 200726C的数据传递方式
  5. Vim键盘图/Vim快捷键
  6. 让你不再害怕指针的应用-全程仿真+注解(第二部分数组)
  7. 优酷在多模态内容理解上的研究及应用
  8. [转载][工具]Secure CRT 自动记录日志和时间戳功能配置的方法
  9. 直播安装vnc连接树莓
  10. 配置Exhcange 2007、Exchange 2010收发外网邮件