| 1234567891011121314151617181920212223242526272829 |
- package ackhandler
- import (
- "time"
- "v2ray.com/core/external/github.com/lucas-clemente/quic-go/internal/protocol"
- "v2ray.com/core/external/github.com/lucas-clemente/quic-go/internal/wire"
- )
- // A Packet is a packet
- type Packet struct {
- PacketNumber protocol.PacketNumber
- PacketType protocol.PacketType
- Frames []wire.Frame
- Length protocol.ByteCount
- EncryptionLevel protocol.EncryptionLevel
- SendTime time.Time
- largestAcked protocol.PacketNumber // if the packet contains an ACK, the LargestAcked value of that ACK
- // There are two reasons why a packet cannot be retransmitted:
- // * it was already retransmitted
- // * this packet is a retransmission, and we already received an ACK for the original packet
- canBeRetransmitted bool
- includedInBytesInFlight bool
- retransmittedAs []protocol.PacketNumber
- isRetransmission bool // we need a separate bool here because 0 is a valid packet number
- retransmissionOf protocol.PacketNumber
- }
|