Welcome to RealNetworks RealServer, the streaming media solution! RealServer streams audio, video, images, animation, text, and other data types to client computers. This newest version of RealServer has been designed to keep pace with your multimedia needs as they continue to change. This chapter introduces the core RealServer concepts and features.
To begin serving streamed content right away, see Chapter 1, "Quick Start".
RealServer is server software that streams both live and prerecorded media over a network. The streamed data can originate either on the Internet or within an intranet. The client receives the media in real time, and without having to wait for clips to be downloaded.
RealServer consists of the following components:
rmserver.exe
for Windows-based platforms and rmserver
for UNIX-based platforms.
rmserver.cfg
.
RealServer is a member of the RealSystem family of software tools. Three components make up RealSystem:
The following diagram illustrates how these RealSystem components work together.
The person who designs the content that you serve from your RealServer uses various production tools to create the content. These tools convert audio, video, or animation to a data type format that RealServer can stream.
The content creator can also create a Synchronized Multimedia Integration Language (SMIL) file to synchronize several clips within a presentation. A SMIL file coordinates the layout and playing of two or more media clips in parallel (simultaneously) or in sequence.
Because RealServer can deliver content in many different formats, there are a number of tools that people can use in creating content. Production tools can optimize the content for efficient delivery over the Internet, based on the nature of the material and the capabilities of the client computers.
The content creator can either prepare media clips in advance or encode a live event as it happens. In this manual, we use the generic term encoder to refer to the software (such as RealProducer, for example) that converts live or preexisting media into a format that RealServer can deliver.
Just as a Web server delivers pages to Web browsers over the Internet, RealServer serves media clips to clients (clips are created with the production tools described earlier in this chapter). It enables users to stream the media clips rather than download them. By streaming the content, the user can begin to watch the clip almost immediately and doesn't have to wait for the entire file to be downloaded.
A client such as RealPlayer plays the streamed media.
In addition to the RealSystem software, you may want to work with other software as well, such as:
RealServer streams media to clients over networks and the Internet. It's usually employed in conjunction with a Web server. Note that you can use some RealServer features with third-party products to create specialized functions, such as report analysis.
RealServer uses two connections, known as channels, to communicate with clients: one for communication with the client, and one for actual data. The communication channel is known as the control channel, as it is over this line that RealServer requests and receives passwords and clients send instructions such as fast-forward, pause, and stop. Media clips themselves, on the other hand, are actually streamed over a separate data channel.
Every link to content begins with a protocol identifier, such as rtsp
, pnm
, or http
.
RealServer uses two main protocols to communicate with clients: Real Time Streaming Protocol (RTSP) and Progressive Networks Audio (PNA).
Occasionally, RealServer will use HTTP for metafiles that point to RealServer content, and for HTML pages that it serves (such as the Web-based RealSystem Administrator). It may also be used to deliver clips to clients that are located behind firewalls.
Within these channels, RealServer uses two other protocols for sending instructions and data:
For more information on RealServer's use of ports, see Chapter 9, "Firewalls and RealServer".
Because many firewalls are configured to allow only TCP connections or HTTP traffic through them, you may need to make some adjustments to receive data from an encoder or to work with clients if there's a firewall between the encoder or a given client and your RealServer. For more information, see Chapter 9, "Firewalls and RealServer".
When an encoder connects to RealServer and sends encoded data, it uses a one-way UDP connection to communicate with RealServer as illustrated in the following diagram.
Some firewalls don't permit UDP packets, so RealProducer includes a setting that uses two-way TCP connections to send the same encoded content, as many firewalls do allow TCP traffic to pass through. This type of connection is illustrated in the following diagram.
When the user clicks a link that points to a streaming media presentation, RealPlayer opens a two-way connection with RealServer. This connection uses TCP to send information back and forth between RealPlayer and RealServer as shown in the following diagram.
As RealServer approves the request, it sends the requested clip to a RealPlayer along a one-way UDP channel, as shown in the following diagram.
As it receives the streamed clip, RealPlayer plays it at high fidelity.
There are two main ways that users access and experience media clips:
There's also a third, less common method, which uses on-demand clips but delivers them as if they were live:
The following table summarizes the three types of user participation.
Once you've determined how you want the user to experience a given clip (on-demand or live), you choose the delivery method you'll configure RealServer to use:
Prerecorded clips are delivered, or streamed, to users upon request. A user who clicks a link to an on-demand clip watches the clip from the beginning. The user can fast-forward, rewind, or pause the clip. For more information, see Chapter 10, "Streaming On-Demand Presentations".
Live clips can be delivered in several different ways. As the administrator, you will decide which method to use, based on your network needs. A user who clicks a link to a live clip joins the live event in progress. Because the event is happening in real time, fast-forward, rewind, and pause capabilities are not available.
Live clips are broadcast as they're created. These clips don't exist as files, because they're created as the live event happens. You can save live content as files by using the live archiving feature. The archived files become on-demand content and are handled accordingly.
This is the simplest and most popular method of live broadcasting, as it requires little or no configuration. For more information, see Chapter 11, "Unicasting Live Presentations".
Splitting is the term used to describe how one RealServer can share its live media streams with other RealServers. Clients connect to these other RealServers, called splitters, rather than to the main RealServer where the streams originate. Splitting reduces the traffic load on the source RealServer, enabling it to distribute other broadcasts simultaneously. This method moves the broadcasts closer to clients, improving the quality of service transmission for them. For more information, see Chapter 12, "Splitting Live Presentations".
Multicasting is a standardized method for delivering presentations to large numbers of users over a network or the Internet. For more information, see Chapter 13, "Multicasting Live Presentations".
The same delivery options are available as for live broadcasting: unicasting, splitting, and multicasting. The only difference is that, with simulated live broadcasting, the event has already been recorded, and no connection to a production tool or encoder is needed. The G2SLTA program included with RealServer sends the on-demand file to RealServer the same as if it were an actual live event. For more information, see "Creating a Live Source with G2SLTA".
The following table lists the delivery methods, uses, and requirements for the different user participation styles.
In some cases, you can use more than one live delivery method for the same broadcast, to reach the maximum number of users while minimizing network bandwidth consumption.
Links to media clips served by RealServer are made up of several components which tell RealServer where to look for each clip and how to serve it.
Content creators tend to embed most links in Web pages. A user looking at a content creator's site will click the link, and through the process described in "How RealServer Works" earlier in this chapter, the user will receive the media.
For example, the following link for a RealVideo file would appear in a Web page (the URL for the media clip is in bold type):
<a href="
http://realserver.example.com:8080/ramgen/Concerts/French/
debussy.rm">Click here to watch today's concert!</a>
The clip may be prerecorded, live, or prerecorded but delivered as live.
![]() |
Additional Information |
---|
For detailed instructions for creating links to RealSystem clips, see Chapter 5, "Understanding Link Formats". |
This manual assumes that you (the RealServer administrator) are managing your RealServer, and that a second person (the content creator) is generating media clips and SMIL presentations and putting links in Web pages. In reality, you may be performing both roles, especially when you're setting up a feature and you want to do some quick tests. For the purpose of this discussion, however, it's easier to discuss the roles as being performed by different people.
The RealServer administrator needs to provide the content creator with certain types of information so that she can create the correct links in her SMIL files and Web pages. If the content creator is encoding live material, she will need to know where to direct the live data.
Content creators will need the following information:
To encode a live stream for a specific RealServer, content creators need the following information:
RealServer can broadcast to other RealServers, which can redistribute the presentations to clients, thus reducing the load on the original RealServer. This feature is called splitting. If you're working with the administrator of the other RealServer (the receiver), you'll need to give that person certain information about your RealServer settings. That information is discussed in Chapter 12, "Splitting Live Presentations".
If there are users within your network who either cannot receive presentations from RealServers on the Internet or who receive poor-quality streams, the information in Chapter 9, "Firewalls and RealServer", will help the firewall administrator understand what changes can be made to enhance the users' experience.
In determining both how much bandwidth is available on your network and how much should be allotted to RealServer, network administrators can help you arrive at suitable numbers.
In addition to the streaming media delivery methods described earlier in this chapter, there are many other RealServer features that benefit users and help you administer your RealServer.
With RealServer, you can have ads dynamically inserted into streaming presentations. Offering integration with any HTML-based ad serving system, RealServer uses SMIL to lay out ads and requested content in RealPlayer.
The access control feature enables you to associate specific client addresses with the ability or permissions required to connect to specific ports.
Authentication verifies the identity of a user or RealPlayer computer that's requesting streamed media. This verification can take the form of asking for a name and password, or it can be entirely hidden from the user.
Firewalls aren't specifically a RealServer feature, but they're very important in networked environments. A firewall is a software program that monitors, and in some cases controls, all transmissions between an organization's internal network (or intranet) and the Internet. Whether your network consists of a company's local area networks (LANs), wide area networks (WANs), and the Internet, the firewall's role is to ensure that all online communication, in both directions, conforms to your organization's security policies and practices.
RealServer works with your existing user accounts and directory structure to make users' media files available for streaming. You allocate a minimum and maximum number of connections for each account, based on the number of streams permitted by your license. Allocating on a per-connection basis, rather than by stream, ensures that all files (including SMIL files that reference multiple streams) will always be served.
RealSystem Administrator includes Java Monitor, a real-time tool that displays activity on your RealServer. It shows who's using your RealServer, the peak use times, which files are requested the most, and other information.
RealProxy is RealNetworks software that stores streamed media. Although it's not part of RealServer, RealProxy can work with RealServer to share the distribution load, thereby conserving bandwidth over an intranet and enabling RealServers to send streams to a wider audience. RealProxy is generally installed on an intranet or on a large ISP. When a client on the intranet or hosted by the ISP requests a streamed media file, RealProxy intercepts the request and sends it on behalf of the client. RealProxy then stores the requested media and streams it to any other clients who subsequently request the same material.
RealSystem Administrator is the Web-based console for customizing RealServer features. You can run it from any browser on your network. Note that it's password-protected when it's first installed; you can create additional user names and passwords for anyone else who'll be helping you administer your RealServer.
For important events for which parallel sources are required, RealServer can use multiple sources for the same event. Should one source become unavailable, RealServer will automatically switch to the next source.
Using RealServer, you can create reports containing historical data that enable you to see trends and gather information. Track who visited your site and for how long, what clips they watched, and whether they watched them all the way through to the end. This information is stored in the access log. Any error messages that occur are recorded in the error log. Requests for streams that will be cached are stored in the cached requests log.
Just as users can right-click an HTML file and view the HTML code that was used to create a Web presentation, RealServer contains a feature that enables users of RealPlayer 7 and later to view the source code for SMIL presentations or information about media clips. When a user right-clicks a presentation or clicks View>Clip Source, RealServer sends the user's browser a Web page that contains the text of the SMIL file or data about the clip.
You can use RealServer components in combination with one another to conserve bandwidth and deliver high-quality presentations. The following table summarizes RealServer features and how they work together.
For more information on exactly how any two of these features work in tandem, refer to the chapters that are devoted to those features.
The list of features available to your RealServer is stored in a file in the License directory. License files are written in XML format.
To upgrade your license so that you can use more of RealServer's features, contact RealNetworks or your reseller.
If your organization uses several RealServers that all use the same set of features, you can configure these to share a single license. Refer to "Distributed Licensing".
The following features are controlled by the license:
You can read the file with RealSystem Administrator by clicking About in the left-hand frame. A second browser window appears, displaying the values for your license file. If you have multiple license files, RealServer will show the values for all of them at once.
You can also read the file with any text editor. Although you can read the file with a text editor, you cannot make changes. Any changes to the file invalidate it. If you have multiple files, you will need to read each file individually and calculate any additive features (such as number of streams) yourself.
The LicenseDirectory
variable in the configuration file tells RealServer where to look for license information.
![]() |
Additional Information |
---|
To learn about the configuration file, see "Configuration File". |
If the license file is invalid, RealServer will report an error message, add the error to the error log file, and will not start. To resolve this, remove the license file, and restart RealServer. It will use minimum settings, as described in the "Minimum Settings" table. Contact RealNetworks for a correct license file.
If your RealServer suddenly allows fewer connections or otherwise appears to be using minimum settings, either your license has expired or RealServer is unable to start using the settings you've selected. The table below lists the minimum settings present in every RealServer.
![]() |
Note |
---|
Evaluation versions may have lower minimum values and additional features. |