Định nghĩa
UDP (User Datagram Protocol) là một giao thức lớp truyền tải cốt lõi trong bộ giao thức TCP/IP. Nó cung cấp một dịch vụ truyền thông tối thiểu, không kết nối, không có đảm bảo độ tin cậy, sắp xếp hoặc cơ chế kiểm soát luồng.
Đặc điểm giao thức
- Không kết nối: Không yêu cầu bắt tay trước khi truyền dữ liệu.
- Không đáng tin cậy: Không có xác nhận đã nhận gói hoặc truyền lại.
- Chi phí thấp: Tiêu đề 8 byte so với tiêu đề 20 byte của TCP.
- Không kiểm soát tắc nghẽn: Các gói có thể bị mất dưới lưu lượng truy cập lớn.
- Không trạng thái: Mỗi gói dữ liệu được xử lý độc lập.
Cấu trúc tiêu đề UDP (8 byte)
0 7 8 15 16 23 24 31
+--------+--------+--------+--------+
| Source Port | Destination Port|
+--------+--------+--------+--------+
| Length | Checksum |
+--------+--------+--------+--------+
| Data... |
+----------------------------------+
Các ứng dụng phổ biến
- Dịch vụ thời gian thực: VoIP (ví dụ: SIP/RTP), truyền phát video
- Truy vấn DNS: Giải quyết nhanh chóng với các trao đổi gói đơn
- Trò chơi trực tuyến: Cập nhật vị trí người chơi nhạy cảm với độ trễ
- Dữ liệu IoT/Cảm biến: Báo cáo trạng thái định kỳ khi mất dữ liệu có thể chấp nhận được
- Đa hướng/Phát sóng: Truyền tải một-đến-nhiều hiệu quả
Ưu điểm so với TCP
Tính năng | UDP | TCP |
---|---|---|
Tốc độ | Nhanh hơn (không bắt tay/ACK) | Chậm hơn (thiết lập kết nối) |
Độ tin cậy | Không (cố gắng hết sức) | Đảm bảo gửi |
Sắp xếp | Không bắt buộc trình tự | Trình tự luồng byte nghiêm ngặt |
Kiểm soát tắc nghẽn | Không | Điều chỉnh kích thước cửa sổ linh hoạt |
Cân nhắc về hiệu suất
- Mất gói: Có thể chấp nhận được trong các ứng dụng thời gian thực (ví dụ: mất gói VoIP)
- Xử lý độ trễ: Ứng dụng phải tự triển khai bộ đệm
- Nhận biết MTU: Các gói dữ liệu lớn có thể bị phân mảnh ở lớp IP
- Checksum tùy chọn: IPv4 cho phép checksum bằng 0 (rủi ro dữ liệu hỏng)
Bạn Cũng Có Thể Thích