Quick Start Guide

Cisco Internet Streamer CDS 2.4-2.5

1 Introduction

This guide helps you quickly configure the Content Delivery System (CDS) and its components, the Content Delivery Engines (CDEs). This guide assumes the following steps have already been performed:

1. All CDEs have been rack installed.

2. All cable and power connections are completed.

3. CDS software has been installed on each CDE.

For more information about installing the CDEs, see the Cisco Content Delivery Engine 100/200/300/400 Hardware Installation Guide. the Cisco Content Delivery Engine 110 Hardware Installation Guide, or the Cisco Content Delivery Engine 205/220/420 Hardware Installation Guide. For more information about configuring the CDS, see the Cisco Internet Streamer CDS 2.4 Software Configuration Guide. See the "Related Publications" section for the links to online documentation.

CDS Network Topology

This guide uses the CDS network illustrated in Figure 1 to describe the configuration steps. The specific topology, as well as hostnames and device IP addresses, for your network will vary. This network example consists of the following components:

•2 CDE-200s configured as Service Engines (SEs)

–NE-DEMO-SE1 — Tier 1 location

–NE-DEMO-SE2 — Tier 2 location

•1 CDE-200 configured as a Service Router (SR)

–NE-DEMO-SR — Tier 2 location

•1 CDE-100 configured as a Content Delivery System Manager (CDSM)

–NE-DEMO-CDSM

•2 computers set up as the following:

–Origin Server: ofqdn.cds.com

With the following software installed:

•Windows Media Server

•Windows Media Encoder

•Web Server

•Darwin Streaming Server

•Darwin Encoder

–Client computer

With the following media players installed:

•Windows Media Player

•Web browser

•Apple QuickTime Player

•Adobe Flash Player browser plug-in

•The Delivery Service example used in the configuration steps has the following parameters:

Activating the Devices in the Content Delivery System

Step 1 Using a web browser, log in via HTTPS to the CDSM using port 8443. In this example, the IP address assigned by the DHCP administrator is 172.22.30.158, so the URL is https://172.22.30.158:8443.

The Security Alert message is displayed.

Note If you are using Mozilla Firefox version 3.01 or higher as your web browser program, you need to add the CDSM IP address to the exception list. After entering the CDSM IP address with port 8443, Firefox displays a Secure Connection Failed message with a link stating "Or you can add an exception." Click this link, then click Add Exception. The Add Security Exception dialog box is displayed. Click Get Certificate. and then click Confirm Security Exception. The CDSM IP address has been added to the exception list and you will no longer get the Secure Connection Failed message.

e. From the Parent Location drop-down list, choose DEMO-LOCATION-TIER1 as the parent.

f. Click Submit. The location is created.

Step 5 Activate the Service Engines and associate them with their locations. Choose Devices > Devices and click the Edit icon to the left of NE-DEMO-SE1 to edit the device. The Device home page is displayed.

Step 10 Repeat steps 5 through 9 for NE-DEMO-SE2 and NE-DEMO-SR, selecting DEMO-LOCATION-TIER2 as the location.

Step 11 View the Devices Table page by choosing Devices > Devices. The device activation is in progress. After a while, which can be a few minutes, the status for each device displays "Online."

Updating a CDE Software Image

If you need to update a CDE software image for a device, place the software image on an FTP server accessible from the device's network and use the copy ftp install <ipaddress> <userid> <image name> command.

You will be prompted for the FTP username and password.

Configuring the Domain Name System Server

The Domain Name System (DNS) server must be configured with the hostnames and IP addresses of the SEs and SR. Each hostname will resolve to the IP address.

Step 1 Log in to the DNS server, and edit the /var/named/chroot/etc/named.conf file.

//

// named.conf for Red Hat caching-nameserver

//

options {

directory "/var/named";

//dumpfile "/var/named/data/cache_dump.db";

//statistics-file "/var/named/data/named_stats.txt";

listen-on {2.224.22.36;};

/*

* If there is a firewall between you and nameservers you want

* to talk to, you might need to uncomment the query-source

* questions using port 53, but BIND 8.1 uses an unprivileged

* port by default.

*/

query-source address * port 53;

};

//

// a caching only nameserver config

//

controls {

inst 127.0.0.1 allow { localhost; } keys { rndckey; };

Step 2 Add zone cds.com IN to the named.conf file.

file "named.or";

};

zone "cds.com" IN {

type mater';

file "cds.com.zone";

allow-update { none; };

};

Step 3 Edit the /var/named/chroot/var/named/cds.com zone entry.

Note Be sure to use the IP address of the primary interface on the SR (in the example, this is 10.1.4.13), otherwise a DNS query will not get a response from the SR.

$TT 1D

@ UB SIA Kbxdbs,cds,cin, riit,Kbxdbs,cds,cin (

2002050200 ; serial

3H ; refresh

15M ; retry

1W ; expire

1D ; minimum TTL

;

; Name Servers

IN NS Lnxdns.cds.com.

IN A 127.0.0.1

IN AAAA ; ; 1

IN A 2.224.22.36

;

; Service Routed Domains

;

rfqdn IN NS NE-DEMO-SR; Primary SR

NE-DEMO-SE1 IN A 3.1.4.10

NE-DEMO-SE2 IN A 3.1.4.14

NE-DEMO-SR IN A 3.1.4.13

Step 4 Open the named.conf file.

//

// named.conf for Red Hat caching-nameserver

//

options {

directory "/var/named";

//dumpfile "/var/named/data/cache_dump.db";

//statistics-file "/var/named/data/named_stats.txt";

listen-on {2.224.22.36;};

/*

* If there is a firewall between you and nameservers you want

* to talk to, you might need to uncomment the query-source

* questions using port 53, but BIND 8.1 uses an unprivileged

* port by default.

*/

query-source address * port 53;

};

//

// a caching only nameserver config

//

controls {

inst 127.0.0.1 allow { localhost; } keys { rndckey; };

Step 5 Edit the named.conf file.

file "named.cr";

};

zone "cds.com" IN {

type mater;

file "cds.com.zone";

allow-update { none; };

};

include "/etc/rndc.key";

Step 6 Enter the service named restart command to restart the service.

Step 4 In the Origin Server field, enter the fully qualified domain name (FQDN) of the Content Origin server. In the example, this is "ofqdn.cds.com."

Step 5 In the Service Routing Domain Name field, enter the Service Routing Domain Name to be the domain name that is published as part of the portal. Client requests are directed to this domain name. In the example, this is "rfqdn.cds.com."

Step 6 Click Submit.

Step 7 Acknowledge the Content Origin submitted and choose the Content Origins tab to view the new entry (Figure 7).

Figure 7 Content Origin Table Page

Defining a Delivery Service

Note Configuration for session shifting is not included in this procedure. For information on configuring a delivery service for session shifting, see the Cisco Internet Streamer CDS 2.3 Software Configuration Guide. See the "Related Publications" section for links to documentation online. The Session Shifting feature is not supported in Release 2.4. For 3-Screen Session Shifting, use the Cisco Internet Streamer CDS 2.3 software.

Step 6 To associate content to the delivery service that must be ingested, from the left-panel menu choose Delivery Service Content and then click the Add Content icon. The Delivery Service Content page is displayed (Figure 10).

Figure 10 Delivery Service Content Page

Step 7 In the Source URL field, provide a specific directory on the Content Origin server. All content in that directory will be preingested in to the Service Engines. In the example, "http" is selected from the drop-down list and "ofqdn.cds.com/test_prepos" is the directory.

This is a single item, so the Single Item check box is checked.

Step 8 In the Link Depth field, enter the number of directory levels below the Source URL that you want to search for content.

Step 9 Click Submit.

To associate another directory containing content that must be preingested, click the Add Content icon again. The Delivery Service Content page is displayed showing the list of content to be preingested in the Content Table (Figure 11).

Figure 11 Content Table Page

Step 10 Associate the Service Engines with this delivery service. From the left-panel menu, choose Assign Service Engines. The Service Engine Table page is displayed (Figure 12).

Figure 12 Service Engine Table Page

Step 11 Click the Assign icon (Figure 12) next to the Service Engine name to assign each Service Engine to this delivery service. The icon changes to a green arrow wrapped around a blue "X."

Step 12 From the Assign Content Acquirer drop-down list, select NE-DEMO-SE1 to be the Content Acquirer.

Step 13 Click Submit. The icon next to each Service Engine assigned changes to a green check mark (Figure 13).

Figure 13 Service Engine Table Page—Assigned Service Engines

Step 14 To make sure the content has been acquired on the Content Acquirer, start an SSH session on the Content Acquirer (NE-DEMO-SE1) and enter the following commands:

If the acquisition is complete, the number of acquired objects is listed. In the example above, the delivery service ID "275" is displayed. The following command displays a list of the acquired content.

5 Verifying the Web Engine

Verifying Preingested Web Content

Note Content must be preingested. This was accomplished in the "Configuring Delivery Services" section.Verify that the content has been pre-positioned by using the show distribution object-statusname-of-object command.

Step 1 In a web browser on the client PC, enter the URL of the preingested HTML content using the Service Routing Domain Name in the URL. In the example, this is "http://rfqdn.cds.com/test_prepos/test.html." Client requests are directed to this domain name and are then redirected by the Service Router to the content on the Service Engine. Figure 17 shows the initial URL on the left and the redirection on the right.

Figure 17 URL Redirection for Preingested Content

Step 2 On the Service Engines, verify that the request was served as a preingested hit. View the HTTP request statistics by starting an SSH session and entering the show statistics http requests command. In this case, the Service Router redirected the request to NE-DEMO-SE2, which served the request.

NE-DEMO-SE1# show statistics http requests

Caching Statistics

------------------

Cache Hits : 0

Cache Miss : 0

Range Requests : 0

Partial HIts - Live fill : 0

Partial HIt - Refill : 0

Partial Caching - Bypassed : 0

Prepositioned Content Statistics

--------------------------------

Preposition Hits : 0

Reply Meta : 0

Alternate Media : 0

Others

------

Num Lookups : 0

Lookup Errors :0

Streaming redirected requests : 0

WMT Liveness requests : 0

Hierarchical Cache Liveness requests : 0

Total % of requests

----- -------------

Client Errors : 0 0.00

Server Errors : 0 0.00

Http/0.9 Requests : 0 0.00

Http/1.0 Requests : 0 0.00

Http/1.1 Requests : 0 0.00

Http Invalid Requests : 0 0.00

Blocked : 0 0.00

Allowed : 0 0.00

NE-DEMO-SE2# show statistics http request

Caching Statistics

------------------

Cache Hits : 0

Cache Miss : 0

Range Requests : 0

Partial HIts - Live fill : 0

Partial HIt - Refill : 0

Partial Caching - Bypassed : 0

Prepositioned Content Statistics

--------------------------------

Preposition Hits : 1

Reply Meta : 0

Alternate Media : 0

Others

------

Num Lookups : 1

Lookup Errors :0

Streaming redirected requests : 0

WMT Liveness requests :0

Hierarchical Cache Liveness requests : 0

Total % of requests

----- -------------

Client Errors : 0 0.00

Server Errors : 0 0.00

Http/0.9 Requests : 0 0.00

Http/1.0 Requests : 0 0.00

Http/1.1 Requests : 0 100.00

Http Invalid Requests : 0 0.00

Blocked : 0 0.00

Allowed : 0 100.00

Verifying Dynamically Ingested Web Content

Step 1 In a web browser on the client PC, enter the URL of non-preingested HTML content on the Service Router. This is content that exists on the Content Origin server or some other server that is accessible but not yet preingested. In the example, the Content Origin server has a directory "test_cache" with a content object "test.html." Figure 18 shows the initial URL on the left and the redirection on the right.

Figure 18 URL Redirection for Non-Preingested Content

This is a cache miss scenario. Neither Service Engine had the content preingested, so the content is acquired by NE-DEMO-SE1 (the Content Acquirer). The content is then cached and replicated to NE-DEMO-SE2 (the receiver, which also happens to be the SE that is serving this client request). NE-DEMO-SE2 then serves the request (as visible by the new URL in Figure 18), having cached the content as well.

6 Verifying the Windows Media Streaming Engine

Verifying Preingested Windows Media Content

Note Content must be preingested. This was accomplished in the "Configuring Delivery Services" section. Verify that the content has been pre-positioned by using the show distribution object-statusname-of-object command.

Step 1 On the client PC, start the Windows Media Player.

Step 2 Choose File > Open URL.

Step 3 Enter the URL of the preingested content in the Open URL dialog box (Figure 20) and click OK. In the example, this is "rtsp://rfqdn.cds.com/test_prepos/test.wmv."

Figure 20 Open URL Dialog Box

The video begins to play.

Step 4 To view the statistics on the video file, choose View > Statistics and then click the Advanced tab (Figure 21).

Figure 21 Windows Media Player Statistics

Step 5 To view the request flow, enter the show statistics wmt streamstat command on the SEs. In this case, the request is served from NE-DEMO-SE2.

Step 2 In the Name field, enter a delivery service name. In the example, "WMTlive" is entered.

Step 3 In the Content Origin field, select the name of the Content Origin if it already exists, or create a new Content Origin by clicking the New Content Origin button and following the steps in the "Creating a Content Origin" section.

Step 6 Associate the Service Engines with this live delivery service. From the left-panel menu, choose Assign Service Engines. The Service Engine Table page is displayed (Figure 12).

Step 7 Click the Assign icon next to the Service Engine name to assign each Service Engine to this delivery service. The icon changes to a green arrow wrapped around a blue "X."

Step 8 From the Assign Content Acquirer drop-down list, select NE-DEMO-SE1 to be the Content Acquirer.

Step 9 Check the Primed check box, if required. When a delivery service is "primed," the unicast-out stream is pulled from the Content Origin server to an SE before a client ever requests the stream. This action avoids the Real Time Streaming Protocol (RTSP) setup time that clients might experience as a delay.

Step 10 Click Submit. The icon next to each Service Engine assigned changes to a green check mark (Figure 26).

Step 6 From the left-panel menu, choose Select Live Delivery Service. The Live Delivery Service Table page is displayed (Figure 28).

Figure 28 Live Delivery Service Table Page

Step 7 Click the radio button next to the live delivery service (in the example, "WMTlive" is selected) and click Submit.

Step 8 From the left-panel menu, choose Assign Service Engines and verify that the SEs and Content Acquirer are assigned to this delivery service.

Step 9 From the left-panel menu, choose Live Streaming. The Live Streaming page is displayed (Figure 29).

Figure 29 Live Streaming Page

Step 10 In the Live Source URL field, enter the URL of the live source, using either the URL of the Windows Media encoder or of the Windows Media Streamer Server and port (rtsp://WMencoder or rtsp://WMStreamerServer:port/).

If you are running the encoder on a local host, you would enter the Internet URL obtained from the encoder.

7 Enabling and Verifying the Movie Streamer Engine

Note In CDS Release 2.4, live streaming is in full production. Prefetched, cached, and dynamically cached content remain in a demonstration state.For details of live streaming performance for Movie Streamer, please refer to the release-specific performance bulletin.

Step 5 Check the Enable Movie Streamer Services check box and click Submit. Leave the other fields with their default settings. Movie Streamer is now enabled on this device.

Step 6 Repeat the above steps for all other SEs. No action is required on the SR.

Preparing Movie Streamer Content for Ingest

The Movie Streamer delivers hinted MP4, hinted 3GP, and hinted MOV files to clients over the Internet and mobile networks. Hinted files contain hint tracks, which store packetization information that tell the streaming server how to package content for streaming. Apple Quicktime Pro can be used to generate the hint tracks.

Step 1 Launch Apple QuickTime Pro.

Step 2 Choose File > Open File, and select a movie file to open.

Step 3 Choose Windows > Show Movie Properties. If there is a Hinted Video Track present, as shown in Figure 33, open the next movie file.

The movie file is ready to be either preingested or dynamically ingested.

Verifying Preingested Movie Streamer Content

Note Content must be preingested. This was accomplished in the "Configuring Delivery Services" section. Verify that the content has been pre-positioned by using the show distribution object-statusname-of-object command.

Step 1 On the client PC, start the Apple QuickTime Player.

Step 2 Choose File > Open URL.

Step 3 Enter the URL of the preingested content in the Open URL dialog box (Figure 36) and click OK. In the example, this is "rtsp://rfqdn.cds.com/test_prepos/test.mov."

The current statistics are displayed and updated as the video streams and plays.

Figure 37 QuickTime Player Statistics

Step 5 To view the request flow, display the statistics, enter the show statistics movie-streamer all command.

NE_DEMO-SE2# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 0

Total RTSP sessions: 1

Current RIP connections: 0

Total RTP connections: 1

CDN Related Statistics

----------

Preposition Hits: 1

Cache Hits: 0

Cache Miss: 0

Live Requests: 0

Cache Revalidation Statistics

---------

Fresh Content Requests: 0

Revalidated Requests: 0

Movie Streamer Bandwidth Usage Statistics

Total

-----------------------------------------

Current Incoming bandwidth: 0 bps

Current Outgoing bandwidth; 0 bps

Current Total bandwidth: 0 bps

Average Incoming bandwidth: 0 bps

Average Outgoing bandwidth: 0 bps

Average Total bandwidth: 0 bps

By Type of Connection

---------

Unicast Incoming Bandwidth: 0 bps

Multicast Incoming Bandwidth: 0 bps

Unicast Outgoing Bandwidth: 0 bps

Multicast Outgoing Bandwidth: 0 bps

By Type of Content

------

Live Incoming Bandwidth: 0 bps

VOD Incoming Bandwidth: 0 bps

Live Outgoing Bandwidth: 0 bps

VOD Outgoing Bandwidth: 0 bps

Overall Traffic

-------

Incoming Bytes: 0 Bytes

Outgoing Bytes: 2103939 Bytes

Total Bytes: 2103939 Bytes

Incoming Packets: 0

Outgoing Packets: 1403

Total Packets: 1403

Movie Streamer Error Statistics

Total

---------------------------------------

Server Error

--------

Internal Error: 0

Not Implemented: 0

Server Unavailable: 0

Gateway Timeout: 0

Others: 0

Client Error

--------

Bad Request: 0

File Not Found: 0

Session Not Found: 0

Method Not Allowed: 0

Not Enough Bandwidth: 0

Client Forbidden: 0

Others: 0

Movie Streamer Performance Statistics

Total

-----------------------------------------

CPU Usage: 0.000000 %

UpTime: 5416 sec

Statistics were last cleared on Thursday, 25-Oct-2007 23:53:59 UTC.

Note In this example, current connections and bandwidth are all zero because the movie has finished playing at the time the statistics were displayed.

Note This example shows the full output for the show statistics command, which were enhanced. All remaining examples for the Movie Streamer statistics show only the relevant information.

Step 6 Play the movie again, and before it completes, display the statistics again.

As the statistics show, there are two current connections: 1 RTP and 1 RTSP.

NE_DEMO-SE2# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 1

Total RTSP sessions: 2

Current RIP connections: 1

Total RTP connections: 2

CDN Related Statistics

----------

Preposition Hits: 2

Cache Hits: 0

Cache Miss: 0

Live Requests: 0

Cache Revalidation Statistics

---------

Fresh Content Requests: 0

Revalidated Requests: 0

Movie Streamer Bandwidth Usage Statistics

Total

---------------------------------------

Current Incoming bandwidth: 0 bps

Current Outgoing bandwidth: 0 bps

Current Total bandwidth: 0 bps

Average Incoming bandwidth: 0 bps

Average Outgoing bandwidth: 863879 bps

Average Total bandwidth: 863879 bps

Incoming Bytes: 0 Bytes

Outgoing Bytes: 14490660 Bytes

Total Bytes: 14490660 Bytes

Verifying Dynamically Ingested Movie Streamer Content

When content requested by a client is not in the CDS, it is dynamically ingested from the original source and streamed to the client by an SE.

Step 1 On the client PC, start the Apple QuickTime Player.

Step 2 Choose File > Open URL.

Step 3 Enter the URL of a sample MOV file that has not been preingested into the CDS in the Open URL dialog box (Figure 38) and click OK. In the example, this is "rtsp://rfqdn.cds.com/test_dyn.mov."

Figure 38 Open URL Dialog Box

The video begins to play.

Step 4 To view the request flow, display the statistics, enter the show statistics movie-streamer all command.

NE_DEMO-SE1# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 1

Current RIP connections: 1

Total RTP connections: 4

Movie Streamer Bandwidth Usage Statistics

Total

-----------------------------------------

Current Incoming bandwidth: 207115 bps

Current Outgoing bandwidth: 0 bps

Current Total bandwidth: 207115 bps

Average Incoming bandwidth: 199244 bps

Average Outgoing bandwidth: 207932 bps

Average Total bandwidth: 407176 bps

Incoming Bytes: 12667891 Bytes

Outgoing Bytes: 12609164 Bytes

Total Bytes: 25277055 Bytes

NE_DEMO-SE2# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 0

Current RIP connections: 0

Total RTP connections: 3

Movie Streamer Bandwidth Usage Statistics

Total

-----------------------------------------

Current Incoming bandwidth: 194974 bps

Current Outgoing bandwidth: 0 bps

Current Total bandwidth: 194974 bps

Average Incoming bandwidth: 174557 bps

Average Outgoing bandwidth: 0 bps

Average Total bandwidth: 74557 bps

Incoming Bytes: 13283705 Bytes

Outgoing Bytes: 0 Bytes

Total Bytes: 13283705 Bytes

Managing Movie Streamer Live Content

The Movie Streamer can be configured to stream live content from a source to clients. This requires a server capable of serving live MOV content to the CDS; for example, an Apple QuickTime Streaming Server or a Darwin Streaming Server, or another compatible live source.

Step 3 In the Name field, enter a delivery service name; for example, "LiveService."

Step 4 In the Content Origin field, select the name of the Content Origin if it already exists, or create a new Content Origin by clicking the New Content Origin button and following the steps in the "Creating a Content Origin" section.

Step 7 From the left-panel menu, choose Assign Service Engines. The Service Engine Table page is displayed (Figure 40).

Figure 40 Service Engine Table Page—Movie Streamer Live Delivery Service

Step 8 Click the Assign icon next to the Service Engine name to assign each Service Engine to this delivery service. The icon changes to a green arrow wrapped around a blue "X."

Step 9 From the Assign Content Acquirer drop-down list, select NE-DEMO-SE1 to be the Content Acquirer.

Step 10 Check the Primed check box, if required. When a delivery service is "primed," the unicast-out stream is pulled from the Content Origin server to an SE before a client ever requests the stream. This action avoids the RTSP setup time that clients might experience as a delay.

Step 11 Click Submit. The icon next to each Service Engine assigned changes to a green check mark.

Step 6 From the left-panel menu, choose Select Live Delivery Service. The Live Delivery Service Table page is displayed (Figure 43).

Step 7 Click the radio button next to the live delivery service (in the example, "LiveService" is selected) and click Submit.

Figure 43 Live Delivery Service Table Page

Step 8 From the left-panel menu, choose Assign Service Engines and verify that the SEs and Content Acquirer are assigned to this delivery service.

Step 9 From the left-panel menu, choose Live Streaming. The Live Streaming page is displayed (Figure 44).

Figure 44 Live Streaming Page

Step 10 From the Origin Server SDP File URL drop-down list, select either RTSP or HTTP, and enter the remainder of the URL in the associated field.

Step 11 In the Backup SDP URL field, enter the backup URL. This field is only for RTSP.

When you click the Auto Populate button, the Incoming Live Streams fields (the next section on the Live Streaming page) are automatically populated based on the Origin Server SDP File URL.

Step 12 In the Incoming Live Streams Settings section, if the fields are not automatically populated, enter the Primary Source Server field and the Receiving Ports field manually. Receiving ports are used to define each port related to audio and video streams.

Step 13 From the Unicast URL Reference drop-down list, select a unicast URL reference. In the example, this is "rtsp://rfqdn.cds.com/movieliveprogram.sdp."

Note Two streams are required because audio and video are considered separate streams for MOV content.

Step 14 Click Submit.

Step 15 From the left-panel menu, choose Schedule.

Step 16 Click the Play Forever radio button.

Step 17 Click Submit.

Verifying Movie Streamer Live Content Playback

Live streaming of Movie Streamer content requires a Session Description Protocol (SDP) file. The SDP file used in this procedure is the following:

v=0

o=QTSS_Play_List 2079157989 2079176415 IN IP4 171.71.50.216

s=C:\Program Files\Darwin Streaming Server\Playlists\untitled\unti@

c=IN IP4 127.0.0.1

b=AS:94

t=0 0

a=x-broadcastcontrol:RTSP

m=video 0 RTP/AVP 96

b=AS:79

a=rtpmap:96 X-SV3V-ES/90000

a=control:trackID=1

m=audio 0 RTP/AVP 97

b=AS:14

a=rtpmap:97 X-QDM/22050/2

a=control:trackID=2

a=x-bufferdelay:4.97

Step 1 On the client PC, start the Apple QuickTime Player.

Step 2 Choose File > Open URL.

Step 3 Enter the URL of the live program file in the Open URL dialog box (Figure 45) and click OK. In the example, this is "rtsp://rfqdn.cds.com/movieliveprogram.sdp."

The current statistics are displayed and updated as the video streams and plays.

Figure 46 QuickTime Player Statistics

Step 5 To view the incoming and outgoing streams, enter the show statistics movie-streamer all command.

NE_DEMO-SE1# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 1

Current RIP connections: 1

Total RTP connections: 3

Movie Streamer Bandwidth Usage Statistics

Total

-----------------------------------------

Current Incoming bandwidth: 161526 bps

Current Outgoing bandwidth: 582640 bps

Current Total bandwidth: 744166 bps

Average Incoming bandwidth: 192102 bps

Average Outgoing bandwidth: 203980 bps

Average Total bandwidth: 396082 bps

Incoming Bytes: 4478769 Bytes

Outgoing Bytes: 4499370 Bytes

Total Bytes: 8978139 Bytes

NE_DEMO-SE2# show statistics movie-streamer all

Movie Streamer Request Statistics

Total

---------------------------------------

Current RTSP sessions: 0

Current RIP connections: 0

Total RTP connections: 1

Movie Streamer Bandwidth Usage Statistics

Total

-----------------------------------------

Current Incoming bandwidth: 175399 bps

Current Outgoing bandwidth: 0 bps

Current Total bandwidth: 175399 bps

Average Incoming bandwidth: 0 bps

Average Outgoing bandwidth: 0 bps

Average Total bandwidth: 0 bps

Incoming Bytes: 1248165 Bytes

Outgoing Bytes: 1080984 Bytes

Total Bytes: 2329149 Bytes

Movie Streamer Performance Statistics

Total

---------------------------------------

CPU Usage: 0.000000 %

UpTime: 78375 sec

Statistics were last cleared on Friday, 26-Oct-2007 20:09:42 UTC.

Note For more information, see the "Configuring Services" chapter in the Cisco Internet Streamer CDS 2.4Software Configuration Guide. See the "Related Publications" section for links to the online documentation at Cisco.com.

Note Flash Media Streaming uses RTMP to stream live content by means of dynamic proxy. Configuration of live or rebroadcast programs is not required. When the first client requests live streaming content, the stream is created.

All RTMP calls for live content in the SWF file must be in the following format:rtmp://rfqdn/live/path/foo.flvIn this format, rfqdn is the routing domain name of the Service Router, live is the required directory, and path is the directory path to the content file that conforms to the standard URL specification.If you are unable to store the VOD content in the required "vod" directory on your origin server, you can create a VOD virtual path for all RTMP requests. All client requests for RTMP calls still use the rtmp://rfqdn/vod/path/foo.flv format for VOD streams, but the SE replaces the "vod" directory with the string specified in the flash-media-streaming application-virtual-path vod map command.

Use the flash-media-streaming application-virtual-path vod map <mapping string> command on each SE participating in a Flash Media Streaming delivery service. The mapping string variable accepts all alpha-numeric characters and the slash (/) character, and can be from 1 to 128 characters. For example, to map the "vod" directory to "media" for the go-tv-stream.com origin server, use the flash-media-streaming application-virtual-path vod map media command. To monitor live streaming use the show statistics flash-media-streaming command and the show flash-media-streaming livestreams command.

Enabling Flash Media Streaming

Step 1 Ensure Flash Media Streaming is enabled by using the show flash-media-streaming command.

Step 8 Check the Enable check box and click Submit. Flash Media Streaming is now enabled on this device.

Step 9 Repeat the above steps for all other SEs, and also for the SR.

Verifying Flash Media Streaming Preingested Content

Note Content must be preingested. This was accomplished in the "Configuring Delivery Services" section. Verify that the content has been pre-positioned by using the show distribution object-statusname-of-object command.

Note All RTMP calls must be in the following format:rtmp://rfqdn/vod/path/foo.flvIn this format, rfqdn is the routing domain name of the Service Router, vod is the required directory, and path is the directory path to the content file that conforms to the standard URL specification.

Step 1 On the client PC, start the Adobe Flash Player.

Step 2 Enter the URL of the flash file in the text box (Figure 48) and click Go. In the example, this is "rtmp://rfqdn.cds.com/vod/test_prepos.flv."

The RTMP call is routed to a Service Engine by the Service Router.

The FLV file has been preingested on the SEs. The video begins to play.

Figure 48 Adobe Flash Player

Step 3 To view the Flash Media Streaming statistics, enter the show statistics flash-media-streaming command on the SEs.

There is one concurrent connection on NE-DEMO-SE2, which means there is an active connection to this SE. The statistics also shows a Preposition Hit of 1, which means there was preingested content being requested through this SE.

NE-DEMO-SE2# show statistics flash-media-streaming

Flash Media Streaming Statistics

Statistics were last cleared on Thursday. 06-Dec-2007 37:22:58 UTC.

Connections

-----------

Current : 1

Current VOD : 1

Current LIVE : 0

Current DVRCast : 0

Max Concurrent : 1

Total : 1

Total VOD Req : 0

Total LIVE Req : 0

Total DVRCast Req : 0

Total Other Proxy Req : 0

Live Streaming

-----

UpStream BW : 0 kbps

DownStream BW : 0 kbps

UpStream Bytes : 0

DownStream Bytes : 0

Num of Instance Load : 0

DVRCast Streaming

-----

UpStream BW : 0 Kbps

DownStream BW : 0 Kbps

UpStream Bytes : 0

DownStream Bytes : 0

Num of Instance Load : 0

Flash Video Cache Statistics

-----------

Hits : 0

Misses : 0

Released : 0

Bytes in cache : 0

Bytes in use : 0

Performance

-----------

Server Up Time : 816 S

Mem Usage : 5 %

Max Mem Usage : 5 %

Cache

-----

Cache Hit : 0

Cache Miss : 0

Proxy Case : 0

Cache HIt Percentage : 0.00 %

Preposition

-----------

Preposition Hit : 1

Bytes Served

------------

Total Server Bytes : 880668

Local Disk Reads : 3

HTTP Based Reads : 0

Bytes From Local Disk : 880668

Bytes Through HTTP : 0

Rules

------------

Action Allow : 0

Action Block : 0

Validate url Sign : 0

Errors : 0

Auth Server Allow : 0

Auth Server Deny : 0

Error

-----

Invalid Error : 0

Server Error : 0

Media Not Found : 0

Media Unauthorized : 0

Invalid Request : 0

Verifying Flash Media Streaming Dynamically Ingested Content

Note Verifying dynamically ingested content for Flash Media Streaming includes cache miss scenarios and live streaming scenarios. Flash Media Streaming uses RTMP to stream live content by means of dynamic proxy. Configuration of live or rebroadcast programs is not required. When the first client requests live streaming content, the stream is created.

Step 1 SSH to NE-DEMO-SE1 and use the show cache content command to verify there is no cached content.

NE-DEMO-SE2# show cache content

Max-cached-entries is set as 3000000

Number of cal cached assets: 0

--------------------------------------------------

Priority Size URL

--------------------------------------------------

Step 2 On the client PC, start the Adobe Flash Player.

Step 3 Enter the URL of the flash file in the text box (Figure 49) and click Go. In the example, this is "rtmp://rfqdn.cds.com/vod/test_cache.flv."

The RTMP call is routed to a Service Engine by the Service Router.

The FLV file has been cached on the SEs. The video begins to play.

Figure 49 Adobe Flash Player

Step 4 To view the Flash Media Streaming statistics, enter the show statistics flash-media-streaming command on the SEs.

There is one concurrent connection on NE-DEMO-SE2, which means there is an active connection to this SE. The statistics also shows a Cache Miss of 1, which means the content was not found on this SE.

NE-DEMO-SE2# show statistics flash-media-streaming

Flash Media Streaming Statistics

Statistics were last cleared on Thursday. 06-Dec-2007 37:22:58 UTC.

Connections

-----------

Current : 1

Current VOD : 1

Current LIVE : 0

Max Concurrent : 1

Total : 1

Total VOD Req : 0

Total LIVE Req : 0

Total DVRCast Req : 0

Total Other Proxy Req : 0

Live Streaming

-----

UpStream BW : 0 kbps

DownStream BW : 0 kbps

UpStream Bytes : 0

DownStream Bytes : 0

Num of Instance Load : 0

DVRCast Streaming

-----

UpStream BW : 0 Kbps

DownStream BW : 0 Kbps

UpStream Bytes : 0

DownStream Bytes : 0

Num of Instance Load : 0

Flash Video Cache Statistics

-----------

Hits : 0

Misses : 0

Released : 0

Bytes in cache : 0

Bytes in use : 0

Performance

-----------

Server Up Time : 933 S

Mem Usage : 5 %

Max Mem Usage : 5 %

Cache

-----

Cache Hit : 0

Cache Miss : 1

Proxy Case : 0

Cache HIt Percentage: 0.00 %

Preposition

-----------

Preposition Hit : 0

Bytes Served

------------

Total Server Bytes: :587112

Local Disk Reads : 2

HTTP Based Reads : 1

Bytes From Local Disk: 587112

Bytes Through HTTP: 293556

Rules

------------

Action Allow : 0

Action Block : 0

Validate url Sign : 0

Errors : 0

Auth Server Allow : 0

Auth Server Deny : 0

Error

-----

Invalid Error : 0

Server Error : 0

Media Not Found : 0

Media Unauthorized : 0

Invalid Request : 0

Step 5 To verify that the content has been cached after it was requested, enter the show cache content command.

NE-DEMO-SE2# show cache content

Max-cached-entries is set as 3000000

Number of cal cached assets: 1

--------------------------------------------------

Priority Size URL

--------------------------------------------------

1.71425e-01 293556 http://ofqdn.cds.com/vod/test_cache.flv

Verifying Flash Media Streaming—Live Streaming

Flash Media Streaming uses RTMP to stream live content by means of dynamic proxy. Configuration of live or rebroadcast programs is not required. When the first client requests live streaming content, the stream is created. There are no limits to the number of live streams other than the system load. Live streaming uses distributed content routing to distribute streams across multiple Service Engines.

For example, if the URL was rtmp://Temp4.se.fmslive.com/live/livestream, Temp4 is the SE assigned under the delivery service, the live directory indicates that it is a live stream, and livestream is the published name on the Flash Media Encoder.

Step 4 On the Edge SE enter the show statistics flash-media-streaming command to view the Flash Media Streaming statistics.

NE-DEMO-SE2# show statistics flash-media-streaming

Flash Media Streaming Statistics

Statistics were last cleared on Thursday. 06-Dec-2007 37:22:58 UTC.

Connections

-----------

Current : 1

Current VOD : 0

Current LIVE : 1

Max Concurrent : 1

Total : 3

Total VOD Req : 0

Total LIVE Req : 0

Total DVRCast Req : 0

Total Other Proxy Req : 0

Live Streaming

-----

UpStream BW : 0 kbps

DownStream BW : 274 kbps

UpStream Bytes : 3194

DownStream Bytes : 124362967

Num of Instance Load : 1

Step 5 Enter the show flash-media-streaming stream-status live command.

10 Obtaining Documentation and Submitting a Service Request

For information on obtaining documentation, submitting a service request, and gathering additional information, see the monthly What's New in Cisco Product Documentation, which also lists all new and revised Cisco technical documentation, at:

Subscribe to the What's New in Cisco Product Documentation as a Really Simple Syndication (RSS) feed and set content to be delivered directly to your desktop using a reader application. The RSS feeds are a free service and Cisco currently supports RSS version 2.0.