设为首页收藏本站

安徽论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 24198|回复: 0

音视频架构的三部分之CDN(二)

[复制链接]

85

主题

0

回帖

267

积分

中级会员

Rank: 3Rank: 3

积分
267
发表于 2022-3-26 10:25:28 | 显示全部楼层 |阅读模式
网站内容均来自网络,本站只提供信息平台,如有侵权请联系删除,谢谢!
CDN就是内容分发网络,这是一个策略性部署的整体系统,专门用来解决网络带宽小、用户访问量大、网点分布不均匀造成访问慢的问题。它的具体实现是通过在现有的网络中增加一层新的网络架构,将网站内容发布在离用户最近的网络节点上,这样用户就能就近获取网站资源。
CDN大致包源站、缓存服务器、智能DNS、客户端等几个部分:
源站:发布内容的原始站点。添加、删除、更改网站的文件都是在源站上进行的。缓存服务器所抓取的对象全部来自源站。对直播来说,源站就是主播客户端。
缓存服务器:是直接提供给用户访问的站点资源,由一台或多台组成。工作过程如下:

  • 用户发起请求,其访问请求将会发送到智能DNS;
  • 智能DNS将用户的请求定向到离用户最近的缓存服务器;
  • 如果用户所请求的内容恰好在缓存服务器中,则直接将内容返回给用户;
  • 如果访问的内容不在缓存服务器中,则此缓存服务器会向邻近的缓存服务器或直接向源站抓取内容,然后返回给用户。
智能DNS:这是整个CDN的技术核心,它主要根据用户的来源和当前缓存服务器的负载情况等,将用户的请求导向至离用户比较近且负载较小的缓存服务器上。这样的处理可以达到加速的作用。
客户端就是发起请求的普通用户,如手机、PC等客户端。
我们来看看当一个主播发起直播时,会发生哪些事?


  • 主播客户端开始进行直播,首先向智能DNS发送请求;
  • 智能DNS返回最优CDN节点的IP地址;
  • 主播端开始采集音视频数据;
  • 然后,把采集的数据发送到刚刚得到的CDN节点上;
  • CDN节点会对数据进行缓存等处理;
我们再来看看当一个普通用户观看直播时,会发生哪些事?


  • 观众要观看这个主橎的视频,首先会向智能DNS发送请求;
  • 智能DNS返回最优CDN节点的IP地址;
  • 观众客户端向得到的CDN节点请求音视频数据;
  • CDN节点同步其他节点的音视频数据;
  • 最后,CDN节点将音视频数据发送给观众客户端。
CDN的缺点:


  • 播放时延(网络时延):从主播端采集到观众播放之间的时差。
  • 网络抖动:数据包的到达顺序、间隔等与发出时不一致。这种抖动,虽然只是顺序乱了,但最后都会全部达到,但是效果却与丢包差不多,都会造成播放失真。
  • 网络丢包:CDN中用到的RTMP、HLS、HTTP-FLV等协议都是建立在TCP协议的基础上的,因为TCP是可靠的,所以它们都是可靠的。
    TCP的三次握手这样的:
    1、首先客户端向服务器端发送连接请求;
    2、服务器端发信息告知客户端同意本次连接请求;
    3、客户端会再发多一次消息给服务器确认本次连接。
    TCP协议为了保证数据传到目的地,会有自动重传机制。如果传输中途丢了包,没有收到对方端发出的“确认收到“信号,那么就会自动开始重传。当丢包率上升时,重传将会导致延时不断增大,甚至不断重连,这样就不能有效缓存,严重点就会导致视频无法观看。
谢谢阅读。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
免责声明
1. 本论坛所提供的信息均来自网络,本网站只提供平台服务,所有账号发表的言论与本网站无关。
2. 其他单位或个人在使用、转载或引用本文时,必须事先获得该帖子作者和本人的同意。
3. 本帖部分内容转载自其他媒体,但并不代表本人赞同其观点和对其真实性负责。
4. 如有侵权,请立即联系,本网站将及时删除相关内容。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表