Re: [Wish] How to detect a crashed client?
Christer Holmberg <christer.holmberg@ericsson.com> Fri, 10 September 2021 21:53 UTC
Return-Path: <christer.holmberg@ericsson.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 3FDEB3A1F7C
for <wish@ietfa.amsl.com>; Fri, 10 Sep 2021 14:53:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.552
X-Spam-Level:
X-Spam-Status: No, score=-2.552 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.452, DKIM_SIGNED=0.1,
DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001,
URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key)
header.d=ericsson.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 n6KBWPV1YPEF for <wish@ietfa.amsl.com>;
Fri, 10 Sep 2021 14:53:06 -0700 (PDT)
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
(mail-db8eur05on2085.outbound.protection.outlook.com [40.107.20.85])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id 8C09C3A1F73
for <wish@ietf.org>; Fri, 10 Sep 2021 14:53:06 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=eUjpPgUndAQs4UL2q5FJmQPWlsqjrVSsYPjNoLsMYwJdslRAzxjxKf7PKl2mSEkbX00V6Xf/kyViITblbSbnRo+EzxvoL5iydVfQmO2iEUnYoaX77nRSV9OIaB0RBf4IAGe3vWb/UbPLLYKt5b8vIJXMt2RIVYGP3VksnbKdW/1b4tzbW8AgEVUaQDu3apGYdNTAkBOp8bK3gI+OIK85FnuZHTKskoSHJ9pdv7I7b7PYCe8R6tfeG86NqWZfEXxFEBkvIDTJhAehsXbPB7i6db9UNEzbnGDqjBUTUBEKvq4FUeHfoe7jl3CuPAe6V+TTPJGUTLxo9udQ86DzPm8WcA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector9901;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
bh=ys30EqWCN88q08cW0qaK8pDcRWXQuCS3mjRqPjN5oNU=;
b=oc+mBvnthW4RpzKMUbXiYG53+9J+W8ilDXodWvdUo+7UIsxyY4ds9Pc/0kwosNWd/v3YQKkyy0ev3OuNR+CTGijaTXStc3mFHWanOUcjeb0sUsETWkO4/vdMn+rDzr3lM6R86t3/uGjr3l1B6iL94xIk/A/QU89MrPtl5vyMtewgudye6xSRFQOCQe/wT6datarr4yDG+t8B1UEFDObv5mJnQnr+RjcSg30/s3biXZkqhZTsWolweJpHK2SaxfbYuyCl+bZgnAIhpD+aQ4wXb2wXPh/OWdVnPbN8zahiJOQ7kC58WjhctXA/bI5E8EqbTIG3MOwOpyamIVZrmEAjxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com;
dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com;
s=selector1;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=ys30EqWCN88q08cW0qaK8pDcRWXQuCS3mjRqPjN5oNU=;
b=e20+9OffNVU8BWUmCY4libVliI65Cz6y/FfOgK4m0ZwQCWAPakg/spKe7BE77IctbGAD7CDNkJYofsY4rYwXDLkDV1qRsVmb+XdGrFWRV3ufAIn7nITpBP1ab6zuKJqlPuZ6T23V9msUejSOoMWhjjgJvpptSNgiPRK14pECkzM=
Received: from HE1PR07MB4441.eurprd07.prod.outlook.com (2603:10a6:7:9f::27) by
HE1PR07MB4169.eurprd07.prod.outlook.com (2603:10a6:7:9d::25) with
Microsoft
SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
15.20.4500.13; Fri, 10 Sep 2021 21:52:59 +0000
Received: from HE1PR07MB4441.eurprd07.prod.outlook.com
([fe80::49b7:5cc:5aeb:fb2a]) by HE1PR07MB4441.eurprd07.prod.outlook.com
([fe80::49b7:5cc:5aeb:fb2a%4]) with mapi id 15.20.4478.019; Fri, 10 Sep 2021
21:52:59 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>, Nils Ohlmeier
<nils.ohlmeier@8x8.com>
CC: WISH List <wish@ietf.org>, Juliusz Chroboczek <jch@irif.fr>
Thread-Topic: [Wish] How to detect a crashed client?
Thread-Index: AQHXpY4HFl+1nU5ewkaLeDzEi6srUqub1BsAgAALHgCAAByVAIAAJpQAgAGeczKAAA+pwA==
Date: Fri, 10 Sep 2021 21:52:59 +0000
Message-ID: <HE1PR07MB4441C7F2D6DE62C65022B5F393D69@HE1PR07MB4441.eurprd07.prod.outlook.com>
References: <877dfphj5g.wl-jch@irif.fr>
<CA+ag07Y0A9ZbfH9QPEWUS2LjFA4hF7T1kuYc-fCUMLW+VdCRww@mail.gmail.com>
<875yv9hgrf.wl-jch@irif.fr> <7DEC2328-BB66-449B-A778-BAF8DDB9BFC8@8x8.com>
<CA+ag07aZkSHyuGTt-Gkn7AxboAoexSZTUQCi+nBCjyYTyCVmXw@mail.gmail.com>
<760D1DAA-AA48-4893-9B1B-0904FB9D8062@8x8.com>
<CA+ag07bWHcuavZ-pY2rfOw-XX-0UuKtQvX=L3=SZPFwxGFfWjQ@mail.gmail.com>
In-Reply-To: <CA+ag07bWHcuavZ-pY2rfOw-XX-0UuKtQvX=L3=SZPFwxGFfWjQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: gmail.com; dkim=none (message not signed)
header.d=none;gmail.com; dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: b67402ad-0a17-4487-4f3a-08d974a55b0a
x-ms-traffictypediagnostic: HE1PR07MB4169:
x-microsoft-antispam-prvs: <HE1PR07MB41699A0B4ADB264A4C660AED93D69@HE1PR07MB4169.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: ZqvD0djwX8NZj4nTwEAvir/MBA76QAgsvAFz6CEc81CvhcYDSEHM5zGth3ayVakvVWdA9D1SB2VbPnahGsZweBXBZGtTg3vfVIP/BgC7GHVkDZfSkdyzPDa49I7efGys8S7gIomWnMzZIML9NT5JKJv/2zTZJLSS+MDO2p6ePi4jcMsZA5wdTb9Q+mHxlZsglt0LyVRWwRyhJC1DSEoNSFYzzIisfe3iQzlj0GvWTZnIo2cKmIU49Eex3bbSHpQGtbHX2eCkNLcpNJCYe5zM+YSKfd5Xa2E56cZqo8A3jCwl6k2OPBhtWDSHXQMepq/8lHedzwvGgpHyFTwlvyOS1NI6zEH427FchTrpJAGTOL628dfFVr24HgJ17T75kLmsupHWqHwGS1QCoekT31oNfDMyZcoNYZayH0g+pOdB0maKD6aGT6R84uzIBqEsK/nbOXI2FdNoCLy8/tGuBgx54Ct1HGE0Z2vQZNSmdeJHvIUxMUseUUZo9Z19bxOMomrC6FYNZyT47bazqDmRwvjrgksWqXF6RNx9JyLGREfQGzb+rWPNrclxs3h+y6vWpF2TXhu/i+KIsMJGwWZwQvhJktXRZkYCB+SQwa9vrrhnaMu0H2u3QBLpVgri0hPBPLulo7DaU1Ldx7uaOvsXEIZOcSE87/Pp3wrO9HDBL6Y1ClQVOCNgsOHmk0lSgd1qjZbLQ6Pdo7DcJPM56OG+My0DTw==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
IPV:NLI; SFV:NSPM;
H:HE1PR07MB4441.eurprd07.prod.outlook.com; PTR:; CAT:NONE;
SFS:(4636009)(366004)(66556008)(54906003)(66446008)(8936002)(64756008)(110136005)(38100700002)(52536014)(4326008)(76116006)(66476007)(5660300002)(55016002)(508600001)(8676002)(83380400001)(186003)(122000001)(26005)(66946007)(7696005)(316002)(66574015)(2906002)(33656002)(53546011)(6506007)(86362001)(44832011)(9686003)(38070700005)(71200400001);
DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SFdTOUhXS1VHWHNVc2U1RkYyRzNRODhFNG9xSlMrZ2JNK2lUd2hFVDFjMTMr?=
=?utf-8?B?OHYyZEhmb1ZEMlBBZ09MR3hrQjlOMFZ5TERodVR6MHFVOFNNRlBSMXFSdG51?=
=?utf-8?B?bVhkTWJBckJGZXB6KzNid3FKbkI4VmFEb1cxdTUySlAwYVBlWnpTRnJRUlkx?=
=?utf-8?B?MWR3RGtydjRtSGhURis2MTdMU01YK1ZIT3J6dzN1eStTR1VEZ3dRdkxMVkxL?=
=?utf-8?B?alpTVktLSUFaN2poNCs0UVZHVnVnNTFFNW0rYnJWdFJUVTk2ZXpWNzFhdFc3?=
=?utf-8?B?TmZJSFVPV2VIenJMbWZOYndXQ3VDMS9SQ3I0SzRCMDNHRWpzd1pUL3JScGdG?=
=?utf-8?B?NEwxc2RIVzhURUFXWldSUzQ4Rm1LY09YcTJrdUgxRXM4VWNtVXFLSlJHRk5C?=
=?utf-8?B?NE1BdW9COVkzTHFSNEt3RW1oUGpNaEZoUkFuejJrc3oxUjFDckl6Q2tPSG5T?=
=?utf-8?B?dzRiYm9SaGZDZzFvYkpWSTV1WHUrUEJURng1Rm1EcVFSNU9HWmxJMXBFbjRI?=
=?utf-8?B?aDNEeFEzbXo1ZnRuays0M0s0Z3VjaXd1dVpQb2lKSTdyMFNTamtCNDdkWEYw?=
=?utf-8?B?UDZSa3ZscjFEelByaStyUlN0bGNHRjg5Mi9QSms2YXFtcjIrVzdhS0djc0dt?=
=?utf-8?B?akJCMGt6cGFrdml2RmNOcG5oSURuTUNVSk4wVjdBZXVwdTEyQUxCK20zVWlX?=
=?utf-8?B?ZjZaNzR0OGN6UkJXRVAvOXJDQjBUMEYwRE1pTWU3YmZ5YkdYd2lRNHpJMmoz?=
=?utf-8?B?aWp5emZYVUVmSnRVTGJQVzYzOFVpL1AwSUI3a0VhRERFc0FjQ3BDakZhbFJD?=
=?utf-8?B?SVNzZTJsY0tMd2J1Nm5QZ1phV3ZoaFNFanJtcHV0TXFnWlZJQi90VlpXczFz?=
=?utf-8?B?UjRSUWpvOE1KcnhxYStFQ1pXb0pyZVpNRUpZUTJ2Z3NjOFNUQ21MTFptU1hO?=
=?utf-8?B?NEpsOUtrcy9WU2J6ellBNHFUMUpDT25uM2RCZDJDY2RxcXB3QUx2aGpNbEFy?=
=?utf-8?B?RUtUTHJGbWdlM0F1Uy90UTdZWjBjTHZjVEM1WTNCN2tkZUg4dGRDZ2JjZGdT?=
=?utf-8?B?RkpaOERYOEYzb3BXRDQzdWVlTi9qQWFTdWs2Zno3WWN5MVF3TnRiSE5OVjJq?=
=?utf-8?B?WjVLdVhKWXlNS1BIeEtUQTF4MXUzeXVXVEZqeXJXajU5OHlkc21OWk03NWZu?=
=?utf-8?B?amlGNGg1Qnp0VElmMXcvZ044eS8wRDNKbThPd0hjOWlxc2FGWjNqckdaWng0?=
=?utf-8?B?ZnhRbWZBS1VkM29IeTVlNEpPb1M1YUt1aDg2N3ZnK0ZmQTlRTkRtNm9USktI?=
=?utf-8?B?NGR5RGpueGdSWUlGL2phNVFIYU5pZUtLOVVyQ0dWaTA3dUswOG1nSjlvbVFO?=
=?utf-8?B?OXZ4WE42djhhbkJwdmlJRlZ4S2hvOXBTZjBsY21XT0F0RFRKU29uU0k1SDZY?=
=?utf-8?B?T1RqQk9ZYVV1Y1M1MUFSMzJzUy9ySitpZXdsU0NrVWYrVjlLYnNoNkcwZVd0?=
=?utf-8?B?ZlJqdjNyem5IUGh4MlpIYnhTZE9DWnRJOVdJTmtybTFkVE8rdk5vWEhrTmpq?=
=?utf-8?B?Y1kzTkVGaG5QQVpGcUhoNjA0aFJwazNpR1NTZ2JCdFBadC9CSzFyVThzM05x?=
=?utf-8?B?WnZVb2tKeFN4NE5OYXVkYkwxWmhFWUh2VmpmdXlOSjdpZmE5ejRrZVZBbDU0?=
=?utf-8?B?OTMvV2NBVGJJbDNWQWtZbno5Mi80NEdoZVAwUVhUZmh0WWlYVmYvM1dBK3FD?=
=?utf-8?Q?LC35XYHaYNNXxdIU6ZSmATXOAzlCyDH5nZW+W90?=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative;
boundary="_000_HE1PR07MB4441C7F2D6DE62C65022B5F393D69HE1PR07MB4441eurp_"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: HE1PR07MB4441.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b67402ad-0a17-4487-4f3a-08d974a55b0a
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Sep 2021 21:52:59.4024 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: JPALaOhbwdPdP4+Az7NZAnPdPDQ6ydkCVOyi7zqeVY7+l/LuSS9C7urkJgsLM3TST40FYgvJzA7lUCYx6wQ8kaH/U9rh68VMSDuB/NZ4qMc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB4169
Archived-At: <https://mailarchive.ietf.org/arch/msg/wish/7OL-k6-s86GgZKiIYcSc3cDVgUI>
Subject: Re: [Wish] How to detect a crashed client?
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: Fri, 10 Sep 2021 21:53:14 -0000
Hi, The main purpose of ICE consent freshness is not to detect crashed endpoints. For that ICE keepalives are enough. Regards, Christer From: Wish <wish-bounces@ietf.org> On Behalf Of Sergio Garcia Murillo Sent: perjantai 10. syyskuuta 2021 23.53 To: Nils Ohlmeier <nils.ohlmeier@8x8.com> Cc: WISH List <wish@ietf.org>rg>; Juliusz Chroboczek <jch@irif.fr> Subject: Re: [Wish] How to detect a crashed client? El vie., 10 sept. 2021 22:42, Nils Ohlmeier <nils.ohlmeier@8x8.com<mailto:nils.ohlmeier@8x8.com>> escribió: On Sep 9, 2021, at 13:10, Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com<mailto:sergio.garcia.murillo@gmail.com>> wrote: El jue, 9 sept 2021 a las 19:52, Nils Ohlmeier (<nils.ohlmeier@8x8.com<mailto:nils.ohlmeier@8x8.com>>) escribió: [With my individual contributor hat on] I think Sergios description above is actually not fully correct. With ICE consent the client and the server both run their own independent ICE consent checks. So the client sends consent requests and server answers them. And the server sends consent requests which the client has to answer. If the client crashes, the servers consent checks will get no responses and then after 30 seconds can delete the PeerConnection. That's true in case of full ice servers, but servers may be ice lite which shouldn't send ice requests. Good point. Although I want to highlight for folks not that familiar with ICE specs that technically nothing forbids an implementer from claiming his server is an ice-lite implementation, but then to send out consent requests once the connection is established. I would argue that this still makes your implementation considerably easier compared to a full ICE stack. that's exactly what I have implemented in my media server, I call it ICE lite+ 🤣 But yes if the server then would delete the PeerConnection right after consent timed out I assume it would make it hard to execute an ICE restart if the client requests that N seconds later. This is different from the browser case, where the ICE consent timeout only changes the ICE connection state, but does not directly affect the lifetime of the PeerConnection itself. I would suggest that instead of messing with the timers for ICE consent on the two different sides of the connection - BTW for browser endpoints the JS client can’t change the ICE consent timeout value - the spec should mandate that server endpoints need to keep the PeerConnection around for another N seconds after ICE consent timed out. I am not sure if we should mandate it in the spec, setting a timeout grace period once the ice timer has expired could be implementation specific. The client has no way of knowing the exact timeout on the server side, so it would have the same effect to raise the timeout server side, or have a grace period deleting the session server side. Also, in case of ice restart the behaviour would be the same, the whip client would have to try an ice restart, and if the session is not found, do a full restart (based reconnection policies on client side). IMHO, doing an ice restart after 30s or 40s of disconnection does not offer any benefit over full restart, but others may not think alike. I fully agree on the 30s here. So maybe the easiest is then to let the client side decide when to give up with ICE consent. And it needs to be prepared to handle a 404 on it’s ICE restart request, to then do a full restart of the connection. Completely agree. Best regards Sergio
- [Wish] How to detect a crashed client? Juliusz Chroboczek
- Re: [Wish] How to detect a crashed client? Sergio Garcia Murillo
- Re: [Wish] How to detect a crashed client? Juliusz Chroboczek
- Re: [Wish] How to detect a crashed client? Nils Ohlmeier
- Re: [Wish] How to detect a crashed client? Sergio Garcia Murillo
- Re: [Wish] How to detect a crashed client? Juliusz Chroboczek
- Re: [Wish] How to detect a crashed client? Sergio Garcia Murillo
- Re: [Wish] How to detect a crashed client? Nils Ohlmeier
- Re: [Wish] How to detect a crashed client? Sergio Garcia Murillo
- Re: [Wish] How to detect a crashed client? Christer Holmberg
- Re: [Wish] How to detect a crashed client? Nils Ohlmeier
- Re: [Wish] How to detect a crashed client? Christer Holmberg
- Re: [Wish] How to detect a crashed client? Juliusz Chroboczek
- Re: [Wish] How to detect a crashed client? Christer Holmberg
- Re: [Wish] How to detect a crashed client? Juliusz Chroboczek
- Re: [Wish] How to detect a crashed client? Christer Holmberg
- Re: [Wish] How to detect a crashed client? Sergio Garcia Murillo
- Re: [Wish] How to detect a crashed client? Christer Holmberg
- Re: [Wish] How to detect a crashed client? Adam Roach