RTSP Monitor
The Real Time Streaming Protocol (RTSP) monitor tests audio and video stream playback on streaming servers. It gathers information about media files, and initiates stream playback, pause, and the end of a streaming session.
The following table lists the RTSP monitor files.
Monitor files |
Name or location |
---|---|
Monitor executable |
nco_m_rtsp |
Properties file |
$ISHOME/etc/props/rtsp.props |
Rules file |
$ISHOME/etc/rules/rtsp.rules |
Log file |
$ISHOME/log/rtsp.log |
- Guidelines for configuring the RTSP monitor
- The RTSP monitor connects to the streaming server in either DESCRIBE or PLAY mode. The monitor downloads information or statistics that are delivered by genuine RTSP servers such as Darwin.
- DESCRIBE Mode
-
In the DESCRIBE mode, the RTSP monitor connects to the streaming server and requests information about the audio and video files and streams.
The server returns a status code where a value of 200 indicates a file that can be downloaded, and where other values indicate that why the requested file cannot be played.
However, the statistics that relate to playback are not reported in this mode, the basic function of the servers that support RTSP can be tested.
- PLAY Mode
-
In PLAY mode, the RTSP monitor connects to the streaming server in the same way as in DESCRIBE mode, and then streams the file to provide statistics on requested downloads.
- Properties
- Properties options specific to the RTSP monitor are described in the following table.
Table 2. RTSP monitor properties options Property name
Property parameter
Description
StreamingSocket BufferSize integer
The size of the streaming socket buffer, with a range of 8 to 64 KB.
Default: 8
- Configuring the RTSP monitor service tests
- Use the RTSP monitor configuration parameters to define service tests.
The following table lists the RTSP monitor configurations:
Table 3. RTSP monitor configuration Field Description server
The target system that runs the streaming server. For example, rtsp.mymusic.com.
remotefile
The file that gets downloaded. For example, singalong.mp3.
description
A text field for providing descriptive information on the element. For example, RTSP monitor.
port
The port that the monitor connects to on the target system.
Default: 554
action
The action that the server performs on the stream:
- DESCRIBE
- PLAY
Default:
DESCRIBE
duration
The portion of the stream, in seconds, that the server plays back.
Default: 5
maxbandwidth
The maximum bandwidth, n bits per second, that is used for streaming.
Default: 1500000
timeout
The time, in seconds, to wait for the RTSP server to respond.
Default: 10
poll
The time, in seconds, between each poll.
Default: 300
failureretests
The number of times to retest before failure is indicated.
Default: 0
retestinterval
The time, in seconds, to wait between each failure retest.
Default: 10
- Service level classifications
- Service level classifications define the rules for determining the level of service that is
provided over RTSP.
Available service level classification options for the RTSP monitor are:
totalTime lookupTime connectTime responseTime sdpDownloadTime playbackTime status percentPacketsLost message
In service level classifications:
- Specify more service level classifications by manually entering the name of the monitor element. The name must match the name that is shown for the element in the monitor elements section.
- message can be any message that is forwarded in the $message element to IBM® Application Performance Management server if used in any widget. For a list of possible values, see.Status messages.
- The operand is a string or a positive number.
- A status code of 200 indicates success. See the RTSP protocol for other status codes returned by the operation.
- Monitor elements
- In addition to the test results common to all elements, the RTSP monitor generates a set of test
results that contain data specific to RTSP service tests.
The following table describes the additional elements for the RTSP monitor.
Table 4. RTSP monitor elements Element
Description
$action
The action taken by the monitor.
$averageBandwidth
The average total bandwidth, in bits.
$bytesReceived
The total number of bytes received.
$connectTime*
(
ConnectTime
)The time taken to establish a connection with the target server.
$describeStageStatus
Status code for a stage of the RTSP conversation.
$filename
The name of the media file.
$lookupTime*
(
LookupTime
)The time taken to obtain the IP address of the host server.
$maxBandwidth
The maximum bandwidth by using the configuration interface.
$mediaResponseTime
The time taken by the server to start streaming the requested file.
$numberOfStreams
The number of streams embedded in the media.
$percentPacketsLost
The percentage of packets lost.
$playbackTime*
(
PlaybackTime
)The time that represents the sum of the
setupResponseTime
and themediaResponseTime
.$playStageStatus
Status code for a stage of the RTSP conversation.
$port
The port used to access the monitor's server.
$responseTime*
(ResponseTime)
The time from when the connection is established to when the first byte of data is received.
$sdpDownloadTime*
(SdpDownloadTimed)
The time taken to download data about the media file.
$setupResponseTime
The time that represents part of the
playbackTime
.Note: The element is only generated when the RTSP monitor is operating in PLAY mode.$setupStageStatus
Status code for a stage of the RTSP conversation.
$status
The status code returned by the RTSP server.
$streamingTime
The time taken by the server to complete streaming the requested file.
$streamLength
The length of the longest stream in the media file.
$teardownStageStatus
Status code for a stage of the RTSP conversation.
$totalBandwidthRequired
The total bandwidth, in kilobits per second.
$totalPacketsLost
The total number of packets lost.
$totalPacketsReceived
The number of packets received.
- Status messages
- The RTSP monitor provides status messages in the ResultMessage attribute
when using IBM Application Performance Management. These messages
indicate the result of the test.
Table 5. RTSP monitor status messages Message
Description
OK
The request succeeded.
Connection failed
The monitor failed to connect to the server. For more information, see the log file.
Connection closed by foreign host
The connection to the RTSP server was broken.
Timed out waiting to read/write
A data connection to the RTSP server was established, but a problem occurred.
Play failed - no streams
The monitor received a response, but no audio or video was available for playback.
select() failed on RTSP socket (PLAY stage)
The socket was closed from the remote server, or it timed out waiting for a response.
RTSP Server response not in expected format
The response from the server was in a format that the monitor does not support.
Redirection requested by server not supported by client
The response from the server is not supported by the client.
Server cannot fulfill client request
The request is failed and no further information is available.
Server Error
There was a problem with the server and the request failed.
A code of
500
or greater was returned by the server.For more information, see the RTSP protocol (RFC 2326).
RTSP response header CSeq doesn't match request CSeq
The RTSP server is misconfigured and is not functioning correctly.
Corrupted RTSP server response
Corrupted session description
RTSP SETUP response CSeq doesn't match request CSeq
RTSP SETUP response, incomplete Session string
RTSP SETUP response, Session ID has changed within the same session
RTSP SETUP response does not contain server ports to connect to
RTSP SETUP response does not contain server port pair to connect to
RTSP PLAY response CSeq doesn't match request CSeq
RTSP PLAY response, incomplete Session string
RTSP PLAY response, Session ID has changed within the same session
RTSP PLAY response, incomplete RTP-Info string
RTSP PLAY response does not valid RTP seqnum in RTP-Info response
RTSP PLAY response does not valid RTP time in RTP-Info response