Collaboration Approaches for CTS05 GlobalMMCS Tutorial

Download Report

Transcript Collaboration Approaches for CTS05 GlobalMMCS Tutorial

Collaboration Approaches for
CTS05 GlobalMMCS Tutorial
CTS05 St. Louis May 17 2005
Geoffrey Fox
CTO Anabas Corporation and
Computer Science, Informatics, Physics
Pervasive Technology Laboratories
Indiana University Bloomington IN 47401
[email protected]
http://www.infomall.org
Material for Tutorial

All talks are at
http://grids.ucs.indiana.edu/ptliupages/presentations/cts05/


Both tutorial and conference presentations (Ahmet
Uyar, Sangyoon Oh)
Open source Software at
• http://www.globalmmcs.org and
• http://www.naradabrokering.org
(Software Overlay Network)
• http://www.collab-ogce.org/nmi/index.jsp (Grid Portals)

More information about our work
http://www.infomall.org
Tutorial Overview: 5 Sections





Overview of existing audio/video systems; we are trying to
address general real-time collaboration but we A/V systems
have hard technical challenges
• Apply to WebEx, Placeware style shared applications as
well
Grids and Web Services; current preferred approach to
distributed systems but main focus asynchronous sharing; we
will apply to synchronous case
• Grids are “Internet-Scale Distributed Services”
Message-oriented Middleware or Software Overlay Networks;
natural approach to both Grids and Collaboration spanning
P2P and Server-based scalable systems; NaradaBrokering
XGSP provides Web Service (Grid) interfaces for
Collaboration
Finally GlobalMMCS is the collaboration environment
H.323 Introduction
• Major audio-video standard but broader
• “Binary” format for both “data” and “control”
• Supported by many commercial vendors and used
throughout the world in commercial and
educational markets
• Supports small-scale multipoint conferences
• Has conference management functionality and the
call signaling functionality
H.225 ~ call set-up
H.245 ~ call control
H.243 ~ Audio/Video multipoint control
T.120 ~ Data Collaboration
H.323 Protocols
• H.323 is a “framework” document that
describes how the various pieces fit together
• H.225.0 defines the call signaling and
communication between endpoints (Call
Signaling) and the Gatekeeper (RAS)
• Annex G/H.225.0 defines communication
between Border Elements
• H.245 is the conference control protocol
Typical H.323 Stack
H.323
Multimedia Applications, User Interface
Data
Applications
V.150
T.120
Media Control
Audio
Video
Codecs
Codecs
G.711
H.261
G.723.1
H.263
G.729
H.264
..
..
T.38
Terminal Control and Management
H.225.0
RTCP
Call
H.245
Signaling
H.225.0
RAS
RTP
UDP
TCP
TCP/UDP
UDP
IP
http://www.packetizer.com
TCP/UDP
TCP
UDP
H.323 Endpoint (Terminal)
Architecture
Video I/O equipment
Audio I/O equipment
Audio Codec
G.711, G.722,
G.723, G.728, G.729
Receive
Path
Delay
H.225.0
Layer
System Control
H.245 Control
System Control
User Interface
Call Control H.225.0
RAS Control H.225.0
Scope of Rec. H.323
LAN Interface
User Data Application
T.120, et.
Video Codec
H.261, H.263
H.323 Architecture
Gatekeeper
(security, QoS,
routing etc.)
MC MP
MCU
Packet Switch
Network
H.323
Terminal 1
H.323
Terminal 2
....
H.323
Terminal N
H.323 MCU


Responsible for managing multipoint conferences (two
or more endpoints engaged in a conference)
The MCU contains
• a Multipoint Controller (MC) that manages the call signaling
• may optionally have Multipoint Processors (MPs) to handle
media mixing, switching, or other media processing
H.323 Gatekeeper





Admission Control
Bandwidth Control
Address Resolution
DNS style service for VoIP and Videoconferencing
Directory Service
Call routing
route the call to MCUs
H.225: Call Setup Signaling
Endpoint1
Endpoint2
Gatekeeper
ARQ(1)
ACF/ARJ(2)
Setup(3)
Call processing(4)
ARQ(5)
ACF/ARJ(6)
Alert(7)
Connect(8)
RAS message
Call signaling message
H.245 Signaling

H.245 is used to negotiate capabilities and to control
aspects of the conference between two or more
endpoints
Endpoint
Terminal Capability Set
M/S Determination
Endpoint
Terminal Capability Set
M/S Determination Ack
M/S Determination Ack
OpenLogicChannel (OLC)
OLC Confirm
Open a
channel
SIP


Initially SIP was designed to solve problems for IP
telephony.
SIP basic functions
• user location resolution,
• capability negotiation
• call management.
equivalent to the service H.225 and point to point part of H.245

The major difference from H.323
• SIP was designed in a text format and took request-response
protocol style like HTTP
• SIP doesn’t define the conference control procedures like
multipoint parts of H.245 and T.120.
SIP Architecture
A Integrated SIP
Service System: CINEMA
From Columbia University
Desktop
SIP clients
H.323
SIPUA
sip323
sipd
Gatekeeper
SIP-H.323
signaling gateway
SIP
Programmable
SIP servers
Conferencing
Hardware SIP phone
sipconf
Unified messaging
sipum
sipgw
SIP-MGCP gateway
rtspd
MGCP
Streaming media
SIP-PSTN gateway
PSTN
Quick-time
Regular telephones
RTSP
Sipconf : SIP based Centralized
conferencing


SIP323
sipc





SIP based conferencing server
SIP/SDP and RTP/RTCP
Audio mixing
Play-out delay algorithm
Web based conference setup
G.711 A and Mu law, G.721, DVI
ADPCM
Multiple simultaneous conferences
SIP/PSTN
http://www.cs.columbia.edu/~kns10/software/sipconf
Summary of H.323/SIP
Conferencing Systems




Most products are Centralized conferencing system
MCU integrates the service of media processing service
and session management
Call-based
A conference call represents control connections
between clients and MCUs.
Most vendors offer hardware solutions
Thought as services and controllers but specialized
protocols and implementations; NOT Service-Oriented
Architectures!
Access Grid I
Access Grid : a large scale audio/videoconference based on a
multicast network
 provides the group-to-group collaborations among 150 nodes
connected to Internet 2 world wide.
 Use improved MBONE audiovisual tools VIC and RAT
 Depends upon high-speed network ( each node needs 20Mbps )
 Peer to peer architecture for distribution with centralized non
standard session control (venue server)
 Did not develop many new capabilities but made existing public
domain software better packaged and easier to use
Access Grid II

Supports multiple screens and dominates some
research communities
VRVS: Virtual Rooms
VideoConferencing System





VRVS is a project from particle physics group at
Caltech that extends the service of Access Grid.
VRVS builds its collaboration service on top of pure
software reflector infrastructure which is a kind of
software multicast. (similar to NaradaBrokering )
It is capable of supporting MBONE tools, H.323
terminal as well as QuickTime player.
It also supports shared web browsing and shared
desktop (VNC).
VRVS is not an open project having few documents for
their architecture and conference control framework.
Skype I

Skype: p2p VoIP solution and has become a huge
success.
• A Peer-to-peer overlay network for VoIP and Instant
messages developed by founders of KaZaA.
• using p2p overlay (Kazaa) rather than expensive, centralized
infrastructure
• Free on-net VoIP service and a fee-based off-net SkypeOut
service that allows calling to PSTN and cellular phones
• provided supplemental features like instant messaging
service.
• Millions of download and on-line users in the world
Skype II

Based on Kazaa Overlay network
• Unstructured p2p file sharing overlay
• Overlay p2p network consisting of ordinary and Super Nodes
(SN).
• Ordinary node connects to network through a Super Node.


Centralized authentication server
Excellent Audio quality based on Internet Low Bit rate
Codec ILBC (http://rfc3951.x42.com/)
iLBC – MOS (Audio Quality) behavior
versus percentage packet loss
Skype Architecture
Skype III





Each client maintains a list of super nodes in the Host
Cache.
Buddy list is local to a machine.
Skype client continuously discovers and builds the list
of Skype nodes.
Use a hybrid DHT and flooding mechanism to search
A Super Node acts a proxy for clients and caches the
result
Skype IV






Skype client listens on configured TCP and UDP ports.
Uses a variant of STUN to identify the type of NAT and
firewall.
Usage of TCP port 80 enables client to reach super node
even through firewalls.
Call signaling is done over TCP, messages are
preferably transported over UDP.
In the presence of NAT or firewalls, calls between caller
and callee are routed by an intermediate node
All Skype messages are encrypted.
Why is Skype so successful?




Better voice quality
excellent audio codec, fancy echo cancellation algorithm
Global IP Sound ( iLBC audio codec )
Ability to work behind firewalls and NAT
Ease of use ( quite simple UI ) based on IM metaphor
P2P style without centralized MCU
any peer that has enough resource can be selected to host
the mixing service
limited the number of participants in a conference ( at most
4 which is common for private social meetings )
use p2p overlay to discover resources and route packets
But they are simply not good enough!





Although all of these systems have advantages, they are not sufficient for
building more advanced and integrated collaboration systems:
SIP : very limited supported for conference control
H.323 :
AV collaboration and T.120 are not well integrated.
the AV communication services and T.120 overlay networks don’t have very good
scalability.
H.323 and T.120 are designed in a relative complicated OSI model. It is not easy
to understand and develop in their APIs
Most H.323 and SIP conferencing products are based on centralized MCU
Access Grid : heavily depends on multicast service and limited number of uni-cast
bridge servers in the Internet 2
• No way to be deployed in current Internet
VRVS : No clear way to generalize
Skype : Most promising
• use their own propriety protocols and can’t interoperate with other legacy VoIP
clients such as H.323 and SIP
• only support small-scale audio conferencing ( at most 4-party ) and have no
video service
What’s the ideal videoconferencing system I

A unified, scalable, robust “overlay” network is needed to
support AV and data group communication over heterogeneous
networking environments
• go through firewall and NAT
• provide group communication service in whatever unicast and multicast
networks
• offer reliable data delivery in whatever loss network
• to be configured as P2P or distributed server-based overlay to provide
differential services for VIP and regular users
• Publish-Subscribe collaboration mechanism natural for centralized and P2P
modes

A service-oriented architecture for hosting media processing
service and session control service
• More scalable than centralized MCU
• Support various style of conferencing ( massive scale of broadcasting as well
as medium size of private social meetings )
• Service providers can be highly distributed and p2p
~ Skype p2p audio mixing
• Scalable service discovery based on p2p search
• Customized media filters for different clients ( PC, PDA, … )
What’s the ideal videoconferencing system II

A core conference control mechanism is required for
establishing and managing the multi-point conference
• Complete conference control service like T.124 (Generic
Conference Control) in T.120 framework
• more flexible facilities to describe application sessions and
entities ( role-based, XML )
• Integrate different AV sessions ( H.323 , SIP, Access Grid,
RealStreaming … )
Introduce a common AV signaling protocol to interoperate
different AV collaboration endpoints
Simply regard these bridging gateways as “add-on services”
Global-MMCS is one approach
to the ideal conferencing solution




NaradaBrokering as “software overlay”
• Group communication
• Service discovery
• Skype and VRVS also are based on similar idea
XGSP is Web Service compatible conferencing framework
• Service management
• Conference control
• Common AV signaling protocol
Publish-Subscribe as collaboration mechanism
• Easy to support new applications
Services with SOA as components
• Codec conversion or video mixing are separate services
• Grids are high performance large scale sevices
H.323
Conference
Management
supported
Overlay Network
Environment
Internet / ISDN
Firewall
transversal
under the support
of VPN
SIP
No
IETF
Access Grid
VRVS
Global-MMCS
supported
supported
supported
No
Need multicast
support ,
No firewall
tunneling
Reflector
Infrastructure
Software
Multicast
Publish/Subscribe
Firewall & NAT
transversal
(VPN optional)
Data Collaboration
Limited: T.120
whiteboard, File
FTP
No
Limited to (
PowerPoint,
Chat )
Limited to
( Shared
browsing and
VNC )
allows full
integration of all
tools
Floor
Control
Mechanism
H.243
T.120
No
Under
development
No
No
Chairman based
Flexible role setting
Scalability
Not good
Not good
Good
Good
Good
Support
heterogeneous
clients
No
No
No
H.323,
MBONE
CommunityTo-Community
Collaboration
No
No
No
No
H.323, SIP,
MBONE,
RealPlayer, PDA,
Cell Phone
Yes
Comparison of Global-MMCS with Competitive Systems