XGSP Session Protocol DS-RT 2005 Grid Tutorial IEEE DS-RT 2005 Montreal Canada Oct Geoffrey Fox CTO Anabas Corporation and Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN
Collaboration Web services System Event Messaging Service (NaradaBrokering) XGSP Conference Control Service Audio Video Web Service Instant Messaging Web Service Shared Display Web Service Shared …. Web Service
XGSP Framework To integrate heterogeneous systems into one collaboration system, we need to reach the following goals: (1) Different kinds of application endpoints should join leave in the same collaboration session. (2) Different providers for multipoint A/V and data collaboration should be connected together to build unified A/V and data multipoint channels. (3) A common user interface should be present for all the collaboration participants using different A/V and data application endpoints.
XML based General Session Protocol Services The XGSP conference control includes three services: conference management supports user sign-in, user create/terminate/join/leave/invite-into XGSP conferences application session management provides users with the service for creating/terminating application sessions XGSP application session management provides the services to A/V and data application endpoints and communities, controlling multipoint A/V RTP and data channels. floor control manages the access to shared collaboration resources in different application sessions.
XGSP Conference Control Architecture
XGSP Conference Management Provides services of Create / Modify / Terminate Conference, allowing users to make meeting schedules and look up active meetings Conference Calendar Users in a XGSP Conference three roles: administrator, conference chairman and normal users. XGSP Conference membership maintenance
XGSP Application Session Management Different Application sessions in XGSP public application sessions and private application session Topic name schema for application sessions /xgsp/conferenceID/Application-Session-ID public application sessions ~ private application sessions ~ for example: /xgsp/ourtestroom/whiteboard/testuser/0123 Creating and terminating application sessions Join/Leave Application Session
XGSP Floor Control XGSP should provide: Floor control primitives, including: request floor, release floor, grant floor, cancel floor, remove floor request mediator-controlled floor control: to support the mediator control policy Collaboration applications have to define their own roles in the XGSP registration so that the mediator could assign the role of the application to each user. for example, a shared PowerPoint application should define master/non-master role.
XGSP Example: Conference Schedule GameRoom Our Chess Game John 9:00AM 12:00AM Moderated Audio-Video chat chess
XGSP Example: application role definition chess black player-first white player-second observer non-player ….
XGSP Example: New Session GameRoom chess chess-0 John false chess-0 Bob black chess-0 Jack white
XGSP Audio-Video Session Management XGSP signaling protocol for H.323 signaling protocols (H.225, H.245) SIP signaling protocol ( Invite, Bye Message ) Access Grid ( Unicast VIC & RAT ) Join XGSP Session, Leave XGSP Session, Invite into XGSP Session, Expel from XGSP Session Activate the XGSP session the XGSP session server will link all the “rooms” in the session together by connecting multipoint A/V and data channels from different communities to the XGSP A/V Media and Data Channel Services. Link/Disconnect XGSP SubSession
XGSP Audio-Video Session Control Service creating/destroying sessions allowing endpoints to join/leave session Common signaling protocol Translate H.323/SIP into it XGSP make audiovisual selection Video/audio stream subscription Stream filters generation managing audiovisual service elements Video/audio mixing, transcoding service management Service meta-data description Search service through NaradaBroker
XGSP AV Signaling Protocol with H.323
Steps to build Collaboration Web-Services using XGSP and NaradaBrokering Use NaradaBrokering for control communication and data distribution Define roles and its capability in XGSP Define application specific processing services and hooked it into NaradaBrokering Implement the interface between the XGSP NodeManager and application clients
XGSP Futures XGSP needs richer set of capabilities to capture different floor models and to allow multiple applications to be supported Straightforward but time consuming Use Grid metadata catalog to automatically store Grid/Web service security model – still maturing in other applications Need to support rich set of group security models