CDN发展背景

CDN的全称是Content Delivery Network,内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。

CDN的作用:解决由于网络带宽小、用户访问量大、网点分布不均等原因造成用户访问网站响应速度慢的问题

AKaMai是最早的CDN的服务商,蓝汛是中国最早的CDN的服务商,同期的还有网宿,现在的CDN的服务商主要有阿里、腾讯、百度。

CDN的核心技术

全局调度

调度系统解决的是从用户接入开始到用户访问CDN节点之间的业务逻辑处理。

主要调度有:DNS调度、302调度、httpdns调度

DNS调度

缺点:容易被劫持。

准确性差,通过识别local dns出口ip来智能调度。

灵活性差,不能使用太多节点覆盖,调度粒度粗。

302调度

缺点:增加了20-40ms的首包时间,不适合大文件的传输。

依赖客户端的版本,低版本的chrome不允许range请求返回302。

Httpdns调度

HttpDNS优势:

从原理上来讲,HttpDNS只是将域名解析的协议由DNS协议换成了Http协议,并不复杂。但是这一微小的转换,却带来了无数的收益:

A、根治域名解析异常:由于绕过了运营商的LocalDNS,用户解析域名的请求通过Http协议直接透传到了CDN厂商的HttpDNS服务器IP上,用户在客户端的域名解析请求将不会遭受到域名解析异常的困扰。

B、调度精准:HttpDNS能直接获取到用户IP,通过结合CDN厂商自有专利技术生成的IP地址库以及测速系统,可以保证将用户引导的访问最快的CDN节点上。

302调度和httpdns调度的区别:

HTTP-DNS协议只是将域名解析的协议由DNS协议换成了HTTP协议,后端配置和调度系统实际上还是基于DNS服务器(BIND之类)。

而302跳转调度的方式,不属于走域名解析的方式,后端配置和调度系统一般是基于GLSB(例如Nginx+Lua)方式。

负载均衡

全局负载均衡(GSLB:主要根据用户就近原则,通过对每个CDN节点进行“最优”判断,确定向用户提供服务的CDN节点的物理位置。

本地负载均衡(SLB:主要负责节点内部的设备负载均衡。

CDN的各层节点:

上层节点:负责缓存回源拉取的内容。

负责回用户源站,与源站相关的业务均在上层。

内容分发和作为中层未命中时的服务点。

中层节点:负责缓存从上游拉取的内容。

分担上层压力。

内容分发和作为下层未命中的服务点。

下层节点:负责缓存从上游拉取的内容。

分担上层压力。

负责处理用户的业务。

CDN的单个节点

Ngx:业务层

1、7层负载,使用url一致性哈希,支持热点打散。

2、业务接入和客户需求处理。

3、部分内容管理,如一键屏蔽、部分刷新。

Cache:存储和回源

1、存储:存储规则、存储时间、特殊状态码缓存。

2、回源:回源协议、地址(择优|轮询)回源Host。

回源的收敛形式的作用:1、减少回源次数。2、边缘节点存满后,可能会根据LRU刷新cache时,可以在上层节点找到以前的缓存。

CDN提供的服务:网页加速、流媒体加速、文件传输加速和应用协议加速。

网页加速是最早出现的CDN服务类型,网页的内容主要以文字、图片、动画等形式为主,支持文本方式的电子邮件交换,因此CDN技术最初的应用重点就是用来对这些网页的静态内容进行加速。

流媒体加速通过将流媒体内容推送到离用户最近的边缘节点,使得用户能够从网络边缘获取内容,从而提高视频传输质量,缩短访问时间,节省上层网络流量,避免单一中心的服务器瓶颈问题。流媒体加速服务分为两类:流媒体直播加速和流媒体点播加速。

文件传输加速通过使用CDN的分布式边缘节点提供下载服务,网站可以将大量文件下载的性能压力和带宽压力交给CDN来分担,提高用户的下载速度。

应用协议加速通过对TCP/IP等传输协议的优化,改善和加快用户在广域网上的内容传输速度,或者对一些特定协议,如SSL协议进行加速,解决安全传输时的性能和响应速度问题。

网络中的中间商(CDN)相关推荐

  1. CDN及P2P技术在流媒体网络中的应用

    新疆电信有限公司信息业务分公司 闫卫东 [ 来源:<新疆通信> 上传时间:06-10-16 ] 摘 要: 随着宽带网络的日益普及,流媒体成为了重要的互联网业务之一,完成实时流媒体的分发的主 ...

  2. 【Microsoft Azure 的1024种玩法】六十二.利用Azure Private DNS 实现虚拟网络中域名的管理解析

    [简介] Azure Private DNS是Azure为我们虚拟网络提供的安全可靠的DNS服务,我们无需自行配置DNS即可在虚拟网络中实现域名的解析及配置, 于此同时,我们在内网中也可以利用自己的自 ...

  3. webrtc实现视频群聊系列文章(二)实现网络中一对一视频聊天

    引言 在之前一篇文章写了webrtc实现基本的本地1对1视频通讯,这一篇文章则实现现实网络中一对一视频聊天. 目标 思考 webrtc实现点对点通信的基础是目标和自己之间能够建立网络链接,那么如何建立 ...

  4. 网络中常见攻击及其防御方式

    一.Smurf攻击 1.Smurf 攻击是一种 DDoS攻击,其中攻击者试图用ICMP数据包淹没目标服务器.通过使用目标设备的欺骗 IP地址向一个或多个计算机网络发出请求,计算机网络随后响应目标服务器 ...

  5. 缓存:网络中的缓存。

    网络中的缓存位于客户端和服务端之间,代理或响应客户端的网络请求,从而对重复的请求返回缓存中的数据资源.同时,接受服务端的请求,更新缓存中的内容. Web代理缓存 Web代理几乎是伴随着互联网诞生的,常 ...

  6. CVPR2020:点云分析中三维图形卷积网络中可变形核的学习

    CVPR2020:点云分析中三维图形卷积网络中可变形核的学习 Convolution in the Cloud: Learning Deformable Kernels in 3D Graph Con ...

  7. 编程实现路由算法 实验报告_lt;中国通信专刊gt; EARS:用于软件定义网络中自动路由的智能驱动体验网络架构...

    题目:EARS:用于软件定义网络中自动路由的智能驱动体验网络架构 摘要:软件定义网络(SDN)通过将控制平面与数据平面解耦来适应逻辑集中的控制,并提供对网络资源的有效利用.但是,由于传统路由策略依赖于 ...

  8. 基于交换技术的网络中,全双工主要运行在?( 内有答案与详解)

    基于交换技术的网络中,全双工主要运行在?( ) A. 站点与站点之间 B. 交换机与服务器之间 C. 站点与服务器之间 D. 站点与交换机之间 答案: b 网站就是站点的意思,交换机实际是与数据打交道 ...

  9. 探究!一个数据包在网络中的心路历程

    来自:小林coding 前言 想必不少小伙伴面试过程中,会遇到「当键入网址后,到网页显示,其间发生了什么」的面试题. 还别说,这真是挺常问的这题,前几天坐在我旁边的主管电话面试应聘者的时候,也问了这个 ...

  10. FDDWNET:模型参数仅为0.8M,速度和准确率综合性能在轻量级分割网络中达到SOTA

    作者:Tom Hardy Date:2020-02-04 来源:FDDWNET:模型参数仅为0.8M,速度和准确率综合性能在轻量级分割网络中达到SOTA

最新文章

  1. [转]Iphone NSString字符串常用方法
  2. redux源码分析之一:createStore.js
  3. linux分区合并不损坏系统,一次Linux磁盘损坏导致系统不可用恢复实例
  4. move函数c语言,C++11 move()函数:将左值强制转换为右值
  5. ElasticSearch 数据类型keyword和text的区别
  6. Python从菜鸟到高手(5):数字
  7. 2018年 第09届 蓝桥杯 Java B组 决赛真题详解及小结
  8. mysql操作数据库
  9. linux杀死进程删除文件,linux 常用到的命令 删除 移动 复制 查询端口 杀死进程 查询进程...
  10. QT添加资源和样式表(设计窗口背景图)
  11. 【面经】腾讯NLP实习面经(Offer已拿)
  12. 数据解读 | 高考志愿慎重填,大学四年不留白
  13. Jzoj5424 凤凰院凶真
  14. 快速处理-小程序/uniapp,showToast没有效果
  15. 网络直播课程:神马是敏捷?(直播时间:2014-7-14 20:00-21:00)
  16. Qt 信号槽的应用(三)
  17. Fiddler安装与配置
  18. 梦幻默认服务器文件夹修改器,【梦幻仙境V3.96服务端】梦幻最新完美开心版带存档与修改器时代梦幻最新5.2版本...
  19. puppy linux 默认密码,puppylinux使用手册.doc
  20. 阿里在开源领域又有哪些新动向?来首届阿里开源开放周找答案!

热门文章

  1. 淘宝API 如何获取颜色 尺码 属性表
  2. 纯CSS3 3D图片向上翻转渐隐消失动画DEMO演示
  3. 海外引流怎么做?巨象指纹浏览器助你,人人都是产品经理
  4. web测试----死链检查(Xenu)
  5. 卓有成效的管理者(笔记)——要事优先
  6. 复权、前复权和后复权
  7. Unity优化☀️光照烘焙
  8. 九步用树莓派开发板实现QT工程项目
  9. HIT CSAPP大作业--程序人生
  10. 【codeforces 417D】Cunning Gena