Chapter Four - Communication Architectures Two Players on a LAN 87 Multiplayer Client-Server Systems 90 Multiplayer Client-Server, with Multiple-Server.

Slides:



Advertisements
Similar presentations
Dead Reckoning Objectives – –Understand what is meant by the term dead reckoning. –Realize the two major components of a dead reckoning protocol. –Be capable.
Advertisements

Information Technology Foundations-BIT 112 TECHNOLOGY GUIDE FOUR Basics of Telecommunications and Networks.
Top-Down Network Design Chapter Four Characterizing Network Traffic Copyright 2010 Cisco Press & Priscilla Oppenheimer.
Top-Down Network Design Chapter Four Characterizing Network Traffic Copyright 2010 Cisco Press & Priscilla Oppenheimer.
Peer-to-Peer Support for Massively Multiplayer Games Bjorn Knutsson, Honghui Lu, Wei Xu, Bryan Hopkins Presented by Mohammed Alam (Shahed)
Chapter 2 Network Models.
Computer Networks Computer Networks Term B10 Network Delay Network Delay Performance Problems.
Adapted from Tanenbaum's Slides for Computer Networks, 4e
Lecture 1 Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
Chapter 1 Read (again) chapter 1.
Lecture Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
Larger Site Networks Part2. 2 Ethernet Virtual LANs Hubs versus Switches –Hubs broadcast bits out all ports –Switches usually send a frame out a one port.
Introduction to Multiplayer Network Technology Thomas Lidy.
Lecture 1 Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Marwan Al-Namari Week 1. Teaching Plan: Weeks 1 – 14. Week 1-6 (In week 4 you will have a Quiz No.1). Mid Term Holiday Mid-Term Exam. Week 7-14 (In week.
Connecting LANs, Backbone Networks, and Virtual LANs
Computer Networks Lecture 1 & 2 Introduction and Layer Model Approach Lahore Leads University.
Chapter 4.  Understand network connectivity.  Peer-to-Peer network & Client-Server network  Understand network topology  Star, Bus & Ring topology.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Exercises for Chapter 3: Networking.
LECTURE 9 CT1303 LAN. LAN DEVICES Network: Nodes: Service units: PC Interface processing Modules: it doesn’t generate data, but just it process it and.
Networks and Telecommunications Strategies Dr. Robert Chi Chair and Professor, IS department Chief editor, Journal of Electronic Commerce Research.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
Application Layer CHAPTER 2. Announcements and Outline  Administrative Items  Questions? Recap 1.Introduction to Networks 1.Network Type 2.N etwork.
MV-4474 Virtual Environment Network & Software Architectures Michael Zyda
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
Copyright © 2002 Pearson Education, Inc. Slide 3-1 CHAPTER 3 Created by, David Zolzer, Northwestern State University—Louisiana The Internet and World Wide.
جلسه دهم شبکه های کامپیوتری به نــــــــــــام خدا.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Introduction – Part II.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicITE I Chapter 6 1 Connecting to the Network Networking for Home and Small Businesses – Chapter.
1 Next Few Classes Networking basics Protection & Security.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 2.
Layer 2 Technologies At layer 2 we create and transmit frames over communications channels Format of frames and layer 2 transmission protocols are dependent.
Network Applications and Layered Architectures Protocols OSI Reference Model.
 What is a network and how does it function with computer systems? It is a collection of computers and devices that communicate with one another over.
Introduction Chapter 1. Uses of Computer Networks Business Applications Home Applications Mobile Users Social Issues.
1 Networking Chapter Distributed Capabilities Communications architectures –Software that supports a group of networked computers Network operating.
1 CHAPTER 8 TELECOMMUNICATIONSANDNETWORKS. 2 TELECOMMUNICATIONS Telecommunications: Communication of all types of information, including digital data,
Distributed Virtual Environments Introduction. Outline What are they? DVEs vs. Analytic Simulations DIS –Design principles Example.
Chapter 1 Communication Networks and Services Network Architecture and Services.
Data and Computer Communications Chapter 11 – Asynchronous Transfer Mode.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
1 ECE453 - Introduction to Computer Networks Lecture 1: Introduction.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Connecting to the Network Introduction to Networking Concepts.
1 Pertemuan 5 Networking Models. Discussion Topics Using layers to analyze problems in a flow of materials Using layers to describe data communication.
نظام المحاضرات الالكترونينظام المحاضرات الالكتروني.
Introduction Chapter 1. Business Applications of Networks A network with two clients and one server. Client-Server Model.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
Rehab AlFallaj.  Network:  Nodes: Service units: PC Interface processing Modules: it doesn’t generate data, but just it process it and do specific task.
Top-Down Network Design Chapter Four Characterizing Network Traffic Copyright 2004 Cisco Press & Priscilla Oppenheimer.
11 ROUTING IP Chapter 3. Chapter 3: ROUTING IP2 CHAPTER INTRODUCTION  Understand the function of a router.  Understand the structure of a routing table.
Introduction Chapter 1. Uses of Computer Networks Business Applications Home Applications Mobile Users Social Issues.
Introduction.
Intro to Distributed Systems Hank Levy. 23/20/2016 Distributed Systems Nearly all systems today are distributed in some way, e.g.: –they use –they.
Management Information Systems - Introduction. The telecommunication system Telecommunication System – consists of hardware and software that transmits.
Introduction Chapter 1. Uses of Computer Networks Business Applications Home Applications Mobile Users Social Issues.
Network Topologies for Scalable Multi-User Virtual Environments Lingrui Liang.
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
Network Processing Systems Design
Chapter 9 Introduction To Data-Link Layer 9.# 1
Chapter 1 Communication Networks and Services
Top-Down Network Design Chapter Four Characterizing Network Traffic
CHAPTER 2 Application Layer.
CT1303 LAN Rehab AlFallaj.
Lecture 1 Overview of Communication Networks and Services
Connecting to the Network
Microsoft Virtual Academy
Presentation transcript:

Chapter Four - Communication Architectures Two Players on a LAN 87 Multiplayer Client-Server Systems 90 Multiplayer Client-Server, with Multiple-Server Architectures 94 Peer-to-Peer Architectures 95 Two Players on a LAN 87 Multiplayer Client-Server Systems 90 Multiplayer Client-Server, with Multiple-Server Architectures 94 Peer-to-Peer Architectures 95 Conclusion 98 References 98

Two Players on a LAN Logical architecture --> Message flow Physical architecture --> How is it really wired & how do our messages really flow? Logical architecture --> Message flow Physical architecture --> How is it really wired & how do our messages really flow?

Two Players on a LAN Latency 100 milliseconds100 milliseconds 200 milliseconds200 milliseconds Or what?Or what? How long before we can’t control or react to the other players across the net? This the THE BIG DEAL, IN FACT THE WHOLE DEAL with Net-VEs.How long before we can’t control or react to the other players across the net? This the THE BIG DEAL, IN FACT THE WHOLE DEAL with Net-VEs.Latency 100 milliseconds100 milliseconds 200 milliseconds200 milliseconds Or what?Or what? How long before we can’t control or react to the other players across the net? This the THE BIG DEAL, IN FACT THE WHOLE DEAL with Net-VEs.How long before we can’t control or react to the other players across the net? This the THE BIG DEAL, IN FACT THE WHOLE DEAL with Net-VEs.

Two Players on a LAN DIS Protocol PDU 144 bytes in length and contains the information necessary to manage entity state for the various players.144 bytes in length and contains the information necessary to manage entity state for the various players. Graphics performance - 30 frames per second.Graphics performance - 30 frames per second. DIS Protocol PDU 144 bytes in length and contains the information necessary to manage entity state for the various players.144 bytes in length and contains the information necessary to manage entity state for the various players. Graphics performance - 30 frames per second.Graphics performance - 30 frames per second.

Two Players on a LAN NPSNET-IV Performance with DIS Aircraft 12 PDUs per secondAircraft 12 PDUs per second Ground vehicles 5 PDUs per secondGround vehicles 5 PDUs per second Weapon firing 3 PDUs per secondWeapon firing 3 PDUs per second Fully articulated humans 30 PDUs per second (frame rate)Fully articulated humans 30 PDUs per second (frame rate) Heartbeat PDU every 5 seconds.Heartbeat PDU every 5 seconds. NPSNET-IV Performance with DIS Aircraft 12 PDUs per secondAircraft 12 PDUs per second Ground vehicles 5 PDUs per secondGround vehicles 5 PDUs per second Weapon firing 3 PDUs per secondWeapon firing 3 PDUs per second Fully articulated humans 30 PDUs per second (frame rate)Fully articulated humans 30 PDUs per second (frame rate) Heartbeat PDU every 5 seconds.Heartbeat PDU every 5 seconds.

Two Players on a LAN Some network parameters 56K bps for V.90 modems56K bps for V.90 modems 10 Mbps for our Ethernet LAN (saturates at 70% utilization)10 Mbps for our Ethernet LAN (saturates at 70% utilization) 1.5 Mbps for T-1 lines1.5 Mbps for T-1 lines Some network parameters 56K bps for V.90 modems56K bps for V.90 modems 10 Mbps for our Ethernet LAN (saturates at 70% utilization)10 Mbps for our Ethernet LAN (saturates at 70% utilization) 1.5 Mbps for T-1 lines1.5 Mbps for T-1 lines

Two Players on a LAN How many players can we support? Ethernet LANEthernet LAN V.90 modemsV.90 modems How many players can we support? Ethernet LANEthernet LAN V.90 modemsV.90 modems

Ethernet LAN 7 Mbps of available bandwidth7 Mbps of available bandwidth A PDU is 8 bits/byte times 144 bytes or 1152 bits.A PDU is 8 bits/byte times 144 bytes or 1152 bits. Meaning we can send about 6,076 PDUs per second on our Ethernet LAN.Meaning we can send about 6,076 PDUs per second on our Ethernet LAN. 7 Mbps of available bandwidth7 Mbps of available bandwidth A PDU is 8 bits/byte times 144 bytes or 1152 bits.A PDU is 8 bits/byte times 144 bytes or 1152 bits. Meaning we can send about 6,076 PDUs per second on our Ethernet LAN.Meaning we can send about 6,076 PDUs per second on our Ethernet LAN.

Ethernet LAN If we assume mayhem, all players firing once each second, we can make some statements about the outer bounds of what we can support.If we assume mayhem, all players firing once each second, we can make some statements about the outer bounds of what we can support. –Fully articulated humans (30 PDUs/second) firing once per second (3 PDUs/second) --> we can have 184 humans on such a LAN. If we assume mayhem, all players firing once each second, we can make some statements about the outer bounds of what we can support.If we assume mayhem, all players firing once each second, we can make some statements about the outer bounds of what we can support. –Fully articulated humans (30 PDUs/second) firing once per second (3 PDUs/second) --> we can have 184 humans on such a LAN.

Ethernet LAN Assume all aircraft (12 PDUs/second) firing once per second (3 PDUs), we can have 405 aircraft.Assume all aircraft (12 PDUs/second) firing once per second (3 PDUs), we can have 405 aircraft. Assume all ground vehicles (5 PDUs/second) firing once per second (3 PDUs), we can have 759 ground vehicles.Assume all ground vehicles (5 PDUs/second) firing once per second (3 PDUs), we can have 759 ground vehicles. So we can support between 184 to 759 players on our LAN, assuming away all other usage.So we can support between 184 to 759 players on our LAN, assuming away all other usage. –NPSNET-IV maxed out at about 300 players. Assume all aircraft (12 PDUs/second) firing once per second (3 PDUs), we can have 405 aircraft.Assume all aircraft (12 PDUs/second) firing once per second (3 PDUs), we can have 405 aircraft. Assume all ground vehicles (5 PDUs/second) firing once per second (3 PDUs), we can have 759 ground vehicles.Assume all ground vehicles (5 PDUs/second) firing once per second (3 PDUs), we can have 759 ground vehicles. So we can support between 184 to 759 players on our LAN, assuming away all other usage.So we can support between 184 to 759 players on our LAN, assuming away all other usage. –NPSNET-IV maxed out at about 300 players.

V.90 Modems 56Kbps implies about 48 PDUs/second.56Kbps implies about 48 PDUs/second. –1 human, 3 aircraft or 6 ground vehicles. If we do better than that and make our packets only 22% of that size, we can have 218 PDUs/second.If we do better than that and make our packets only 22% of that size, we can have 218 PDUs/second. –6 humans, 14 aircraft or 27 ground vehicles. 56Kbps implies about 48 PDUs/second.56Kbps implies about 48 PDUs/second. –1 human, 3 aircraft or 6 ground vehicles. If we do better than that and make our packets only 22% of that size, we can have 218 PDUs/second.If we do better than that and make our packets only 22% of that size, we can have 218 PDUs/second. –6 humans, 14 aircraft or 27 ground vehicles.

Multi-Player Client Server - Logical Architecture Servers are bottlenecks! But useful for compression & admin tasksBut useful for compression & admin tasks Servers are bottlenecks! But useful for compression & admin tasksBut useful for compression & admin tasks

Multi-Player Client Server - Physical Arch. on a LAN It might really look like this physically!

Multi-Player Client Server - Physical Arch. - Phone Lines Or this, if we are using phone lines & modems … Think simple video game architectures...Think simple video game architectures... Or this, if we are using phone lines & modems … Think simple video game architectures...Think simple video game architectures...

Multi-Player Client Server with Multiple Servers Or this, if we are using a multiplayer videogame service company...

How many players can we support with a DIS-like architecture?

Peer-to-peer on a LAN Broadcast or multicast? Peer-to-peer - when each player speaks directly to the player/players to whom it needs to communicate state.

Limitations of broadcast Floods the network with packets. All packets must be brought up through the kernel of the operating systems of all players on the net. Even if the packet is not for that machine!Even if the packet is not for that machine! –Thereby wasting CPU time. Floods the network with packets. All packets must be brought up through the kernel of the operating systems of all players on the net. Even if the packet is not for that machine!Even if the packet is not for that machine! –Thereby wasting CPU time.

VE Software Scalability Statement Virtual environment software architectures can exploit wide area multicast communications and entity relationships to partition the virtual world and enable the development of scalable VEs.Virtual environment software architectures can exploit wide area multicast communications and entity relationships to partition the virtual world and enable the development of scalable VEs.

Multicast Multicast services allow arbitrarily sized groups to communicate on a network via a single transmission by the source.Multicast services allow arbitrarily sized groups to communicate on a network via a single transmission by the source. Can internetwork (route over the network layer) with multicast.Can internetwork (route over the network layer) with multicast. Multicast services allow arbitrarily sized groups to communicate on a network via a single transmission by the source.Multicast services allow arbitrarily sized groups to communicate on a network via a single transmission by the source. Can internetwork (route over the network layer) with multicast.Can internetwork (route over the network layer) with multicast.

Areas of interest in the VE In the real world, which virtual environments emulate, entities have a limited “areas of interest”.In the real world, which virtual environments emulate, entities have a limited “areas of interest”. We can exploit this with multicast communications.We can exploit this with multicast communications. Interactions are mediated by an AOIM software layer.Interactions are mediated by an AOIM software layer. In the real world, which virtual environments emulate, entities have a limited “areas of interest”.In the real world, which virtual environments emulate, entities have a limited “areas of interest”. We can exploit this with multicast communications.We can exploit this with multicast communications. Interactions are mediated by an AOIM software layer.Interactions are mediated by an AOIM software layer.

Area of Interest Management (AOIM) Software Layer

Area of Interest Management Partitioning Classes SpatialTemporalFunctionalSpatialTemporalFunctional

Area of interest management is distributed Partition the simulation into workable chunks to reduce computational load on hosts and minimize communications on tail links.Partition the simulation into workable chunks to reduce computational load on hosts and minimize communications on tail links. Distribute partitioning algorithms among hosts.Distribute partitioning algorithms among hosts. Partition the simulation into workable chunks to reduce computational load on hosts and minimize communications on tail links.Partition the simulation into workable chunks to reduce computational load on hosts and minimize communications on tail links. Distribute partitioning algorithms among hosts.Distribute partitioning algorithms among hosts.

Simulation Does partitioning using our architecture reduce bandwidth and computational requirements for large- scale virtual environments?Does partitioning using our architecture reduce bandwidth and computational requirements for large- scale virtual environments? Does the architecture scale and if so how well?Does the architecture scale and if so how well? Does partitioning using our architecture reduce bandwidth and computational requirements for large- scale virtual environments?Does partitioning using our architecture reduce bandwidth and computational requirements for large- scale virtual environments? Does the architecture scale and if so how well?Does the architecture scale and if so how well?

How we did the simulation... We took real world data from the National Training Center from a battle scenario.We took real world data from the National Training Center from a battle scenario. We used a constructive model on the real world data to fill in the player positions and actions.We used a constructive model on the real world data to fill in the player positions and actions. We ran a simulation of our Area of Interest Manager and kept records on the distribution of players among the hexes.We ran a simulation of our Area of Interest Manager and kept records on the distribution of players among the hexes. We took real world data from the National Training Center from a battle scenario.We took real world data from the National Training Center from a battle scenario. We used a constructive model on the real world data to fill in the player positions and actions.We used a constructive model on the real world data to fill in the player positions and actions. We ran a simulation of our Area of Interest Manager and kept records on the distribution of players among the hexes.We ran a simulation of our Area of Interest Manager and kept records on the distribution of players among the hexes.

More simulation analysis... –Peak Multicast traffic around 2Mbits/second, just over T-1 speed (flat for the hex sizes). –Peak at 1,500 players in an area of interest for Multicast. ∆Apparently unbounded number of players (packets) per machine for broadcast, with the app having to deal with these packets. –Peak Multicast traffic around 2Mbits/second, just over T-1 speed (flat for the hex sizes). –Peak at 1,500 players in an area of interest for Multicast. ∆Apparently unbounded number of players (packets) per machine for broadcast, with the app having to deal with these packets.