Subject: HTTP/QUIC GOAWAY when there is no client request?

From: Lucas Pardue <[email-masked]>
Date: Mon, 5 Mar 2018 12:20:17 +0000

Hi,

Reading section 4.2.7 of draft-ietf-quic-http-09, it says:

   The GOAWAY frame does not define any flags, and the payload is a QUIC
   Stream ID for a client-initiated, bidirectional stream encoded as a
   variable-length integer.

Steam 0 is the first client-initiated, bidirectional stream. However, it is reserved for the transport's cryptographic operations.

So how would you handle a client that opens a connection but delays sending requests (for some reason)?

Regards
Lucas

P.S

While I'm here, section 4.2.7 later says:

   An endpoint MAY send multiple GOAWAY frames if circumstances change.

   For instance, an endpoint that sends GOAWAY without an error code

   during graceful shutdown could subsequently encounter an error

   condition.

Is this reference to "an error code" supposed to be in relation to CONNECTION_CLOSE or APPLICATION_CLOSE, or is it a hangover from some older version of GOAWAY?

---

From: Mike Bishop <[email-masked]>
Date: Mon, 5 Mar 2018 18:28:17 +0000

Stream 0 still seems appropriate.  It meets the requirements, and indicates that the last request accepted was no request.  The error code text is a hangover - I'll address that.

From: QUIC [mailto:[email-masked]] On Behalf Of Lucas Pardue
Sent: Monday, March 5, 2018 4:20 AM
To: IETF QUIC WG <[email-masked]>
Subject: HTTP/QUIC GOAWAY when there is no client request?

Hi,

Regards
Lucas

P.S

   condition.

---

From: Lucas Pardue <[email-masked]>
Date: Mon, 5 Mar 2018 19:36:15 +0000

I tend to agree, the GOAWAY frame is only using the identifer, not the actual stream. So using 0 here would not violate any rule.

I just wonder if implementors of HTTP/QUIC might be minded to make stream 0 a no-go identifier as a blanket rule, there are not many other places I've seen that would require it's usage.

Regards
Lucas
________________________________
From: Mike Bishop [[email-masked]]
Sent: 05 March 2018 18:28
To: Lucas Pardue; IETF QUIC WG
Subject: RE: HTTP/QUIC GOAWAY when there is no client request?

Stream 0 still seems appropriate.  It meets the requirements, and indicates that the last request accepted was no request.  The error code text is a hangover – I’ll address that.

Hi,

Steam 0 is the first client-initiated, bidirectional stream. However, it is reserved for the transport’s cryptographic operations.

Regards
Lucas

P.S

While I’m here, section 4.2.7 later says:

   condition.

Is this reference to “an error code” supposed to be in relation to CONNECTION_CLOSE or APPLICATION_CLOSE, or is it a hangover from some older version of GOAWAY?