3.1.5.4 Receiving a LinkMacToViewerReportFunnelInfo Message

The client MUST perform the steps in section 3.1.5.2. Also, the client MUST verify that the LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message adheres to the syntax specified in section 2.2.4.6.

If the value of the FunnelInfo-Count variable is 3, the client SHOULD treat this as an error.

The client MUST increment the value of the FunnelInfo-Count variable by 1.

The client MUST set the value of the Client-ID variable in the abstract data model to the value of the nCubs field in the LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message.

If the value of the playIncarnation field of the LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message is 0xF0F0F0F1, and if the value of the FunnelInfo-Count variable is 1, the client SHOULD set the value of the Packet-Pair-Arrival-Time variable in the abstract data model to the current time. The client MUST stop further processing of rules specified in this section and wait for the next LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message to be received.

If the value of the playIncarnation field of the LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message is 0xF0F0F0F1, and if the value of the FunnelInfo-Count variable is 2, the client can use the difference between the current time and the value of the Packet-Pair-Arrival-Time variable to compute the bit rate at which the current LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message is transferred. The client SHOULD make this information available to a higher layer. The client MUST stop further processing of rules specified in this section and wait for the next LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message to be received.

If the value of the playIncarnation field of the LinkMacToViewerReportFunnelInfo (section 2.2.4.6) message is not equal to 0xF0F0F0F1, or if the value of the FunnelInfo-Count variable is 3, the client MUST send a LinkViewerToMacConnectFunnel (section 2.2.4.18) message.

If the value of the UDP-Selected variable is 0, then the client MUST set the proto syntax element of the funnelName field in the LinkViewerToMacConnectFunnel (section 2.2.4.18) message to TCP. If the value of the UDP-Selected variable is 1, then the client MUST set the proto syntax element of the funnelName field in the LinkViewerToMacConnectFunnel (section 2.2.4.18) message to UDP, and the port syntax element of the funnelName field MUST be set to the value of the UDP-Receive-Port variable.

After sending the LinkViewerToMacConnectFunnel (section 2.2.4.18) message, the client MUST wait for either a LinkMacToViewerReportDisconnectedFunnel (section 2.2.4.4) message or a LinkMacToViewerReportConnectedFunnel (section 2.2.4.3) message to be received. How to process a LinkMacToViewerReportDisconnectedFunnel (section 2.2.4.4) message is specified in section 3.1.5.5; how to process a LinkMacToViewerReportConnectedFunnel (section 2.2.4.3) message is specified in section 3.1.5.6.