A 0-RTT packet uses long headers with a type value of 0x01, followed by the Length and Packet Number fields; see Section 17.2. The first byte contains the Reserved and Packet Number Length bits; see Section 17.2. A 0-RTT packet is used to carry "early" data from the client to the server as part of the first flight, prior to handshake completion. As part of the TLS handshake, the server can accept or reject this early data. See Section 2.3 of [TLS13] for a discussion of 0-RTT data and its limitations. 0-RTT Packet { Header Form (1) = 1, Fixed Bit (1) = 1, Long Packet Type (2) = 1, Reserved Bits (2), Packet Number Length (2), Version (32), Destination Connection ID Length (8), Destination Connection ID (0..160), Source Connection ID Length (8), Source Connection ID (0..160), Length (i), Packet Number (8..32), Packet Payload (..), }
Subclasses of this class may be used to model packets exchanged with either Quic Version 1 or Quic Version 2. Note that Quic Version 2 uses the same 0-RTT Packet structure than Quic Version 1, but uses a different long packet type than that shown above. See RFC 9369, Section 3.2.
| Modifier and Type | Method and Description |
|---|---|
| public List | frames()
Redeclares as abstract: jdk. Returns this packet's frames. |
| public default boolean | hasLength()
Overrides default jdk. Whether this packet has a length field whose value can be read from the packet bytes. |
| public default QuicPacket. | numberSpace()
Implements jdk. Returns this packet's number space. |
| public long | Returns: this packet number.Redeclares as abstract: jdk. This packet number. |
| public default QuicPacket. | packetType()
Implements jdk. Returns this packet's type. |
| frames | back to summary |
|---|---|
| public List Redeclares as abstract: jdk. Doc from jdk. Returns this packet's frames.
| |
| hasLength | back to summary |
|---|---|
| public default boolean hasLength() Overrides default jdk. Doc from jdk. Whether this packet has a length field whose value can be read from the packet bytes.
| |
| numberSpace | back to summary |
|---|---|
| public default QuicPacket. Implements jdk. Doc from jdk. Returns this packet's number space.
| |
| packetNumber | back to summary |
|---|---|
| public long packetNumber() Redeclares as abstract: jdk. This packet number.
| |
| packetType | back to summary |
|---|---|
| public default QuicPacket. Implements jdk. Doc from jdk. Returns this packet's type.
| |