QUẢN LÝ CÁC PHIÊN GIAO DỊCH TCP

Một phần của tài liệu Giáo trình quản trị hạ tầng mạng phần cứng căn bản Truyền thông và mạng máy tính (Trang 53 - 56)

CHƯƠNG 1 : MƠ HÌNH TCP/IP

1.3.6 QUẢN LÝ CÁC PHIÊN GIAO DỊCH TCP

Sắp xếp lại các segment

Khi các ứng dụng, dịch vụ sử dụng giao thức vận chuyển là TCP thì các segment có thể đến đích khơng đúng thứ tự như ban đầu. Để người nhận đọc và hiểu được thông điệp của người gửi, tại máy nhận, các segment này phải được tổng hợp sắp xếp lại đúng thứ tự ban đầu. Để đạt được mục tiêu này, TCP đưa ra cột segment number trong header của mỗi segment.

Khi bắt đầu thiết lập kết nối, TCP khởi tạo một giá trị ban đầu cho sequence number. Giá trị này biểu diễn giá trị bắt đầu cho segment trong phiên giao dịch này và nó được dùng để theo dõi các segment dữ liệu được truyền và nhận. Dựa vào giá trị này người nhận sẽ phản hồi lại cho người gửi và người gửi biết được segment nào bị lỗi và gửi lại.

Hình 23 cho biết: tại máy gửi dữ liệu chia làm 6 segment và được đánh số thứ tự từ 1 đến 6. Các segment này có thể đi theo nhiều đường khác nhau để đến đích. Do đó, máy nhận được các segment theo thứ tự 1, 2, 6, 5, 4, 3. TCP dựa vào sequence number sắp xếp lại các segment và chuyển đến ứng dụng đích.

Hình 23: Tại đích, các TCP segment được sắp xếp lại

Tiến trình nhận sẽ đặt dữ liệu từ một segment vào một vùng đệm nhận (receiving bufer). Các segment được đặt thứ tự theo sequence number thích hợp và chuyển đến lớp Application khi đã được tổng hợp. Bất kỳ segment nào đến với sequence number không liên tục sẽ được giữ lại để xử lý sau. Sau đó, khi các segment bị lỗi đã được truyền lại, những segment này được tiếp tục xử lý.

Xác nhận với Windowing

Tính năng của TCP là bảo đảm rằng tất cả các segment đều đến được đích của nó. Để đạt được điều này TCP đưa ra rất nhiều cơ chế, một trong những cơ chế đó là báo nhận (acknowledgement). Điều này có nghĩa là máy nhận phải phản hồi cho máy gửi biết được rằng đã nhận được những segment nào.

Sequence number và acknowledgement number trong TCP header là hai giá trị được dùng trong quá trình xác nhận. Sequence number chỉ ra số byte đã được truyền bao gồm các byte trong segment hiện hành. Sau khi nhận được segment, TCP phản hồi một giá trị acknowledgement number bằng giá trị sequence number của segment vừa được cộng với 1. Giá trị này chỉ ra số byte kế tiếp mà người nhận đang mong chờ. Khi nhận được acknowledgement number này, máy gửi tiếp tục gửi từ byte này trở đi.

Hình 24: Acknowledgement và Window size

Giao thức TCP cho phép truyền nhiều segment liên tiếp đến máy nhận trước khi chờ nhận một phản hồi từ máy nhận. Xác nhận này chứa một số ACK dựa trên tổng số byte đã được nhận trong phiên này. Số lượng segment mà máy gửi được phép gửi trước khi nhận được một phản hồi từ máy nhận được gọi là kích thước cửa sổ (window size). Window size là một cột trong TCP header. Giá trị ban đầu của window size được quyết định trong lúc thiết lập session thông qua three-way handshake.

Điều khiển luồng (Flow Control)

Điều khiển luồng là một trong những chức năng được xem là “thông minh”. Một thiết bị trên mạng có những khả năng riêng về bộ nhớ, băng thông và các tài nguyên khác. Do đó, khi truyền dữ liệu các thiết bị sẽ không xử lý với cùng một tốc độ. Có thể truyền nhanh – nhận chậm, chính điều này làm mất dữ liệu. Hay truyền chậm – nhận nhanh, lúc này tại sao khơng phải tăng tốc độ truyền. Do đó, để giải quyết những vấn đề này, TCP đưa ra một cơ chế điều khiển luồng. Cơ chế này giúp cho máy gửi và máy nhận biết được tình trạng của nhau qua kênh giao tiếp. Sau đó, hai máy thiết lập một tốc độ truyền sao cho đạt được sự thống nhất ở cả hai phía.

Thay đổi window size – Cửa sổ trượt (Sliding window)

Sliding window là một kỹ thuật mà TCP sử dụng để điều khiển luồng với tham số đại diện là window size. Khi các tài nguyên mạng hay thiết bị bị quá tải. TCP có thể giảm

window size xuống để tránh mất dữ liệu và phải gửi lại. Lúc này các acknowledgement sẽ phản hồi thường xuyên hơn.

Hình 25: Điều khiển luồng

Một phần của tài liệu Giáo trình quản trị hạ tầng mạng phần cứng căn bản Truyền thông và mạng máy tính (Trang 53 - 56)

Tải bản đầy đủ (PDF)

(184 trang)