Lớp giao vận chịu trách nhiệm chuyển phát toàn bộ thông báo từ tiến trình-tới- tiến trình. Tại lớp này có hai giao thức là TCP và UDP. Mỗi giao thức cung cấp một loại dịch vụ giao vận: hướng kết nối và phi kết nối.
a. Giao thức TCP
Một giao thức lớp giao vận thường có nhiều chức năng. Một trong số đó là tạo một truyền thông tiến trình-tới-tiến trình. Để thực hiện điều này, TCP sử dụng cổng. Một chức năng khác của giao thức lớp giao vận là tạo một cơ chế điều khiển luồng và điều khiển lỗi ở mức giao vận. TCP sử dụng giao thức cửa sổ trượt để thực hiện điều khiển luồng. Nó sử dụng gói xác nhận, thời gian chờ và truyền lại để thực hiện điều khiển lỗi.
TCP là một giao thức hướng kết nối. Nó có trách nhiệm thiết lập một kết nối với phía nhận, chia luồng dữ liệu thành các đơn vị có thể vận chuyển, đánh số chúng và sau đó gửi chúng lần lượt.
Điều khiển luồng
Điều khiển luồng định nghĩa lượng dữ liệu mà nguồn có thể gửi trước khi nhận một xác nhận từ đích. Trong trường hợp đặc biệt, giao thức lớp giao vận có thể gửi một byte dữ liệu và đợi xác nhận trước khi gửi byte tiếp theo. Nhưng nếu làm như vậy, quá trình gửi sẽ diễn ra rất chậm. Nếu dữ liệu phải đi qua đoạn đường dài thì nguồn sẽ ở trạng thái rỗi trong khi đợi xác nhận.
Trong trường hợp đặc biệt khác, giao thức lớp giao vận có thể gửi tất cả dữ liệu nó có mà không quan tâm tới xác nhận. Làm như vậy sẽ tăng tốc độ truyền, nhưng có thể làm tràn ngập trạm đích (trạm đích không xử lý kịp). Bên cạnh đó, nếu một phần dữ liệu bị mất, bị nhân đôi, sai thứ tự hoặc bị hỏng thì trạm nguồn sẽ không biết.
TCP sử dụng một giải pháp cho cả hai trường hợp đặc biệt này. Nó định nghĩa một cửa sổ, đặt cửa sổ này lên bộ đệm gửi và chỉ gửi lượng dữ liệu bằng kích thước cửa sổ.
Điều khiển lỗi
TCP là một giao thức giao vận tin cậy. Ngoài điều khiển luồng, TCP còn điều khiển lỗi. Điều khiển lỗi gồm các cơ chế phát hiện phân đoạn bị hỏng, bị mất, sai thứ tự hoặc nhân đôi. Nó cũng gồm cơ chế sửa lỗi sau khi chúng được phát hiện.
Phát hiện lỗi trong TCP được thực hiện thông qua việc sử dụng ba công cụ đơn giản: tổng kiểm tra, xác nhận và THỜI GIAN CHỜ(time-out). Mỗi phân đoạn có chứa một trường tổng kiểm tra để phát hiện phân đoạn lỗi. Nếu phân đoạn lỗi, nó sẽ bị máy thu bỏ đi. TCP sử dụng phương pháp xác nhận để thông báo sự nhận các gói đã tới đích mà không hỏng. Không có xác nhận phủ định (xác nhận gói hỏng) trong TCP. Nếu một phân đoạn không được xác nhận trước khi hết hạn thì nó được xem như bị hỏng hoặc bị mất trên đường đi.
Cơ chế sửa lỗi trong TCP cũng rất đơn giản. TCP nguồn đặt một bộ định thời cho mỗi phân đoạn được gửi đi. Bộ định thời được kiểm tra định kỳ. Khi nó tắt, phân đoạn tương ứng được xem như bị hỏng hoặc bị mất và nó sẽ được truyền lại.
b. Giao thức UDP
UDP (User Datagram protocol) là một giao thức truyền thông phi kết nối và không tin cậy, được dùng thay thế cho TCP ở trên mạng IP theo yêu cầu của ứng dụng. UDP có trách nhiệm truyền các thông báo từ tiến trình-tới-tiến trình, nhưng không cung cấp các cơ chế giám sát và quản lý.
UDP cũng cung cấp cơ chế gán và quản lý các số cổng để định danh duy nhất cho các ứng dụng chạy trên một trạm của mạng. Do ít chức năng phức tạp nên UDP có xu thế hoạt động nhanh hơn so với TCP. Nó thường được dùng cho các ứng dụng không đòi hỏi độ tin cậy cao trong giao vận. Khuôn dạng của UDP datagram có các vùng tham số đơn giản hơn nhiều so với gói tin TCP.