Re: [Wish] WG Last Call for draft-ietf-wish-whip

Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Mon, 06 February 2023 12:05 UTC

Return-Path: <sergio.garcia.murillo@gmail.com>
X-Original-To: wish@ietfa.amsl.com
Delivered-To: wish@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 428EFC151547 for <wish@ietfa.amsl.com>; Mon, 6 Feb 2023 04:05:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.094
X-Spam-Level:
X-Spam-Status: No, score=-2.094 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ETkoKk8yfcVN for <wish@ietfa.amsl.com>; Mon, 6 Feb 2023 04:05:26 -0800 (PST)
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com [IPv6:2a00:1450:4864:20::62a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 73FD2C1522AF for <wish@ietf.org>; Mon, 6 Feb 2023 04:05:26 -0800 (PST)
Received: by mail-ej1-x62a.google.com with SMTP id qw12so33555432ejc.2 for <wish@ietf.org>; Mon, 06 Feb 2023 04:05:26 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5tX3CDxu362KIezUnsqKIlEcCceKB04536RghNCTXbM=; b=hq44ZNjirhX0SXvaz7ZSFHQAbDVysuJGY2uIQa0a64Gkv5kJMXZQpUD9DW4BiipcXl BOtaJ+F702vYTEpfMNlOjZy2V5wFLYuoFPvaDDQBWWXBsyphKkPIkXDx/ywzbl7o7kdn mSaBq/M4GEd2E5G+RjlBUahIIOI18+60PKaGtRSf0SIKbKaatRiQGDqHypIWHnCIDCoO YKvHjisI5QW23btxcvm6XDfE5XuXFP9N+XPj+pg+G+WJ07nFenszxvdaSXBzxOGJYSRl dk3oa0XcO2JyQelCSNzJpjSstqNx6FgVKY4hzgeVrzuE3+tLxH43suktFXXhYVY9pPuw Mf+w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5tX3CDxu362KIezUnsqKIlEcCceKB04536RghNCTXbM=; b=yNInpniGaVPwEDVmHyfl/p11c4cWc+pxesTKLzC8GP82hTxNfqWRrPqL4iMmFK3D7g LXB0NHal4lQMBJzDdyIcMtoIh5IsdjgG0GRB5EMk++hB0fHnbQoeMn5tg2UPp3bsc0J+ SUzzWvRpBhTV8CFEUohFhlABUmY7SQ8io4AhBZorUz0WGDzo2x7X+2rIPytbVA5Zlb56 ke3XgmtrKaI+YvwV4C+HN9dV3zTPGQobzaTQM8uuQ0Mp/8XCxs7lMLkh9REc84F8mFiJ 3TTbz/SLtwVP7Wyaaq5DNqkxRdbndHS5WFH4jNJ5jEAX3aqlgo8Nl8mTHfbWQpJbaj1b cMuw==
X-Gm-Message-State: AO0yUKVdApelgdgS/u1cErIT+Q4wmUGF2Ojrf7fxGME9dhJxVZyw82He CVMCBQ12khnr9Csi5UIpJ47L7c2YvaIZqq42VAJCsZq92+AmRA==
X-Google-Smtp-Source: AK7set8r805lDTLtdjq/2BIzGXBVW+DiCybTPIUyeeRF9pVwFRp4fZ2wuxkmfLb0+NKxsVSW3wyK/VI9P3ltyIYwoVc=
X-Received: by 2002:a17:906:b052:b0:871:be7:c98c with SMTP id bj18-20020a170906b05200b008710be7c98cmr5235673ejb.47.1675685124053; Mon, 06 Feb 2023 04:05:24 -0800 (PST)
MIME-Version: 1.0
References: <5372AA95-F2A7-4E98-8FBA-92CD18D6A9C0@sn3rd.com> <87bkmh2x6a.wl-jch@irif.fr> <CA+ag07bqkUjMKvupmokrQiz95=hBD4fEK1VBc2z1Bvd=7irpLw@mail.gmail.com> <878rhb9gm0.wl-jch@irif.fr>
In-Reply-To: <878rhb9gm0.wl-jch@irif.fr>
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Date: Mon, 06 Feb 2023 13:05:13 +0100
Message-ID: <CA+ag07ZBUTWJXq63VwXKhG28zh46VgfCSzFJA1iGqLEqGf_v_Q@mail.gmail.com>
To: Juliusz Chroboczek <jch@irif.fr>
Cc: Sean Turner <sean@sn3rd.com>, WISH List <wish@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000931cee05f406d87b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/wish/yCSH3KyRFmQ15mM-LSukEYMnJ6A>
Subject: Re: [Wish] WG Last Call for draft-ietf-wish-whip
X-BeenThere: wish@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: WebRTC Ingest Signaling over HTTPS <wish.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/wish>, <mailto:wish-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/wish/>
List-Post: <mailto:wish@ietf.org>
List-Help: <mailto:wish-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/wish>, <mailto:wish-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Feb 2023 12:05:30 -0000

On Mon, Feb 6, 2023 at 12:29 PM Juliusz Chroboczek <jch@irif.fr> wrote:

> > We have already discussed about this in here:
> > https://github.com/wish-wg/webrtc-http-ingest-protocol/issues/66
>
> Sorry to bring it up again.
>
> > Basically, the suggested proposal is to use this code flow:
> > offer = pc.createOffer();
> > [answer,iceServers] = POST(offer)
> > pc.setConfigutation({iceServers});
> > pc.setLocalDescription(offer);
> > pc.setRemoteDescription(answer);
>
> I don't understand how that can work.  By the time ICE gathering is
> started (by createOffer), it is too late to change the ICE configuration.
>

Can you point me to where in th3 spec it describes that the ice gathering
phase is started in the createOffer. JSEP states the contrary:

https://www.rfc-editor.org/rfc/rfc8829.html#section-4.1.8-5
Calling this method may do things such as generating new ICE credentials,
but it does not change the PeerConnection state, trigger candidate
gathering, or cause media to start or stop flowing. Specifically, the offer
is not applied, and does not become the pending local description, until
setLocalDescription is called.

This is from the SLD in JSEP:

When a local description is supplied and the number of transports currently
in use does not match the number of transports needed by the local
description,
 the PeerConnection will create transports as needed and begin gathering
candidates for each transport, using ones from the candidate pool if
available.


>
> > This is guaranteed to work on all JSEP compatible clients.
>
> I'm probably mistaken, but I was under the impression that you need an ICE
> restart for the new configuration to have any effect.  Could you please
> present your evidence that that is not the case?
>

What kind of evidence do you need?


>
> >     2. No way to discover whether Trickle ICE is available
>
> [...]
>
> > Even if the media server doesn't support ICE trickle candidate
> signaling, the
> > ICE connection may still be successful, as the media server should
> support
> > receiving STUN binding requests from unknown ips:ports as long as the ice
> > username/fragments are correct.
> >
> > Trickle ICE is only needed in case that the media server is behind a NAT
> > and we need to do nat hole punching.
>
> Could you please explain what happens if the client is behind a firewall
> that only allows outgoing TCP traffic, and only to a small set of
> well-known ports, which is sadly the case in many university networks?
>
>
Note that I am talking about the ICE trickle part, that is, sending the ICE
relay candidates from the client to the server, not the relay turn
allocation itself.

In this case, the client will send a STUN binding request through the TUR
UDP relay port to the signaled ICE candidates by the server on the SDP
answer. The media server will receive the binding request (as there is no
need to do hole punching) and the ICE session will be established normally.

Best regards
Sergio