Tải bản đầy đủ (.doc) (80 trang)

tìm hiểu giao thức quick vegas, tcp westwood và rovegas trên mạng internet

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.09 MB, 80 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KHOA HỌC HUẾ
TRẦN ĐÌNH NGỌC THANH
TÌM HIỂU GIAO THỨC QUICK VEGAS, TCP WESTWOOD
VÀ ROVEGAS TRÊN MẠNG INTERNET
CHUYÊN NGÀNH : KHOA HỌC MÁY TÍNH
MÃ SỐ : 60.48.01
LUẬN VĂN THẠC SĨ KHOA HỌC
CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. VÕ THANH TÚ
Huế, 2013
LỜI CAM ĐOAN
Tôi xin cam đoan:
Những nội dung trong luận văn này là do tôi thực hiện dưới sự
hướng dẫn trực tiếp của PGS.TS. Võ Thanh Tú.
Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và
trung thực tên tác giả, tên công trình, thời gian, địa điểm công bố.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian
lận, tôi xin chịu hoàn toàn trách nhiệm.
Tác giả
Trần Đình Ngọc Thanh
Đầu tiên, em xin chân thành cảm ơn thầy Võ Thanh Tú
quan tâm giúp đỡ, chỉ bảo kịp thời và đã tận tình hướng dẫn
em trong việc hoàn thành luận văn này.
Em xin gửi lời cảm ơn Quý Thầy Cô trong khoa Công
nghệ thông tin trường Đại học Khoa học Huế, đã cung cấp,
truyền đạt kiến thức cho em trong suốt quá trình học tập tại
trường.
Qua đây, em cũng xin gửi lời cảm ơn đến Phòng đào tạo


sau đại học thuộc Trường Đại học Khoa học Huế đã hỗ trợ và
tạo điều kiện thuận lợi cho chúng em trong suốt khóa học.
Xin chân thành cảm ơn các anh chị em lớp cao học Khoa
học máy tính khoá 2011-2013 và các bạn bè đã luôn bên
cạnh, động viên, khuyến khích trong suốt thời gian học tập và
thực hiện đề tài.
Cuối cùng, em xin gửi cảm ơn đến gia đình, chính vì có
sự hỗ trợ từ phía gia đình mà em yên tâm học tập tốt.
Xin chân thành cảm ơn!
Huế, tháng 10 năm 2013
Tác giả
Trần Đình Ngọc Thanh
MỤC LỤC
Trang
Trang phụ bìa
Lời cam đoan
Lời cảm ơn
Mục lục
Danh mục các chữ viết tắt
Danh mục các bảng
Danh mục các hình vẽ
MỞ ĐẦU 1
1. Lí do chọn đề tài 1
2. Mục đích nghiên cứu 1
3. Phương pháp nghiên cứu 2
4. Ý nghĩa khoa học và thực tiễn của đề tài 2
5. Cấu trúc của luận văn 2
CHƯƠNG 1 4
TỔNG QUAN VỀ ĐIỀU KHIỂN TRÁNH TẮC NGHẼN 4
1.1.Nguyên nhân tắc nghẽn 4

1.2.Các cơ chế điều khiển tắc nghẽn 6
1.2.1. Cơ chế bắt đầu chậm 7
1.2.2. Cơ chế tránh tắc nghẽn 8
1.2.3. Cơ chế phát lại nhanh 9
1.2.4. Cơ chế phục hồi nhanh 10
1.3.Các hạn chế và yếu tố ảnh hưởng đến TCP 11
1.3.1.Hạn chế của TCP 11
1.3.2. Các yếu tố ảnh hưởng đến TCP 11
1.4.Một số cải tiến của TCP đã được đề xuất 14
1.4.1.TCP Tahoe 14
1.4.2.TCP Reno 14
1.4.3.TCP Vegas 16
1.5.Kết luận chương 1 19
CHƯƠNG 2 20
CƠ CHẾ ĐIỀU KHIỂN TẮC NGHẼN CỦA GIAO THỨC TCP
WESTWOOD, ROVEGAS, QUICK VEGAS TRÊN MẠNG INTERNET. .20
2.1. Giao thức TCP Westwood 20
2.1.1. Cơ chế hoạt động 21
2.1.2. Thuật toán ước tính băng thông 22
2.1.3. Thuật toán tính ngưỡng ssthresh 27
2.1.3.1. Thuật toán sau khi nhận n ACK trùng lặp 28
2.1.3.2. Thuật toán sau khoảng thời gian timeout 29
2.2. Giao thức RoVegas 32
2.2.1. Cơ chế hoạt động 32
2.2.2. Phân tích trên Vegas 33
2.2.2.1. Mạng đối xứng ( k ≤ 1 ) 34
2.2.2.2. Mạng bất đối xứng ( k > 1 ) 35
2.2.3. Phân tích trên RoVegas 36
2.2.3.1. Mạng đối xứng (k<=1) 36
2.3. Giao thức QuickVegas 38

2.3.1. Cơ chế hoạt động 38
2.3.2. Giai đoạn khởi động chậm 39
2.3.3. Giai đoạn tránh tắc nghẽn 41
2.4. Kết luận chương 2 43
CHƯƠNG 3 45
MÔ PHỎNG VÀ ĐÁNH GIÁ HIỆU NĂNG MỘT SỐ GIAO THỨC 45
3.1.Đánh giá mô phỏng 45
3.1.1.Giả thiết và thiết lập thông số ban đầu cho quá trình mô phỏng 45
3.1.2.Phân tích kết quả TCP Westwood 46
3.1.2.1.Kịch bản 1 46
3.1.2.2.Kịch bản 2 49
3.2.Kết luận chương 3 52
Phân tích mô phỏng vẫn còn hạn chế là chưa đánh giá sâu về thông lượng trên
đường truyền, đánh giá về giá trị ước tính băng thông BWE của TCP
Westwood để làm sáng tỏ bản chất hoạt động của TCP Westwood 52
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53
PHỤ LỤC
DANH MỤC CÁC TỪ VIẾT TẮT
Cụm từ
viết tắt
Cụm từ đầy đủ tương
ứng dạng tiếng Anh
Cụm từ đầy đủ tương ứng
dạng tiếng Việt
ACK Acknowledgment Gói tin hồi đáp
BaseRTT Base Round Trip Time
Thời gian khứ hồi cực tiểu
của kết nối
CWND Congestion Window Cửa sổ tắc nghẽn
FIN Final Cuối cùng

IP Internet Protocol Giao thức Internet
NCP Network Control Protocol Giao thức điều khiển mạng
NewVegas
Giao thức điều khiển
truyền thông TCP NewVegas
OMNeT++
Objective Modular Network
Testbed in C++
Phần mềm mô phỏng mạng
PC Personal Computer Máy tính cá nhân
F Fairness Độ cân bằng thông lượng
FTP File Transport Protocol
Reno
Giao thức điều khiển
truyền thông TCP Reno
Router Bộ định tuyến
RTT Round Trip Time Thời gian khứ hồi của kết nối
RWND Receiver Window Cửa sổ trạm nhận gói tin
SMSS Sent Maximum Segment Size Kích thước tối đa gói tin đã gửi
Ssth
Giá trị ngưỡng xác định của
cửa sổ tắc nghẽn
T Throughput Thông lượng
TCP Transmission Control Protocol
Giao thức điều khiển
truyền thông
Time out Quá thời gian cho phép
Vegas
Giao thức điều khiển
truyền thông TCP-Vegas

NED Network Control Protocol Ngôn ngữ mô tả mô hình mạng
BDP Bandwidth-Delay Product Tính bằng tích số của độ rộng
băng thông và trễ đường truyền
BWE Bandwidth Estimation Giá trị ước tính băng thông
DANH MỤC CÁC BẢNG
Số hiệu
bảng
Tên bảng Trang
2.1
Bảng 2.1: Kích thước cửa sổ tắc nghẽn cho Vegas và Quick
Vegas ở mỗi vòng RTT
Error:
Referen
ce
source
not
found
3.1 Bảng 3.1: Số gói tin nhận ở kịch bản 1
Error:
Referen
ce
source
not
found
3.2 Bảng 3.2: Mất gói tin ở hàng đợi
Error:
Referen
ce
source
not

found
3.3 Bảng 3.3: Số gói tin còn ở hàng đợi sau thời gian giả lập 1s
Error:
Referen
ce
source
not
found
3.4 Bảng 3.4: Số gói tin nhận ở kịch bản 1 Error:
Referen
ce
source
3.5 Bảng 3.5: Mất gói tin ở hàng đợi
Error:
Referen
ce
source
not
found
3.6 Bảng 3.6: Số gói tin còn ở hàng đợi sau thời gian giả lập 1s
Error:
Referen
ce
source
not
found
DANH MỤC CÁC HÌNH VẼ
Số hiệu
hình vẽ
Tên hình vẽ Trang

1.1 Hình 1.1: Sơ đồ biến đổi lưu lượng của TCP
Error:
Referen
ce
source
not
found
1.2 Hình 1.2: Cơ chế bắt đầu chậm, kích thước cửa sổ tăng theo hàm mũ
Error:
Referen
ce
source
not
found
1.3 Hình 1.3: Cơ chế bắt đầu chậm và tránh tắc nghẽn
Error:
Referen
ce
source
not
found
1.4 Hình 1.4: Cơ chế truyền lại nhanh dựa trên duplicate ACKs
Error:
Referen
ce
source
not
found
1.5 Hình 1.5: Cơ chế phục hồi nhanh
Error:

Referen
ce
source
not
found
1.6 Hình 1.6: Mô hình kết nối yêu cầu - đáp (request-response) Error:
1.7 Hình 1.7: Sơ đồ hoạt động của TCP Tahoe
Error:
Referen
ce
source
not
found
1.8 Hình 1.8: Sơ đồ điều khiển tắc nghẽn của TCP Reno
Error:
Referen
ce
source
not
found
2.1 Hình 2.1: Sơ đồ điều khiển tắc nghẽn của TCP Westwood
Error:
Referen
ce
source
not
found
2.2 Hình 2.2: Mô hình phân tích RoVegas
Error:
Referen

ce
source
not
found
2.3 Hình 2.3: Kích thước cửa sổ và độ dài hàng đợi nút cổ chai của
Vegas với k=2
Error:
Referen
ce
source
not
2.4
Hình 2.4: Kích thước cửa sổ và độ dài hàng đợi nút cổ chai của
RoVegas với k=2
Error:
Referen
ce
source
not
found
2.5 Hình 2.5: Điều khiển cửa sổ của TCP Vegas
Error:
Referen
ce
source
not
found
2.6
Hình 2.6: Diễn biến cửa sổ tắc nghẽn của Vegas và Quick Vegas
trong giai đoạn khởi động chậm

Error:
Referen
ce
source
not
found
3.1 Hình 3.1: Mô hình phân tích mô phỏng TCP Westwood
Error:
Referen
ce
source
not
found
3.2 Hình 3.2: Quá trình mô phỏng TCP Westwood và UDP
Error:
Referen
ce
source
not
found
3.3 Hình 3.3: Kết thúc quá trình mô phỏng kịch bản 1 Error:
Referen
ce
3.4
Hình 3.4: Biểu đồ kích thước cửa sổ TCP Westwood thay đổi
theo thời gian
Error:
Referen
ce
source

not
found
3.5 Hình 3.5: Biểu đồ đo thời gian RTT
Error:
Referen
ce
source
not
found
3.6 Hình 3.6: Quá trình mô phỏng TCP Westwood và TCP Reno
Error:
Referen
ce
source
not
found
3.7 Hình 3.7: Kết thúc quá trình mô phỏng kịch bản 2
Error:
Referen
ce
source
not
found
3.8
Hình 3.8: Biểu đồ kích thước cửa sổ TCP Westwood thay đổi
theo thời gian
Error:
Referen
ce
source

not
found
3.9 Hình 3.9: Biểu đồ đo thời gian RTT Error:

1
MỞ ĐẦU
1. Lí do chọn đề tài
Sự phát triển không ngừng các dịch vụ truyền thông đa phương tiện
trên mạng máy tính hiện nay đòi hỏi cơ sở hạ tầng và công nghệ truyền thông
cần phải đáp ứng để đảm bảo chất lượng dịch vụ. Điều này đồng nghĩa với
việc nghiên cứu nhằm nâng cao kỷ thuật truyền thông, đặc biệt là những cải
tiến về cơ chế điều khiển tránh tắc nghẽn của giao thức TCP đã đem lại hiệu
năng mạng rõ rệt.
Giao thức TCP Vegas là một trong những giao thức cải tiến của giao
thức TCP được Brakmo đề xuất thuật toán vào năm 1994. Nó là một phiên
bản cải tiến của giao thức TCP Reno và có thể đạt được thông lượng cao hơn
từ 37% đến 71% so với TCP Reno trên Internet. Tuy nhiên, hiện nay TCP
Vegas vẫn chưa được sử dụng rộng rãi trên Internet vì vẫn còn một số hạn chế
nhất định trong việc xác định các tham số ảnh hưởng trong từng thời điểm
nhất định. Vì vậy, để tăng hiệu quả đường truyền, đây là vấn đề mở mà các
nhà nghiên cứu rất quan tâm. Do vậy tôi chọn đề tài “ Tìm hiểu giao thức
Quick Vegas, TCP Westwood và RoVegas trên mạng Internet ” nhằm đạt
đến mục tiêu này.
2. Mục đích nghiên cứu
- Tìm hiểu vấn đề về nguyên nhân tắc nghẽn và các phương pháp điều
khiển tránh tắc nghẽn.
- Phân tích ưu nhược điểm của giao thức TCP, đặc biệt là TCP Vegas.
- Tìm hiểu về nguyên lý hoạt động và các đặc tính nâng cao hiệu năng
của giao thức TCP Westwood, RoVegas, Quick Vegas.
- Cài đặt, mô phỏng.

2
3. Phương pháp nghiên cứu
– Phương pháp luận: Phân tích, tổng hợp để tìm hiểu lý thuyết về cơ
chế hoạt động của các giao thức TCP, TCP Reno, TCP Vegas làm cơ sở cho
hướng cải tiến của giao thức TCP Westwood, RoVegas, QuickVegas.
– Phương pháp mô phỏng: Xây dựng mô hình mô phỏng trên
OMNET++ để đánh giá hiệu năng của một số giao thức tìm hiểu.
4. Ý nghĩa khoa học và thực tiễn của đề tài
Mô hình TCP/IP đã được nghiên cứu và phát triển trên mạng Internet
trong một thời gian dài, việc truyền thông tin cậy, tránh mất mát thông tin trên
đường truyền là điều mà người sử dụng quan tâm đến. Tuy nhiên, Internet
được xem như là một môi trường không đồng nhất, chính vì vậy cần có những
cơ chế điều khiển tránh tắc nghẽn để giảm những sai sót không đáng có. Ví dụ
như, một trạm nguồn TCP có thể điều khiển cửa sổ hoặc giảm luồng các gói
tin đến bằng cách điều chỉnh gói báo nhận ACK để đáp ứng với những thay
đổi của mạng nhằm mục đích tăng công suất mạng.
Hiện nay đã có các bộ giao thức cải tiến của TCP như TCP Tahoe, TCP
Reno, TCP Vegas đã được ứng dụng sử dụng trong thực tế. Tuy nhiên, các
giao thức cải tiến này cũng xuất phát từ TCP nên không tránh khỏi vẫn còn
mắc phải một số hạn chế. Chính vì vậy, việc nghiên cứu kỹ giao thức TCP là
nền tảng để cải tiến thành các bộ giao thức mới, ứng dụng vào thực tế, là
hướng nghiên cứu của các nhà khoa học hiện nay và trong tương lai.
5. Cấu trúc của luận văn
Luận văn được chia làm ba chương như sau:
 Chương 1 - Tổng quan về điều khiển tránh tắc nghẽn
Trong chương này tôi trình bày các kiến thức tổng quan về nguyên lý
điều kiển tắc nghẽn trên mạng Internet. Trong đó tập trung tình bày và phân
3
tích vấn đề cơ chế hoạt động cơ bản của giao thức TCP, TCP Reno, TCP
Vegas làm cơ sở lý thuyết cho hướng cải tiến ở chương 2.

 Chương 2 – Cơ chế điều khiển tắc nghẽn của giao thức TCP
Westwood, RoVegas, Quick Vegas trên mạng Internet
Với chương này, tôi tiến hành phân tích cơ chế, nguyên lý hoạt động
của giao thức TCP Westwood, RoVegas và Quick Vegas.
 Chương 3 – Mô phỏng và đánh giá hiệu năng một số giao thức
Ở chương này, luận văn giới thiệu sơ lược phần mềm mô phỏng
Omnet++. Nội dung còn lại tập trung cài đặt một số giao thức cải tiến của
TCP ở chương 2 và tiến hành đánh giá các kết quả mô phỏng.
4
CHƯƠNG 1
TỔNG QUAN VỀ ĐIỀU KHIỂN TRÁNH TẮC NGHẼN
Giao thức TCP điều khiển tần suất truyền bằng cách giới hạn số gói xác
nhận ACK được truyền. Trong mỗi phiên làm việc, độ lớn cửa sổ phát w là
số gói dữ liệu chưa có gói xác nhận ACK trả lời tương ứng. Một cách lý
tưởng, khi không có sự mất mát dữ liệu do tắc nghẽn trên đường truyền thì độ
lớn cửa sổ phát càng lớn càng tốt. Khi một kết nối được thiết lập, độ lớn cửa
sổ truyền ban đầu là thấp, sau đó tăng dần lên nhằm tránh tắc nghẽn. Quá
trình tăng liên tục cho đến khi w đạt giá trị tối đa, tức là khi gặp lỗi hay khi
nhận được gói xác nhận ACK yêu cầu phát lại, hay quá thời gian chờ tối đa
cho phép. Khi đó, độ lớn cửa sổ phát sẽ được giảm và quá trình truyền lại bắt
đầu một chu kỳ mới.
Chúng ta sẽ xem xét các nguyên nhân tắc nghẽn và các thuật toán điều
khiển lưu lượng cơ bản, hợp thành cơ chế điều khiển lưu lượng trong giao thức
TCP đó là: khởi động chậm (slow start), tránh tắc nghẽn (congestion avoidance),
phát lại nhanh và phục hồi nhanh (fast retransmit and fast recovery) và các giao
thức cải tiến cơ bản như TCP Tahoe, TCP Reno, TCP Vegas.
1.1. Nguyên nhân tắc nghẽn
Để điều khiển tắc nghẽn cần phải phân tích một số nguyên nhân gây ra
tắc nghẽn như sau:
- Thời gian chờ xử lý, xếp hàng vào hàng đợi quá lớn [1]. Nếu luồng

các gói tin đột ngột bắt đầu đến từ 3 hay 4 đường vào và tất cả đều cần ra
cùng một đường nên hàng đợi sẽ bị đầy ( do phải lưu gói tin, phải tạo các
bảng định tuyến, ). Nếu khả năng xử lý của các nút yếu hay nói cách khác
các CPU tại các router xử lý chậm các yêu cầu sẽ dẫn đến tắc nghẽn.
5
- Bộ đệm ở các hàng đợi quá nhỏ [1]. Nếu bộ nhớ không đủ dung lượng
để lưu chúng thì một số gói tin sẽ bị mất. Việc tăng dung lượng bộ nhớ đệm
lên sẽ có ích, nhưng Nagle(1987) cho rằng nếu các router có lượng nhớ không
xác định thì sự tắc nghẽn chẳng tốt hơn tí nào mà ngược lại trở nên xấu đi do
số bản sao được gửi tăng lên, làm tăng lượng thông tin ở nơi nhận tin.
- Tần suất lỗi mạng cao và độ trễ lớn [1]. Đối với mạng cố định, việc
mất gói tin do lỗi đường truyền hiếm khi xảy ra. Mất gói tin đồng nghĩa với
việc xảy ra tắc nghẽn ở các nút (router) trong mạng. Cơ chế điều khiển chống
tắc nghẽn của TCP sẽ căn cứ vào sự kiện mất gói và kiểm tra trễ quá time-out
để xác định tắc nghẽn trong mạng. TCP không có khả năng phân biệt giữa
mất gói do đường truyền hay mất gói do tắc nghẽn, mỗi khi xảy ra các hiện
tượng trên TCP giảm tốc độ truyền. Điều đó không còn phù hợp với truyền
thông di động vì hiệu suất đường truyền sẽ bị hạ thấp. Một vấn đề khác có
tính không đồng nhất giữa mạng di động và mạng cố định là tốc độ truyền
kênh di động thấp hơn nhiều so với mạng cố định. Vì vậy, phần truy cập vô
tuyến sẽ luôn là chỗ nghẽn cổ chai đối với một kết nối giữa thuê bao di động
và một đầu cuối ở mạng cố định. Ngoài ra, hiệu ứng băng thông không đối
xứng cũng có tác động lớn đến truy nhập Internet. Băng thông theo hướng từ
máy cố định tới máy di động thường lớn hơn nhiều băng thông theo chiều
ngược lại. Hiệu ứng này làm cho trễ theo hai chiều truyền khác nhau.
6
Hình 1.1: Sơ đồ biến đổi lưu lượng của TCP
Trên hình biểu thị sự thay đổi lưu lượng của TCP. Khi máy chủ truyền
các gói tin vào mạng con. Trong vòng lượng thông tin có thể truyền tốt thì các
gói tin này sẽ được truyền đi, ngoại trừ vài gói tin bị hỏng do lỗi truyền và số

gói tin được truyền đi tương ứng với số gói tin chuyển đến. Tuy nhiên, khi số
lượng gói tin tăng lên, những router không còn khả năng điều chỉnh, đánh mất
chúng. Điều này có khuynh hướng làm cho vấn đề trầm trọng hơn khi lượng
lưu thông quá cao, sự truyền bị phá bỏ hoàn toàn và hầu như không có gói tin
nào được truyền đi.
1.2.Các cơ chế điều khiển tắc nghẽn
Khi một kết nối được thiết lập, độ lớn cửa sổ truyền ban đầu là thấp,
sau đó tăng dần lên nhằm tránh tắc nghẽn. Quá trình sẽ tăng liên tục cho đến
khi w đạt đến giá trị tối đa, tức là khi gặp lỗi hay khi nhận được gói báo nhận
ACK yêu cầu phát lại, hay quá thời gian chờ tối đa cho phép. Khi đó, độ lớn
cửa sổ phát sẽ được giảm và quá trình truyền lại bắt đầu một chu kỳ mới [1].
Việc tránh tắc nghẽn có thể căn cứ vào thời gian khứ hồi gói tin RTT
(Round trip time: thời gian bắt đầu phát gói dữ liệu cho đến khi nhận được trả
lời) hoặc lượng dữ liệu đưa vào mạng để biết tắc nghẽn sắp xảy ra nếu không
can thiệp.
Số gói tin
giao nhận
Giới hạn truyền thông cực đại
Mong muốn
Thực tế (xảy
ra tắc nghẽn)
Lý tưởng (số gói tin gửi = số gói tin nhận)
Số gói tin gửi đi
7
Nếu hàng đợi bộ định tuyến (Router) đang tăng, thời gian đợi tăng và
RTT tăng, căn cứ vào RTT hiện tại sẽ biết được tắc nghẽn sắp xảy ra. Xác
định RTT trung bình, nếu RTT
ht
> RTT
tb

thì giảm cwnd(1/8). Ngược lại thì
tăng cửa sổ tắc nghẽn cwnd lên một gói cực đại.
1.2.1. Cơ chế bắt đầu chậm
Để tránh tắc nghẽn mạng ngay từ đầu, trạm gửi sẽ phát với cửa sổ tắc
nghẽn (CWND) bằng 1, mỗi khi nhận được thông báo trả lời ACK (báo
nhận), CWND được tăng thêm gấp đôi (2, 4, 8, 16 ) cho đến khi xuất hiện
tắc nghẽn mạng [1].
Giai đoạn khởi động chậm kết thúc khi cửa sổ tắc nghẽn CWND đạt
đến ngưỡng xác định trước (ssth).
CWND = 1
Segment(0)
Segment ACK(1)
Segment(1)
Segment(2)
Segment ACK(3)
Segment(3)
Segment(4)
Segment(5)
Segment(6)
CWND = 2
CWND = 4
Trạm gửi
(Sender)
Trạm nhận
(Receive)
Hình 1.2: Cơ chế bắt đầu chậm, kích thước cửa sổ tăng theo hàm mũ
8
1.2.2. Cơ chế tránh tắc nghẽn
Khi có hiện tượng tắc nghẽn, thể hiện ở sự quá thời gian trễ (time-out)
hoặc nhận các ACK trùng lặp số hiệu (Duplicated ACK) thì:

+ Giá trị ngưỡng được thiết lập lại: ssth(t) = CWND /2
+ Giá trị của CWND được thiết lập lại là: CWND = 1
+ Phát lại các gói tin bị mất theo yêu cầu của trạm nhận
Khi nhận được thông báo ACK (giảm tắc nghẽn):
+ Nếu CWND < ssth, thuật toán bắt đầu chậm được thực hiện lại
+ Nếu CWND >= ssth, thuật toán tránh tắc nghẽn được thực hiện: giá
trị CWND được tăng 1/CWND với mỗi thông báo ACK nhận được (tăng
tuyến tính để không rơi lại vào tắc nghẽn).
Hình 1.3: Cơ chế bắt đầu chậm và tránh tắc nghẽn
Tăng theo hàm mũ
Tránh tắc nghẽn
Giá trị ngưỡng (ssth)
Giá trị mong
muốn
Giá trị tối đa
Segment bị mất
Segment bị mất Segment bị mất
Độ lớn
CWND
Thời gian
1
9
1.2.3. Cơ chế phát lại nhanh
TCP thực hiện phát một gói dữ liệu khi nhận được thông báo NAK (thu
sai) hoặc được đồng hồ quản lý phát lại được kích hoạt (time-out). Nếu chờ
time-out mới phát lại gây ra số gói phát lại nhiều (hoặc đòi hỏi bộ đệm phía
thu lớn để giữ tạm các gói sai số thứ tự), điều đó dễ gây ra tắc nghẽn. Cơ chế
phát lại nhanh cho phép phát lại không cần chờ time-out, trong trường hợp
nhận được hơn ba thông báo ACK lặp lại (duplicated ACK), nghĩa là có gói
dữ liệu bị mất, cần phát lại [1].

Hình 1.4: Cơ chế truyền lại nhanh dựa trên duplicate ACKs
Trạm gửi Trạm nhận
Gói dữ liệu 1
Gói dữ liệu 2
Gói dữ liệu 3
Gói dữ liệu 4
Gói dữ liệu 6
Truyền lại
gói dữ liệu 3
Gói dữ liệu 5
ACK 1
ACK 2
ACK 2
ACK 6
ACK 2
ACK 2
x
10
1.2.4. Cơ chế phục hồi nhanh
Cơ chế này được thực hiện sau cơ thế phát lại nhanh [1] và nó hoạt
động như sau:
+ Ứng với mỗi thông báo ACK trùng lặp được nhận ở trạm gửi, cửa sổ
tắc nghẽn được tăng thêm: CWND = CWND + 1* SMSS.
+ Thực hiện phát một gói dữ liệu, nếu thỏa mãn: w = min {CWND,
RWND}.
+ Sau khi nhận được thông báo trả lời ACK không bị lặp lại, nghĩa là
một gói dữ liệu mới đã được nhận đúng, TCP thiết lập lại giá trị CWND được
giữ trong trường ssth và thực hiện việc phát bình thường trở lại với qui tắc:
w = min { CWND, RWND }
Cơ chế phục hồi nhanh tránh cho lưu lượng dữ liệu trong kết nối TCP

bị thay đổi đột ngột và đảm bảo thông lượng dữ liệu đạt được phù hợp với bối
cảnh thực tế việc phát, thu có lỗi.
Thuật toán phát lại và phục hồi nhanh có nhược điểm:
Segment bị mất
Segment bị mất Segment bị mất
Bắt đầu chậm Tránh tắc nghẽn Tránh tắc nghẽn
Độ lớn CWND
Thời gian
Hình 1.5: Cơ chế phục hồi nhanh
11
Việc phát lại các gói bị lỗi dẫn đến phát lại gói dữ liệu đó được phát
thành công trước đó và khi thuật toán này không thành công phải chờ time-
out để phát lại, khi đó độ lớn cửa sổ phát bằng 1.Vì vậy, thay vì chờ time-out
ta dựng ngay thuật toán phát lại giống như trong giai đoạn khởi động chậm .
1.3. Các hạn chế và yếu tố ảnh hưởng đến TCP
1.3.1. Hạn chế của TCP
Mặc dù các cơ chế điều khiển truyền thông của TCP rất linh hoạt
nhưng còn một số hạn chế như sau:
- Không tận dụng hết khả năng của đường truyền, đặc biệt là với đường
truyền có thông lượng lớn.
- Với những đường truyền có độ trễ lớn và bất đối xứng thì TCP tỏ ra
kém hiệu quả.
- Chưa có khả năng nhận biết sự nghẽn mạng với lỗi bit do đường truyền.
- Thời gian để đạt được thông lượng tối đa của đường truyền còn dài.
1.3.2. Các yếu tố ảnh hưởng đến TCP
Khi có sự mất cân bằng tài nguyên, như khi tốc độ các gói tin đến cao
mà tốc độ xử lý tại hàng đợi của máy tính trung tâm thấp (nguyên nhân tăng
độ trễ, phải truyền tải lại), làm giảm hiệu năng. Hoặc sau phục hồi hệ thống,
các máy trạm đồng thời truy cập đến máy trung tâm làm tăng tải, nên phải có
chiến lược đồng bộ hiện tượng quá tải phù hợp. Trong giao thức TCP cũng đã

có những cơ chế điều khiển luồng cũng như kiểm soát lỗi, nhưng trong môi
trường mạng bất đối xứng đã tỏ ra kém hiệu quả. Vì vậy, các nhà nghiên cứu
Internet đã đề nghị những cơ chế để cải tiến TCP như sau:
- Tăng kích thước cửa sổ với một tốc độ không phụ thuộc RTT [1]: tức
là cần phải tính toán sao cho RTT nhỏ. Tuy nhiên, điều này không tạo điều
kiện dễ dàng cho việc chọn tốc độ tăng kích thước cửa sổ để mạng hoạt động
tốt trên phạm vi rộng của RTT. Nếu tốc độ tăng là nhỏ hơn so với tốc độ hiện

×