<计算机网络自顶向下> CDN

视频服务挑战

  • 规模性
  • 异构性:不同用户有不同的能力(比如有线接入和移动用户;贷款丰富和受限用户)
  • 解决方法是:分布式的应用层面的基础设施CDN

多媒体:视频

  • 视频是固定速度显示的一系列图像的序列,图像又是一系列像素点的序列
  • 视频占的带宽太大所以不经过压缩就在网络上传输基本是不可能的
  • 压缩的基础
    • 空间的冗余度:一个帧当中一些范围的像素点颜色一样,空间描述的时候可以说某个像素点在那一范围出现
    • 时间上的冗余度:一些相邻的帧的像素点颜色一样,传输的时候仅仅把动的对象传输即可
  • CBR (constant bit rate): 以固定速率编码
  • VBR (variable bit rate): 视频编码速率随时间的变化而变化

存储视频的流化服务

  • Download and play太慢了
  • streaming服务边下载边看(就相当于我现在看b站下面有一个进度条还有一个比进度条跑的更快的白条,这个白条就是下载条)
  • 多媒体流化服务:DASH(Dynamic Adaptive Streaming over HTTP)
    • 服务器:将视频文件分割为多个chunk,每个chunk独立存储,编码于(8-10种)不同码率,告示文件(manifest file)提供不同块的URL(b站视频有很多码率视频)
    • 客户端:周期性测量服务器到客户端的带宽,查询告示文件,在一个时刻请求一个块,HTTP头部指定字节范围(如果带宽足够,选择最大码率的视频块;会话中的不同时刻,可以切换请求不同的编码块,这取决于当时的可用带宽);

Content Distrubution Networks(CDN)

  • 挑战:承载量
    • 如果选择单个的,,大的超级服务器“mega-server”——方法简单但是延展性很差
      • 服务器到客户端上路径跳数较多,瓶颈链路的带宽小导致停顿
      • “二八规律”决定了网络同时充斥着统一个视频的多个拷贝,效率低(付费高,贷款浪费,效果差)
      • 单点故障,性能瓶颈
      • 周边网络的拥塞
  • 选项二:通过CDN,全网部署缓存节点,存储服务内容,就近为用户提供服务,提高用户体验
  • 也就是说在网络中,CDN的运营商部署了许多缓存节点,用户上线时候不一定从原服务器获取流化服务,通过DNS的重定向,找离他最近服务质量最好的节点提供流化服务。使得问阿金传输跳数少,服务质量更好。
  • 种类
    • Enter deep:将CDN服务器深入到许多接入网(在Local ISP内部)
      • 更接近用户,数量多,离用户近,管理困难
      • Akamai:1700个位置
    • Bring home: 部署在少数(10个左右)关键位置(比如在ISP关键节点机房附近),如将服务器簇安装于POP附近(离若干大的ISP,POP比较近)
      在计算机网络中,POP表示入网点(Point of Presence)。POP位于网络企业的边缘外侧,是访问企业网络内部的进入点。外界提供的服务通过POP进入,这些服务包括Internet接入,广域连接以及电话服务(PSTN)
      • 采用租用线路将服务器簇链接起来
      • Limelight
      • 问题:跳数比第一种多
    • 互联网络主机到主机之间的通信作为一种服务向用户提供
    • OTT挑战:在拥塞的互联网上复制内容
      • 从哪个CDN节点中获取内容?
      • 用户在网络拥塞时的行为?
      • 在哪些CDN节点中存储什么内容?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/544571.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【ubuntu20.04】安装GeographicLib

下载地址 GeographicLib: Installing GeographicLib 我们是ubuntu20.04 ,所以下载第一个 GeographicLib-2.3.tar.gz 接着跟着官方步骤安装,会出错!!!!马的 官方错误示例:tar xfpz Geographi…

YOLOV5 + 双目相机实现三维测距(新版本)

文章目录 YOLOV5 双目相机实现三维测距(新版本)1. 项目流程2. 测距原理3. 操作步骤和代码解析4. 实时检测5. 训练6. 源码下载 YOLOV5 双目相机实现三维测距(新版本) 本文主要是对此篇文章做一些改进,以及解释读者在…

微软搭建零售新媒体创意工作室大举抢占数字营销广告市场

“微软新零售创意工作室新平台利用生成式人工智能,在几秒钟内轻松定制横幅广告。零售媒体预计到2026年将成为一个价值1000亿美元的行业。” 零售媒体在过去几年中发展迅速。根据eMarketerOpens在新窗口的数据,预计到2024年,仅美国的零售媒体…

基于粒子群优化的配电网重构

一、配电网重构原理 配电网重构是指在满足配电网运行基本约束的前提下,通过改变配电网中一个或多个开关的状态对配电网中一个或多个指标进行优化。通过配电网重构,可以在不增加设备投资的情况下,充分发挥配电系统的潜力,提高系统…

【C语言】每日一题,快速提升(1)!

调整数组使奇数全部都位于偶数前面 题目: 输入一个整数数组,实现一个函数 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分 所有偶数位于数组的后半部分 解题思路: 给定两个下标left和right,left放在数组的起始…

【Web】VS Code 插件及快捷键

专栏文章索引:Web 有问题可私聊:QQ:3375119339 目录 一、安装步骤 二、插件 1.Chinese (Simplified) (简体中文) 2.open in browser 3.vscode-icons 4.Live Server 5.Live Server Preview 6.翻译(英汉词典) 三、快捷键 1.缩放代码…

Vivado ILA Capture Control 模式与 Advanced Trigger的功能使用以及TSM(触发状态机)的编写

文章目录 一、前言二、ILA的基本功能使用以及局限性2.1 ILA的调用2.2 ILA波形窗口观察2.3 ILA基本功能的局限性:如何观测低频的数据? 二、Capture Control 功能介绍三、Advanced Trigger功能以及TSM编写3.1 触发状态机的写法3.2 设置Advanced Trigger3.3…

MYSQL中的ER图

1.首先学习如何设计数据,在此之前我们先学会画出我们的规划图 利用Axure RP 9 然后进行以后的操作。其实非常简单看看就会

NODE MCU (ESP8285-ESP8266)用Arduino lDE 2.3.2烧录系统后串口监控不打印问题

问题: Arduino lDE 2.3.2,集合DOIT ESP-Mx DevKit板子,烧录代码后,串口监视器 打印不出来调试数据 分析: Arduino lDE 2.3.2工具提示,不支持调试 板载flash按钮无需按下,即可烧录系统,由于烧录和调试共用串口,所以怀疑是Arduino lDE 2.3.2在烧录时设置了串口的配置…

Hello 算法10:搜索

https://www.hello-algo.com/chapter_searching/binary_search/ 二分查找法 给定一个长度为 n的数组 nums ,元素按从小到大的顺序排列,数组不包含重复元素。请查找并返回元素 target 在该数组中的索引。若数组不包含该元素,则返回 -1 。 # 首…

Ubuntu 22.04 开机自动挂载webdav - 设置开机自启脚本 - 解决坚果云webdav无写入权限

效果图: 前言: 1)亲测/etc/fstab的办法没有成功自动挂载,换成传统的rc.local可以解决; 2)rc-local.service是系统自带的一个开机自启服务,但是在 ubuntu 20.04 上,该服务默认没有开…

基于物理原理的p-GaN HEMT动态导通电阻SPICE建模

来源:Physics-Based SPICE Modeling of Dynamic ON-State Resistance of p-GaN HEMTs(TPEL 23年) 摘要 这封快报介绍了一种新型基于物理学原理的SPICE建模方法,专门针对氮化镓基p型门极高电子迁移率晶体管(p-GaN HEM…

route路由命令、ip route命令、default默认路由(0.0.0.0 )

文章目录 概述3. route语法3.1 查看路由表3.1 参数解释 3.2 添加路由记录3.2.1 添加到达单个目标主机的路由3.2.2 添加到达目标网络的路由3.2.3 添加默认路由 3.3 删除路由记录 4. ip route4.1 查看路由4.1.1 不带条件4.1.2 带条件4.1.3 字段解释4.1.3 字段解释 4.2 添加路由4.…

基于Springboot+Vue的Java项目-高校心理教育辅导系统开发实战(附演示视频+源码+LW)

大家好!我是程序员一帆,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:Java毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 &am…

发布 Chrome/Edge浏览器extension扩展到应用商店

Chrom Extension发布流程 创建和发布自定义 Chrome 应用和扩展程序:https://support.google.com/chrome/a/answer/2714278?hlzh-Hans 在 Chrome 应用商店中发布:https://developer.chrome.com/docs/webstore/publish?hlzh-cn 注册开发者帐号&#…

Eclipse+Java+Swing实现图书信息管理系统-TXT存储信息

一、系统介绍 1.开发环境 操作系统:Win10 开发工具 :Eclipse2021 JDK版本:jdk1.8 存储方式:Txt文件存储 2.技术选型 JavaSwingTxt 3.功能模块 4.工程结构 5.系统功能 1.系统登录 管理员可以登录系统 2.查看图书 管理员…

软件无线电安全之HackRF One初探

HackRF介绍 HackRF是一款开源软件无线电(SDR)平台,由Great Scott Gadgets公司推出。它具有广泛的频率覆盖范围,从1 MHz到6 GHz,支持大部分常见的无线通信频段。采用软件定义无线电技术,HackRF提供了自定义…

vue快速入门(二十四)输入停顿再进行响应

注释很详细&#xff0c;直接上代码 上一篇 新增内容 使用侦听器监视数据变化情况使用clearTimeout与定时器实现停顿一段时间再操作内容 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"view…

【王道数据结构笔记】顺序表的动态分配代码分析

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;数据结构 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…

docker 安装 nginx + httpd + php-fpm

原文地址&#xff1a;http://www.taoluyuan.com/index.php/archives/30/#2 展示 1.安装 1.1安装docker 1.2安装nginx 1.3安装apache-httpd 1.4安装php-fpm 2.配置nginx反向代理 httpdphp-fmp 1.安装 1.1安装docker 移除旧的版本&#xff1a; sudo yum remove docker 安装…