网络优化
随着云上应用场景的多样性趋势和复杂度增加,需要从如下几个方面考虑网络优化方案:
全球化部署优化
用户业务的全球化布局,带来了基础设施的全球化部署需求。阿里云为全球部署的场景提供了云企业网 CEN(Cloud Enterprise Network)和全球加速 GA(Global Accelerator)产品。
CEN是运行在阿里云私有全球网络上的一张高可用网络。云企业网通过转发路由器 TR(TransitRouter)在跨地域专有网络之间,专有网络与本地数据中心间搭建私网通信通道, 支持在地域内定义灵活的互通、隔离、引流策略,帮助您打造一张灵活、可靠、大规模的企业级云上网络。企业版转发路由器实例可以支持100 Gbps 流量转发,支持最多1000个VPC。
全球加速用于覆盖用户全球的网络加速,实现全球网络就近接入,可以减少延迟、抖动、丢包等网络问题对服务质量的影响,为全球终端客户提供高可用和高性能的网络加速服务。因为阿里云拥有遍布全球的网络加速节点,基于阿里云全球传输网络可以将全球化部署的应用的网络质量优化。全球加速实例最大带宽处理能力达4 Gbps,最大并发连接数达100万,典型适用场景包括游戏加速、跨国企业应用加速、互联网应用加速等。
网络路径优化
在公网场景中,如海外流量在公网回中国内地的场景,因为跨境公网质量差导致了拥塞丢包,同时因为无直连回国公网线路导致了延迟高。阿里云提供BGP(多线)精品线路EIP,可以提高国际业务访问质量。相比BGP(多线)线路, BGP(多线)精品线路在为中国内地终端客户(不包括中国内地数据中心)提供服务时,通过运营商精品公网直连中国内地,时延更低,目前精品 EIP 对于亚太区域有较为完整的覆盖。
在就近访问场景中,可以利用CDN将源站资源缓存到阿里云遍布全球的加速节点,当终端用户请求访问和获取源站资源时无需回源,可就近获取CDN节点上已经缓存的资源,提高资源访问速度,同时分担源站压力。
在专线回源场景中,广义上来讲阿里云提供了诸如GA加速IP和Anycast EIP这类产品,让用户及用户的终端能通过公网 IP 就近接入阿里云的POP点,通过阿里云的专线来进行源站回源,解决了跨国互联网线路可能出现的延迟和丢包问题。
混合云网络优化
当用户需要打通本地数据中心 IDC /总部/分支/移动终端等和云上专有网络 VPC 来实现私网互访时,通常有高速通道、VPN和智能接入网关等几种解决方案。整体来看高速通道建立了高速、稳定、安全的私网通信,从性能层面无疑是最佳选择,但由于几种方案适用的场景差异性比较大,简单地横向比较在实践中的意义并不大,具体情况还是需要结合具体场景进行选择。作为连接 IDC 与云上专有网络 VPC 的可选项,基于物理专线的高速通道单链路最大支持100 Gbps的带宽,而基于公网链路加密的 VPN 网络带宽受限于公网IP的带宽,阿里云当前单个IPsec连接支持的带宽规格最大为1000 Mbps。
ECS网络性能优化
在用户业务的网络密集型应用场景中,例如 NFV/SD-WAN、转发网元业务、视频弹幕等,ECS 单实例的性能容量至关重要,随着阿里云软硬件一体的虚拟交换机技术的研发和深化,在ECS第7代网络增强型实例中,依托第四代神龙架构,提供稳定可预期的超高性能,单实例最高支持3000万PPS网络收发包能力和高达100Gbit/s的网络带宽基础。单 ECS 的网络性能代表了用户的算力在云上所能获得的最大的内网和互联网的访问能力,当前阿里云 ECS 单实例提供的网络性能给用户提供丰富的优化选项。
负载均衡性能优化
在网络密集型应用场景中,负载均衡通常作为集群流程的入口,通过将流量分发到不同的后端服务器来扩展应用系统的吞吐能力,并且可以消除系统中的单点故障,提升应用系统的可用性。对于阿里云提供的SLB包括应用型负载均衡ALB(Application Load Balancer) 、网络型负载均衡NLB(Network Load Balancer)和传统型负载均衡CLB(Classic Load Balancer),三者定位不同,ALB 专门面向七层,提供超强的业务处理性能,提供基于内容的高级路由特性,同时是阿里云官方云原生Ingress网关,NLB 是四层负载均衡,支持超高性能和自动弹性能力,单实例可以达到1亿并发连接,CLB 则较为平衡,支持TCP、UDP、HTTP和HTTPS协议,具备良好的四层处理能力,以及基础的七层处理能力。
从性能的优化的层面来看,在处理7层流量的场景中,推荐使用 ALB,单实例最大支持100万QPS,并且能实现自动弹性,处理能力随着业务峰值自动伸缩;在处理4层连接的场景中,推荐使用 NLB,基于NFV虚拟化平台,不依赖物理机,支持弹性和快速扩容等需求,单实例最大支持1亿并发,并且也能实现自动弹性,处理能力随着业务峰值自动伸缩。
针对使用了SSL/TLS加解密这种CPU密集型任务的应用,通过应用型负载均衡ALB(Application Load Balancer)和网络型负载均衡NLB(Network Load Balancer)可以将由服务器处理的SSL/TLS加解密工作前置到负载均衡。当负载均衡器中配置SSL/TLS卸载时,它将负责对来自客户端和发送到客户端的流量进行加密,同时将未加密的流量交付到后端,从而释放后端服务器的CPU资源,以改善客户端的响应时间,同时能够提高证书管理工作的效率。另外,使用支持TCPSSL协议的NLB,可以在超高性能和大规模TLS卸载的场景下,进一步优化应用系统的性能。
使用ALB时,启用HTTP2.0协议,可以复用TCP连接有助于应用系统提高响应速度,并且减少HTTP头部的冗余字段信息节省网络流量。
负载均衡可以将流量分发至不同类型的后端服务,包括ECS、ENI、ECI、函数计算、内网IP地址。结合转发ALB应用转发规则,可以根据不同的用户请求参数(HTTP头部参数、HTTP请求方法、URL路径等)更加灵活的控制应用系统的访问流量。
其次,企业需要考虑应用系统对时延的要求,如果对延迟敏感的应用系统,您可以决定使用NLB,它提供极低的延迟。另外,在设计负载均衡跨可用区高可用时,需要考虑应用系统的时延敏感性。使用跨可用区高可用时,负载均衡会将流量分发至位于不同可用区的后端服务,虽然提高了系统的可靠性,但是会增加一定的时延。
最后,ALB/NLB都提供了相应的监控信息和日志。通过监控和日志您可以了解负载均衡的实时运行状态。例如,您可以使用ALB访问日志来查找哪些请求需要更长的时间才能得到响应,或者哪些后端服务导致了性能问题。