Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked.

Slides:



Advertisements
Similar presentations
NetServ Dynamic in-network service deployment Henning Schulzrinne (Columbia University) Srinivasan Seetharaman (Georgia Tech) Volker Hilt (Bell Labs)
Advertisements

Overview Environment for Internet database connectivity
System Area Network Abhiram Shandilya 12/06/01. Overview Introduction to System Area Networks SAN Design and Examples SAN Applications.
MS CRM Integration WhosOn Service Integration Presentation MS CRM User Group.
Netscape Application Server Application Server for Business-Critical Applications Presented By : Khalid Ahmed DS Fall 98.
Reliability on Web Services Presented by Pat Chan 17/10/2005.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
The road to reliable, autonomous distributed systems
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Technical Architectures
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Internet and the web Summary of terms discusses and review.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Cesar Martinez Internetworked Virtual Reality October 2002 Cesar Martinez Internetworked Virtual Reality October 2002 A Distributed Architecture for Supporting.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Virtual Reality & Internet Presenter: Lee Heng Hong.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
A global, public network of computer networks. The largest computer network in the world. Computer Network A collection of computing devices connected.
Holistic Mobile Game Development with Unity 2015 Taylor & Francis. All rights Reserved.
Computer System Architectures Computer System Software
Customized cloud platform for computing on your terms !
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Oracle8 JDBC Drivers Section 2. Common Features of Oracle JDBC Drivers The server-side and client-side Oracle JDBC drivers provide the same basic functionality.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
Copyright © Allyn & Bacon 2008 POWER PRACTICE Chapter 7 The Internet and the World Wide Web START This multimedia product and its contents are protected.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Data Management Kelly Clynes Caitlin Minteer. Agenda Globus Toolkit Basic Data Management Systems Overview of Data Management Data Movement Grid FTP Reliable.
MV-4474 Virtual Environment Network & Software Architectures Michael Zyda
DCOM (Overview) by- Jeevan Varma Anga.
Microsoft DirectPlay  5.0 Ajay Jindal Program Manager.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
SPREAD TOOLKIT High performance messaging middleware Presented by Sayantam Dey Vipin Mehta.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Objectives Functionalities and services Architecture and software technologies Potential Applications –Link to research problems.
Computing Infrastructure for Large Ecommerce Systems -- based on material written by Jacob Lindeman.
TMS320 DSP Algorithm Standard: Overview & Rationalization.
Distributed Computing Systems CSCI 4780/6780. Distributed System A distributed system is: A collection of independent computers that appears to its users.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
1 MMORPG Servers. 2 MMORPGs Features Avatar Avatar Levels Levels RPG Elements RPG Elements Mission Mission Chatting Chatting Society & Community Society.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
CS1001 Lecture 7. Overview Computer Networks Computer Networks The Internet The Internet Internet Services Internet Services Markup Languages Markup Languages.
Web Systems & Technologies Lecture 1
CS223: Software Engineering Lecture 13: Software Architecture.
Electronic Commerce Semester 1 Term 1 Lecture 7. Introduction to the Web The Internet supports a variety of important tools, such as file transfer, electronic.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
CSCD 433/533 Advanced Computer Networks Lecture 1 Course Overview Spring 2016.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Two New UML Diagram Types Component Diagram Deployment Diagram.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Network Topologies for Scalable Multi-User Virtual Environments Lingrui Liang.
JAVA PROGRAMMING Buzzwords. Simple: Less complex syntax than C++ Not as easy to design as Visual Basic Small size of interpreter.
Component Object Model(COM)
Building Distributed Educational Applications using P2P
Distribution and components
Foundations of Networking
Performance and Scalability Issues of Multimedia Digital Library
EE 122: Lecture 22 (Overlay Networks)
Presentation transcript:

Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked VRML Worlds 253 virtual reality transfer protocol 262 VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked VRML Worlds 253 virtual reality transfer protocol 262 Internet Gaming 263 Overview of Online Gaming Services 264Overview of Online Gaming Services 264 Internet Gaming Software Architectures 266Internet Gaming Software Architectures 266 Future Internet Gaming Directions 269Future Internet Gaming Directions 269 Conclusion 271 References 271

VRML-Based Net-VEs Are already dead but the xml/x3d look quite promising...

Internet Game Architectures Overview of Online Gaming Services Internet Gaming Software Architectures Future Internet Gaming Directions Overview of Online Gaming Services Internet Gaming Software Architectures Future Internet Gaming Directions

Excerpt from technical feasibility document to the VCs... XXX has plans to develop a fully-3D web portal. We plan on multiple 3D virtual channels operating in parallel. Each VR channel will have its own content and our customers will be able to smoothly transition between channels via environment selection off of our web presence. There will be entertainment channels, where complex, multiplayer 3D worlds are navigated in adventure fashion. There will be e- commerce channels and 3D storefronts.XXX has plans to develop a fully-3D web portal. We plan on multiple 3D virtual channels operating in parallel. Each VR channel will have its own content and our customers will be able to smoothly transition between channels via environment selection off of our web presence. There will be entertainment channels, where complex, multiplayer 3D worlds are navigated in adventure fashion. There will be e- commerce channels and 3D storefronts.

Excerpt from technical feasibility document to the VCs... The 3D storefronts will allow our customers to examine and purchase products in full 3D. Our virtual storefronts will have the ability to be staffed by knowledgeable clerks able to answer questions via an audio channel inside of the virtual environment. Virtual community channels will be available depending on the synchronicity of customer interests. Our customers will be able to homestead in our virtual communities.The 3D storefronts will allow our customers to examine and purchase products in full 3D. Our virtual storefronts will have the ability to be staffed by knowledgeable clerks able to answer questions via an audio channel inside of the virtual environment. Virtual community channels will be available depending on the synchronicity of customer interests. Our customers will be able to homestead in our virtual communities.

Excerpt from technical feasibility document to the VCs... They will be able to meet with their friends in virtual space for interest area discussions or just chat. Our customers will be able to create their own corner of the virtual space they desire to occupy. We will have virtual education channels where our customers will be able to attend lecturers and presentations in virtual space.They will be able to meet with their friends in virtual space for interest area discussions or just chat. Our customers will be able to create their own corner of the virtual space they desire to occupy. We will have virtual education channels where our customers will be able to attend lecturers and presentations in virtual space.

Chapter Nine - Perspective and Predictions Better Library Support 275 Bamboo 276Bamboo 276 High Level Architecture 279High Level Architecture 279 Java-Based Toolkits 283Java-Based Toolkits 283 Toolkits Being Developed Everywhere Toolkits Being Developed Everywhere Better Library Support 275 Bamboo 276Bamboo 276 High Level Architecture 279High Level Architecture 279 Java-Based Toolkits 283Java-Based Toolkits 283 Toolkits Being Developed Everywhere Toolkits Being Developed Everywhere Toward a Better Internet 285 Research Frontiers 287 Past, Present, and Future 289 References 290

Better Library Support Bamboo High Level Architecture Java-Based Toolkits Toolkits Being Developed Everywhere... Bamboo High Level Architecture Java-Based Toolkits Toolkits Being Developed Everywhere...

Networked Virtual Environments - A Vision Eventually, there will exist a persistent virtual environment simultaneously shared by millions. There can never be a global reboot. All modifications must happen on the fly. The development of participant programs (live & autonomous characters) for that VE must be as simple as writing a web page is today... Eventually, there will exist a persistent virtual environment simultaneously shared by millions. There can never be a global reboot. All modifications must happen on the fly. The development of participant programs (live & autonomous characters) for that VE must be as simple as writing a web page is today...

Requirements for that Vision - Network Software Architecture Extensible/Composable/Interoperable Cross-platform, component frameworksCross-platform, component frameworks Dynamic Behavior ProtocolsDynamic Behavior Protocols Ability to Suspend/Resume State Persistent UniversePersistent Universe Large-Scale/Infinite Number of Players Area of Interest ManagementArea of Interest ManagementExtensible/Composable/Interoperable Cross-platform, component frameworksCross-platform, component frameworks Dynamic Behavior ProtocolsDynamic Behavior Protocols Ability to Suspend/Resume State Persistent UniversePersistent Universe Large-Scale/Infinite Number of Players Area of Interest ManagementArea of Interest Management

NSA Requirements - Extensible, Composable & Interoperable Motivation - Cross-platform, component frameworks The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable. Motivation - Cross-platform, component frameworks The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.

NSA Requirements - Extensible, Composable & Interoperable More Than Just Extending Memory Dynamically loaded modules require a consistent framework in which to plug into.Dynamically loaded modules require a consistent framework in which to plug into. The system must establish a convention such that modules can integrate into already running applications.The system must establish a convention such that modules can integrate into already running applications. More Than Just Extending Memory Dynamically loaded modules require a consistent framework in which to plug into.Dynamically loaded modules require a consistent framework in which to plug into. The system must establish a convention such that modules can integrate into already running applications.The system must establish a convention such that modules can integrate into already running applications. Netscape Portable Runtime Bamboo Kernel Lang-1 Loader Lang-N Loader Lang-2 Loader

Dynamic Behavior Protocols Desire - each entity in the VE able to define its own protocol modules, modules that are dynamically loadable from the web. easy to maintaineasy to maintain always fully implementedalways fully implemented always optimized per individualalways optimized per individual never consumes unused system resourcesnever consumes unused system resources updateable in real-time!updateable in real-time! Desire - each entity in the VE able to define its own protocol modules, modules that are dynamically loadable from the web. easy to maintaineasy to maintain always fully implementedalways fully implemented always optimized per individualalways optimized per individual never consumes unused system resourcesnever consumes unused system resources updateable in real-time!updateable in real-time!

Dynamic Behavior Protocol Architecture Object i Server Object j Client Stub Object k Client Stub Object j Server Object i Client Stub Object k Client Stub Object k Server Object i Client Stub Object j Client Stub

A Three-Tier Approach Seems the Way to Go... Global - An environment registry (help me find an environment i.e. DNS, MAAS)(help me find an environment i.e. DNS, MAAS) Environment - An object registry (what objects are out there?)(what objects are out there?) Object - A module registry (input/output channels)(input/output channels) Global - An environment registry (help me find an environment i.e. DNS, MAAS)(help me find an environment i.e. DNS, MAAS) Environment - An object registry (what objects are out there?)(what objects are out there?) Object - A module registry (input/output channels)(input/output channels)

A Persistent Universe Motivation - By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment.By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment. http Statelets - A platform independent file containing: Names of archived classesNames of archived classes URLs of the modules containing the classesURLs of the modules containing the classes Archived classesArchived classes Motivation - By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment.By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment. http Statelets - A platform independent file containing: Names of archived classesNames of archived classes URLs of the modules containing the classesURLs of the modules containing the classes Archived classesArchived classes

Area of Interest Management - Large-Scale, Infinite Players Multicast and area of interest managers - to facilitate many-to-many communications while using limited bandwidth.

4 Keys to Success for Very Large Virtual Environments Receive only what you need to process. Must be expandable dynamically add new protocols, environmentsdynamically add new protocols, environments Must have the ability to handle ‘crowd’ situations. Low overhead for interest management. Receive only what you need to process. Must be expandable dynamically add new protocols, environmentsdynamically add new protocols, environments Must have the ability to handle ‘crowd’ situations. Low overhead for interest management.

Interest Management Issues Network Latency, BandwidthNetwork Latency, Bandwidth The time to join a multicast group (0.5 seconds typical)The time to join a multicast group (0.5 seconds typical) Multicast Address Space/Allocation --> IPv6Multicast Address Space/Allocation --> IPv6 Number of multicast groups supported by workstation/PC NICsNumber of multicast groups supported by workstation/PC NICs Number of multicast routes supported by network routers.Number of multicast routes supported by network routers. Unreliable nature of large-scale multicast --> Need QoS supportUnreliable nature of large-scale multicast --> Need QoS support Network Latency, BandwidthNetwork Latency, Bandwidth The time to join a multicast group (0.5 seconds typical)The time to join a multicast group (0.5 seconds typical) Multicast Address Space/Allocation --> IPv6Multicast Address Space/Allocation --> IPv6 Number of multicast groups supported by workstation/PC NICsNumber of multicast groups supported by workstation/PC NICs Number of multicast routes supported by network routers.Number of multicast routes supported by network routers. Unreliable nature of large-scale multicast --> Need QoS supportUnreliable nature of large-scale multicast --> Need QoS support

Standards for Interoperability We must be designing standards for interoperability that are as simple to use as writing a web page … So once we have done all the net-VE work on the previous slides, we can then think about standardization...So once we have done all the net-VE work on the previous slides, we can then think about standardization... We must be designing standards for interoperability that are as simple to use as writing a web page … So once we have done all the net-VE work on the previous slides, we can then think about standardization...So once we have done all the net-VE work on the previous slides, we can then think about standardization...

Appendix - Network Communications in C, C++, and Java Using TCP/IP from C and C Managing Concurrent Connections in C and C Using TCP/IP from Java 300 Managing Concurrent Connections in Java 303 Using UDP/IP from C and C Using TCP/IP from C and C Managing Concurrent Connections in C and C Using TCP/IP from Java 300 Managing Concurrent Connections in Java 303 Using UDP/IP from C and C Using UDP/IP from Java 308 Broadcasting from C and C Broadcasting from Java 310 Multicasting from C and C Multicasting from Java 312 References 313

2 3

5 7

10 12

Final

Any questions?