云游戏白皮书.pdf
云游戏白皮书华为技术有限公司杭州顺网科技股份有限公司2019 年 12 月1在2019年的新兴产业中,云游戏占有一席之地。游戏行业内,多家国际巨头纷纷向外界释放进军云游戏的信号;游戏行业外,5G和千兆宽带推进如火如荼,云游戏被视为双千兆下重要的应用场景之一。事实上,云游戏并非新生事物,从2000年云游戏的概念提出到现在,已经有近20年的历史,云游戏再次成为热门也并非偶然,在网络和云计算技术不断成熟的助力下,云游戏优势也逐渐突显。近年来,从各种主机游戏到网络端游再到移动手游,游戏终端趋于多样化,游戏玩法也愈加丰富,随之衍生出如电竞赛事、游戏直播等多种行业,全球游戏市场也一直稳健增长。我国是继美国之后全球第二大市场,2019年我国游戏市场总收入将达到365亿美元。而根据中国互联网络信息中心发布的第44次中国互联网络发展状况统计报告显示,截止2019年6月,我国网游用户数达4.94亿,相比 2018 年底增长 972 万户,保持着整体向好的发展态势。除市场表现以外,社会影响对网络游戏也开始转变。国家和地方政策一方面加大监管力度,改善未成年网络游戏环境;另一方面鼓励发展电子竞技,尤其是在2018年,电子竞技被列入雅加达亚运会体育竞技表演项目,我国电竞战队夺得2金1银的优异战绩;英雄联盟2018、2019全球总决赛上,我国电竞队连续夺得冠军,向世界展示了我国电竞的强大实力,刷新了国民对网络游戏的认知,也进一步改变了社会对网络游戏的舆论导向。当然,游戏产业也面临着挑战。一直以来,每当新的游戏大作出现,对电脑主机的配置就要升级一轮,除游戏发烧友以外,对于许多普通玩家和休闲玩家来说,因为游戏而专门升级一台高性能主机大多会考虑性价比。另外,虽然监管力度在持续加大,但不得不承认的是,对于游戏的监管、盗版等问题仍然是行业中比较突出的问题。而云游戏可以降低终端硬件门槛,突破平台限制,实现跨终端、随时随地的 3A 大作游戏体验,并杜绝外挂和盗版,对游戏产业而言是一个巨大进步。双G网络商用和边缘计算的发展标志着时机成熟,云游戏崛起迎来新契机5G话题近两年持续保持高热度,其高速率、低时延的特征深入人心,全球各大运营商加速5G网络建设,吸引各行各业对未来网络都充满期待。在我国,不仅5G开始商用,固定网络上千兆宽带成为国家战略,光纤入户率全球领先,百兆以上的宽带占比超过70%,为云游戏的开展奠定了网络基础。另一方面,云服务正在全球范围演变为基础设施,应用上云大势所趋。云服务提供商加速边缘云部署,云节点位置不断下移,与终端用户的距离正在缩短,为各行各业应用上云提供便利和可能。作为显卡领域的主导厂商,英伟达早早的开始在GPU虚拟化上进行技术投入,并发布了NVIDIA GRID系列产品。而AMD和Intel也不甘落后,在GPU虚拟化上陆续推出产品,GPU虚拟化步入成熟。正是网络和云计算的不断发展,让各大厂商纷纷看到了云游戏崛起的希望。2018 年 5 月,生化危机 7云版本登陆任天堂 Switch 平台。2018 年 10 月,微软发布了基于 Xbox 的云游戏服务“xCloud”。前 言22019 年 1 月,Amazon 收购日本游戏媒体 GameSpark,吹响进军云游戏的号角。2019 年 3 月,谷歌发布云游戏平台 Stadia。2019 年 8 月,腾讯发布云游戏解决方案 START。2019 年 9 月,网易联合华为成立云游戏实验室。2019 年 11 月,华为 iLab 联合顺网发布面向家庭场景云游戏体验指标和目标网络架构。技术准备成熟,网络条件成熟,行业头部玩家涌入,云游戏进入了发展快车道。根据华为iLab实验室前期调研,云游戏每小时 3 至 4 元的收费模式在两年时间内即可实现盈亏平衡。2019 ChinaJoy 展上,顺网科技对外宣布在全国 60 多个城市部署百余个POP节点,面向网咖提供最高2K144 帧、媲美本地PC游戏体验的云游戏服务。优质的云游戏体验离不开云与网络的联动配合,二者缺一不可,云游戏服务商与运营商合作无疑是体验保障的最佳选择。站在时代前端,方案成熟,商业可行,这一次,面向家庭的云游戏必将迎来产业春天。本白皮书重点针对端游云游戏,从端到端解决方案、关键技术以及用户体验、商业模式等多方面进行剖析,旨在激发产业思考,共同繁荣产业生态,加速云游戏成熟商用进程。本白皮书由华为iLab实验室与顺网科技联合撰写发布,在撰写过程中有关内容也得到了Playgiga、Playkey等云游戏合作伙伴的专业支持,在此表示感谢。前 言 1第1章 云游戏基本原理以及分类 41.1 云游戏的基本原理 41.2 云游戏的分类 51.2.1 按计算平台:x86 架构以及 ARM 架构 51.2.2 按串流方式:游戏窗口串流与桌面串流 61.2.3 按资源形态:虚拟机流派与物理机流派 6第2章 云游戏整体架构和端到端技术 72.1 云平台技术 82.1.1GPU 虚拟化与无盘系统 82.1.2 音视频抓取 102.1.3 编码技术 112.1.4 推流技术 122.2 低时延、低抖动的网络传输 122.2.1 全光网络 132.2.2 家庭 Wi-Fi 技术 132.3 终端关键技术 142.3.1 解码技术 142.3.2操作指令收集 14第3章 云游戏体验要素分析与实测 153.1 云游戏体验理论概述 153.1.1 云游戏体验的关键要素 153.1.2 网络对云游戏体验的影响 15目 录3.2 云游戏体验的关键指标 163.2.1 分辨率 173.2.2帧率 173.2.3码率 173.2.4 带宽 183.2.5时延 193.2.6 抖动 203.2.7丢包 21第4章 云游戏商业可行性与商业模式分析 224.1 云游戏产业链 224.2 云游戏产业现状 224.3 云游戏收费模式 244.4 运营商开展云游戏商业模式构想 244.5 运营商开展云游戏案例 254.5.1 运营商 TIM 与 PlayGiga 合作面向家庭发展云游戏业务 254.5.2 运营商 ooredoo 与 PlayGiga 合作面向家庭发展云游戏业务 26第5章 云游戏展望 275.1 云游戏发展的三个阶段 275.2 云游戏对时延和抖动要求的展望 285.3 云游戏对网络要求的展望 305.4 云游戏解决方案展望 31云游戏基本原理以及分类4云游戏将内容的存储、计算和渲染都转移到云端,实时的游戏画面串流到终端进行显示,最终呈现到用户眼中。云游戏又被称为 GaaS(Game as a Service),它将游戏体验变成了一种服务,提供给广大消费者用户,解决了用户不断购买或升级终端的困扰,也避免了下载和更新内容的繁琐,在成本、时间、内容、维护等方面提升了游戏体验的易用性。与本地游戏相比,云游戏增加了抓屏、编码、网络传输、解码等主要过程,即流化过程。区别于端游、页游、手游和主机游戏,云游戏的游戏资源、运行、渲染都在云端完成,相当于用户是在远程玩游戏。第1章 云游戏基本原理以及分类1.1 云游戏的基本原理 端游(客户端游戏)需要先从下载一个游戏客户端到本地硬盘中再运行,其游戏各种场景、人物、动画、图片、音频等各种资源均在本地完成加载,在本地运行游戏的各项逻辑计算和渲染。游戏运行速度、画面效果取决于本地电脑的硬件配置。渲染计算显示输入指令本地游戏渲染计算抓屏编码解码云游戏显示输入指令网络传输图 1-1 云游戏原理示意图表格 1-1 云游戏与端游、页游、手游的对比平台 游戏类型 游戏资源存储在(包括场景、人物、动画、音频等)游戏运行在(包括逻辑计算和渲染等)PC 端游 本地 本地页游 无需安装客户端,打开网页即可进行游戏。但游戏所需的资源和逻辑仍需要提前加载到本地本地移动端 手游 本地 本地游戏主机 主机游戏 本地 本地云游戏 云端 云端云游戏基本原理以及分类5 页游(网页游戏)和小游戏,虽然看起来无须下载和安装客户端,但实际上游戏资源和逻辑均需要在打开网页时加载至本地,因此游戏的运行也是在本地完成。 手游和主机游戏的原理都类似与端游,它们的区别是终端平台不同。 云游戏,本质上是一种基于云计算的远程技术应用,只需将游戏下载到云端服务器上存储并运行,游戏渲染出来的每一帧视频画面,通过网络传送到指定的终端进行解码输出。云游戏和云桌面、远程控制都属于远程技术的应用,技术原理相似,但这三者的侧重点不同。远程控制(例如Teamviewer等),它的被控制方不一定在云端,可以是在家庭、公司的某一台电脑。云游戏和云桌面的计算和存储实体都在云端,但云桌面通常不带GPU。远程控制和云桌面的功能没有针对游戏来设计,都不适合用来玩游戏,而云游戏对游戏功能进行了深度优化,因此能提供优质的游戏体验。从云游戏的原理看,终端只需要进行简单的解码输出和上传玩家操作指令,这里的终端不限于PC、笔记本、平板、手机、电视盒子等设备,因此云游戏大幅减少了对终端性能的要求,只需要具备一定的解码能力。这样带来的好处是,降低游戏终端门槛,可以跨终端和跨平台,使游戏体验更容易、更方便地被获得。市场上为人所知的云游戏虽然原理基本一致,但按照计算平台、串流方式、资源形态等维度看,云游戏之间又存在区别。1.2.1 按计算平台:x86架构以及ARM架构游戏三个主流市场是PC端游、主机游戏、手游,按照计算平台,云游戏同样也可以分两类,x86架构和ARM架构(这里的x86架构和ARM架构是指真正运行游戏的云平台的架构,而非终端的架构)。x86 架构的云平台主要针对于 PC 端游和主机游戏的云化,ARM 架构的云平台主要针对手游的云化。由于PC端游和主机游戏对终端性能的要求更高,云化的需求更加强烈,本白皮书也主要针对云端游进行分析和描述。1.2 云游戏的分类图 1-2 云游戏和远程控制的区别图 1-3 云游戏的主要两种架构X86架构端游云化 ARM架构手游云化Playkey远程控制云桌面 云游戏针对游戏场景的优化更好云游戏基本原理以及分类61.2.2 按串流方式:游戏窗口串流与桌面串流云游戏的产品形态主要有两种,游戏窗口串流和桌面串流。前者的特点是云端仅将游戏窗口内的画面串流至本地,只能用于游戏用途,而后者则是将整个桌面串流至本地,通常会预置各类热门网络游戏(LOL、DOTA2、PUBG 等)和主流游戏平台(WeGame、Steam、Origin 等),用户就像在使用网吧电脑一样。1.2.3 按资源形态:虚拟机流派与物理机流派目前市场上主流两种资源形态,虚拟机流派和物理机流派。虚拟机流派一般采用服务器和专业显卡的云端资源组合,并以虚拟化的方式分配资源,较为灵活。而物理机流派的云端资源以一台台PC形式存在(相当于 PC 农场),显卡为家用游戏显卡,对游戏驱动的适配更好。比较 游戏窗口串流 桌面串流串流内容 指定游戏窗口 整个桌面操作 仅能操作游戏 可进行任何桌面操作操作系统 不可见(但存在) 可见控制面板 不可见(但存在) 可见比较 虚拟机流派 物理机流派云端资源 服务器 + 专业显卡 PC 机 + 家用游戏显卡资源分配 虚拟化分配,1个服务器对多个用户1对1分配优势 资源分配灵活,实例生成及销毁迅速;专业显卡在工艺、可靠性、噪音、散热处理上满足企业级应用要求家用游戏显卡对于游戏驱动的适配更好劣势 硬件成本较高;虚拟化资源的调用时延比物理机的大,导致云游戏的端到端时延偏大;资源分配不够灵活;家用游戏显卡放到机房中可能存在授权风险;家用游戏显卡的可靠性不及专业显卡;典型代表 华为云电脑、达龙云电脑,谷歌 Stadia、Shadow、 英 伟 达GeForce Now、Playgiga 等极云、顺网云电脑,Playkey 等表 1-2 云游戏的两种串流方式表1-3 云游戏的两种主要流派云游戏整体架构和端到端技术7第2章 云游戏整体架构和端到端技术云游戏整体架构由内容层、平台层、网络层、终端层协同构建,如下图所示。内容层主要负责游戏内容源,主要由游戏提供商(Content Provider)提供,从技术角度上,任何端游、主机游戏、手游都可以移植到相同运行环境的云平台上。平台层主要包含业务管理系统和云渲染节点。业务管理系统负责内容、用户、资源的管理,为云游戏业务提供资源的调度和分配。云渲染节点是云游戏的核心之一,负责响应终端的操作指令,实现逻辑计算、实时渲染、流化编码、推流等功能。一般情况下一个业务管理系统可以对多个云渲染节点进行管理。云渲染节点一般需要靠近用户部署。网络层主要涉及骨干网、城域网、接入网和家庭网络,如图2-2所示;也可以用移动承载的方式,如图2-3所示,用5G网络承载云游戏业务。网络层负责连接云平台和终端,其功能是将云端渲染好的画面,实时地、稳定地传输到用户的终端,网络质量与云游戏体验的关系紧密,带宽、时延、抖动、丢包等都会对体验产生影响。图 2-1 云游戏整体架构图 2-2 固定承载网络骨干网 城域网接入网家庭网络ONTOTNOTN云游戏平台MOBA游戏竞速游戏FPS/TPS游戏格斗游戏业务管理系统 云渲染节点固定网络(骨干网、城域网、接入网、家庭网络)PC 机顶盒+ 电视或显示器 PAD或手机动作游戏内容层网络层平台层终端层移动网络(5G 网络)云游戏整体架构和端到端技术8终端层主要由显示设备、游戏操作设备组成,显示设备主要包含PC(台式或者笔记本)、机顶盒与电视、手机、PAD,操作设备包括键盘、鼠标、游戏手柄。终端层是用户接入云游戏的入口,主要接收并解码来自云平台的视频流,并进行显示呈现,同时对接操作输入模块,将操作输入指令上传到云平台。接下来从云平台、网络、终端介绍云游戏的端到端技术。图 2-3 移动承载网络图 2-4 终端设备图 2-5 云平台架构目前云平台的资源管理和调度有两种主流的方案虚拟化方案和物理机方案。(1)虚拟化方案使用服务器和专业显卡的硬件组合,需要对服务器集群、硬件资源等进行虚拟化,CPE5G基站终端云游戏平台5G承载网显示设备输入设备2.1 云平台技术2.1.1 GPU虚拟化与无盘系统云平台需要为每个用户分配独立的云渲染节点,保证每个用户可以独立地进行游戏,互不影响。因此如何将服务器、显卡等硬件资源集群高效管理、合理调度,是云平台的一个关键技术。CPU GPU内存 磁盘 渲染节点1 渲染节点2 渲染节点Nnull用户1 用户2 用户Nnull服务器集群云渲染节点用户云游戏整体架构和端到端技术9图 2-6 GPU 虚拟化架构图 2-7 无盘系统示意图可以按照不同的需求,灵活分配、调度和管理。在云游戏中,虚拟化方案的最大特点是 GPU 虚拟化。在云游戏当中,云端一般使用专业显卡,例如Tesla M60等,如果使用GPU直通,即一个GPU直接供给一个虚拟机单独使用,这种独享方式对于玩游戏而言,资源过于浪费,且成本非常巨大,此时GPU虚拟化非常必要。GPU虚拟化将GPU进行切片分配虚拟机使用,实现多个虚拟机共享一个GPU。GPU切片包含在时间片段上进行的划分,类似于CPU的进程调度,以及对GPU资源进行的划分,例如 16GB 显存划分给多个虚拟机使用,每个虚拟机得到的显存互相独立、不共享。GPU虚拟化可以根据用户的需求,进行动态资源分配,支撑多路游戏的渲染。GPU虚拟化实现了资源共享、动态分配,为资源管理带来极大的便利。但在虚拟化过程中,存在一定的资源损耗,同时产生额外的调度时延,对于时延要求敏感的游戏业务,可能会对体验造成影响。GPU 虚拟化的方案主要有英伟达的 GRID、AMD 的 MxGPU 和 Intel 的 GVT-g。(2)物理机方案一般采用PC农场和家用游戏显卡的硬件组合,由一个业务管理服务器来管理和调度这些硬件资源,每一个PC和显卡组成一个云渲染主机。如果游戏内容都在每一台PC上安装,则管理成本、时间都会随着数量增加而急速增加,一种解决方案是使用无盘系统。无盘系统是一种将计算与存储分离的标准方案,你不需要为每台主机定制操作系统与游戏内容,而是将操作系统与游戏内容以标准化的存储分离方案挂载到每一个云渲染主机中,使用云端的大容量SSD磁盘阵列,能为海量的云渲染主机提供操作系统引导与游戏启动与运行服务。服务器 GPUHypervisor虚拟化软件vGPU vGPU vGPU vGPU驱动 驱动 驱动 驱动VM1 VM2 VM3 家用GPUPC家用GPUPC家用GPUPCnullnull内容服务器SSD磁盘阵列