What does 'exchange' mean and which H.245 message gets to be sent first?
H.323 talks about capability exchange, but it is not clear to me whether exchange really means that communicating endpoints send their capability sets to _each other_ or that one endpoint sends its capability set. An example of this can be found in the below text. It talks about succesfully completing capability exchange, but does this means that the initiating endpoint has sent its capability set and that this was acknowledge by the receiver or does it mean that it has also received the capability set of the other party?
8.2/H.323 states:
"Endpoint system capabilities are exchanged by transmission of the H.245 terminalCapabilitySet message. This capability message shall be the first H.245 message sent unless the endpoint is indicating that it understands the parallelH245Control field (see section 8.2.4). If prior to successful completion of terminal capability exchange, any other procedure fails, (i.e. rejected, not understood, not supported) then the initiating endpoint should initiate and successfully complete terminal capability exchange before attempting any other procedure. "
The second sentence mandates that the terminalCapabilitySet message be the first message sent (given that "parallelH245Control" is not used). Which "failing procedures" are then being referred to in the third sentence?
If terminalCapabilitySet has to be the first message to be sent, does this mean that an endpoint that has not sent a terminalCapabilitySet message yet and receives this message, it first has to send a terminalCapabilitySet message before acknowledging the received capability set?
Frank
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ For help on this mail list, send "HELP ITU-SG16" in a message to listserv@mailbag.intel.com
Frank,
1. I have no idea what those failing procedures would be. Maybe it's a v4 thing.
2. Yes, that is correct. Because the TCS must be the first message, if an EP receives a TCS, it must sends its own TCS (if it has not already) before it responds to the TCS with, typically, TCSAck. This is how an EP can force the remote EP into performing cap exchange.
Paul Long ipDialog, Inc.
-----Original Message----- From: Mailing list for parties associated with ITU-T Study Group 16 [mailto:ITU-SG16@mailbag.cps.INTEL.COM]On Behalf Of Frank Derks Sent: Tuesday, April 03, 2001 10:33 AM To: ITU-SG16@mailbag.cps.INTEL.COM Subject: What does 'exchange' mean and which H.245 message gets to be sent first?
H.323 talks about capability exchange, but it is not clear to me whether exchange really means that communicating endpoints send their capability sets to _each other_ or that one endpoint sends its capability set. An example of this can be found in the below text. It talks about succesfully completing capability exchange, but does this means that the initiating endpoint has sent its capability set and that this was acknowledge by the receiver or does it mean that it has also received the capability set of the other party?
8.2/H.323 states:
"Endpoint system capabilities are exchanged by transmission of the H.245 terminalCapabilitySet message. This capability message shall be the first H.245 message sent unless the endpoint is indicating that it understands the parallelH245Control field (see section 8.2.4). If prior to successful completion of terminal capability exchange, any other procedure fails, (i.e. rejected, not understood, not supported) then the initiating endpoint should initiate and successfully complete terminal capability exchange before attempting any other procedure. "
The second sentence mandates that the terminalCapabilitySet message be the first message sent (given that "parallelH245Control" is not used). Which "failing procedures" are then being referred to in the third sentence?
If terminalCapabilitySet has to be the first message to be sent, does this mean that an endpoint that has not sent a terminalCapabilitySet message yet and receives this message, it first has to send a terminalCapabilitySet message before acknowledging the received capability set?
Frank
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ For help on this mail list, send "HELP ITU-SG16" in a message to listserv@mailbag.intel.com
Frank,
It is absolutely true that the other endpoint shall send its capability set before acknowledging the received set. ACKing a received set before sending its own will break the H.323v4 procedure of doing H.245 in parallel with Fast Connect.
Other things that might fail include master/slave determination. Many endpoints (particularly those that have no chance of being the MC of a conference) will send the MSDet message at the same time as the TCS. It is also possible to send other H.245 commands before waiting for the TCS response (perhaps the multipoint mode command or something like that if the endpoint is already the MC of a multipoint conference).
Paul
----- Original Message ----- From: "Frank Derks" frank.derks@PHILIPS.COM To: ITU-SG16@mailbag.cps.INTEL.COM Sent: Tuesday, April 03, 2001 11:32 AM Subject: What does 'exchange' mean and which H.245 message gets to be sent first?
H.323 talks about capability exchange, but it is not clear to me whether exchange really means that communicating endpoints send their capability sets to _each other_ or that one endpoint sends its capability set. An example of this can be found in the below text. It talks about succesfully completing capability exchange, but does this means that the initiating endpoint has sent its capability set and that this was acknowledge by the receiver or does it mean that it has also received the capability set of the other party?
8.2/H.323 states:
"Endpoint system capabilities are exchanged by transmission of the H.245 terminalCapabilitySet message. This capability message shall be the first H.245 message sent unless the endpoint is indicating that it understands the parallelH245Control field (see section 8.2.4). If prior to successful completion of terminal capability exchange, any other procedure fails, (i.e. rejected, not understood, not supported) then the initiating endpoint should initiate and successfully complete terminal capability exchange before attempting any other procedure. "
The second sentence mandates that the terminalCapabilitySet message be the first message sent (given that "parallelH245Control" is not used). Which "failing procedures" are then being referred to in the third sentence?
If terminalCapabilitySet has to be the first message to be sent, does this mean that an endpoint that has not sent a terminalCapabilitySet message yet and receives this message, it first has to send a terminalCapabilitySet message before acknowledging the received capability set?
Frank
For help on this mail list, send "HELP ITU-SG16" in a message to listserv@mailbag.intel.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ For help on this mail list, send "HELP ITU-SG16" in a message to listserv@mailbag.intel.com
participants (3)
-
Frank Derks
-
Paul E. Jones
-
Paul Long