Day5:应用层——CDN、 TCP 套接字编程、 UDP 套接字编程、小结

加油!偷博人!

0、killer application(杀手级应用)

1.网络流量占比大
2.最能吸引用户

比如,Video Application:youtube,tiktok,iqiyi,Tencent movie…


 视频流量:占据着互联网大部分的带宽
 挑战:异构性
 不同用户拥有不同的能力(例如:有线接入和移动用户;带宽丰富和受限用户)
 解决方案: 分布式的,应用层面的基础设施


再来口水话谈谈视频:

  •  视频:固定速度显示的图像序列。 e.g. 24 images/sec

  •  网络视频特点:
     高码率:>10x于音频,高的网络带宽需求
     可以被压缩
     90%以上的网络流量是视频

  • 数字化图像:像素的阵列
     每个像素被若干bits表示

  •  编码:使用图像内和图像间的冗余来降低编码的比特数
     空间冗余(图像内)
     时间冗余(相邻的图像间)
    例子如下
    在这里插入图片描述
    frame帧
    在这里插入图片描述


0.1存储视频的流化服务 (边下边看)

在这里插入图片描述
多媒体流化服务:DASH

  •  DASH: Dynamic, Adaptive Streaming over HTTP(在http之上的动态自适应的流化技术)

  •  服务器:
     将视频文件分割成多个块
     每个块独立存储,编码于不同码率(8-10种)
     告示文件(manifest file): 提供不同块的URL

  • 客户端:
     先获取告示文件
     周期性地测量服务器到客户端的带宽
     查询告示文件,在一个时刻请求一个块,HTTP头部指定字节范围
     如果带宽足够,选择最大码率的视频块
     会话中的不同时刻,可以切换请求不同的编码块 (取决于当时的可用带宽)

  •  “智能”客户端: 客户端自适应决定
     什么时候去请求块 (不至于缓存挨饿,或者溢出)
     请求什么编码速率的视频块 (当带宽够用时,请求高质量的视频块)
     哪里去请求块 (可以向离自己近的服务器发送URL,或者向高可用带宽的服务器请求)
    在这里插入图片描述
    理解的太粗糙了,还不太懂


一、CDN (Content Distribution Networks)

 挑战: 服务器如何通过网络向上百万用户同时流化视频内容 (上百万视频内容)?

  •  选择1: 单个的、大的超级服务中心“megaserver”
     服务器到客户端路径上跳数较多,瓶颈链路的带宽小导致停顿
     “二八规律”决定了网络同时充斥着同一个视频的多个拷贝,效率低(付费高、带宽浪费、效果差)
     单点故障点,性能瓶颈
     周边网络的拥塞

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

adingable

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值