A Framework for Synchronous and Ubiquitous Collaboration Advisor & Chairperson : Dr. Geoffrey Fox Committee Faculty : Dr. Dennis Gannon, Dr. Kay Connelly,

Slides:



Advertisements
Similar presentations
SIP and Instant Messaging. SIP Summit SIP and Instant Messaging What Does Presence Have to Do With SIP? How to Deliver.
Advertisements

ICS 434 Advanced Database Systems
BY MAULIK PATEL CED, GPERI Computing Architecture.
High Performance Computing Course Notes Grid Computing.
Synchronization Chapter clock synchronization * 5.2 logical clocks * 5.3 global state * 5.4 election algorithm * 5.5 mutual exclusion * 5.6 distributed.
Software Connectors Software Architecture. Importance of Connectors Complex, distributed, multilingual, modern software system functionality and managing.
Chapter 19: Network Management Business Data Communications, 4e.
Integration of Hand-Held Devices into Collaboration Environments IC’02 Las Vegas, NV June June Geoffrey Fox, Sung-Hoon Ko, Kangseok Kim,
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
1 7 Concepts of Database Management, 4 th Edition, Pratt & Adamski Chapter 7 DBMS Functions.
Shared Screens and Windows Kimberly Tee CPSC 781.
1 IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS Luca Genovali, Laura Ricci, Fabrizio Baiardi Lucca Institute for Advanced Studies.
Inter Process Communication:  It is an essential aspect of process management. By allowing processes to communicate with each other: 1.We can synchronize.
Performance Comparison of Existing Leader Election Algorithms for Dynamic Networks Mobile Ad Hoc (Dynamic) Networks: Collection of potentially mobile computing.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Lightweight Scalable Tool Sharing for the Internet Agustín J. González Department of Electronics Engineering Federico Santa María University Valparaíso,
ECDL 2002 Employing Smart Browsers to Support Flexible Information Presentation in Petri net-based Digital Libraries Unmil P. Karadkar, Richard Furuta.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Introduction to client/server architecture
Time, Clocks, and the Ordering of Events in a Distributed System Leslie Lamport (1978) Presented by: Yoav Kantor.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Communicating over the Network Network Fundamentals – Chapter 2.
A Web Services Based Streaming Gateway for Heterogeneous A/V Collaboration Hasan Bulut Computer Science Department Indiana University.
Principles for Collaboration Systems Geoffrey Fox Community Grids Laboratory Indiana University Bloomington IN 47404
Cli/Serv.: JXTA/151 Client/Server Distributed Systems v Objective –explain JXTA, a support environment for P2P services and applications ,
The University of Akron Dept of Business Technology Computer Information Systems DBMS Functions 2440: 180 Database Concepts Instructor: Enoch E. Damson.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Building Scalable and High Efficient Java Multimedia Collaboration Wenjun Wu, Tao Huang, Geoffrey Fox Community Grids Computing Laboratory, Indiana University,
Concepts of Database Management, Fifth Edition
Managing Service Metadata as Context The 2005 Istanbul International Computational Science & Engineering Conference (ICCSE2005) Mehmet S. Aktas
1.1 What is the Internet What is the Internet? The Internet is a shared media (coaxial cable, copper wire, fiber optics, and radio spectrum) communication.
1 Adaptive QoS Framework for Wireless Sensor Networks Lucy He Honeywell Technology & Solutions Lab No. 430 Guo Li Bin Road, Pudong New Area, Shanghai,
Database Application Security Models Database Application Security Models 1.
Syzygy Design overview Distributed Scene Graph Master/slave application framework I/O Device Integration using Syzygy Scaling down: simulators and other.
A FRAMEWORK FOR SYNCHRONOUS AND UBIQUITOUS COLLABORATION Advisor & Chairperson : Dr. Geoffrey Fox Committee Faculty : Dr. Dennis Gannon, Dr. Kay Connelly,
1 Vigil : Enforcing Security in Ubiquitous Environments Authors : Lalana Kagal, Jeffrey Undercoffer, Anupam Joshi, Tim Finin Presented by : Amit Choudhri.
A.Obaid - Wilfried Probst - Rufin Soh INE4481 DISTRIBUTED DATABASES & CLIENT-SERVER ARCHITECTURES1 Chapter 1. Distributed systems: Definitions, design.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
A FRAMEWORK FOR SYNCHRONOUS AND UBIQUITOUS COLLABORATION Advisor & Chairperson : Dr. Geoffrey Fox Committee Faculty : Dr. Dennis Gannon, Dr. Kay Connelly,
A Collaborative Framework for Scientific Data Analysis and Visualization Jaliya Ekanayake, Shrideep Pallickara, and Geoffrey Fox Department of Computer.
Social Aspects of Human- Computer Interaction Designing for collaboration and communication Chris Kelly.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
EEC 688/788 Secure and Dependable Computing Lecture 10 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Open System Interconnection Describe how information from a software application in one computer moves through a network medium to a software application.
Module 7: Implementing Security Using Group Policy.
XGSP Session Protocol DS-RT 2005 Grid Tutorial IEEE DS-RT 2005 Montreal Canada Oct Geoffrey Fox CTO Anabas Corporation and Computer Science, Informatics,
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Building Dependable Distributed Systems, Copyright Wenbing Zhao
SEA Side – Extreme Programming 1 SEA Side Software Engineering Annotations Architectural Patterns Professor Sara Stoecklin Director of Software Engineering-
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
Ubiquitous Access for Collaborative Information System Using SVG July Sangmi Lee, Geoffrey Fox, Sunghoon Ko, Minjun Wang, Xiaohong Qui
A Mechanism for Communication- Efficient Broadcast Encryption over Wireless Ad Hoc Networks Johns Hopkins University Department of Computer Science Reza.
Introduction to Databases Dr. Osama AL Rababah. Objectives In this capture you will learn: Some common uses of database systems. The characteristics of.
György Kálmán, Josef Noll Mobile and Wireless Communications Summit, th IST 1-5, July 2007 Speaker : 黃韋綸 Right Management Infrastructure for Home.
Distributed systems. distributed systems and protocols distributed systems: use components located at networked computers use message-passing to coordinate.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
CS3771 Today: Distributed Coordination  Previous class: Distributed File Systems Issues: Naming Strategies: Absolute Names, Mount Points (logical connection.
Scaling and Fault Tolerance for Distributed Messages in a Service and Streaming Architecture Hasan Bulut Advisor: Prof. Geoffrey Fox Ph.D. Defense Exam.
A synchronized protocol for distributed collaborative modeling
Peer-to-peer networking
#01 Client/Server Computing
Design and Implementation of Audio/Video Collaboration System Based on Publish/subscribe Event Middleware CTS04 San Diego 19 January 2004 PTLIU Laboratory.
Hasan Bulut Scaling and Fault Tolerance for Distributed Messages in a Service and Streaming Architecture Hasan Bulut
Wireless ATM PRESENTED BY : NIPURBA KONAR.
CMSC 611: Advanced Computer Architecture
Chapter 3: Open Systems Interconnection (OSI) Model
Computer Science Department
MWCN`03 Singapore 28 October 2003
#01 Client/Server Computing
Presentation transcript:

A Framework for Synchronous and Ubiquitous Collaboration Advisor & Chairperson : Dr. Geoffrey Fox Committee Faculty : Dr. Dennis Gannon, Dr. Kay Connelly, Dr. Sun Kim Kangseok Kim Computer Science Department Indiana University

2  Outline Motivation Research Issues Universal XGSP Collaboration Framework XGSP (XML based General Session Protocol) XRBAC (XML Role Based Access Control) XFloor (XML Floor Control) Experimental Results Contribution Future Work

3

4  Research Issues I Heterogeneous community collaboration  Most heterogeneous community collaboration systems cannot communicate with each other.  e.g. H.323 AG, AG SIP  We need wider range of collaboration by building integrated collaboration system, which combines collaborative applications as well as other collaboration into a single easy-to-use environment. Universal collaboration and access  Mean capability of multiple users to link together with disparate access modes to access collaborative systems.  Make systems more usable and more useful, and enable people to work together with others remotely.

5  Research Issues II Access control in collaboration system  The cooperation on the resources shared among a group of users may produce new results on the shared resources.  Access control policies and mechanisms are needed to restrict unauthorized access to a variety of protected information and resources. Group coordination support  As users try to manipulate shared application at the same time, a user may have to contend with other users for access to the shared application.  To maintain consistent shared state at application level, we need to control competing accesses and mitigate race conditions for shared resources.

6  Universal XGSP Collaboration Framework Built on heterogeneous (wire, wireless) computing environment. Handle cooperation and communication among heterogeneous communities. Provide collaborative applications in the heterogeneous community collaboration. Shared event mechanism. Structured as three layers and six major components: node manager, session / membership control manager, access / floor control manager, policy manager, request and reply event message handlers, and communication channel.

 Universal XGSP Collaboration Framework Architecture Collaborative Applications Node Manager Session/Membership Control ManagerAccess/Floor Control Manager XGSP Event Messages Request/Reply Handler Communication Channel Policy Manager

 Broad View Architecture Application Proxy Application Filter Conference Manager Message / Service Middleware (Broker)

9  XGSP (XML based General Session Protocol) Session means online workgroup of collaborators working with sharing various collaborative resources. Means control logic defined in XML.  The control logic is used to manage presences and connectivity among collaborators in online session, and organize online workgroups (sessions or conference). To maintain consistent state information among sessions and collaborators in a coordinated way.  We use query-dissemination interaction event messaging mechanism with publish-subscribe messaging service.  provide a flexibility for adapting dynamic changes of collaboration states (creation and destroy of workgroups, and presences of participating users in workgroups)

 XRBAC (XML Role Based Access Control) RBAC is a scheme that describes access rights based on roles in an organization.  Pros: ease of administration, scalable  Cons: not flexible, not effective to fine-grained access control XRBAC  Use roles based on users’ privileges and devices’ capabilities  Chairperson-mediated interaction mechanism (request-response) mechanism  Flexibility – adapting to the state change of collaborative resources at run time  Fine-grained action - defined as the smallest interactive major events (semantic events)

 XRBAC Architecture Chair node Request node Decision Response Access Request Conference Manager Message / Service System (Broker) Push Policy KMC (Key Management Center) Activation / Deactivation Service Access Decision Service Authentication Service Local Policy Store Pull Policies Activation / Deactivation Service Access Decision Service Authentication Service Local Policy Store Pull Policies

12  XFloor (XML Floor Control) Interaction management for synchronous collaborative application. In traditional face-to-face offline session, participants generally follow rules of etiquette or social protocol when they interact with each other. In online session, participants usually interact with each other using computer-mediated policies with CSCW (Computer Supported Cooperative Work) tools. Floor control policy and mechanisms have to be able to provide a floor on shared resource for only one participant in online session at any time. XFloor provides flexibility ranging from free-for-all to application specific floor control mechanism.  Free-for-all (no floor)  ex ) Text-chat application  Chairperson-mediated floor control mechanism  ex ) Shared whiteboard application  Major event conflict detection function (Strictly conflict avoidance)  Non-optimistic locking mechanism  Two-player turn-taking mechanism  ex ) Collaborative chess game application

 Examples Broker Major event (Moving object) Major event (Moving object) XGSP event Drawing event Text event Major event (Moving object)

14  XFloor Policy Floor policy means how users request resources, how the resources are assigned and released. A set of predicate rules (policies) are defined in terms of request, response, and release to provide the floor for only one participant at a time. Request  Users can request through the use of XFloor control tool  Chairperson can directly assign a floor to collaborators Response  If the floor is available, a chairperson assigns the floor to the floor requester.  Otherwise, the floor request is queued into a floor waiting queue or can be denied. Release  Floor is assigned to a requester waiting in a floor waiting queue in FIFO order  Floor can also be released from directly chairperson or after a prefixed amount of time.

15  XFloor Mechanism Determination of types classified to access resources  If the return type is “Implicit” -----> grant “Exclusive” ---> grant or queued “Shared” -----> grant or deny “Released” ----> grant  If one of the elements does not exist in policy, then a type “Invalid” is returned into chairperson and the request is denied. Determination of whether an action in a request exists in current floor state information table, in other words, a request action conflicts with the action of current floor holder  If the return type is “Exclusive” and request action exists in the floor state information table, then the request is queued. Otherwise, the request is granted  If the return type is “Released” and a floor waiting queue is not empty, then the request is granted and the first request in the waiting queue is granted.  If the return type is “Released” and a floor waiting queue is empty, then the request is granted

 Decision Procedures of XFloor Mechanism (strictly Conflict Avoidance) Floor Request Queue Access Type Decision Service Access and Floor Control Decision Service Policy Store Current Floor State Information Table Floor Waiting Queue Decision Access / Floor Control Manager Floor RequestersChairperson - This guarantees the mitigation of race conditions of floor requests to shared application.

 Non-optimistic Locking Mechanism with Shared Whiteboard Access / Floor Control Manager BROKERBROKER Set Floor Request Floor 1. Lock 2. Request Floor 3. Request Floor 4. Decision 5. Grant 6. Grant (unlock)  Fine-grained locks are used to allow more concurrent activity among participants.  Coarse-grained lock can be used to allow a participant to make more activities at a time.  This mechanism guarantees that the consistency state at application level is maintained among participants.

 Request-Response Interaction Scheme between a Chairperson and a Floor Requester with Human-Computer Interaction BROKERBROKER Access / Floor Control Manager Set Floor Request FloorRequest Floor Decision (Grant, Deny, Queued, Release)

19  Baseline Performance Results SDSC NCSA CGL at IU 9.37 ms / 1 byte ms / 60 KB 0.43 ms / 1 byte ms / 60 KB ms / 1 byte ms / 60 KB 2.58 sec / 1 byte sec / 60 KB 2.33 sec / 1 byte sec / 60 KB 2.34 sec / 1 byte sec / 60 KB

 Baseline Performance Results I

 Baseline Performance Results II

 Baseline Performance Results III

 Experimental Results I Transit Time in Request and Response of Sessions

 Experimental Results II Transit Time in Request and Response of Sessions

 Application (Whiteboard) Filter Architecture View Broker Filter Display Transcoding Graphical display data (Image or drawing object data) Pre-transcoding Problem: as new device or new type of application is added, all types of application have to be updated Post-trancoding Problem: wireless network and cell phone does not support the transfer of more than 60 KB

 Image Filtering Structure Create Image Create Buffered Image Scale Image Convert to PNG Broker Whiteboard Application Filter Binary Image Data Binary Image Data Canvas Size (1024 x 768) Canvas Size (160 x 144) Binary Image DataTranscoded Binary Image Data

 Experimental Results III Transfer time of Image from Desktop to Cell phone

 Experimental Results IV Transfer time of Drawing objects from Desktop to Cell phone

 800x600 JPEG Image on Desktop vs. 158x134 PNG Image on Cell Phone 60 KB (JPEG) 800 x KB (PNG) 158 x 134 Shrunk size 0.2 x 0.2

 Experimental Scenario Overview Broker Access Request Simulator Chair Node (Decision Node) Request Node Request arrivals with exponential Distribution with mean interarrival time (3 sec) Three different network combinations over three different locations (# of requests = 100) 1.collaboration using only desktop devices (wired network) (# of requests = 100) 2. collaboration using only cell phone devices (wireless network) (# of requests = 100) 3. collaboration using desktops and cell phones together (wired + wireless network) (desktop (# 50) + (cell phone (# 50))

 Overhead Timing Considerations Total latency (T total ) = Waiting time (T w ) + Decision time (T d ) + Network transit time (T n = T req + T res ) Broker Queue Decision Procedure Chair nodeRequest nodes Decision Response Access Request TdTd TwTw T n = T req + T res T total = T d + T w + T n

 Experimental Results V Mean completion time of a request vs. Mean request interarrival time (3000 milliseconds)

 Experimental Results VI Reply + Non-Blocking vs. No-Reply + Blocking Reply + Non-BlockingNo-Reply + Blocking Desktop : 9.77% (GridFarm), 1.12% (NCSA), 7.51% (SDSC) Desktop + Cell phone : 51.46% (GridFarm), 59.79% (NCSA), 59.83% (SDSC) Cell phone : 84.88% (GridFarm), 87.42% (NCSA), 86.96% (SDSC)

34  Formal Verification by Colored Petri Net We modeled the mechanisms (XRBAC and XFloor) and verified the modeled mechanisms in terms of mutual exclusion, dead lock, and starvation. The key part for the modeling and formal verification is to show consistent shared state at application level to collaborators by mitigating race conditions for shared resources We used Colored Petri Nets (CP-nets or CPNs) with time for the abstract modeling representation of the control mechanisms.

 XML based Control Mechanism Modeled by CP-nets

 Simplied XML based Control Mechanism Model Simulation Start Init Request Nodes Arrival Request Queue Policy Store Access Type Decision Service Real Code Send Decision Nodes Access and Floor Control Decision Service Current Floor State Information Table Critical Section Waiting List Queue Unlock Communication Service

 Contribution 1. Building of Universal XGSP Collaboration Framework on both mobile device (cell phone) and non-mobile device (desktop)  Defined general session protocol in XML (XGSP)  This includes another colleague’s contribution on desktop 2. Designed and implemented XRBAC  The use of role based on users’ privileges and devices’ capabilities  Scalability, Flexibility, Fine-grained access control 3. Designed and implemented XFloor  Provides flexibility from free-for-all to application specific floor control mechanism  Chairperson-mediated interaction control with strictly conflict avoidance and non-optimistic locking mechanism 4. Building of application filter for cooperation of heterogeneous types of whiteboard application  Shared display model and shared event model 5. Building of application proxy for Instant Messenger  Shared event model 6. Building of collaborative applications on cell phone  Text Chat, Instant Messenger, Shared Whiteboard with Image Annotation 7. Modeling of XML based control mechanisms (XRBAC and XFloor)  To prove the correctness of the modeled mechanisms

38  Future Work Fault-tolerant role delegation mechanism with role hierarchy policy  A recovery approach from failure-prone system  We already implemented polling (heart-beat message) mechanism. Design issues for building applications on mobile devices  An approach to overcome technical limitation occurring as porting applications from desktop computers (moderate screen size) to mobile devices (small screen size)  Improvement of quality of the transcoded image from desktop into cell phone Design and implement the authentication of users joining a session during roaming with cell phone devices, and the encryption of messages sent to and from the cell phone devices Support for floor control of synchronous collaborative media applications such as audio / video Optimistic floor control mechanism  Means allowing conflicts and resolving them  With time-stamp and with different application