GamingAnywhere 一:GA初览

翻译 2013年12月04日 22:05:42

写在之前:

    这周开始就急急忙忙的修改CloudStack的使用界面,采用kvm做为hypervisor,然后重新编译生成rpm,制作自动化部署的脚本,今天完成了,然后我喜欢的CloudStack就这样放下了。开始转战Gaming Anywhere,这是一个很新的领域,采用H.264,对我来说是陌生的,前面充满未知,但我就是想静静的弄一个东西,不怕困难,今天是第一天作为这一系列的开始吧,坚持下去。

1. 概览

    Gaming Anywhere是一个开源的云游戏平台。除了开源它还拥有高扩展性、可移植性和可重构性。当前,Gaming Anywhere支持Windows和Linux,还可以被移植到其它例如:OS X(苹果操作系统)和Android系统。表一列出了它最新支持的平台和版本。我们的性能研究证明Gaming Anywhere使用较少的网络流量提供高相应能力和较高的视频质量。Gaming Anywhere的价值在于它的开源性,研究者、服务提供商和游戏玩家可以定制Gaming Anywhere以符合自己的需求。这在其它封闭私有的云游戏平台中是不可能的。

                                                                                                                                             表一:支持的平台

  Windows Linux Mac OS X Android
Server Windows 7+ 支持 支持 -----
Client Windows XP+ 支持 支持 支持
2. 动机

    云游戏已经变得非常流行,例如在2011年的调查显示游戏玩家在电脑游戏、硬件以及其它辅助产品上花费了247.5亿美元,电脑游戏通过Game Box交付或通过互联网下载。游戏玩家必须在物理机上安装游戏才能玩。安装过程变得极度无聊,因为游戏太复杂而计算机硬件和系统软件又非常独立。以暴雪的星级争霸Ⅱ为例,在一台I5的PC机上安装要超过一个小时,另一个小时安装在线的补丁。除此之外,游戏玩家还发现他们的PC机的配置不能使所有的视觉效果达到高速帧率,因此游戏玩家必须反复地升级他们的电脑以便能玩到最新的电脑游戏。

    云游戏是交付高质量的游戏体验的一种比较好的方式,也开启了一项新的商业机遇。在一个云游戏系统中,当游戏玩家利用瘦客户端通过互联网交互的时候,电脑游戏在强大的云服务器上运行。瘦客户端是一种轻量的而且可以被移植到资源受限的平台,比如:移动设备和电视机顶盒。通过云游戏平台,玩家可以随时、随地的玩最新的电脑游戏,而游戏开发者可以为特定的PC配置优化他们的游戏。云游戏巨大的潜力已经被游戏行业公认:1> 市场预测报告显示在2011和2017年间,云游戏市场将会增长9倍。2> 几个云游戏初创公司得到几个先进游戏开发商的支持。

     虽然云游戏对游戏行业来说是一个有前途的方向,但是不通过过多的硬件投资而取得好的用户体验也是面临的一个棘手问题。这是因为玩家很难被取悦,他们同时需要高响应和高的视频质量,但是不想投入太多。因此,服务提供商不得不只是设计满足用户需求的系统,忽略了可扩展性、资源的合理分配。这使得云游戏系统的设计和实现极具挑战性。确实,实时的视频流咋一看似乎是一项成熟的技术,云游戏系统必须执行游戏、获取用户的输入、执行渲染、捕捉、编码、打包、传输、解码以及实时地显示,因此优化变得更加困难。

     幸运地是,许多系统研究人员有新的想法去为游戏玩家提高云游戏体验,为服务提供商降低资本支出以及运营支出。然而,所有现存的云游戏平台私有的封闭的,组织研究人员在真正的云游戏平台上测试他们的想法。因此这些想法往往是通过模拟器或仿真器来测试,更糟的是从来没有被评估发表。因此在游戏行业很少有想法出现在云游戏或高交互分布式系统上。通过媒体研究社区和游戏/软件行业发现这些新想法是一个比较好的渠道,我们推荐Gaming Anywhere,在写这个的时候是第一个开源的云游戏平台。虽然只是初步阶段,我们希望Gaming Anywhere云游戏平台能引起足够的关注,并迅速成长为一个成熟的社区,就像Openflow,它与Gaming Anywhere在不通的领域却有相同的目的。

3. 系统设计

                                         

      Gaming Anywhere的部署场景如上图所示。用户首先通过入口服务器(Portal Servers)登录到系统,它为终端用户提供一个可用的游戏列表。用户可以选择一个比较喜欢的游戏并发送玩的请求,在收到请求后,入口服务器会寻找可用的游戏服务器,并在该服务器上将游戏启动,然后将这台服务器的URL返回给用户。最终,用户连接到游戏服务器开始玩游戏。对于入口服务器来说没有过多的讨论,它就像一个最常见的基于web的服务器,提供一个简单的登录和可用游戏列表给用户。如果登录和发送游戏的请求是从一个定制的客户端发送的,它甚至不需要一个用户界面。操作可以通过标准的HTTP或HTTPS协议来发送。

相关文章推荐

【GamingAnywhere源码分析之知识补充六】Windows多线程信号通信与GA整体框架修改

关于GamingAnywhere整体框架的修改也已经结束了一段时间了,这段时间云游戏项目暂时停滞了,原因是:别的项目组人员不足,上级领导又被boss催的紧,直属上级领导都调去别的组了,so,我也不能幸...

【GamingAnywhere源码分析之知识补充一】静态链接库与动态链接库

云游戏GamingAnyWhere的源码阅读已经有段时间了,由于它是第一款开源的云游戏产品,因此无论是在不通种类游戏的兼容性上,还是实际投入生产(比如:多个用户连接同一台服务器上的游戏,接收到的画面和...

【GamingAnywhere源码分析之知识补充零】Detour开发包之API拦截技术【转载】

原文地址链接:http://bbs.pediy.com/showthread.php?threadid=38759 我们截获函数执行最直接的目的就是为函数增添功能,修改返回值,或者为调试以及性能测试...

【GamingAnywhere源码分析之知识补充五】Windows模拟用户session完成存储权限控制

GA的存储挂载其实在本周三外围工作基本已经完成了,但是在后续这几天开发工作中遇到了一个很大的问题,是关于GA的捕捉模式,很可能有违我们修改GA的初衷。这里具体碰到哪些问题就先不说了,还是先介绍完GA存...

【GamingAnywhere源码分析之知识补充四】C操作Windows AD实现用户身份认证

C操作ldap服务器(这为Windows AD)实现用户身份的认证;RTSP通信协议流程。

【GamingAnywhere源码分析之知识补充二】Windows钩子机制

在写这篇文章的时候先说一下当前的进度,上一篇提到的正在进行的工作中:        1) 以《极品飞车》为例生成支持x64游戏以及采用DirectX11方式启动方式的代码改造;            ...

【人工智能】遗传算法(GA)入门—以求解一元函数最大值的优化问题为例

前言遗传算法有很多优化和变形,本文将从最基本的遗传算法出发,以一个简单的优化问题作为例子来说明遗传算法的代码实现,比较适合已经学了相关理论知识的初学者进行实践学习。一、问题描述用GA求解一元函数的最大...

遗传算法(GA)学习笔记---旅行商问题(TSP)

本文转载自:http://blog.csdn.net/xuyuanfan/article/details/6726477。在此首先对作者表示感谢。(本文是关于遗传算法在”旅行商问题(TSP,Trave...

天嵌TQ_E9卡片电脑移植飞思卡尔yocto L4.1.15_1.0.0_ga 第四篇 新版kernel(L4.1.15-r)移植

现在2015.04版uboot已经真正可以为我们的E9服务了,接下来就是移植内核,其实自3.x以后的新版内核移植起来已经相当省心省力了,主要就是修改dts文件,方便起见,我们还是先把tftp、nfs的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:GamingAnywhere 一:GA初览
举报原因:
原因补充:

(最多只允许输入30个字)