Re: [Webpush] Non-blocking comments on -05

Brian Raymor <Brian.Raymor@microsoft.com> Mon, 13 June 2016 17:46 UTC

Return-Path: <Brian.Raymor@microsoft.com>
X-Original-To: webpush@ietfa.amsl.com
Delivered-To: webpush@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6C10B12D8D8 for <webpush@ietfa.amsl.com>; Mon, 13 Jun 2016 10:46:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level:
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.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 xfPM9-LaBcnV for <webpush@ietfa.amsl.com>; Mon, 13 Jun 2016 10:46:31 -0700 (PDT)
Received: from na01-bl2-obe.outbound.protection.outlook.com (mail-bl2on0127.outbound.protection.outlook.com [65.55.169.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D9A9712D8D6 for <webpush@ietf.org>; Mon, 13 Jun 2016 10:46:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=TaBb+xMW7qK/801kfDAghFYBsxLvQxkap7lc/mius/8=; b=Fw7c/3Zog++ANUDEiaTbhlKmXe5eCICoizleVNtpw5Bn287klkj01dDzjG7Qq68Xf6GhlP5kTSoFxBKFJLtzJkgN+dTRAdzwp7rtJ8ICFb7VXloEdHIwflNjiq6osFAVKJ6fnwaXKmv6F+SPe3KgV9q6IEtGrF3d7yL0SJXe5zA=
Received: from CO2PR03MB2407.namprd03.prod.outlook.com (10.166.93.137) by CO2PR03MB2405.namprd03.prod.outlook.com (10.166.93.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.517.8; Mon, 13 Jun 2016 17:46:29 +0000
Received: from CO2PR03MB2407.namprd03.prod.outlook.com ([10.166.93.137]) by CO2PR03MB2407.namprd03.prod.outlook.com ([10.166.93.137]) with mapi id 15.01.0517.009; Mon, 13 Jun 2016 17:46:29 +0000
From: Brian Raymor <Brian.Raymor@microsoft.com>
To: Costin Manolache <costin@gmail.com>, RUELLAN Herve <Herve.Ruellan@crf.canon.fr>, "martin.thomson@gmail.com" <martin.thomson@gmail.com>
Thread-Topic: [Webpush] Non-blocking comments on -05
Thread-Index: AQHRu3RQwDJq8LaJ6EaFkMQ0Dd4KCZ/Uf30AgADyW4CAAFBvAIAAI8eAgAoob+CAAX0uAIAAKpuAgADVSQCAAHV7gIAEtKMg
Date: Mon, 13 Jun 2016 17:46:29 +0000
Message-ID: <CO2PR03MB2407E6A11B6375991195229083530@CO2PR03MB2407.namprd03.prod.outlook.com>
References: <CALt3x6=_yc9TegOut_g+6W5fvhP7sfW+_gwRZnEVFA5PNgER6Q@mail.gmail.com> <6af49c2baf1b4e4f884b812d573b947e@Antiope.crf.canon.fr> <CABkgnnWebfxnPOLMXK+n+2G=c8DOG4Eb4AWMsWXJmmdnE4pUwg@mail.gmail.com> <989D9268-BE9A-47F7-9181-C0F323D1DA1F@mozilla.com> <1464858574.5342.12.camel@crf.canon.fr> <CO2PR03MB2407918AF75578E3AE378FC3835E0@CO2PR03MB2407.namprd03.prod.outlook.com> <2953D35A-1FC9-4765-BBE0-83DBCA8CAC10@mozilla.com> <CABkgnnV__pKEScT2eD8G5SpEQdth5CcijX9kwNM42u8TGr8=AA@mail.gmail.com> <1465553821.3039.13.camel@crf.canon.fr> <CAP8-FqmQ2D_h2rqAn=rUNkuW0fqBtE8+joeKDVKKPEFmFNYh=Q@mail.gmail.com>
In-Reply-To: <CAP8-FqmQ2D_h2rqAn=rUNkuW0fqBtE8+joeKDVKKPEFmFNYh=Q@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Brian.Raymor@microsoft.com;
x-originating-ip: [2001:4898:80e8:b::177]
x-ms-office365-filtering-correlation-id: 7d3b66ae-ab6c-475d-ba5d-08d393b2a64c
x-microsoft-exchange-diagnostics: 1; CO2PR03MB2405; 6:gA1w+Hj0+iC3KpctXW1lK+IpQvQktI+k85VHY2YeNR6Lun0Cy+B1WIBQnfRUY8A3/Do+YP5P2QuLq7Qo9CtF6gLjwMTx9wgWnqvlHgXJDVGgPMC25aNgxFuGJt3LB+nmkhirYlBqwa+XV50T+xOy4K705z4UehLR+s2GtniLC2onct6YmTzpMFkCDDdpdcjq4eSZU+SuhNirBZSr8QxrNBrhSgxAmtiuiTxa8Kz763VS6mkntr8w+jZI+Z/waZ0Kcm44nXFS8ct8PsZuwd7WAr3qOSZ4MKx77r/Voi5bnjRj0gVYR8iKyWi4RoFe3Me1TZz3Kc4Re97r6qbM5b5/XQ==; 5:VbNGHw1pY0Xj4KyRtYwngYXjIeRbUahS5OueqrGJDYOtDsmCDCYME+EbrtpLPaz5wyIrPr1kRV5Pw8u3DbqWlm7E+gLjy8QPqMF6nrp0nVMbL+ekfHTPVE9TAxo2oxD879cQN/xLKMPpYdL+DYZ72A==; 24:fPJcrltIOcPzENF8CuDZ3kbv7Y5ituPKm+ox9WRFK7RzbAr5gp0quRqj7a4ebbyLa+msCOvY316sZpgC2cC11kLWaZQ5quxvBc8ytSb4pN8=; 7:AwnZ+DanfnhN1e6At9W16XgP1ekM66KmVh4A+sYtrslxMANc23ZnpPwz/e3qXlIfFsLokiFmwa0ayUJs3m9hNPBQu7fLzz06F5cJvNjgVT98FX93xNe/GBjQNrEuV/w6qy7s4uLEPaiIvKHylgyL533FSL0iZCURoeZDuDE5onm/aooWgRjkMWa612Oce58ZMRw+NA6k+gBL1QRpctqecPFWHkG9eJMM4BWJs2xhWMdrybNenfGAw4Me5KkRp9Ae
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CO2PR03MB2405;
x-microsoft-antispam-prvs: <CO2PR03MB2405DDAB96E82948BF850BFE83530@CO2PR03MB2405.namprd03.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(72170088055959)(211936372134217)(196631223173759)(21748063052155)(21532816269658);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(61425038)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026)(61426038)(61427038); SRVR:CO2PR03MB2405; BCL:0; PCL:0; RULEID:; SRVR:CO2PR03MB2405;
x-forefront-prvs: 0972DEC1D9
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(7916002)(377424004)(199003)(189002)(51444003)(24454002)(377454003)(5008740100001)(33656002)(93886004)(19609705001)(586003)(97736004)(106116001)(86362001)(92566002)(9686002)(8990500004)(5003600100002)(74316001)(10290500002)(5001770100001)(790700001)(6116002)(102836003)(122556002)(8936002)(68736007)(16236675004)(7906002)(19617315012)(50986999)(54356999)(2501003)(19580405001)(19580395003)(16601075003)(105586002)(81166006)(81156014)(3660700001)(2900100001)(19300405004)(3280700002)(99286002)(5004730100002)(106356001)(8676002)(2950100001)(11100500001)(19625215002)(76576001)(15975445007)(77096005)(101416001)(5005710100001)(5002640100001)(10400500002)(87936001)(4326007)(76176999)(2906002)(86612001)(10090500001)(189998001)(3826002); DIR:OUT; SFP:1102; SCL:1; SRVR:CO2PR03MB2405; H:CO2PR03MB2407.namprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; CAT:NONE; LANG:en; CAT:NONE;
received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_CO2PR03MB2407E6A11B6375991195229083530CO2PR03MB2407namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2016 17:46:29.1317 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR03MB2405
Archived-At: <https://mailarchive.ietf.org/arch/msg/webpush/aYBPi6OE53goJ74qIoUw9Mdgpow>
Cc: "kcambridge@mozilla.com" <kcambridge@mozilla.com>, "webpush@ietf.org" <webpush@ietf.org>, "beverloo@google.com" <beverloo@google.com>
Subject: Re: [Webpush] Non-blocking comments on -05
X-BeenThere: webpush@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Discussion of potential IETF work on a web push protocol <webpush.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/webpush>, <mailto:webpush-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/webpush/>
List-Post: <mailto:webpush@ietf.org>
List-Help: <mailto:webpush-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/webpush>, <mailto:webpush-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 13 Jun 2016 17:46:34 -0000

My opinion is that we do not need to block on potential/experimental (“might include”) use cases.

If there are no strong objections and/or further edits for Herve, I’ll merge/edit this PR later today.


From: Costin Manolache [mailto:costin@gmail.com]
Sent: Friday, June 10, 2016 10:18 AM
To: RUELLAN Herve <Herve.Ruellan@crf.canon.fr>fr>; martin.thomson@gmail.com
Cc: Brian Raymor <Brian.Raymor@microsoft.com>om>; beverloo@google.com; kcambridge@mozilla.com; webpush@ietf.org
Subject: Re: [Webpush] Non-blocking comments on -05

Most use cases mentioned - with the exception of 'moving subscription' - can be implemented
efficiently by storing the messages keyed by some 'primary' ID. For large numbers, it
is desirable to optimize the number of DB queries done at connect - i.e. do a single read that
hits a single shard.  Most of the time the read will return empty, but the locality of the
messages for a single device is pretty important.

Moving subscriptions pretty much requires a different design - and I don't have any experience
with how it can scale.

Costin



On Fri, Jun 10, 2016 at 3:17 AM RUELLAN Herve <Herve.Ruellan@crf.canon.fr<mailto:Herve.Ruellan@crf.canon.fr>> wrote:
On Fri, 2016-06-10 at 07:33 +1000, Martin Thomson wrote:
> On 10 June 2016 at 05:01, Kit Cambridge <kcambridge@mozilla.com<mailto:kcambridge@mozilla.com>> wrote:
> > Does moving a subscription set mean another UA would be able to receive messages sent to subscriptions in that set? (That is, without requiring the old UA to drop all its subscriptions and the new UA to reregister).
>
> I think that you have it. If you have 2 subscriptions that are in the
> same set, they have to be monitored together.  If they are in separate
> sets, then they can be monitored separately.  The separation enables
> intermediation.
>
> I don't think that this is a use case that is particularly important
> for the web case; I confess that it isn't that interesting to me.
> However, I think that it is an entirely valid use case, and it costs
> little.  It does however enable things on the web side that *are* very
> interesting to me.
>
> Say you have a UA that wants to go into a deep sleep to save power.
> In that mode, it still wants to receive push messages from several
> high priority sites.  But it doesn't want to get the deal-of-the-day
> and all that junk from other sites.
>
> Now, the UA knows that the push service is unable to discriminate
> between important and unimportant properly and it doesn't want to risk
> getting things like text message notifications from unimportant sites.
> Even if these are normally sent with moderately high urgency,
> legitimately.
>
> If it can split the important sites and the unimportant sites into two
> subscription sets, then it can monitor the important sites only.
> That's not possible if you don't allow the UA to control which
> subscriptions get grouped together.
>
> If you want a concrete example, think pagerduty.com<http://pagerduty.com> vs. skype.com<http://skype.com>.  A
> call might be entirely undesirable at 3am, but if a production site is
> on fire, it's wake up time.

As there seems to be several use cases here (your use case for the web,
Costin's multi-user case in android, and my UA proxying use case), I
think more of them could be listed in the spec.

How about:

Each subscription set can then be managed independently, which might
include monitoring only a set of very important subscriptions, handling
subscription for different users separately, or moving a subscription
set between user agents.


For moving subscription sets between UA, I agree that it's too early to
solve it in this Webpush draft. My concern here is to leave open the
possibility of building it in the future.

Hervé