Giao thức TCP và UDP
Cả TCP và UDP đều phù hợp với lớp thứ tư trong mô hình OSI, là lớp truyền tải ngay trên lớp IP. TCP và UDP đều hỗ trợ truyền dữ liệu theo hai cách khác nhau, TCP là định hướng kết nối và UDP là kết nối ít hơn.
Trong việc vận chuyển các gói tin, có hai hạn chế chính, một là độ tin cậy và một hạn chế khác là độ trễ. Độ tin cậy được đảm bảo phân phối gói tin và độ trễ là phân phối gói tin kịp thời. Cả hai đều không thể đạt được đỉnh cao cùng một lúc nhưng có thể được tối ưu hóa.
Để bắt đầu giao tiếp dữ liệu giữa hai nút, người gửi phải biết IP của người nhận cũng như số cổng. Địa chỉ IP là để định tuyến gói tin và số cổng là để chuyển gói tin đến đúng người. Giải thích thêm về kịch bản này trong một ví dụ thực tế, hãy nghĩ về một môi trường phức hợp nhiều khu mua sắm và ai đó đã hướng dẫn bạn đến cửa hàng 30 (Là tiệm cắt tóc), Golden Plaza, No 21 Park Ave, để đến được địa điểm này, bạn chỉ cần biết Không 21 park avenue nhưng để nhận được dịch vụ từ quán rượu, bạn cần biết số cửa hàng là 30. Bạn có thể giả sử số 21 là địa chỉ IP và cửa hàng số 30 là cổng số.
Tương tự như trong mô hình giao tiếp dữ liệu và dịch vụ ứng dụng Các ứng dụng TCP lắng nghe số cổng để chấp nhận kết nối TCP. Tương tự như các ứng dụng UDP cũng lắng nghe số cổng để cung cấp dịch vụ UDP.
TCP:
được xác định trong RFC 793
TCP là giao thức kết nối định hướng đầu cuối đến đầu cuối đáng tin cậy để hỗ trợ truyền dữ liệu được đảm bảo. Từ cơ sở kết nối, TCP đảm bảo độ tin cậy. Một số tính năng chính của TCP là bắt tay 3 chiều (SYN, SYN-ACK, ACK), Phát hiện lỗi, Khởi động chậm, Kiểm soát luồng và Kiểm soát tắc nghẽn.
TCP là một cơ chế truyền tải đáng tin cậy, vì vậy nó sẽ được sử dụng ở những nơi bắt buộc phải gửi gói tin ngay cả trong trường hợp tắc nghẽn. Ví dụ điển hình cho các ứng dụng TCP và số cổng là dữ liệu FTP (20), FTP Control (21), SSH (222), Telnet (23), Mail (25), DNS (53), HTTP (80), POP3 (110), SNMP (161) và HTTPS (443). Đây là những ứng dụng TCP nổi tiếng.
UDP:
được xác định trong RFC 768
UDP (User Datagram Protocol) là một giao thức truyền tải đơn giản cung cấp dịch vụ không đáng tin cậy. Điều đó không có nghĩa là UDP sẽ không cung cấp dữ liệu nhưng không có cơ chế giám sát kiểm soát tắc nghẽn hoặc mất gói, v.v. Vì đơn giản nên nó tránh được việc xử lý chi phí tại giao diện mạng. Các ứng dụng thời gian thực chủ yếu sử dụng UDP bởi vì việc thả các gói sẽ thích hơn các gói bị trễ. Ví dụ điển hình là luồng phương tiện thoại qua IP.
Tóm tắt:
(1) TCP là định hướng kết nối và đáng tin cậy trong khi UDP là kết nối ít hơn và không đáng tin cậy.
(2) TCP cần xử lý nhiều hơn ở cấp giao diện mạng, trong khi không như trong UDP.
(3) TCP sử dụng, bắt tay 3 cách, kiểm soát tắc nghẽn, kiểm soát luồng và cơ chế khác để đảm bảo truyền đáng tin cậy.
(4) UDP chủ yếu được sử dụng trong các trường hợp trễ gói nghiêm trọng hơn mất gói. (Ứng dụng thời gian thực)