一种基于博弈论的移动云游戏资源优化方法与流程

文档序号:17924300发布日期:2019-06-15 00:18阅读:652来源:国知局
一种基于博弈论的移动云游戏资源优化方法与流程

本发明涉及云游戏技术领域,特别是涉及一种基于博弈论的移动云游戏资源优化方法。



背景技术:

云游戏(cloudgaming)是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都运行在服务器端,并将渲染完毕的游戏画面压缩后通过网络传递给用户。在客户端,用户的游戏设备不需要任何的高端处理器和显卡,只需要基本的解压缩视频的能力就可以连接云服务开始高质量游戏体验。与传统游戏模式相比,云游戏能在很大程度上减小玩家游玩游戏的设备成本。对于许多需要长期更新的高品质游戏而言,云游戏也能减少游戏商发行与更新维护游戏的成本。然而在保证玩家游戏体验上,云游戏与传统游戏相比具有一定差距,主要包括:

(1)游戏交互时延取决于网络通信延迟。与传统网络游戏仅需传输游戏状态数据相比,云游戏的多媒体传输对网络延迟更为敏感,当网络通信质量较差时,玩家会直接感受到从指令输入到画面更新间的延迟较高,从而显著降低玩家游戏体验质量。

(2)游戏场景渲染的多媒体流质量取决于网络通信带宽。与传统网络游戏相比云游戏的多媒体流需要消耗更多带宽,并且画质越高的多媒体流,其消耗的带宽资源也会越高。

在传统的云游戏场景中,在有限资源的情况下,如何高效利用服务器资源以尽可能使得用户获得高质量的服务非常重要,云服务商迫切的需要解决以下两个需求:a.在大规模用户的情况下,根据已有的连接情况,将用户请求如何合理地分配至物理服务器,以实现高资源的利用率及高用户户体验质量qoe(qualityofexperience)。b.对于处于同一地域节点的边缘用户,如何有效利用边缘计算的特性,实现边缘侧的分析,以进一步优化数据中心的请求结构。



技术实现要素:

本发明的目的是针对现有技术中存在的技术缺陷,而提供一种基于博弈论的移动云游戏资源优化方法。

为实现本发明的目的所采用的技术方案是:

一种基于博弈论的移动云游戏资源优化方法,包括:收到用户自云游戏客户端发来的游戏请求后,若云端资源充足,则核心api层调度控制模块给用户分配某一个物理服务器,并在该物理服务器中创建一个虚拟机,随后将用户指定的以镜像方式存储在游戏存储服务器集群中的游戏通过网络文件传输发送到该创建好的虚拟机中并启动该虚拟机,供用户游戏使用;

若云端资源不充足,则进行以下步骤:

s1,数据中心在t时隙内对收到的所有用户的连接请求缓存并由用户获取,由所有用户以竞争方式获得更新云端生成虚拟机的物理服务器的机会;

s2,在一个用户获得令牌后,该用户更新云端虚拟机决策,云数据中心根据云端虚拟机决策计算用户整体体验质量,在整体用户体验质量平衡波动达到预定次数且达到平衡状态,则给所有连接请求按云端虚拟机决策分配游戏连接;

s3,在整体用户体验质量平衡波动达到预定次数且未达到平衡状态时,t时隙加1后返回步骤s1,重复步骤s1-s3,不断迭代,直到达到平衡状态,给所有连接请求按云端虚拟机决策分配完成游戏连接为止。

在用户云游戏过程中,所有用户的输入将经过机器学习检测硬件外挂模块,通过使用机器学习的方式,判断出用户的相应游戏操作是否是有硬件外挂、机器人方式实现,若发现则断开该用户的游戏连接。

所述用户的请求通过使用消息队列组件缓存,等待后端的服务器集群进行计算处理。

与现有技术相比,本发明的有益效果是:

本发明通过使用云计算、边缘计算、博弈论技术,在分布式场景中,对用户连接数据中心云游戏服务的质量进行优化,使得大规模用户并且云端资源有限的情况下,每个用户能够快速确定相互满意的云游戏服务器资源分配方案,并且全局的云游戏服务质量可以达到有限时间内最高。

附图说明

图1是本发明提供的云游戏系统的架构示意图;

图2是本发明提供的云游戏系统的数据中心采用虚拟化方式提供云游戏服务的示意图;

图3是本发明提供的云游戏系统的云游戏平台后端架构图;

图4是移动云游戏无线信道带宽资源争用示意图;

图5本发明提供的云游戏系统的优化控制方法的流程图。

具体实施方式

以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,本发明的基于博弈论的移动云游戏资源优化方法,是基于云游戏系统而实现,云游戏系统包括云游戏服务器,前端连接服务服务器以及云游戏客户端,云游戏客户端用户通过云游戏客户端选择游戏,请求传送到前端连接服务器,前端连接服务器与云游戏服务器通信,进行游戏的配置处理,将用户选择选择游戏的请求传送到云游戏服务器,云游戏服务器根据设置下发游戏到云游戏客户端,供用户使用。

本发明中,主要是运用springmvc后台,hibernate的orm,resetful架构技术实现后台开放接口,并通过swagger开源技术,将接口数据通过分层次的方式展现给不同用户。后台数据库包含两个部分,mysql用来保存云游戏用户的详细状态信息,mongodb记录云游戏服务过程中关键节点事件的日志,每一条日志对应一种状态(包含连接开始、连接断开或正常运行)。对于频繁并且存在生命周期的数据,使用redis内存型数据库进行缓存,以提高处理速度并作为数据中心的缓存支撑。设置有负载平衡系统中根据负载情况进行动态调整,以尽量消除或减少系统中各节点负载不均衡的现象。通过使用各类负载均衡中间件,例如nginx,对来自于客户端的海量连接请求,可以使用负载均衡以减小平台承载压力。通过将过载节点上的任务转移到其他轻载节点上,尽可能实现系统各节点的负载平衡,以减少阻塞的出现,从而提高系统的吞吐量。

对于客户端传给后台的云游戏客户端日志以及位于基站边缘的基站分析日志将会定期打包上传至到云数据中心。使用消息队列activemq中间件作为海量并发日志的缓冲区。消息队列保证了数据能够完整不丢失地发送给后台处理服务器,实现流量的消锋,解决分布式云游戏架构下的高并发问题。

本发明基于上述的技术及架构,在云数据中心在算法上,通过势博弈的方式对云资源进行优化。优化过程是动态变化的,但是考虑到在某一个短暂的时隙内,连接游戏的用户数量为固定的。首先数据中心在时隙t收到所有用户的连接请求并缓存,在下一个时隙t+1,从上个时隙t内申请连接的云游戏客户端,以某种方式竞争机会以获得更新自己决策的机会(例如争夺令牌的方式),都前往数据中心获得除了自身以外的所有其他客户端的云资源选择策略,随后在该用户将在本地根据已有的信息改变自己的云资源选择策略(即选择在哪个物理服务器上生成虚拟机),并在下一个时钟同步t+1截止前,向云数据中心更新自己的策略,在不断的迭代中,最后将达到势博弈的平衡点:nash平衡,用户将整体在有限云资源的情况下,获得相互满意的整体最优方案。

本发明中,首先每个游戏都会以镜像的方式存储在“游戏存储”服务器集群中,当用户选择了自己想玩的游戏之后,“核心api层调度控制”模块会根据博弈的算法,计算出给用户分配某一个位于“服务器簇”中的物理服务器,并在该物理服务器中创建一个虚拟机,随后将用户指定的游戏通过网络文件传输,发送到新创建好的虚拟机中,并启动虚拟机,随后“核心api层调度控制”模块会控制该虚拟机:开机、启动云游戏服务、启动游戏、等待用户接入、成功保持云游戏连接、断开云游戏连接、关闭虚拟机等一系列操作。

此外,在用户云游戏过程中,所有的输入将经过“机器学习检测硬件外挂”模块,通过使用机器学习的方式,判断出用户的相应游戏操作是否是有硬件外挂、机器人方式实现的,若检测出存在,则断开该用户的连接,以确保在云游戏的过程中,保证游戏的公平。

由于云游戏平台存在大量的用户,并且当用户均选择在同一时段连接云游戏服务的话,将会给平台带来非常大的压力,因此,通过使用“负载均衡”组件,将用户的连接压力分配给不同的后端服务器进行处理。

为了保证用户的请求能够有序并且在高并发的情况下得到处理,选择使用“消息队列”组件,缓存用户的请求,等待后端的“服务器集群”进行计算处理,此外,数据存储侧,使用“数据库集群”和“redis集群”来存储的稳健性。

系统在一个时隙t内收到了一定数量的用户连接请求,由于这些请求的目标游戏可能不一致,因此,就存在了根据用户连接,进行算法优化,来减少服务端资源的占用,并帮助用户提高其云游戏的服务质量。

本发明通过使用博弈论,解决了在移动云游戏场景下的数据中心优化问题,帮助数据中心云服务提供商在有限的服务器资源的情况下,能够最大化全局的用户体验质量qoe(qualityofexperience),同时每个用户都会达成相互满意的决策,即nash平衡,考虑移动端、基站和数据中心三个维度,并且将游戏时延、数据中心虚拟机vm(virtualmachine)初始化时间、不同游戏本体对资源的不同需求来量化qoe,解决了云游戏在移动场景下的优化问题,将对游戏产业发展和云积极影响。

本发明的基于势博弈理论的云游戏服务优化方法,在有限的资源情况下,通过使用博弈论的方式,对用户连接的资源进行分配,尽可能地提高每个用户的qoe,并且在用户全局上达到qoe全局和的最优值,解决了数据中心承载众多云游戏用户时导致的用户的相互间干扰问题。

以上所述仅是本发明的优选实施方式,应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1