Hani,

Thanks for your reply. There are still a few points I'm not clear on.

Your first four points are consistent with my current understanding of the OLC/OLCA messages. I'll elaborate on these points just to try and avoid the ambiguities of my previous email:

        There are two optional TransportAddress fields (mediaChannel and mediaControlChannel) within the forward logical channel parameters section of the OLC request message. H.245 specifies that the mediaChannel field should not be included in the OLC request when the transport is unicast. The mediaControlChannel field, if present in the OLC request, specifies the address on which the sender of the OLC will be listening for media control messages. If the mediaControlChannel field is not present in the OLC request, this indicates that a control session is not required.

        The mediaChannel and mediaControlChannel fields are also present in the OLCA response message. The mediaChannel field must be present in a OLCA response when the transport is unicast, and it specifies the address to which the sender of the corresponding OLC must transmit the media. The mediaControlChannel field in the OLCA response specifies the address on which the sender of the OLCA will be listening for media control messages for this session. The mediaControlChannel should only be included in the OLCA response if a media control channel is required (i.e., only if the mediaControlChannel field was present in the corresponding OLC request).

Therefore, assuming a control channel is required, each endpoint must transmit and receive three transport address in order to establish a bi-directional media stream; 1) RTCP address in OLC (a1), 2) RTP address in OLCA (a2), and 3) RTCP address in OLCA (a3). To use a single bi-directional RTCP channel, each endpoint must specify the same address in a1 and a3. The +1 rule requires the port numbers in a1 and a3 to be odd, and that a2 and a3 are identical except for the port number where it is one less in a2 compared to a3.

My initial question was regarding the case where one of the endpoints supplies a set of addresses where a1 and a2 do not conform to the +1 rule. There are two possibilities in this case:

1) a1 and a3 are the identical - i.e., single bi-directional RTCP channel, but a2 and a3 do not conform to the +1 rule.
2) a2 and a3 conform to the +1 rule - i.e., 2 unidirectional RTCP channels.

My original question can be more precisely worded as: Is option 1 valid?


Thanks again,

Mohamed



-----Original Message-----
From: El-Gebaly, Hani [mailto:hani.el-gebaly@intel.com]
Sent: 21 October 1999 18:32
To: 'Mohamed Mustafa'
Subject: Re: RTCP port number

 
Mohamed,
 
Here is how it works:
 
(1) Openchannel specifies the reverse RTCP address (IP and port) that it
will receive RTCP information on (RTCP receive reports).
(2) It does not specify any RTP or RTCP send ports.
(3) openchannelAck specifies the RTP address that the acknowledging terminal
will receive on RTP data and the channel owner (one who initiated
openchannel) will stream to (send) RTP data.
(4) openchannelAck also specifies RTCP address that the channel owner
(initiator) ought to send RTCP sener reports data of this channel on.
(5) Note that RTP address != RTCP address. Usually the port numbers are
shifted by one.
(6) RTP uses an even port number and the corresponding RTCP stream uses the
next higher (odd) port number
(7) A Terminal may choose to retain the same IP port for RTCP Send and
Receive reports.
 
So the RTP port is not sent in the OLC rather returned in the OLCA.
 
regards,
 
Hani

-----Original Message-----
From: Mohamed Mustafa [mailto:M.Mustafa@SDXPLC.COM]
Sent: Thursday, October 21, 1999 8:05 AM
To: ITU-SG16@MAILBAG.INTEL.COM <mailto:ITU-SG16@MAILBAG.INTEL.COM>
Subject: RTCP port number



Hi Everyone,

Annex A of recommendation H.225.0 states that  "RTP uses an even port number
and the corresponding RTCP stream uses the next higher (odd) port number".

Can anyone clarify what the RTCP port number should be if an endpoint uses
two different RTP port numbers (one for transmitting and one for receiving).

To avoid confusion, I'll describe the specific scenario I'm trying to
resolve;

Following completion of the H.245 capability exchange and master/slave
determination, the following messages are exchanged to establish a pair of
unidirectional media streams between the two endpoints.

        1). A transmits an OpenLogicalChannel request to B specifying the
port number (a1)
        that it will use to transmit the RTP packets

        2). B transmits an OpenLogicalChannel request to A specifying the
port number (b1)
        that it will use to transmit the RTP packets

        3). B transmits an OpenLogicalChannelAck response to A specifying
the port number (b2)
        which the RTP packets should be transmitted to

        4). A transmits an OpenLogicalChannelAck response to B specifying
the port number (a2)
        which the RTP packets should be transmitted to

Normally, a1 and a2 are the same so there is no confusion as to A's RTCP
port number. However, the Phone Dialer application that comes with Windows
2000 does not use the same port numbers in the OLC and the OLCA messages.


Thanks,

Mohamed