Udp là gì – Giao thức UDP là gì

Udp là gì – So sánh UDP và TCP

Tìm hiểu về giao thức Udp

Udp là gì

Trong mạng máy tính, UDP là chữ viết tắt của cụm từ tiếng anh là User Datagram Protocol. Cùng với TCP là hai giao thức cốt lõi nằm ở lớp vận chuyển thuộc giao thức TCP/IP. UDP có khả năng gửi tin đến các máy chủ khác trong mạng giao thức Internet. Tin do UDP gửi được gọi là Datagram. Khi sử dụng giao thức UDP, có thể thiết lập kênh truyền thông hay đường dẫn dữ liệu không cần phải có các giao tiếp trước đó.

UDP sử dụng cơ chế tối giản của mô hình giao tiếp không kết nối (hay còn gọi là chế độ CL – gửi dữ liệu từ đầu cuối này đến đầu cuối khác mà không hỏi đầu cuối ấy đã sẵn sàng hay chưa hoặc còn được gọi là mô hình bắt tay).

UDP cung cấp khả năng tổng kiểm tra tính toàn vẹn của dữ liệu và số cổng để giải quyết các vấn đề khác nhau tại nguồn và đích của Datagram.

Giao thức UDP tiếng anh là gì
Giao thức UDP tiếng anh là gì

Các đặc tính của UDP

Định hướng giao dịch, không đảm bảo việc phân phối và bảo vệ trùng lặp.

Sử dụng mô hình truyền đơn giản, không sử dụng các hộp thoại bắt tay để đảm bảo tính tin cậy, trật tự và tính vẹn toàn dữ liệu.

Cung cấp Datagram.

Không có độ trễ.

Cấu trúc của UDP

UDP được chia thành phần gồm tiêu đề (header) và dữ liệu (Data).

Cổng nguồn (Source Port) Cổng đích (Destination Port)
Độ dài (Length) Checksum
Data

Tiêu đề UDP

Tiêu đề có 4 trường gồm: cổng nguồn, cổng đích, độ dài, checksum, mỗi trường chiếm 2 byte (16 bits), cụ thể:

Cổng nguồn (Source Port)

Gồm 16 bits, trường này xác định địa chỉ cổng của người gửi, cũng như nơi để nhận trả lời nếu cần. Khi được dùng có giá trị là 1, khi không dùng có giá trị là 0.

Cổng đích (Destination Port)

Gồm 16 bits, trường này dùng để xác định cổng của người gửi.

Độ dài (Length)

Gồm 16 bits, trường này chỉ định độ dài của tiêu đề UDP và dữ liệu đóng gói của UDP. Độ dài tối thiểu của tiêu đề là 8 bytes. Độ dài lớn nhất của một gói dữ liệu Datagram trên lý thuyết là 65,535 bytes (trong đó 8 byte tiêu đề – 65,527 bytes của gói dữ liệu), ở giao thức IPv4 độ dài giới hạn là 65,507 bytes (trong đó 65,535 byte gói dữ liệu − 8 byte tiêu đề UDP − 20 byte IP header), ở giao thức Ipv6 là 65,535 bytes.

Checksum là gì 

Là trường được dùng để kiểm tra lỗi của tiêu đề và dữ liệu của UDP. Trường này không bắt buộc phải có ở IPv4 nhưng bắt buộc ở IPv6. Trường mang giá trị 0 nếu không được sử dụng.

Dữ liệu (Data) tùy thuộc vào ở giao thức IPv4 hay IPv6 mà có độ dài khác nhau (đã được liệt kê ở phần độ dài – length).

Các ứng dụng sử dụng giao thức UDP thường sẵn sàng chấp nhận mất mát, lỗi hoặc trùng lặp. Một số ứng dụng sẽ có thể thêm các cơ chế để tăng độ tin cậy ở mức thô sơ vào các lớp ứng dụng khi cần. Thậm chí có thể nói chế độ tin cậy sẽ cản trở giao thức UDP thực hiện nhiệm vụ của nó. Vì hầu hết những ứng dụng dùng UDP được thiết kế để xử lý mất gói tín hiệu thường xuyên. Do đó chỉ gây ra suy giảm tín hiệu, thay vì độ trễ lớn ví dụ như:

DNS (Domain Name Systerm)

SNMP (Simple Network Management Protocol)

RIP (Routing Information Protocol)

DHCP (Dynamic Host Configuaration Protocol)… được áp dùng khi cần truyền phát trực tiếp hoặc trò chơi trực tuyến hay thoại qua IP (VoIP).

Udp và Tcp
Udp và Tcp

So sánh UDP và TCP

Độ tin cậy: TCP có độ tin cậy cao hơn hẳn UDP.

Thứ tự các gói tin

TCP có sắp xếp thứ tự các gói tin trong khi UDP thì không, khi ai tin nhắn cùng gửi đến 1 người nhận ở giao thức UDP sẽ không thể đoán được thứ tự của chúng.

Kích thước

TCP nặng hơn UDP vì TCP phải cần có ba gói để thiết lập kết nối với bất kỳ dữ liệu người dùng nào. Trong khi đó UDP không cso thứ tự tin nhắn, không có kết nối theo dõi.

Dạng dữ liệu

TCP gửi dữ liệu dưới dạng luồng byte còn UDP gửi đi Datagram.

UDP có Multicast

Một chế độ hoạt động đa hướng được hỗ trợ, theo đó một gói datagram có thể được tự động định tuyến mà không bị trùng lặp với số lượng lớn người đăng ký, TCP không có chức năng này.