当想要提高网站性能时,需要考虑许多不同的配置和设施,CDN和ADN是我们常遇见的几种选项之一。“CDN”指“内容分发网络”,而“ADN”指“应用程序交付网络”,但他们两者很容易被混淆,虽然它们的功能和作用都有较大差异,但很多人依然搞不清楚他们的差异,也有很多人把ADN误认为就是CDN。这和许多人使用“CDN”作为一个广泛的包罗万象的术语(其中就包括了 ADN)有关。
CDN和ADN的异同
内容分发网络(Content Delivery Network,简称CDN)。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
简单地说,内容分发网络是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要求,而内容管理和全局的网络流量管理是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。
应用交付网络(Application Delivery Network,简称ADN)。它利用相应的网络优化/加速设备,确保用户的业务应用能够快速、安全、可靠地交付给内部员工和外部服务群。从定义中可以看出应用交付的宗旨是保证企业关键业务的可靠性、可用性与安全性。应用交付应是多种技术的殊途同归,比如广域网加速、负载均衡、Web应用防火墙…针对不同的应用需求有不同的产品依托和侧重。
由于应用交付是将关键应用与基础网络设备相关联的系统解决方案,因此,随着市场认知度的逐渐增强,应用交付(ADC)引起了传统的网络技术厂商的极大关注。ADC是传统的网络负载均衡的升级、扩展,它是一种综合的交付平台设备,其综合了负载平衡、TCP优化管理、链接管理、SSL VPN、压缩优化、智能网络地址转换、高级路由、智能端口镜像等各种技术手段的综合平台。企业越来越依赖先进的应用交付网络解决方案,以确保在当今日新月异的业务环境中保持充分的 IT 灵活性,通过在可扩充的ADC平台上提供可调整的安全性、高可用性和优化性。中国应用交付市场的主要客户群分布在金融、电信、互联网等行业以及大中型IT企业,这些客户多依赖先进的IT技术来支撑业务运营和各种客户服务。
CDN和ADN有很多共同点,包括性能、按需定价、安全性和可用性方面等都大同小异。它们还共享许多技术,包括TCP优化、负载平衡和缓存。从这些维度来说,CDN和ADN之间的界限确实非常模糊。
但尽管功能有重叠,但了解两者之间的差异依然很重要。
CDN的工作原理是在地理分布的边缘位置缓存经常访问的数字内容,这也当客户端浏览器请求缓存内容时,它就可以访问来自最近的边缘位置。通过在战略地理模式中利用这些边缘位置,静态网站将获得显着的性能改进。
但对于通过公共互联网访问的远程应用程序,这种在边缘位置缓存内容的做法无法产生相同的性能改进。相比之下,ADN是提供应用程序可用性、安全性、可见性和加速的功能的组合。ADN与动态远程应用程序配合使用,需要在应用程序服务器和客户端之间传输实时数据、分析和用户首选项。由于每个客户端都有不同的数据,因此每个请求都是从源服务器获取的,远程应用程序还需要智能流量监控和管理解决方案,以便在多个服务器上分配网络流量。
因为两者之间确实很多功能近似,所以可以了解下两个比较出名的APP应用来更加深入了解他们之间的差异:
ADN产品场景应用:滴滴打车
滴滴是我国最大的乘车共享服务提供商,所有订单全部由移动应用程序/小程序来进行管理。滴滴打车的APP占据了我国60%以上的乘车共享市场,每月完成超过7.5亿次线上乘车订单。
滴滴严重依赖ADN的来进行加速,为了确保他们的数据能够快速、安全地交付,ADN在应用程序服务器和客户端之间传输实时数据。滴滴使用ADN将数据负载均匀分布在国内多个服务器上,从而减少服务器延迟,同时由于可以将负载分散到多台服务器上,因此任何一台服务器过载的可能性都会大大降低。
CDN产品场景应用:今日头条
今日头条是国内主要新闻网站之一,每月访问量超过3亿,今日头条依靠CDN向全国甚至或全球读者提供内容。CDN旨在支持 HTML、CSS、JS、照片和视频等基本内容。新闻机构、杂志和公司网站通常充满此类内容,没有任何可交互的功能/应用程序。因此,CDN可以处理任意数量的流量,通过使用网络节点 (PoP)来镜像服务器源处的静态内容并将其反映到更近的最终用户。
ADN与CDN应该使用哪个?
查看上述说明后,决定使用CDN还是ADN应该不再是一个困难的选择,如果网站没有大量的可交互功能/应用程序,那么CDN 将是最佳选择,不仅在性能方面,而且在组织的成本效益方面。但如果网站不断变化或充当基于网络的功能软件的交互终端,那么ADN是更好的选择。
除此之外,SCDN,即安全内容分发网络,是在CDN的基础上增加了安全防护功能的一种网络服务。SCDN通过智能预判攻击行为,能够将DDoS攻击请求切换至高防IP完成清洗,而真正用户的请求则正常从加速节点获取资源。此外,SCDN的分布式架构还具备防CC攻击的能力。这意味着SCDN不仅具备CDN的所有功能,而且还能够在确保数据传输快速的同时提供强大的安全防护。主要的优势在于:
1.分布式架构增强冗余和可用性
SCDN的分布式架构意味着内容被存储在多个地理位置的服务器上,这种冗余性不仅提高了内容的可用性和访问速度,还增强了系统的鲁棒性。当某个节点遭受攻击或出现故障时,其他节点可以继续提供服务,确保内容的持续可用性。
2.缓存策略减少源站负载
SCDN节点可以缓存静态和动态内容,当用户请求这些内容时,可以直接从离用户最近的节点获取,而无需每次都从源站获取。这种缓存策略不仅加速了内容传输,还显著减少了源站的负载,降低了源站遭受直接攻击的风险。
3.流量清洗和DDoS防御
一些先进的SCDN解决方案集成了流量清洗和DDoS防御功能。当检测到异常流量或攻击行为时,SCDN可以自动将流量重定向到清洗中心,去除恶意流量后再将正常流量转发给源站。这种机制有效地保护了源站免受大规模DDoS攻击的威胁。
4.SSL/TLS加密保障数据传输安全
SCDN通常支持SSL/TLS协议,可以对传输的数据进行加密,确保数据在传输过程中的安全性。这对于传输敏感信息(如用户凭据、支付信息等)的网站和应用至关重要。
5.Web应用防火墙(WAF)集成
一些SCDN服务提供商还将Web应用防火墙(WAF)与CDN集成,以提供对常见Web攻击的防护,如SQL注入、跨站脚本(XSS)等。WAF可以实时分析和过滤HTTP/HTTPS流量,识别和拦截恶意请求,从而保护Web应用免受攻击。
6.访问控制和身份验证
SCDN还可以结合访问控制和身份验证机制,确保只有授权用户才能访问特定内容。这可以通过IP白名单、令牌验证、OAuth等机制实现,进一步增强了内容的安全性。
7.日志和监控
SCDN通常提供详细的日志记录和实时监控功能,使管理员能够实时了解网络流量、攻击尝试和其他安全相关事件。这些日志可以用于安全审计、故障排除和合规性检查。
总之,SCDN不仅通过分布式架构和缓存策略加速了内容传输,还通过一系列安全措施增强了内容的安全性。这些措施包括流量清洗、加密传输、WAF集成、访问控制等,使CDN成为现代互联网架构中不可或缺的一部分,特别是在需要高度安全性和可用性的场景中。不管是CDN还是ADN还是要根据具体的业务情况来做选择,只有这样才能享受其带来的优势。