skills:network
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| skills:network [2026/06/17 13:25] – [Application-Layer Protocols] phong2018 | skills:network [2026/06/17 13:29] (current) – phong2018 | ||
|---|---|---|---|
| Line 121: | Line 121: | ||
| **Purpose: | **Purpose: | ||
| - | ==== Transport-layer protocols.==== | + | ^ Feature ^ TCP ^ UDP ^ |
| + | | Full Name | Transmission Control Protocol | User Datagram Protocol | | ||
| + | | Connection Type | Connection-oriented | Connectionless | | ||
| + | | Reliability | Reliable delivery with ACK and retransmission | Best effort, no delivery guarantee | | ||
| + | | Message Ordering | Preserves packet order | No ordering guarantee | | ||
| + | | Error Recovery | Automatic retransmission | No retransmission | | ||
| + | | Flow Control | Yes (sliding window) | No | | ||
| + | | Congestion Control | Yes | No | | ||
| + | | Overhead | Higher | Lower | | ||
| + | | Latency | Higher | Lower | | ||
| + | | Speed | Slower due to reliability mechanisms | Faster due to minimal overhead | | ||
| + | | Header Size | 20–60 bytes | 8 bytes | | ||
| + | | Communication Style | Continuous connection between client and server | Independent datagrams | | ||
| + | | Typical Use Cases | Web applications, | ||
| - | ==== TCP ==== | + | ^ Common Protocols and Applications ^ Transport Layer ^ |
| + | | HTTP/1.1 | TCP | | ||
| + | | HTTP/2 | TCP | | ||
| + | | WebSocket | TCP | | ||
| + | | Redis (RESP) | TCP | | ||
| + | | RabbitMQ (AMQP) | TCP | | ||
| + | | Apache Kafka Protocol | TCP | | ||
| + | | SMTP | TCP | | ||
| + | | FTP | TCP | | ||
| + | | SSH | TCP | | ||
| + | | DNS | UDP (primarily), | ||
| + | | VoIP | UDP | | ||
| + | | Online Games | UDP | | ||
| + | | WebRTC | UDP | | ||
| + | | QUIC | UDP | | ||
| + | | HTTP/3 | QUIC over UDP | | ||
| - | * Connection-oriented | + | ^ Summary ^ TCP ^ UDP ^ |
| - | * Reliable delivery | + | | Main Goal | Reliability and correctness | Speed and low latency | |
| - | * Ordered messages | + | | Best For | Data that must not be lost | Data that must arrive quickly | |
| - | * Retransmission support | + | | Example | File download, API requests, email | Video call, live stream, multiplayer game | |
| - | + | | Real-world Analogy | Registered mail with delivery | |
| - | Used by: | + | |
| - | + | ||
| - | * HTTP/1.1 | + | |
| - | * HTTP/2 | + | |
| - | * WebSocket | + | |
| - | * Redis | + | |
| - | * RabbitMQ | + | |
| - | * Kafka | + | |
| - | + | ||
| - | ==== UDP ==== | + | |
| - | + | ||
| - | * Connectionless | + | |
| - | * Faster | + | |
| - | * No delivery | + | |
| - | + | ||
| - | Used by: | + | |
| - | + | ||
| - | * DNS | + | |
| - | * VoIP | + | |
| - | * Online games | + | |
| - | * WebRTC | + | |
| - | * QUIC (HTTP/3) | + | |
| ===== Layer 3: Network ===== | ===== Layer 3: Network ===== | ||
skills/network.txt · Last modified: by phong2018
