+ All Categories
Home > Documents > Applications as Web (Grid) Services and Related Issues

Applications as Web (Grid) Services and Related Issues

Date post: 27-Jan-2016
Category:
Upload: wind
View: 41 times
Download: 0 times
Share this document with a friend
Description:
Argonne 10 November 2003. Applications as Web (Grid) Services and Related Issues. PTLIU Laboratory for Community Grids Geoffrey Fox Computer Science, Informatics, Physics Indiana University, Bloomington IN 47404 http://grids.ucs.indiana.edu/ptliupages. [email protected]. Reporting work of. - PowerPoint PPT Presentation
Popular Tags:
58
1 Applications as Web (Grid) Services and Related Issues PTLIU Laboratory for Community Grids Geoffrey Fox Computer Science, Informatics, Physics Indiana University, Bloomington IN 47404 http://grids.ucs.indiana.edu/ptliupages [email protected] Argonne 10 November 2003
Transcript
Page 1: Applications as Web (Grid) Services  and Related Issues

11

Applications as Web (Grid) Services and Related Issues

PTLIU Laboratory for Community GridsGeoffrey Fox

Computer Science, Informatics, PhysicsIndiana University, Bloomington IN 47404

http://grids.ucs.indiana.edu/ptliupages

[email protected]

Argonne 10 November 2003

Page 2: Applications as Web (Grid) Services  and Related Issues

22

Reporting work of Minjun Wang PowerPoint/OpenOffice as a WS Xiaohong Qiu SVG as a WS Bryan Carpenter SVG Javascript games Sangmi Lee, Sunghoon Ko PDA and WS Shrideep Pallickara NaradaBrokering messaging Gurhan Gunduz Messaging performance module Wenjun Wu and Ahmet Uyar Global-MMCS A/V And other students not graduating in next 3 to 9

months

Page 3: Applications as Web (Grid) Services  and Related Issues

33

Client Applications and O/S I Consider applications like Word, Illustrator, Internet Explorer These haven’t dramatically changed over the last 3 or perhaps

more years

• Some complain that such products are in fact getting worse as they increase in size and complexity and correspondingly decrease in usability

Microsoft has an obvious dominance in both O/S and associated applications

Sun is trying to compete directly with StarOffice/OpenOffice which are competitive with but not clearly better than Microsoft products

• To be compatible with Microsoft Office requires reproducing its bugs?

Mozilla is very competitive with Internet Explorer but not clearly better

Page 4: Applications as Web (Grid) Services  and Related Issues

44

Client Applications and O/S II Asia – led by China – is aiming at escaping Windows

noose by developing their own (Linux) client• For cost and desire to develop their software industry

Palm O/S and Java are doing rather well in PDA/Cell-phone industry• Doesn’t seem one wants to run same applications on PDA’s

and desktops

• At least don’t want same user interface? Macintosh is doing quite well broadly as a client with a

UNIX based client Linux (Unix?) has rather specialized CLIENT user base

Page 5: Applications as Web (Grid) Services  and Related Issues

55

Lessons from Web Services Web services are an attractive way of building service side

(Middle-tier) applications with a component model• Expressed by using WSDL and meta-data• All remarks here valid for Grid and Web services!

WSRP, JSR168, Portlets, Jetspeed have taught us to distinguish user-facing and service (resource) ports on Web services and build a corresponding component model for user interfaces• Jetspeed is primitive and standards WSRP, JSR168, portlets are

incomplete• But this will surely rapidly improve as relatively obvious what to do

So Web service based applications are significantly different from classic desktop products like Word• Light weight client which is relatively easily ported between client O/S• Very easy to make collaborative using shared input port (MIMD) or

shared output port (SIMD)• Perhaps hopelessly slow due to service-client interaction (the rule of the

millisecond?)

Page 6: Applications as Web (Grid) Services  and Related Issues

66

Applications as Web Services? Build “all” classic applications in Web service style with user

interface and “real application” interacting by (WSDL/SOAP) messages and NOT by O/S controlled interrupts• This is “just” MVC (Model View Control) paradigm done very explicitly

• Quite hard because MVC not actually used very systematically

Perhaps the advantages of this architecture could be enough to shake the Microsoft hegemony in both O/S and “productivity” applications• Current challenges of Microsoft applications are trying to do as well and

not easy to see how they can do better

Immediately make a lot easier to support cross O/S applications Form the “Next Generation Client Consortium”?

• There is quite a lot of open source (but not web service based) software with which to begin

Page 7: Applications as Web (Grid) Services  and Related Issues

77

Classic MVC ParadigmClassic MVC Paradigm

Model View Controller

Model

Controller

ViewMouse eventKeyboard events

Figure MVC Model

Display

Page 8: Applications as Web (Grid) Services  and Related Issues

8

Web Service Model for Application Development

User Interface

Raw (UI) Events

Logic of Application

Semantic Events

Data

User FacingPorts

Resource Facing Ports

Events as Messages

Rendering as Messages

View

Control

Model

MessagingSystem

Interrupts in traditional monolithic applications become“real messages” not directly method callsNatural for collaboration and universal access

Page 9: Applications as Web (Grid) Services  and Related Issues

99

Next Generation Client? Access Grid (GlobalMMCS), JXTA, Mozilla (or Firebird for

browser and Thunderbird for mail), Batik SVG, OpenOffice, Better Jetspeed …..

Support Linux, Windows, Palm, Java cellphone Use W3C DOM and “better portlets” What are the principles

• Split at “user interface” events (mouse clicks) or at “semantic” events (slide change)

• What part of rendering on client (AWT, Java2D or …)

• could be different for different clients with server-side adaptors mapping

What general support (tools) do we need?• Event to message mapping and serialization

When is there a performance problem?• How “far” can server be from client?

Page 10: Applications as Web (Grid) Services  and Related Issues

10

Web Service Model for Application Development

Data

User FacingPorts

Resource Facing Ports

Events as Messages

Rendering as Messages

Another View

Control

Another versionof Model Messaging

System

User Interface (framebuffer)

Raw (UI) Events

Some Semantic Events

Logic of Application

Other Semantic Events

Page 11: Applications as Web (Grid) Services  and Related Issues

1111

What have we done in this Area? Most of this is work in progress …. PowerPoint only partially as a Web Service SVG as a Web Service and Collaborative SVG

• Example of W3C Document Object Model (DOM) PDA Interfaces and Collaboration using this

architecture Universal Access Publish-subscribe Messaging to link clients and Web

services Global-MMCS: Collaboration as a Web Service Looking at OpenOffice but not perfect

• Not Java and not W3C DOM compliant

Page 12: Applications as Web (Grid) Services  and Related Issues

1212

Handling Events (Control in MVC) Typically events (Mouse click or change node in DOM)

are handled by setting listeners for produced events• This is publish/subscribe intra-application

Collaboration whether audio-video, text-chat or shared display can be handled by collaborators subscribing to change events published by master• Publish/subscribe inter-clients

Java takes about 0.75 millisecond to handle this on a Linux server

Can handle with uniform publish/subscribe environment• http://www.naradabrokering.org

Page 13: Applications as Web (Grid) Services  and Related Issues

1313

Role of Portal and User Facing Ports

Application orContent source

WSDL

Web Service

F

I

U

O

F

I

R

O

PortalAggregate

WS-User Facing Fragments

Render

Other WSUser FacingPorts

PossibleFilter

Other WSUser FacingPorts

Page 14: Applications as Web (Grid) Services  and Related Issues

1414

UserProfile

Application orContent source

WSDL

Web Service

F

I

U

O

F

I

R

O

Render

JetspeedPortal

Selector

Filter

Control Channel

Customized View

SelectionView

Control Channel

Customized View

CustomizedUser-Facing

PortsUniversal AccessWith JetspeedWeb Services,MVC Model for applicationsAsynchronous Messaging

(NaradaBrokering)Event Service

Page 15: Applications as Web (Grid) Services  and Related Issues

1515

WSDisplay

WSViewer

WS Display

WS ViewerEvent

(Message)Service

Master

WSDisplay

WS Viewer

Collaboration as a WSSet up Session with XGSP

WebServic

e

F

I

U

O

F

I

R

O

Shared Input Port (Replicated WS) Collaboration

OtherParticipants

WebServic

e

F

I

U

O

F

I

R

O

WebServic

e

F

I

U

O

F

I

R

O

Page 16: Applications as Web (Grid) Services  and Related Issues

1616

WSDisplay

WSViewer

WS Display

WS Viewer

Event(Message)

Service

Master

WSDisplay

WS Viewer

Web Service MessageInterceptor

Collaboration as a WSSet up Session with XGSP

Application orContent source

WSDL

Web Service

F

I

U

O

F

I

R

O

Shared Output Port Collaboration

OtherParticipants

Text ChatWhiteboardMultiplemasters

Page 17: Applications as Web (Grid) Services  and Related Issues

1717

Collaborative SVG Web Service SVG is W3C 2D Vector Graphics standard and is interesting for

visualization and as a simple PowerPoint like application• Further SVG is built on W3C DOM and one can generalize results

to all W3C DOM-based applications (“all” applications in future?) Apache Batik SVG is Java and open source and so it is practical

to modify it to explore• Real Applications as a Web Service

• Collaboration as a Web Service

• MVC model and web services with implications for portlets We use NaradaBrokering and Global-MMCS to control

collaboration; support PDA Cell-phone and desktop clients; are restructuring Batik as MVC Web Service• Good progress in all areas see

• http://www.svgarena.org for SVG Games

• http://grids.ucs.indiana.edu/ptliupages/projects/carousel/ for PDA

Page 18: Applications as Web (Grid) Services  and Related Issues

1818

Document Object Model DOM (Document Object Model) defines how documents to be

accessed as distributed objects – especially as a Web service DOM has a particular tree-like specification of the Object

structure of a document It defines

• An application programming interface (API) for documents (e.g. HTML, XML documents) for Java, CORBA, Javascript ….

• Including how to change DOM• The logical structure of documents• The way a document is accessed and manipulated

DOM has a generic event model defining uniform interface for mouse and keyboard actions• Also defines events signifying change in DOM

W3C DOM builds on earlier ad-hoc DOM’s of Internet Explorer and Netscape• Surprisingly unsuccessful so far but critical for this project as allows

general approach to user interfaces

Page 19: Applications as Web (Grid) Services  and Related Issues

1919

Example of HTML DOM Here is an

example of a fragment of HTML and how it can be thought of as a tree

This is called a “document fragment” in DOM(lightweight tree)

Page 20: Applications as Web (Grid) Services  and Related Issues

2020

The Node

Interface in

CORBA IDL

Constants

Properties

Methods

Page 21: Applications as Web (Grid) Services  and Related Issues

2121

Application as a Web serviceApplication as a Web service

Participating Client

RenderingRendering

User Interface

W3C DOM Events

From Master

FromCollaborationAs a WS

Events

Application as a Web serviceApplication as a Web service

Master Client

RenderingRendering

User Interface

W3C DOM Events

To Collaborative Clients

FromCollaborationAs a WS

Events

Control flow for collaborative SVG clients

Figure 3 Control flow for collaborative SVG clients

Collaborative SVG As A Web Service

NaradaBrokering

Page 22: Applications as Web (Grid) Services  and Related Issues

2222

Collaborative SVG Chess Game in Batik Browser

Players

Observers

Page 23: Applications as Web (Grid) Services  and Related Issues

2323

Lessons from SVG Web Service This keeps DOM and Javascript Event Handlers on the Server;

keeps the Graphics version of DOM that interfaces with Java2D on client; client captures raw user interface events inside SVG frame; client captures some semantic events (zoom, change URL) in menu-bar

We identified SIMD and MIMD model of collaboration• Program is JavaScript implementing in our case chess or card game• SIMD collaboration is shared output port in Web Services model• MIMD collaboration becomes shared input port model

Internally there are pipelinesAWT/Swing GVT DOM JavaScript new DOM for user inputnew DOM GVT Java2D Framebuffer for rendering

The Graphic Vector Toolkit (GVT) module represents a view of the DOM tree in terms of Java objects that is more suitable for rendering and event handling purposes.

Can share at different points of pipeline based on software engineering issues – where is current software easiest to split

Page 24: Applications as Web (Grid) Services  and Related Issues

2424

From the Battle Lines Why not easy to convert legacy applications to WS

Although many modern applications adopt MVC (Model-View-Control) paradigm, they may not strictly follow the principles in implementation.

Not faithfully following modularized design principle   the applications does not have a clear "control" design which plays the role as the only communication channel between "model" and "view". • there exits direct linkage (not through "control") between Model and

View in the MVC paradigm. • For example, some functional modules

involve information from many stages across the pipeline rather than just provide the linkage between the two modules

Are instantiated in GUI/"view" but execute functions in the backend "model" through direct methods calls

Not providing "Object Serialization" • Object Serialization (the process of reading and writing objects) has many

uses, including remote method invocation (RMI) • In addition to the object streams, java.io has other classes and interfaces

that define the API to help classes perform serialization for its instances. • lacking of serializable feature of the modularized components makes it

hard to split the application into a Web service

Page 25: Applications as Web (Grid) Services  and Related Issues

2525

SVGBrowser

SVGBrowser

SVGBrowser

SVGBrowser

Identical Programs receiving identical eventsToken determines if browser is moving, waiting for opponent or an observer

SIMD Collaboration

SVGViewer

SVGViewer

SVGViewer

SVGViewer

SVG Model (DOM)

NaradaBrokering

Shared Output portSIMD CollaborativeWeb Service

Non Web ServiceImplementation

NaradaBrokering

Page 26: Applications as Web (Grid) Services  and Related Issues

2626

MIMD Collaboration

SVGViewer

SVGViewer

SVGViewer

SVGViewer

NaradaBrokering

Shared Input portMIMD CollaborativeWeb Service

SVG Model

SVG Model

SVG Model

SVG Model

NaradaBrokering

Page 27: Applications as Web (Grid) Services  and Related Issues

2727

PowerPoint as a Sort of Web Service

MasterClient

ConnectableObject

Sink

NaradaBrokering Message Service

User1

1

User2

Usern

PPT as a Web Service

As in Access Grid CollaborativeClient

Holds meta-data(sample of high level semanticevents) like slide number and title

Page 28: Applications as Web (Grid) Services  and Related Issues

2828

Semantic Events in PPT Web Service One can capture slide and animation semantic events such as

WindowSelectionChange WindowBeforeRightClick, WindowBeforeDoubleClick, PresentationClose, PresentationSave, PresentationOpen, NewPresentation, PresentationNewSlide, WindowActivate, WindowDeactivate, SlideShowBegin, SlideShowNextBuild, SlideShowNextSlide, SlideShowEnd, PresentationPrint, SlideSelectionChanged, ColorSchemeChanged, PresentationBeforeSave, SlideShowNextClick

We don’t know how to capture • Raw UI events such as MouseOver, MouseClicked,

MouseDoubleClicked, KeyDown, KeyUp, KeyStroke, etc.• Sound events such as SoundClipPlayed, SoundFilePlayed, etc.• Some animation events such as AnimationClipPlayed,

MoviesPlayed, AnimationFilePlayed

Page 29: Applications as Web (Grid) Services  and Related Issues

29

Integration of PDA, Cell phone and Desktop Grid Access

Page 30: Applications as Web (Grid) Services  and Related Issues

3030

Real-time Community Collaboration Desktop PC, local wireless (802.11b) and the rest of the world (Sprint

PCSVision as glimpse of next generation cell phones) Reconcile different protocols, different display areas, different O/S and

different network bandwidths

Text Chat

Page 31: Applications as Web (Grid) Services  and Related Issues

3131

Real-time Community Collaboration

PowerPoint via “Shared Pixels”

Page 32: Applications as Web (Grid) Services  and Related Issues

3232

Real-time Community Collaboration

Scalable Vector Graphics (SVG) via “Shared Web Service”

Page 33: Applications as Web (Grid) Services  and Related Issues

33

Performance of PDA Client

• Treo 300 Sprint PCS Vision Java MIDP on Palm O/S• 50 Kbit/sec bandwidth both directions• Developing optimized protocol (HHMP) to be built into

NaradaBrokering for fault-tolerance and latency hiding (pre-start HTTP connection)

0

500

1000

1500

2000

2500

3000

3500

4000

4500T

ime

(m

illis

ec

on

ds

)

Publishing Event from PDA to Server

Subscribing to Event from PDA

Latency over successive iterations

Page 34: Applications as Web (Grid) Services  and Related Issues

3434

Application Web Servicesand Universal Access

NaradaBrokering can link lightweight clients (V in MVC) to Web Services holding as a Web service the “guts of an application” (M in MVC)• This allows customizable user interfaces gotten by mapping

between client profile protocols at NB

• Supports collaboration between diverse clients

Client1

Client2

M

Agent1

Agent2

ProfilesNB

P1

P2

P

Map P to P1

Map P to P2

Web Service

Page 35: Applications as Web (Grid) Services  and Related Issues

35

NBNB

HHMP

RTP

SVG Web Service ATopic set A

(needs content adapting)

CollaborationPersonal Server

Topic set C

Subscribe/Publish toTopic set B,C

Web Service BTopic set B

(does not need content adaption)

Subscribe/Publish toTopic set A,B

( Subscribe to Topic set A instead of mobile devices and adapt the content to give Topic Set C)

Subscribe/Publish toTopic set A,C

Subscribe/Publish toTopic set A

Subscribe/Publish toTopic set B

Collaboration Personal Server and EventFlow

NB

JMS

HT

TP

HTTP/HHMP Interface (for current 3G phone service)

Page 36: Applications as Web (Grid) Services  and Related Issues

Page. 36

Web Service to Client Pipeline

• DAT (Data) stage: Data source (facing remote resources)• M&L (Model and Logic) stage: Semantic processing of the data• DTX (Data Transformer) stage: Process of filtering the object

for heterogeneous devices• PCL (Presentation client) stage: Generating abstract

presentation for each client• MCL (Minimal client) stage: Actual drawing onto user device• PDA would “just” have MCL• Desktop might have PDA and MCL• Such diagrams can be analysed formally using Petri nets

Universal user devices

real timemultimedia

I BM

computation unit

DAT M&L DTX PCL MCL

Database

Generating user presentation

User event transmit

Page 37: Applications as Web (Grid) Services  and Related Issues

Page. 37

Event Processing in Web Service to Client Pipeline

• Events allow Client and service to interact– Transformations in each module MUST be invertible

• Two directions of dataflow – Event transmission– Presentation Generation

DAT M&L DTX PCL MCL

<?xml vers

<!DOCTYPE

<!--local DT

<svg width=

<desc>This

User Event Transmission

SVG document

with the original

size of 1200 x 2000

DOM tree of

SVG

document

Rendered Image

with CSS for PDAs

(resolution of

160 x 160)

SVG browser

for PDAsActual Display

on PDA

Generating Presentation View

Page 38: Applications as Web (Grid) Services  and Related Issues

3838

Some Simple Principles One must use invertible transformations so that can propagate

information to AND from the client Don’t ever send a position (x,y) for say a mouse click – rather

send position and coordinate system specified by some transformation (as in affine transformations used in graphics)• Or send semantic meaning of click – e.g. open URL

Accumulate mouse-move events into arrays or cumulative events to avoid too many messages

Choose “cutting point” between M and V to support interactivity and performance

Jetspeed is just aggregating lots of different “Views” All messages MUST go through messaging system – it must

support all needed protocols such as those needed to minimize latency for cellphones • Messaging system has routing optimization/firewalls built in

Page 39: Applications as Web (Grid) Services  and Related Issues

39

NaradaBrokering

Minicomputer

Firewall

ComputerServer

PDA

Modem

Laptop computerWorkstationPeers

Peers

Audio/VideoConferencing Client

Audio/VideoConferencing Client

NaradaBrokering BrokerNetwork

BrokersONLYprocessmessages

Page 40: Applications as Web (Grid) Services  and Related Issues

4040

“GridMPI” v. NaradaBrokering In parallel computing, MPI and PVM provided “all the features

one needed’ for inter-node messaging NB aims to play same role for the Grid but the requirements and

constraints are very different• NB is not MPI ported to a Grid/Globus environment

Typically MPI aiming at microsecond latency but for Grid, time scales are different• 100 millisecond quite normal network latency• 30 millisecond typical packet time sensitivity (this is one audio or video

frame) but even here can buffer 10-100 frames on client (conferencing to streaming)

• <1 millisecond is time for a Java server to “think” Jitter in latency (transit time through broker) due to routing,

processing (in NB) or packet loss recovery is important property Grids need and can use software supported message functions and

trade-offs between hardware and software routing different from parallel computing

Page 41: Applications as Web (Grid) Services  and Related Issues

4141

NaradaBrokering Based on a network of cooperating broker nodes

• Cluster based architecture allows system to scale in size• Grid routing topologies are open research issue?

Originally designed to provide uniform software multicast to support real-time collaboration linked to publish-subscribe for asynchronous systems.

Perhaps better thought of as stream not message handler Now has several core functions

• Reliable order-preserving “Optimized” Message transport (based on performance measurement) in heterogeneous multi-link fashion with TCP, UDP, SSL, HTTP, and will add GridFTP

• General publish-subscribe including JMS & JXTA and support for RTP-based audio/video conferencing

• General software routing to avoid network problem• Distributed XML event selection using XPATH metaphor• QoS, Security profiles for sent and received messages• Interface with reliable storage for persistent events

Page 42: Applications as Web (Grid) Services  and Related Issues

4242

Grid Messaging Substrate

Consumer Service

SOAP+HTTPGridFTPRTP ….

Messaging Substrate

Consumer Service

Standard client-serverstyle communication.

Substrate mediatedcommunication removestransport protocoldependence.

SOAP+HTTPGridFTPRTP ….

Any Protocols satisfying QoS

Messaging Substrate has “intelligence” “any desired fault tolerance” “logging” etc.Hope to demonstrate with multicast fault tolerant GridFTP

Page 43: Applications as Web (Grid) Services  and Related Issues

4343

Laudable Features of NaradaBrokering Is open source http://www.naradabrokering.org available now;

major new release for SC03 Will have end-point “plug-in” as well as standalone brokers

• end-point is service or user-interface machine Will have a discovery service to find nearest brokers Does tunnel through most firewalls without requiring ports to be

opened Links to NWS (Network Weather Service) style performance

estimation systems Supports JXTA (peer-to-peer network), JMS (Java Message

Service) and more powerful native mode Transit time < 1 millisecond per broker Will have setup and broker network administration module

Page 44: Applications as Web (Grid) Services  and Related Issues

4444

NaradaBrokering Naturally Supports Filtering of events (streams) to support different end-point

requirements (e.g,. PDA versus desktop, slow lines, different A/V codecs)

Virtualization of addressing, routing, interfaces (OGSI versus pure Web services for example)

Federation and Mediation of multiple instances of Grid services as illustrated by • Composition of Gridlets into full Grids (Gridlets are single computers in

P2P case)

• JXTA with peer-group forming a Gridlet

Monitoring of messages for Service management and general autonomic functions

Fault tolerant data transport Virtual Private Grid with fine-grain Security model

Page 45: Applications as Web (Grid) Services  and Related Issues

4545

Virtualizing Communication Communication specified in terms of user goal and Quality of

Service – not in choice of port number and protocol Protocols have become overloaded e.g. MUST use UDP for A/V

latency requirements but CAN’t use UDP as firewall will not support ………

A given communication can involve multiple transport protocols and multiple destinations – the latter possibly determined dynamically

Dial-upFilter

SatelliteUDP

FirewallHTTP

A

B1

Hand-HeldProtocol

FastLink

Software MulticastB2

B3NB Broker Client Filtering

NB Brokers

Page 46: Applications as Web (Grid) Services  and Related Issues

4646

Performance Monitoring Every broker incorporates a Monitoring service that

monitors links originating from the node. Every link measures and exposes a set of metrics

• Average delays, jitters, loss rates, throughput. Individual links can disable measurements for

individual or the entire set of metrics. Measurement

intervals can also be varied

Monitoring Service, returns measured metrics to Performance Aggregator.

BrokerNode

LinkData

BrokerNode

LinkData

Performance AggregationService

Control MessageExchange

Aggregates infofrom nodes in acertain domain

MonitoringService

Page 47: Applications as Web (Grid) Services  and Related Issues

47

Pentium-3, 1GHz, 256 MB RAM100 Mbps LAN

JRE 1.3 Linux

hop-3

0

1

2

3

4

5

6

7

8

9

100 1000

Tra

nsit

Del

ay

(Mill

isec

onds

)

Message Payload Size (Bytes)

Mean transit delay for message samples in NaradaBrokering: Different communication hops

hop-2

hop-5 hop-7

Page 48: Applications as Web (Grid) Services  and Related Issues

4848

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

1000 1500 2000 2500 3000 3500 4000 4500 5000

Sta

nd

ard

De

via

tion

(M

illis

eco

nd

s)

Message Payload Size (Bytes)

Standard Deviation for message samples in NaradaBrokering Different communication hops - Internal Machines

hop-2hop-3hop-5hop-7

Page 49: Applications as Web (Grid) Services  and Related Issues

49

111.5

112

112.5

113

113.5

114

114.5

100 200 300 400 500 600 700 800 900 1000

Me

an

tra

nsi

t d

ela

y (

Mill

ise

con

ds)

Content Payload Size in Bytes

Transit delays for Content Payloads.Broker at Cardiff, Clients at Indiana

Delay

Page 50: Applications as Web (Grid) Services  and Related Issues

50

0.6

0.8

1

1.2

1.4

1.6

1.8

2

2.2

2.4

2.6

100 200 300 400 500 600 700 800 900 1000

Sta

nd

ard

De

via

tion

(M

illis

eco

nd

s)

Content Payload Size in Bytes

Standard deviation for Content Payloads.Broker at Cardiff, Clients at Indiana

Standard Deviation

Page 51: Applications as Web (Grid) Services  and Related Issues

5151

Architecture of Message Layer Need to optimize not only routing of particular messages but classic

publish/subscribe problem of integrating different requests with related topics (subscribe to sports/basketball/lakers and sports)

Related to Akamai, AOL … caching and Server optimization problem

1-> N Grid Clients

Hypercube ofNB Brokers (logicalnot physical)

N≈100 clientsper leaf node for A/V conferencing

Scale usingNB brokernetwork

Page 52: Applications as Web (Grid) Services  and Related Issues

5252

Global-MMCS 2.0 XGSP based MCU We are building an open source protocol independent Web

Service “MCU” which will scale to an arbitrary number of users and provide integrated thousands of simultaneous users collaboration services.

We will deploy it globally and hope to test with later this year. The function of A/V media server will be distributed using

NaradaBrokering architecture.• Media Servers mix and convert A/V streams and are built as

Web Services Open Global-MMCS 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 from Indiana• Java Media Framework basis of Media Servers

Page 53: Applications as Web (Grid) Services  and Related Issues

5353

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 54: Applications as Web (Grid) Services  and Related Issues

5454

Polycom, Access Grid and RealVideo views of multiple streams using

A/V Web Service integrating SIP and H323

Page 55: Applications as Web (Grid) Services  and Related Issues

5555

Performance Test : GlobalMMCS1.0 We conducted extensive performance tests on audio and video

servers. Video:

• The test shows that our video server is capable of supporting 100-300 clients if there is only one video sender.

• Video Server Machine : 1.2GHz Intel Pentium III dual CPU, 1GB MEM, RedHat Linux 7.3

Audio: • Our tests show that audio server can support 5 concurrent

sessions (250 participants in total) without any packet droppings. • Audio Server Machine: 2.5GHz Pentium 4 CPU, 512MB memory,

Windows XP machine Scale with logarithmic Broker network

Page 56: Applications as Web (Grid) Services  and Related Issues

56

0

10

20

30

40

50

60

0 200 400 600 800 1000 1200 1400 1600 1800 2000

De

lay

(Mill

ise

con

ds)

Packet Number

Average delays per packet for 50 video-clients NaradaBrokering Avg=2.23 ms, JMF Avg=3.08 ms

NaradaBrokering-RTP JMF-RTP

Page 57: Applications as Web (Grid) Services  and Related Issues

57

0

1

2

3

4

5

6

7

8

0 200 400 600 800 1000 1200 1400 1600 1800 2000

Jitte

r (

Mill

ise

con

ds)

Packet Number

Average jitter (std. dev) for 50 video clients.

NaradaBrokering Avg=0.95 ms, JMF Avg=1.10 ms

NaradaBrokering-RTP JMF-RTP

Page 58: Applications as Web (Grid) Services  and Related Issues

5858

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

0 200 400 600 800 1000 1200 1400 1600 1800 2000

Jitt

er

(M

illis

eco

nd

s)

Packet Number

900 audio clientsNaradaBrokering-RTP

JMF-RTP


Recommended