专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

cdn是什么,cdn加速原理

来源:小嗨整编  作者:小嗨  发布时间:2022-11-08 07:36
摘要:1、什么是CDN?CDN(Content Delivery Network)也叫内容分发网络,此技术旨在降低带宽消耗,减少延迟,在网络负载时体现路由的可扩展性。直观上体现在应用程序或网页的提速,改善应用服务器压力的同时提高用户体验。2、为什...

1、什么是CDN?

CDN(Content Delivery Network)也叫内容分发网络,此技术旨在降低带宽消耗,减少延迟,在网络负载时体现路由的可扩展性。

直观上体现在应用程序或网页的提速,改善应用服务器压力的同时提高用户体验。

2、为什么要用CDN?

传统单一站点,以及流媒体的访问并发量受带宽限制和服务器性能等因素限制,无限扩容虽能及时缓解瓶颈压力,但是治标不治本,还会有资源浪费的嫌疑。因此在网络“基建”已搭建好的情境下,如何对数据流进行规整,实现既能节省带宽又能减少对服务器性能依赖成为了一种新思路。

CDN技术由此应运而生。对源站页面内容进行缓存,打破跨地域、跨运营商用户访问的壁垒,同时缓解了企业带宽和服务器承载压力,加快应用的响应速度,为用户带来卓越的交互体验。

3、CDN加速原理

CDN通过建立多个节点,将源站内容更新并下发、缓存到全部节点。当用户请求资源时,CDN根据就近原则,将距离用户最近的节点作为缓存服务器下发资源。

cdn是什么,cdn加速原理

图|CDN架构示例

CDN主要从两点体现加速价值,一是提高网络的连接性,二是从网络根本的性能上。下面会根据这两方面分别介绍CDN的功能。

炫酷技术——提高网络连接性

影响网络连接性的因素有很多,可以把数据传输过程想象成排水系统,不同类型的数据则可以理解为排水系统中不同的物质,所以在排水时有两类问题就需要工厂来明确。

  • 从源头来考虑:

    排放机制是否需要时时刻刻都进行,还是在中继处攒到一定容量再统一排放。

  • 从中间环节来考虑:

    排水系统的大体积物质若是过大是否会堵塞通道,因此也要考虑物质压缩问题。

这些问题都可以被形象地类比为数据传输中遇到的问题。工厂第一个排放机制的问题等同于HTTP请求的处理,无论是网络带宽,还是浏览器可容纳的TCP并发量,都是有阀值限制的,因此需要一些手段合理降低客户端请求数。第二个问题等同于数据传输中大文件的处理方式,是要统一进行压缩还是增加“排队”的长度。

值得欣慰的是,当前CDN的技术可以很好地解决数据传输中的问题。下面5点是从CDN在提高网络连接性的方面应用的技术和算法。

1.     对HTTP头部实现缓存策略

如果相同版本的HTTP页面一直在被加载,无论对于源站服务器还是客户端都等于做了很多“无用功”。因此CDN会自主学习,将该HTTP页面当成是“静态页面”,并缓存到CDN的缓存服务器上。等用户再请求相同资源的时候,CDN代替源站服务器,直接返回已进行缓存的资源,节省了进行相同运算的处理时间。带给用户的直观感受就是程序或网页响应快。

此外,CDN可以直接重写HTTP的缓存标头,对是否缓存、缓存时间、强制缓存,将源站资源缓存在CDN节点上,完全根据用户需求进行定制化部署。

2.     减少HTTP请求

从网络层面讲,每请求一个网页资源就需要发起一个HTTP请求,当请求数过多时就会造成首字节时间(TTFB)的延长。因此页面元素越多,也就越消耗时间来加载资源。造成的结果就是,用户打开内容丰富的页面,反而引起了5s焦虑,因此放弃继续访问[]。丢失用户这对于应用来说,无异于是巨大的损失。

CDN可通过整合资源从而减少资源的HTTP请求,从而加快用户加载页面所消耗的时间。

cdn是什么,cdn加速原理

图|CDN进行HTTP资源整合示例

3.     HTML内容压缩

通常HTML会对整个内容进行压缩,压缩后的文件越大,浏览器在进行解压缩并传递给用户的时间就会越长,而影响解压缩时间的因素与采取的压缩工具有关。在对GZIP、BZIP、LZMA等压缩方式进行对比之后发现,GZIP对内容的压缩量相对较大[2],且GZIP的压缩和解压缩时间都相对较小[3],因此GZIP为当前最为普遍的压缩方式。

CDN可以对HTML进行GZIP压缩,最大程度优化因为网页内容的压缩和解压缩影响下的TTFB。

4.     图片加载

常规的图片压缩方式分为三种:

第一种是有损压缩,将图片的质量降低,从而减少图片大小;

第二种是将图片变成像素模式,并同时将图片优化,使其看起来更好看而不是全部由像素点构成的图片,从而减少浏览器加载图片的时间;

第三种是将栅格式的图片全部变成矢量图,从根本上减少图片大小,同时维持高质量的视觉效果。

CDN则利用第三种方式,在无损图片质量的同时最大程度减少图片大小。因此图片越大,越能体现CDN对于图片处理的优越性。

5.     SSL连接

cdn是什么,cdn加速原理

图|CDN双向加密示例

① 安全性

数据传输当然不可忽视数据加密问题,在使用CDN过程中涉及两阶段SSL加密过程。优秀的CDN服务商,在用户和CDN交互过程使用的是CDN提供的经由CA认证的高等级A+证书。因此通常情况下用户与CDN节点的缓存数据进行交互过程是安全可控的。而CDN访问源站的过程是需要自行按需部署SSL证书,所以保证了数据在CDN和源站进行交互的过程也是加密的。

除此之外,CDN还可提供HTTP严格传输安全协议( HSTS )技术。即CDN可统一对接入的源站域名进行管理,使该域只能通过SSL/TLS进行访问。但是因为有些应用在https进行访问后会重定向到http,若应用HSTS,则有可能会影响部分功能,因此HSTS技术还是根据用户需求按需部署。

② 高效

当client请求数据的时候,本质上是通过与CDN边缘节点服务器进行交互,而CDN边缘节点服务器再定期或根据用户需求向源站进行数据同步或预取。在用户与CDN进行数据交互过程中,CDN提供keep alive机制。当用户请求资源时,CDN支持短时间的开放连接,使用户无需重复与CDN节点建立连接,从而减少了SSL反复建立连接过程中浪费的时间。


稳固地基——改善网络性能

CDN是否优秀,一方面体现在对于改善网络连接所使用的多种技术。但是无论提供的技术有多智能、多便捷,CDN的立足之本都是节点的物理位置选择和整体网络的架构部署。就好比搭建房子,根基稳了才能在上层建筑上凸显个性。因此CDN的根基主要是从网络的数据传输方式、路由策略和运营商的选择来衡量的。

1.     拯救运维工程师睡眠的技术——任意播(Anycast)

网络环境中,数据从客户端到服务器的通信方式有多种选择,常见为单播、组播、广播。

  • 单播(Unicast)是指一对一的通信方式,只有客户端发起了请求服务器才会发送数据流。这种方式最为广泛,常见的TCP就是属于单播模式。更直观来讲,用户发送邮件、浏览网页就是单播最好的体现,即点对点传输。

  • 组播(Multicast)是指一对多的通信方式,但是只发给特定“组”的用户,当下视频会议、流媒体等资源多数采用组播方式。形象的比喻是用户在油管上关注了一个播主,那么这个播主更新的内容会自动推送到订阅该播主的用户上。不在这个订阅组的用户将收不到更新的推送。那么“组”的这个概念就很好理解了。

  • 广播(Broadcast)也是一对多的通信方式,只不过相较于组播,广播是发给广播域里面所有用户。因为用户只能是被动接受,若是再加上网络结构设计不合理,因此才会有“广播风暴”这种网络故障存在。

然而任意播(Anycast)的产生则是概念性的突破。任意播是由IPV6衍生出的一个技术,即通过“就近原则”,向最近节点发送数据的方式。那么问题来了,网络又不像实际路况,到某一个节点路由器时,面对新解锁的地图它怎么知道谁最近呢?尤其涉及到全球范围,每一个国家的路由是不会让别人摸清的,那依靠任意播的CDN、DNS是怎么工作的呢?

答案就是利用BGP。不同地域之间靠边缘ISP将路由告知给邻居节点,从而实现了将保密区域内部结构私有化,同时不同地域之间又能互通。

CDN便是依托于该特点,在全球节点互通互联的基础上,向全球用户提供加速服务。

cdn是什么,cdn加速原理

图|CDN路由选择示例

2.     运营商强强联合

CDN选取的运营商线路所影响的加速效果远比CDN提供的技术性能优化明显得多。一般来讲,一级运营商的专线质量以及节点位置、数量会远远高于二、三级运营商。因此为保证运营商效益,一级运营商会在不同地域构成一个类似于联盟性质的“一级运营商俱乐部”,在稳固了自己的市场占有率同时,又保证彼此通过联盟而向用户提供最优的链路质量。与此同时,优质CDN则会协议使用“一级运营商俱乐部”提供的链路,将加速效果最大化。


总结

通过CDN的灵活部署,在节省了互联网出口带宽的同时,为业务带来了更多的可能性。不用再顾虑大文件、高清音频是否会出现严重卡顿现象,不再考量其他地域用户是否有时延问题等。应用CDN不但为业务免除了数据传输的影响因素,而且带来了卓越的用户体验,让业务可以更加专注于应用的开发以及客户群体的定位。



本文地址:网络百科频道 https://www.eeeoo.cn/wangluo/868336.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


网络百科
小编:小嗨整编
相关文章相关阅读
  • cdn是什么

    cdn是什么

    cdn的全称是contentdeliverynetwork,即内容分发网络。cdn是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用...

  • CDN是什么意思

    CDN是什么意思

    cdn是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,提高用户访问响应速度。本教程操作环境:windows7系统、DellG3电脑。CDN是什么...

  • office2000序列号,office2000CDnbspKey安装字符序列号

    office2000序列号,office2000CDnbspKey安装字符序列号

    本文目录一览1,office2000CDnbspKey安装字符序列号2,求OFFICE2000注册码3,OFFICE2000序列号多少4,求MicrosoftOffice2000的注册码要能用的5,office2000序列号6,o...

  • cdn加速是什么(cdn加速的含义及好处)

    cdn加速是什么(cdn加速的含义及好处)

    简单来说,当一个网站开启了CDN加速,其给用户的感觉是访问网站速度或者下载东西的速度会明显比没有开启加速更快,变快或者下载东西变快了。CDN核心目的就是使用户可就近访问网络,取得所需内容,解决网络拥挤的状况,明显提...

  • SCDN是什么意思?

    SCDN是什么意思?

    网络加速媒体分发网络(CDN)是一种分散式网络,它包括一系列服务器,这些服务器都能为被请求的网络内容提供更高效,更可靠,更安全的性能.网络内容分发网络(CDN)系统的基本原理是:将原始内容储存至一系列节点分布在不同地区的服务器上,以便更...

  • PCDN是什么意思?

    PCDN是什么意思?

    PCDN(PrivateContentDeliveryNetwork)是一种面向客户端的内容交付网络服务,由一个私有网络提供商提供。虽然PCDN类似于CDN,但它们之间有很大的不同。PCDN是一种服务,它对用户的所有静态和动态流式传...

  • CDN服务是什么意思?

    CDN服务是什么意思?

    CDN服务是内容分发网络服务(ContentDeliveryNetwork)的简称。它是一种能够将内容传输到用户设备工作流程所需要位置的系统。CDN服务能够提供企业软件、文件和其他数据服务,它可以通过海量的分布式节点实现其服务,无论是...

  • CDN防御是什么意思?

    CDN防御是什么意思?

    CDN防御(ContentDeliveryNetworkDefense)是一种以可扩展的内容网络架构来提高网络的安全性的技术实践。它可以通过提供尽可能强大的防御服务,识别和拦截恶意攻击,从而防止非法访问受到影响。CDN防御技术由一个...

  • 周排行
  • 月排行
  • 年排行

精彩推荐