云游戏的架构设计和技术实现.pdfVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

云游戏的架构设计和技术实现

这是2017年12⽉我在ECUG上做的⼀次技术享,现在把当时的技术演讲重新做个总结,并附上PPT。有对云游戏技术感兴趣的同学欢迎

交流。

云游戏这个概念⾮常简单,就是我把游戏放到服务器上去运⾏,把游戏渲染出来的的⾳视频画⾯,通过流的形式传送到终端,终端上不再需

要安装游戏,各种终端⽐如说电视、⼿机、PC、平板都可以运⾏。这样我们就不需要关⼼游戏怎么去适配不同的软硬件平台、终端性能够

不够等等这些问题。这个概念本⾝是⾮常好的,在2009年的时候,这个技术就已经出现了,美国有家叫Onlive的公司第⼀个推出云游戏服

务,但是他最终在商业上还是失败了,技术最后被索尼公司收购,并运⽤在PSNow上。云游戏的概念虽然⾮常好,但⾥⾯技术挑战性⾮常

⾼,有⾮常多的技术问题需要解决,那个时代可能还⽐较早,软硬件都还不太成熟,所以最后没有能够成功的商业化。到了现在这个时间点

上,云游戏技术开始慢慢成熟起来,已经具备了商业化的基础。

下⾯是对我们产品的介绍。对云游戏来说,⽤户主要会关⼼延迟问题,玩⼀个对抗性很强的游戏,如果中间卡个⼏百毫秒那肯定受不了,游

戏体验就会⾮常差。所以我们最核⼼的关注点就是要把延迟降低到最⼩、并且把画质保持在⼀个相对可以接受的程度。⽬前我们产品的整体

延迟(从⽤户按下操作按钮到看到画⾯变化)可以控制到50毫秒以下,在这样的延迟⽔平下玩格⽃游戏赛车游戏感觉都是⾮常流畅的,画

⾯可以⽀持到720P/1080P,⽹络带宽只要4兆以上就可以了。我们单台服务器可以⽀持20-50路的并发游戏数量,也就是单台服务器可

以同时为50个玩家提供服务,单个并发⽤户的整体服务器硬件成本在500元左右,可以说是⼀个⾮常有竞争⼒的成本。当年OnLive失败

的主要原因是因为他的硬件成本⾮常⾼,他的⼀台服务器仅能服务⼀个⽤户,单个并发⽤户的成本可能就要上万,在这样的成本⽔平上要实

现商业上的成功是⾮常困难的。⽬前这个项⽬已经在⼩范围的内测,他们主要是toB的业务,为宽带运营商提供增值游戏服务。

第⼀个是实时性

游戏的整体延迟包括了游戏逻辑运算时间、⾳画渲染的时间,加上编码的延时、⽹路传输的延时、客户端解码的延时、客户端向服务端发送

控制信息的延时,云游戏的实时性要达到⼀个可令玩家接受的程度,这个技术挑战是⾮常⾼的,当然也要依靠硬件和⽹络本⾝的性能,如果

没有⾜够的带宽也不可能做到。

第⼆是虚拟化技术

虚拟化在服务端已经⾮常成熟,我们有虚拟机技术以及各种容器技术,但是在桌⾯上就不是那么成熟,普通的虚拟桌⾯不⽀持GPU的虚拟

化,⽽游戏⾮常依赖GPU渲染,若没有GPU的虚拟化就没办法实现云游戏了,所以虚拟化是⼀个很⼤的技术瓶颈。

第三是经济性

每个并发⽤户的服务器硬件成本关系到这个模式能否成功商业化,如果成本超出了⽤户可接受的范围,那就没有办法实现盈利。

最后是运维管理

云游戏的运维管理跟传统的服务器运维管理不⼀样,因为⽤到的服务器硬件不⼀样,同时硬件负载⼜很⾼,这对运维管理提出了新的挑战,

所以在技术上就要解决这些问题。

游戏的运⾏平台⾮常多,各种各样,但是⽐较适合的只有windows平台。Linux平台虽然开放,但是它没有什么游戏⽀持,其他的主机游戏

平台基本都属于封闭技术,微软和索尼⾃⼰都在研发主机上的云游戏,那我们是没有办法去做的。

android平台也是⾮常适合做云游戏。服务器跑个android游戏再传到android设备上这个概念看上去⽐较怪异,但实际上IPTV运营商⾮常

喜欢这个概念,因为机顶盒不允许安装第三⽅的应⽤,监控⽐较严,那我们通过云端化来绕过这种限制,这对机顶盒这种产品⾮常有帮助,

所以android平台也是我们要考虑的。但今天主要是介绍windows平台游戏的虚拟化,android上是⽤硬件⽅案跑的,所以就不介绍了。

windows游戏的虚拟化技术主要是两条路线。⼀个是虚拟机⽅案,但主要问题是GPU虚拟化技术不成熟,可能需要⼀些专业级的显卡⽀

持,成本⾮常⾼、性能损耗⾮常⼤,每⼀个游戏都跑⼀个GuestOS⾮常浪费内存,所以这条⽅案就被我们否掉了。同时windows上也缺

少可⽤的容器级技术,我们只能采取APIHook⽅式⼿⼯实现虚拟化,我们称之为Sandbox⽅案。

Sandbox⽅案就是把游戏所⽤到的系统API全部hook接管,让游戏认为⾃⼰运⾏在⼀个正常的OS上⾯,但实际上是我们接管的⼀个

OS。这样做的好处是性能损耗很⼩,基本上没有额外的损耗,但是⽐较痛苦的要针对每个

文档评论(0)

139****2118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档