Bạn có thể tự hỏi tại sao UDP cung cấp một checksum ở nơi đầu tiên, như nhiều tầng liên kết giao thức (bao gồm các giao thức phổ biến của Ethernet) cũng cung cấp cho kiểm tra lỗi. Lý do là không có bảo đảm rằng tất cả các liên kết giữa các nguồn và đích cung cấp cho kiểm tra lỗi; có nghĩa là, một trong các liên kết có thể sử dụng một giao thức tầng liên kết không cung cấp các kiểm tra lỗi. Hơn nữa, ngay cả khi phân đoạn một cách chính xác được chuyển qua một liên kết, nó có thể rằng bit lỗi có thể được giới thiệu khi một phân đoạn được lưu trữ trong bộ nhớ của router. Cho rằng không liên kết bằng cách liên kết tin cậy phát hiện lỗi trong bộ nhớ, cũng không được đảm bảo, UDP phải cung cấp phát hiện lỗi tại tầng giao vận, trên cơ sở kết thúc – kết thúc, nếu dịch vụ chuyển dữ liệu cuối là cung cấp phát hiện lỗi. Đây là một ví dụ về các nguyên tắc tổ chức kỷ niệm cuối trong thiết kế hệ thống [Saltzer 1984], mà nói rằng kể từ khi chức năng nhất định (phát hiện lỗi, trong trường hợp này) phải được thực hiện trên cơ sở cuối: "chức năng được đặt ở các cấp thấp hơn có thể dự phòng hoặc ít giá trị so với chi phí cung cấp cho họ ở cấp độ cao hơn."
đang được dịch, vui lòng đợi..
