QUIC X. Gao, Ed.
Internet-Draft M. Han, Ed.
Intended status: Standards Track Z. Ruan, Ed.
Expires: 5 January 2025 China Unicom
H. Shi
Huawei
4 July 2024
QUIC network awareness Acknowledgements
draft-gao-quic-network-awareness-ack-00
Abstract
This document defines a quic ACK frame format for notifying network
status information.
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 5 January 2025.
Copyright Notice
Copyright (c) 2024 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Gao, et al. Expires 5 January 2025 [Page 1]
Internet-Draft QUIC ack for network awareness July 2024
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions and Definitions . . . . . . . . . . . . . . . . . 2
3. Overview of ACK mechanism . . . . . . . . . . . . . . . . . . 3
4. Network State Awareness Process . . . . . . . . . . . . . . . 3
5. Network awareness ACK frame . . . . . . . . . . . . . . . . . 4
6. Security Considerations . . . . . . . . . . . . . . . . . . . 4
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
8. Informative References . . . . . . . . . . . . . . . . . . . 5
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5
1. Introduction
Network state awareness is an important part of achieving rational
allocation and scheduling of network resources, reducing network
congestion,and ensuring network reliability. In the scenario of end
to network collaboration, the perception of network status by the end
side and the implementation of congestion control, path selection,
etc, are the current trends in business development. Regulating by
the end side can better meet the application needs of the user side
and better adapt to personalized scenarios; And the end side can
perceive real-time changes in the local environment and state, adjust
the path and speed in a timely manner, and achieve rapid response.
The quic protocol relies on feedback information provided by the ack
mechanism to achieve congestion control and reliable transmission
functions, used to manage network congestion and ensure smooth data
transmission. In the scenario of end to network collaboration, based
on the extension of the quic ACK mechanism, it supports carrying
network status information such as available path bandwidth and path
delay. The network status indicators are quickly notified to the end
side, which is used to achieve load balancing, rate control and other
operations on the end side, making data transmission more efficient
and network resource utilization higher, greatly improving network
service quality.
2. Conventions and Definitions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
Gao, et al. Expires 5 January 2025 [Page 2]
Internet-Draft QUIC ack for network awareness July 2024
3. Overview of ACK mechanism
The triggering condition of ACK determines the timing of ACK
generation and transmission. The confirmation mechanism of the quic
protocol generally involves the receiver immediately replying to an
ACK message after receiving a specified number of data packets, or
waiting for a specified time delay to reply to an ACK message
regardless of whether a data packet has arrived. [RFC9000] specifies
a simple delay ACK mechanism, where the receiver can send an ACK
every other packet, or send an ACK when the max_ck_delay timer
expires. This document extends the quick ACK mechanism by adding the
condition for triggering ACK: when the IP header of the forward path
contains network status information, the ACK confirmation is
triggered by the receiver after receiving the data packet, and the
ACK carries the network status information to notify the sender. The
specific implementation method can negotiate to change the peer's
confirmation behavior by defining new quic frame types;
Alternatively, initialization configuration can be performed at the
receiving end to enable the receiver to generate an ACK when
receiving a message containing network status information. Support
generating ACKs based on packet by packet feedback or time cycles.
If multiple packets may be received within a cycle, the network
status information carried by ACK can be based on the last received
packet.
4. Network State Awareness Process
+--------+ pkt +------ --+ pkt+tlm+---------+ pkt+tlm +---------+
| Data |-------->| |------->| |-------->| Data |
| Sender |======== | Router1 |========| Router2 |=========| Receiver|
+--------+ +---------+ +---------+ +---------+
/|\ |
+------------------------------------------------------------+
Notification Packets/ACKs
Figure 1: Network Status Awareness Process (tlm=inband telemtry)
During the process of sending packets from the sender to the
receiver, in band telemetry information is inserted into each router
along the path, including timestamp information, congestion
information, path bottleneck bandwidth, as well as routing ID and
port ID. Reference for collecting congestion information[draft-shi-
ippm-advanced-ecn-00]; Time delay information collection calculates
link delay and end-to-end delay by recording the timestamps of hop by
hop links or end-to-end forward paths; The maximum data transmission
rate that a path can provide for a new single connection is collected
based on the available bandwidth of the path, without affecting the
transmission rate of the existing connection. When the receiver
receives a data packet, it copies all in band telemetry information
recorded on the network into an ACK message and sends it back to the
sender. The frame format extension method is detailed in Chapter 5.
Gao, et al. Expires 5 January 2025 [Page 3]
Internet-Draft QUIC ack for network awareness July 2024
5. Network awareness ACK frame
Network awareness ACK Frame {
Type (i) = 0x20,
Largest Acknowledged(i),
ACK Delay (i),
ACK Range Count (i),
First ACK Range (i),
ACK Range (..) …,
Network information(..),
}
Similar to regular ACK frames, (see Section 19.3 of [RFC9000]), The
difference is that the ECN count is removed, and network information
such as congestion is placed in the network information field.ACK
frames contain the following fields:
* Type: type=0x20,Indicates that ACK carries network information.
* Largest Acknowledged :A variable-length integer representing the
largest packet number the peer is acknowledging. This is usually
the largest packet number that the peer has received prior to
generating the ACK frame,Unlike the packet number in the QUIC long
or short header, the value in an ACK frame is not truncated.
* ACK Delay: It represents the time it takes for the receiver to
receive a message and for the receiver to send the ACK Frame.
* ACK Range Count:A variable-length integer specifying the number of
ACK Range fields in the frame.
* First ACK Range: A variable-length integer indicating the number
of contiguous packets preceding the Largest Acknowledged that are
being acknowledged. That is, the smallest packet acknowledged in
the range is determined by subtracting the First ACK Range value
from the Largest Acknowledged field.
* ACK Range:Contains additional ranges of packets that are
alternately not acknowledged (Gap) and acknowledged (ACK Range).
* Network information:Network information carries status information
such as available network bandwidth and congestion.
6. Security Considerations
TBD
Gao, et al. Expires 5 January 2025 [Page 4]
Internet-Draft QUIC ack for network awareness July 2024
7. IANA Considerations
The following frame types have requested to be provisionally added to
the "QUIC Frame Types" registry under the "QUIC Protocol" heading.
+--------------+-------------------------------------+------------------------------+
| value | Frame Name | specification |
+--------------+-------------------------------------+------------------------------+
| 0x20 | network awareness ACK frame | section4 |
+--------------+-------------------------------------+------------------------------+
Table1: Addition to QUIC Frame Types Entries
When this document is approved, IANA is requested to change the
registration to a permanent allocation of these frame types with the
values described above.
8. Informative References
[I-D.shi-ippm-advanced-ecn]
Shi, H., Zhou, T., and Z. Li, "Advanced Explicit
Congestion Notification", Work in Progress, Internet-
Draft, draft-shi-ippm-advanced-ecn-00, 11 December 2023,
<https://datatracker.ietf.org/doc/html/draft-shi-ippm-
advanced-ecn-00>.
Authors' Addresses
Xing Gao (editor)
China Unicom
Beijing
China
Email: gaox60@chinaunicom.cn
Mengyao Han (editor)
China Unicom
Beijing
China
Email: hanmy12@chinaunicom.cn
Zheng Ruan (editor)
China Unicom
Beijing
China
Email: ruanz6@chinaunicom.cn
Gao, et al. Expires 5 January 2025 [Page 5]
Internet-Draft QUIC ack for network awareness July 2024
Hang Shi
Huawei
Beijing
China
Email: shihang9@huawei.com
Gao, et al. Expires 5 January 2025 [Page 6]