Re: [rtcweb] Default proto transport in JSEP

Justin Uberti <juberti@google.com> Tue, 20 November 2018 04:41 UTC

Return-Path: <juberti@google.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0D3D9128766 for <rtcweb@ietfa.amsl.com>; Mon, 19 Nov 2018 20:41:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.499
X-Spam-Level:
X-Spam-Status: No, score=-17.499 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, NORMAL_HTTP_TO_IP=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 oVpAJBmSvuYj for <rtcweb@ietfa.amsl.com>; Mon, 19 Nov 2018 20:41:40 -0800 (PST)
Received: from mail-it1-x12f.google.com (mail-it1-x12f.google.com [IPv6:2607:f8b0:4864:20::12f]) (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 F3C15128C65 for <rtcweb@ietf.org>; Mon, 19 Nov 2018 20:41:39 -0800 (PST)
Received: by mail-it1-x12f.google.com with SMTP id m15so1604603itl.4 for <rtcweb@ietf.org>; Mon, 19 Nov 2018 20:41:39 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=DsKpbsf2AmMJZt+PDtqP1HKhVKdJ0ikrQ/VFOC5q3sc=; b=qKFni3L2mTOW/cnyes3zTqsHv7WzefRBbmQetjiMmG0t1u6L6i9rH4JpQrmM5+NGHo pkPfGTtfL8TeCCv6vR77yMGNbO8nBpM7fBpguEH1+jDKr8+kO2Ad4nysJT3nddV5gRcJ Yr/wOpMz/O/u7bGPd7XvhVZf8/FzLrrc5V3D+USzLRSgaxknkaZVe0wkZj8jx1BTvhzo 3PIvS8qSnuce39wkc6mxt7NFnO4fdd8CrGdodiK9xnCFKIj7cDvQIrV7R0es21dDQ3kT mHEr23G3++vhd8wwAX0jipC66Hsr4rdEzjZgY+MjCufc6topOli6CBpvPXCeHY65aYei DwmA==
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=DsKpbsf2AmMJZt+PDtqP1HKhVKdJ0ikrQ/VFOC5q3sc=; b=k6IpZ8R38L2JNJwVvLp10/dLvDgFlM82SVY2sKLgwvOxADTvReKxyjdS7cSsO4wWj8 JcT4EOGKPq00OESV5eeq2MARFA/70dX7aEdsQ9FH7ndyBZKZo1p2fFIsZ/G8c961oUwU X4Frf3PqRBcinB6lqGdvABbDjMFr8nKm97J2vHG1egtEaaqBqYNeTp7uN97ujJDmU13E 1AX8cWPUmLq6+d7ENdznRFMye3WTZfE9FoxYKTWE7Sa5bCSRkCgjMP9pH2uHPrRS39E1 wj8yGe1//YPHbppvhQx1KvhLypc28gPKrvsfALCkPQIpy4zueqoQ3Xbu7r2fMtPXRQgV 6YGg==
X-Gm-Message-State: AA+aEWZsWx25BVognE7e79PZHYAqoIdzyA647ihZt/y0X0y9lsK6Tu3T Eml8CSg6FkSzqrEUSMEE8bkSR6rY/uKVWrciT54RnpEeD6k=
X-Google-Smtp-Source: AFSGD/Xm2+YTfwvep+IS94DtVQhULmfN6BjzHbDBDiSrZxxe2SfuJ4cV6v7G6OOFTN7KLXTJvkzUHxd1MlfU1KZ2df0=
X-Received: by 2002:a24:e1ce:: with SMTP id n197mr841360ith.123.1542688898928; Mon, 19 Nov 2018 20:41:38 -0800 (PST)
MIME-Version: 1.0
References: <CA+9kkMADnZJBaV0hfLuwGU0bGBEP5tCPZ=8Zd_85Dgzi37ghAQ@mail.gmail.com> <CAD5OKxsNFFmER__H0+5Mzts58yn9cWLMEADhSnLR4nreKD9WAQ@mail.gmail.com> <CALiegfkHXv6f8P3C-C=2RKCyxWfzCAzkzOqxBXmmsNCPrZzFfg@mail.gmail.com> <CAD5OKxswZdGm1CYvy=NoyEtN-eFFp7Sc8mmGT7jAJ-q3msJYXA@mail.gmail.com> <CALiegfmFV=988+WuViUQRGJRgR=mcqS9Y+eDnL4pH6VrbJRvCQ@mail.gmail.com> <CAD5OKxtwuQu0du+ptmJpX0ALQnUtjLG==NanP8OB51D4M9fYhg@mail.gmail.com> <CALiegfnMbwTruVKU-VnsZvddqRhnuCm1k8zLcLSuWSs9zT1JUA@mail.gmail.com> <CAD5OKxtxAiBbVY4HQjfjwqfsGoUxAZzmmrTWVfe7pG6MTsHGRA@mail.gmail.com> <CALiegfnVOFvUKYMRp7z0Q3aVyzbi=+JuyXmH+PL6_pNW9j9PVA@mail.gmail.com> <CAD5OKxtpepraJWVbJy2+x_4pFbeqF57=yh1GVF-WoYGBX1OV-Q@mail.gmail.com> <CALiegf=ffb1UL0FPrk770Q-ACQL-ySAqxBzB1M0yJXZUM6y9sg@mail.gmail.com> <CAD5OKxtj=nEWjOWztcAVMDsFOFRGO7hQaKUsn-Pqbk7Ma64Trg@mail.gmail.com> <CALiegfno4y5P-qLkrxSs0zLbEEUo1HWyp0rfEA8KecRjTQ43sQ@mail.gmail.com> <CAOJ7v-2o1Se9zaMgktQtwNW46zvB2i7Hk7+GK1yhWJV5xcT7ZA@mail.gmail.com> <CAD5OKxveNtx3uD7tD_mTgE-Rv2JTZPBmjk34iUJD9uw25-ZCzQ@mail.gmail.com>
In-Reply-To: <CAD5OKxveNtx3uD7tD_mTgE-Rv2JTZPBmjk34iUJD9uw25-ZCzQ@mail.gmail.com>
From: Justin Uberti <juberti@google.com>
Date: Mon, 19 Nov 2018 20:41:24 -0800
Message-ID: <CAOJ7v-1V_vtq+szN6299kw9dH_TOz9sxa+YYwQkBwHeJPoqvgA@mail.gmail.com>
To: Roman Shpount <roman@telurix.com>
Cc: Iñaki Baz Castillo <ibc@aliax.net>, RTCWeb IETF <rtcweb@ietf.org>, mmusic@ietf.org
Content-Type: multipart/alternative; boundary="000000000000d24e94057b113f78"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/ES0K8uw2HrV6hmMWCAh3xJYhfK8>
Subject: Re: [rtcweb] Default proto transport in JSEP
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Nov 2018 04:41:43 -0000

Are you aware of any implementations that will trigger ICE mismatch if the
proto does not match? Also, this would only happen in situations where the
client offers *only* TCP candidates, which would require manual filtering
by the client and is clearly a corner case.


On Mon, Nov 19, 2018 at 4:16 PM Roman Shpount <roman@telurix.com> wrote:

> On Mon, Nov 19, 2018 at 6:08 PM Justin Uberti <juberti@google.com> wrote:
>
>> Pretty clear that the 0.0.0.0/9 behavior being proposed violates 5245
>> <https://tools.ietf.org/html/rfc5245#section-5.1>:
>>
>>    The agent will proceed with the ICE procedures defined in this
>>    specification if, for each media stream in the SDP it received, the
>>    default destination for each component of that media stream appears
>>    in a candidate attribute.  For example, in the case of RTP, the IP
>>    address and port in the c and m lines, respectively, appear in a
>>    candidate attribute and the value in the rtcp attribute appears in a
>>    candidate attribute.
>>
>> Ergo, I don't think this proposal will fly. Of the three options being
>> considered (below), only #1 avoids violating 5245 while simultaneously
>> minimizing busywork.
>>
>> 1) (current) Match IP and port, but stipulate an exact proto value
>> 2) Match IP, port and proto
>> 3) Set IP, port, and proto to fixed values
>>
>> If we think avoiding ice-mismatch when interacting with 5245 endpoints is
>> not important, that point needs to be made clearly. Otherwise, I think the
>> easiest path is to update ice-sip-sdp to permit #1 as a legacy interop
>> behavior (and it can continue to recommend #3 for interop with 8445
>> clients).
>>
>
> The RFC 5245 does not define any candidate transports except UDP, so it
> does not seem to mention protocol in most of the examples. I believe that
> language in 5245 that you are quoting actually specifies that default
> address, port and protocol foundation in c= and m= line must match.
>
> Specifically it says that  "for each media stream in the SDP it received,
> the default destination for each component of that media stream appears in
> a candidate attribute."
>
> If we look the term definitions,in
> https://tools.ietf.org/html/rfc5245#section-3 it says:
>
> Default Destination/Candidate: *The default destination for a component
> of a media stream is the transport address that would be used by an agent
> that is not ICE aware. *For the RTP component, the default IP address is
> in the c line of the SDP, and the port is in the m line. For the RTCP
> component, it is in the rtcp attribute when present, and when not present,
> the IP address is in the c line and 1 plus the port is in the m line. A
> default candidate for a component is one whose transport address matches
> the default destination for that component.
>
> Transport Address: The combination of an IP address and transport protocol
> (such as UDP or TCP) port.
>
> From this  it looks like the document simply assumes that port has type
> which is UDP or TCP and in order for port to match both its value and type
> must match.
>
> Furthermore, without protocol foundation candidate default destination is
> ambiguous and cannot be used without ICE.  So, 1, as proposed will likely
> to cause ICE mismatch with existing implementations and will not be RFC
> 5245 compatible.
>
> 2 is the only RFC 5245 compatible option.
>
> Regards,
> _____________
> Roman Shpount
>
>
>