一. 前言与背景
国内的互联网直播技术从2005年前后兴起,彼时最具代表性的直播产品是由PPLive创始人姚欣在华中科技大学就读期间发起的校园直播项目PPLive。当时的直播技术用的还是基于windows系统自带的mediaplayer内置的COM组件开发的播放器,采用的是RTSP协议。受当时的互联网传输带宽及成本限制,PPLive并没有采用现在比较流行的单播技术,而是采用P2P技术分发直播流。国内的直播技术也进入了一段以P2P技术为主的时期,其中比较有代表性的就是PPLive和PPStream。用P2P技术分发直播流,具有运营成本低的明显优势,每一个参与播放的终端都是一个潜在的数据热点,网络质量随着观看直播流的客户端的增加而增加。但P2P技术也有自身的不足,缺乏观众的冷门资源因参与数据共享的客户端稀少而难以保证播放质量,另外P2P难以保证UDP打洞穿透率、需要下载专用的播放器等都是限制用户数量增长的因素。
P2P直播分发技术注定是一个过渡性的技术。2005年以后,由于早期的HTML标准尚不完善,各大浏览器存在实现上的差异,被寄予厚望的HTML5规范也还尚未定稿,基于HTML的视频播放技术也不成熟。彼时,Adobe公司从Macromedia公司收购的网页多媒体插件flashplayer在这种情况下脱颖而出。在开发层面,flashplayer因其优异的多媒体表现力以及完善的开发语言和调试工具,降低了网页播放器的开发门槛。在音视频质量方面,Flashplayer内置的On2公司的VP6视频编解码器无论是在编码质量还是在解码效率上在当时都非常优秀,随着2003年才定稿的H.264/AVC视频编解码器及更高质量的AAC音频解码器也很快被内置到flashplayer内核,进一步提高了flashplayer的音视频能力。在播放器推广层面,基于flashplayer开发的播放器文件,能像分发网页一样通过网站服务器下发和更新,这极大地降低了视频网站的推广难度。上述原因,促使flashplayer成为当时最好的网页视频播放器内核。在flashplayer的技术加持下,视频点播网站如雨后春笋般涌现,尤其在2006年google收购youtube后,网页视频点播网站迎来了爆发,六间房、优酷、土豆等视频网站先后融入巨资,从众多点播网站中脱颖而出。彼时,flashplayer作为绝大部分视频点播网站统一使用的网页播放器,装机率快速提高,逐步成为事实上的网页多媒体播放器标准。2009年,随着Adobe将flashplayer内置的革命性的流媒体传输协议RTMP(Real-Time Messaging Protocol)规范开放,本就已经方兴未艾的RTMP直播技术,进入了发展的快车道。各种基于RTMP协议的开源实现陆续出现,涵盖服务器和播放器。由此,互联网直播进入了由flashplayer和RTMP协议主导的时代。
RTMP是flashplayer原生支持的流媒体传输协议,支持点播和直播模式,经过十多年的大规模应用,已经成为当前国内应用最为广泛的直播协议,各大CDN厂商都已经支持。国内技术圈还发展出了HTTP-FLV协议,即将RTMP中的直播音视频流封装成FLV文件流,通过HTTP协议传输,这进一步降低了直播技术的接入成本和实现难度。
RTMP和HTTP-FLV都是基于TCP的直播协议,TCP固有的基于拥塞控制的传输策略在需要稳定、大量传输数据的直播场景下显得过于保守,偶发的丢包或网络抖动都会造成数据收发速率的急剧下降,从而造成画面及声音的卡顿,影响直播的质量及体验。而基于带宽和延时预测的QUIC传输协议的出现,为直播行业提供了一个提升直播质量和用户体验的新的选项。
二. QUIC介绍
QUIC(读作“quick”)是一个通用的传输层网络协议,最初由Google的Jim Roskind设计。该协议于2012年实现并部署,2013年随着实验范围的扩大而公开发布,并向IETF描述。虽然长期处于互联网草案(英语:Internet Draft)阶段,但从Chrome浏览器至Google服务器的连接中超过一半的连接都使用了QUIC。Microsoft Edge、Firefox都已支持此协议;Safari实现了QUIC,但默认情况下没有启用。QUIC于RFC9000中被正式标准化。
虽然QUIC的名称最初是“快速UDP互联网连接”(Quick UDP Internet Connection)的首字母缩写,但IETF指定的标准中QUIC并不是任何内容的缩写。QUIC提高了目前使用

最低0.47元/天 解锁文章
2251

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



