703 research outputs found

    Distributed game

    Get PDF
    Dissertação de mestrado em Engenharia InformáticaThe demand for online games has risen over the years, expanding multiplayer support for new and different game genres. Among them are Massively Multiplayer Online games, one of the most popular and successful game types in the industry. Nowadays, this industry is thriving, evolving alongside technological advancements and producing billions in revenue, making it an economic importance. However, as the complexity of these games grows, so do the challenges they face when constructing them. This dissertation aims to implement a distributed game, through a proof of concept or an existing game, using a distributed architecture to acquire knowledge in the construction of such complex systems and the effort involved in dealing with consistency, maintaining communication infrastructure, and managing data in a distributed way. It is also intended that this project implements multiple mechanisms capable of autonomously helping manage and maintain the correct state of the system. To evaluate the proposed solution, a detailed analysis is carried out with performance benchmark analysis, stress testing, followed by an examination of its security, scalability, and distribution’s resilience. Overall, the present research work allowed for a greater understanding of the technologies and approaches used in constructing a gaming system, establishing a new set of development opportunities to be further investi gated upon the constructed solution.A procura por jogos online aumentou ao longo dos anos, expandindo o suporte multiplayer para novos e diferentes géneros. Entre estes estão os jogos Massively Multiplayer Online, um dos tipos de jogos mais populares e bem-sucedidos na indústria. Atualmente, esta indústria está a prosperar, evoluindo com os avanços tecnológicos e gerando milhares de milhões em receita, tornando-se uma importância económica. Porém, à medida que a complexidade destes jogos aumenta, também aumenta os problemas encontrados durante a sua construção. Esta dissertação tem como objetivo implementar um jogo distribuído, através de uma prova de conceito ou um jogo existente, usando uma arquitetura distribuída a fim de adquirir conhecimento na construção destes sistemas complexos e o esforço envolvido em lidar com consistência, manter a infraestrutura de comunicação e gerir dados de maneira distribuída. Para isto, é pretendido que este projeto também implemente vários mecanismos capazes de, forma autônoma, ajudar a gerir e manter o correto estado do sistema. Para avaliar o solução proposta, uma análise detalhada é realizada sobre o desempenho, segurança, escalabilidade e resiliência da distribuição do sistema. De forma geral, o presente trabalho de pesquisa permitiu uma maior compreensão das tecnologias e abordagens utilizadas na construção de um sistema de jogos, estabelecendo um novo conjunto de oportunidades de desenvolvimento a serem investigadas sobre a solução construída

    Addressing Automated Adversaries of Network Applications

    Get PDF
    The Internet supports a perpetually evolving patchwork of network services and applications. Popular applications include the World Wide Web, online commerce, online banking, email, instant messaging, multimedia streaming, and online video games. Practically all networked applications have a common objective: to directly or indirectly process requests generated by humans. Some users employ automation to establish an unfair advantage over non-automated users. The perceived and substantive damages that automated, adversarial users inflict on an application degrade its enjoyment and usability by legitimate users, and result in reputation and revenue loss for the application\u27s service provider. This dissertation examines three challenges critical to addressing the undesirable automation of networked applications. The first challenge explores individual methods that detect various automated behaviors. Detection methods range from observing unusual network-level request traffic to sensing anomalous client operation at the application-level. Since many detection methods are not individually conclusive, the second challenge investigates how to combine detection methods to accurately identify automated adversaries. The third challenge considers how to leverage the available knowledge to disincentivize adversary automation by nullifying their advantage over legitimate users. The thesis of this dissertation is that: there exist methods to detect automated behaviors with which an application\u27s service provider can identify and then systematically disincentivize automated adversaries. This dissertation evaluates this thesis using research performed on two network applications that have different access to the client software: Web-based services and multiplayer online games

    Implementing Performance Competitive Logical Recovery

    Full text link
    New hardware platforms, e.g. cloud, multi-core, etc., have led to a reconsideration of database system architecture. Our Deuteronomy project separates transactional functionality from data management functionality, enabling a flexible response to exploiting new platforms. This separation requires, however, that recovery is described logically. In this paper, we extend current recovery methods to work in this logical setting. While this is straightforward in principle, performance is an issue. We show how ARIES style recovery optimizations can work for logical recovery where page information is not captured on the log. In side-by-side performance experiments using a common log, we compare logical recovery with a state-of-the art ARIES style recovery implementation and show that logical redo performance can be competitive.Comment: VLDB201

    OpenGL|D - An Alternative Approach to Multi-user Architecture

    Get PDF
    © Springer-Verlag GmbH Germany, part of Springer Nature 2018. Synchronising state between multiple connected clients can be a challenging task. However, the need to carry this out is becoming much greater as a larger number of software packages are becoming collaborative across a network. Online multiplayer games in particular are already extremely popular but the synchronisation methods and architecture have largely remained the same. OpenGL|Distributed, presented here, aims to provide not only an alternative to this architecture allowing for a greatly simplified development pipeline, but also the opportunity for a number of additional features and design patterns. The architecture provided by OpenGL|D is such that no state information needs to be transferred between clients. Instead, the OpenGL API has been utilised as a platform agnostic protocol. This means that graphical calls can be streamed to each client rather than relying on manual synchronisation of application domain specific data. Initial test results are discussed, including performance evaluation using data from a number of small prototypes developed within a constrained 48-h timeframe. These results are compared and evaluated against a more traditional approach to network multiplayer by id Software’s QuakeWorld client. It should be noted that this article is an extended version of the work we published in the proceedings of the Cyberworlds 2017 conference [1]

    Design of a horizontally scalable backend application for online games

    Get PDF
    Mobile game market is increasing in popularity year after year, attracting a wide audience of independent developers who must endure the competition of other more resourceful game companies. Players expect high quality games and experiences, while developers strive to monetize. Researches have shown a correlation between some features of a game and its likelihood to succeed and be a potential candidate to enter the top grossing lists. This thesis focuses on identifying the trending features found on the current most successful games, and proposes the design of a scalable, flexible and modular backend application which integrates all the services needed for fulfilling the common needs of a mobile online game. A microservice oriented architecture have been used as a basis for the system design, leading to a modular decomposition of features into small, independent, reusable services. The system and microservices design comply with the Reactive Manifesto, allowing the application to reach responsiveness, elasticity, resiliency and asynchronicity. For its properties, the application is suitable to serve on a cloud environment covering the requirements for small games and popular games with high load of traffic and many concurrent players. The thesis, in addition to the application and microservices design, includes a discussion on the technology stack for a possible implementation and recommended setup for three use case scenarios

    Proactive cloud management for highly heterogeneous multi-cloud infrastructures

    Get PDF
    Various literature studies demonstrated that the cloud computing paradigm can help to improve availability and performance of applications subject to the problem of software anomalies. Indeed, the cloud resource provisioning model enables users to rapidly access new processing resources, even distributed over different geographical regions, that can be promptly used in the case of, e.g., crashes or hangs of running machines, as well as to balance the load in the case of overloaded machines. Nevertheless, managing a complex geographically-distributed cloud deploy could be a complex and time-consuming task. Autonomic Cloud Manager (ACM) Framework is an autonomic framework for supporting proactive management of applications deployed over multiple cloud regions. It uses machine learning models to predict failures of virtual machines and to proactively redirect the load to healthy machines/cloud regions. In this paper, we study different policies to perform efficient proactive load balancing across cloud regions in order to mitigate the effect of software anomalies. These policies use predictions about the mean time to failure of virtual machines. We consider the case of heterogeneous cloud regions, i.e regions with different amount of resources, and we provide an experimental assessment of these policies in the context of ACM Framework
    • …
    corecore