[Wish] Updated proposal for tricke ICE/restart and (maybe) server sent events

Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Wed, 10 March 2021 11:35 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 3443F3A227C for <wish@ietfa.amsl.com>; Wed, 10 Mar 2021 03:35:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NcBZloTU3ydg for <wish@ietfa.amsl.com>; Wed, 10 Mar 2021 03:35:05 -0800 (PST)
Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) (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 815C13A2277 for <wish@ietf.org>; Wed, 10 Mar 2021 03:35:05 -0800 (PST)
Received: by mail-wr1-x434.google.com with SMTP id u14so22932983wri.3 for <wish@ietf.org>; Wed, 10 Mar 2021 03:35:05 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=pAeF6vuuFdWROgBum4n3RYUH+UQBfiE8xMcAwGg+2iI=; b=o1i57NsAY+xOQWqKd+XHuf3Y31mhoekvsX1SCmnIUdUQNHGyiKQVkqfH567L8RfLYC Ofq1gvv6+LyYE+6PQvzXTjqAcoElzApGX+jOjpNHi1xsFqszzGdtsVrU7cC6y7sMhXGN 2IMQN20rYMpLiG/kuQQ3L+W4T9Trd2S0mxZvVltYppH6OJId/iH8p6W053ZUYTFVZhEB 8wr/SNv5TzUbmKFqYN3PKVv426VzyjyO+ApddWIb91jiwLl6wUx5j8oorvD7iyOA1qf1 JNvXccNIxTC7HAZSpumZasIAzwuDe+ncGRVYjw8fBzgQqed672KBjnxa2P4Kmpj7FeRg 3WRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=pAeF6vuuFdWROgBum4n3RYUH+UQBfiE8xMcAwGg+2iI=; b=uMMYTgr1iwkIphSTAUtKdOiG2zhobWGqxT9w2whc5hft7rhv3T1T7i1s/rrr5Ti6t8 s3S3ofWUjPDCEC4aZLjJr38ndnH2sC+vPOOjB/2HYUlhmdartSwDKfMVGo44Yy0A5zV7 bxjjJY2Vdl/PkVtN79wW3j+F/OsXOgtEpBdtSpkBVOMKOSAaV8Xg1GAx0xrLf8BYYIXC A0UF38zD0RCGo01VZllQe89TBHEATfDaWJ5PhgdntVhkSs2+akMcu3Mlhc6ARytwajTw TF8CIzQ5hVR8SMPFvwQsqfUlqJaZNQPZYTKFsVAWCbRbqGJM4GHTnUwXLRtpdw5SlNZr L0/Q==
X-Gm-Message-State: AOAM533PB+f/3S9SNtbP5BiA9h7+IyoMRPrN5iKFaXB4RdJqzBm5yaxl U1jHGdigdLdLahWtxtoBhNS849O86hLvmUMQtBoyXhzB749TyA==
X-Google-Smtp-Source: ABdhPJxaRVQl6od9s3XVD2NC3i5wU2CylO7SPXvksyPLbat+48AmB0twdWgA/3sJMbl8xkIyvqSbfTOrdzaDLDsXX10=
X-Received: by 2002:a5d:4521:: with SMTP id j1mr2999930wra.354.1615376102803; Wed, 10 Mar 2021 03:35:02 -0800 (PST)
MIME-Version: 1.0
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Date: Wed, 10 Mar 2021 12:34:52 +0100
Message-ID: <CA+ag07bs6doWaFQvpvHsHa6F+=LGXa57UkejbK5FZXZCbpdWfA@mail.gmail.com>
To: wish@ietf.org
Content-Type: multipart/alternative; boundary="000000000000c94bd305bd2d0e2d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/wish/rRXzxCT5zh_wuRdG_PHQCzhBdqQ>
Subject: [Wish] Updated proposal for tricke ICE/restart and (maybe) server sent events
X-BeenThere: wish@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 10 Mar 2021 11:35:09 -0000

Hi all,

I have been thinking on how we could accommodate some of the feedback
received yesterday at the meeting and implement this in a pure HTTP-like
way.

The publish will be started by sending a HTTP POST to the session creation
URL with the SDP offer, and the server will answer with a HTTP “201
Created” response with “Location” header field pointing to a newly-created
resource and the SDP answer in the body (no change up to here from the
original proposal).

For performing trickle ICE or an ICE restart, the publisher will do an HTTP
PATCH request to the resource URL with a body containing a SDP fragment
("application/trickle-ice-sdpfrag") as specified in RFC8840 with the new
ice candidate or ice ufrag/pwd for ice restarts.

For simplicity terminating the session, the publisher will send a HTTP
DELETE to the resource URL.

The server may terminate the session by using the Immediate Revocation of
Consent  as defined in https://tools.ietf.org/html/rfc7675#section-5.2.

While I don't like long pooling, I acknowledge that we may wish to allow
servers to send back events to the publishing client. In that case I would
prefer to use server sent events as specified in
https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events

The url connecting to the server side event resource for the publication
will be returned in the initial HTTP "201 Create" response with a "Link"
header an a "rel" attribute of  "urn:ietf:params:whip:server-side-events"
(in a similar way as how web push works).

So the http 201 response would look like

Location: https://watever.com/publications/213786HF
Link: <https://watever.com/publications/213786HF/sse>;rel="
urn:ietf:params:whip:server-side-events "

Other extensions could be added by registering new "rel" values on IANA.

Last, as I commented out on the call, I don't see the value of the
signaling plane keepalive and in fact it is something that has caused
issues on our deployments.

Best regards
Sergio