Re: [MMUSIC] Is ice-mismatch media or session level?

Roman Shpount <roman@telurix.com> Fri, 24 May 2019 22:08 UTC

Return-Path: <roman@telurix.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 800831200FF for <mmusic@ietfa.amsl.com>; Fri, 24 May 2019 15:08:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.888
X-Spam-Level:
X-Spam-Status: No, score=-1.888 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=telurix-com.20150623.gappssmtp.com
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 lLwQRYy2irmU for <mmusic@ietfa.amsl.com>; Fri, 24 May 2019 15:08:23 -0700 (PDT)
Received: from mail-pf1-x42d.google.com (mail-pf1-x42d.google.com [IPv6:2607:f8b0:4864:20::42d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9F441200B5 for <mmusic@ietf.org>; Fri, 24 May 2019 15:08:23 -0700 (PDT)
Received: by mail-pf1-x42d.google.com with SMTP id z26so6082636pfg.6 for <mmusic@ietf.org>; Fri, 24 May 2019 15:08:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telurix-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Dk2UG8kJ6ieHwvabj1wpcuo4n7fJbGrd4BlLYYpUwRI=; b=qknpl2NfAck6OW9mJJpdvSOn8ofizsU2NyNFDF1OZJjK+++L8itvY3k4NAdEIffGvM DNc8zUukPCswIpc8S71pXZ7cGKrHkx+75uGac7tdEndR6zalRBaLbYSVsHGefPe36riw Fh6jkz+dRYH3JW5svntAYC9z2Z0L0An71d780ARV13xE+XvDj+BNOMAQCNih3BWL0ETD Nxil+Q5urAMLJfSH9G9TBv3WiLf6R+xsbiNTje9Ip0TP+SdEOif/yBVvY1CxkS3S0QO2 BeTBdEDuHIDfYUFVrjVew9a0znylOEPdn4NCgxrYOx1XaUdytFTufnaP1Rt1QKxffAB7 UdFA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Dk2UG8kJ6ieHwvabj1wpcuo4n7fJbGrd4BlLYYpUwRI=; b=bOqd9wpNVpKcdAj5MbVWuzGcSjwP1ft91TpiT0SRz5TJ4NhvF2d6xwuUXwUUUoP7Q6 5poBwLq/6vZn0O9oDn5Oy35IhzXEJhyT00G0Mtao3MCD0eQEf6AO0sn1FRG2CMZ/K+TH Ya/l7Myel6YG5oUSsyIKUXEY/3ILpzzZ5Az0dsPy/E/ud+dVRIu/bGJzWmOfumd6X0IZ 5zbHG3KDGH3S2u9WtR4Nj6V5CKm6RHHcon22Itldy94GgUPmwc6C9txctmmTmgZarajs /f6fIPZy6AAABSvwGdxIMQ1TOt5rm0GuN1j+Pgvk9pnHzpODPhMTPmcESiWPle45/TqR +QXg==
X-Gm-Message-State: APjAAAX4CRBc6HkFCbMswVdFFgbLN+nt7K72SLhJfLrnYq5GlJ4HzFHE +wducZziRyVaQ1hfAZqrd7hOGGpsrvY=
X-Google-Smtp-Source: APXvYqx+zJztzN9rKOAru67GuqBe1pFnB69Hl0QmAMe36SL8kRFjYzINkx/fHkkZtQMx2EMy2fiLkg==
X-Received: by 2002:a63:364f:: with SMTP id d76mr51988069pga.100.1558735702867; Fri, 24 May 2019 15:08:22 -0700 (PDT)
Received: from mail-pf1-f173.google.com (mail-pf1-f173.google.com. [209.85.210.173]) by smtp.gmail.com with ESMTPSA id 85sm3932641pfa.131.2019.05.24.15.08.22 for <mmusic@ietf.org> (version=TLS1_3 cipher=AEAD-AES128-GCM-SHA256 bits=128/128); Fri, 24 May 2019 15:08:22 -0700 (PDT)
Received: by mail-pf1-f173.google.com with SMTP id g9so6070220pfo.11 for <mmusic@ietf.org>; Fri, 24 May 2019 15:08:22 -0700 (PDT)
X-Received: by 2002:a63:a84c:: with SMTP id i12mr110545725pgp.115.1558735701962; Fri, 24 May 2019 15:08:21 -0700 (PDT)
MIME-Version: 1.0
References: <CAD5OKxvGcC0inLRxwTHKdWW3z6xM2PWjV=1J8+3_zwQsF3tCaA@mail.gmail.com> <HE1PR07MB3161E1BDB1E2439E1A9CE785933F0@HE1PR07MB3161.eurprd07.prod.outlook.com> <CAD5OKxtqKi1ucRXd5xrZrsM6hiqu=FUULx3mQv+=bZx3YHMbLg@mail.gmail.com> <310293b1-0fbf-9b74-03ca-63ad8d4b80bd@cisco.com> <CAMRcRGSyWB3O04CDOUx1oXtyL=AyB--dM-e+ABfm2dN16RK7sw@mail.gmail.com> <222e6d5f-dcca-56c8-095d-e8ca96b1948b@cisco.com> <CAMRcRGQYuv0M5pcrjAfFLUk5J4VcGMAMm_hSTWB+k=ackcxbZQ@mail.gmail.com> <e3523821-b7bf-0d1b-7b10-d38b64e4110c@cisco.com> <26BDCCFB-A65F-417C-8291-B490386ED869@ericsson.com> <CAMRcRGQtyttNhJrPkUEVS9wkVHVQ=XeZ2HDUEBwq-g5995mgvg@mail.gmail.com> <CAD5OKxvts_xviXW4R3rj1CYYxdzSQCLGTWwa+ZUExF_dHFT+gg@mail.gmail.com> <CAD5OKxtYhKgAf_cqRBJYgZZ5z-R1Qaj=UjjsxRvrbFcno3YV+Q@mail.gmail.com> <CAMRcRGR6q7oX1bSToe1G-kgywYx+CgQbO0ZPD3zTj7_s1SZW1A@mail.gmail.com>
In-Reply-To: <CAMRcRGR6q7oX1bSToe1G-kgywYx+CgQbO0ZPD3zTj7_s1SZW1A@mail.gmail.com>
From: Roman Shpount <roman@telurix.com>
Date: Fri, 24 May 2019 18:08:13 -0400
X-Gmail-Original-Message-ID: <CAD5OKxs96Hi69yT5nCC7MF9mvmv_yNOPWUq1uOu73EgDgHGY0w@mail.gmail.com>
Message-ID: <CAD5OKxs96Hi69yT5nCC7MF9mvmv_yNOPWUq1uOu73EgDgHGY0w@mail.gmail.com>
To: Suhas Nandakumar <suhasietf@gmail.com>
Cc: Christer Holmberg <christer.holmberg@ericsson.com>, Flemming Andreasen <fandreas@cisco.com>, mmusic WG <mmusic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000d078160589a96f5a"
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/nb2luOCCnhFr3OCsWNqJcxbgE-c>
Subject: Re: [MMUSIC] Is ice-mismatch media or session level?
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 24 May 2019 22:08:26 -0000

Done.
_____________
Roman Shpount


On Fri, May 24, 2019 at 5:43 PM Suhas Nandakumar <suhasietf@gmail.com>
wrote:

> Hi Roman
>
> Please go ahead with PR on that branch
>
> Thanks
> Suhas
>
> On Sat, May 25, 2019 at 3:07 AM Roman Shpount <roman@telurix.com> wrote:
>
>> Hi Suhas,
>>
>> I have looked at ice-mismatch branch and I think there is a slight
>> confusion there between presence of a=ice-mismatch in the answer and ICE
>> mismatch condition (ICE validation procedures failing for the answer).
>>
>> There are three distinct conditions when m= line in the answer is
>> processed:
>>
>> In case a=ice-mismatch is included in only some m= lines out of several,
>> ICE should not be used only for these specific m= lines and RFC 3264
>> procedures should be followed instead for these m= lines only.
>>
>> In case if offerer did not include any ICE attributes (offerer does not
>> support ICE) or if offerer included a=mismatch into all m= lines, ICE
>> should be terminated for the entire sessions and RFC 3264 procedures should
>> be followed instead for the whole session.
>>
>> In case if ICE validation procedures failed for one or more m= line in
>> the answer (answerer detected ICE mismatch), the behavior is unspecified
>> (answerer will likely terminate the session or emit a groan of unearthly
>> pain and die) .
>>
>> Let me know if you want a pull request on this branch.
>> _____________
>>
>> Roman Shpount
>>
>>
>> On Mon, May 20, 2019 at 5:03 PM Roman Shpount <roman@telurix.com> wrote:
>>
>>> Hi All,
>>>
>>> Few comments about this:
>>>
>>> 1. Section 3.2.5 needs to be rewritten to specify that Verifying ICE
>>> Support procedures is per m= line:
>>>
>>> First change old text:
>>>
>>> If this condition is not met, the agents MUST process the SDP based on
>>> normal [RFC3264] procedures, without using any of the ICE mechanisms
>>> described in the remainder of this specification with the few exceptions
>>> noted below:
>>>
>>> First change new text:
>>>
>>> If this condition is not met, the agents MUST process the SDP *for the
>>> media stream* based on normal [RFC3264] procedures, without using any
>>> of the ICE mechanisms described in the remainder of this specification with
>>> the few exceptions noted below:
>>>
>>> Second change old text:
>>>
>>> In some cases, controlling/initiator agent may receive the SDP answer
>>> that may omit "a=candidate" attributes for the media streams, and instead
>>> include a session level "a=ice-mismatch" attribute.  This signals to the
>>> offerer that the answerer supports ICE, but that ICE processing was not
>>> used for this session.  This specification provides no guidance on how an
>>> agent should proceed in such a failure case.
>>>
>>> Second change new text:
>>>
>>> In some cases, controlling/initiator agent may receive the SDP
>>> answer that may omit "a=candidate" attributes for the media *stream*,
>>> and instead include a *media *level "a=ice-mismatch" attribute.
>>> This signals to the offerer that the answerer supports ICE, but that
>>> ICE processing was not used for this *media stream*.  In this case,
>>> ICE processing MUST be terminated for this media stream and SDP for this
>>> media stream MUST be processed based on normal [RFC3264] procedures.
>>>
>>> 2. Section 3.3.3 says "If the answer does not indicate that the answerer
>>> supports ICE, or if the offerer detects an ICE mismatch in the answer, the
>>> offerer MUST terminate the usage of ICE". This needs to be clarified that
>>> if "a=ice-mismatch" attribute is included in the m= line, ICE processing
>>> MUST be terminated for this m= line only and this m= line MUST be processed
>>> based on procedures described in RFC 3264. If "a=ice-mismatch" is included
>>> in all m= lines in the answer, then ICE processing MUST be terminated for
>>> the entire session.
>>>
>>> 3. We need to specify somewhere that a=ice-mismatch is only allowed in
>>> the answer and MUST not be present in the offer.
>>>
>>> P.S. This would be much easier as a pull request but the repo is out of
>>> date.
>>> _____________
>>> Roman Shpount
>>>
>>>
>>> On Thu, May 16, 2019 at 4:28 PM Suhas Nandakumar <suhasietf@gmail.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Thu, May 16, 2019 at 12:25 AM Christer Holmberg <
>>>> christer.holmberg@ericsson.com> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>>
>>>>>
>>>>> >>>> I am inclined to leave it as media-level attribute. I am not sure
>>>>> what more clarification is needed in the text today ?
>>>>>
>>>>> >>
>>>>>
>>>>> >>> Are the clarifications Roman suggested below already included ?
>>>>>
>>>>> >
>>>>>
>>>>> >> I am finding it hard to parse suggested clarification. I am sure I
>>>>> am missing something.
>>>>>
>>>>> >
>>>>>
>>>>> > Roman suggested ice-mismatch should be defined for both media- and
>>>>> session-level.
>>>>>
>>>>> >
>>>>>
>>>>> > Looking further at the current text, I'm not sure I agree since
>>>>> there really isn't any normative behavior associated with receiving
>>>>> ice-mismatch.
>>>>>
>>>>> > Thus, I'd suggest simply keeping it as-is and media-level only.
>>>>>
>>>>>
>>>>>
>>>>> No matter whether it's session and/or media level, I still think there
>>>>> needs to be normative behavior associated with receiving ice-mismatch.
>>>>>
>>>>>
>>>>>
>>>>> Section 5.4 of RFC 8445 says:
>>>>>
>>>>>
>>>>>
>>>>>    "Each using protocol needs to define whether the using protocol is
>>>>>
>>>>>    vulnerable to ICE mismatch, how ICE mismatch is detected, and
>>>>> *whether*
>>>>>
>>>>> *   specific actions need to be taken when ICE mismatch is detected*."
>>>>>
>>>>
>>>> [Suhas] RFC5245 never defined a normative behavior on how a
>>>> ice-mismtach needs to be
>>>> handled and I do agree with the intent there.
>>>>
>>>> ice-sip-sdp says this today
>>>>
>>>> Also to note, this specification provides no guidance on how an
>>>>    controlling/initiator agent should proceed in scenarios where the the
>>>>    SDP answer includes "a=ice-mismatch" from the peer.
>>>>
>>>>
>>>> I am inclined to leave it as it is. RFC8445 doesn't mandate it either
>>>> (referring to  *whether*
>>>>
>>>> *   specific actions need to be taken"*
>>>>
>>>>
>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>>
>>>>>
>>>>> Christer
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Sun, May 12, 2019 at 8:41 PM Flemming Andreasen <mailto:
>>>>> fandreas@cisco.com> wrote:
>>>>>
>>>>> Based on the errata, it seems like the intent was for to be
>>>>> media-level. I'd suggest we keep it that way and add the clarifications you
>>>>> outline below.
>>>>>
>>>>>
>>>>>
>>>>> If people feel otherwise, please speak up no later than May 19.
>>>>>
>>>>>
>>>>>
>>>>> Thanks
>>>>>
>>>>>
>>>>>
>>>>> -- Flemming (with chair hat on)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On 4/29/19 4:44 PM, Roman Shpount wrote:
>>>>>
>>>>> Hi Christer,
>>>>>
>>>>>
>>>>>
>>>>> Thank you for reviewing and responding.
>>>>>
>>>>>
>>>>>
>>>>> On Sat, Apr 27, 2019 at 1:48 PM Christer Holmberg <mailto:
>>>>> christer.holmberg@ericsson.com> wrote:
>>>>>
>>>>> Before we just change something back we need to think what the reason
>>>>> for the change to media-level was. Could it be related to RTCWEB?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> This is definitely not RTCWEB related, since RTCWEB should never
>>>>> generate ice-mismatch or use it for any reason.
>>>>>
>>>>>
>>>>>
>>>>> The ice-mismatch attribute was session only according to RFC 5245
>>>>> Section 21..1.4 (https://tools.ietf.org/html/rfc5245#section-21.1.4).
>>>>> At the same time, according to RFC 5245 Section 15..3 (
>>>>> https://tools.ietf.org/html/rfc5245#section-15.3), ice-mismatch is
>>>>> media level attribute only. This being said, according to RFC 5245 Section
>>>>> 6.1 (https://tools.ietf.org/html/rfc5245#section-6.1), ice-mismatch
>>>>> applies to the whole session, but it is specified per m= line. According to
>>>>> errata 3149 (https://www.rfc-editor.org/errata/eid3149), ice-mismatch
>>>>> should be media level. So, it is a bit of a mess.
>>>>>
>>>>>
>>>>>
>>>>> I can change ice-mismatch back to media level, but what we need to
>>>>> clarify then is the following: If ice-mismatch is present in the m= line,
>>>>> does it stop ICE processing for the whole session or for this m= line only?
>>>>>
>>>>>
>>>>>
>>>>> If it stops ICE processing for the whole session then it makes little
>>>>> or no sense being specified per m= line. If it only stops processing for
>>>>> specific m= line, then ice-mismatch probably also makes sense at the
>>>>> session level to stop ICE processing for the whole session.
>>>>>
>>>>>
>>>>>
>>>>> I am definitely open to input here.
>>>>>
>>>>> _____________
>>>>>
>>>>> Roman Shpount
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>>
>>>>> mmusic mailing list
>>>>>
>>>>> mailto:mmusic@ietf.org
>>>>>
>>>>> https://www.ietf.org/mailman/listinfo/mmusic
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>>
>>>>> mmusic mailing list
>>>>>
>>>>> mailto:mmusic@ietf.org
>>>>>
>>>>> https://www.ietf.org/mailman/listinfo/mmusic
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>>
>>>>> mmusic mailing list
>>>>>
>>>>> mailto:mmusic@ietf.org
>>>>>
>>>>> https://www.ietf.org/mailman/listinfo/mmusic
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> mmusic mailing list
>>>> mmusic@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/mmusic
>>>>
>>>