Egal Car: A Peer-to-Peer Car Racing Game Synchronized Over Named Data Networking
|
|
|
- Priscilla Griffin
- 10 years ago
- Views:
Transcription
1 NDN, Technical Report NDN-0010, Revision 1: October 2012 Egal Car: A eer-to-eer Car Racing Game Synchronized Over Named Data Networking Zening Qu UCLA REMA Jeff Burke UCLA REMA October 9, 2012 Abstract Multiplayer online games require synchronization mechanisms to maintain game state consistency among all the players. This project explored the use of the emerging collection synchronization primitives in Named Data Networking (NDN) to easily synchronize a simple multiplayer car racing game, Egal Car, in a peer-to-peer fashion. The game was based on a Unity game engine demo application. To implement the experiment, C# bindings usable in Unity were built for ARC s CCNx library, including the new Sync protocol. The impacts of the unordered nature of default CCNx synchronization and unreliable delivery in basic Interest/data exchange were explored. This work will inform an upcoming exploration of how to build a more extensive multiplayer role-playing game using NDN. 1 Introduction One of the most important differences between a multiplayer online game (MOG) and its single-player counterpart is that the former requires a shared virtual world and game state consistency across network-connected players. Consistency ensures that all players in the shared virtual world are able to form a correct understanding of it and have the desired orientation to it. For example, a car racing game should provide each player with a consistent view of all the cars positions in real-time, and there should be no collision between any two views. [email protected] [email protected] 1
2 For a MOG with players distributed over a wide geographic area, delivery of game state updates usually relies on packets transmitted over the Internet. This paper documents the implementation of a simple MOG over a possible future Internet architecture, Named Data Networking (NDN) [9]. In particular, it explores the use of new collection synchronization mechanisms now available in NDN. As discussed below, NDN names data instead of hosts. It has inherent multicast data delivery, caching, content signing, and collection synchronization capabilities that could provide substantial benefits for multiplayer games and distributed simulations. As it relates to these applications, NDN can be regarded as a new datagram delivery service, an alternative to TC/I. However, NDN also has the potential to impact game or simulation design and conceptualization, and to assist implementation and improve performance. By creating a MOG on the NDN testbed, NDN s impact on MOG design and implementation was explored. The simple MOG described here, Egal Car, provides preliminary experience to inform the creation of a more sophisticated game and a test for C# libraries usable with the Unity game engine. Egal Car is a 3D car racing game with a highly detailed track and scenery. Each player has control over one car, which can increase in speed, slow down and alter direction. The cars can collide with each other and with fences along the track. All car movements are simulated by the game s physics engine. Like in other racing games, each player s goal is to win the race. Egal Car is adapted from an open source game template, Unity Car Tutorial [11]. This template provides the necessary graphics and physics modules, but it is a single-player offline game. The project designed and engineered this network module, a synchronization mechanism with the needs of this car racing game in mind. Following are descriptions of the design choices and details of the implementation. Section 2 introduces NDN principles and facts that may inspire MOG design. Sections 3 through 5 discuss MOG design, using Egal Car as a main example. 2 NDN Background NDN retrieves data based on application-defined names rather than host addresses. To retrieve data, the consumer must know the name, instead of the data s location (host address) as in I. NDN communication uses two packet types: Interest and Data. An Interest packet is issued by the receiver to express what set of data is needed. A Data packet is published by the sender in response to an Interest. Both Interest and Data packets use names to identify the data being exchanged (see figure 1). An Interest is satisfied when a Data packet is received with a Content Name that falls within the prefix of the Content Name in the Interest packet. For more detail, see [9]. This project explores higher-level features being made available in NDN for collection synchronization. There are a few general purpose synchronization protocols under development. Among them is the CCNx 1 Synchronization 1 CCNx is an implementation of NDN and an open source project by Xerox ARC. 2
3 Figure 1: Interest packet and Data packet S S C S S S (a) C/S (b) 2 Figure 2: C/S architecture and 2 architecture rotocol (CCNx Sync) [3], which synchronizes collections of named data under a given name prefix. The research examines how it can be used to support game synchronization, as described above. The results show that CCNx Sync can provide significant benefits to MOG development by handling many of the low-level details for maintaining consistency across different instances of the networked game. 3 Architecture There are two main classes of MOG network architectures, client/server (C/S) and peer-to-peer (2). In C/S architectures, all clients directly communicate with a central server, which is the only authorized source of game state updates (see figure 2(a)). In 2 architectures, peers (clients) communicate with each other directly, and each peer computes the latest game state on its own (see figure 2(b)). Typical implementations in major multiplayer online games appear to follow the C/S model using connectionless protocols such as UD. 2 Despite its rarity in implementing major multiplayer online games, it is generally agreed that 2 approaches outperform C/S in scalability, latency 2 Connection-oriented protocols such as TC can also be used; however, others have shown that such protocols may result in severe performance degradation. Thus, they are rarely used by MOGs [7]. 3
4 and robustness [7, 13]. However, in typical I implementations, 2 game network architectures face significant performance limitations. For example, due to limited deployment of I multicast [7], they have higher bandwidth requirements than C/S games. A common scenario is that every player wants to exchange packets with all other players. For example, in Egal Car, every player would benefit from knowing the positions of all the other players cars. When this is implemented by direct communications between all the players, it would lead to an enormous amount of traffic. In a C/S network, on the other hand, the traffic is alleviated because the centralized server plays the role of an information aggregator, and each player communicates with all other players by exchanging packets with the server only. The lack of a central authority in 2 architectures is a more fundamental limitation, making player and update authentication more difficult and cheating easier [13]. 2 architecture was chosen for this project s prototype, Egal Car. NDN makes a 2-based multiplayer game much more feasible. Because NDN has multicast data delivery content caching built-in, it can substantially reduce network traffic in one-to-many scenarios like 2 state distribution. Game state can be obtained by many peers from one or more sources on the network using NDN s inherent multicast and caching. Furthermore, because NDN secures every data packet rather than securing the communication channel as currently done in SSL, cryptographic authentication of signed content objects can be used to alleviate the issues related to cheating. The choice of game architecture greatly impacts other network module design decisions, such as the synchronization mechanism. For example, in C/ S architectures, clients might send certain types of user inputs to the server, and the server would compute the result of the inputs. A client would not compute the result on its own because it has neither the right to compute the next game state nor the information that is sufficient to do so. Instead of claiming, I am three blocks away from my last position now, a client would only tell the server, I want to move three blocks to the north-east, and let the server confirm its new position. On the contrary, with 2 architectures, every peer has the right and the information to compute its own next game state, assuming all the players can maintain consistent game state. This gives more freedom to individual players in deciding what to send to other peers. A peer can choose to send out user inputs, as a client would in C/S architecture, or choose to send out the result of its inputs and ask the other peers to update their information. The later approach has been adopted in Egal Car for synchronizing information about each car s position (see section 4.2). 4 Synchronization In this project, asset synchronization and state synchronization are approached differently to explore the requirements and constraints of slowly and quickly changing data. These two approaches may be combined in future work. 4
5 Below, (1) data are classified as either assets or states; (2) data to be synchronized are identified; and (3) different experimental approaches for asset and state synchronization are defined. 4.1 Namespace The data were identified within a namespace design that accounts for the assets and relevant state of the single-player application used as the basis for Egal Car. According to Knutsson et al. [10], a virtual world is typically comprised of immutable elements (terrain) and mutable elements (players, non-player characters, mutable objects, mutable landscape). The immutable elements are to be installed before gameplay begins, at level changes, and other significant moments. The properties, instantiation and deletion of the mutable elements are to be synchronized in real time. In Egal Car, there are three types of data: 1. the terrain, track, and car graphics, which are immutable, unchanging across peers and thus do not need synchronization; 2. asset creation and deletion, controlled by player login and logout; and 3. synchronized state, which includes properties of the assets as well as global game state. 3 The time between asset updates (player login and logout, in this case) may be measured in seconds or even minutes, but the state changes more regularly and rapidly in the cases being considered. In Egal Car, a car s position, for example, tends to be calculated for every video frame. The time between a car position state update and its successor is usually measured in milliseconds. It is relatively easy to predict the desired frequency of state updates, as this is often guided by game applications frame rates and perceived interaction latency. Figure 3 illustrates Egal Car s namespace, composed of three trees. Each node contains one or more name components. Each path that starts from the root denotes a name. 4 The object tree (figure 3(c)) shows all asset and state names, in blue and red respectively. The root node is composed of the <topological prefix>, where game data can be published, and the game s name, EgalCar. Our instantiation of the application for testing used a <topological prefix> of /ndn/ucla.edu/apps. Other NDN games would use their own values for EgalCar and <topological prefix>. In the figure, the leftmost child of the root shows the namespace for cars in the game. Nodes using this convention (and their children) are dynamically 3 State nodes do not come in and out of existence on their own, but are created and deleted with an asset or game. Conceptually, global game state can be considered properties of a root node. 4 The brackets < > around name components denote that they will be substituted with real values at run time. For example, when Egal Car is executing the actual name might be /ndn/ucla.edu/apps/egalcar/alicecar/123456/transform/position. 5
6 <localhost prefix> <create slice command> <slice hash> (a) Repository Tree <broadcast prefix>/egalcar <root advise command> <node fetch command> <slice hash> <slice hash> <root hash> <responsehash> <response hash> (b) Discovery Tree <topological prefix>/egalcar <Car Name>/<id> anti transform state <Car Name>/<id> position rotation (c) Object Tree Figure 3: The NDN namespace of Egal Car. 6
7 created when a player joins in the game. Since Egal Car is a MOG, there will be more than one <Car Name>/<id> node, as players discover each other (see 4.2). The <id> component, which will be substituted by a random number during run-time, is designed in case there is a name collision in <Car Name>. The right child of the root node is used to indicate that a certain player (car) has quit or disconnected. The anti node and its child nodes are all assets. The remaining nodes are state names, and they are synchronized differently than assets. As stated in Section 2, CCNx Sync can be used to aid multiplayer game development. Egal Car uses its basic features to support asset synchronization, game discovery and player discovery, given the proper namespace design. To do so, two other trees (the Repository Tree and the Discovery Tree) are needed in the namespace. The Repository Tree is a namespace used by each game peer to communicate with its local CCNx repository, where asset data is stored and synchronized by CCNx Sync. <localhost prefix>, the root node of the Repository Tree, confines the communication scope to localhost. The Discovery Tree is the collection of names used by CCNx Sync. Its root node is similar to that of the Game Tree except that it has a broadcast scope (<broadcast prefix>). Since CCNx Sync is used for discoveries, it is important that its packets be broadcast to reach all potential data publishers that may appear anywhere in the network. More details of the Repository Tree and the Discovery Tree follow in Section Asset Synchronization Asset synchronization, specifically player entry and exit, is implemented through the discovery of new objects in the sync tree. The process is discussed in some detail here as Sync is a relatively new primitive in the NDN architecture. When an instance of the application is initialized for the first time, a slice is defined in the local repository [2] that defines the content objects to be synchronized. At that time, two names are provided to the Sync mechanism: the <broadcast prefix> and the <topological prefix>. The first defines CCNx Sync s broadcast namespace to use in communicating with other Sync daemons, while the second is the common prefix of every name in the slice. An application informs its local repository about the creation of a slice by issuing a start write Interest for the slice configuration object. The name used in this process is<localhost prefix>/<create slice command>/<slice hash>. <localhost prefix> confines the packet within the same node; <create slice command> claims the command type; <slice hash> is the SHA-256 hash of the slice configuration object and is used as the name of the slice in the Discovery Tree. Once the slice is created, CCNx Sync broadcasts Root Advise Interests periodically in the <broadcast prefix>. Root Advise Interests have names of the form /<root advise command>/<slice hash>/<root hash>. The <slice hash> identifies the particular collection of names to be synchronized. The <root hash> is a hashed digest of a peer s slice. So, to participate in a given game, an Egal peer will have that game s <slice 7
8 hash> in its Root Advise Interest. Other peers running the same application recognize that peer because they share a <slice hash>. A peer s collection of game assets is represented by its <root hash>. If this <root hash> is the same as that of everyone else s <root hash>, then all peers are in sync. If it is not the same, the other peers would respond to the peer s Root Advise Interest with a Data packet named /<root advise command>/<slice hash>/<root hash>/<response hash>. CCNx Sync uses Node Fetch command and normal Interest/Data packet exchange to then reconcile differences in the collection among peers, updating the repositories to be consistent. To announce the creation of a new player (car) to the network, a content object named <topological prefix>/egalcar/<car Name>/<id> is published by the player s game instance into its local repository. By using <topological prefix>, this content object becomes part of the slice managed by CCNx Sync. The data of this content object are some configuration information of the car (initial position, 3D model s name, player information, etc.). As other peers learn about the newcomer through CCNx Sync, they use the configuration data to instantiate a 3D car model in the given position, and they mark it with the given player information. When a player quits, it writes an anti-asset into its own repository. This provides confirmation of object deletion. (Note that the CCNx repository does not support per-object deletion.) The anti-asset s name would be <topological prefix>/egalcar/anti/<car Name>/<id>, in which the <Car Name> and <id> represent the car that belongs to the quitting player. With CCNx Sync, synchronizing anti-assets is the same as synchronizing assets. eers that learn about the anti-asset destroy the corresponding avatar in their game world. If a player is forced to quit, due to network failure for example, there is no chance to write the anti-asset. In this case, the anti-asset would be written by other peers who remain connected Unordered, reliable synchronization CCNx Sync provides unordered data synchronization, i.e. it may discover assets that are created later before discovering assets that are created earlier. In Egal Car, assets are independent of each other, and there is no causal relationship between asset updates as long as there is an application strategy to know when to begin the car race. Thus CCNx Sync can be used as-is. Future work will consider the tradeoffs between the unordered synchronization strategy, which works in the limited case of Egal Car, and contemporary ordered approaches ([4, 1, 8, 5, 6]) for other game types. These ordered synchronization algorithms trade off delay for ordering, either holding every peer s turn to wait for the correct packet to arrive, or performing a rollback when disordering is detected. These ordered synchronization strategies will be needed for updates that are correlated, but they are not necessary in the Egal Car. Although asset synchronization is unordered, it does need to be reliable. As an example, Alice and Bob must be known by all other peers regardless of potential packet losses. NDN, similar to I, only provides best-effort datagram 8
9 delivery. The reliability in asset synchronization is achieved by CCNx Sync, as the synchronization routine periodically broadcasts Root Advise Interests throughout the lifetime of the game. As soon as any difference between any repositories is detected, CCNx Sync will reconcile the difference. 4.3 State Synchronization In Egal Car, state is a snapshot of a variable (property) associated with an asset or the game instance. In the application namespace, state updates are versioned content objects that are children of a uniquely named asset. For example, state updates of Alice s car use this name.../<alicecar>/<id>/transform/ position/<version> to refer to Alice s position, where <version> is a timestamp. As with asset creation and deletion described above, the states of Alice and Bob will not affect each other:.../<alicecar>/<id>/transform/position updates will not cause.../<bobcar>/<id>/transform/position to change. Note that this does not relate to the case when Alice and Bob interact with each other. Such interactions lead to players state change. A new model for these interactions is being developed for future work Ordered, unreliable updates Egal Car state updates are snapshots rather than change logs. For consistency of visual rendering, they should be ordered, with the most recent state update representing the object state, and undelivered state updates ignored. State synchronization does not need to be reliable as long as there is either no player interaction (global state is deterministic based on player state input) or a facility is available to periodically confirm overall state. Therefore unlike asset synchronization, it is unnecessary, or even undesirable, to use reliable game synchronization algorithms for state synchronization in the Egal Car scenario. When a state update is lost, there is no reason to hamper the game s pace to wait for retransmission in order to achieve an ordered state update or to perform rollbacks, as the latest state is what the gameplay needs. (Again, this is for the limited case of no permanent modification to the asset s behavior happening because of a state update.) Instead of CCNx Sync, NDN s Interest-Data exchange is used directly for state synchronization in Egal Car. Each player s instance issues Interests for the state updates that it wants to follow, and maintains a timestamp floor for each state update series. For example, Alice follows Bob s position by periodically expressing an Interest in.../<bobcar>/<id>/transform/position. To this Interest, NDN nodes may respond with any data matching its prefix, so the Interests must be constructed to obtain the latest child for a given game object prefix. This is achieved by setting selectors in Interest packets appropriately: The rightmost child selector is set, and an exclusion filter is used to exclude data with versions less than or equal to the timestamp floor. The result is that a player may miss some state updates if a newer one has already been published, 9
10 but whatever state reaches the player will be at least later than the previous one received Traffic optimizations State synchronization is what generates the largest amount of traffic in most MOGs [10]. In many cases every player wishes to follow the state of all other players in real time, and every player is expected to exchange several data per second 6 In a 2 network of n players, the number of packets being sent for state synchronization per second (N) can be estimated by N = xf hn(n 1), where x is the number of packets necessary for a state exchange, which is usually greater or equal to two. f is the frequency of state exchange defined by the game application. h is the average number of hops that packets must travel. In I networks, h equals the average distance (in hops) between peers, as each peer is both a data receiver and a data sender. In NDN networks, h will be significantly smaller because most Interest and Data packets do not need to travel from each data publisher to all receivers. Interests for the same data aggregate on their way towards the data publisher, Data packets propagate along a multicast tree, and are cached at each hop [9]. Many Interests need to travel only a few hops to be satisfied by data from cache, or to be combined with an identical Interest. This reduces the average travel distance of packets, and should make NDN games generate much less traffic than I games. Some optimization can be done to the game application s packet contents to further reduce the traffic generated by state synchronization. In Egal Car, the state node in the Game Tree (see figure 3(c)) is designed for such optimization. The state object is a summary of other state updates (transform/position and transform/rotation), and is synchronized instead of its siblings. 5 Implementation Egal Car is developed with Unity, one of the ten most prominent game engines [12]. It is adapted from Unity s single-player car race tutorial [11]. The tutorial s gameplay has been left intact, and the project s network module makes the tutorial a MOG. After implementation, the synchronization for a small number of peers (2-3) was tested, and game play was evaluated. The network modules builds on the CCNx libraries, as illustrated in figure 4. A CCNx daemon named ccnd provides basic Named Data Networking support, such as sending and receiving Interest and Data packets. Asset synchronization requires a local repository, such as CCNx s ccnr, which manages read/write requests to the repository. Finally, CCNx Sync is used to manage repository contents (see section 4). 5 Note that because any NDN node may answer an Interest with cached data, the state that is received may not be globally the latest state, but will at least be later than the timestamp floor given in the exclusion filter. 6 Larger environments may incorporate some type of partitioning if there are a very large number of players. 10
11 EgalCar N etworkm odule Repository CCN xsync CCN xdaemon eer Interest/Data network Figure 4: CCNx components used by Egal Car. N etworkm odule Network Scripts Egal Library CCNx Library Figure 5: The network module s relationship to other libraries. The Egal network module is where asset and state synchronization is implemented. It contains C# scripts for Unity and two C libraries (see figure 5). The network scripts implement the project s synchronization mechanism by invoking functions provided by the Egal library and the CCNx library. CCNx library contains programming interfaces given by the CCNx project. Egal library is based on CCNx library, but it provides some convenient functions for synchronization. The InteropServices of the.net Framework are used to invoke C functions from C# and vice versa. 6 Discussions and Future Work Egal Car is a relatively simple MOG prototype, and the project s synchronization mechanism was easy to develop using NDN collection synchronization. With Egal Car, assets are independent of each other, and they have no explicit interaction. This is why unordered or unreliable synchronization strategies can be applied to the game without hurting its consistency. The project s synchronization mechanism does not apply to game genres that 11
12 have numerous user interactions, such as role-playing games (RG) and real-time strategy games (RTS). Inter-user interactions would lead to state changes and even asset changes. A new model is needed to describe interactions, and a new synchronization strategy would have to be designed (or chosen) to meet its requirements. Studying a new model and synchronization strategy is planned for the future. Egal Car is not an appropriate test for scaling, as it has few asset updates and a limited number of players. To evaluate whether, or by how much, 2 games would be more scalable on NDN than on I in general, new test cases would need to be implemented. Building a multiplayer online role-playing game with more sophisticated asset and state interaction is planned, as is the study of scaling through actual play and simulation. Finally, of special importance to 2 games is the research of game security and cheating-prevention. Since network security in NDN is approached quite differently from that of traditional I networks 7, numerous updates to authentication and anti-cheating mechanisms are expected. 7 Conclusions This project developed straightforward synchronization mechanisms for simple car racing games over NDN, using the CCNx sync protocol and bindings created for the Unity game engine. The mechanism was implemented in a prototype game, Egal Car, and organized into an open-source synchronization library, Egal, to support future NDN game developers. Also explored was the workflow of NDNbased multiplayer game development. Collection synchronization approaches using named data appear to hold promise for streamlining development and performance of multiplayer online games and distributed simulation, especially in terms of simplifying development and deployment of peer-to-peer architecture. For simple games like Egal Car, where updates are independent of each other, default unordered and unreliable synchronization strategies can be used to deliver expected interactivity without hurting consistency. Future work will be required to meet the synchronization requirements of more complex online virtual environments. 8 Acknowledgements Thanks to Alex Horn and Alessandro Marianantoni of REMA for their help testing the sample application, and to Lixia Zhang for feedback on the architecture. 7 In NDN, the emphasis is on securing the data rather than securing the channel as currently done in SSL, for example. Cryptographic authentication of signed content objects and encryption of private data are the two main approaches to be explored in the next game project. 12
13 References [1] R.E. Bryant. Simulation of packet communication architecture computer systems. Technical report, Cambridge, MA, USA, [2] CCNx R Create Collection rotocol. latest/doc/technical/createcollectionrotocol.html. [3] CCNx R Synchronization rotocol. latest/doc/technical/synchronizationrotocol.html. [4] K.M. Chandy and J. Misra. Distributed simulation: A case study in design and verification of distributed programs. Software Engineering, IEEE Transactions on, 5(5): , September [5] E. Cronin, A.R. Kurc, B. Filstrup, and S. Jamin. An efficient synchronization mechanism for mirrored game architectures. Multimedia Tools and Applications, 23(1):7 30, May [6] C. Diot and L. Gautier. A distributed architecture for multiplayer interactive applications on the Internet. In IEEE Network, volume 13, pages 6 15, August [7] S. Ferretti. Interactivity maintenance for event synchronization in massive multiplayer online games. hd thesis, University of Bologna, [8] R.M. Fujimoto. arallel and distributed simulation. In roceedings of Simulation Conference, volume 1, pages , [9] V. Jacobson, D.K. Smetters, and J.D. Thornton. Networking named content. In roceedings of the 5th international conference on Emerging networking experiments and technologies, CoNEXT, pages 1 12, New York, NY, USA, December ACM. [10] B. Knutsson, H. Lu, W. Xu, and B. Hopkins. eer-to-peer support for massively multiplayer games. In Twenty-third AnnualJoint Conference of the IEEE Computer and Communications Societies, volume 1 of INFOCOM, pages xxxv+2866, March [11] Unity TM Car Tutorial. tutorials/car-tutorial. [12] Develop TM : The top 10 game engines revealed, June The-top-10-game-engines-revealed. [13] S.D. Webb and S. Soh. Cheating in networked computer games: a review. In roceedings of the 2nd international conference on Digital interactive media in entertainment and arts, DIMEA, pages , New York, NY, USA, ACM. 13
FileSync/NDN: Peer-to-Peer File Sync over Named Data Networking
FileSync/NDN: Peer-to-Peer File Sync over Named Data Networking Jared Lindblöm 1, Ming-Chun Huang 1, Jeff Burke 2 and Lixia Zhang 1 1. Computer Science Department, University of California, Los Angeles
QoS Issues for Multiplayer Gaming
QoS Issues for Multiplayer Gaming By Alex Spurling 7/12/04 Introduction Multiplayer games are becoming large part of today s digital entertainment. As more game players gain access to high-speed internet
Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications
Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications White Paper Table of Contents Overview...3 Replication Types Supported...3 Set-up &
SwanLink: Mobile P2P Environment for Graphical Content Management System
SwanLink: Mobile P2P Environment for Graphical Content Management System Popovic, Jovan; Bosnjakovic, Andrija; Minic, Predrag; Korolija, Nenad; and Milutinovic, Veljko Abstract This document describes
Fast Synchronization of Mirrored Game Servers: Outcomes from a Testbed Evaluation
Fast Synchronization of Mirrored Game Servers: Outcomes from a Testbed Evaluation Stefano Ferretti, Marco Roccetti, Alessio la Penna Department of Computer Science University of Bologna Mura Anteo Zamboni,
A Survey of MMORPG Architectures
A Survey of MMORPG Architectures Sakib R Saikia March 20, 2008 Abstract This paper discusses the main architectural considerations for a Massively Multiplayer Online Role Playing Games. It outlines the
ZooKeeper. Table of contents
by Table of contents 1 ZooKeeper: A Distributed Coordination Service for Distributed Applications... 2 1.1 Design Goals...2 1.2 Data model and the hierarchical namespace...3 1.3 Nodes and ephemeral nodes...
CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING
CHAPTER 6 CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING 6.1 INTRODUCTION The technical challenges in WMNs are load balancing, optimal routing, fairness, network auto-configuration and mobility
Live Streaming with CCN & Content Transmission with CCNx
Live Streaming with CCN & Content Transmission with CCNx 21 Jun. 2012 Suphakit Awiphan Katto Laboratory, Waseda University Outline Introduces the paper entitled Live Streaming with Content Centric Networking
Peer-to-peer Cooperative Backup System
Peer-to-peer Cooperative Backup System Sameh Elnikety Mark Lillibridge Mike Burrows Rice University Compaq SRC Microsoft Research Abstract This paper presents the design and implementation of a novel backup
How To Monitor Performance On Eve
Performance Monitoring on Networked Virtual Environments C. Bouras 1, 2, E. Giannaka 1, 2 Abstract As networked virtual environments gain increasing interest and acceptance in the field of Internet applications,
An Efficient Hybrid P2P MMOG Cloud Architecture for Dynamic Load Management. Ginhung Wang, Kuochen Wang
1 An Efficient Hybrid MMOG Cloud Architecture for Dynamic Load Management Ginhung Wang, Kuochen Wang Abstract- In recent years, massively multiplayer online games (MMOGs) become more and more popular.
Architecture for a Massively Multiplayer Online Role Playing Game Engine
Architecture for a Massively Multiplayer Online Role Playing Game Engine Sergio Caltagirone [email protected] Bryan Schlief [email protected] Matthew Keys [email protected] Mary Jane Willshire, PhD [email protected]
NDNlive and NDNtube: Live and Prerecorded Video Streaming over NDN
NDN, Technical Report NDN-0031, 2015. http://named-data.net/techreports.html Revision 1: April 30, 2015 1 NDNlive and NDNtube: Live and Prerecorded Video Streaming over NDN Lijing Wang Tsinghua University
Tomás P. de Miguel DIT-UPM. dit UPM
Tomás P. de Miguel DIT- 15 12 Internet Mobile Market Phone.com 15 12 in Millions 9 6 3 9 6 3 0 1996 1997 1998 1999 2000 2001 0 Wireless Internet E-mail subscribers 2 (January 2001) Mobility The ability
Live Streaming with Content Centric Networking
Live Streaming with Content Centric Networking Hongfeng Xu 2,3, Zhen Chen 1,3, Rui Chen 2,3, Junwei Cao 1,3 1 Research Institute of Information Technology 2 Department of Computer Science and Technology
Authoring for System Center 2012 Operations Manager
Authoring for System Center 2012 Operations Manager Microsoft Corporation Published: November 1, 2013 Authors Byron Ricks Applies To System Center 2012 Operations Manager System Center 2012 Service Pack
MODERN buildings rely on state of the art Building
1 Security Evaluation of a Control System Using Named Data Networking Victor Perez, Mevlut Turker Garip, Silas Lam, and Lixia Zhang, Fellow, IEEE Abstract Security is an integral part of networked computer
An Active Packet can be classified as
Mobile Agents for Active Network Management By Rumeel Kazi and Patricia Morreale Stevens Institute of Technology Contact: rkazi,[email protected] Abstract-Traditionally, network management systems
Unicenter Remote Control r11
Data Sheet Unicenter Remote Control r11 Unicenter Remote Control TM is a highly reliable and secure application for controlling and supporting remote Windows and Linux systems. It delivers all of the features
Advanced Peer to Peer Discovery and Interaction Framework
Advanced Peer to Peer Discovery and Interaction Framework Peeyush Tugnawat J.D. Edwards and Company One, Technology Way, Denver, CO 80237 [email protected] Mohamed E. Fayad Computer Engineering
Congestion Control Overview
Congestion Control Overview Problem: When too many packets are transmitted through a network, congestion occurs t very high traffic, performance collapses completely, and almost no packets are delivered
CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012
CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012 Important: The solutions to the homework problems from the course book have been provided by the authors.
A Review on Quality of Service Architectures for Internet Network Service Provider (INSP)
A Review on Quality of Service Architectures for Internet Network Service Provider (INSP) Herman and Azizah bte Abd. Rahman Faculty of Computer Science and Information System Universiti Teknologi Malaysia
Surround SCM Best Practices
Surround SCM Best Practices This document addresses some of the common activities in Surround SCM and offers best practices for each. These best practices are designed with Surround SCM users in mind,
Performance Monitoring on Networked Virtual Environments
ICC2129 1 Performance Monitoring on Networked Virtual Environments Christos Bouras, Eri Giannaka Abstract As networked virtual environments gain increasing interest and acceptance in the field of Internet
White Paper. Enterprise IPTV and Video Streaming with the Blue Coat ProxySG >
White Paper Enterprise IPTV and Video Streaming with the Blue Coat ProxySG > Table of Contents INTRODUCTION................................................... 2 SOLUTION ARCHITECTURE.........................................
Online Transaction Processing in SQL Server 2008
Online Transaction Processing in SQL Server 2008 White Paper Published: August 2007 Updated: July 2008 Summary: Microsoft SQL Server 2008 provides a database platform that is optimized for today s applications,
Comparison of FTP and Signiant
Comparison of FTP and Signiant An In depth Comparison of FTP with Methodologies from Signiant Ian Hamilton, CTO, Signiant Abstract FTP (File Transfer Protocol) is used to perform file transfers over Internet
Certificate Management in Ad Hoc Networks
Certificate Management in Ad Hoc Networks Matei Ciobanu Morogan, Sead Muftic Department of Computer Science, Royal Institute of Technology [matei, sead] @ dsv.su.se Abstract Various types of certificates
Overview of Luna High Availability and Load Balancing
SafeNet HSM TECHNICAL NOTE Overview of Luna High Availability and Load Balancing Contents Introduction... 2 Overview... 2 High Availability... 3 Load Balancing... 4 Failover... 5 Recovery... 5 Standby
CHAPTER 6 SECURE PACKET TRANSMISSION IN WIRELESS SENSOR NETWORKS USING DYNAMIC ROUTING TECHNIQUES
CHAPTER 6 SECURE PACKET TRANSMISSION IN WIRELESS SENSOR NETWORKS USING DYNAMIC ROUTING TECHNIQUES 6.1 Introduction The process of dispersive routing provides the required distribution of packets rather
Sync Security and Privacy Brief
Introduction Security and privacy are two of the leading issues for users when transferring important files. Keeping data on-premises makes business and IT leaders feel more secure, but comes with technical
CHAPTER 6. VOICE COMMUNICATION OVER HYBRID MANETs
CHAPTER 6 VOICE COMMUNICATION OVER HYBRID MANETs Multimedia real-time session services such as voice and videoconferencing with Quality of Service support is challenging task on Mobile Ad hoc Network (MANETs).
Chapter 3. Enterprise Campus Network Design
Chapter 3 Enterprise Campus Network Design 1 Overview The network foundation hosting these technologies for an emerging enterprise should be efficient, highly available, scalable, and manageable. This
Using IPM to Measure Network Performance
CHAPTER 3 Using IPM to Measure Network Performance This chapter provides details on using IPM to measure latency, jitter, availability, packet loss, and errors. It includes the following sections: Measuring
SavvyDox Publishing Augmenting SharePoint and Office 365 Document Content Management Systems
SavvyDox Publishing Augmenting SharePoint and Office 365 Document Content Management Systems Executive Summary This white paper examines the challenges of obtaining timely review feedback and managing
Realtime Multi-party Video Conferencing Service over Information Centric Networks
Realtime Multi-party Video Conferencing Service over Information Centric Networks (Anil Jangam, Ravishankar Ravindran, Asit Chakraborti, Xili Wan, Guoqiang Wang ) University of Maryland, Baltimore County,
LCMON Network Traffic Analysis
LCMON Network Traffic Analysis Adam Black Centre for Advanced Internet Architectures, Technical Report 79A Swinburne University of Technology Melbourne, Australia [email protected] Abstract The Swinburne
Understanding. Active Directory Replication
PH010-Simmons14 2/17/00 6:56 AM Page 171 F O U R T E E N Understanding Active Directory Replication In previous chapters, you have been introduced to Active Directory replication. Replication is the process
MOBILE ARCHITECTURE FOR DYNAMIC GENERATION AND SCALABLE DISTRIBUTION OF SENSOR-BASED APPLICATIONS
MOBILE ARCHITECTURE FOR DYNAMIC GENERATION AND SCALABLE DISTRIBUTION OF SENSOR-BASED APPLICATIONS Marco Picone, Marco Muro, Vincenzo Micelli, Michele Amoretti, Francesco Zanichelli Distributed Systems
P2P VoIP for Today s Premium Voice Service 1
1 P2P VoIP for Today s Premium Voice Service 1 Ayaskant Rath, Stevan Leiden, Yong Liu, Shivendra S. Panwar, Keith W. Ross [email protected], {YongLiu, Panwar, Ross}@poly.edu, [email protected]
Gaming as a Service. Prof. Victor C.M. Leung. The University of British Columbia, Canada www.ece.ubc.ca/~vleung
Gaming as a Service Prof. Victor C.M. Leung The University of British Columbia, Canada www.ece.ubc.ca/~vleung International Conference on Computing, Networking and Communications 4 February, 2014 Outline
Network FAX Driver. Operation Guide
Network FAX Driver Operation Guide About this Operation Guide This Operation Guide explains the settings for the Network FAX driver as well as the procedures that are required in order to use the Network
Implementation of P2P Reputation Management Using Distributed Identities and Decentralized Recommendation Chains
Implementation of P2P Reputation Management Using Distributed Identities and Decentralized Recommendation Chains P.Satheesh Associate professor Dept of Computer Science and Engineering MVGR college of
CipherShare Features and Benefits
CipherShare s and CipherShare s and Security End-to-end Encryption Need-to-Know: Challenge / Response Authentication Transitive Trust Consistent Security Password and Key Recovery Temporary Application
An Overview of ZigBee Networks
An Overview of ZigBee Networks A guide for implementers and security testers Matt Hillman Contents 1. What is ZigBee?... 3 1.1 ZigBee Versions... 3 2. How Does ZigBee Operate?... 3 2.1 The ZigBee Stack...
Implementation of a Lightweight Service Advertisement and Discovery Protocol for Mobile Ad hoc Networks
Implementation of a Lightweight Advertisement and Discovery Protocol for Mobile Ad hoc Networks Wenbin Ma * Department of Electrical and Computer Engineering 19 Memorial Drive West, Lehigh University Bethlehem,
Overview of NFD. Beichuan Zhang The University Of Arizona
Overview of NFD Beichuan Zhang The University Of Arizona What is NFD A new NDN Forwarder, implementing the NDN protocol. Apps, tools, routing, NFD Links and Tunnels L i b r a r y 1 Why NFD To support the
High Availability Essentials
High Availability Essentials Introduction Ascent Capture s High Availability Support feature consists of a number of independent components that, when deployed in a highly available computer system, result
International Journal of Advanced Research in Computer Science and Software Engineering
Volume 2, Issue 9, September 2012 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com An Experimental
International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 349 ISSN 2229-5518
International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 349 Load Balancing Heterogeneous Request in DHT-based P2P Systems Mrs. Yogita A. Dalvi Dr. R. Shankar Mr. Atesh
Four Ways High-Speed Data Transfer Can Transform Oil and Gas WHITE PAPER
Transform Oil and Gas WHITE PAPER TABLE OF CONTENTS Overview Four Ways to Accelerate the Acquisition of Remote Sensing Data Maximize HPC Utilization Simplify and Optimize Data Distribution Improve Business
Technical Bulletin. Enabling Arista Advanced Monitoring. Overview
Technical Bulletin Enabling Arista Advanced Monitoring Overview Highlights: Independent observation networks are costly and can t keep pace with the production network speed increase EOS eapi allows programmatic
Wireless Sensor Networks Chapter 3: Network architecture
Wireless Sensor Networks Chapter 3: Network architecture António Grilo Courtesy: Holger Karl, UPB Goals of this chapter Having looked at the individual nodes in the previous chapter, we look at general
CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENTS
137 CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENTS 8.1 CONCLUSION In this thesis, efficient schemes have been designed and analyzed to control congestion and distribute the load in the routing process of
The Data Grid: Towards an Architecture for Distributed Management and Analysis of Large Scientific Datasets
The Data Grid: Towards an Architecture for Distributed Management and Analysis of Large Scientific Datasets!! Large data collections appear in many scientific domains like climate studies.!! Users and
Network Mobility Support Scheme on PMIPv6 Networks
Network Mobility Support Scheme on PMIPv6 Networks Hyo-Beom Lee 1, Youn-Hee Han 2 and Sung-Gi Min 1 1 Dept. of Computer Science and Engineering, Korea University, Seoul, South Korea. [email protected]
Computer Network. Interconnected collection of autonomous computers that are able to exchange information
Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.
CS335 Sample Questions for Exam #2
CS335 Sample Questions for Exam #2.) Compare connection-oriented with connectionless protocols. What type of protocol is IP? How about TCP and UDP? Connection-oriented protocols Require a setup time to
Kopano product strategy & roadmap
Kopano product strategy & roadmap 11 January 2016 INTRODUCING KOPANO For many years Zarafa has provided software solutions for organising the lives of busy professionals. Emailing and advanced calendaring
How To Create A P2P Network
Peer-to-peer systems INF 5040 autumn 2007 lecturer: Roman Vitenberg INF5040, Frank Eliassen & Roman Vitenberg 1 Motivation for peer-to-peer Inherent restrictions of the standard client/server model Centralised
5. Security in the IPN
1. Introduction 2. Inter-Internet Dialogs 3. Building a stable Backbone for the IPN 4. IPN Nodes 5. Security in the IPN 6. Deployed Internets in the IPN 7. Working conclusions 5. Security 5.1. Introduction
Per-Flow Queuing Allot's Approach to Bandwidth Management
White Paper Per-Flow Queuing Allot's Approach to Bandwidth Management Allot Communications, July 2006. All Rights Reserved. Table of Contents Executive Overview... 3 Understanding TCP/IP... 4 What is Bandwidth
Adapting Distributed Hash Tables for Mobile Ad Hoc Networks
University of Tübingen Chair for Computer Networks and Internet Adapting Distributed Hash Tables for Mobile Ad Hoc Networks Tobias Heer, Stefan Götz, Simon Rieche, Klaus Wehrle Protocol Engineering and
Security Provider Integration LDAP Server
Security Provider Integration LDAP Server 2015 Bomgar Corporation. All rights reserved worldwide. BOMGAR and the BOMGAR logo are trademarks of Bomgar Corporation; other trademarks shown are the property
TOP SECRETS OF CLOUD SECURITY
TOP SECRETS OF CLOUD SECURITY Protect Your Organization s Valuable Content Table of Contents Does the Cloud Pose Special Security Challenges?...2 Client Authentication...3 User Security Management...3
An Instructional Aid System for Driving Schools Based on Visual Simulation
An Instructional Aid System for Driving Schools Based on Visual Simulation Salvador Bayarri, Rafael Garcia, Pedro Valero, Ignacio Pareja, Institute of Traffic and Road Safety (INTRAS), Marcos Fernandez
The Feasibility of Supporting Large-Scale Live Streaming Applications with Dynamic Application End-Points
The Feasibility of Supporting Large-Scale Live Streaming Applications with Dynamic Application End-Points Kay Sripanidkulchai, Aditya Ganjam, Bruce Maggs, and Hui Zhang Instructor: Fabian Bustamante Presented
Postgres Plus xdb Replication Server with Multi-Master User s Guide
Postgres Plus xdb Replication Server with Multi-Master User s Guide Postgres Plus xdb Replication Server with Multi-Master build 57 August 22, 2012 , Version 5.0 by EnterpriseDB Corporation Copyright 2012
Ultimus and Microsoft Active Directory
Ultimus and Microsoft Active Directory May 2004 Ultimus, Incorporated 15200 Weston Parkway, Suite 106 Cary, North Carolina 27513 Phone: (919) 678-0900 Fax: (919) 678-0901 E-mail: [email protected]
SiteCelerate white paper
SiteCelerate white paper Arahe Solutions SITECELERATE OVERVIEW As enterprises increases their investment in Web applications, Portal and websites and as usage of these applications increase, performance
CHAPTER THREE, Network Services Management Framework
CHAPTER THREE, Acronyms and Terms 3-3 List of Figures 3-4 1 Introduction 3-5 2 Architecture 3-6 2.1 Entity Identification & Addressing 3-7 2.2 Management Domain Registration and Information Service 3-7
Quality of Service Management for Teleteaching Applications Using the MPEG-4/DMIF
Quality of Service Management for Teleteaching Applications Using the MPEG-4/DMIF Gregor v. Bochmann and Zhen Yang University of Ottawa Presentation at the IDMS conference in Toulouse, October 1999 This
PRESENTS... Reasons to Switch from SourceSafe: How to Make Your Life Easier with SourceAnywhere Standalone
Standalone PRESENTS... Reasons to Switch from SourceSafe: How to Make Your Life Easier with SourceAnywhere Standalone Most developers are familiar with Visual SourceSafe. It's a popular version control
A Topology-Aware Relay Lookup Scheme for P2P VoIP System
Int. J. Communications, Network and System Sciences, 2010, 3, 119-125 doi:10.4236/ijcns.2010.32018 Published Online February 2010 (http://www.scirp.org/journal/ijcns/). A Topology-Aware Relay Lookup Scheme
Communications and Computer Networks
SFWR 4C03: Computer Networks and Computer Security January 5-8 2004 Lecturer: Kartik Krishnan Lectures 1-3 Communications and Computer Networks The fundamental purpose of a communication system is the
Peer-to-Peer and Grid Computing. Chapter 4: Peer-to-Peer Storage
Peer-to-Peer and Grid Computing Chapter 4: Peer-to-Peer Storage Chapter Outline Using DHTs to build more complex systems How DHT can help? What problems DHTs solve? What problems are left unsolved? P2P
Security Architecture Whitepaper
Security Architecture Whitepaper 2015 by Network2Share Pty Ltd. All rights reserved. 1 Table of Contents CloudFileSync Security 1 Introduction 1 Data Security 2 Local Encryption - Data on the local computer
HDFS Users Guide. Table of contents
Table of contents 1 Purpose...2 2 Overview...2 3 Prerequisites...3 4 Web Interface...3 5 Shell Commands... 3 5.1 DFSAdmin Command...4 6 Secondary NameNode...4 7 Checkpoint Node...5 8 Backup Node...6 9
Chapter 5. Simple Ad hoc Key Management. 5.1 Introduction
Chapter 5 Simple Ad hoc Key Management 5.1 Introduction One of the most important consequences of the nature of the MANET networks is that one cannot assume that a node that is part of a network will be
Ethernet. Ethernet Frame Structure. Ethernet Frame Structure (more) Ethernet: uses CSMA/CD
Ethernet dominant LAN technology: cheap -- $20 for 100Mbs! first widely used LAN technology Simpler, cheaper than token rings and ATM Kept up with speed race: 10, 100, 1000 Mbps Metcalfe s Etheret sketch
VXLAN: Scaling Data Center Capacity. White Paper
VXLAN: Scaling Data Center Capacity White Paper Virtual Extensible LAN (VXLAN) Overview This document provides an overview of how VXLAN works. It also provides criteria to help determine when and where
Protocols and Architecture. Protocol Architecture.
Protocols and Architecture Protocol Architecture. Layered structure of hardware and software to support exchange of data between systems/distributed applications Set of rules for transmission of data between
(Refer Slide Time: 02:17)
Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #06 IP Subnetting and Addressing (Not audible: (00:46)) Now,
Testing Intelligent Device Communications in a Distributed System
Testing Intelligent Device Communications in a Distributed System David Goughnour (Triangle MicroWorks), Joe Stevens (Triangle MicroWorks) [email protected] United States Smart Grid systems
Multimedia Data Transmission over Wired/Wireless Networks
Multimedia Data Transmission over Wired/Wireless Networks Bharat Bhargava Gang Ding, Xiaoxin Wu, Mohamed Hefeeda, Halima Ghafoor Purdue University Website: http://www.cs.purdue.edu/homes/bb E-mail: [email protected]
CHAPTER 7 SUMMARY AND CONCLUSION
179 CHAPTER 7 SUMMARY AND CONCLUSION This chapter summarizes our research achievements and conclude this thesis with discussions and interesting avenues for future exploration. The thesis describes a novel
