Networked 3-D Virtual Collaboration in Science and Education ......Networked 3-D Virtual...
Transcript of Networked 3-D Virtual Collaboration in Science and Education ......Networked 3-D Virtual...
Networked 3-D Virtual Collaboration in Science and Education: Towards ‘Web 3.0’
(A Modeling Perspective)
Michael Devetsikiotis Professor of Electrical & Computer Engineering
North Carolina State University [email protected]
http://www4.ncsu.edu/~mdevets
Collaborators: Mitzi Montoya, George Michailidis NC State Team: Michael Kallitsis, Vineet Kulkarni,
Ioannis Papapanagiotou, Nilesh Gavaskar, Yan Wang
• Main themes: – Services dominate (“service oriented networks”?) – Ubiquitous social nets and virtual collaboration – Distributed and virtualized delivery (the “cloud”) – Convergence: telecom - services - infrastructure
• Horizontal integration and fixed-to-wireless convergence • NGN, IMS/SIP, web services: middleware meets the telcos
• New apps: p2p, virtual worlds, social nets, games, virtual collaboration, tele-presence, Web 2.0,…
• Emerging “application content infrastructure” • All via next generation communication networks
Strategic Trends and Overview
• Our larger goals: – Capture “presence” and location awareness – Quantify socio-technical interactions – Characterize workload spatially and temporally – Optimize over multiple resources, across layers
Overview: Service Oriented Networks
SON and Convergent Nets
Workload Aggregation and Distributed
Delivery
Social Apps and Virtual Collaboration
“Cloud”
• Service Oriented Networking
• Resource optimization in net appliances
• Virtual collaboration environments and socio-technical modeling
• Resource optimization in clouds and wireless
• Aggregation architectures and traffic models
Research Topics
Services in Networks and Economy • Over 70% of advanced economies today in services • Components becoming “commodities” • Applies to telecom and IT sectors too • Services are about “co-production” and “innovation” • A new “Service Sciences” discipline is emerging • Both human level and software/middleware
Business/Economics
Competition
Technology/Resources
Congestion, QoS
Services/Innovation
Flexibility
• Definition
– Service-Oriented Networking (SON): emerging network architecture gaining IT efficiency by providing intelligent functionality in the network fabric, previously unavailable or impractical to implement.
• Details
– Application awareness in the network fabric is key – Challenges end-to-end principle of networks (“don’t
touch the payload”) – Assumes that the network can make intelligent
decisions based on application data – Revisits earlier research in application-aware networks – NGN standards make architecture more flexible
• Offload services into the network fabric that can leverage specialized hardware (cryptographic or XML processing ASIC/FPGA)
• In this example, the network offers a value added service of securing SOAP/XML requests and responses inline
• In certain situations, the network could provide a full offload of endpoint services (e.g., caching stock prices), and would be managed by a caching policy
• Content-based routing typically involves applying a rule against some part of a service request (header or content) to derive a token as a result.
• This token is then used to make a routing decision
• In this example, where requests are XML messages, we utilize XPath to extract the appropriate routing token
• This value-added service can be used to enable service partitioning (higher efficiency)
• Robustness
– Admission Control – Load Scheduling
• Resource Allocation
– Concurrency Architectures
• Security
– Concurrency Architectures
• Performance Optimization
– Effectively leverage hardware co-processors
– Scalability of the network with network entities
– Adaptation of network to changes in state
– Distributed policy-driven dissemination of network management data between nodes
– Distributed control of the network to connect consumers and providers while enforcing appropriate policies
• Service networking and optimization – Service delivery pricing and optimization – Service-oriented networking – Architecture for service brokering and delivery – Measurement-based control of service centers or
“appliances” – Virtualized server characterization and control
• Networked virtual collaboration • Cross layer and wireless design
– WiFi and WiMax QoS modeling – Cross layer modeling, simulation, optimization – Mesh and multihop systems (WiFi, WiMax,
hybrid)
Our Research in Network Services
• Income or Utility Component – Maximize utility charge
• Cost Component – Minimize delay-incurred cost
• Used deterministic network calculus for end-to-end delay
• Recently used stochastic calculus providing tighter bound
• Approximate -- need better formula to include processing delays
• Gauss-Seidel versus Dual Decomposition
• Working on better understanding and more alternatives
Cloud computing & Virtual Collaboration
Enterprises are moving towards the application of Virtual Worlds for internal deployment Virtual Worlds enable ubiquitous presence and virtual collaboration Apply same paradigm in education: Access applications via a virtual world Synergistic work
and parallelization Student 1: MatLab; Student 2: OPNET and vice-versa
DE students will interact with their colleagues No commute needed for students working in industry
VIRTUAL COMPUTING LAB (VCL)
“The Virtual Computing Lab (VCL) is a remote access service that allows to reserve a computer with a desired set of applications for yourself, and remotely access it over the Internet”
• Users have remote desktop access to machines loaded, on demand, with the desired software. • Anytime-anywhere access to applications, transparent to users. • Ease of system configuration and management, and scalability.
Does not support collaboration among users, yet!
VCL 3.0: a motivating example
• Users request their applications from VCL • An image of a virtual world with those apps is created • Remote connections are created to those apps from inside the world • Resources to virtual machine are given according to socio-technical
characteristics of the group members
Allocating cloud resources
• Which virtual machines should be placed for execution?
• How do we optimally allocate cloud resources?
Social-awareness
Resource Allocation to Virtual Collaboration Environments
Ultimate Goal: Socio-Technical Response Surface & Optimization
Social Distance – Connectivity Graph
• Construction of connectivity graph – Bandwidth availability of each user – Physical distance (implies communication delay) – Business distance – Group size, level of trust between collaborators, etc could also be used
• Use of graph’s diameter to differentiate between different connectivity graphs • Main idea: assign more resources to group with smaller social-distance • Larger social-distance: conditions not favoring high collaboration quality
Optimal Resource Allocation • 3D/2D Knapsack placement problem:
CPU
Mem
ory
p1=10
p2=5
p3=1
Optimal Resource Allocation (cont’d)
• Optimally allocate excess cloud resources:
Measuring Virtual Presence
Analyze social networking patterns in relation to communication patterns Measure degree to which VW creates a sense of virtual
presence in the user Assess collaboration quality in VWs Evaluate network traffic in relation to social networking
and communication patterns (e.g., chat communication, voice, video)
Trials in Class: Matlab Doubly Virtualized inside Wonderland
Student Teams Collaborate inside Wonderland
Measuring Virtual Presence (Wonderland/Matlab) A group-based collaboration exercise in Wonderland
Matlab exercise Data collected from 120 students (Spring 2010, ECE 220) Measures include:
Average time per solution Individual contribution to team performance Perception of virtual presence, communication mode (voice/chat),
collaboration quality
Completed
Collaborative Virtual
Presence:
ELEMENTS
DATA COLLECTION
Survey of Educational/Collaborative Experience
Measuring Virtual Presence (Wonderland/Matlab) • CPU utilization analysis during collaboration:
CPU, Memory and Network Monitored
Measuring Virtual Presence (Opensim/Maze)
A negotiation and planning game in OpenSim LOST (in 3D maze) The game requires players to collaborate (lead/follow) in
order to meet a common objective under time constraints
• Repeat experiment with different levels of: – CPU (using cpulimit command) – Memory (using ulimit command) – Bandwidth shaping (using the trickle tool)
• Obtain objective functions for our optimization problem • Define the weights for the edges of our connectivity graph
Measuring Virtual Presence (cont’d)
Trials with Programmable Bots
• Use programmable bots as subjects for maze traversal – A guide bot instructs the lost bot how to “escape” the maze
• Vary the amount of server's communication bandwidth – Introduce dummy bots who chat with each other – Limit allocated bandwidth using Linux tools
• Vary the concurrent in-world participants • The metrics which we can capture:
– Frames per Second reported by server – Maze completion time
• Bots communicate using IM chatting • Future extension: emulate voice communication • (Server specifications: 2.8Ghz, 16 core, 64 bit machine, 16 GB
RAM)
Bot Results (IM communication)
• Time completion vs. Concurrent in-world users
• Frames per second vs. Concurrent in-world users
• Time completion vs. Available bandwidth
Contributions so far
• Optimal and dynamic allocation of cloud resources (e.g., CPU, memory, network bandwidth)
• Why consider presence status of users – Going towards social awareness – Introducing social distance and connectivity graphs
• Applications: cloud computing & virtual worlds – NCSU’s VCL – Amazon EC2
Summary
Social-aware optimization framework Motivation: Resource allocation of cloud resources to virtual machines that host virtual collaboration environments User's presence perception needs to be correlated with tangible resources (CPU, memory, bandwidth) Future work: Continue trials and experiments to: Find suitable utility functions per resource Investigate other important parameters to be used in the
graph weight function
Next Steps & Future Plans - I Model patterns/bundles as service-oriented network for deployment in CloudBurst (IBM DataPower appliance)
• Analyze network traffic, CPU patterns (also, power consumption?)
• Obtain the resource requirements of virtual images according to type of application used and participant social/business type • Use above information in the virtual machines placement problem
Continue to collect scaling data from bots Simulation (demo) Measure maze completion time Measure Frames Per Second Change # of concurrent users Change CPU/memory/bandwidth
Next Steps & Future Plans - II
• Placement problem – Add the green dimension: place virtual machines to also
account for their power consumption – Use physical space, cooling and power constraints
• Smart Grid extension? Energy appliances?
Network-Enabled Collaboration for Innovation
Virt
ual P
ublic
Sch
ools
(K-1
2)
Art
City
SSM
E C
omm
unity
Serio
us G
amin
g
Med
ical
Tec
hnol
ogy
Social Innovation
VIRTUAL ORGANIZATIONS
Industry/University Commercial Innovation
Centennial Living Labs
Virtual RTP
Virtual Proximity: Testing & Implementation
VIRTUAL WORLDS AND 3Di
COLLABORATION PROTOCOLS
Enabling Mechanisms
NETWORK & MIDDLEWARE
Ope
n So
urce
S/W
(Jaz
z, V
CL)
Partners:
• Autonomic service delivery platform for the Arts • Enabling artistic virtual organizations and remote interactions by use
of high speed networking and on-demand service delivery. • Combine network services with virtual collaboration research, and
with hands-on, “living lab” setting on campus (immersive Art Village in dorm, Centennial trials and pilot event in EBII).
• Use Centaur lab as hub for connectivity. • RENCI and other telepresence and mixed reality facilities (e.g.,
Cisco) • Use-cases: wireless-based mobile gaming and virtualized dance
activities: also serve as sources of system performance and workload measurements and analysis.
• Measurement phase followed by a design phase, where the algorithms and protocols in Nortel-sponsored wireless mesh trial can be adapted for optimized performance in real-life setting.
• Our work on service-delivery platforms and resource allocation will be tested and tried in this environment and its performance will be tuned accordingly.
ArtCity: Network-Enabled Art
Wireless Positioning and Awareness
• Partnering with Nortel, Carleton University in Ottawa, Canada, and Cisco
• Analysis: Cross-layer modeling of performance • Trial: Wireless mesh testbed in EB-II • Benefits from Centennial campus wireless network
• Emphasize location, distances and “aware” network
• Building Wi-Fi positioning system in EB-II • Stage serious gaming trials
Nortel SIP and Next Gen Services over Mesh Wireless
Social Distance Aware Utility Functions • Motivation
– Utility Functions defined almost always at the transport layer
– Social distance of a user to her peers affects desired utility
• Approach – Formalize the type of distances (social, effective)
between related entities in a social graph – Define and solve the Social Distance Aware Resource
Allocation Problem.
Social Distance Aware Resource Allocation
• Network is explicitly made aware of the resource requirements. • Resource allocation decisions happen in terms of parameter
tuning at corresponding protocol layers. • Better resource allocation decisions possible due to social
context awareness.
Examples of Social Distances
Social Distance Aware Utility Function
Resource Allocation in a WLAN • Resource Allocation
– Access Points are aware of the traffic demand. – 802.11e compliant AP’s and nodes are necessary for
QoS differentation. – AIFS, CWMin are among the parameters that can be
controlled. – We use AIFS as the control parameter for our
simulations in ns-2. – The end user application is VoIP.
• Modified VoIP Utility Function – MOS*(R) = MOS(R) - β (χ - 1)
Delay and Loss Matrices
Resource Allocation Algorithm for WLAN
CHOOSE AIFS
Max Unew(AIFS, χ) – cost(AIFS, χ) Subject to
1<=AIFS<=7 1<= χ <= 3
• For our example, we consider social distances to be chosen from the set {1,2,3} with 1 signifying the highest priority.
• Control parameter = AIFS
Algorithm computes loss and delay for the
current mix of calls after adding this new call
Loss (L) And
Delay (D) matrices
or
Aware Allocation Pseudo Code
Distance-Aware vs. Plain 802.11e
Call Capacity Total Utility
Real World Implementation • Effective Distance
– To measure this quantity, applications need to become location-aware.
– Social distance awareness is also necessary. But this is usually easier, since it is determined by the user herself.
• Our Solution – Implement a Wi-Fi Positioning System for locating
devices when inside buildings (EB-II). – Devices are GPS-enabled (iPhones/Android devices)
to facilitate positioning when outside.
• Steps of positioning system 1. Client retrieves data
(Visible Access Points and their RSSI)
• 2.Client sends data to server
• 3-6.Server enters data into database, uses algorithm to calculate position
• 7. Other Clients open map using browser and get the location information from the server
Wi-Fi Positioning System
The V911 Application – A Location Aware Application • Emergency response application, with the
locations being determined using WPS.
User Helper
WPS Server
Ongoing Work • Implement applications which have a social
context in addition to being location-aware. – A game with 4 teams competing against each other.
• Perform trials with devices spread out both indoors and outdoors.
• Measure network performance metrics (delay, loss, jitter etc).
• Relate the user’s experience to the metrics – culminating in the definition of the social distance aware utility function for this application.