Re: [Wish] 2nd WG Last Call for draft-ietf-wish-whip: PATCH and trickle ICE

Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Fri, 12 January 2024 08:39 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 4E8CAC14F70C for <wish@ietfa.amsl.com>; Fri, 12 Jan 2024 00:39:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.107
X-Spam-Level:
X-Spam-Status: No, score=-2.107 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, T_SCC_BODY_TEXT_LINE=-0.01] 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 0ZrMDOJ7Rw2u for <wish@ietfa.amsl.com>; Fri, 12 Jan 2024 00:39:06 -0800 (PST)
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com [IPv6:2a00:1450:4864:20::630]) (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 CB401C14F711 for <wish@ietf.org>; Fri, 12 Jan 2024 00:39:06 -0800 (PST)
Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-a2c179aa5c4so263342466b.0 for <wish@ietf.org>; Fri, 12 Jan 2024 00:39:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705048745; x=1705653545; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=VVTiJsSIROLvhK9JcR2ICyu5PYAakRrA64oEOH/ILWU=; b=PEcj03Y4iqN5TGyUMjw3NrSyhfeTi8DsCAwpwvb6Mwu6Fab9CnJbLsdw0acoOtg0oK JDGoW1PNIZ/wiRH0fCTjxY241JYAJyyn7tA5L6horLfXorAArA4l9a8SAMm/+5QHRh6g qhk7xJQ197vhkAqIPdD86d1GX/fKFatTNvUGyMEXqCfEJTEmbHeCmuCS2hnkfdNNF8pJ 8ZxXCJQopJtJK68eewaqx+8XNuusRW9MPzNwYuS1YqmrLnFVk3o8+J3gFDb9RtcCgHFH c+IlWtiiUGzakehAAnoVJMi/upE1isV3iiOATs3bb4FjrlhkGKQ/1Dj9ZsjLkHmJb6AE PMsQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705048745; x=1705653545; 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=VVTiJsSIROLvhK9JcR2ICyu5PYAakRrA64oEOH/ILWU=; b=dO8/KkwgE8vVXPS8db2fPm1DazVwP/WAXUkniJRwQC+8vO3B4i8XJjtXEL0XmSOrCN ffGwKacM6gDAO0fKLIFqbnL00v2E7nrbaIeYXZJy254O9YC4MYr7gvYEJFtVlXQ/fPfC 3CpJMowKqialHR722UzGWI8f0ZHFtlbEY1ZZFnTC+moCY/5Xt1vhGRllK9zUtd0brQIh IO80kfHE90Pozy/uKBQVXYiTmBABIZhtCtkzE5cTo2OK/Cf3N8CLGf52aS2TpCfBSZkV HOaBxXUImx2xh7LKIPbar+wca2XzEnc0ytOLkX/YNTO1E4SDKDyCeo3OFmToXIjJXPvX xVCg==
X-Gm-Message-State: AOJu0YzEc5QrmnFkjL6Lca+QdgOrGDkJCw0DWWwuNfMyWpHM/0cP24l4 wwLwFgkpYfWz6oqkvGkVTVBjS8WFzifkPn82mXSi+OPju8g/k7dW
X-Google-Smtp-Source: AGHT+IHf28lVjvonayETN9AliphSm2eutWHDO0HgVW5qNzIB+Vsu2F11X7sg88hhPEdFpSTTTipEuqcLqpAMIgHGEOE=
X-Received: by 2002:a17:906:cb86:b0:a2c:180b:a650 with SMTP id mf6-20020a170906cb8600b00a2c180ba650mr434393ejb.123.1705048744782; Fri, 12 Jan 2024 00:39:04 -0800 (PST)
MIME-Version: 1.0
References: <6E5C6103-767B-41FC-8C69-CBC5FE5201EB@sn3rd.com> <E41AA83B-7798-4DE9-99A7-EEC263391CF4@sn3rd.com> <CA+ag07ZU2g5UmjShMUSXg5pnu0JWPVpszuKM9eBFWLeezCZgCA@mail.gmail.com> <HE1PR07MB4441341897EA27F138A69AD3936A2@HE1PR07MB4441.eurprd07.prod.outlook.com>
In-Reply-To: <HE1PR07MB4441341897EA27F138A69AD3936A2@HE1PR07MB4441.eurprd07.prod.outlook.com>
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Date: Fri, 12 Jan 2024 09:38:53 +0100
Message-ID: <CA+ag07Zkq+Ho+OO2DhD7PDs-KfRu4Ju97g49WiAQ-xn24y019w@mail.gmail.com>
To: Christer Holmberg <christer.holmberg@ericsson.com>
Cc: Sean Turner <sean@sn3rd.com>, WISH List <wish@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000c1f0e0060ebb98f4"
Archived-At: <https://mailarchive.ietf.org/arch/msg/wish/WLwoPfSOfSnprVOXDJMkT5LzNqo>
Subject: Re: [Wish] 2nd WG Last Call for draft-ietf-wish-whip: PATCH and trickle ICE
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: Fri, 12 Jan 2024 08:39:11 -0000

On Tue, Jan 9, 2024 at 12:25 PM Christer Holmberg <
christer.holmberg@ericsson.com> wrote:

> Hi,
>
>
>
> Section 4.1.1. of WHIP-11 says:
>
>
>
>         “When used for trickle ICE,
>
>            the body of this PATCH message will contain the new gathered
> set of
>
>            ICE candidates and when used for ICE restarts, it will also
> contain
>
>            the new ICE ufrag/pwd pair as defined in [RFC8838] Section 5.4.”
>
>
>
>
>
> Q1: My reading of the text above is that ICE ufrag/pwd is only included
> for ICE restarts. However, they are included in the trickle ICE example in
> Section 4.1.2.
>

This is not mandatory text, so just a description of the important fields.
Probably we should explicitly state in 4.1.2. Trickle ICE that the creation
of the HTTP PATCH BODY and processing by the WHIP session MUST follow
section 4.4. Delivering Candidates in INFO Requests of RFC 8840.


>
>
> Q2: My reading of the text above is that for trickle ICE the PATCH message
> body will not contain the previous candidates, only the new gathered set.
>
>
>
> However, Section 4.4. of RFC 8838, which defines the SDP
> trickle-ice-sdpfrag content type, and the usage with SIP INFO, says:
>
>
>
>           “Since the agent is not fully aware of the state of the ICE
> Negotiation Session at its peer, it MUST include all currently
>
>             known and used local candidates in every INFO request.”
>
>
>
> Since WHIP does not (AFAIU) apply to the MUST above, I think it would be
> useful with some justification in the draft. For example, is there
> something HTTP PATCH provides, but SIP INFO does not, that justifies not
> adopting the MUST?
>
>
>
> (Related to Q1, RFC 8838 also mandates sending of ICE pwd/ufrag for
> trickle ICE)
>

I was not aware of the in-order delivery requirement of RFC 8838. In order
to fulfill that requirement, I don't think that sending all the candidates
is required,  but only the ones that are "in-flight".

That is, two concurrent patch requests can be received out of order by the
media server. So the WHIP client needs to keep an ordered list of
candidates sent on the PATCH request, and remove them from the list when
the 204 response is received. If a new candidate is gathered, we just
append it to the list, and send a new request with the full list of pending
candidates.

WDYT?

Best regards
Sergio