- Đầu tiên ta cộng các từ 16 bit trong header: Code:
Vậy ta mở file “packet.h” thêm khai báo header UDP vào: Code:
thích cho code thấy nản quá. Viết giải thích cho code có khi còn khó hơn viết code .
Giao thức UDP:
Tiếp theo, ta chuyển sang giao thức UDP, trong 3 giao thức ở lớp này (TCP, UDP và ICMP) thì UDP là giao thức đơn giản nhất, dễ viết nhất. UDP là giao thức đơn giản nhất, dễ viết nhất.
Trong chồng giao thức IP, nhiệm vụ của UDP là khi nhận 1 segment dữ liệu từ ứng dụng gửi xuống, nó sẽ gửi đi ngay đến địa chỉ IP và port được yêu cầu mà không cần đánh số thứ tự, bắt xuống, nó sẽ gửi đi ngay đến địa chỉ IP và port được yêu cầu mà không cần đánh số thứ tự, bắt tay thiết lập kết nối hay thậm chí không quan tâm đến việc dữ liệu đó có đến được đích hay không.
Header của giao thức UDP rất đon giản: chỉ gồm có 4 trường: port nguồn, port đích, chiều dài gói tin và checksum. gói tin và checksum.
Trong thực tế, UDP được sử dụng để gửi đi các dữ liệu mà yêu cầu về độ trễ nhỏ quan trọng hơn yêu cầu về độ tin cậỵ Ví dụ như dữ liệu của các video stream, audio stream, các báo hiệu nhanh, yêu cầu về độ tin cậỵ Ví dụ như dữ liệu của các video stream, audio stream, các báo hiệu nhanh, hay đơn giản là tương tác trong các game onlinẹ
Vậy ta mở file “packet.h” thêm khai báo header UDP vào:Code: Code:
//--- ---
//Cau truc UDP header struct ntUDPHeader {
unsigned int srcPort; unsigned int desPort; unsigned int Len; unsigned int Checksum;
};
#define UDP_HEADER_LEN 8