content delivery network内容分发网络是建立并覆盖在承载网上,由遍布全球的边缘节点服务器群组成的分布式网络。
CDN将源站资源缓存在遍布全球的边缘加速节点服务器上,当客户需要访问和获取资源的时候,只需要通过就近的加速节点上的缓存资源即可,而不需要访问源站。这样提高资源访问效率的同时,也减小了源站的访问压力,减少了网络阻塞。
假设需要加速的域名为www.jobbin.com,当接入CDN网络后,某终端用户从北京发出一条访问该域名的请求,流程如下图所示:
1、用户从北京发起请求域名解析www.jobbin.com,到本地DNS;
2、本地DNS发起域名解析请求,到网站授权DNS;
3、网站授权DNS发送域名的CNAME记录www.jobbin.qb.com,给本地DNS;
4、本地DNS再将域名www.jobbin.qb.com发送给DNS调度中心,请求最佳加速节点IP;
5、DNS调度中心将最佳节点IP=10.0.0.10(北京)发送给本地DNS;
6、本地DNS将最佳节点发送给用户,至此用户拿到最佳节点IP
------以上为DNS解析,拿到最佳加速节点IP的过程-------
7、用户向最佳节点发送资源申请请求;
如最佳节点已存在用户请求的资源缓存,则直接向用户返回;
如最佳节点不存在用户请求的资源缓存,则需进一步进行操作8
8、最佳节点向源站请求用户申请资源
9、源站向最佳节点返回用户请求资源,再到6
这样的加速过程不仅可以提高资源的访问速度,减少网络阻塞还能够减小源站的访问压力,同时通过这样间接的方式获取资源对于源站服务器来说也是一种安全保护措施,源站的域名和IP不容易被发现和攻击,无意中保护了源站服务器的安全。