Internet-Draft Adjusting ACK Frequency in Receiver March 2025
Du Expires 4 September 2025 [Page]
Workgroup:
TCPM Working Group
Internet-Draft:
draft-du-tcpm-ack-rate-adjustment-in-receiver-00
Published:
Intended Status:
Informational
Expires:
Author:
Z. Du
China Mobile

ACK Frequency Adjustment in Receiver

Abstract

This document describes a mechanism for adjusting ACK frequency in the receiver.

Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 4 September 2025.

Table of Contents

1. Introduction

In [I-D.ietf-tcpm-ack-rate-request], it is allowed that a sender to request the ACK rate to be used by a receiver. It is a straightforward way to modify the frequency of ACK.

However, in some scenario, it would be useful to enable the receiver to modify the frequency of ACK directly without the need of the signal from the sender. For example, for a long fat flow, the receiver would receive packets of the flow continuingly. Thus, the receiver can predict the arrivals of the packets of the flow, and accordingly modify the frequency of ACK.‌

2. Procedure of ACK Frequency Modification

For a transport session with long duration and high bandwidth, the receiver can predict the arrivals of the packet of the flow. According to the statistic of the arrive time of the packets, the receiver can speculate about the network status for the flow.

If every packet arrives in order, and at a relatively reasonable interval, the receiver can adjust the ACK frequency. For example, the receiver typically sends an ACK for at least every second segment received in a stream of full-sized segments, and it can be changed to send an ACK at least every third segment received in a stream of full-sized segments. An even bigger value would also be possible here, for example four segments.

If all the packets of the stream have a large size, for example a full-sized one is about 1500 bytes, the above descriptions would be simpler. The receiver would typically return an ACK after receiving every two packets, and it can be changed to return an ACK after receiving every three or more packets.

As an option in this document, the receiver can predict the receiving time of each packet. If the next packet is received within the predicted time interval, we regards the prediction as verified. According to the prediction result, we can change the policy of responding ACK for the future packets. In a certain period, if all the predictions are verified, the ACK rate could decrease, and if not all the prediction are verified, the ACK rate would increase. Of course, if an out-of-order packet is detected, an ACK will be triggered immediately [RFC5681].

Hence, the policy of responding ACK in the receiver for a TCP stream could be self-adjusted. A general procedure is described as follows:

  1. As usual, the receiver would return an ACK every two packets.

  2. If the predictions of successive N packets are all verified, the receiver can change the policy of returning ACK to a less frequent one, for example, returning an ACK after receiving every three packets. N is an integer greater than 1.

  3. If an out-of-order packet is detected, an ACK will be triggered immediately, and the policy is changed back to the traditional one. Normally, it will go back to step 1 after a few moment.

Alternatively, the receiver can also predict multiple packets would be received within a certain period, and afterwards trigger the modification of the policy of responding ACK for the packets of the stream that would be received in future. The procedure is similar to the above one.

3. IANA Considerations

TBD.

4. Security Considerations

TBD.

5. Acknowledgements

TBD.

6. References

6.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.

6.2. Informative References

[I-D.ietf-tcpm-ack-rate-request]
Gomez, C. and J. Crowcroft, "TCP ACK Rate Request Option", Work in Progress, Internet-Draft, draft-ietf-tcpm-ack-rate-request-07, , <https://datatracker.ietf.org/doc/html/draft-ietf-tcpm-ack-rate-request-07>.
[RFC5681]
Allman, M., Paxson, V., and E. Blanton, "TCP Congestion Control", RFC 5681, DOI 10.17487/RFC5681, , <https://www.rfc-editor.org/info/rfc5681>.

Author's Address

Zongpeng Du
China Mobile
No.32 XuanWuMen West Street
Beijing
100053
China