next up previous
Next: Service Model Up: dc: A Live Webcast Previous: Webcast Production Model

   
Internet Webcasting System Architecture

The Internet webcasting system architecture is based on the premise that producing a webcast is too complex and computationally intensive for a single application or processor. A collection of distributed processes is required. The webcasting service model divides the processes into clients and services. Services provide functionality for the webcast. For example, one service can be responsible for controlling a camera while another service is responsible for computing video effects. Client applications are processes that use services.

Figure 4 shows the distribution of services used to produce the Berkeley MIG Seminar webcast. Notice the similarity between the software architecture shown in this figure and the physical infrastructure shown previously in figure 2. Dc is a client application that uses services to produce the webcast. The specific services shown in the figure are described below. Services send streams into the studio session. Dc receives the streams in the studio session, selects a subset for webcast, and transmits those streams into the broadcast session. Rtc services are transcoders that forward and optionally convert streams in the broadcast session to the transmission sessions.


  
Figure: Webcast Architecture.
\begin{figure} \hrule \vspace{1em} \centerline{ \scalebox{0.4}{ \psfig{figure=webarch.eps} } } \vspace{1em} \hrule \end{figure}

The distributed service architecture has many benefits over a monolithic application. First, independent services can be developed and deployed rapidly since modifications are not required to existing services. Second, clients adapt to the existence of specific services. They discover services dynamically so they can accommodate a constantly changing infrastructure. Third, the services used by clients can change from one webcast to the next. Fourth, a client depends on the collection of services but not on one service alone. A fault with a single service will not cripple the client. And lastly, processing load can be distributed to a set of commodity machines instead of a single server.

The webcasting service model is an extensible architecture that supports integration and control of services. New services are integrated into the infrastructure through a discovery protocol. Clients follow this protocol to locate services. The model also specifies protocols to incorporate user interfaces that can be used to control the service.


 
next up previous
Next: Service Model Up: dc: A Live Webcast Previous: Webcast Production Model
Tai-Ping Yu
2000-03-17