当前位置: 首页 > article >正文

计算机网络(第十二弹) --- 传统访问过程与 CDN 访问过程对比

CDN 是构建在现有网络基础之上的智能虚拟网络, 依靠部署在各地的边缘服务器, 通过中心平台的负载均衡 / 内容分发 / 调度等功能模块, 使用户就近获取所需内容, 降低网络拥塞, 提高用户访问响应速度和命中率;
当用户访问网站时, 利用全局负载均衡技术将用户的访问指向距离最近的工作正常的缓存服务器上, 由缓存服务器直接响应用户请求.
  CDN 系统能够实时的根据网络流量和各节点的连接或者负载状况以及用户的距离和响应时间等综合信息请求到最近的服务节点上; 其目的就是使用户可以就近获取所需内容, 解决 Internet 网络拥堵的状况, 提高用户访问网站的响应速度.

传统的访问过程:
在这里插入图片描述

(1) 用户输入 www.baidu.com 域名后, OS 会向 LocalDNS(本地域名服务器) 查询域名的 ip 地址;
(2) 如果本地域名服务器中没有查询到, 本地域名服务器 LocalDNS 就会向根域名服务器(RootDNS)查询域名的授权服务器;
(3) RootDNS 得到域名授权 DNS 记录后, 回应给 LocalDNS;
(4) LocalDNS 将得到的域名 ip 地址回应给用户端;
(5) 用户得到域名 ip 地址后, 访问站点服务器;
(6) 站点服务器应答请求, 将内容返回给客户端.


CDN 访问过程:
在这里插入图片描述


(1) 用户输入 www.baidu.com 域名后, OS 会向 LocalDNS(本地域名服务器) 查询域名的 ip 地址;
(2) 如果本地域名服务器中没有查询到, 本地域名服务器 LocalDNS 就会向根域名服务器(RootDNS)查询域名的授权服务器;
(3)RootDNS 得到域名授权 DNS 记录后, 回应给 LocalDNS;
(4) LocalDNS 得到域名的授权 DNS 记录后, 继续向域名授权 DNS 查询域名的 ip 地址;
(5) 域名授权的 DNS 查询域名记录后, 回应给 LocalDNS;
(6) LocalDNS 得到域名记录后向智能调度 DNS 查询域名的 ip 地址;
(7) 智能调度 DNS 通过一定的算法和策略将最合适的 CDN 节点 ip 地址回应给 LocalDNS;
(8) LocalDNS 将得到的域名 ip 地址并回应给用户端;
(9) 用户端得到域名 ip 地址后访问站点服务器;
(10) CDN 节点服务器应答请求, 将内容返回给客户端; 缓存服务器一方面在本地进行保存, 另一方面把获取到的数据返回给客户端, 完成数据的服务过程.


总结

  • CDN 的原理就是使用各种缓存服务器, 将这些缓存服务器分布在用户访问相对集中的地区或者网络中;
  • CDN 的基本思想就是尽可能避开互联网上有可能影响数据传输速度和稳定性的环节, 使内容传输的更快更稳定, 通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络;
  • 总之, CDN 就是一个分布式的缓存服务器, 存着非常多的文件, 并且分布在世界各地, 每个人都能就近访问.

http://www.kler.cn/a/2322.html

相关文章:

  • 如何在Windows系统上安装和配置Maven
  • Java基于SSM框架的无中介租房系统小程序【附源码、文档】
  • 一区牛顿-拉夫逊算法+分解+深度学习!VMD-NRBO-Transformer-GRU多变量时间序列光伏功率预测
  • 【Vue.js 3.0】provide 、inject 函数详解
  • 京准电钟:电厂自控NTP时间同步服务器技术方案
  • springboot 与 oauth2 版本对应关系
  • 【华为OD机试真题JAVA】水仙花数问题
  • 数据仓库相关面试题
  • Ubuntu安装rancher2.6的k8s集群手册
  • 程序员必须知道的HTML常用代码有哪些?
  • Oracle中含有recover 状态的数据文件环境中,做异机恢复
  • CSS 实现六边形柱状图
  • MySQL注入秘籍【绕过篇】
  • 【Java Spring基本问题】记录面试题宝典中自己不熟悉的Spring问题
  • Java现在好找工作吗?
  • C语言运算符和表达式
  • python基于XGBoost开发构建海上船舶航行轨迹多变量序列预测分析模型
  • 一个比较全面的C#公共帮助类
  • AWS白皮书 – 卓越操作
  • 低代码平台如何选型, 43款国内外低代码平台一网打尽
  • Vue项目预渲染
  • 【网络安全工程师】从零基础到进阶,看这一篇就够了
  • 多标签损失之Hamming Loss(PyTorch和sklearn)、Focal Loss、交叉熵和ASL损失
  • iOS中.podspec文件中source_files参数怎么设置
  • Markdown如何使用详细教程
  • Vue2源码-初始化