Skip to main content

A JSON Meta Application Protocol (JMAP) Subprotocol for WebSocket
draft-ietf-jmap-websocket-07

Revision differences

Document history

Date Rev. By Action
2024-01-04
07 Gunter Van de Velde Request closed, assignment withdrawn: Tina Tsou Last Call OPSDIR review
2024-01-04
07 Gunter Van de Velde Closed request for Last Call review by OPSDIR with state 'Overtaken by Events'
2020-08-20
07 (System) RFC Editor state changed to AUTH48-DONE from AUTH48
2020-08-17
07 (System) RFC Editor state changed to AUTH48 from RFC-EDITOR
2020-04-17
07 (System) RFC Editor state changed to RFC-EDITOR from EDIT
2020-03-20
07 (System) IANA Action state changed to RFC-Ed-Ack from Waiting on RFC Editor
2020-03-20
07 (System) RFC Editor state changed to EDIT
2020-03-20
07 (System) IESG state changed to RFC Ed Queue from Approved-announcement sent
2020-03-20
07 (System) Announcement was received by RFC Editor
2020-03-19
07 (System) IANA Action state changed to Waiting on RFC Editor from In Progress
2020-03-19
07 (System) IANA Action state changed to In Progress from Waiting on Authors
2020-03-19
07 (System) IANA Action state changed to Waiting on Authors from In Progress
2020-03-19
07 (System) IANA Action state changed to In Progress
2020-03-19
07 Amy Vezza IESG state changed to Approved-announcement sent from Approved-announcement to be sent
2020-03-19
07 Amy Vezza IESG has approved the document
2020-03-19
07 Amy Vezza Closed "Approve" ballot
2020-03-19
07 Amy Vezza Ballot approval text was generated
2020-03-19
07 Alexey Melnikov IESG state changed to Approved-announcement to be sent from Approved-announcement to be sent::Point Raised - writeup needed
2020-03-19
07 Kenneth Murchison New version available: draft-ietf-jmap-websocket-07.txt
2020-03-19
07 (System) New version approved
2020-03-19
07 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2020-03-19
07 Kenneth Murchison Uploaded new revision
2020-03-09
06 Kenneth Murchison New version available: draft-ietf-jmap-websocket-06.txt
2020-03-09
06 (System) New version approved
2020-03-09
06 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2020-03-09
06 Kenneth Murchison Uploaded new revision
2020-02-20
05 Cindy Morgan IESG state changed to Approved-announcement to be sent::Point Raised - writeup needed from IESG Evaluation::AD Followup
2020-02-19
05 Barry Leiba
[Ballot comment]
I agree with the DISCUSS positions that suggest explicit text to require encryption.

I think that RFC 7692 needs to be a normative …
[Ballot comment]
I agree with the DISCUSS positions that suggest explicit text to require encryption.

I think that RFC 7692 needs to be a normative reference.  The IESG statement about references ( https://www.ietf.org/about/groups/iesg/statements/normative-informative-references/ ) says this:

    Note 1: Even references that are relevant only for optional features must
    be classified as normative if they meet the above conditions for normative
    references.

+ + + + + + + + + + + + + + + + + + + +

The following are comments from Murray Kucherawy, incoming ART AD.  Murray is getting an early start on doing reviews, and I’m including his comments into my ballots during the overlap period before he’s officially an Area Director.

- - - - - - - - - - - - - - - - - - - -

Section 4.1, I don't know what interoperability assertion is being made by saying I "MUST" consider something.  I think the reference to the other document is appropriate, however.

Section 4.2's use of MUSTard also has me flinching, and can hear Pete Resnick's voice asking me why there's "MUST close" instead of simply "closes", etc.

Section 4.3.1's SHOULDs have me wondering under what conditions an implementation would deviate legitimately from that advice.

The "@type" line in Section 4.3.5.2 looks like it's run together with its description line.
2020-02-19
05 Barry Leiba Ballot comment text updated for Barry Leiba
2020-02-18
05 Amanda Baber IANA Review state changed to IANA OK - Actions Needed from Version Changed - Review Needed
2020-02-17
05 Benjamin Kaduk
[Ballot comment]
Thanks for addressing my discuss points (and comments!) on the -04!
I do want to have a bit more discussion in light of …
[Ballot comment]
Thanks for addressing my discuss points (and comments!) on the -04!
I do want to have a bit more discussion in light of the late-breaking
secdir review, though.  Specifically, RFC 6455's security considerations
have significant discussion of the web's "Origin" concept and how it
applies both in the case of trusted browsers running untrusted
javascript, and potentially untrusted native applications.  I did not
see any follow-up discussion in response to the secdir reviewer's
comments, and wonder if we need to say anything about the relationship
between the Origin of the JMAP API endpoint and the websocket endpoint.

I'd also like to have a bit of discussion about the risks of
compression, which I mentioned in my comments on the -04 but don't
remember seeing any follow-up on.

Section 4.3.1

What's the difference between an unsupported JMAP vs. unsupported JSON
object?  E.g., what would make something "well-formed JMAP" but still
unsupported?

Section 5

It's best to refer to RFC 7525 as BCP 195, to incorporate any future
updates.
2020-02-17
05 Benjamin Kaduk [Ballot Position Update] Position for Benjamin Kaduk has been changed to No Objection from Discuss
2020-02-15
05 Roman Danyliw [Ballot comment]
Thank you for addressing my COMMENT.
2020-02-15
05 Roman Danyliw Ballot comment text updated for Roman Danyliw
2020-02-07
05 Alissa Cooper [Ballot comment]
Thanks for addressing my DISCUSS.
2020-02-07
05 Alissa Cooper [Ballot Position Update] Position for Alissa Cooper has been changed to No Objection from Discuss
2020-02-07
05 Alexey Melnikov Telechat date has been changed to 2020-02-20 from 2020-01-09
2020-01-31
05 (System) Sub state has been changed to AD Followup from Revised ID Needed
2020-01-31
05 (System) IANA Review state changed to Version Changed - Review Needed from IANA OK - Actions Needed
2020-01-31
05 Kenneth Murchison New version available: draft-ietf-jmap-websocket-05.txt
2020-01-31
05 (System) New version approved
2020-01-31
05 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2020-01-31
05 Kenneth Murchison Uploaded new revision
2020-01-09
04 Cindy Morgan IESG state changed to IESG Evaluation::Revised I-D Needed from IESG Evaluation
2020-01-09
04 Leif Johansson Request for Last Call review by SECDIR Completed: Has Issues. Reviewer: Leif Johansson. Sent review to list.
2020-01-08
04 Adam Roach
[Ballot comment]
Thank for the work that went into creating this document. I agree with various
other IESG members about the need to make WSS …
[Ballot comment]
Thank for the work that went into creating this document. I agree with various
other IESG members about the need to make WSS mandatory.
2020-01-08
04 Adam Roach [Ballot Position Update] New position, No Objection, has been recorded for Adam Roach
2020-01-08
04 Alvaro Retana [Ballot comment]
I also support Alissa's DISCUSS.
2020-01-08
04 Alvaro Retana [Ballot Position Update] New position, No Objection, has been recorded for Alvaro Retana
2020-01-08
04 Roman Danyliw
[Ballot comment]
I support Alissa and Ben’s DISCUSSes.  More specifically:

Per the references made in Section 5:

RFC8620, Section 8.1 says: To ensure the …
[Ballot comment]
I support Alissa and Ben’s DISCUSSes.  More specifically:

Per the references made in Section 5:

RFC8620, Section 8.1 says: To ensure the confidentiality and integrity of data sent and received via JMAP, all requests MUST use TLS 1.2 [RFC5246] [RFC8446] or later, following the recommendations in [RFC7525].  Servers SHOULD support TLS 1.3 [RFC8446] or later.

RFC6455, Section 10.6 says: Connection confidentiality and integrity is provided by running the  WebSocket Protocol over TLS (wss URIs).  WebSocket implementations MUST support TLS and SHOULD employ it when communicating with their peers.

It would be helpful to make an unambiguous statement that JMAP+WebSocket MUST use TLS per the recommendations in RFC7525 and that Servers SHOULD support TLS 1.3 or later.
2020-01-08
04 Roman Danyliw [Ballot Position Update] New position, No Objection, has been recorded for Roman Danyliw
2020-01-08
04 Martin Vigoureux
[Ballot comment]
Hello,

I only have one nit, as a comment:

The references to Sections 3.2, 3.3, and 3.5.1 of RFC8620, in Section 4 …
[Ballot comment]
Hello,

I only have one nit, as a comment:

The references to Sections 3.2, 3.3, and 3.5.1 of RFC8620, in Section 4 of this document, seem wrong.
I believe they should, be 3.3, 3.4, 3.6.1, respectively.
2020-01-08
04 Martin Vigoureux [Ballot Position Update] New position, No Objection, has been recorded for Martin Vigoureux
2020-01-07
04 Barry Leiba
[Ballot comment]
I agree with the DISCUSS positions that suggest explicit text to require encryption.

I think that RFC 7692 needs to be a normative …
[Ballot comment]
I agree with the DISCUSS positions that suggest explicit text to require encryption.

I think that RFC 7692 needs to be a normative reference.  The IESG statement about references ( https://www.ietf.org/about/groups/iesg/statements/normative-informative-references/ ) says this:

    Note 1: Even references that are relevant only for optional features must
    be classified as normative if they meet the above conditions for normative
    references.
2020-01-07
04 Barry Leiba [Ballot Position Update] New position, No Objection, has been recorded for Barry Leiba
2020-01-07
04 Suresh Krishnan [Ballot Position Update] New position, No Objection, has been recorded for Suresh Krishnan
2020-01-07
04 Deborah Brungard [Ballot Position Update] New position, No Objection, has been recorded for Deborah Brungard
2020-01-07
04 Benjamin Kaduk
[Ballot discuss]
I support Alissa's Discuss and suggest an approach of making a
definitive statement about "wss://" usage, akin to RFC 8620's "All HTTP …
[Ballot discuss]
I support Alissa's Discuss and suggest an approach of making a
definitive statement about "wss://" usage, akin to RFC 8620's "All HTTP
requests MUST use the 'https://' scheme".

I don't understand how adding a "pushState" value to the StateChange
object (Section 4.2.4.1) that reflects the state of "ALL of the data
types in the account" can work, if the regular StateChange and
notification flows are not tied to a specific account (and in fact the
example in Section 7.1.1 of RFC 8620 includes state changes about
multiple accounts in a single StateChange) but rather the authentication
credentials.
2020-01-07
04 Benjamin Kaduk
[Ballot comment]
The discussion of compression bears some closer scrutiny, as if we allow
the entire websocket frame to be part of the compression state, …
[Ballot comment]
The discussion of compression bears some closer scrutiny, as if we allow
the entire websocket frame to be part of the compression state,
then there may be more avenues for an attacker to inject content into
the same compression state as data that we want to keep somewhat
confidential.  (This is not as bad as, say, the initial CRIME attack
impact, as the authentication credentials are not being repeatedly sent,
but the general principle of mixing attacker-controlled and confidential
data into the same compression domain is the same.)

We could say something in the security considerations about the
potential consequences for a client that sends multiple requests in
parallel without request IDs and gets back responses in a different
order.  (Or just require unique request IDs, I suppose.)

Section 1

  resources.  In such circumstances, authenticating every JMAP API
  request may harm performance.

I'd suggest phrasing this as "reauthenticating for every JMAP API
request" -- we still want to have the API requests be authenticated,
we're just batching them via a persistent connection.

Section 4.1

  The JMAP WebSocket client and JMAP WebSocket server negotiate the use
  of the WebSocket JMAP subprotocol during the WebSocket handshake,
  either via a HTTP/1.1 Upgrade request (see Section 1.3 of [RFC6455])
  or a HTTP/2 Extended CONNECT request (see Section 5 of [RFC8441]).

nit: "either" suggests that these are the only options, unnecessarily
ruling out (e.g.) HTTP/3 websockets.

  header field.  The reply from the server MUST also contain "jmap" in
  its corresponding "Sec-WebSocket-Protocol" header field in order for
  a JMAP subprotocol connection to be established.

  If a client receives a handshake response that does not include
  "jmap" in the "Sec-WebSocket-Protocol" header, then a JMAP
  subprotocol WebSocket connection was not established and the client
  MUST close the WebSocket connection.

[just to note that what the TSV-art reviewer pointed out is valid --
core websockets requires exactly one value in the response]

  The credentials used for authenticating the HTTP request to initiate
  the handshake remain in effect for the duration of the WebSocket
  connection.

I think we should say something about the server closing the websocket
if the underlying credentials expire.

Section 4.2

  Data frame messages in the JMAP subprotocol MUST be of the text type
  and contain UTF-8 encoded data.  The messages MUST be in the form of

nit: RFC 6455 seems to refer to these as being "text frames" or frames
with "text data type", but not "text type".

Also, just to double-check: we're requiring a 1:1 mapping between JMAP
message and websocket frame, with no fragmentation or anything like
that allowed?

Section 4.2.1

  o  id: "String" (optional)

      A client-specified identifier for the request.

I see that RFC 8620 defines an "id" type that is more-specific than just
"String", but also note that it claims to always be server-assigned and
to correspond to "real resources" (in some sense of the term) as opposed
to ephemeral requests, so I can understand if pulling in the additional
guidance about formatting and length is not desired.

  Additionally, the "maxConcurrentRequests" field in the "capabilities"
  object (see Section 2 of [RFC8620]) limits the number of inflight
  requests over the WebSocket.

nit(?): a strict reading of RFC 8620 would be that "maxConcurrent
Requests" applies only to the (traditional) JMAP API endpoint, and the
websocket endpoint is presumably a different end point, which would not
be covered by that strict reading.  So it might be worth phrasing this
more definitively, a la "the 'maxConcurrentRequests' JMAP capability
also applies to requests made on the websocket connection".
(Presumably, also specifying whether the cap is per-endpoint or shared
across traditional requests and websocket ones.)

Section 4.2.4.2

Are we implicitly saying that the WebSocketPushEnable object, unlike the
RFC 8620 PushSubscription object, does have an accountId property?
This does not seem to be reflected in the examples.

  o  pushState: "String" (optional)

      The last "pushState" token that the client received from the
      server.  Upon receipt of a "pushState" token, the server SHOULD
      immediately send all changes since that state token.

What does the server do if there is no provided pushState?

Section 4.2.4.3

What is the granularity at which the WebSocketPushDisable applies?
Per-authentication-credentials?

Section 4.3

Do we want to say anything about having prior "pushState" of "aaa" in
the WebSocketPushEnable message for the HTTP/1.1 example?
I'd also suggest saying something about what triggers the state change
for the push notification, as I don't see how the junk message ("The
quick brown fox jumps over the lazy dog") would affect the Email state.
2020-01-07
04 Benjamin Kaduk [Ballot Position Update] New position, Discuss, has been recorded for Benjamin Kaduk
2020-01-06
04 Alissa Cooper
[Ballot discuss]
If I understand correctly, in JMAP transport confidentiality is required to use for requests and in WebSocket it is required to implement but …
[Ballot discuss]
If I understand correctly, in JMAP transport confidentiality is required to use for requests and in WebSocket it is required to implement but not required to use. Which set of requirements applies to the binding specified in this document?
2020-01-06
04 Alissa Cooper [Ballot Position Update] New position, Discuss, has been recorded for Alissa Cooper
2020-01-06
04 Mirja Kühlewind
[Ballot comment]
The TSV-ART review (Thanks Bob!) flagged an issue about further discussing failure cases. Alexey indicated that the spec should add more text about …
[Ballot comment]
The TSV-ART review (Thanks Bob!) flagged an issue about further discussing failure cases. Alexey indicated that the spec should add more text about this, however, no update has been posted since. I assume this will be addressed before publication, as Alexey is aware, so I'm balloting no objection.
2020-01-06
04 Mirja Kühlewind [Ballot Position Update] New position, No Objection, has been recorded for Mirja Kühlewind
2020-01-03
04 Éric Vyncke [Ballot Position Update] New position, No Objection, has been recorded for Éric Vyncke
2020-01-02
04 Amy Vezza Placed on agenda for telechat - 2020-01-09
2020-01-02
04 Alexey Melnikov IESG state changed to IESG Evaluation from Waiting for Writeup
2020-01-02
04 Alexey Melnikov Ballot has been issued
2020-01-02
04 Alexey Melnikov [Ballot Position Update] New position, Yes, has been recorded for Alexey Melnikov
2020-01-02
04 Alexey Melnikov Created "Approve" ballot
2020-01-02
04 Alexey Melnikov Ballot writeup was changed
2019-12-23
04 (System) IANA Review state changed to IANA OK - Actions Needed from IANA - Review Needed
2019-12-23
04 Sabrina Tanamal
(Via drafts-lastcall@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has completed its review of draft-ietf-jmap-websocket-04. If any part of this review is inaccurate, please let …
(Via drafts-lastcall@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has completed its review of draft-ietf-jmap-websocket-04. If any part of this review is inaccurate, please let us know.

The IANA Functions Operator understands that, upon approval of this document, there is a single action which we must complete.

In the WebSocket Subprotocol Name Registry on the WebSocket Protocol Registries page located at:

https://www.iana.org/assignments/websocket/

a single, new subprotocol name will be registered as follows:

Subprotocol Identifier: jmap
Subprotocol Common Name: WebSocket Transport for JMAP (JSON Meta
Application Protocol)
Subprotocol Definition: [ RFC-to-be ]
Reference: [ RFC-to-be ]
Change Controller: IESG

The IANA Functions Operator understands that this is the only action required to be completed upon approval of this document.

Note:  The actions requested in this document will not be completed until the document has been approved for publication as an RFC. This message is meant only to confirm the list of actions that will be performed.

Thank you,

Sabrina Tanamal
Senior IANA Services Specialist
2019-12-19
04 Bob Briscoe Request for Last Call review by TSVART Completed: Ready with Issues. Reviewer: Bob Briscoe. Sent review to list.
2019-12-19
04 (System) IESG state changed to Waiting for Writeup from In Last Call
2019-12-17
04 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Tina Tsou
2019-12-17
04 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Tina Tsou
2019-12-10
04 Linda Dunbar Request for Last Call review by GENART Completed: Ready with Nits. Reviewer: Linda Dunbar. Sent review to list.
2019-12-08
04 Wesley Eddy Request for Last Call review by TSVART is assigned to Bob Briscoe
2019-12-08
04 Wesley Eddy Request for Last Call review by TSVART is assigned to Bob Briscoe
2019-12-05
04 Jean Mahoney Request for Last Call review by GENART is assigned to Linda Dunbar
2019-12-05
04 Jean Mahoney Request for Last Call review by GENART is assigned to Linda Dunbar
2019-12-05
04 Tero Kivinen Request for Last Call review by SECDIR is assigned to Leif Johansson
2019-12-05
04 Tero Kivinen Request for Last Call review by SECDIR is assigned to Leif Johansson
2019-12-05
04 Cindy Morgan IANA Review state changed to IANA - Review Needed
2019-12-05
04 Cindy Morgan
The following Last Call announcement was sent out (ends 2019-12-19):

From: The IESG
To: IETF-Announce
CC: jmap-chairs@ietf.org, jmap@ietf.org, draft-ietf-jmap-websocket@ietf.org, fenton@bluepopcorn.net, alexey.melnikov@isode.com …
The following Last Call announcement was sent out (ends 2019-12-19):

From: The IESG
To: IETF-Announce
CC: jmap-chairs@ietf.org, jmap@ietf.org, draft-ietf-jmap-websocket@ietf.org, fenton@bluepopcorn.net, alexey.melnikov@isode.com, Jim Fenton
Reply-To: last-call@ietf.org
Sender:
Subject: Last Call:  (A JSON Meta Application Protocol (JMAP) Subprotocol for WebSocket) to Proposed Standard


The IESG has received a request from the JSON Mail Access Protocol WG (jmap)
to consider the following document: - 'A JSON Meta Application Protocol
(JMAP) Subprotocol for WebSocket'
  as Proposed Standard

The IESG plans to make a decision in the next few weeks, and solicits final
comments on this action. Please send substantive comments to the
last-call@ietf.org mailing lists by 2019-12-19. Exceptionally, comments may
be sent to iesg@ietf.org instead. In either case, please retain the beginning
of the Subject line to allow automated sorting.

Abstract


  This document defines a binding for the JSON Meta Application
  Protocol (JMAP) over a WebSocket transport layer.  The WebSocket
  binding for JMAP provides higher performance than the current HTTP
  binding for JMAP.




The file can be obtained via
https://datatracker.ietf.org/doc/draft-ietf-jmap-websocket/

IESG discussion can be tracked via
https://datatracker.ietf.org/doc/draft-ietf-jmap-websocket/ballot/


No IPR declarations have been submitted directly on this I-D.




2019-12-05
04 Cindy Morgan IESG state changed to In Last Call from Last Call Requested
2019-12-05
04 Alexey Melnikov Last call was requested
2019-12-05
04 Alexey Melnikov Last call announcement was generated
2019-12-05
04 Alexey Melnikov Ballot approval text was generated
2019-12-05
04 Alexey Melnikov Ballot writeup was generated
2019-12-05
04 Alexey Melnikov IESG state changed to Last Call Requested from AD Evaluation
2019-12-05
04 Alexey Melnikov IESG state changed to AD Evaluation from Publication Requested
2019-11-25
04 Jim Fenton
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up. Changes are expected over time.

This version is dated …
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up. Changes are expected over time.

This version is dated 1 November 2019.

(1) What type of RFC is being requested (BCP, Proposed Standard, Internet Standard, Informational, Experimental, or Historic)? Why is this the proper type of RFC? Is this type of RFC indicated in the title page header?

Proposed Standard

(2) The IESG approval announcement includes a Document Announcement Write-Up. Please provide such a Document Announcement Write-Up. Recent examples can be found in the "Action" announcements for approved documents. The approval announcement contains the following sections:

Technical Summary:

JMAP [RFC8620] defines a synchronization protocol that assumes that it is used over a secure transport protocol. The current HTTP binding for JMAP would require that each request be authenticated, which introduces significant overhead. The WebSocket binding defined in this document provides higher performance by allowing the connection to be authenticated once with subsequent requests taking advantage of the WebSocket state.

Working Group Summary:

This document represents the consensus of the jmap working group. Given the small size of the working group, the number of comments on the draft was limited, and the primary interest was from participants from FastMail. This draft was generally uncontroversial in the working group.

Document Quality:

One known implementation of this draft exists for Cyrus.

Personnel:

Who is the Document Shepherd? Who is the Responsible Area Director?

The Document Shepherd for this document is Jim Fenton. The responsible Area Director is Alexey Melnikov.

(3) Briefly describe the review of this document that was performed by the Document Shepherd. If this version of the document is not ready for publication, please explain why the document is being forwarded to the IESG.

The Document Shepherd reviewed the -03 draft in detail, and proposed several changes (including corrections to idnits issues) that have been incorporated into -04.

(4) Does the document Shepherd have any concerns about the depth or breadth of the reviews that have been performed?

No.

(5) Do portions of the document need review from a particular or from broader perspective, e.g., security, operational complexity, AAA, DNS, DHCP, XML, or internationalization? If so, describe the review that took place.

No.

(6) Describe any specific concerns or issues that the Document Shepherd has with this document that the Responsible Area Director and/or the IESG should be aware of? For example, perhaps he or she is uncomfortable with certain parts of the document, or has concerns whether there really is a need for it. In any event, if the WG has discussed those issues and has indicated that it still wishes to advance the document, detail those concerns here.

No concerns.

(7) Has each author confirmed that any and all appropriate IPR disclosures required for full conformance with the provisions of BCP 78 and BCP 79 have already been filed. If not, explain why?

Yes.

(8) Has an IPR disclosure been filed that references this document? If so, summarize any WG discussion and conclusion regarding the IPR disclosures.

No IPR disclosures.

(9) How solid is the WG consensus behind this document? Does it represent the strong concurrence of a few individuals, with others being silent, or does the WG as a whole understand and agree with it?

This document represents the consensus of the jmap working group. Given the small size of the working group, the number of comments on the draft was limited. This draft was generally uncontroversial in the working group.

(10) Has anyone threatened an appeal or otherwise indicated extreme discontent? If so, please summarise the areas of conflict in separate email messages to the Responsible Area Director. (It should be in a separate email because this questionnaire is publicly available.)

No.

(11) Identify any ID nits the Document Shepherd has found in this document. (See http://www.ietf.org/tools/idnits/ and the Internet-Drafts Checklist). Boilerplate checks are not enough; this check needs to be thorough.

Document Shepherd has run IDnits check, and the document is clean.

(12) Describe how the document meets any required formal review criteria, such as the MIB Doctor, YANG Doctor, media type, and URI type reviews.

No formal reviews are believed to be required for this document.

(13) Have all references within this document been identified as either normative or informative?

Yes.

(14) Are there normative references to documents that are not ready for advancement or are otherwise in an unclear state? If such normative references exist, what is the plan for their completion?

All normative references have been published as RFCs.

(15) Are there downward normative references references (see RFC 3967)? If so, list these downward references to support the Area Director in the Last Call procedure.

No downward references.

(16) Will publication of this document change the status of any existing RFCs? Are those RFCs listed on the title page header, listed in the abstract, and discussed in the introduction? If the RFCs are not listed in the Abstract and Introduction, explain why, and point to the part of the document where the relationship of this document to the other RFCs is discussed. If this information is not in the document, explain why the WG considers it unnecessary.

No RFC status changes are involved.

(17) Describe the Document Shepherd's review of the IANA considerations section, especially with regard to its consistency with the body of the document. Confirm that all protocol extensions that the document makes are associated with the appropriate reservations in IANA registries. Confirm that any referenced IANA registries have been clearly identified. Confirm that newly created IANA registries include a detailed specification of the initial contents for the registry, that allocations procedures for future registrations are defined, and a reasonable name for the new registry has been suggested (see RFC 8126).

Document requires one IANA registry reservation to a first-come first-served registry.

(18) List any new IANA registries that require Expert Review for future allocations. Provide any public guidance that the IESG would find useful in selecting the IANA Experts for these new registries.

No new IANA registries are required.

(19) Describe reviews and automated checks performed by the Document Shepherd to validate sections of the document written in a formal language, such as XML code, BNF rules, MIB definitions, YANG modules, etc.

No sections are written in a formal language. Document Shepherd has manually examined examples written in JSON and believes them to be correct.

(20) If the document contains a YANG module, has the module been checked with any of the recommended validation tools (https://trac.ietf.org/trac/ops/wiki/yang-review-tools) for syntax and formatting validation? If there are any resulting errors or warnings, what is the justification for not fixing them at this time? Does the YANG module comply with the Network Management Datastore Architecture (NMDA) as specified in RFC8342?

No YANG modules are involved.

2019-11-25
04 Jim Fenton Responsible AD changed to Alexey Melnikov
2019-11-25
04 Jim Fenton IETF WG state changed to Submitted to IESG for Publication from WG Consensus: Waiting for Write-Up
2019-11-25
04 Jim Fenton IESG state changed to Publication Requested from I-D Exists
2019-11-25
04 Jim Fenton IESG process started in state Publication Requested
2019-11-25
04 Jim Fenton
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up. Changes are expected over time.

This version is dated …
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up. Changes are expected over time.

This version is dated 1 November 2019.

(1) What type of RFC is being requested (BCP, Proposed Standard, Internet Standard, Informational, Experimental, or Historic)? Why is this the proper type of RFC? Is this type of RFC indicated in the title page header?

Proposed Standard

(2) The IESG approval announcement includes a Document Announcement Write-Up. Please provide such a Document Announcement Write-Up. Recent examples can be found in the "Action" announcements for approved documents. The approval announcement contains the following sections:

Technical Summary:

JMAP [RFC8620] defines a synchronization protocol that assumes that it is used over a secure transport protocol. The current HTTP binding for JMAP would require that each request be authenticated, which introduces significant overhead. The WebSocket binding defined in this document provides higher performance by allowing the connection to be authenticated once with subsequent requests taking advantage of the WebSocket state.

Working Group Summary:

This document represents the consensus of the jmap working group. Given the small size of the working group, the number of comments on the draft was limited, and the primary interest was from participants from FastMail. This draft was generally uncontroversial in the working group.

Document Quality:

One known implementation of this draft exists for Cyrus.

Personnel:

Who is the Document Shepherd? Who is the Responsible Area Director?

The Document Shepherd for this document is Jim Fenton. The responsible Area Director is Alexey Melnikov.

(3) Briefly describe the review of this document that was performed by the Document Shepherd. If this version of the document is not ready for publication, please explain why the document is being forwarded to the IESG.

The Document Shepherd reviewed the -03 draft in detail, and proposed several changes (including corrections to idnits issues) that have been incorporated into -04.

(4) Does the document Shepherd have any concerns about the depth or breadth of the reviews that have been performed?

No.

(5) Do portions of the document need review from a particular or from broader perspective, e.g., security, operational complexity, AAA, DNS, DHCP, XML, or internationalization? If so, describe the review that took place.

No.

(6) Describe any specific concerns or issues that the Document Shepherd has with this document that the Responsible Area Director and/or the IESG should be aware of? For example, perhaps he or she is uncomfortable with certain parts of the document, or has concerns whether there really is a need for it. In any event, if the WG has discussed those issues and has indicated that it still wishes to advance the document, detail those concerns here.

No concerns.

(7) Has each author confirmed that any and all appropriate IPR disclosures required for full conformance with the provisions of BCP 78 and BCP 79 have already been filed. If not, explain why?

Yes.

(8) Has an IPR disclosure been filed that references this document? If so, summarize any WG discussion and conclusion regarding the IPR disclosures.

No IPR disclosures.

(9) How solid is the WG consensus behind this document? Does it represent the strong concurrence of a few individuals, with others being silent, or does the WG as a whole understand and agree with it?

This document represents the consensus of the jmap working group. Given the small size of the working group, the number of comments on the draft was limited. This draft was generally uncontroversial in the working group.

(10) Has anyone threatened an appeal or otherwise indicated extreme discontent? If so, please summarise the areas of conflict in separate email messages to the Responsible Area Director. (It should be in a separate email because this questionnaire is publicly available.)

No.

(11) Identify any ID nits the Document Shepherd has found in this document. (See http://www.ietf.org/tools/idnits/ and the Internet-Drafts Checklist). Boilerplate checks are not enough; this check needs to be thorough.

Document Shepherd has run IDnits check, and the document is clean.

(12) Describe how the document meets any required formal review criteria, such as the MIB Doctor, YANG Doctor, media type, and URI type reviews.

No formal reviews are believed to be required for this document.

(13) Have all references within this document been identified as either normative or informative?

Yes.

(14) Are there normative references to documents that are not ready for advancement or are otherwise in an unclear state? If such normative references exist, what is the plan for their completion?

All normative references have been published as RFCs.

(15) Are there downward normative references references (see RFC 3967)? If so, list these downward references to support the Area Director in the Last Call procedure.

No downward references.

(16) Will publication of this document change the status of any existing RFCs? Are those RFCs listed on the title page header, listed in the abstract, and discussed in the introduction? If the RFCs are not listed in the Abstract and Introduction, explain why, and point to the part of the document where the relationship of this document to the other RFCs is discussed. If this information is not in the document, explain why the WG considers it unnecessary.

No RFC status changes are involved.

(17) Describe the Document Shepherd's review of the IANA considerations section, especially with regard to its consistency with the body of the document. Confirm that all protocol extensions that the document makes are associated with the appropriate reservations in IANA registries. Confirm that any referenced IANA registries have been clearly identified. Confirm that newly created IANA registries include a detailed specification of the initial contents for the registry, that allocations procedures for future registrations are defined, and a reasonable name for the new registry has been suggested (see RFC 8126).

Document requires one IANA registry reservation to a first-come first-served registry.

(18) List any new IANA registries that require Expert Review for future allocations. Provide any public guidance that the IESG would find useful in selecting the IANA Experts for these new registries.

No new IANA registries are required.

(19) Describe reviews and automated checks performed by the Document Shepherd to validate sections of the document written in a formal language, such as XML code, BNF rules, MIB definitions, YANG modules, etc.

No sections are written in a formal language. Document Shepherd has manually examined examples written in JSON and believes them to be correct.

(20) If the document contains a YANG module, has the module been checked with any of the recommended validation tools (https://trac.ietf.org/trac/ops/wiki/yang-review-tools) for syntax and formatting validation? If there are any resulting errors or warnings, what is the justification for not fixing them at this time? Does the YANG module comply with the Network Management Datastore Architecture (NMDA) as specified in RFC8342?

No YANG modules are involved.

2019-11-19
04 Bron Gondwana Tag Revised I-D Needed - Issue raised by WG cleared.
2019-11-17
04 Kenneth Murchison New version available: draft-ietf-jmap-websocket-04.txt
2019-11-17
04 (System) New version approved
2019-11-17
04 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2019-11-17
04 Kenneth Murchison Uploaded new revision
2019-11-16
03 Jim Fenton Tag Revised I-D Needed - Issue raised by WG set.
2019-11-16
03 Jim Fenton IETF WG state changed to WG Consensus: Waiting for Write-Up from In WG Last Call
2019-10-23
03 Jim Fenton Notification list changed to Jim Fenton <fenton@bluepopcorn.net>
2019-10-23
03 Jim Fenton Document shepherd changed to Jim Fenton
2019-10-23
03 Jim Fenton As discussed in Montreal.
2019-10-23
03 Jim Fenton IETF WG state changed to In WG Last Call from WG Document
2019-10-23
03 Jim Fenton Changed consensus to Yes from Unknown
2019-10-23
03 Jim Fenton Per intended status in draft.
2019-10-23
03 Jim Fenton Intended Status changed to Proposed Standard from None
2019-07-23
03 Kenneth Murchison New version available: draft-ietf-jmap-websocket-03.txt
2019-07-23
03 (System) New version approved
2019-07-23
03 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2019-07-23
03 Kenneth Murchison Uploaded new revision
2019-07-05
02 Kenneth Murchison New version available: draft-ietf-jmap-websocket-02.txt
2019-07-05
02 (System) New version approved
2019-07-05
02 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2019-07-05
02 Kenneth Murchison Uploaded new revision
2019-03-10
01 Kenneth Murchison New version available: draft-ietf-jmap-websocket-01.txt
2019-03-10
01 (System) New version approved
2019-03-10
01 (System) Request for posting confirmation emailed to previous authors: Ken Murchison
2019-03-10
01 Kenneth Murchison Uploaded new revision
2019-02-01
00 Alexey Melnikov This document now replaces draft-murchison-jmap-websocket instead of None
2018-12-05
00 Kenneth Murchison New version available: draft-ietf-jmap-websocket-00.txt
2018-12-05
00 (System) New version approved
2018-12-05
00 Kenneth Murchison Request for posting confirmation emailed  to submitter and authors: Ken Murchison
2018-12-05
00 Kenneth Murchison Uploaded new revision