Subject: [quicwg/base-drafts] Flow control intro sentence (#4719)

From: Mike Bishop <[email-masked]>
Date: Fri, 08 Jan 2021 12:39:04 -0800

Fixes #4560 
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/4719

-- Commit Summary --

  * It is necessary =&gt; Receivers need to

-- File Changes --

    M draft-ietf-quic-transport.md (15)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/4719.patch
https://github.com/quicwg/base-drafts/pull/4719.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719

---

From: ianswett <[email-masked]>
Date: Fri, 08 Jan 2021 12:55:09 -0800

@ianswett commented on this pull request.

Thanks, this is an improvement.  Some suggestions to make connection level flow control a bit clearer.

> @@ -819,14 +819,13 @@ frame.
 
 # Flow Control {#flow-control}
 
-It is necessary to limit the amount of data that a receiver could buffer, to
-prevent a fast sender from overwhelming a slow receiver, or to prevent a
-malicious sender from consuming a large amount of memory at a receiver.  To
-enable a receiver to limit memory commitment to a connection and to apply back
-pressure on the sender, streams are flow controlled both individually and as an
-aggregate.  A QUIC receiver controls the maximum amount of data the sender can
-send on a stream at any time, as described in {{data-flow-control}} and
-{{fc-credit}}.
+Receivers need to limit the amount of data that they are required to buffer, in
+order to prevent a fast sender from overwhelming them or a malicious sender from
+consuming a large amount of memory.  To enable a receiver to limit memory
+commitment to a connection and to apply back pressure on the sender, streams are
+flow controlled both individually and as an aggregate.  A QUIC receiver controls

```suggestion
flow controlled both individually and across a connection.  A QUIC receiver controls
```

> @@ -819,14 +819,13 @@ frame.
 
 # Flow Control {#flow-control}
 
-It is necessary to limit the amount of data that a receiver could buffer, to
-prevent a fast sender from overwhelming a slow receiver, or to prevent a
-malicious sender from consuming a large amount of memory at a receiver.  To
-enable a receiver to limit memory commitment to a connection and to apply back
-pressure on the sender, streams are flow controlled both individually and as an
-aggregate.  A QUIC receiver controls the maximum amount of data the sender can
-send on a stream at any time, as described in {{data-flow-control}} and
-{{fc-credit}}.
+Receivers need to limit the amount of data that they are required to buffer, in
+order to prevent a fast sender from overwhelming them or a malicious sender from
+consuming a large amount of memory.  To enable a receiver to limit memory
+commitment to a connection and to apply back pressure on the sender, streams are
+flow controlled both individually and as an aggregate.  A QUIC receiver controls
+the maximum amount of data the sender can send on a stream at any time, as

```suggestion
the maximum amount of data the sender can send on a stream or connection at any time, as
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#pullrequestreview-564574692

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 10 Jan 2021 17:19:20 -0800

@janaiyengar commented on this pull request.

 

I don't think this is correct -- flow control only limits what a sender sends on a stream.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#discussion_r554653195

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 10 Jan 2021 17:20:57 -0800

@janaiyengar approved this pull request.

I think the text as is is fine, but this is fine too. It is certainly clearer, so I'm happy to take it.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#pullrequestreview-564923539

---

From: Martin Thomson <[email-masked]>
Date: Sun, 10 Jan 2021 17:22:25 -0800

@martinthomson approved this pull request.

With the suggestions, this is a fine, if small, improvement.

 

```suggestion
commitments for a connection, streams are
```

 

Or
```suggestion
flow controlled both individually and across a connection as a whole.  A QUIC receiver controls
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#pullrequestreview-564923367

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 10 Jan 2021 17:24:33 -0800

I think what you might want is "as an aggregate spanning a connection", since the "connection" is describing the scope of aggregation, not the streams themselves. In the interest of keeping this less verbose, "as an aggregate" is probably enough. I'll take it as is, but if you feel strongly, I'm happy to do a separate commit for just this.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#discussion_r554653813

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 10 Jan 2021 17:25:47 -0800

I'm happy to take this as is, but I'll wait for the editorializing to settle.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#pullrequestreview-564924038

---

From: ianswett <[email-masked]>
Date: Mon, 11 Jan 2021 06:46:41 -0800

This paragraph is discussing stream and connection level flow control, so I think some mention of the latter should be included.  We could say "on a single stream as well as across all streams at any time" if you prefer?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#discussion_r555096526

---

From: Mike Bishop <[email-masked]>
Date: Mon, 11 Jan 2021 07:57:08 -0800

@MikeBishop commented on this pull request.

 

```suggestion
the maximum amount of data the sender can send on a stream as well as across all streams at any time, as
```
Taking the second suggestion.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#discussion_r555151475

---

From: Mike Bishop <[email-masked]>
Date: Mon, 11 Jan 2021 07:57:20 -0800

@MikeBishop pushed 1 commit.

781d2392c859c0e65d3e69a16332b20e1cf44c47  Apply suggestions from code review

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719/files/1f27cfdb45d2d75069556eae08dd98f2649d79d6..781d2392c859c0e65d3e69a16332b20e1cf44c47

---

From: Mike Bishop <[email-masked]>
Date: Mon, 11 Jan 2021 07:58:19 -0800

4223c782967121917c811fc5a4ad7cd84a9dad70  Rewrap

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719/files/781d2392c859c0e65d3e69a16332b20e1cf44c47..4223c782967121917c811fc5a4ad7cd84a9dad70

---

From: Jana Iyengar <[email-masked]>
Date: Mon, 11 Jan 2021 18:13:39 -0800

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#pullrequestreview-565886862

---

From: Jana Iyengar <[email-masked]>
Date: Mon, 11 Jan 2021 18:13:46 -0800

Merged #4719 into master.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4719#event-4193655788