Re: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"

"Schwarz, Albrecht (Albrecht)" <albrecht.schwarz@alcatel-lucent.com> Wed, 14 October 2015 17:10 UTC

Return-Path: <albrecht.schwarz@alcatel-lucent.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5FA531ACDEA for <mmusic@ietfa.amsl.com>; Wed, 14 Oct 2015 10:10:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.909
X-Spam-Level:
X-Spam-Status: No, score=-6.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5UtZK0U8sTbJ for <mmusic@ietfa.amsl.com>; Wed, 14 Oct 2015 10:09:57 -0700 (PDT)
Received: from smtp-fr.alcatel-lucent.com (fr-hpida-esg-02.alcatel-lucent.com [135.245.210.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5EFC21ACEC4 for <mmusic@ietf.org>; Wed, 14 Oct 2015 10:09:56 -0700 (PDT)
Received: from fr712usmtp2.zeu.alcatel-lucent.com (unknown [135.239.2.42]) by Websense Email Security Gateway with ESMTPS id E348CB29CF68D; Wed, 14 Oct 2015 17:09:48 +0000 (GMT)
Received: from FR712WXCHHUB03.zeu.alcatel-lucent.com (fr712wxchhub03.zeu.alcatel-lucent.com [135.239.2.74]) by fr712usmtp2.zeu.alcatel-lucent.com (GMO) with ESMTP id t9EH9pHR031853 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Wed, 14 Oct 2015 19:09:51 +0200
Received: from FR711WXCHMBA01.zeu.alcatel-lucent.com ([169.254.1.183]) by FR712WXCHHUB03.zeu.alcatel-lucent.com ([135.239.2.74]) with mapi id 14.03.0195.001; Wed, 14 Oct 2015 19:09:51 +0200
From: "Schwarz, Albrecht (Albrecht)" <albrecht.schwarz@alcatel-lucent.com>
To: Christer Holmberg <christer.holmberg@ericsson.com>, "Stoetzer-Bradler, Juergen (Juergen)" <juergen.stoetzer-bradler@alcatel-lucent.com>, "mmusic@ietf.org" <mmusic@ietf.org>, "Christian Groves (Christian.Groves@nteczone.com)" <Christian.Groves@nteczone.com>
Thread-Topic: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"
Thread-Index: AQHRAptKzMERrsuYFkKxu7brlStM2Z5kAPoAgAVFFgCAAAF6gIAB9+Bw
Date: Wed, 14 Oct 2015 17:09:50 +0000
Message-ID: <786615F3A85DF44AA2A76164A71FE1ACDF79BE0B@FR711WXCHMBA01.zeu.alcatel-lucent.com>
References: <5617C92A.4030009@alcatel-lucent.com> <7594FB04B1934943A5C02806D1A2204B37B388F5@ESESSMB209.ericsson.se> <561CFF32.5080601@alcatel-lucent.com> <7594FB04B1934943A5C02806D1A2204B37B41098@ESESSMB209.ericsson.se>
In-Reply-To: <7594FB04B1934943A5C02806D1A2204B37B41098@ESESSMB209.ericsson.se>
Accept-Language: de-DE, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [135.239.27.40]
Content-Type: multipart/alternative; boundary="_000_786615F3A85DF44AA2A76164A71FE1ACDF79BE0BFR711WXCHMBA01z_"
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/mmusic/UCK6cnrDhP1Q4OICjDUhBMR9-lk>
Subject: Re: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 14 Oct 2015 17:10:01 -0000

Hello Christer,

such a prescriptive sentence
> If a setup value is required for the MSRP session establishment, then the dcsa setup attribute must be mandatory.
relates to a “conditionally ‘mandatory’”, i.e., an optional tagging in general, right?

@Christian, you had a good rule of thumb proposed, covering the conditionality.
What’s your view?

Regards,
Albrecht


From: mmusic [mailto:mmusic-bounces@ietf.org] On Behalf Of Christer Holmberg
Sent: Dienstag, 13. Oktober 2015 15:01
To: Stoetzer-Bradler, Juergen (Juergen); mmusic@ietf.org
Subject: Re: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"

Hi,

If a setup value is required for the MSRP session establishment, then the dcsa setup attribute must be mandatory.

Regards,

Christer

From: Juergen Stoetzer-Bradler [mailto:Juergen.Stoetzer-Bradler@alcatel-lucent.com]
Sent: 13. lokakuuta 2015 15:55
To: Christer Holmberg; mmusic@ietf.org<mailto:mmusic@ietf.org>
Subject: Re: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"

Hello Christer,

Thank you for your comments.

A dcsa embedded setup attribute does not have any MSRP transport protocol related establishment role semantics.
But an MSRP over data channel endpoint still needs to know its MSRP session establishment role.
In some data channel to TCP (or TLS) transport interworking cases, which are described in section 6,
this MSRP session establishment role cannot always be derived from the DTLS/SCTP establishment role.
In such cases a dcsa embedded setup attribute for MSRP seems to be required.
However, in some other interworking cases, and especially in end-to-end data channel cases the MSRP session
establishment role could be tightly coupled with the DTLS/SCTP establishment roles and hence with the "a=setup" attribute.
If we don't allow the "a=setup" attribute to also describe the MSRP session establishment role (if no "a=dcsa:x setup"
attribute is present), then we should probably specify that a dcsa embedded setup attribute is mandatory
for MSRP over data channel sessions.

For MSRP as sub-protocol, would a mandatory "a=dcsa:x setup:<role>" attribute be agreeable?

Thanks,
Juergen
On 10.10.2015 06:26, Christer Holmberg wrote:
Hi.

First, I think you suggest far too much text, but that is editorial.

Second, as you say, the media level 'setup' attribute is used to negotiate the SCTPoDTLS association establishment. But, I don't think it should be used to negotiate the MSRP roles etc in case the 'dcsa:x setup' is not present. The 'setup' attribute has nothing to do with the protocol carried within the data channel - the reason we defined the 'dsca' attribute was to be able to carry such information.

Regards,

Christer

Sent from my Windows Phone
________________________________
From: Juergen Stoetzer-Bradler<mailto:Juergen.Stoetzer-Bradler@alcatel-lucent.com>
Sent: ‎09/‎10/‎2015 17:03
To: mmusic@ietf.org<mailto:mmusic@ietf.org>
Subject: [MMUSIC] draft-ietf-mmusic-msrp-usage-data-channel - "a=setup" versus "a=dcsa:x setup"
Hello,

An MSRP over data channel related SDP media description will have a media level "a=setup:<role>" attribute and may additionally
contain an "a=dcsa" encapsulated setup attribute "a=dcsa:x setup:<role>". Current version draft-ietf-mmusic-msrp-usage-data-channel-02
does not yet have any text related to the setup attribute except for listing it as potential dcsa encapsulated MSRP specific attribute.
As the media level "a=setup" attribute is used to negotiation the DTLS and SCTP establishment roles, and as the setup attribute is also used
in MSRP over TCP cases to negotiate the "active" role of MSRP session endpoints (RFCs 6135, 6714) we propose to explicitly describe
the semantics of dcsa encapsulated setup attributes for MSRP over data channel in draft-ietf-mmusic-msrp-usage-data-channel.

We propose to add a new section 5.1.1.3 "Media Description Level setup Attribute Versus Data Channel Specific setup Attribute"
after section 5.1.1.2 ("Use of dcsa Attribute") and to extend existing section 6 ("Gateway Configuration") with setup attribute related procedures.

Would the following new section 5.1.1.3 and modified section 6 be agreeable?

Thanks,
Juergen

Proposed new Section 5.1.1.3:

5.1.1.3.  Media Description Level setup Attribute Versus Data Channel Specific setup Attribute

   The SDP setup attribute, as introduced in [RFC4145], can be used in
   WebRTC data channel related SDP media descriptions as a media level
   attribute, which is directly associated with the corresponding DTLS/
   SCTP "m" line.  In this case the setup attribute is of the form
   "a=setup:<role>", where <role> assumes values as defined in
   [RFC4145].  Such a setup attribute is then used as specified in
   [I-D.ietf-mmusic-sctp-sdp] in order to negotiate the establishment
   roles of the DTLS connection and the SCTP association.

   Additionally, the setup attribute can be embedded in a dcsa attribute
   and hence can explicitly be associated with an MSRP session over a
   specific data channel.  In such a case it is of the form "a=dcsa:x
   setup:<role>", with x being the data channel's SCTP stream
   identifier.  Such a dcsa attribute embedded setup attribute has no
   relationship with the DTLS connection and SCTP association
   establishment roles.

   dcsa attribute embedded setup attributes are OPTIONAL for MSRP
   sessions over data channels.

   If an MSRP over data channel description contains a dcsa embedded
   setup attribute, then this embedded setup attribute is used to
   negotiate, which MSRP session endpoint assumes the active role as per
   Section 4.2.2 of [RFC6135] and Section 5.4 of [RFC4975].

   If an MSRP over data channel description does not contain a dcsa
   embedded setup attribute, then the media description level "a=setup"
   attribute, which is associated with the data channel's DTLS
   connection and SCTP association, is used to negotiate, which MSRP
   session endpoint assumes the active role.

   If an MSRP over data channel endpoint wants to negotiate an active or
   non-active MSRP session establishment role, which is different from
   its DTLS connection and SCTP association establishment role, then it
   MUST include a dcsa embedded setup attribute for this MSRP session.
   In this case this dcsa embedded setup attribute's value is different
   from the value of the DTLS/SCTP "m" line's "a=setup" attribute.


Proposed modified section 6:

6.  Gateway Configuration

   This section describes the network configuration where one MSRP
   endpoint uses data channels as MSRP transport, the other MSRP
   endpoint uses TLS/TCP connections as MSRP transport, and the two MSRP
   endpoints interwork via an MSRP gateway.

   Specifically, a gateway can be configured to interwork an MSRP
   session over a data channel with a peer that does not support data
   channel transport in one of two ways.  In one model, the gateway
   performs as a MSRP B2BUA to interwork all the procedures as necessary
   between the endpoints.  No further specification is needed for this
   model.

   Alternately, the gateway can use CEMA procedures to provide transport
   level interworking between MSRP endpoints using different transport
   protocols as follows.

   When the gateway performs transport level interworking between MSRP
   endpoints, all of the procedures in Section 5 apply to each peer,
   with the following additions:

   o  The endpoint establishing an MSRP session using data channel
      transport SHALL NOT request inclusion of any relays, although it
      MAY interoperate with a peer that signals the use of relays.

   o  The gateway receiving an SDP offer that includes a request to
      negotiate an MSRP session on a data channel can provide transport
      level interworking in the same manner as a CEMA SBC by forwarding
      TCP or TLS transport parameters in a new "m" line with the
      appropriate attributes within the forwarded SDP offer.

      *  If the received data channel side SDP offer contains a dcsa
         embedded setup attribute for the to be negotiated MSRP session,
         then the gateway interworks this dcsa embedded setup attribute
         with the media description level "a=setup" attribute of this
         MSRP session's "m" line in its forwarded SDP offer.

      *  If the received data channel side SDP offer does not contain a
         dcsa embedded setup attribute for the to be negotiated MSRP
         session, then the gateway interworks the media description
         level "a=setup" attribute, which is directly associated with
         the data channel's DTLS/SCTP "m" line, with the media
         description level "a=setup" attribute of this MSRP session's
         "m" line in its forwarded SDP offer.

   o  Similarly, a gateway receiving an SDP offer to negotiate an MSRP
      session using TCP or TLS transport with an endpoint that only
      supports data channel transport for MSRP can provide transport
      level interworking in the same manner as a CEMA SBC by
      establishing a new data channel for the MSRP session with the
      target endpoint.

      *  In this case the gateway interworks the TCP or TLS associated
         media description level "a=setup" attribute of the to be
         negotiated MSRP session's received "m" line either with the
         media description level "a=setup" attribute of the data
         channel's DTLS/SCTP "m" line, or with the dcsa embedded setup
         attribute of this MSRP session's new data channel.

      *  If the gateway's DTLS connection and SCTP association
         establishment role on its data channel side is equal to the
         "a=setup" attribute's value of the received MSRP over TCP or
         TLS "m" line, then the gateway MAY add a dcsa embedded setup
         attribute to the description of the MSRP session's new data
         channel in its generated data channel side offer.
         Alternatively, in this case the gateway MAY omit adding such a
         dcsa embedded setup attribute to the description of the MSRP
         session's new data channel in its generated data channel side
         offer.  Otherwise, if the gateway's DTLS connection and SCTP
         association establishment role is different from the MSRP over
         TCP or TLS associated received "a=setup" attribute's value,
         then the gateway MUST add a dcsa embedded setup attribute to
         the description of the MSRP session's new data channel in its
         generated data channel side offer.

      *  If the gateway adds a dcsa embedded setup attribute associated
         with this MSRP session to its data channel side SDP offer, then
         the value of this embedded setup attribute MUST be equal to the
         value of the "a=setup" attribute, which is associated with this
         MSRP session's "m" line in the received TCP or TLS side SDP
         offer.