knowledge/technology/internet/QUIC.md
2023-12-04 11:02:23 +01:00

29 lines
No EOL
1.9 KiB
Markdown

---
obj: concept
wiki: https://wikipedia.org/wiki/QUIC
rfc: https://datatracker.ietf.org/doc/html/rfc9000
website: https://quicwg.org
---
# QUIC
QUIC is a transport layer protocol developed by Google to improve the performance of web applications by reducing latency. It operates over the User Datagram Protocol ([UDP](UDP.md)) and is designed to provide a more efficient alternative to the traditional Transmission Control Protocol ([TCP](TCP.md)).
## Key Features
### 1. **Multiplexing:**
- QUIC supports multiplexing multiple streams of data within a single connection. This enables parallel processing of data, reducing latency and improving overall performance.
### 2. **Low Latency:**
- QUIC is designed to minimize connection establishment and data transfer latency. It achieves this by combining the initial connection handshake with the first data transfer.
### 3. **Adaptive Congestion Control:**
- QUIC includes built-in congestion control mechanisms that adapt to network conditions, optimizing data transfer rates while avoiding congestion.
### 4. **Connection Migration:**
- QUIC allows for seamless connection migration between different network interfaces, such as switching between Wi-Fi and cellular data, without disrupting the user experience.
### 5. **Forward Error Correction:**
- QUIC incorporates forward error correction (FEC) to recover lost or corrupted packets without the need for retransmission. This enhances reliability in unreliable network conditions.
## QUIC Components
### 1. **QUIC Transport:**
- Handles connection establishment, multiplexing, and reliable, in-order delivery of data.
### 2. **QUIC Crypto:**
- Responsible for securing the QUIC connection using encryption and authentication. It is based on TLS (Transport Layer Security).
### 3. **QUIC Loss Detection and Congestion Control:**
- Manages congestion control and packet loss recovery to ensure optimal data transfer rates.