Re: [Webpush] Delivery receipt may be sent before AS request delivery
Brian Raymor <Brian.Raymor@microsoft.com> Fri, 10 June 2016 22:05 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 AC82C12D986
for <webpush@ietfa.amsl.com>; Fri, 10 Jun 2016 15:05:45 -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 mhGBrvsKBmLX for <webpush@ietfa.amsl.com>;
Fri, 10 Jun 2016 15:05:43 -0700 (PDT)
Received: from na01-bl2-obe.outbound.protection.outlook.com
(mail-bl2on0102.outbound.protection.outlook.com [65.55.169.102])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id B538B12D985
for <webpush@ietf.org>; Fri, 10 Jun 2016 15:05:42 -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=twVoJXDt8ZwQdIpoSmDVAqaq2KUwAGQp3iKsbxnTL6U=;
b=JtZtgfom/MLKjx533F9kxOHP2fWgwvozCRRTW/fz3n6I0kWC4FGqdn2TuXFOEL1JgTIQvJBlflmalG/cNrjJXs42t7/XCYAO3AMFju7iPTyo2ubNppXuU5RtEa4IYJgLvkGDWcDaOkUG6q30+S2Wj005UxCM36HSAXTVgJmzVDI=
Received: from CO2PR03MB2407.namprd03.prod.outlook.com (10.166.93.137) by
CO2PR03MB2408.namprd03.prod.outlook.com (10.166.93.138) with Microsoft SMTP
Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
15.1.517.8; Fri, 10 Jun 2016 22:05:40 +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.005; Fri, 10 Jun 2016 22:05:40 +0000
From: Brian Raymor <Brian.Raymor@microsoft.com>
To: Idel Pivnitskiy <idel.pivnitskiy@gmail.com>, Martin Thomson
<martin.thomson@gmail.com>
Thread-Topic: [Webpush] Delivery receipt may be sent before AS request delivery
Thread-Index: AQHRwesybhVRwDH2+E+PGN28CwadZ5/gZM8AgALb7vA=
Date: Fri, 10 Jun 2016 22:05:40 +0000
Message-ID: <CO2PR03MB2407923CBD0C24766814229483500@CO2PR03MB2407.namprd03.prod.outlook.com>
References: <CAN+BUJrTzyUJBVbfv7ftUfNDkUsiAWu_5bLAw6k+9ZgKcPUS6g@mail.gmail.com>
<CABkgnnU3cUyo1=6qNPbD3QtPL_qDzqiFHG72zxmENL2fx9mnQw@mail.gmail.com>
<CAN+BUJo31xxPFPXfaJsY5Yz10X7-xX7WZmFyfoX+znWTbEdHfA@mail.gmail.com>
In-Reply-To: <CAN+BUJo31xxPFPXfaJsY5Yz10X7-xX7WZmFyfoX+znWTbEdHfA@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: [24.16.23.27]
x-ms-office365-filtering-correlation-id: 1cc10214-43c0-4bce-c73e-08d3917b5c77
x-microsoft-exchange-diagnostics: 1; CO2PR03MB2408;
6:tJhx2KeZcKRr0t2wdCitghkSww2l93NNqex+LRwe1qXswJ7qFrQ1UE3L6UC3R3I9OWK/bkK9sr9av8JyFsB05h6vW2+iuUde6e7xwoRzu6oJqgvJ+E0fAmmB4dT3er9j+Embx7+C4WIPHKDP2CCzHP8bZDudg0KSOxH2ioax3tHGUwwP3Ja6aQk/Mne7jClJBR4BBwwcMXIQ/1T6iL1yx55oIPgJwa8P3EW16r41vaUgBJxjMiBcHoAh8kGbTjI1Me5CZgtqthTxELR522aRANzhwgaXze5eKqqWhQBRSZ1GoMCpem6vZMtw6AWIcaM+;
5:KbScMsttSBkY7RujPZT5OEhg5lcUUDkiGrV0Dxiy9GHd6as4uTkqcTi8IyGSfRUwgyhfujEaUY7wvYUNMLVG8pWerqx7soRBIVITj2430xki0ovnZD64dPkIuyoYXbe82yDkqhY8vkFZE+/tm6Qdfg==;
24:AB0QYX3R5MFcv/1HcW4cwzfh94+yMsD1KZMNZklbz1t9cdn3o2+xqIiJdRGwIGjmLMz2nEgsvM9Y+N+O7kOGBHZjPi6McFJl7SM3XxBqwxQ=;
7:bAz+R6gi+H1gkHiioZ5wG4O6Iy39QjaNAGElBXm2Y4k8PTp82wFFVRtZcVC81o5NdLCqpQCCFBUeRZ6ngWFwoJa4icYb5kxjWlTQqaMlLU20vwxl+6WETkDTkrCPwo4LLKsmiEx6K/vOSlAyIG2BE6lNpzi5kRcEcOnBnNbEjSDvhaDv5/xMOzR7MamP0zU3V5TyFkhhOesdLSFV5vZWI5/AJVk1mJ89DA7fFGn7agPXV1onqJcptLVw5KImypAG
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CO2PR03MB2408;
x-microsoft-antispam-prvs: <CO2PR03MB240836A066C70EAEE8096AC683500@CO2PR03MB2408.namprd03.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(148322886591682)(166708455590820)(31418570063057)(100405760836317)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
RULEID:(61425038)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026)(61426038)(61427038);
SRVR:CO2PR03MB2408; BCL:0; PCL:0; RULEID:; SRVR:CO2PR03MB2408;
x-forefront-prvs: 096943F07A
x-forefront-antispam-report: SFV:NSPM;
SFS:(10019020)(7916002)(24454002)(189002)(377454003)(12063002)(199003)(99286002)(106356001)(9686002)(10090500001)(5005710100001)(10290500002)(10400500002)(19625215002)(105586002)(122556002)(5004730100002)(106116001)(15975445007)(11100500001)(76576001)(19617315012)(8990500004)(19300405004)(5008740100001)(3280700002)(3660700001)(66066001)(68736007)(19580395003)(790700001)(74316001)(102836003)(92566002)(76176999)(77096005)(5001770100001)(6116002)(54356999)(2906002)(50986999)(33656002)(16236675004)(97736004)(19580405001)(575784001)(86362001)(2900100001)(101416001)(87936001)(5002640100001)(16601075003)(1680700002)(19609705001)(586003)(2950100001)(5003600100002)(8936002)(81166006)(81156014)(86612001)(189998001)(4326007)(7906002)(3846002);
DIR:OUT; SFP:1102; SCL:1; SRVR:CO2PR03MB2408;
H:CO2PR03MB2407.namprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords;
MX:1; A: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_CO2PR03MB2407923CBD0C24766814229483500CO2PR03MB2407namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jun 2016 22:05:40.6949 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR03MB2408
Archived-At: <https://mailarchive.ietf.org/arch/msg/webpush/btKjB5foP7P3ZfDhQ-DVaJMvFhM>
Cc: "webpush@ietf.org" <webpush@ietf.org>
Subject: Re: [Webpush] Delivery receipt may be sent before AS request delivery
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: Fri, 10 Jun 2016 22:05:45 -0000
We recently reached consensus on the simplified design for receipts as Martin notes below (and as I noted in the issue). I don’t see strong interest in reverting that change. Part of the complexity you’re seeing is related to our consistent use of hard-to-guess capability URI(s). Regarding 201 vs 202 – See also - http://www.ietf.org/mail-archive/web/webpush/current/msg00439.html - Closed https://github.com/webpush-wg/webpush-protocol/issues/115 From: Webpush [mailto:webpush-bounces@ietf.org] On Behalf Of Idel Pivnitskiy Sent: Wednesday, June 8, 2016 7:12 PM To: Martin Thomson <martin.thomson@gmail.com> Cc: webpush@ietf.org Subject: Re: [Webpush] Delivery receipt may be sent before AS request delivery I implemented the design which describes as "Before" in this presentation [1] last year. And I agree that interaction of UA in this process is inconvenient. It should be something like this [2], but instead of using token-URI like /receipts/xjTG79I3VuptNWS0DsFu4ihT97aE6UQJ, introduce something more simple, like: POST /subscribe-for-receipt HTTP/1.1 Host: push.example.net<http://push.example.net> Benefits: 1. subscription may be created and receiving Push Message Receipts may be requested before sending a new push message => no delivery receipts will be lost; 2. no need to send a push message to get receipt subscription resource; 3. easy receipt subscription management and receiving receipts (AS may have a separate thread or service for this purpose); 4. simplifying registration of a new push message on PS side: just one new object will be created (a push message), no need to think about management of receipt subscriptions (what it needs to do? return the same receipt subscription or a new one). Even if the 1st issue is not a big deal, because we may increase TTL value, the 4th will simplify a PS and the 3rd will be more appropriate for an AS. I'm also a little bit confused, when reading the draft and see the same sentence, but with different status codes: * Section 5: A 201 (Created) response indicates that the push message was accepted. * Section 5.1: A 202 (Accepted) response indicates that the push message was accepted. * Section 5.4: A 201 (Created) response indicates that the push message replacement was accepted. What will be for replacing Push Message with requesting delivery receipt: "A 202 (Accepted) response indicates that the push message replacement was accepted"? Another advantage: just one status code will be returned when AS requests Push Message delivery. [1] https://www.ietf.org/proceedings/95/slides/slides-95-webpush-1.pdf [2] https://tools.ietf.org/html/draft-ietf-webpush-protocol-04#section-5 Best regards, Idel Pivnitskiy -- Twitter: @idelpivnitskiy<https://twitter.com/idelpivnitskiy> GitHub: @idelpivnitskiy<https://github.com/idelpivnitskiy> On Thu, Jun 9, 2016 at 4:06 AM, Martin Thomson <martin.thomson@gmail.com<mailto:martin.thomson@gmail.com>> wrote: For context: > Here may be a problem with push messages with a little value of TTL. Message may be sent to a UA and ack may be received from the UA before the AS will send a HTTP GET request to the receipt subscription resource. PS will retry delivering of receipt, but TTL may expire before this. > > To eliminate this problem it would be better to introduce separate resource for an AS: something like /subscribe for a UA, where AS may create a receipt subscription. We originally had the design you describe, but @brianraymor proposed a simpler design that accomplishes the same goals, providing that you recognize that a TTL shorter than the time it takes to poll the receipt subscription resource can result in losing the receipt. The only good solution to this general problem is to have a longer TTL. Even if you fix the "bug" you identified, a short TTL can expire between the time that the message is delivered to the user agent and before the acknowledgment can reach the push service. On 9 June 2016 at 09:07, Idel Pivnitskiy <idel.pivnitskiy@gmail.com<mailto:idel.pivnitskiy@gmail.com>> wrote: > Found out a problem with lost of delivery receipts for push messages with > little TTL, an issue was created: > > https://github.com/webpush-wg/webpush-protocol/issues/115 > > Best regards, > Idel Pivnitskiy > -- > Twitter: @idelpivnitskiy > GitHub: @idelpivnitskiy > > _______________________________________________ > Webpush mailing list > Webpush@ietf.org<mailto:Webpush@ietf.org> > https://www.ietf.org/mailman/listinfo/webpush >
- Re: [Webpush] Delivery receipt may be sent before… Idel Pivnitskiy
- Re: [Webpush] Delivery receipt may be sent before… Martin Thomson
- [Webpush] Delivery receipt may be sent before AS … Idel Pivnitskiy
- Re: [Webpush] Delivery receipt may be sent before… Brian Raymor