16 31 Source Port (Cổng ch−ơng trình
8.5 Giao thức điều khiển truyền tin (TCP)
Dịch vụ chuyển dòng dữ liệu một cách tin t−ởng trong Internet do Giao thức Điều khiển truyền tin - Transmision Control Protocol (TCP) cung cấp. Điều quan trọng đầu tiên cần hiểu là: TCP là giao thức truyền thông, không phải là một ch−ơng trình phần mềm.
Sự khác biệt giữa giao thức và phần mềm thực hiện giao thức cũng t−ơng tự nh− sự khác biệt giữa định nghĩa ngôn ngữ lập trình và ch−ơng trình biên dịch (compiler). Bình th−ờng mọi ng−ời va chạm với phần mềm TCP hơn là va chạm với những chi tiết cụ thể của giao thức.
Vậy giao thức TCP cung cấp cụ thể những gì? TCP là một giao thức phức tạp, do vậy không có một trả lời đơn giản. Giao thức chỉ ra định dạng của dữ liệu và những xác nhận mà hai máy tính trao đổi để đạt đ−ợc sự truyền tin cậy, và cũng chỉ ra những thủ tục mà các máy tính sử dụng để đảm bảo là dữ liệu đến nơi chính xác. Giao thức chỉ ra cách để phần mềm TCP phân biệt các đích trên cùng một
máy tính, và cách mà các máy trao đổi để khôi phục từ những lỗi nh− mất hoặc lặp các gói tin. Giao thức cũng chỉ ra cách hai máy tính khởi đầu việc truyền dòng dữ liệu và cách chúng đồng ý với nhau khi kết thúc.
Hiểu những gì mà giao thức TCP không có cũng quan trọng. Mặc dù những chỉ dẫn TCP miêu tả cách các ch−ơng trình ứng dụng sử dụng giao thức TCP theo nghĩa chung, giao thức không miêu tả chi tiết về giao diện gi−a một ch−ơng trình ứng dụng và giao thức TCP. Điều này có nghĩa là, tài liệu của giao thức chỉ thảo luận những hoạt động mà giao thức TCP cung cấp, chứ không chỉ ra những thủ tục chính xác mà các ch−ơng trình ứng dụng cần gọi để truy cập các hoạt động. Lý do để phần giao diện của ch−ơng trình ứng dụng lại là do tính linh hoạt của TCP/IP. Các nhà lập trình th−ờng thực hiện TCP trong một hệ điều hành cụ thể, họ cần khai thác giao diện mà hệ điều hành cung cấp.
Do giao thức TCP giả thiết một chút về hệ truyền thông ở d−ới, giao thức TCP có thể đ−ợc sử dụng với nhiều dạng hệ thống chuyển gói tin khác nhau, bao gồm cả dịch vụ chuyển gói tin IP. Ví dụ, giao thức TCP có thể đ−ợc thực hiện trong các đ−ờng quay số điện thoại mạng cục bộ, mạng sợi quang tốc độ cao, hoặc mạng đ−ờng dài tốc độ thấp.