< draft-ietf-clue-protocol-18.txt   draft-ietf-clue-protocol-19.txt >
CLUE Working Group R. Presta CLUE Working Group R. Presta
Internet-Draft S. P. Romano Internet-Draft S. P. Romano
Intended status: Experimental University of Napoli Intended status: Experimental University of Napoli
Expires: January 5, 2020 July 4, 2019 Expires: January 6, 2020 July 5, 2019
Protocol for Controlling Multiple Streams for Telepresence (CLUE) Protocol for Controlling Multiple Streams for Telepresence (CLUE)
draft-ietf-clue-protocol-18 draft-ietf-clue-protocol-19
Abstract Abstract
The CLUE protocol is an application protocol conceived for the The CLUE protocol is an application protocol conceived for the
description and negotiation of a telepresence session. The design of description and negotiation of a telepresence session. The design of
the CLUE protocol takes into account the requirements and the the CLUE protocol takes into account the requirements and the
framework defined within the IETF CLUE working group. A companion framework defined within the IETF CLUE working group. A companion
document delves into CLUE signaling details, as well as on the SIP/ document delves into CLUE signaling details, as well as on the SIP/
SDP session establishment phase. CLUE messages flow over the CLUE SDP session establishment phase. CLUE messages flow over the CLUE
data channel, based on reliable and ordered SCTP over DTLS transport. data channel, based on reliable and ordered SCTP over DTLS transport.
skipping to change at page 1, line 39 skipping to change at page 1, line 39
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 5, 2020. This Internet-Draft will expire on January 6, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 33 skipping to change at page 2, line 33
5.7. Response codes and reason strings . . . . . . . . . . . . 16 5.7. Response codes and reason strings . . . . . . . . . . . . 16
6. Protocol state machines . . . . . . . . . . . . . . . . . . . 18 6. Protocol state machines . . . . . . . . . . . . . . . . . . . 18
6.1. Media Provider's state machine . . . . . . . . . . . . . 21 6.1. Media Provider's state machine . . . . . . . . . . . . . 21
6.2. Media Consumer's state machine . . . . . . . . . . . . . 22 6.2. Media Consumer's state machine . . . . . . . . . . . . . 22
7. Versioning . . . . . . . . . . . . . . . . . . . . . . . . . 25 7. Versioning . . . . . . . . . . . . . . . . . . . . . . . . . 25
8. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 25 8. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 25
8.1. Extension example . . . . . . . . . . . . . . . . . . . . 27 8.1. Extension example . . . . . . . . . . . . . . . . . . . . 27
9. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . 29 9. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . 29
10. Call flow example . . . . . . . . . . . . . . . . . . . . . . 34 10. Call flow example . . . . . . . . . . . . . . . . . . . . . . 34
10.1. CLUE message nr. 1: 'options' . . . . . . . . . . . . . 37 10.1. CLUE message nr. 1: 'options' . . . . . . . . . . . . . 37
10.2. CLUE message nr. 2: 'optionResponse' . . . . . . . . . . 39 10.2. CLUE message nr. 2: 'optionsResponse' . . . . . . . . . 39
10.3. CLUE message nr. 3: 'advertisement' . . . . . . . . . . 39 10.3. CLUE message nr. 3: 'advertisement' . . . . . . . . . . 39
10.4. CLUE message nr. 4: 'configure + ack' . . . . . . . . . 47 10.4. CLUE message nr. 4: 'configure + ack' . . . . . . . . . 47
10.5. CLUE message nr. 5: 'confResponse' . . . . . . . . . . . 47 10.5. CLUE message nr. 5: 'confResponse' . . . . . . . . . . . 47
10.6. CLUE message nr. 6: 'advertisement' . . . . . . . . . . 48 10.6. CLUE message nr. 6: 'advertisement' . . . . . . . . . . 48
10.7. CLUE message nr. 7: 'ack' . . . . . . . . . . . . . . . 58 10.7. CLUE message nr. 7: 'ack' . . . . . . . . . . . . . . . 58
10.8. CLUE message nr. 8: 'configure' . . . . . . . . . . . . 58 10.8. CLUE message nr. 8: 'configure' . . . . . . . . . . . . 58
10.9. CLUE message nr. 9: 'confResponse' . . . . . . . . . . . 59 10.9. CLUE message nr. 9: 'confResponse' . . . . . . . . . . . 59
11. Security Considerations . . . . . . . . . . . . . . . . . . . 60 11. Security Considerations . . . . . . . . . . . . . . . . . . . 60
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 61 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 61
12.1. URN Sub-Namespace Registration . . . . . . . . . . . . . 61 12.1. URN Sub-Namespace Registration . . . . . . . . . . . . . 61
skipping to change at page 10, line 44 skipping to change at page 10, line 44
maxOccurs="unbounded"/> maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"/> <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
</xs:sequence> </xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/> <xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType> </xs:complexType>
<!-- EXTENSION TYPE --> <!-- EXTENSION TYPE -->
<xs:complexType name="extensionType"> <xs:complexType name="extensionType">
<xs:sequence> <xs:sequence>
<xs:element name="name" type="xs:string" /> <xs:element name="name" type="xs:string" />
<xs:element name="schemaRef" type="xs:anyURI" minOccurs="0"/> <xs:element name="schemaRef" type="xs:anyURI" />
<xs:element name="version" type="versionType" minOccurs="0"/> <xs:element name="version" type="versionType" />
<xs:any namespace="##other" processContents="lax" minOccurs="0"/> <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
</xs:sequence> </xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/> <xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType> </xs:complexType>
Figure 3: Structure of CLUE 'options' message Figure 3: Structure of CLUE 'options' message
<supportedVersions> contains the list of the versions that are <supportedVersions> contains the list of the versions that are
supported by the CI, each one represented in a child <version> supported by the CI, each one represented in a child <version>
element. The content of each <version> element is a string made by element. The content of each <version> element is a string made by
the major version number followed by a dot and then by the minor the major version number followed by a dot and then by the minor
skipping to change at page 29, line 46 skipping to change at page 29, line 46
described in the advertisement using the <myVideoExtension> element described in the advertisement using the <myVideoExtension> element
containing two extra information (<newVideoAttribute1> and containing two extra information (<newVideoAttribute1> and
<newVideoAttribute2>) besides using the attributes envisioned for a <newVideoAttribute2>) besides using the attributes envisioned for a
generic media capture. As stated in this document, both participants generic media capture. As stated in this document, both participants
must be aware of the extension schema and related semantics to use must be aware of the extension schema and related semantics to use
such an extension and must negotiate it via the 'options' and such an extension and must negotiate it via the 'options' and
'optionsResponse' mechanism. 'optionsResponse' mechanism.
9. XML Schema 9. XML Schema
NOTE TO THE RFC-Editor: Please replace "data-model-schema-18.xsd" NOTE TO THE RFC-Editor: Please replace "data-model-schema-19.xsd"
with the right schema location for the CLUE data model schema with the right schema location for the CLUE data model schema
document (which is still to be defined at the time of this writing) document (which is still to be defined at the time of this writing)
in this section prior to publication as an RFC. in this section prior to publication as an RFC.
In this section, the XML schema defining the CLUE messages is In this section, the XML schema defining the CLUE messages is
provided (Figure 16). provided (Figure 16).
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="urn:ietf:params:xml:ns:clue-protocol" xmlns="urn:ietf:params:xml:ns:clue-protocol"
xmlns:dm="urn:ietf:params:xml:ns:clue-info" xmlns:dm="urn:ietf:params:xml:ns:clue-info"
xmlns:tns="urn:ietf:params:xml:ns:clue-protocol" xmlns:tns="urn:ietf:params:xml:ns:clue-protocol"
version="1.0" version="1.0"
targetNamespace="urn:ietf:params:xml:ns:clue-protocol" targetNamespace="urn:ietf:params:xml:ns:clue-protocol"
elementFormDefault="qualified" elementFormDefault="qualified"
attributeFormDefault="unqualified"> attributeFormDefault="unqualified">
<!-- Import data model schema --> <!-- Import data model schema -->
<xs:import namespace="urn:ietf:params:xml:ns:clue-info" <xs:import namespace="urn:ietf:params:xml:ns:clue-info"
schemaLocation="clue-data-model-schema-18.xsd" /> schemaLocation="clue-data-model-schema-19.xsd" />
<!-- ELEMENT DEFINITIONS --> <!-- ELEMENT DEFINITIONS -->
<xs:element name="options" type="optionsMessageType" /> <xs:element name="options" type="optionsMessageType" />
<xs:element name="optionsResponse" type="optionsResponseMessageType"/> <xs:element name="optionsResponse" type="optionsResponseMessageType"/>
<xs:element name="advertisement" type="advertisementMessageType"/> <xs:element name="advertisement" type="advertisementMessageType"/>
<xs:element name="ack" type="advAcknowledgementMessageType"/> <xs:element name="ack" type="advAcknowledgementMessageType"/>
<xs:element name="configure" type="configureMessageType"/> <xs:element name="configure" type="configureMessageType"/>
<xs:element name="configureResponse" <xs:element name="configureResponse"
type="configureResponseMessageType"/> type="configureResponseMessageType"/>
<!-- CLUE MESSAGE TYPE --> <!-- CLUE MESSAGE TYPE -->
<xs:complexType name="clueMessageType" abstract="true"> <xs:complexType name="clueMessageType" abstract="true">
skipping to change at page 39, line 5 skipping to change at page 39, line 5
<version>2.7</version> <version>2.7</version>
</extension> </extension>
<extension> <extension>
<name>E5</name> <name>E5</name>
<schemaRef>URL_E5</schemaRef> <schemaRef>URL_E5</schemaRef>
<version>2.7</version> <version>2.7</version>
</extension> </extension>
</supportedExtensions> </supportedExtensions>
</options> </options>
10.2. CLUE message nr. 2: 'optionResponse' 10.2. CLUE message nr. 2: 'optionsResponse'
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<optionsResponse xmlns="urn:ietf:params:xml:ns:clue-protocol" <optionsResponse xmlns="urn:ietf:params:xml:ns:clue-protocol"
xmlns:ns2="urn:ietf:params:xml:ns:clue-info" xmlns:ns2="urn:ietf:params:xml:ns:clue-info"
xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0" xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd" http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
protocol="CLUE" v="1.4"> protocol="CLUE" v="1.4">
<clueId>CP2</clueId> <clueId>CP2</clueId>
 End of changes. 8 change blocks. 
9 lines changed or deleted 9 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/