直播与CDN分发

  CDN需要更多更强大的调度系统、数据监控系统、nginx、lvs等系统技术(我也就知道这些了)。高端的CDN厂商还有自建专线、自建IDC、甚至用到了ISP的骨干策略MPLS-TE。这些都是不可小觑的技术。
  运营商主要劫持出省流量,对于“小”运营商来说他们有省内流量考核,跨省访问会增加成本输出,集团控制出省流量,所以劫持往往发生在省间传输上。其次所有运营商都可能会做劫持,目的是减少省骨干网络链路的负载压力,尽可能的减少中继链路、远距离骨干链路,负载能力弱的链路上的流量,则会出现劫持的现象。
  劫持的逻辑,慢慢的转化为了目前的CDN厂商在做的事,当然CDN厂商的流量调度主要是为了解决客户资源的分布式访问,避免用户访问资源时长时间等待。我也是在接触CDN网络以后,才慢慢接触到了运营商劫持,运营商主要的劫持动作还是修改访问资源的ip,也就是域名302了。
 劫持大可分为三类:– DNS解析劫持;– 域名302劫持;– NATip劫持

DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能反应或访问的是假网址。
 2. DNS劫持
 3. HTTP 劫持,Https防止域名劫持;
 4. 路由软件中植入劫持代码、用户PC本地木马
 5. 劫持弹广告检测、防御手段

不同直播场景的CDN技术,直播CDN架构 
  家里的固网:刚开始的时候,网民用电话线拨号上网,下行速度只有不到几十K,打开一个复杂的网页要十几秒到几十秒;后来宽带兴起,网民使用了现在常见的网线(其实和电话线一样都是铜芯),传输速度能达到1000Mbps;再到后来光纤到户了,不再使用铜线,传输介质都变成了光纤,传输速率高达万Mbps。
  移动网络包含语音和数据两块,语音就是我们常用的打电话业务,数据就是我们访问互联网的数据传输。我们常说的几G就是代表第几代移动通信技术Generation。G代表GPRS, 2.5G也就是第二代移动通讯网络的延伸,速率能够到达115kbpsE是EDGE,经常被叫2.75G网络,速率有384kbps。 大概六七年前开始,网络用户开始使用3G,就是第三代移动通讯技术,速率可达2Mbps,还有一些时候会显示H或者H+,可以当做是3.5G4G,后来就是目前比较流行的4G,速率在100Mbps以上。

  星域CDN的解决思路是采用共享经济的方式,低成本地在全网部署“无限”多的节点,解决数据传输的问题。要求星域CDN一定要给出一个T的冗余带宽以及一千路的转码能力,就是为了应对有的主播有活动的时候流量突然爆发。
  内容安全方面,尤其是现在流行的媒体类事件直播通常配合CDN的延播技术做到先审再播。一般需要有2min左右的延迟播放,以及通过视频https传输防止内容被恶意篡改。当然,星域CDN配套了延时配置的服务。
  通常大直播公司会采用人工审核+购买第三方鉴黄/政审服务(这种服务都是计算机按照智能算法通过拉流接口或者截图来审核)。对CDN提出的要求就是要有一套稳定且处理能力强的截图系统,还有一旦发现不适合播放的内容时,需要有支持秒级禁播和恢复开启播放接口。

互联网内容载体变迁历程,文字——图片/声音——视频——VR/AR——……从直播1.0秀场时代(YY)、2.0游戏直播(斗鱼、虎牙、熊猫)到如今全民直播3.0泛生活娱乐时代(映客、花椒),国外直播App(Meerkat 、Periscope),随着 VA/AR/MR 提出的沉浸式视听体验,直播4.0时代很快就能到来。

CDN的全称为Content Delivery Network,即内容分发网络,是一个策略性部署的整体系统,主要用来解决由于网络带宽小、用户访问量大、网点分布不均匀等导致用户访问网站速度慢的问题。这中间就有了很多的CDN节点,简单一点理解就相当于我们开始学习计算机选择网络。具体实现是通过在现有的网络中,增加一层新的网络架构,将网站的内容发布到离用户最近的网络节点上,这样用户可以就近获取所需的内容,解决之前网络拥塞、访问延迟高的问题,提高用户体验。

-- CDN的常用架构
CDN架构设计比较复杂。不同的CDN厂商,也在对其架构进行不断的优化,所以架构不能统一而论。这里只是对一些基本的架构进行简单的剖析。
CDN主要包含:源站、缓存服务器、智能DNS、客户端等几个主要组成部分。
  源站:是指发布内容的原始站点。添加、删除和更改网站的文件,都是在源站上进行的;另外缓存服务器所抓取的对象也全部来自于源站。对于直播来说,源站为主播客户端。
  缓存服务器:是直接提供给用户访问的站点资源,由一台或数台服务器组成;当用户发起访问时,他的访问请求被智能DNS定位到离他较近的缓存服务器。如果用户所请求的内容刚好在缓存里面,则直接把内容返还给用户;如果访问所需的内容没有被缓存,则缓存服务器向邻近的缓存服务器或直接向源站抓取内容,然后再返还给用户。
  智能DNS:是整个CDN技术的核心,它主要根据用户的来源,以及当前缓存服务器的负载情况等,将其访问请求指向离用户比较近且负载较小的缓存服务器。通过智能DNS解析,让用户访问同服务商下、负载较小的服务器,可以消除网络访问慢的问题,达到加速作用。
  客户端:即发起访问的普通用户。对于直播来说,就是观众客户端,例如手机客户端,PC客户端。

直播延时主要分为直播起播延时,直播内容延时。
 直播起播延时:从发出指令,到显示画面,所消耗的时间。
 直播内容延时:用户端播放的画面和现场画面的时间差。

你可能感兴趣的:(音视频方案)