Download presentation
Presentation is loading. Please wait.
1
CLUE design team meeting
CLUE protocol CLUE design team meeting 29/05/2014
2
Outline Message structures Versioning and options
Discussion about CLUE protocol updates reflecting changes in draft-ietf-clue-signaling draft-ietf-clue-data-channel 29/05/2014
3
A common basis 29/05/2014
4
A common basis Each CLUE message extends the basic CLUE message type
Common info: protocol: CLUE v: version clueId: the sender’s id within the telepresence system sequenceNr 29/05/2014
5
Call flow example X Y OPT, sn: Xopt OPT_RES, sn: Yopt
OPT_ACK, sn: Xopt+1 ADV, sn: Xmp ADV_ACK, sn: Ymc CONF, sn: Ymc +1 CONF_RES, sn: Xmp+1 X CI Y CR ADV, sn: Ymp X MP Y MC CONF+ACK, sn: Xmc X MC Y MP CONF_RES, sn: Ymp+1 29/05/2014
6
Sequence numbers Each CLUE endpoint manages 3 local sequence number (SN): 1 for the OPTIONS mechanism (before starting the MP and MC state machines) (Xopt, Yopt) 1 for the MP state machine (Xmp, Ymp) 1 for the MC state machine (Xmc, Ymc) SN are randomly generated and incremented of 1 each time a new message is sent SN can be used to make reference to the corresponding message within a CLUE dialogue (between a MP and a MC) 29/05/2014
7
Advertisement The configure request can refer to the sequence number of the advertisement. 29/05/2014
8
Advertisement ACK 29/05/2014
9
Configure 29/05/2014
10
Configure Response 29/05/2014
11
READV A refresh mechanism to retrieve the MP’s current capabilities
lastReceivedAdv: the version number of the last correctly received Adv 0, if no ADV has been delivered yet If an ADV is malformed, a NACK comes back to the MP 29/05/2014
12
READV Response The following CONF will use the READV Response sequence number in place of the ADV sequence number Diff mechanism to be discussed (introduction of a choice section) 29/05/2014
13
Versioning Imported from the signaling doc:
A version has major and minor components, each a non-negative integer. Major version changes denote non-interoperable changes Minor version changes denote schema changes that are backward compatible by ignoring unknown XML elements, or other backward compatible changes. If a common major version cannot be negotiated, then CLUE MUST NOT be used. From Paul’s doc: -Minor versions are always backwards compatible, so support for a minor version implies support for all smaller minor versions 29/05/2014
14
Options mechanism The Channel Initiator issues the OPTIONS message with A boolean flag telling if it is able to act as a MP <mediaProvider> A boolean flag telling if it is able to act as a MC <mediaConsumer> All the supported versions All the supported options 29/05/2014
15
OPTIONS 29/05/2014
16
Options mechanism (2 ways)
Current solution: 2 ways The Channel Reveiver issues an OPTIONS response carrying A response code telling if an agreement has been found or not A reason string explaining the response code <mediaProvider> <mediaConsumer> The highest commonly supported version The common options If a common version can be found, the MP/MC state machines start For example, if both parts are able to act only as media providers with each other, the CLUE session should be terminated. Response code and response string signal the error 29/05/2014
17
OPTIONS Response (2ways)
29/05/2014
18
Options mechanism (3 ways)
Proposal: 3 ways The Channel Reveiver issues an OPTIONS Response carrying <mediaProvider> <mediaConsumer> All the supported versions All the supported options 29/05/2014
19
OPTIONS Response (3ways)
29/05/2014
20
Options mechanism (3 ways)
Proposal: 3 ways The Channel Initiatior send an OPTIONS ACK carrying A response code telling if the elaboration of the options message is ok or not A reason string explaining the response code The highest commonly supported version The common options If a common version can be found, the MP/MC state machines start If we put all the supported things of the CR in the OPTIONS RESPONSE, the OPTIONS ACK would carry the final agreement 29/05/2014
21
OPTIONS ACK (3ways) 29/05/2014
22
Comparison 2 ways: 3 ways:
the Channel Initiator will not know all the supported versions and options of the Channel Receiver, but only the common ones The matching is up to the Channel Receiver 3 ways: Both parties know all the capabilities of each other The matching is up to the Channel Initiator One message more 29/05/2014
23
Some notes There is a need for communication between the CLUE stata machine and the SDP negotiation engine Example: a CLUE endpoint cannot issue a CONF before the SDP info arrives State machines need to be updated considering the dependancy between CLUE and SDP There is no (total) independence 29/05/2014
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.