Phân tích cơ chế truyền lại và điều khiển luồng trong TCP?

Một phần của tài liệu Các bài thực hành mạng máy tính (Trang 42 - 44)

b) Ngắt phiên giao dịch TCP

6.2.3Phân tích cơ chế truyền lại và điều khiển luồng trong TCP?

Trả lời :

 Cơ chế truyền lại

Cho dù chúng ta thiết kế một mạng tót đến đâu,việc mất dữ liệu trong quá trình truyền là điều không thể tránh khỏi.Vì thế,giao thức TCP đã cung cấp các cơ chế để quản lý những segment bị mất và truyền lại chúng.Để hiểu rõ cơ chế truyền lại trong TCP chúng ta hãy xét ví dụ.

Ví dụ,nếu B nhận được các segment với sequence number từ 1500 đến 3000 và từ 3400 đến 3500,thì B sẽ gửi lại cho A ACK number sẽ là 3001,vì các segment từ 3001 đến 3399 không nhận được,khi A nhân được ACK bằng 3001 nó sẽ gửi lại các segment có sequence number từ 3001-3399.Nếu A không nhận được một ACK sau một khoảng thời gian qui định trước,nó sẽ quay trở lại ACK number đã nhận trước đó và truyền lại dữ liệu từ thời điểm này trở đi

 Điều khiển luồng

 Do khi truyền dữ liệu các thiết bị sẽ không xử lý với cùng tốc độ,có thể truyền nhanh- nhận chậm,làm mất dữ liệu,hoặc truyền chậm-nhận nhanh=>phải tăng tốc độ

truyền.Để giải quyết vấn đề này,để san bằng sự khác biệt giữa các thiết bị,TCP đã đưa ra cơ chế điều khiển luồng(Flow control).

 Thay đổi Window Size-cửa sổ trượt(Sliding Window).Siliding 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à widow size.Khi các tài nguyên mạng hay thiết 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 ACK sẽ được phản hồi thường xuyên hơn.

 Như trong hình vẽ,window size ban đầu là 3000.lúc đầu cả 2 máy đều gửi và nhận với window size này.Máy gởi gởi tiếp segment 3 và 4 từ byte 3001 đến 4501 và chờ ACK từ máy nhận.Vì lý do nghẽn tại máy nhận nên nó không nhận được segment 3.Biết

mình bị nghẽn mạng nên trong segment phản hổi nó trả lời với ACK =3001 và giảm kích thước window size xuống còn 1500.

 Sau một khoảng thời gian truyền mà không có segment nào bị mất hay các tài nguyên bị quá tải,máy nhận sẽ bắt đầu tăng window size.Nếu khả năng nhận của máy nhận hơn 3000 thì nó cũng thông báo cho máy gửi biết để tăng tốc độ gửi bằng cách tăng window size lên.Window size sẽ tiếp tục tăng đến khi có segment bị mất.

Một phần của tài liệu Các bài thực hành mạng máy tính (Trang 42 - 44)