remarks on grids e-science cyberinfrastructure and peer-to-peer

52
Global Multimedia Collaboration System Wenjun Wu Indiana University Bloomington IN 47401 [email protected] http:// www.globalmmcs.org

Upload: sandra4211

Post on 14-Dec-2014

338 views

Category:

Documents


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Global Multimedia Collaboration System

Wenjun Wu

Indiana University Bloomington IN 47401

[email protected]

http://www.globalmmcs.org

Page 2: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Outline Service-Oriented Collaboration Current main stream real-time collaboration

technologies• Videoconferencing: H.323, SIP, Access Grid

• Instant messaging & VoIP: MSN/Aol/Yahoo, Jabber, Skype Global-MMCS introduction

Page 3: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Service Oriented Collaboration Collaboration has

a) Mechanism to set up members (people, devices) of a “collaborative sessions”

b) Shared generic tools such as text chat, white boards, audio-video conferencing

c) Shared applications such as Web Pages, PowerPoint, Visualization, maps, (medical) instruments ….

b) and c) are “just shared objects” where objects could be regarded as Web Services

We can port objects to Web Services and build a general approach for making Web services collaborative

a) is a “Session Service” which is set up in many different ways

Page 4: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Shared Event in Collaboration All collaboration is about sharing events defining state changes

• Audio/Video conferencing shares events specifying in compressed form audio or video

• Shared display shares events corresponding to change in pixels of a frame buffer

• Instant Messengers share updates to text message streams

• Microsoft events for shared PowerPoint (file replicated between clients) as in Access Grid

Using Web services allows one to expose update events of all kinds as message streams

Need publish/subscribe approach to share messages

Page 5: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Session Service in Collaboration Membership: Participant list Role & floor assignment

• Management policy based on shared objects ( audio/video, text, whiteboard, game

Ad-hoc or formally schedule Session is also a “shared meta object” associated with

shared objects • It needs eventing to keep consistent state as well

Page 6: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Multimedia Streaming Service

Streaming-In Stream-Out filter process media “events” between a stream

source and stream sink; and can be shared composite media service is a DAG ( directed

acyclic graph) common case ~ a filter chain QoS(in) QoS(out) ( bandwidth, delay,

jitter,loss) for example: video/audio mixing, transcoding,

video-audio synchronization

Page 7: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

VoIP & Videoconferencing technology

Page 8: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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

Page 9: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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/H.243 is the conference control protocol

T.120 is the data conference protocol

Page 10: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Typical H.323 StackH.323

IP

UDP

RTP

RTCP

TCP/UDP TCP UDPUDP TCP

Audio

Codecs

G.711

G.723.1

G.729

..

Video

Codecs

H.261

H.263

H.264

..V.150 T.120

TCP/UDP

T.38

H.225.0

Call

Signaling

H.245H.225.0

RAS

Terminal Control and ManagementData

ApplicationsMedia Control

Multimedia Applications, User Interface

http://www.packetizer.com

Page 11: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

H.323 Architecture

Gatekeeper(security, QoS, routing etc.)

MC MPMCU

H.323 Terminal 1

H.323 Terminal 2

H.323 Terminal N

....

Packet Switch Network

Page 12: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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.

Page 13: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

rtspd

Quick-time

GatekeeperSIPUA

SIP

H.323

RTSP

sipd

sipconfsipconf

sipumsipum

sip323sip323SIP-H.323

signaling gateway

Conferencing

Programmable SIP servers

Unified messaging

Streaming media

Hardware SIP phone

Desktop SIP clients

sipgwsipgw

PSTN

MGCPSIP-MGCP gateway

SIP-PSTN gateway

Regular telephones

A Integrated SIP Service System: CINEMAFrom Columbia University

Page 14: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Sipconf : SIP based Centralized Sipconf : SIP based Centralized conferencingconferencing

sipcsipc

http://www.cs.columbia.edu/~kns10/software/sipconfhttp://www.cs.columbia.edu/~kns10/software/sipconf

SIP323SIP323

SIP/PSTNSIP/PSTN

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

Page 15: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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.

MCU is just a endpoint connected to VoIP softswitch cloud Most vendors offer hardware solutions Thought as services and controllers but specialized protocols and

implementations; NOT Service-Oriented Architectures! Only support small size or medium size meetings ( < 20 sites )

Page 16: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Access Grid 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

Page 17: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Access Grid II Supports multiple screens and dominates some

research communities

Page 18: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Instant Messaging & VoIP

Page 19: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Proprietary IM MSN/Yahoo/AOL

• Ah-hoc small-group collaboration

• Text, audio-video, gaming and others….

• Remote Presence Service

( typical publish/subscribe messaging application )

• Massive “chat servers” running behind to support millions of users across the world

• Limited size of buddy list and multi-party meeting

• Poor/fair quality for audio/video communication

• Close protocol which is unfriendly to third-party developers

Page 20: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Skype Skype: p2p IM&VoIP solution

gained a big success. • improving sound quality ( use new iLBC audio codec ) from

Global Sound

• Uses a variant of IETF Stun to identify NAT and firewall

• using p2p overlay (Kazaa) rather than expensive, centralized infrastructure.

• provided supplemental features like instant messaging service.

• Free on-net VoIP service and a fee-based off-net SkypeOut service that allows calling to PSTN and cellular phones

• Millions of download and on-line users in the world

Page 21: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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

Page 22: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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 :

had a huge development recently, especially in wireless world 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 verygood 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 And no way to take full use of private MCU resources ( Imagine how to use these private MCUs to create a meeting that have

thousands of participants )

Page 23: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

But they are simply not good enough!• 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

• Skype : Most promisinguse its own propriety protocols and can’t interoperate with other legacy VoIP clients such as H.323 and SIPonly support small-scale audio conferencing ( at most 5-party ) and have no video serviceSkype-2 is said to be able to support 10-party in dual-core Intel machines

Above all, no system can support medium / large size meetings in current Internet and adapt different client devices

Page 24: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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 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, … )

Page 25: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

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 ) for all kinds of collaboration:

audio/video, game, whiteboard

• Session border management

Integrate different AV sessions ( H.323 , SIP, Access Grid, RealStreaming … )

Simply regard these bridging gateways as “add-on services”

Page 26: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Global-MMCS Service Architecture

Media Delivery, Storage Services( QoS : Reliable and Secure Delivery,Transport Mechanism,

Massive Dependable Storage )

Media Processing Service( Adaptation, Mixing,

Transcoding ... )

Session Management Service( Membership, Role

Management, Floor control)

AudiovisualCollaboration

Shared DataApplication

InstantMessaging

Page 27: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

XGSP Web Service MCU Architecture

SIP H323 Access Grid Native XGSPAdmire

Gateways convert to uniform XGSP Messaging

High Performance (RTP)and XML/SOAP and ..

Media ServersFilters

Session ServerXGSP-based Control

NaradaBrokeringAll Messaging

Use Multiple Media servers to scale to many codecs and manyversions of audio/video mixing

NB Scales asdistributed

WebServices

NaradaBrokering

Page 28: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Break up into “Services” Monolithic MCU becomes many different “Simple Services”

• Session Control• Thumbnail “image” grabber• Audio Mixer• Video Mixer• Codec Conversion• Helix Real Streaming• PDA Conversion• H323/SIP Session/Signaling Gateways

As independent can replicate particular services as needed• Codec conversion might require 20 services for 20 streams

spread over 5 machines 1000 simultaneous users could require:

• 1 session controller, 1 audio mixer, 10 video mixers, 20 codec converters, 2 PDA converters and 20 NaradaBrokers

Support with a stream optimized Grid Farm in the sky• Future billion way “Video over IP” serving 3G Phones and home media

centers/TV’s could require a lot of computing

Page 29: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

GlobalMMCS and NaradaBrokering All communication – both control and “binary” codecs are

handled by NaradaBrokering Control uses SOAP and codecs use RTP transport Each stream is regarded as a “topic” for NB Each RTP packet from this stream is regarded as an “event” for

this topic Can use replay and persistency support in NB to support

archiving and late clients Can build customized stream management to administer replay,

and who gets what stream in what codec NaradaBrokering supports unicast and multicast Use firewall penetration and network monitoring services in NB

to improve Q0S

Page 30: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

NaradaBrokering

Stream

NB supports messagesand streams

NB role for Grid isSimilar toMPI role for MPP

Queues

Page 31: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Incorporating Support for Audio/Video Delivery into

NaradaBrokering

Added support for an unreliable transport protocol, UDP

Implemented a fixed size (fast) topic (8 bytes). Designed a new compact event with minimum headers. Added support for legacy RTP clients (both unicast

clients and multicast groups) Improved the routing algorithm to handle real-time

audio and video stream delivery.

Page 32: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

XGSP Conference Control Architecture

Conference Manager

NaradaBrokering

User 5

User 3User 2

NodeManager

ApplicationInstance 0

ApplicationInstance 1

User 1

App Sessions

ConferenceCalendar

ApplicationRegistry

UserAccounts

Page 33: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

XML based General Session ProtocolThe XGSP conference control includes three services: Conference management supports user sign-in, user create/terminate/join/leave/invite-

into XGSP conferences conference calendar service Application session management provides users with the service for creating/terminating

application sessions, managing session related services such as audio/video mixing

Floor control manages the access to shared collaboration resources in

different application sessions for example, in a large scale of meetings having thousands of people, only

limited people are allowed to become presenters so that they can send audio/video

Page 34: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Global-MMCS Community Grid This includes an open source protocol independent Web Service

“MCU” which will scale to an arbitrary number of users and provides support for thousands of simultaneous users of collaboration services.

The function of A/V media server is distributed using NaradaBrokering architecture.• Media Servers mix and convert A/V streams

Open XGSP MCU based on the following open source projects• openh323 is basis of H323 Gateway• NIST SIP stack is basis of SIP Gateway• NaradaBrokering is open source messaging• Java Media Framework basis of Media Servers• Helix Community http://www.helixcommunity.org for Real

Media http://www.globalmmcs.org open source release

Page 35: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Audio/Video Meeting Tests for single broker

0

5

10

15

20

25

30

35

40

0 500 1000 1500 2000

number of participants

Ave

rag

e la

ten

cy i

n m

s

first userlast user

Average

0

20

40

60

80

100

120

0 500 1000 1500

number of participant

Ave

rag

e L

aten

cy i

n m

s

f irst

last

average

Audio Meeting Tests Video Meeting Tests

Page 36: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Distributed Brokers Tests

Machine 1

Broker 1Broker 2Broker 3Broker 4

VideoTransmitter

VideoReceivers

VideoReceivers

VideoReceivers

VideoReceivers

MeasuringReceivers

Linux Cluster 1Linux Cluster 2

0

30

60

90

120

150

180

0 200 400 600 800 1000

Number of receivers

Avr

g. L

aten

cy in

ms

broker1

broker2

broker3

broker4

• Going through multiple brokers does not introduce considerable overhead. • Scalability of the system can be increased almost linearly by adding new brokers

Page 37: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

1

10

100

0 20 40 60 80 100 120 140 160

La

ten

cy (

Mill

ise

con

ds)

Number of Users per Site

Average Latencies for Video Conferencing Clients at different locations. Sites in Indiana, Florida, New York and Cardiff

IndianaNew York

FloridaCardiff UK

Page 38: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Analysis of the broker network’s performance

Test results showed that the broker network can scale well for both single large size meetings and multiple smaller size meetings.

In large size meetings, the capacity of the broker network is increased with respect to the capacity of the added brokers.

In multiple smaller size meetings, the distribution of users among brokers are important. Inter-broker stream exchange can reduce the scalability. Few users should not be scattered around the broker network.

In wide area networks, this videoconferencing system provides many benefits with distributed broker architecture: bandwidth savings, latency savings, and better quality services.

In summary, thousands of concurrent users can easily be supported in distributed broker settings.

Page 39: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

media services computation overhead

Media Services Computation Overhead

Audio Mixing 46% while 20 audio mixers ( six active speakers ) are running

Video Mixing 94% while 4 video mixers ( 4-way mixing ) are running

Image Grabber 70% while 50 image grabbers are running

Real Streaming Producer

90% while 4, 23fps stream producers are running

Page 40: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Improved JMF Performance VIC Old JMF Client Fast JMF Client

1 8% - 9% 15% - 16 % 6% - 7%

2 13% - 14% 24% - 25 % 9% - 10%

3 17% - 18% 33% - 34 % 15% - 16%

4 23% - 24% 40% - 41% 17% - 18%

5 26% - 27% 46% - 47% 23% -24%

6 32% - 33% 51% - 52% 27% - 28%

7 35% - 36% 58% - 59% 31% - 32%

8 40% - 41% 62% - 63% 34% - 35%

Fraction of CPU used versus number of received streamsThe CIF-size video sequence from a 30-second movie with a lot of motions is streamed to the clients. Each stream is encoded in H.261, and has average bandwidth of 400Kbps and 20 fps.

Page 41: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Global-mmcs user interface

Page 42: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer
Page 43: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Polycom, Access Grid and RealVideo views of

video-mixed streams using GlobalMMCS

Page 44: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

MPEG-4 vs. H.261

We added MPEG4 video to Java Media Framework Higher quality and flexible video sizes including

distributed pixels

Page 45: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Coupled Diverse Streams GlobalMMCS supports many diverse streams managed by “video

system”• Different audio and video codecs• Shared display using video codecs (MPEG4 or H261)• Motion JPEG – stream of images to and from PDA

NaradaBrokering represents these and other collaborative streams just a “topics”; collaboration from multiple clients subscribing to a topic• Text Chat• Traditional lossless codec based shared display• White boards• Control streams

Streams can be linked to provide composite topics• eSports project linking video streams and real time annotation

of any frame• Can rewind and choose any frame of a real-time stream

Page 46: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

eSports SnapshotMaster Video AnnotationWhiteboard

Collaborative Video AnnotationWhiteboard

Synchronized Replay of archived video and annotation

Page 47: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Esports with sport movies

Page 48: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

Integration of PDA, Cell phone and Desktop Grid Access

NB Support for optimizedPDA Communication

Page 49: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

PDA Download video as images

Page 50: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

GlobalMMCS Status/Futures I 1. New Collaboration tools

• Shared IDL (Visualization), PowerPoint, OpenOffice (Applications need a month or so more)

• SVG game ( stable )

• Whiteboard ( stable )

• e-Sport ( prototype)

• Jabber IM client ( prototype)

• XGSP needs extension to support 2. JMF Audio/Video client ( stable)

• performance enhancement finished

• new codec ( MPEG4-DivX finished; try MPEG4-Xvid and H.264)

• support different platform ( Linux, Mac – Mac well developed but need to chase bug(s) )

• support NAT/firewall transparently like Skype

• Google Desktop PlugIn (under development )

Page 51: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

GlobalMMCS Status/Futures II 3. Replay & Archive (prototype)

• Replay Engine based on NaradaBroker Storage Service

• XGSP-RTSP gateway

• Extend RTSP and NaradaBrokering for Instant Replay 4. Web Server Portal ( stable)

• Standard calendar service ( iCalendar, vCalendar)

• Flexible conference management

• Need to package UI’s as portlets 5. Conferencing Media Processing Service ( Stable)

• Support new codec (H.264 )

• Add DCT domain MPEG4-H.261 transcoder 6. H.323 Gateway ( Stable)

• Import it to Linux platform

Page 52: Remarks on Grids e-Science CyberInfrastructure and Peer-to-Peer

GlobalMMCS Status/Futures III 7. RealStreaming Gateway ( Stable )

• Import it to Linux• Support Mobile clients

8. Global-MMCS deployment & test• Core performance measurements complete• Test under the setting of multiple NaradaBroker and

NAT/Firewall• support deployment for AFRL, NASA, DOE portals• test with remote sites

9. SmartPhone Clients (prototype) 10. Improved video codec-based shared display 11. Scheduler of dynamic services sensitive to streaming

bandwidth requirement as well as CPU use of codec conversion