Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
SERVOGrid and Grids for Realtime and Streaming Applications Grid School Vico Equense July 21 2005 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 http://grids.ucs.indiana.edu/ptliupages/presentations/GridSchool2005/ [email protected] http://www.infomall.org 1 Thank you SERVOGrid and iSERVO are major collaborations In the USA, JPL leads project involving UC Davis and Irvine, USC and Indiana university Australia, China, Japan and USA are current international partners This talk takes material from talks by • Andrea Donnellan • Marlon Pierce • John Rundle Thank you! 2 Grid and Web Service Institutional Hierarchy • We will discuss some items at layer 4 and some at layer 1(and perhaps 2) 4: Application or Community of Interest Specific Services such as “Run BLAST” or “Look at Houses for sale” 3: Generally Useful Services and Features Such as “Access a Database” or “Submit a Job” or “Manage Cluster” or “Support a Portal” or “Collaborative Visualization” 2: System Services and Features Handlers like WS-RM, Security, Programming Models like BPEL or Registries like UDDI 1: Container and Run Time (Hosting) Environment OGSA and other GGF/W3C/ ……… WS-* from OASIS/W3C/ Industry Apache 3Axis .NET etc. Motivating Challenges 1. 2. 3. What is the nature of deformation at plate boundaries and what are the implications for earthquake hazards? How do tectonics and climate interact to shape the Earth’s surface and create natural hazards? 4. How do magmatic systems evolve and under what conditions do volcanoes erupt? 5. What are the dynamics of the mantle and crust and how does the Earth’s surface respond? 6. What are the dynamics of the Earth’s magnetic field and its interactions with the Earth system? What are the interactions among ice masses, oceans, and the solid Earth and their implications for sea level From NASA’s Solid Earth Science Working Group Report, Living on a change? Restless Planet, Nov. 2002 4 US Earthquake Hazard Map US Annualized losses from earthquakes are $4.4 B/yr 5 Characteristics of Solid Earth Science • Widely distributed heterogeneous datasets • Multiplicity of time and spatial scales • Decomposable problems requiring interoperability forEnabled by Grids and Networks full models • Distributed 6 Facilitating Future Missions SERVOGrid develops the necessary infrastructure for future spaceborne missions such as gravity or InSAR (interferometric Synthetic Aperture Radar) Satellite. This can measure land deformation by comparing samples 7 Interferometry Basics Single Pass (Topography) t1 A2 t2 Repeat Pass (Topographic Change) B A1 + d (t1) (t2 ) D change h t1 t2 z 8 The Northridge Earthquake was Observed with InSAR The Mountains grew 40 cm as a result of the Northridge earthquake. 1993–1995 Interferogram 9 Objective Develop real-time, large-scale, data assimilation grid implementation for the study of earthquakes that will: • Assimilate (means integrate data with model) distributed data sources and complex models into a parallel highperformance earthquake simulation and forecasting system • Real-time sensors (support high performance streams) • Simplify data discovery, access, and usage from the scientific user point of view (using portals) • Support flexible efficient data mining (Web Services) 10 Data Deluged Science Computing Paradigm Data Assimilation Information Simulation Informatics Model Ideas Datamining Reasoning Computational Science 11 Repositories Federated Databases Database Sensors Streaming Data Field Trip Data Database Sensor Grid Database Grid Research SERVOGrid Education Compute Grid Data Filter Services Research Simulations ? GIS Discovery Grid Services Customization Services From Research to Education Analysis and Visualization Portal Grid of Grids: Research Grid and Education Grid Education Grid Computer Farm 12 Solid Earth Research Virtual Observatory • Web-services and portal based Problem Solving Environment • Couples data with simulation, pattern recognition software, and visualization software • Enable investigators to seamlessly merge multiple data sets and models, and create new queries. Data • • • • Space-based observational data Ground-based sensor data (GPS, seismicity) Simulation data Published/historical fault measurements Analysis Software • Earthquake fault • Lithospheric modeling • Pattern recognition software 13 Component Grids We build collections of Web Services which we package as component Grids • Visualization Grid • Sensor Grid • Management Grid • Utility Computing Grid • Collaboration Grid • Earthquake Simulation Grid • Control Room Grid • Crisis Management Grid • Intelligence Data-mining Grid We build bigger Grids by composing component Grids using the Service Internet 14 Flood CIGrid … Electricity CIGrid … Gas Services and Filters Flood Services and Filters Collaboration Grid Sensor Grid Registry Gas CIGrid Portals GIS Grid Data Access/Storage Visualization Grid Compute Grid Metadata Core Grid Services Security Notification Workflow Messaging Physical Network Critical Infrastructure (CI) Grids built as Grids of Grids 15 QuakeSim Portal Shots 16 1000 Years of Simulated Earthquakes Simulations show clustering of earthquakes in space and time similar to what is observed. 17 SERVOGrid Apps and Their Data GeoFEST: Three-dimensional viscoelastic finite element model for calculating nodal displacements and tractions. Allows for realistic fault geometry and characteristics, material properties, and body forces. • Relies upon fault models with geometric and material properties. Virtual California: Program to simulate interactions between vertical strike-slip faults using an elastic layer over a viscoelastic half-space. • Relies upon fault and fault friction models. Pattern Informatics: Calculates regions of enhanced probability for future seismic activity based on the seismic record of the region • Uses seismic data archives RDAHMM: Time series analysis program based on Hidden Markov Modeling. Produces feature vectors and probabilities for transitioning from one class to another. • Used to analyze GPS and seismic catalog archives. • Can be adapted to detect state change events in real time. 18 Pattern Informatics (PI) PI is a technique developed by john rundle at University of California, Davis for analyzing earthquake seismic records to forecast regions with high future seismic activity. • They have correctly forecasted the locations of 15 of last 16 earthquakes with magnitude > 5.0 in California. See Tiampo, K. F., Rundle, J. B., McGinnis, S. A., & Klein, W. Pattern dynamics and forecast methods in seismically active regions. Pure Ap. Geophys. 159, 2429-2467 (2002). • http://citebase.eprints.org/cgibin/fulltext?format=application/pdf&identifier=oai%3Aar Xiv.org%3Acond-mat%2F0102032 PI is being applied other regions of the world, and has gotten a lot of press. • Google “John Rundle UC Davis Pattern Informatics” 19 Real-time Earthquake Forecast Seven large events with M 5 have occurred on anomalies, or within the margin of error: 1. 2. 3. 4. Big Bear I, M = 5.1, Feb 10, 2001 Coso, M = 5.1, July 17, 2001 Anza, M = 5.1, Oct 31, 2001 Baja, M = 5.7, Feb 22, 2002 5. Gilroy, M=4.9 - 5.1, May 13, 2002 6. Big Bear II, M=5.4, Feb 22, 2003 7. San Simeon, M = 6.5, Dec 22, 2003 Plot of Log10 DP(x) Potential for large earthquakes, M 5, ~ 2000 to 2010 JB Rundle, KF Tiampo, W. Klein, JSS Martins, PNAS, v99, Supl 1, 2514-2521, Feb 19, 2002; KF Tiampo, KF Tiampo, JB Rundle, S. McGinnis, S. Gross and W. Klein, Europhys. Lett., 60, 481-487, 2002 20 World-WideWorld-Wide Forecast Hotspot Map for Likely Locations of Forecast Hotspot Map World-Wide Earthquakes, M > 5, 1965-2000 Great Earthquakes M 7.0 theJan Decade Green Circles = Large Earthquakes M For 7 from 1, 2000 –2000-2010 Dec 1, 2004 Circles: LargeEarthquakes Earthquakes from - Present GreenBlue Circles = Large M December 7 from Jan1,1,2004 2000 – Dec 1, 2004 Dec. 26 M ~ 9.0 Northern Sumatra Dec. 23 M ~ 8.1 Macquarie Island 21 Pattern Informatics in a Grid Environment PI in a Grid environment: • Hotspot forecasts are made using publicly available seismic records. Southern California Earthquake Data Center Advanced National Seismic System (ANSS) catalogs • Code location is unimportant, can be a service through remote execution • Results need to be stored, shared, modified • Grid/Web Services can provide these capabilities Problems: • How do we provide programming interfaces (not just user interfaces) to the above catalogs? • How do we connect remote data sources directly to the PI code. • How do we automate this for the entire planet? Solutions: • Use GIS services to provide the input data, plot the output data Web Feature Service for data archives Web Map Service for generating maps • Use HPSearch tool to tie together and manage the distributed data sources and code. 22 Japan 23 GIS and Sensor Grids OGC has defined a suite of data structures and services to support Geographical Information Systems and Sensors GML Geography Markup language defines specification of geo-referenced data SensorML and O&M (Observation and Measurements) define meta-data and data structure for sensors Services like Web Map Service, Web Feature Service, Sensor Collection Service define services interfaces to access GIS and sensor information Grid workflow links services that are designed to support streaming input and output messages We are building Grid (Web) service implementations of these specifications for NASA’s SERVOGrid 24 A Screen Shot From the WMS Client 25 WMS uses WFS that uses data sources <gml:featureMember> <fault> <name> Northridge2 </name> <segment> Northridge2 </segment> <author> Wald D. J.</author> <gml:lineStringProperty> <gml:LineString srsName="null"> <gml:coordinates> -118.72,34.243 118.591,34.176 </gml:coordinates> </gml:LineString> </gml:lineStringProperty> </fault> </gml:featureMember> ` WMS le ec tio n Fe a ol tur eC eC oll Ge tF ea e r tu r tu a Fe a Fe et G tur e Client io ct n s ad i l ro ] a R [a-b Railroads WFS Server Hi River [a-d] Bridge [1-5] ry SQL Query ue LQ SQ SQ L gw ay [1 2- Q ue 18 ry ] Interstate Highways Rivers Bridges 90 Can add Google or Yahoo Map WMS Web Services 26 SOPAC GPS Sensor Services The Scripps Orbit and Permanent Array Center (SOPAC) GPS station network data published in RYO format is converted to ASCII and GML 27 Position Messages SOPAC provides 1-2Hz real-time position messages from various GPS networks in a binary format called RYO. Position messages are broadcasted through RTD server ports. We have implemented tools to convert RYO messages into ASCII text and another that converts ASCII messages into GML. 28 SOPAC GPS Services We implemented services to provide realtime access to GPS position messages collected from several SOPAC networks. Data Philosophy: post all data before any transformations; post transformed data Data are streams and not files; they can be archived to files X WS WS X WS Data-mining, Archiving Web Services X WS X X Stream Pub-Sub Queued Stream Control Then we couple data assimilation tools (such as RDAHMM) to real-time streaming GPS data. 29 Real-Time Access to Position Messages We have a Forwarder tool that connects to RTD server port to forward RYO messages to a NB topic. RYO to ASCII converter service subscribes this topic to collect binary messages and converts them to ASCII. Then it publishes ASCII messages to another NB topic. ASCII to GML converter service subscribes this topic and publishes GML 30 RDAHMM GPS Signal Analysis Courtesy of Robert Granat, JPL Drain Reservoir Earthquake 31 Handling Streams in Web Services Do not open a socket – hand message to messaging system Use Publish-Subscribe as overhead negligible Model is totally asynchronous and event based Messaging system is a distributed set of “SOAP Intermediaries” (message brokers) which manage distributed queues and subscriptions Streams are ordered sets of messages whose common processing is both necessary and an opportunity for efficiency Manage messages and streams to ensure reliable delivery, fast replay, transmission through firewalls, multicast, custom transformations 32 Different ways of Thinking Services and Messages – NOT Jobs and Files Service Internet: Packets replaced by Messages The BitTorrent view of Files • Files are chunked into messages which are scattered around the Grid • Chunks are re-assembled into contiguous files Streams replace files by message queues Queues are labeled by topics • System MIGHT chose to backup queues to disk but you just think of messages on distributed queuestimes Note typical time to worry about is a Millisecond Schedule stream-based services NOT jobs 33 DoD Data Strategy Only Handle Information Once (OHIO) – Data is posted in a manner that facilitates re-use without the need for replicating source data. Focus on re-use of existing data repositories. Smart Pull (vice Smart Push) – Applications encourage discovery; users can pull data directly from the net or use value added discovery services (search agents and other “smart pull techniques). Focus on data sharing, with data stored in accessible shared space and advertised (tagged) for discovery. Post at once in Parallel – Process owners make their data available on the net as soon as it is created. Focus on data being tagged and posted before processing (and after processing). 34 NaradaBrokering Queues Stream NB role for Grid is Similar to NB supports messages 35 and streams Traditional NaradaBrokering Features Multiple protocol transport support In publish-subscribe Paradigm with different Protocols on each link Transport protocols supported include TCP, Parallel TCP streams, UDP, Multicast, SSL, HTTP and HTTPS. Communications through authenticating proxies/firewalls & NATs. Network QoS based Routing Allows Highest performance transport Subscription Formats Subscription can be Strings, Integers, XPath queries, Regular Expressions, SQL and tag=value pairs. Reliable delivery Robust and exactly-once delivery in presence of failures Ordered delivery Producer Order and Total Order over a message type. Time Ordered delivery using Grid-wide NTP based absolute time Recovery and Replay Recovery from failures and disconnects. Replay of events/messages at any time. Buffering services. Security Message-level WS-Security compatible security Message Payload options Compression and Decompression of payloads Fragmentation and Coalescing of payloads Messaging Related Compliance Java Message Service (JMS) 1.0.2b compliant Support for routing P2P JXTA interactions. Grid Feature Support NaradaBrokering enhanced Grid-FTP. Bridge to Globus GT3. Web Services supported Implementations of WS-ReliableMessaging, WS-Reliability and WS-Eventing. 36 Features for July 12 2005 Releases Production implementations of WS-Eventing, WS-RM and WS-Reliability. • WS-Notification when specification agreed SOAP message support and NaradaBrokers viewed as SOAP Intermediaries Active replay support: Pause and Replay live streams. Stream Linkage: can link permanently multiple streams – using in annotating real-time video streams Replicated storage support for fault tolerance and resiliency to storage failures. Management: HPSearch Scripting Interface to streams and services Broker Discovery: Locate appropriate brokers 37 Transit Delay (Milliseconds) Mean transit delay for message samples in NaradaBrokering: Different communication hops 9 8 7 6 5 4 3 2 1 0 hop-2 hop-3 hop-5 hop-7 100 1000 Message Payload Size (Bytes) Pentium-3, 1GHz, 256 MB RAM 100 Mbps LAN 38 JRE 1.3 Linux Standard Deviation for message samples in NaradaBrokering Different communication hops - Internal Machines 0.8 hop-2 hop-3 hop-5 hop-7 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 1000 1500 2000 2500 3000 3500 Message Payload Size (Bytes) 4000 4500 5000 39 Consequences of Rule of the Millisecond Useful to remember critical time scales • • • • 1) 0.000001 ms – CPU does a calculation 2a) 0.001 to 0.01 ms – Parallel Computing MPI latency 2b) 0.001 to 0.01 ms – Overhead of a Method Call 3) 1 ms – wake-up a thread or process (do simple things on a PC) • 4) 10 to 1000 ms – Internet delay 2a), 4) implies geographically distributed metacomputing can’t in general compete with parallel systems 3) << 4) implies a software overlay network is possible without significant overhead • We need to explain why it adds value of course! 2b) versus 3) and 4) describes regions where method and message based programming paradigms important 40 Possible NaradaBrokering Futures Support for replicated storages within the system. • In a system with N replicas the scheme can sustain the loss of N-1 replicas. Clarification and expansion of NB Broker to act as a WS container and SOAP Intermediary Integration with Axis 2.0 as Message Oriented Middleware infrastructure Support for High Performance transport and representation for Web Services • Needs Context catalog under development Performance based routing • The broker network will dynamically respond to changes in the network based on metrics gathered at individual broker nodes. Replicated publishers for fault tolerance Pure client P2P implementation (originally we linked to JXTA) Security Enhancements for fine-grain topic authorization, multicast keys, Broker attacks 41 Controlling Streaming Data NaradaBrokering capabilities can be accessed by messages (as in WS-*) and by a scripting interface that allows topics to be created and linked to external services Firewall traversal algorithms and network link performance data can be accessed HPSearch offers this via JavaScript This scripting engine provides a simple workflow environment that is useful for setting up Sensor Grids Should be made compatible with Web Service workflow (BPEL) and streaming workflow models Triana and Kepler • Also link to WS-Management 42 NaradaBrokering topics 43 Role of WS-Context There are many WS-* specifications addressing metadata and both many approaches and many trade-offs There are Distributed Hash Tables (Chord) to achieve scalability in large scale networks Managed dynamic workflows as in sensor integration and collaboration require • Fault-tolerance • Ability to support dynamic changes with few millisecond delay • But only a modest number of involved services (up to 1000’s) We are building a WS-Context compliant metadata catalog supporting distributed or central paradigms Use for OGC Web catalog service with UDDI for slowly varying meta-data 44 Publish-Subscribe Streaming Workflow: HPSearch HPSearch is an engine for orchestrating distributed Web Service interactions • It uses an event system and supports both file transfers and data streams. • Legacy name HPSearch flows can be scripted with JavaScript • HPSearch engine binds the flow to a particular set of remote services and executes the script. HPSearch engines are Web Services, can be distributed interoperate for load balancing. 45 Data can be stored and retrieved from the 3rd part repository (Context Service) WS Context WFS (Tambora) (Gridfarm001) NaradaBroker network: Used by HPSearch engines as well as for data transfer WMS Data Filter HPSearch (Danube) (TRex) Virtual Data flow WMS submits script execution request (URI of script, parameters) HPSearch hosts an AXIS service for remote deployment of scripts PI Code Runner (Danube) Accumulate Data Run PI Code Create Graph Convert RAW -> GML HPSearch (Danube) GML (Danube) Actual Data flow HPSearch controls the Web services Final Output pulled by the WMS HPSearch Engines communicate using NB Messaging infrastructure SOAP Message Structure I SOAP Message consists of headers and a body • Headers could be for Addressing, WSRM, Security, Eventing etc. Headers are processed by handlers or filters controlled by container as message enters or leaves a service Body processed by Service itself The header processing defines the “Web Service Distributed Operating System” Containers queue messages; control processing of headers and offer convenient (for particular languages) service interfaces Handlers are really the core Operating system services as they receive and give back messages like services; they just process and perhaps modify different elements of SOAP Message Container Workflow H1 H2 H3 H4 Body F1 F2 F3 F4 Container Handlers Service 47 Merging the OSI Levels All messages pass through multiple operating systems and each O/S thinks of message as a header and a body Important message processing is done at • • • • Network Client (UNIX, Windows, J2ME etc) Web Service Header Application EACH is < 1ms (except for small sensor clients and except for complex security) But network transmission time is often 100ms or worse Thus no performance reason not to mix up places processing done IP TCP App SOAP 48 Application Specific Grids Generally Useful Services and Grids Workflow WSFL/BPEL Service Management (“Context etc.”) Service Discovery (UDDI) / Information Service Internet Transport Protocol Service Interfaces WSDL Base Hosting Environment Protocol HTTP FTP DNS … Presentation XDR … Session SSH … Transport TCP UDP … Network IP … Data Link / Physical Higher Level Services Service Context Service Internet Bit level Internet (OSI Stack) Layered Architecture for Web Services and Grids 49 WS-* implies the Service Internet We have the classic (CISCO, Juniper ….) Internet routing the flood of ordinary packets in OSI stack architecture Web Services build the “Service Internet” or IOI (Internet on Internet) with • Routing via WS-Addressing not IP header • Fault Tolerance (WS-RM not TCP) • Security (WS-Security/SecureConversation not IPSec/SSL) • Data Transmission by WS-Transfer not HTTP • Information Services (UDDI/WS-Context not DNS/Configuration files) • At message/web service level and not packet/IP address level Software-based Service Internet possible as computers “fast” Familiar from Peer-to-peer networks and built as a software overlay network defining Grid (analogy is VPN) SOAP Header contains all information needed for the “Service Internet” (Grid Operating System) with SOAP Body containing information for Grid application service SOAP Message Structure II Content of individual headers and the body is defined by XML Schema associated with WS-* headers and the service WSDL SOAP Infoset captures header and body structure XML Infoset for individual headers and the body capture the details of each message part Web Service Architecture requires that we capture Infoset structure but does not require that we represent XML in angle bracket <content>value</content> notation H1 hp1 hp2 H2 hp3 H3 hp4 H4 hp5 Body bp1 bp2 Infoset represents semantic structure of message and its parts bp3 51 High Performance XML I There are many approaches to efficient “binary” representations of XML Infosets • MTOM, XOP, Attachments, Fast Web Services • DFDL is one approach to specifying a binary format Assume URI-S labels Scheme and URI-R labels realization of Scheme for a particular message i.e. URIR defines specific layout of information in each message Assume we are interested in conversations where a stream of messages is exchanged between two services or between a client and a service i.e. two end-points Assume that we need to communicate fast between endpoints that understand scheme URI-S but must support conventional representation if one end-point does not understand URI-S 52 High Performance XML II First Handler Ft=F1 handles Transport protocol; it negotiates with other end-point to establish a transport conversation which uses either HTTP (default) or a different transport such as UDP with WSRM implementing reliability • URI-T specifies transport choice Second Handler Fr=F2 handles representation and it negotiates a representation conversation with scheme URI-S and realization URI-R • Negotiation identifies parts of SOAP header that are present in all messages in a stream and are ONLY transmitted ONCE Fr needs to negotiate with Service and other handlers illustrated by F3 and F4 below to decide what representation they will process F1 F2 F3 F4 Container Handlers 53 High Performance XML III Filters controlled by Conversation Context convert messages between representations using permanent context (metadata) catalog to hold conversation context Different message views for each end point or even for individual handlers and service within one end point • Conversation Context is fast dynamic metadata service to enable conversions NaradaBrokering will implement Fr and Ft using its support of multiple transports, fast filters and message queuing; H1 H2 H3 H4 Conversation Context URI-S, URI-R, URI-T Replicated Message Header Body Transported Message Handler Message View Ft Fr F3 Service Message View F4 Container Handlers Service 54 In Summary… Measurement of crustal deformation and new computational methods will refine hazard maps from 100 km and 50 years to 10 km and 5 years. http://quakesim.jpl.nasa.gov http://servogrid.org 55 GlobalMMCS Web Service Architecture Use Multiple Media servers to scale to many codecs and many versions of audio/video mixing Session Server XGSP-based Control NaradaBrokering All Messaging NB Scales as distributed Admire Web Services SIP H323 Media Servers Filters High Performance (RTP) and XML/SOAP and .. Access Grid Native XGSP Gateways convert to uniform XGSP Messaging NaradaBrokering 56 GlobalMMCS Architecture Non-WS collaboration control protocols are “gatewayed” to XGSP NaradaBrokering supports TCP (chat, control, shared display, PowerPoint etc.) and UDP (Audio-Video conferencing) Audio Video Web Service Instant Messaging Shared Display Shared Web Service Web Service Web Service …. XGSP Conference Control Service Event Messaging Service (NaradaBrokering) 57 XGSP Example: New Session <CreateAppSession> <ConferenceID> GameRoom </ConferenceID> <ApplicationID> chess </ApplicationID> <AppSessionID> chess-0 </AppSessionID> <AppSession-Creator> John </AppSession-Creator> <Private> false </Private> </CreateAppSession> <SetAppRole> <AppSessionID> chess-0 </AppSessionID> <UserID> Bob </UserID> <RoleDescription> black </RoleDescription> </SetAppRole> <SetAppRole> <AppSessionID> chess-0 </AppSessionID> <UserID> Jack </UserID> <RoleDescription> white </RoleDescription> </SetAppRole> 58 Average Video Delays for one broker – Performance scales proportional to number of brokers Latency ms Multiple sessions One session 30 frames/sec # Receivers 59 Multiple Brokers – Multiple Meetings • 4 brokers can support 48 meetings with 1920 users in total with excellent quality. • This number is higher than the single video meeting tests in which four brokers supported up to 1600 users. • When we repeated the same test with meeting size 20, 1400 participants can be supported. Latency for meeting size 40 loss rates Number of Meetings Number of Meetings Total users Broker1 Broker2 Broker3 Broker4 (ms) (ms) (ms) (ms) 40 1600 3.34 6.93 8.43 8.37 48 1920 3.93 8.46 14.62 10.59 60 2400 9.04 170.04 89.97 25.83 Total Broker1 Broker2 Broker3 Broker4 users (%) (%) (%) (%) 40 1600 0.00 0.00 0.00 0.00 48 1920 0.12 0.29 0.50 0.50 60 2400 0.16 1.30 2.51 2.82 60 PDA Download video (using 4way video mixer service) Desktop PDA 61 Linked Stream applications Note NaradaBrokering supports composite streams linking “atomic streams” Support hybrid codecs that mix TCP (lossless) and RTP (lossy) algorithms Supports time-stamped annotations of sensor streams Atomic and composite streams can be archived and replayed e-Sports Project Video Annotated Video Frame 62