aspects of networking in
play

Aspects of Networking in Introduction Multiplayer Computer Games - PDF document

Aspects of Networking in Introduction Multiplayer Computer Games Internet + wireless making multiplayer computer games (MCGs) more popular Commercial computer games increasingly J. Smed, T. Kaukoranta and H. Hakonen having mutiplayer


  1. Aspects of Networking in Introduction Multiplayer Computer Games • Internet + wireless making multiplayer computer games (MCGs) more popular • Commercial computer games increasingly J. Smed, T. Kaukoranta and H. Hakonen having mutiplayer option. With servers: – Electronic Arts – Ultima Online The Electronic Library – Blizzard – Battle.net Volume 20, Number 2, Pages 87-97 – Microsoft’s – MSN Gaming Zone • Consoles, too ( PS2 , Xbox ) 2002 • Wireless devices, too ( Nokia NGage ) Other VR Research Efforts Shared Space Technologies • Distributed Interactive Simulations (DIS) – Protocol (IEEE), architectures … (MCG’s) – Ex: flight simulation – Large scale, spread out, many users • Distributed Virtual Environments (DVEs) – Immersive, technology oriented – Ex: “Caves” – Local, few users • Computer Supported Cooperative Work (CSCW) – Focus on collaboration – Ex: 3D editors • And MCGs are similar, yet not discussed in scientific literature � Hence, this paper seeks to rectify Network Resources Outline • Distributed simulations face three • Introduction resource limitations (done) • Networking Resources – Network bandwidth (next) • Distribution Concepts – Network latency • Scalability – Host processing power (to handle network) • Physical restrictions that the system • Security and Cheating cannot overcome • Conclusions – Must be considered in the design of the application • (More on each, next) 1

  2. Transmission Techniques Bandwidth (Bitrate) • Data sent/received per time • LAN – 10 Mbps to 10 Gbps – Limited size and scope • WANs – tens of kbps from modems, to 1.5 Mbps (T1, broadband), to 55 Mbps (T3) • (a) Unicast, one send and one get – Potentially enormous, Global in scope • Number of users, size and frequency of – Wastes bandwidth when path shared • (c) Broadcast, one send and all get messages determines bitrate use • As does transmission technique (next slide) – Perhaps ok for LAN – Wastes bandwidth when most don’t need • (b) Multicast, one send and only subscribed get – Current Internet does not support – Multicast overlay networks Network Latency Computational Power • Delay when message sent until received – Variation (jitter) also matters • Processing to send/receive packets • Cannot be totally eliminated • Most devices powerful enough for raw – Speed of light propagation yields 25-30 ms across Atlantic sending – With routing and queuing, usually 80 ms • Application tolerances: – Can saturate LAN • Rather, application must process state in – File download – minutes each packet – Web page download – up to 10 seconds • Especially critical on resource-constrained – Interactive audio – 100s of ms • MCG latencies tolerance depends upon game devices – First-Person Shooters – 100s of ms – I.e.- hand-held console, cell phone, PDA, – Real-Time Strategy – up to 1 second [SGB+03] – Other games Outline Distribution Concepts • Cannot do much about above resource • Introduction (done) • Networking Resources limitations (done) • Should tackle problems at higher level • Distribution Concepts (next) • Choose architectures for • Scalability – Communication • Security and Cheating – Data • Conclusions – Control • Plus, compensatory techniques to relax requirements 2

  3. Communication Architectures Data and Control Architectures Split-screen All peers equal • Want consistency Console -Easy to - Limited extend players -Doesn’t scale – Same state on each node (LAN only) – Needs tightly coupled, low latency, small nodes • Want responsiveness – More computation locally to reduce network – Loosely coupled Server pool • In general, cannot do both. Tradeoffs. -Improved scalability -More complex One node server - Clients only to server -Server may be bottleneck Relay Architecture Choices “Relay” Architecture Abstraction (Example: Dumb terminal, send and wait for response) • Want control to propagate quickly so can update data (responsiveness) • Want to reflect same data on all nodes (Example: Smart terminal, (consistency) send and echo) MCG Architectures Compensatory Techniques • Centralized • Architectures alone not enough – Use only two-way relay (no short-circuit) • Design to compensate for residual – One node holds data so view is consistent at all times • Techniques: – Lacks responsiveness • Distributed and Replicated – Message aggregation – Interest management – Allow short-circuit relay – Dead reckoning – Replicated has copies, used when predictable (ie- non-player characters) (next) – Distributed has local node only, used when unpredictable (ie- players) 3

  4. Message Aggregation Interest Management – Auras (1) • Combine multiple messages in one packet to • Nodes express area of interest to them reduce network overhead – Do not get messages for outside areas • Examples – Multiple user commands to server (move and - Only circle sent even if shoot) world is larger. - But implementation – Multiple users command to clients (player complex A’s and player B’s actions to player C) Interest Management- Focus and Interest Management- Auras (2) Nimbus - Divide into cells (or hexes). - Compute bounding box - Easier, but less discriminating - Relatively easy, precise • Always symmetric – both receive - nimbus must intersect with focus to receive -Example above: hider has smaller nimbus, so seeker • But can sub-divide – Focus and Nimbus cannot see, while hider can see seeker since Seeker’s nimbus intersects hider’s focus Dead Reckoning Outline • Based on ocean navigation techniques • Predict position based on last known position plus direction • Introduction (done) – Can also only send updates when deviates past a • Networking Resources threshold (done) (predicted position) • Distribution Concepts (done) • Scalability (next) (“warp”) • Security and Cheating • Conclusions (actual position) • When prediction differs, get “warping” or “rubber-banding” effect 4

  5. Serial and Parallel Execution Scalability • Given time T(1), speedup with n • Ability to adapt to resource changes nodes • Example: • Part of T(1) is serializable, part is parallel • T s + T p = T(1) and α = T s /(T s + T p ) – Expand to varying number of players • If serialized optimally: – Allocate non-player computation among (Amdahls’ law) nodes • Need hardware parallelism that enables software concurrency •If T s = 0, everything parallelizable but then no communication (ex: players at own console with no interaction) •If T p = 0, then turn based •Between are MCGs which have some of both Serial and Parallel MCGs Communication Capacity • Scalability limited by communication requirements of chosen architecture Separate games (Multicasting) Turn-based games • Can consider pool of m servers with n clients divided evenly amongst them Interactive • Servers in hierarchy have root as bottleneck games • In order not to increase with n , must have clients not aware of other clients (interest management) and do message aggregation Outline Security and Cheating • Introduction • Unique to games (done) • Networking Resources (done) – Other multi-person applications don’t have • Distribution Concepts – In DIS, military not public and considered (done) • Scalability trustworthy (done) • Cheaters want: • Security and Cheating (next) • Conclusions – Vandalism – create havoc (relatively few) – Dominance – gain advantage (more) 5

  6. Packet and Traffic Tampering Preventing Packet Tampering • Reflex augmentation - enhance cheater’s • Cheaters figure out by changing bytes and reactions – Example: aiming proxy monitors opponents observing effects movement packets, when cheater fires, – Prevent by MD5 checksums (fast, public) improve aim • Still cheaters can: • Packet interception – prevent some packets – Reverse engineer checksums from reaching cheater – Attack with packet replay – Example: suppress damage packets, so • So: cheater is invulnerable • Packet replay – repeat event over for – Encrypt packets – Add sequence numbers (or encoded sequence added advantage numbers) to prevent replay – Example: multiple bullets or rockets if otherwise limited Information Exposure Design Defects • Allows cheater to gain access to replicated, hidden • If clients trust each other, then if client is game data (i.e. status of other players) replaced and exaggerates cheater effects, – Passive, since does not alter traffic others will go along – Example: defeat “fog of war” in RTS, see through – Can have checksums on client binaries walls in FPS • Cannot be defeated by network alone – Better to have trusted server that puts • Instead: into play client actions (centralized server) • Distribution may be the source of – Sensitive data should be encoded unexpected behavior – Kept in hard-to-detect memory location – Features only evident upon high load (say, – Centralized server may detect cheating (example: latency compensation technique) attack enemy could not have seen) • Harder in replicated system, but can still share – Example: Madden Football Conclusion Future Work • Overview of problems with MCGs • Other distributed systems solutions • Connection to other distributed systems • Cryptography • Practitioners should be encouraged to – Networking resources participate – Distribution architectures – Scalability – Security 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend