资讯专栏INFORMATION COLUMN

视频直播技术详解:直播的推流调度

gaosboy / 1250人阅读

摘要:当用户使用网易云信直播进行直播时,会联系网易云信的调度系统直接获取接流服务器地址。网易云信直播服务通过以上各种手段,最大程度保证了调度的准确性。

作为直播传输的第一步,推流调度对于直播链路的影响非常大。本篇文章将针对这个话题,从传输的角度,讲一讲网易云信直播是如何做好推流调度的。

推荐阅读 
《视频私有云实战:基于Docker构建点播私有云平台》
《如何快速实现移动端短视频功能?》
直播推流是什么

首先,直播推流,即主播将自己的本地客户端采集编码后的视频数据“推”出去。推流会涉及到两个问题:视频推到哪里去了以及观众从哪里将流拉到播放端观看。
主播推流是推到了直播接流服务器,由接流服务器负责分发到更高一层的传输层去将视频流推往全球的观众处。直播接流服务器是视频流从客户端出发后的第一站,也是对传输质量影响最大的一站。直播上行调度处理的问题就是给推流客户端选取一个合适的接流服务器。

直播接流服务器的调度和部署

直播接流服务器的调度和部署大有讲究:
首先,国内由于网络运营商的复杂性,存在众多运营商,小运营商借大运营网络等各种问题。对直播上行调度来说,第一步的挑战就是需要识别出客户具体的地域和网络类型。这一步通常是通过一个网络IP库来处理。虽然网络上存在着各种各样的IP网络库,但准确性并无法保证。网易云信基于20年的互联网经验,积累了大量的IP信息,拥有自己的IP库,相对于网络上通用的IP库能更精准地识别出各地区及运营商问题。
其次,则是调度本身了,即按客户的来源,分配给推流端对应的接流服务器。最常见的系统,是基于DNS的调度。网易云信当然也支持这种调度方式。即给定一个域名,通过网易的DNS权威服务器解析,按照相应的规则,结合客户的运营商和地域信息,分配对应运营商和相近地域的接流服务器给推流客户端。比如,杭州的用户使用域名xx.live.126.net推流,在不考虑DNS缓存的情况下,它会先走到DNS服务器进行域名解析,网易的DNS权威服务器会最终接到这个解析请求,并按IP库查出的对应地区和运营商,给予一个合适的接流服务器的IP地址,返回给客户端。客户端的推流即可以推到这台接流服务器了。
DNS系统是个通用的解决方案,优点即不需要额外的环节介入,直接基于DNS即可实现调度。但它的缺点也相当突出:DNS系统为性能考虑,做了缓存。如果某台接流服务器由于各种原因宕机不可用了,而客户端还会通过缓存取到这台机器作为接流服务器,这样会导致客户端推流不可用。客户端就需要等到对应的DNS缓存失效后,才能使用业务,而这个缓存的失效时间也很复杂,国内的运营商可能会对DNS缓存做额外的延长,这时直播业务可用性就无法保证了。另一方面,DNS系统看到的“客户IP”并不一定是客户视频流出口的IP,而是本地DNS出口的IP,这可能会导致一些DNS系统的误判。

网易云信如何做好推流调度

网易云信拥有自己的直播调度系统。当用户使用网易云信直播SDK进行直播时,SDK会联系网易云信的调度系统直接获取接流服务器地址。由于网易云信调度系统部署选取了多线BGP,与众多小运营商之间都拉了专线,因此小运营商用户在联系网易云调度系统时,不会走第三方大运营商的出口,而是直接走专线出口,这样可以最大程度上降低调度系统对于用户网络运营商的误判。网易云信调度系统在海外也会有对应的调度节点存在,即在海外,客户端同样可以取到合适的接流服务器地址。
另一方面,网易云信的调度系统与全球各边缘上行接流服务器之间有着紧密的联络,会实时监控各接流服务器的实时CPU、内存、网络等资源使用状况,从而最终给出一个最合理的调度结果。
网易云信的用户,可以通过使用网易视频SDK而跳过上述DNS可能存在的问题,而进行更精确的调度,得到更佳的直播体验。
直播系统的上行调度,很大程度上影响着整个直播的质量。如果上行接流服务器调度的不够好,比如客户端运营商识别错误导致客户端将视频流进行了跨运营商的传输,那么网络就很容易不稳定而产生网顿等现象。网易云信直播服务通过以上各种手段,最大程度保证了调度的准确性。

想要获取更多产品干货、技术干货,记得关注网易云信博客`。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/34732.html

相关文章

  • 阿里云CDN直播架构与双11晚会直播实战

    摘要:分享人阿里云直播高级技术专家阙寒分享内容双直播活动是众多直播活动中非常典型的场景,离不开直播本身这个话题。对于阿里云直播系统来讲,大部分直播分发都是通过流式传输完成的,只有一少部分量是使用文件加速分发完成的。 摘要: 分享人:阿里云CDN直播 高级技术专家 阙寒分享内容:双11直播活动是众多直播活动中非常典型的场景,离不开直播本身这个话题。所以今天的分享会从直播概述、直播架构、业务功能...

    ctriptech 评论0 收藏0
  • 【网易云信】海外推流部署实践

    摘要:为了处理解决这个问题,需要提高海外直播的接流覆盖率,并针对链路进行优化,从而有效降低整体从推流到拉流的卡顿率。 今天主要分享我们海外直播链路优化的问题和解决问题的一个思路,介绍的主要流程,大概就是抛出一个问题,简单介绍我们解决的思路,在这个过程中碰到的一些问题和我们具体进行的一些思考,以及后续可以再进行一些额外优化的处理。 指标定义 在介绍整体内容之前,首先定义一下我们的性能指标,由于...

    alighters 评论0 收藏0
  • 直播卡顿原因详解及优化

    摘要:究竟是哪些原因造成了视频直播观看的卡顿情况呢又拍直播云结合实践经验,从设备视频流网络这三方面进行解剖分析造成直播卡顿的问题及其解决方法。视频直播卡顿原因造成直播视频卡顿的原因主要有设备视频流网络这三方面的问题。 随着视频直播的发展,很多直播团队可能会遇到视频直播卡顿,频繁出现缓冲标志或者直播画面一卡一卡等情况。究竟是哪些原因造成了视频直播观看的卡顿情况呢?又拍直播云结合实践经验,从设备...

    cuieney 评论0 收藏0
  • FAQ 云直播 ULive

    摘要:拉流加速是指客户自己搭建流媒体服务器,从该流媒体服务器将直播流拉取并加速。录制条件直播必须是通过协议,推流到。录制视频格式将直播统一录制为。下行协议的方式延迟会显著高于协议。 FAQ本篇目录Q:为什么视频直播收看时会有卡顿现象?Q:我可以查看哪些统计数据?Q:能否提供日志下载功能?Q:如何联系UCloud直播云?3. 后台Q:如何创建直播加速?Q:推流加速与拉流加速有什么区别?Q:现在可以支...

    ernest.wang 评论0 收藏640
  • TOP100summit【分享实录-网易】构建云直播分发网络

    摘要:通过客户端分析网络统计等手段,定位卡顿问题的根源在于直播分发网络不佳。本文将介绍网易云直播分发网络架构的构建及优化过程。单阶段单构建阶段我们为云直播服务选用了一个传统的第三方分发网络。 本篇文章内容来自2016年TOP100summit网易视频云、网易杭州研究院服务端技术专家邵峰的案例分享。编辑:Cynthia 邵峰:网易视频云、网易杭州研究院服务端技术专家浙江大学计算机专业博士毕业。...

    Muninn 评论0 收藏0

发表评论

0条评论

gaosboy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<