3.1.3 Initialization

Initialization of the protocol occurs as the result of a higher layer asking for information on multimedia content located on a server. That event is defined in section 3.1.4.1. It also occurs as the result of receiving a LinkMacToViewerReportRedirect message, as described in section 3.1.5.7.

The variables defined by the abstract data model MUST initially assume their default values. Variables that do not have default defined values MUST be initialized as follows:

  • The State variable MUST be set to INIT.

  • The higher layer MUST specify if the client requests the server to deliver Data (section 2.2.2) packets over UDP or TCP. In case of UDP, the UDP-Selected variable MUST be set to 1. In case of TCP, the UDP-Selected variable MUST be set to 0.

  • The value of the UDP-Receive-Port variable MUST be set to a UDP port number chosen by the higher layer, on which the client can listen for incoming Data (section 2.2.2) packets.

    Note The UDP-Receive-Port MUST be initialized even if the current value of UDP-Receive-Port is 0.

  • The higher layer MUST specify if the client requests the server to send Packet-Pair packets. If the higher layer specifies that Packet-Pair packets have to be requested, the Packet-Pair-Packets-Expected variable MUST be set to 2. If Packet-Pair packets are not to be requested, the Packet-Pair-Packets-Expected variable MUST be set to 0.

  • The higher layer MUST specify if the client requests the server to stream the content for viewing at the normal playback rate, or stream it for viewing at a trick-mode rate (for example, fast forward or rewind). In the case of the normal playback rate, the Trick-Mode-Rate variable MUST be set to 0.  In the case of a trick-mode rate, the Trick-Mode-Rate variable MUST be set to 1.