亚马逊AWS官方博客
Amazon GameTech架构最佳实践系列 —— MOBA/FPS网络加速篇
关于对战游戏,游戏的高质量接入是一个非常关键的话题,本篇我们主要讨论一下MOBA和FPS游戏可以使用哪些服务帮助我们高效实现网络加速的最佳实践。
(1)Global Infrastructure
亚马逊云科技凭借丰富的带宽资源和网络连接,助力游戏行业建设高质量的全球游戏平台,为全球用户提供极致游戏体验。
游戏网络优化概述:
国内游戏公司做出海业务时,常常会面临海外国家更加复杂的网络环境,不同的地区文化和法律法规的要求。游戏公司需要既满足各国玩家跨国对战的要求,又要处理全球数据同步和资源跨区域的弹性调度,给业务上带来了更多挑战。
亚马逊云科技为全球用户提供多种网络加速能力以适配不同游戏类型对于延迟的要求。
- 亚马逊云科技的全球网络基础设施提供26个地理区域,84个可用区和超过310 个接入点,服务全球 245个国家/地区。
- 亚马逊云科技全球区域、可用区和边缘节点之间,均通过自建的跨越大洲和大洋的主干网络连接,主干网络是一种完全冗余的、环绕全球的多个 100GbE 平行光纤,并与数以万计的网络连接。
- 亚马逊云科技提供快速、高度安全且可编程的内容分发网络(CDN)服务 Amazon CloudFront 服务,可用于游戏内容分发,以及 API 加速,可以更低的延迟向终端用户提供游戏内容,玩家可以就近快速获取游戏更新包并加载资源,提升游戏前的等待体验。
- 亚马逊云科技通过AGA(AWS Global Accelerator)为游戏提供TCP/UDP 网络连接的智能流量分配和加速能力。借助亚马逊云科技的全球高速稳定互联的骨干网络。
- 对于要求延迟极低的游戏类型如MOBA,FPS和竞速类型游戏,亚马逊云科技还提供能贴近用户的近距离部署服务,如Local Zones,Outposts和Wavelength。
(2)场景分类
(2.1)延迟要求较宽松:全球同服
- 部署模式:全集中式部署
- 适用场景:
- 平台服/ 中心服与战斗服均部署在同一个 Region,并对来自不同区域的游戏用户同时提供服务
- 适用于对网络延迟要求相对不高的休闲类匹配竞技游戏,如卡牌类游戏、塔防竞技等类型的游戏
- 加速服务:AWS Global Accelerator、Amazon CloudFront
- 服务优势:
- AWS Global Accelerator
- 单区域或多区域应用程序的静态任播IP地址
- 智能流量分配
- 增强的容错能力
- TCP 和 UDP 协议支持
- 即时区域故障转移
- 细粒度的流量控制
- 支持 NLB, ALB 和 EIP 端点
- Amazon CloudFront
- 就近缓存,快速分发
- 减轻源站负担
- 同时支持动态与静态请求的加速
- 支持流式文件
- 支持使用自持SSL证书
- 低TTL(可以低至0秒)
- AWS Global Accelerator
- 方案优势:
-
- 玩家通过 Amazon CloudFront 加速 HTTP API 游戏登录、同时就近节点加速游戏包下载
- 玩家通过 AWS Global Accelerator 加速及优化 TCP/UDP 连接游戏服,网络速度及玩家体验有保障
-
- 架构图:
- 逻辑实现原理:
- 玩家登陆/注册加速场景:
(1)客户端使用 HTTP/TCP 协议发起中心服访问请求
(2)请求就近路由到 CF/AGA 边缘节点
(3)边缘节点经由亚马逊云科技光纤骨干网加速回服
- 游戏加速场景(登录完成后,客户端向游戏服的“任播IP”发起 TCP/UDP 连接请求):
(4) 客户端发起游戏 TCP/UDP 连接请求
(5)基于任播 IP 特性,请求就近路由到 AGA 边缘节点
(6)边缘节点经由亚马逊云科技光纤骨干网加速回服
(2.2)延迟要求比较高:全球同服,区域匹配
- 部署模式:区域性战斗服+中心数据服
- 适用场景:
- 中心服(游戏大厅逻辑服)部署在一个亚马逊云科技 Region
- 在不同国家/地区的亚马逊云科技区域中部署各自独立的游戏服(战斗服)
- 玩家匹配时,根据网络就近原则,选择离玩家延时最小的战斗服务器
- 玩家在各个区域的游戏服对战,数据同步存放到中心服
- 该方案适用于网络延迟要求较高的实时战斗匹配竞技游戏,比如 MOBA类游戏
- 加速服务:AWS Global Accelerator、Amazon CloudFront
- 服务优势:
- AWS Global Accelerator
- 单区域或多区域应用程序的静态任播IP地址
- 智能流量分配
- 增强的容错能力
- TCP 和 UDP 协议支持
- 即时区域故障转移
- 细粒度的流量控制
- 支持 NLB, ALB 和 EIP 端点
- Amazon CloudFront
- 就近缓存,快速分发
- 减轻源站负担
- 同时支持动态与静态请求的加速
- 支持流式文件
- 支持使用自持SSL证书
- 低TTL(可以低至0秒)
- AWS Global Accelerator
- 方案优势:
-
- 玩家通过 Amazon CloudFront 加速 HTTP API 游戏登录、同时就近节点加速游戏包下载
- 玩家通过 AWS Global Accelerator 加速及优化 TCP/UDP 连接游戏服,网络速度及玩家体验有保障
-
- 架构图
- 逻辑实现原理:
- 玩家登录/注册游戏加速场景:
(1)客户端使用 HTTP/TCP 协议发起中心服访问请求
(2)请求就近路由到 CF/AGA 边缘节点
(3)边缘节点经由亚马逊云科技光纤骨干网加速回服
- 游戏加速场景(登录完成后,进行游戏匹配,游戏根据玩家区域及时延分配就近区域游戏服“IP”,即AGA 任播 IP):
(1)客户端发起游戏 TCP/UDP 连接请求
(2)基于任播 IP 特性,请求就近路由到 AGA 边缘节点
(3)边缘节点经由亚马逊云科技光纤骨干网加速回服
(2.3)延迟非常敏感,要求极高:就近/本地部署
- 场景特点
- 游戏大厅逻辑服部署在一个AWS中心区域,战斗服集群分别部署在不同国家/地区的AWS区域;
- 战斗服的分布部署颗粒度要求细化到以省份或州,甚至城市级别,使特定地区玩家以最小延迟体验进行游戏对战。
- 该方案适用于对网络延迟有极高要求的竞速、操控对战、射击类等FPS、MOBA 游戏。
- 亚马逊云科技解决方案:AWS LocalZones、AWS Outposts、AWS Wavelength
- 方案亮点:从根本上缓解最后一公里的接入和延迟问题
- 方案1 AWS Local Zones
- AWS Local Zones将计算、存储、数据库等基础服务放置于离最终用户更近的物理位置。
- 每个 AWS Local Zones都是亚马逊云科技Region的扩展,您可以在其中使用多种亚马逊云科技服务,在靠近终端用户的位置运行您的延迟敏感应用程序。您可以通过相同的 API 和其他工具集无缝地连接到区域内的所有服务。
- 借助 AWS Local Zones,能让最终用户轻松运行“个位数毫秒级延迟”的高要求应用程序,如实时游戏、机器学习。
- 方案2 AWS Outposts
- AWS Outposts 是一项完全托管的服务,可提供与AWS Region相同的 AWS 基础设施、AWS 服务、API 和工具,基本上支持在任何数据中心部署,能实现真正一致的混合部署体验。AWS Outposts 非常适合对延迟非常敏感的实时竞技游戏,也适合于需要进行本地游戏数据处理、游戏玩家数据驻留等游戏业务场景。
- 方案3 AWS Wavelength
- AWS Wavelength方案架构简介
(1)游戏客户端通过5G网络,连接到运营商通讯基站
(2)游戏程序流量首先到达运营商IDC,由部署在AWS Wavelength Zone的战斗服务器进行处理
(3)战斗服务器与游戏中心服的通讯流量,由专用的高带宽网络进行承载,保障低延迟、稳定的通讯环境
-
-
- AWS Wavelength 可让开发人员构建能够为移动设备和最终用户交付个位数毫秒级延迟的应用程序。AWS 开发人员可以将其应用程序部署至 Wavelength 区域。
- 使开发人员能够交付仅需个位数毫秒级延迟的应用程序,例如游戏对战程序和实时游戏直播视频流、边缘机器学习推理以及增强虚拟现实 (AR/VR)业务体验。
- AWS Wavelength 可将 AWS 服务部署至 5G 网络边缘,降低从移动设备连接至应用程序的延迟。
-