1 / 21

A Framework for Dynamically Configurable Multimedia Distribution

A Framework for Dynamically Configurable Multimedia Distribution. Fabio Kon and Roy H. Campbell Department of Computer Science University of Illinois at Urbana-Champaign http://choices.cs.uiuc.edu. Introduction. Multimedia interfaces are becoming increasingly important.

kynton
Télécharger la présentation

A Framework for Dynamically Configurable Multimedia Distribution

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Framework for Dynamically Configurable Multimedia Distribution Fabio Kon and Roy H. Campbell Department of Computer Science University of Illinois at Urbana-Champaign http://choices.cs.uiuc.edu ECOOP'99 PhDOOS

  2. Introduction • Multimedia interfaces are becoming increasingly important. • Future systems will abandon dull interfaces based on text and still images. • Video, audio, and animations will prevail. • TV and Radio broadcasting systems will join the network. ECOOP'99 PhDOOS

  3. Problems with Multimedia Streaming Technology • Existing MBone and unicast solutions do not provide good levels of • Control • Flexibility • Scalability • Quality of Service Management ECOOP'99 PhDOOS

  4. Previous Work • Object-Oriented Multimedia Distribution System in C++ [KCT+98]. • Multimedia Reflectors work as relays. • Network of Reflectors can be remotely: • reconfigured • monitored • Decentralized administration. ECOOP'99 PhDOOS

  5. A Reflector Network ECOOP'99 PhDOOS

  6. The Multimedia Reflector • Applications: • Live Multimedia Streaming • Stored Content Streaming • Audio/Videoconference • Multiple Channels • Multiple Input and Output connections ECOOP'99 PhDOOS

  7. C++ abstract class Connection: open(); close(); Bind(); Connect(); Send(); Receive(); Bandwidth Control Subclasses: UDPConnection TCPConnection MulticastConnection Most of Reflector’s code deals only with the abstract class. Data Distribution Protocols ECOOP'99 PhDOOS

  8. Experimentation(First Round) • Live video from NASA’s Pathfinder Mission • 3 months • > 30 reflectors in 5 continents • > 1 million video sessions • Java Applet decoding 24kbps of • H.263 video • GSM audio ECOOP'99 PhDOOS

  9. Problems Encountered 1. Code update: • Bug fixes and new versions. i. Manually FTP new code to host machine ii. Telnet to host machine a. Shutdown existing version b. Start new version • Repeat this dozens of times ECOOP'99 PhDOOS

  10. Problems Encountered 2. Dynamic Reconfiguration • Channels, in/out connections, max # of clients. • Configuration information was kept in a centralized location. A. Update the configuration database. B. Connect to each Reflector and instruct it to download the new configuration. • Tiresome and error prone. ECOOP'99 PhDOOS

  11. Problems Encountered 3. Fault-Tolerance • Supported with redundant streams  Extreme waste of bandwidth. • Solution: • Use Infrastructure offered by dynamicTAO, a dynamically configurable CORBA ORB. ECOOP'99 PhDOOS

  12. Solution • Wrap the Reflector with a CORBA IDL interface. • dynamicTAO, CORBA ORB extended with a reconfiguration meta-interface to allow: 1. Uploading executable code. 2. Dynamically load components into the runtime. 3. Change configuration parameters of applications. 4. Modify internal structure of component-based apps. ECOOP'99 PhDOOS

  13. Reconfiguration Agents • SysAdmins use a GUI to build agents for • reconfiguration • inspection • GUI is used to 1. Build distribution graph 2. Select reconfiguration and inspection commands 3. Visualize results. ECOOP'99 PhDOOS

  14. Reconfiguration Agents • Code uploading example: upload_impl Connection UDPCon load_impl Connection UDPCon hook_impl >Connection Reflector UDPConnection • Reconfiguration example: configure_impl Reflector “MAX_NUM_CLIENTS=200” ECOOP'99 PhDOOS

  15. Fault-Tolerance • Goal: maximize availability without relying on redundant data transmission. • Solution: • The Reflector maintains a list of alternate inputs for each of its channels. • If a Reflector dies, first it tries to inform its neighbors. • Input silent for too long  switch to another one. ECOOP'99 PhDOOS

  16. Representing Inter-Component Dependence • ComponentConfigurator framework • Implementations in C++, Java, and CORBA ECOOP'99 PhDOOS

  17. Implementation Status • Completed • Non-CORBA version of the Reflector • dynamicTAO and infrastructure for reconfiguration agents • Working on • CORBA wrapper for the Reflector • Breaking Reflector code into dynamically loadable components • Fault-tolerance with the help of the ComponentConfigurator Framework ECOOP'99 PhDOOS

  18. Future Work • Automatic Management of data flows to • minimize user delays • optimize network utilization • support load balancing • Integrate with CORBA Naming and Trading Services ECOOP'99 PhDOOS

  19. Related Work • White Pine’s Multipoint Control Unit for Meeting Point (proprietary protocols for reconfiguration, no code updates). • Our system can be seen as • an extension to the idea of the MBone, or • a set of tools for managing MBone broadcasts. ECOOP'99 PhDOOS

  20. Conclusions • Internet Multimedia Distribution Systems will replace existing Radio and TV networks. • But first, they must provide high levels of flexibility, configurability, and scalability. • Our design builds on OO Frameworks, CORBA, mobile agents, and dependence representation. • Not limited to Multimedia. • These methods can be applied in any large, distributed component-based system. ECOOP'99 PhDOOS

  21. For More Information... • dynamicTAO web site: http://choices.cs.uiuc.edu/2K/dynamicTAO • ComponentConfigurator source code and documentation: http://choices.cs.uiuc.edu/2K/ComponentConfigurator • E-Mail: f-kon@cs.uiuc.edu ECOOP'99 PhDOOS

More Related