Subject: [Webpush] FW: New Version Notification for draft-thomson-webpush-protocol-00.txt

From: "Brian Raymor (MS OPEN TECH)" <[email-masked]>
Date: Thu, 16 Apr 2015 00:42:34 +0000

As requested at the last WebPush meeting in Dallas, Martin, Elio, and I have merged our proposals into a straw-man for review.

During that process, we've captured issues at:

	https://github.com/unicorn-wg/webpush-protocol/issues

but will now migrate those discussions to the WebPush mailing list in the next few days.

...Brian

-----Original Message-----

A new version of I-D, draft-thomson-webpush-protocol-00.txt
has been successfully submitted by Brian Raymor and posted to the IETF repository.

Name:		draft-thomson-webpush-protocol
Revision:	00
Title:		Generic Event Delivery Using HTTP Push
Document date:	2015-04-15
Group:		Individual Submission
Pages:		21
URL:            http://www.ietf.org/internet-drafts/draft-thomson-webpush-protocol-00.txt
Status:         https://datatracker.ietf.org/doc/draft-thomson-webpush-protocol/
Htmlized:       http://tools.ietf.org/html/draft-thomson-webpush-protocol-00

Abstract:
   A simple protocol for the delivery of realtime events to user agents
   is described.  This scheme uses HTTP/2 server push.

Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org.

The IETF Secretariat

---

From: "DRUTA, DAN" <[email-masked]>
Date: Wed, 29 Apr 2015 17:12:32 +0000

Brian, Martin and Elio, 

Thanks for the offline coordination and for putting this version together. I finally managed to get to review the draft and it looks good for the most part.

I made a few comments on the issues in github so I won't repeat them here.

A couple topics came to mind and I would like to throw them here for further clarification from the authors:
1. Prioritization
As I went through the draft I wasn't able to understand how the push service will handle message prioritization (for the same subscription).
Is the expectation that the app server will send them in the right sequence and the push server will use a FIFO (first in first out) queue?
The scenario I have in mind is a social network application that can push news alerts and incoming chat notifications. I would expect the chat notification to have a higher priority than other notifications.
If the app server sends notifications as they happen, it is only the push service that will be able to act based on some form of prioritization indicator.
Priority is a fairly basic requirement and I hope it can get handled in a header so it can be consistently enforced by the push service.

2. Message deduplication and retries.
Section 6.1 talks about acknowledging push messages and that the user agent must acknowledge with an HTTP DELETE if the message was delivered at least once.
Should we have a mechanism in place to account for message deduplication? I might be wrong but I can see situations where the three parties (AS, PS, UA) end up in some race conditions and the AS ends up retrying. It would be good to clarify that the push messages for the same application event instance (e.g. call from Bob) MUST have the same identifier so they can be duplicated at the PS so they don't get sent multiple times to the UE.

Regards,
Dan

-----Original Message-----
From: Webpush [mailto:[email-masked]] On Behalf Of Brian Raymor (MS OPEN TECH)
Sent: Wednesday, April 15, 2015 5:43 PM
To: [email-masked]
Subject: [Webpush] FW: New Version Notification for draft-thomson-webpush-protocol-00.txt

...Brian

-----Original Message-----

Abstract:

The IETF Secretariat

_______________________________________________
Webpush mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/webpush

---

From: Martin Thomson <[email-masked]>
Date: Wed, 29 Apr 2015 11:57:07 -0700

> 1. Prioritization
[...]
> Is the expectation that the app server will send them in the right sequence and the push server will use a FIFO (first in first out) queue?

The draft really doesn't say, partly because we didn't discuss it
much, partly because I think that we'd want some flexibility.  I've
opened an issue on this in our issue tracker so that we don't forget
this.

> Priority is a fairly basic requirement and I hope it can get handled in a header so it can be consistently enforced by the push service.

Prioritization is a concern if there are multiple messages to deliver
at the same time.  This happens most often when a device comes back
from a short nap (as mobile devices do all the time).  With a small
number of messages, this might not be a big deal, but if there is a
backlog to clear, it could be.  I have a draft on signaling priorities
that could be used in this context:
https://tools.ietf.org/html/draft-thomson-http-nice-02

Do you think that we need to address this in a basic protocol
specification, or can it rely on other specifications.

> 2. Message deduplication and retries.

Yes, reliability is hard.  The intent is to have the application mark
messages and perform deduplication if it does resending, especially
within the TTL period that the push service promises.

In terms of the protocol, there is a proposal for message replacement
that might reduce the need for some of this, but Brian, Elio and I
decided that we'd let this draft stabilize before talking about that
feature: https://github.com/unicorn-wg/webpush-protocol/pull/12

---

From: "DRUTA, DAN" <[email-masked]>
Date: Wed, 29 Apr 2015 19:24:51 +0000

Hi Martin,

I think we can address the relative priority in the web push draft at minimum with some clarifications on use cases and some of the requirements. Much like I tried to explain in my example and you expanded with the device nap scenario.
If NICE proposal gets support in http WG I don't see any reason to reinvent the wheel but as of now I believe your draft is expired.
At least we should determine how important of a feature this is.

Dan

-----Original Message-----
From: Martin Thomson [mailto:[email-masked]] 
Sent: Wednesday, April 29, 2015 11:57 AM
To: DRUTA, DAN
Cc: Brian Raymor (MS OPEN TECH); [email-masked]
Subject: Re: [Webpush] FW: New Version Notification for draft-thomson-webpush-protocol-00.txt

[...]