Livespace Architecture. Overview Livespace requirements Discussion of issues Livespace Architecture.

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

1. Objective 1 Overview of the Linux Desktop  X Server  Controls Graphical Interface  Manages Input Devices  Transmits Input actions to the client.
Multi-Mode Survey Management An Approach to Addressing its Challenges
The road to reliable, autonomous distributed systems
System Center Configuration Manager Push Software By, Teresa Behm.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Distributed components
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.
Slide 1 Written by Dr Caspar Ryan, Project Leader ATcrc project 1.2 What is MobJeX? Next Generation Java Application Framework providing transparent component.
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
Chapter 2: Automating the Windows Vista Installation.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 7: Advanced File System Management.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Team Collaboration across Business Value Chain – Approach of Internet Application Framework (IAF) Context Aware Collaboration in Mobile Enterprise Applications.
Interpret Application Specifications
WebDynpro for ABAP Short introduction.
Lesson 1: Configuring Network Load Balancing
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 7: Advanced File System Management.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Chapter 2: Exploring the Desktop The Complete Guide to Linux System Administration.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
1 The Cryptographic Token Key Initialization Protocol (CT-KIP) Web Service Description KEYPROV WG IETF-68 Prague March 2007 Andrea Doherty.
Course Instructor: Aisha Azeem
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
Enterprise Resource Planning
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 7: Advanced File System Management.
MCTS Guide to Microsoft Windows Server 2008 Applications Infrastructure Configuration (Exam # ) Chapter Two Deploying Windows Servers.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 7: Advanced File System Management.
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
Application Layer CHAPTER 2. Announcements and Outline  Administrative Items  Questions? Recap 1.Introduction to Networks 1.Network Type 2.N etwork.
An Introduction to IBM Systems Director
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Module 7: Fundamentals of Administering Windows Server 2008.
SUSE Linux Enterprise Desktop Administration Chapter 12 Administer Printing.
Architecting Web Services Unit – II – PART - III.
Module 2 Configuring Disks and Device Drivers. Module Overview Partitioning Disks in Windows® 7 Managing Disk Volumes Maintaining Disks in Windows 7 Installing.
Computer Emergency Notification System (CENS)
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
Data Tagging Architecture for System Monitoring in Dynamic Environments Bharat Krishnamurthy, Anindya Neogi, Bikram Sengupta, Raghavendra Singh (IBM Research.
Webservice versioning using osgi Allard Buijze, Jettro Coenradie.
1 Chapter Overview Creating Drive and Folder Shares Using Distributed File System Installing Network Printers Administering Network Printers Managing Share.
Chapter 6 Server-side Programming: Java Servlets
CERN - IT Department CH-1211 Genève 23 Switzerland t DB Development Tools Benthic SQL Developer Application Express WLCG Service Reliability.
Open Service Gateway Initiative (OSGi) Reporter : 林學灝 侯承育 1.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Week #3 Objectives Partition Disks in Windows® 7 Manage Disk Volumes Maintain Disks in Windows 7 Install and Configure Device Drivers.
VMware vSphere Configuration and Management v6
Jini Architecture Introduction System Overview An Example.
Module 7: Configuring Terminal Services. Overview Describe how the components of Terminal Services work together Identify new Terminal Services core features.
Page 1 Printing & Terminal Services Lecture 8 Hassan Shuja 11/16/2004.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 6 Essentials of Design.
You there? Yes Network Health Monitoring Heartbeats are sent to monitor health status of network interfaces Are sent over all cluster.
IPS Infrastructure Technological Overview of Work Done.
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
COMP1321 Digital Infrastructure Richard Henson March 2016.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
AMSA TO 4 Advanced Technology for Sensor Clouds 09 May 2012 Anabas Inc. Indiana University.
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
z/Ware 2.0 Technical Overview
CHAPTER 2 Application Layer.
Telnet/SSH Connecting to Hosts Internet Technology.
Lecture 1: Multi-tier Architecture Overview
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Presentation transcript:

Livespace Architecture

Overview Livespace requirements Discussion of issues Livespace Architecture

The Livespace Framework A software framework to support provision of the services that constitute a Livespace Livespace services include:  Lights, volume, screen forwarding, room schematic, session configuration, projector control, room configuration, shared clipboard, information repository, VTC, …

Requirements For Livespace Framework Must support complex services Accessible from multiple hosts Dynamically extensible Allow inter-service dependencies Support multi-room federation Provide management of distributed services High reliability and robustness: service failure should have minimal effect on room function

Complex Service Example: The Room Schematic Not a flat tuple: requires nested data objects and lists of objects Fields are dynamic Not a flat tuple: requires nested data objects and lists of objects Fields are dynamic

Example Model: The ICS Room Schematic Name: ICS Room Presentation Logo: Schematic: Name: ICS Room Presentation Logo: Schematic: Background Color: blue Item Font Size: 18 Items: Background Color: blue Item Font Size: 18 Items: Name: Front Downlight Location:100, 58 Entity: ICS.light.12 Name: Front Downlight Location:100, 58 Entity: ICS.light.12 Name: Laptop 2 Location: 220, 181 Entity: ICS.laptop.2 Name: Laptop 2 Location: 220, 181 Entity: ICS.laptop.2 …

Federating Livespaces Need to bridge Livespaces across organisations  E.g. multi browse remote screens Need fine-grained control over what information is bridged  Especially important when going across classifications

Service Management Many services required  Lights, volume, screen forwarding, … Usually small amounts of code (10K - 60K)  Do not want to launch a 10MB Java VM for each one Need to reside on multiple hosts, different services for different hosts Need to be updated and restarted individually Have multiple dependencies (e.g. screen forwarding depends on displays, AVX and computers)

The Livespace Architecture Three keys areas to address  Service provision  Service deployment and control  Multiple room federation

Architecture: Service Provision The Livespace bus provides a distributed space where information models can be published Extends the tuple space concept  Provides composite, dynamic distributed data models Services publish models of their state  Changing service model triggers the service to act to “make it so” Visibility: services easily monitored and browsed  Includes service status

How Clients Access Services Clients issue a query to match service entities they want to find  E.g. “find all computer entities” Services respond by sending copies of matching entities to the client Client now has a local replica of the desired entities Client replicas are synchronized in both directions  Changes on server are replicated on client  Changes on client are sent to server  Client always accesses its local copy

Client / Server Replication Server ICS Display Left computer entity Server ICS Display Right computer entity Server ICS Laptop 1 computer entity Client computer entity Client discovers and replicates entities of interest

Livespace Service Example The ICS light service discovers C-Bus light devices publishes representative light entities on the livespace bus Light state, such as the “level” property, can be seen and changed by any bus client The Livespace/C-Bus hardware interface synchronises the actual light state with this property Name: Front Left Downlight Level:100% Name: Front Left Downlight Level:100% Name: Front Left Downlight Level: 0% Name: Front Left Downlight Level: 0% Client sets “level” to 0 Light onLight off

Complex Service Example: Screen Forwarding Name: laptop 1 User: Derek Desktops: Name: laptop 1 User: Derek Desktops: Name: Projector Left AvxPort : 1 Desktop: laptop1.desktop 1 Power: on Name: Projector Left AvxPort : 1 Desktop: laptop1.desktop 1 Power: on ID: laptop 1.desktop 1 Primary: true AvxPort: 12 ID: laptop 1.desktop 1 Primary: true AvxPort: 12 ID: laptop 1.desktop 2 Primary: false AvxPort: 13 ID: laptop 1.desktop 2 Primary: false AvxPort: 13 Name: Projector Centre AvxPort : 2 Desktop: laptop1.desktop 2 Power: on Name: Projector Centre AvxPort : 2 Desktop: laptop1.desktop 2 Power: on Name: Projector Right AvxPort : 3 Desktop: display 1.desktop 1 Power: on Name: Projector Right AvxPort : 3 Desktop: display 1.desktop 1 Power: on Name: Display Server User: [none] Desktops: Name: Display Server User: [none] Desktops: ID: display server.desktop 1 Primary: true AvxPort: 6 ID: display server.desktop 1 Primary: true AvxPort: 6 Computers Displays

Architecture: Service Management All services are packaged as components Using OSGi v3.0 standard  Versioning and dependency management  Deployment to all hosts from a single point  Lightweight - OSGi is designed for mobile platforms  Many existing components (HTTP servlets, web services, etc)

Architecture: Service Management An OSGi core (“Knopflerfish”) is deployed as a Windows or Unix service  Always running – no logon required for services to be active  Reduced resource usage – a single Java VM  Increased fault tolerance – automatic restart on crash All components are network-loaded from the repository Centralised configuration determines:  Which services run on what hosts  Service configuration parameters

Approach: Multiple Rooms The framework explicitly models multiple rooms as livespace entities The “local” room is easily discoverable Can federate with other rooms selectively using Elvin federation rules  E.g. allow read-only access to room resources except the shared clipboard

Other Benefits: Visibility All services on the bus can be browsed

Other Benefits: Rapid Development We can rapidly develop new services  Define a shared clipboard entity:  Publish it: public class ClipboardEntity extends Entity { public String text; } ClipboardEntity sharedClipboard = new ClipboardEntity ("Default"); EntityServer server = new EntityServer (room, "clipboard"); server.entities.add (sharedClipboard);

Relation To Other Technologies A number of new technologies take a similar distributed service model approach  Service Data Objects (SDO)  Joint Battlespace Infosphere (JBI) Acknowledge limitations of RPC + static data models (e.g. SOAP) Complex service provision benefits from a looser, model-centric architecture

Comparison With iROS Tuple Space Architecture The data model used by iROS is a flat tuple space All data is described by name/value pairs Not designed to support compound values  e.g. values that are themselves tuples or lists of tuples Does not support fine-grained change  Changes effected by adding/removing whole tuples Does not allow fields to be added at runtime

Current Status The following slides show examples of the new ICS Session Configuration Manager and Ignite Room Control Panel

Session Configuration: Choose Session

Session Configuration: Edit Session

Ignite: Room Control Panel

Demo & Discussion