Subject: [quicwg/base-drafts] Update ACK generation policy (#3623)

From: Tom Jones <[email-masked]>
Date: Fri, 01 May 2020 07:18:13 -0700

The discussion around the previous pull request #3501 seems to have stalled. We think a smaller change might also work.
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Update ACK generation policy

-- File Changes --

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

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/3623.patch
https://github.com/quicwg/base-drafts/pull/3623.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/3623

---

From: Martin Thomson <[email-masked]>
Date: Sun, 03 May 2020 21:53:46 -0700

@martinthomson commented on this pull request.

Copyedit only.  I'll let this debate continue.

> @@ -3261,8 +3261,14 @@ a max_ack_delay of 0 is used. The sender uses the receiver's `max_ack_delay`
 value in determining timeouts for timer-based retransmission, as detailed in
 Section 5.2.1 of {{QUIC-RECOVERY}}.
 
-An ACK frame SHOULD be generated for at least every second ack-eliciting packet.
-This recommendation is in keeping with standard practice for TCP {{?RFC5681}}.
+

```suggestion
```

> @@ -3261,8 +3261,14 @@ a max_ack_delay of 0 is used. The sender uses the receiver's `max_ack_delay`
 value in determining timeouts for timer-based retransmission, as detailed in
 Section 5.2.1 of {{QUIC-RECOVERY}}.
 
-An ACK frame SHOULD be generated for at least every second ack-eliciting packet.
-This recommendation is in keeping with standard practice for TCP {{?RFC5681}}.
+
+An ACK frame SHOULD be generated for at least every 10th ack-eliciting packet
+(the QUIC IW). A receiver could send an ACK frame at least every second 
+ack-elicitingpacket (recommended practice for TCP {{?RFC5681}}). QUIC permits 

```suggestion
ack-eliciting packet (recommended practice for TCP {{?RFC5681}}). QUIC permits 
```

> @@ -3261,8 +3261,14 @@ a max_ack_delay of 0 is used. The sender uses the receiver's `max_ack_delay`
 value in determining timeouts for timer-based retransmission, as detailed in
 Section 5.2.1 of {{QUIC-RECOVERY}}.
 
-An ACK frame SHOULD be generated for at least every second ack-eliciting packet.
-This recommendation is in keeping with standard practice for TCP {{?RFC5681}}.
+
+An ACK frame SHOULD be generated for at least every 10th ack-eliciting packet
+(the QUIC IW). A receiver could send an ACK frame at least every second 
+ack-elicitingpacket (recommended practice for TCP {{?RFC5681}}). QUIC permits 
+a larger ratio between ACKs and data,which can reduce

```suggestion
a larger ratio between ACKs and data, which can reduce
```

> @@ -3261,8 +3261,14 @@ a max_ack_delay of 0 is used. The sender uses the receiver's `max_ack_delay`
 value in determining timeouts for timer-based retransmission, as detailed in
 Section 5.2.1 of {{QUIC-RECOVERY}}.
 
-An ACK frame SHOULD be generated for at least every second ack-eliciting packet.
-This recommendation is in keeping with standard practice for TCP {{?RFC5681}}.
+
+An ACK frame SHOULD be generated for at least every 10th ack-eliciting packet
+(the QUIC IW). A receiver could send an ACK frame at least every second 
+ack-elicitingpacket (recommended practice for TCP {{?RFC5681}}). QUIC permits 
+a larger ratio between ACKs and data,which can reduce
+the number of ACK frames that are sent and need to be processed.
+The receiver can provide a higher rate of acknowledgements
+(e.g. every ack-eliciting packet) for the first 100 packets.

```suggestion
(e.g., every ack-eliciting packet) for the first 100 packets.
```

-- 
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/3623#pullrequestreview-404708350

---

From: Tom Jones <[email-masked]>
Date: Wed, 06 May 2020 05:11:11 -0700

@adventureloop pushed 1 commit.

525035f6802bb962f949084411594f6a91a3d623  Update draft-ietf-quic-transport.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3623/files/b0d3867056e5ead03f683d17f2b5e7d9b7279116..525035f6802bb962f949084411594f6a91a3d623

---

From: Tom Jones <[email-masked]>
Date: Wed, 06 May 2020 05:11:45 -0700

1bed083cfc74e8d5dca3721d458c98f9e413206f  Update draft-ietf-quic-transport.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3623/files/525035f6802bb962f949084411594f6a91a3d623..1bed083cfc74e8d5dca3721d458c98f9e413206f

---

From: Tom Jones <[email-masked]>
Date: Wed, 06 May 2020 05:11:54 -0700

2c87882d7270c6cfe5006bbd10508c3c6b0da52b  Update draft-ietf-quic-transport.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3623/files/1bed083cfc74e8d5dca3721d458c98f9e413206f..2c87882d7270c6cfe5006bbd10508c3c6b0da52b

---

From: Tom Jones <[email-masked]>
Date: Wed, 06 May 2020 05:12:03 -0700

fff1097a27d6e2cfe88c61525d0f43416ee39e13  Update draft-ietf-quic-transport.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3623/files/2c87882d7270c6cfe5006bbd10508c3c6b0da52b..fff1097a27d6e2cfe88c61525d0f43416ee39e13