CDN的基本概念和产生背景

对于CDN这个名词,读者大可以望文生义:Content Distribute Network,直译成内容分发网络,或者也有人写成Content Delivery Network,内容交付网络。很显然,CDN完成的是将内容从源站传递到用户端的任务,我们当然不需要再解释什么叫做“内容分发”或者“内容交付”了,要解释的是CDN在这个分发或者交付的过程中体现了什么价值,为什么需要CDN来交付而不是直接通过互联网交付呢?这个话题有必要短话长说一下,这对理解本书中CDN的工作原理、各项关键技术都有帮助。

大家常说的互联网,是广义的互联网,由两层组成:一层是以TCP/IP为代表的网络层(也是狭义互联网概念);另一层是以万维网WWW为代表的应用层。目前普遍存在一个认识误区,就是将互联网和万维网混作一谈。认清互联网的本质,辨识清楚互联网和万维网的区别,是理解整个互联网经济的关键和基础,也是认识CDN的基础。

以TCP/IP为核心的狭义的互联网(Internet),实际上是广义互联网的下层,是网络基础,更一般地说就是TCP/IP网络。这一层的主要作用是通过计算机之间的互联,将各种信息的数据报文以极低的成本进行传输,俗称“管道”,所有信息和内容在这个管道里进行传送。互联网的设计理念是:网络是中立和无控制的,任何人都没有决定权;网络是应用无关的,它的任务就是如何更好地将数据包进行端到端传输。这个设计理念从互联网诞生之初到现在从未被撼动,任何针对某种(类型的)内容对互联网进行优化的尝试其最后效果都不甚理想。因此,我们可以认为互联网不会试图对任何内容进行传输优化。

以万维网WWW为代表的应用层,是广义互联网的上层。这一层包括很多种类型的流量和应用,邮件、软件、在线影视、游戏、电子商务、移动应用等,所有SP(Service Provider,服务提供商)提供的都是这些用户看得见、摸得着的应用,它们丰富和方便了人们的生活,构成了我们常说的互联网业务和信息经济。

举个铁路的例子来解释两者的差别和关系:互联网是铁路轨道和信号系统,万维网则是在铁路上运行的列车之一。而在铁路上,除了万维网这个高速列车以外,还有慢车、通勤列车、货运列车和专业维修列车等。在互联网上,万维网是巨大的和非常重要的,但它并不是唯一。那些不使用WWW的应用同样运行在互联网上,互联网的巨大远远超过运行在其上的任何东西。

现在,我们看看网络层与应用层这上下两层的磨合中是否存在问题。从网络层面来看,在互联网这个铁路网中,有4个地方会造成列车拥堵。

(1)“第一公里”,这是指万维网流量向用户传送的第一个出口,是网站服务器接入互联网的链路所能提供的带宽。这个带宽决定了一个网站能为用户提供的访问速度和并发访问量。一个网站,其服务的用户越多,对其出口带宽的要求就越大,当用户请求的数据量超过网站的出口带宽,就会在出口处形成拥塞。越是业务繁忙时,用户的访问数量越多,这个拥塞就越严重,网站会在最需要向用户提供服务时失去用户。

(2)“最后一公里”,这是指万维网流量向用户传送的最后一段接入链路,即用户接入带宽。用户的平均接入带宽,是影响互联网上层应用发展的决定性因素之一。在互联网发展的初期,用户主要通过拨号上网或ISDN等方式上网,网络接入速度很低,所以互联网内容以带宽占用非常小的文字为主,Telnet、BBS都是那时的主流应用。当万维网出现后,人机交互更加方便友好的多媒体内容开始在互联网上传播,接入带宽成为制约用户使用互联网的主要瓶颈。从2001年开始,电信运营商开始大力发展ADSL等宽带接入服务,随着带宽的不断提升和接入手段的丰富(光纤入户、Wifi、3G等),近年来“最后一公里”的问题得到很大改善,特别是这两年中国电信等大力开展以光纤接入为手段的宽带提速服务,“最后一公里”的瓶颈问题已经基本得到解决。

(3)对等互联关口。这里的“对等互联”是指不同基础运营商之间的互联互通,一般两个运营商之间只有两三个互联互通点,可以想象这两三个点上产生多么大的流量。当某个网站服务器部署在运营商A的IDC机房里,运营商B的用户要访问该网站,就必须经过A、B之间的互联互通点进行跨网访问。从互联网的架构来看,不同网络之间的互联互通带宽,对任何一个运营商网络的流量来说,占比都比较小,收敛比是非常高的,因此这里通常都是互联网传输中的拥堵点。

(4)长途骨干传输。首先是长距离传输时延问题,从网站服务器到用户之间要经过网站所在IDC、骨干网、用户所在城域网、用户所在接入网等,距离非常遥远,因此不可避免地带来较长的传输时延,影响用户体验,这一问题也是互联网本身无法解决的问题。其次是骨干网拥塞问题,由于互联网上的绝大部分流量都要通过骨干网络进行传输,这就要求骨干网络的承载能力必须与互联网的应用同步发展,但实际上两者并不是同步的,当骨干网络的升级和扩容滞后于互联网之上的应用的发展时,就会阶段性地使得大型骨干网的承载能力成为影响互联网性能的瓶颈。

在应用层中,SP们都在不断优化业务体验,其中最值得关注的就是服务响应时间。服务响应时间基本是由服务器响应时间和网络时延组成的。影响服务器响应时间的因素包括协议处理时间、程序性能优化、内容读取速度等方面,网络时延则是由数据报文在网络传送中被各个路由器、交换机转发产生的时延总和。在互联网领域有一个“8秒定律”,用户访问一个网站时,如果等待网页打开的时间超过8秒,会有超过30%的用户放弃等待。根据KissmeTrics最近的一项调查统计:一个网站10秒后网页打不开,会有40%的用户跳出该页面;大部分手机用户愿意等待的加载时间为6~10秒;1秒延迟会导致转化率下降7%。算一下,假如一电子商务网站每天收入10万元,1秒钟的页面延迟将使它每年损失掉250万元。

CDN的产生与上面分析的一系列问题息息相关,如果这些问题没有手段缓解,那整个互联网将是与今天完全不同的另一番景象了。1995年,麻省理工学院教授,互联网发明者Tim Berners-Lee预见到当时互联网使用者已经习以为常的网络拥挤难题,未来会成为互联网应用的最大障碍。于是他向同事提出挑战,要发明一种全新的、从根本上解决问题的方法来推送互联网内容。他的这一提议造就了今天被大家普遍接受的互联网基础服务——CDN。

本文节选自《CDN技术详解》一书

雷葆华孙颖王峰陈晓益 著

图书详细信息:http://blog.csdn.net/broadview2006/article/details/7690184

CDN的基本概念和产生背景相关推荐

  1. CDN的基本概念与原理

    目录 一.问题背景 二.CDN的功能 三.CDN的组成 一.问题背景 由于服务器众多,如果访问的服务器距离用户很远,那么就会出现访问卡顿和高延迟的现象,因为需要更多的带宽和时间从遥远的服务器传输数据到 ...

  2. 【云计算与大数据技术】大数据概念和发展背景讲解(图文解释 超详细)

    一.什么是大数据 大数据是一个不断发展的概念,可以指任何体量或负载下那个超出常规数据处理方法和处理能力的数据,数据本身可以是结构化,半结构化甚至是非结构化的,随着物联网技术与可穿戴设备的飞速发展,数据 ...

  3. CDN技术的发展历程

    在互联网上,悄然生长出一张时刻为人们服务的网络,它像一位隐形的快递员,将各种各样的内容交付给用户,这就是内容分发网络(CDN,Content Distribute Network). CDN的基本概念 ...

  4. html登录cdn,html cdn

    此文已由作者刘诗川授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 最近我们的产品有一个需求是要在PC端做一个面向用户的书评编辑器,让用户和编辑在蜗牛读书上能方便快捷的编辑和产 ...

  5. 分布式系统 概念 高可用 高并发 学习笔记

    分布式系统 概念 高可用 高并发 学习笔记 0. 分布式系统基本概念 0.1 背景 分布式系统是由一组通过网络进行通信.为了完成共同的任务而协调工作的计算机节点组成的系统.分布式系统的出现是为了用廉价 ...

  6. CDN网络简介及原理

    目录 一.问题背景 二.功能 三.一些概念 四.CDN的原理 一.问题背景 由于服务器众多,如果访问的服务器距离用户很远,那么就会出现访问卡顿和高延迟的现象,因为需要更多的带宽和时间从遥远的服务器传输 ...

  7. 为什么一个概念会非常难懂呢?人是如何理解的呢?

    为什么一个概念会非常难懂呢?人是如何理解的呢? 1.赵毅衡老先生在<文化符号学>关于理解作了一段非常精辟的解释: 部份(或组分.或因素)脱离了系统,就不再具有意义,用信息论的术语来说就是: ...

  8. ML:从工程化思维分析—机器学习团队十大角色的简介(背景/职责/产出物):产品经理、项目经理、业务咨询顾问、数据科学家、ML研究员、数据工程师、ML工程师、DevOps/软件开发/交付工程师

    ML:从工程化思维分析-机器学习团队十大角色的简介(背景/职责/产出物):产品经理.项目经理.业务咨询顾问.数据科学家.ML研究员.数据工程师.ML工程师.DevOps/软件开发/交付工程师 背景:在 ...

  9. 导数的四则运算法则_高考考纲与考向分析——导数的概念与计算

    考纲原文 1.导数概念及其几何意义 (1)了解导数概念的实际背景. (2)理解导数的几何意义. 2.导数的运算 (2)能利用下面给出的基本初等函数的导数公式和导数的四则运算法则求简单函数的导数,能求简 ...

  10. 分布式优化算法的背景,应用场景,研究动态

    文章目录 0.写在前面 1.背景介绍 ① 概念解释 ② 应用背景 ③ 小结 2.研究动态与现状 ①分布式优化算法的数学模型 ②分布式优化算法的分类 ③ 有中心节点VS无中心节点 ④有向图和无向图 ⑤静 ...

最新文章

  1. Verilog全新语法认识--Xilinx language template
  2. Excel 中如何找出两列数据中不重复的记录
  3. javascript事件与event对象的属性
  4. centos 打开pdo_mysql_centos中添加php扩展pdo_mysql步骤
  5. HTML5 canvas图形库 RGraph【转】
  6. 实习踩坑之路:URL传参错误,导致后台查不到数据,但是不报错
  7. MySQL-第十三篇使用ResultSetMetaData分析结果集
  8. tensorRt加速tensorflow模型推理(inception V3为例)
  9. 《CSS权威指南》.pdf
  10. 计算机财务管理中表格的应用,论Excel表在财务管理中的应用
  11. python获取城市区域边界坐标
  12. Keil5在线调试汇总及基本操作教程
  13. java如何实现联网象棋代码_java中国象棋联网对战源码
  14. 西伯利亚曾经叫鲜卑利亚
  15. 题9.6:13个人围成一圈, 从第1个人开始顺序报号1, 2, 3。凡报到3者退出圈子。找出最后 留在圈子中的人原来的序号。要求用链表实现。
  16. linux下puts和gets命令用法,puts()和gets()函数(示例代码)
  17. 这位创造Github冠军项目的老男人,堪称10倍程序员本尊
  18. Kaggle入门和学习资源
  19. 聊聊机器人学习中的“投资”与“消费”(节选)
  20. Android-Easy-MultiDex

热门文章

  1. ats反向代理和重定向
  2. 如何开启深度学习之旅?这三大类125篇论文为你导航(附资源下载)
  3. mysql 的命令行操作
  4. GSM/GPRS/EDGE简介
  5. Executor框架(转载)
  6. 第二届360杯全国大学生信息安全技术大赛_几道小题解析
  7. Ubuntu安装rpm安装包
  8. 使用JsonCpp实现JSON文件读写操作的方法
  9. Android studio 混淆配置
  10. django Form 效验