Tải bản đầy đủ (.pdf) (77 trang)

Nguyên tắc và hiệu suất hoạt động của một số cơ chế điều khiển lưu lượng trong môi trường không đối xứng

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 (24.58 MB, 77 trang )

ĐẠI HỌC QUỐC (ỈIA HÀ NỘI
KH O A C Ô N G NGI ịỆ
____000
____
H O À N G ANH TUẤN
NGUYÊN TẮC VÀ HIỆU SUẤT HOẠT t)ỘN<; CỦA MỘT
SỐ cơ CHẾ ĐIỂU KHIỂN Lưu LƯỢNG TRONG MÔI
TRƯỜNG KHÔNG ĐỐI XỨNG
CHUYỀN NGÀNH: CÔNG NGHỆ THÔNG TIN
MÃ S Ố :
LUẬN VĂN THẠC SỸ KHOA HỤC
N gười hướng dần k h o a học: TS \ H Duy Lọi
Hà Nội, năm 2 0 0 1
-2-
MỤC LỤC
I. TỗN<; QUAN c ơ CHẾ ĐIỂU KH1ÍỈN Lưu UÍỢNG
1.1 Vấn dề diều khiổn lưu lượng và tắc nghẽn tiên mạng 4
1.2 Cơ chế điều khiển lưu lượng 5
! .2.1 Một số khái niệm cư bản
] .2.2 Điều khiển lưu lượng trong TCP 6
1.3 Thuật toán điểu khiển lưu lượng
1.3.1 Chuẩn diều khiển lưu lượng 19
1.3.2 Thuật (oán khới động chậm và tránh tắc nghẽn. 19
1.3.3 Thuật toán phát và phục hổi nhanh 20
1.3.4 Tuyến lính hoá quá trình khởi dộng chậm trong ihuật loán 24
dieu khiển lưu lượng
2. HIỆU SUẤT MẠNG TRONG MỎI TRƯỜNG KHÔNíỉ ĐỎI
XÚNG
2. i Đặt vấn dề 29
2.2 Mô hình cơ sớ 31
2.3 Hiệu suất mạng Hong mỏi trường có bãng thông cư sở chenil lệch 32


2.4 Giải pháp nâng cao hiệu suất mạng 36
2.4.1- Kỹ thuật lọc gói xác nhận ACK (Ack Filter - AI ) 36
2.4.2- Kỹ thuật điều khiển lắc nghẽn ACK (Ack Congestion 37
Control- ACC)
2.4.3- Kỹ thuẠt tái tạo gói xác nhận (Ack Reconstruction- AR) 40
2.5 Một số kết quả so sánh 43
-3-
3. ĐÁNH (ỈIÁ IIIỆU SUẤT MẠNCÌ TRONG MÔI TRƯÒMỈ
KHỔNíỉ ĐỐI XÚN(Ỉ TRÊN KỀNH KẾT NỐI IIAI CHI ill
3.1 Mô hình cơ sơ 47
3.2 MO hình iru tiCn gói xác nhận ACK 50
3.3 Mô hình giới hạn gói dữ liệu chờ phát 57
3.4 Mô hình quàn iý băng thông mức kết nối 68
KÍ: I LUẬN 74
TÀI LIỆU THAM KHẢO
76
MỞ ĐẦU
Đặc thù phát (riển cua các mạng diện lộng ngày nay là phát nil'll trên nen tích hợp
cùa nhiều công nghệ và phương tiện khác nhau. Một l)ệ thòm.’ như vậy mang dặc
Irưng của một hệ thống không đối xứng, sự chênh lệch giữa rác kênh truyền ánh
hướng không nhó tiên toe độ chung ciia họ thống. Đoi với các mạng kêt uni Cịiiii vỌ
tinh hav các kênh riêng và mạng diện thoại, hăng thông cơ S(í có thể chenil lệch
100 lần, đặc biệt khi trên cùng một kênh phải xử !ý thông Iin nhiều chiều nhơ
mạng diện thoại, mạng máy tính.
Mạng diện rộng là hệ lliống liên mạng với giao thức trao dổi (lu liệu cơ hán là TCP.
tmng đó băng (hông cho mỗi kênh trao đổi dữ liệu chênh lộcli nhau đáng kế. Việc
nghiên cứu hiệu suất mạng gắn liền với việc điều khiển các gói xác nhẠn A('K
(lóng vai trò quan trọng trong việc phát triển các giao thức mới.
Dựa trên sự hướng (.lẫn cùa Tiên Sĩ Vũ Duy Lợi cùng mộl sô liii liệu tổng hợp khác,
lác giả dã đi sAu nghiên cứu một số giai pháp nâng cao hiệu suất mạng trong mõi

n ường không dối xúng cũtig như phương pháp (failli giá t’hú 11*1. Lufln văn (lược clii.M
làm ba phẩn. Phán mộl trình bầy tổng Cịiian vể cơ chó điều khiển lưu lượng trên
mạng. Phán hai di síUi nghiên cứu một số giải pháp nAne cao hiệu suấl mạng Irong
mõi trường không đối xúng. Phần ha lẠp trung phân lích, (failli giá ha gi;ti pháp cụ
thô dó là : giải pháp ưu tiên gói xác nhạn ACK. giải pháp giới hạn gói (lữ liỌu chừ
phát và giải pháp Cíìp phát hăng thông mức kết nối.
-4-
CHƯƠNG 1
TổN(ỉ QUAN CO CHẾ ĐĩỂlI KHIỂN Lưu IƯƠNCỈ
II. VÀN ĐỂ ĐIỂU KIHÍÌN Lưu LƯỢ.NC; VÀ rẮC NGHẼN I RÊN MẠN(Ỉ.
'['rong các hệ thống mạng, điéu khiển thông lượng và diều khicn lắc nghẽn là hai
quá trình có quan hệ mût ihiết với nhau. Tắc nghẽn là nguyên nhân, là lý do của
diều khiên lưu lượng. Sự tắc nghẽn xảy ra khi (lữ liệu nhận ctiKú vượt quá khá ruing
xứ lý. Trong các hệ thống mạng diện rộn ạ. sự tắc nghẽn làm í'iám hiệu suấl. lãng
thời gian truyền và xử lý, điều này đôi khi dẫn đến nglicn m;u li toàn bộ hệ thòng.
Điều đó có thể do một số nguyên nhân sau :
- Thièl bị mạng không (láp ứng nhu cầu xử lý số liệu ( bộ đệm I|uá nhó

).
- Tấn suât dữ liệu dầu vào quá lớn so với liln suất (lữ liệu xú lý lai đẩu ra.
- Thời gian chờ xứ lý, xếp hàng, quá lớn.
- Tán suất lỗi mạng cao.
Viín dề là khi một trong các điểu kiện (rèn xay ra. nó có (hể kru theo các diều dieu
kiện còn iại. Đê giái quvết vấn đề này, trong các hệ thông mạnii người ta phái clưa
vào các thù tục điều khiển tắc nghẽn.
Các kỹ thuật diều khiển tác nghẽn là mọt thành phần tạo nên giao thức. Sử dụng
rộng rãi trong các hệ thống mạng diện rộng hiện nay là k\ thuật cứa sổ Irượi
,GO_BACK_N, phát lại có lựa chọn, và các kỹ thuật dựa til l) nguyên lý điếm -
da điểrr và có CÁU trúc, có cơ chế trao đổi và phục hồi, vn lilt tuv biên. Tronc
mạng diện rônç, dieu khiển tác nghẽn (lưực chia thành nhiều Inp. Các lớp trao dổi

số liệu thòng qua các thông điệp chuẩn lioá. Bên cạnh đó Cỉk' kỹ thuật dieu khiển
lưu lượng ngày nay còn kết hợp các plurơng pháp khác tilìư < <í chế phát hiện loi
ỉiCN. cơ chế loại bó ngầu nhiên và im tiên gói dữ liệu
-5-
- Cơ chế cửa sổ trượt giới hạn sô' byle dược phát và quá trình phái lại và sưa lỗi
■được giới hạn ngay trong mỗi khung cửa sổ. Phương pháp nìiv dã và dang chứng
minh dược tính ưu việt của nó.
- Kỹ thuật hàng đợi có sự ưu tiên nhằm quản lý và cấp phát hăng thông cho các
kênh truyền theo các tiêu chí khác nhau, các kỹ thuật này lhư<<ng gắn liền với các
kỹ thuật phát triển giao thức.
- Kỹ thuật diều khiển mức ứng dụng và tiến trình, phương ph;ÍỊ) này hoàt) toàn tlựii
trên các thuật toán và xử lý phẩn mềm. Vấn đề diều khiển lưu lượng được nhìn
nhộn như là vấn đề xứ lý của các chương trình tại hai dầu Ihiêl l'ị gửi và nhận.
Hiện nay có rất nhiều cơ chế điều khiển lưu lượng khác nhau. TCP/IP là một trong
số dó. Điềụ dó có thể thấy rõ hơn trong các phán dưới đây.
1.2. CO CHẾ ĐIỂU KHIỂN LƯU LƯỌNíĨ
1.2.ỉ Mội số khái niệm cơ bản
- Gỏi dữ liệu : dơn vị cơ bản trong kỹ thuật truyền số liệu giao thức TCP.
- Gói xác nhận ACK : Thông tin dùng để xác nhận một gói dữ liệu đã được truyền
đến đích.
- W(l) : (ối đa số gói dữ liệu cho phép phát tại thời điểm t hay độ lớn của sổ phát
thời điểm t.
- SMSS ( Sender maximum segment size) : Độ IỚ11 tối đa cím gói dữ liệu có thê’
gửi. Giá trị này có thể dựa trên đơn vị truyền tối da của mạng. SMSS không bao
gồm dữ iiệu liêu đề TCP và các trường lựa chọn.
- RMSS (receiver maximum seqment size) : Độ lớn tối da CIIÍI gói dữ liệu mà (hiêt
bị nhận có thể nhận. RMSS không bao gồm dữ liệu tiêu đề và các trường lựa chọn.
- RVVND (Received window): Giá trị W(t) tại thời điểm dang xét.
- CWND (Congestion window): Giá trị W(t) trong trường hợp c ó tắc nghẽn.
-6-

- Might Size : Số gỏi (lữ liệu đã gửi nhung chua nhện tkrợc xác nhận bới gói xác
nhạn ACK lương ứng.
- Time out : Thời gian chờ tối da trước khi (lược coi là có lỏi.
- RTỈ' : Thời gian phát loàn phỉìn.
- Slow Start : Giai đoạn khời động châm trong cơ chê điều khiến lưu lượng
- Congestion Avoidance : Giai đoạn tránh tắc nghẽn trong cơ chế điểu khiển lưu
lượng
- Threshold : Ngưỡng chuyển đổi từ giai đoạn khỏi dộng chậm '.ang giai (loạn tránh
lắc nghẽn.
1.2.2 Điểu khiển lưu hrựng trong TCP
Đối với mỗi phiên làm việc, sự chênh lệch giữa kênh phát và krtih sir (lụng cho CỈÍC
gói xác nhận ACK ảnh lurởng rất lớn đèn hiệu suât Slicking Inn các kênh phát (lú
liệu. Đơn vị cơ bán trong truyền số liệu của TCP là gói dữ liệu, với một hay nhiều
gói (lữ liệu sẽ tương ứng một hay nhiều gói xác Iiltân ACK. Như vậy hãng thong
sử (lụng của mạng phải dựa trên các yếu tố : tốc độ. độ lớn gói dữ liộu, (lộ lớn gói
xác nhận ACK và thời gian phát (oàn phần. Băng Ihông cơ sớ dura till dc (lam hao
mans đó đạt tốc độ cao.
TCP Cling cấp dịch vụ trao đổi số liệu tin cộy giữa các quá trình Iron các máy tính
khác nliau. Một thành phán quan trọng của TCP là cơ chế dieu khiển lưu lượng.
TCP sử dụng cơ chế diều khiển lưu lượng Ihco nguyên lý điếm - tiiổin chứ không
hoàn toàn dựa trên cơ chê diều khiển tác nghẽn của mạng mức tluĩp. có (lược điều
này (lo tầng ỈP chí đíim bão định tuyến, truyền clữ liệu và klioiig tham gia vào quá
trình điều khiển lỏi.
Giao thức TCP điểu khiển liin suất truyền bang cách giới hạn S(I gói xác nhận ACK
(tược tmvền Trong mỏi phiên làm việc, độ lớn cứa sổ phái w là số gói (lữ liệu
chưa có gói xác nhạn ACK trả lời tương ứng. Một cách [ý tui'iig khi klióng có sư
mát mát dữ liệu do lác nghẽn trên dường truyền thì độ lớn era sổ phá! càng IỚỈ
1
-7-
càng tôt. Khi một kô( nối ilưực thiết lập, độ Uni cùa sổ truyền km đáu là (hấp, sau

dó tăng dán lên nhằm tránh tắc nghẽn. Quá trình sẽ láng lên lii ĩi tục cho (lên khi w
dạt đến giá trị tối da, 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. hav quá thời gian chờ tối cho phép. Khi dó. độ lún của sổ phát sẽ được
giam và quá trình Im veil lại hắt đáu một chu kỳ mới.
Giả sử bộ đệm kênh nhận có kích cỡ đủ lớn sao cho la có the không cẩn quan !Ani
đến độ lớn cùa sổ nhận và kênh phái có bộ đệm rât lớn. Khi co mội kêl nói, (lữ liệu
dược ghi vào bộ đệm phát, thành các đơn vị có độ dài cao nhất SMSS tnrớc khi
dược truyền cho lớp mạng. Tại thời điểm đầu tiên W(t) = SMSS. độ lớn 11ÌỘI gói (lfr
liệu. TCP gửi gói dữ liệu đầu tiên sau đó chờ gói xác nhân A< 'K tương ứng. Nêu
gói ACK đến trước thời điểm cho phép (timeout), độ lớn cửỉi sổ phái lăng lên mội
với mỗi gói xác nhận ACK nhận được và quá trình lặp lại cho đến khi VV(t) bằng
giá trị ngưỡng hav gặp lỗi.
Trong pha khởi động châm , độ lớn cửa sổ phát tăng nhanh, llteo hàm núi. Khi (lộ
lớn cửa sổ phát lăng vượt quá giá trị ngưỡng threshold (lật 11ước, giá In W(Ọ sẽ
táng luyến tính và theo công thức : W(t) = W(t) + l/W(t) và dmvển sang pha tránh
lỗi.
Như vây độ lớn cúa số phát tăng một sau khi phát hết các gói <!ũ liệu trong cưa sổ
phát. Điều này có nghĩa khi giá trị W(l) càng lớn. Ihì (ốc (lộ I.ing càng chạm. Giai
(loạn nàv kéo dài cho đến khi gặp lỗi hay quá (hời gian chò lói đa mặc định cho
mỏi sói xác nhận ACK . Khi đó độ lớn cửa sổ phát được đặi U' một. giá trị ngưỡng
threshold hằng W(t)/2 ( theo chuẩn TCP Reno). Ta thây tron.!! giai đoạn này. cứa
sổ phát tăng rất chậm nhưng giam ríu nhanh - theo cấp so nhân
Ta xét một ví dụ sau :
Giả sử ngưỡng ban (tÀu hằng 8 gói dữ liệu, độ lớn cửa sổ plìiít bằng I, tang nhanh
và s;ui ba lần truyền giá trị này dạt ngưỡng đật truớc và chuyên sang giai đoạn tăng
-8-
Iuvén tínlì. Gui sir khi W(!) = 12 lỗi xáy ra, khi dó giá trị ngưỏĩig dược (lặt hàng 6
và W(t) = 1.
I W(t)
Hình l-i : Biến dổi của W(1) trong diều kliiổn lưu lượn a của TCỈ>

Cơ chê' điều khiển lưu lượng ở trên là nguyên lý chung của <■<< chế điều khiến lưu
lượng trong TCP. Hai chuÁn đang được ứng dung rộng rãi hicM nay là Ta hoe T(T
và Reno TCP. Khác với chuẩn Tahoe TCP. Reno TCP có một so sửa đổi khi dữ liệu
bị mất hav thời gian chờ gói ACK quá lâu (timeout). Giốn.í! như Tahoc. chuẩn
Rcno - TCP đặt lại dộ lớn của sổ phát bằng mội klu quá thời gian chờ gói ACK.
trong chuẩn Reno TCP có sử dụng cơ chế phát lại nhanh sau khi nhận được ha lan
gói xác nhận ACK.
1 liện nay chuẩn Renơ TCP dang được sử dụng rộng lãi. ngoài ra còn có các eỉuiàn
khác nhu Vegas, một cải tiến cúa chuẩn Reno. Ỷ lường cơ hàn của thuật Vegas-
TCP là đoán nhộn kha năng gáy ra tíie nghẽn trước khi 11Ó xày ra trong khi Viĩn
đám hảo thông lượng trên mạng và giảin độ lớn dĩa sổ phát một cách tuycn tính
-9-
khi phát hiện một gói dữ liệu có thể bị rnât. Một gói (lư liệu có thể bị mát có thế
đoán tnrớc (lưực bằng cách tính thời gian phát toàn phíin.
1.2.3 Tính dộriỊ» (rong co chế điểu khiéu lắc nghẽn CIIỈI T( T
Khi gửi một tệp rất lớn qua các kết nối TCP, ta không tạp trim li vào giai đoạn ihỉìm
dò ban dầu và thông lượng trong giai đoạn này tim g lên rfiC nlmnh. Trong giai đoạn
tránh tắc nghẽn , độ lớn cửa sổ phát lăng tuyến tính VÌ1 thay đổi sau mỗi chu kỳ
phát toàn phíln và chu kv có tính lặp lại từ khi bắt đáu phát cho (ới khi gcỊp lỏi.
Tính động Iron g cơ chế điều khiển tắc nghẽn cua TCI’ thổ lúọn ớ chỗ nó tư (lieu
chinh lán suAl phát dữ liệu thõng qua các cơ chế tư xác (lịnh f iio n s sô cấn thiél tlí5
theo trạng thái kênh truyền, trong dó dặc biệt là băng lliỏng và tần siuìl xuất lúện
lỗi. Qua cló lự ihiếl lập các Ihông số phục vụ cho việc trao (loi số liệu. Dieu này (•<>
thể thây rõ trong các Ihuạt toán điểu khiển done TCP : khởi (lọng chậm, phục hổi
nhanh và tranh tắc nghẽn.
a. Sử dụng killing cira sổ cớ định
Độ lớn cira sổ phát không thay đổi lừ lúc hắt đáu đôn khi kê! thúc phiên làm việc
giữa hai Ihực thể cần trao dổi số liệu được gọi ỉà phương phấp (lùng khung cửa sổ
cố dị nil.
Nhiều kết nối TCP truyền các tệp tương đối nhó từ máy lính này sang máy tính

khác. Đối với giao thức IUTP, mồi dối lượng trong trang Well dược truvển qua các
kết nối TCP riêng rẽ. tronụ chi nhiều dõi tưựng là các lộp ván Itán hay ánh cỏ kích
cữ nhỏ. Khi truyền một tệp cỡ nhỏ, kết nối được thiết lập và lĩini (loạn (hăm đò ciíiu
IÔ11 có ảnh hường nhất định. Trong phần này ta pMn tích mô hình do độ ánh huờng
của việc thiết lập kết nối và giai đoạn thăm dò. Sự phím lích (V dây giá thiết lằng
mạng không bị tắc nghẽn, diều này có nghĩa các két nói TCP l.liõng phái phân chia
-10-
băng thông, hơn nữa (lò lập trung vào việc phan lích vân (té tmng uìm la tiến hành
phân (ích (lựa trên mạng có một (lường liên kết (lơn như hình (iii(Vi đAy :
I Tình 1-2 : Kết nối trôn hanjz thônji R
và có một số ràng buộc sau :
1. Sò byte mỗi thiết bị gửi eiới hạn bởi độ lớn cứíi sổ tắc nghẽn cil a thiết bị đó.
2. Gói dữ liệu không bị mất do đó sẽ không có gói ciữ liệu phíii gửi lại.
3. Tất các các liêu đổ cùa TCP, 1P và tổng liên kết là nhỏ và không đáng kể.
4. Mỗi đối tượng được truyền có kích Ihước clủ lớn. gồm mói số gói (lỡ liệu ( bội
của SMSS)
5. Các gói xác nhận ACK nhỏ và có thời gian Iruyền là kliôiiQ đáng ke.
6. Giá trị ngưỡng ban dầu đặt clú lớn đảm báo giá trị của cừii sổ tắc nghẽn không
bao giờ đạt được.
ữ đây :
• Độ lớn ciui mỏi một dối tượng (tưực truyền là o bit.
• Độ lớn tòi da một gói dữ liệu là s bít.
• Tốc độ truyền trên dường liên kết là R bps.
• ELT (elappse time) thời gian trỗ của một gói (lữ liệu trên (lường Iruycn,
bao gồm thời gian phát gói dữ liệu đó.
Mặc dù trong phần này ta giả sử rằng mạng là không xảy ra l;ic nghẽn với một kết
nối dơn TCP . diều dó khỏng ảnh lurớng đối với các mạng có nhiều dường lien kêl.
ĐỐI với m;mg có khá n;mg bị tắc nghẽn, gií) trị R thè hiện 'In 1ỚI1 hăng thõng ớ
trạng thái 011 (lịnh trong mồi kết nối TCP, ELT phán ánh di) (IV liên mạng
-II-

'Inrớc khi cli vào phAn lích, ta Ciìn phíììi biệt hai khái niệm huyền và phái dược
tiling dưới dây :
Khái niệm ‘thời gian phái một đối lượng' (tược hiểu như là thời gian càn
thiêt phát đối tượng (ló lên (ít rờn g truyén. giíí trị này hdim loàn tính (heo lý
thuyết, hàng tích (lộ lớn gói dữ liệu và tóc (ló phát trên kênh urơtiịỉ ling.
- Khái niệm ‘thời gian Iruyền một đối tượng’ dược hiểu như là thời gian cần
thiết truvển đối tượng đó từ thiết bị gửi sang thiết bị nhfin, (ức là lính từ lúc
phát gói dữ liệu drill tiên đến khi nhân đủ gói xác nhận cuối cùng, ịìiá trị uàv
có tính đốn tính cliất giới hạn cua độ lớn cửa sổ phái. I Itời gian tniyền rnộl
cìói íượng bàng thời gian phát đôi tượng đó cõng tổng thui gian giữ chậm do
cơ chế truvền theo cứa sổ.
Có iliể coi RLT !à lliời gian lliiết lập một kết nôi vì (Itừi gian I'bấc gói dữ liệu cíiều
khiOn là khòng đáng kc. Do dó sau 2 * RLT là thời gian thực hiện thiết lập và bat
tay một kết nối. Một khoảng ELT là thời gian cho khới tạo kci nối. và moi HLT là
khoáng thời gian gửi yêu CÍỈ11. Nếu đối với mỗi phiôn làm việc không có hạn che về
thời gian kết thúc phiên làm việc đó ta thấy sau klioiíng (hời gi;m 2 *ELT. (|iiá Irình
phái mội đối tượng được hắ( đáu và kếl Ihúc sau ( )/R giây. Tổ Mí! thời gian phái mọt
(lối [uợug là 2*ELT + O/R.
Gọi w > 0 độ lớn cúa sổ phát, không thav đổi trong quá trình phát tĩnh (static) tức
là tói da số gói dữ liệu chờ được phát tại mồi thời điểm là \Y. Khi một máy chu
nhạn dược yêu cầu phái. I1Ó phát cá w gói dữ liệu cho máy yòu cầu. Sail khi nhận
được một gói xác nhận ACK, máy chủ gửi tiếp mội gói ciữ liọu, quá trình lặp lại
cho đến khi lất cả gói dữ liêu của đối (ương đó dược gửi đi. o đây có hai (rường
hợp xảy ra :
I. XV+S/R > ELT + S/R : máy chủ nhân được gói xác nhận A< K trước khi giri hét
w gói dữ liệu (lầu tien.
-12-
2. W*s/R < liL'r + S/R : máy chu nhận được gói xác nhận ACK sau khi gửi hét
w gói dữ liệu đầu tien.
* Xct (rường hợp thứ nhất w *s /R > BLT + S/R với w = 4

initiate TC'P _
I lình 1-3 :1 Vườn g hợp W*s/R > HIT + S/R
Sau BLT giAy, kêì nối được khới tạo và dữ liệu được phát sau Í LT/2 giây tiếp theo.
Sau 2*R'IT máy. máy trạm sẽ nhận được dữ liệu lù máy chủ. ( ác gói dữ liệu dược
phái cho máv trạm (heo chu kỳ S/R và máy trạm gứi các gói xác nhận A(’K tương
ứng khi nhận dược một gói dữ liệu. Vì máy chú nhận dược Ịiỏi xác nhộn ACK
dầu tiên trước khi gủi cả w gói dữ liệu., máy chiì liếp lục phiil các gói c!ữ liệu còn
lại trong cửa sổ phát. Chú V rằng trong quá trình phát . tốc dụ Imvcn là khùng dổi
và duy trì ờ mức R. Tổng thời gian truyền trong trường hợp nà\ íà 2*ELT + ( )/R.
* Xót (lường hợp liai VV:|:S /R < ELT + S/R với w - 2
-13-
initiate TCP v
connection '■*
request
object.
WS/R
Y
I Ft ack
returns
time
at client
time
server
I null I -4 : Trường hợp khi w *s /K < IU ;r I S/R
Theo như phan tích ở liên, sau 2*ELT + O/R giAy, (lối tưựHỊ! C) (lược phát hết lừ
máy chủ sang máy Irạm, nhưng lúc này máy chủ không nh;Ịn (lược gói xác nhận
ACK (f;iu tiêu sau khi dã gửi tất cả w gói dữ liệu. Như vẠy niáv chủ phái chờ gói
xác nhộn ACK này Inrớc khi tiếp tục phái các gói dữ liệu liếp Ilico trong cứa số thứ
hai. Nêu (lạt K = ccil(0/W*S) là s ố cửa sỏ cần thiết dê triiyrn (tối iưựm> cỡ o . Vì
trong mỏi chu kỳ W*s/R < ELT + S/R nên Ihừi gian chờ phái không Cịuá ELT-(W-

1 )=Ỉ<S/R giAv. khi đó thời gian truyền đối tượng o sẽ không vượt CỊUÚ :
+ O/R + (K-1 ) [S/R + 1:L I - vv*s/l< I
Trong (ỉó (K-l) ỊvS/R + ELT - W*S/RJ !à lổng thời gian chờ phát cùa các gói (Iff
liệu trong () và 2*RLT + O/R là thời gian phát hốt các dối tilling Hong () (km frên
tốc (tộ vật lý.
-14-
Kêt hợp hai Irường hợp trên ta có thời gian truyền một đoi tươnu là :
2 * HLT + O/R + (K-l )*[S/R + ELT - w *S/RI ( * ) í ! .2.3. í )
với : Ịx)(*) = max(x,0)
Dề so sánh sự khác nhau trong việc dùng cửa sổ dộng và cún sổ lình ta có phân
tích dưới <1 Ay :
b. Sir dụng khung cửa sổ động
Với (tối lượng có () bít dữ liệu, khung cửa sổ pliai hail (lỉiu li'i I. sau khi gói dữ liệu
CÎÀU tiên dược phát và gói xác nhận ACK được Ira về. killing < ira sổ phái tăng lèn
một. Sau khi phát hốt 2 gói dữ liệu và nhân về gói xác nhận ACK tương ứng cho
hai gói dữ liệu này. khung cửa sổ phát tăng lên 4. Các gỏi (lu liệu dược phát lêu
mạng theo chu kỳ S/R giây. Như vậy sau mỗi chu kỳ HLT i’iây. trong giai đoạn
khởi động chậm, dọ lớn cưa sổ phát lăng lên gấp đôi.
Chú ý rằng o/s là số gói dữ liệu trong một đối tượng được phát. Theo thuật 101)11
truyền ờ trên, cùa sổ phát thứ k chứa 2 k l gói (lữ liệu. Đặl l< = 0/W*S bằng số
khung cửa sổ cần thiêt (lể phát các gói dữ liệu trong dôi tượng < ). ta có :
K - niin{£ : 2° + 21 4

4- 2'M >
s
= min{<ir:2f- l a - }
s
= log2( ^ + l)}
lo & (^ + l)
o

(1.2.3.2)
-15
Trong mỏ hình đang xét, khoảng liìời gian lừ lúc phái gói <hi lié» (lầu Ilén trong
cưa sổ thứ k cho liến khi nó nhận dược gói xác nhận ACK (lỉiii tiên là vS/R + ELT.
tức là bằng thời gian phái vật lv cộng thời gian lan truyền. Ở cl.iy s là độ lớn gói (iff
liệu, dơn vị hit. R là tốc dọ truvền, đơn vị bit/giây. Thời gian I’hát 2 k'! gói dữ liệu
là (S/R) 2 k Nlur vậy Ihời gian chừ phát cùa tnộl (lọ lớn cửa N(i là :
[S/R + ELT - 2 k 1 (S/R)J (*) ( 1.2.3.3)
lức là, nếu S/R + ELT < 2 k 1 (S/R), thời gian chờ phát bằng 0. Nêu S/R 4 HLT > 2
k 1 (S/R). thời gian chờ phát bằng S/R + ELT - 2 k 1 (S/R) . Khi dó lổng thời gian
truyền một đối tượng ( K cửa sổ ) là :
o
K-\
WAIT TIME = 2*ELT + _ + V
R ủ
o
R
+ ELT - 2
-1
R
(1.2.3.4)
So sánh với trường hợp dùng cửa sổ tĩnh ta thấy chí có sự khiíc nhau là hạng thức
\Y*S/R trong cửa sổ tình cỉưực thay bằng 2 M*s/R. Nhơ trên ta tliAy K là xác định
cân trên của sô khung cứa sổ phát cần thiết để phát hết đôi Uinng (). Tuy nhiên ta
có (hổ xác định giá trị cân trên bằng cách sau :
Với :
= Uog2(l + +1.
(1.2.3.5)
và p := tnin( Q, K-l)
( 1 . 2 .3.6 )

Khi dó số cứa sổ cần thiết để truyền hết đôi urựng ( ) phái khũML’ vượt quá p và thời
gian để truyền hết dối tượng o ỉà :
o
WAIT TIME = 2*ELT + — + y
- D -t — i
K k=1
s
R
4- ELT
2 m £
R
Trong dó : O/R là íliời gian phác hế( dối tượng u, 2:!:IiLT là [hói gian thiết lập kêl
nối, còn lại là lổng (hời gian chờ trên đường truyền. Rứt gọn lại la có tổng thời gian
truyền đối tượng o có tính đến tắc nghẽn là :
o „
WAIT TIME = 2 * E L T h

+ p
R
s
p
,
s
l ị R
(1.2.3.7)
Như vậy I
1
C ÏI không có (ắc nghẽn xảy ra, ỉhời gian phát một dối tượng (ối thiểu
MINIMUM WAIT TIME là 2*ELT + O/R Khi (IÓ ta CÓ :
WAIT_TIME

MINIMUM_WAIT_TIME
F
< 1 + F-—

— — 1 —
1(0 ÎR)f
elt 11- 2
-17-
Từ công thức trên (a thày nếu ELT « O/R tức là nêu thời gian trẻ IXT rat nhò thì
giai đoạn khởi động chậm sẽ chiêm thời gian không dáng kê. f)ê có một đánh giá
chi liêi khi truyền một trang siêu văn hán ta nghiên cứu ví dụ s;ui :
Giả sứ s = 536 bytes. ELT = 0.1 giây, la gửi một (lôi lượng () kích cỡ KM) Kbytes,
khi đó dựa trên các cóng thức (1.2.3.1), (1.2.3.2), (1.2.3.5), (1.2.3.6) và (1.2.3.7) số
cira sổ cần (liiốl dể truyền dối urçmg này là K = 8. Khi (ló v<Vi các tốc độ truyền
khác nlum R ta có :
R O/R F
Thời gian truyền lối
thiểu
( )/R + 2 * RI T
Thoi gian Iruycn có
tính đến tác nghẽn
(xcm ( 1.2.3.7))
28 Kbps
28.57
gi a y
1
28.8 giây 28.'» giây
]{)() Kbps
8 giây
2

8.2 giây
8. 1 giíìy
1 Mbps
800 mi li
giAy
5 I giây
! . 5 giAv
]() Mbps 80 miỉi giây
7 0.28 giây
().<>K giAy
Từ biing trên la thấy đối với các đối tượng kích cỡ lớn. giai (loạn Iliãm (lò có thời
gian dáng kể chỉ khi tốc độ truyền lớn. Từ bảng (lòi chiếu irOn la thây khi R =100
Kbps thì p = 2 trong khi K = 8 như vậy máy chú (lừng iruvền c hí sau 2 trong 8 cửa
sổ đáu tiên.
Trường hợp khi gửi mội dối tượng nhỏ hơn : ELT = 0. ! giây. 0 = 5 Kbvtcs. Tương
tự trên ta có K = 4 và các thòng số khác như sau :
R
O/R p
Thời gian truyền tối 1 hời gian Imvền có
thiển linh (lốn tát' nghẽn
-18-
O/R + 2 * IÌL.T
Ixcin (1.2.3.7))
28 Kbps ] .43 giây
1
1.63 giây
1.73 giây
100 Kbps
0.4 giâv 2 0.6 giAv
(1.757 giây

1 Mbps 40 mill gi Ay
3
0.24 giAv
<».52 giây
Ta thAv với tốc độ đường truyền là IMbps, thời gian truyền có tính đến lắc nghẽn
lớn gấp dôi thời gian truyền lý tưởng.
Trường hợp khi ELI' lớn, BLT = I giûv. 0 = 5 Kbytes, khi loe độ truyền nhó thì
thòi gian chờ cũng đáng ké. Cùng từ các công íliức ( 1 . 2 .3 .1) , (1.2.3.2), (1.2.3.5),
( 1.2.3.6) và (!.2.3.7) la có :
R
O/R p Thời gian liuyển
lối thicúi
O/R + 2 * IỈLT
'ỉ'hời gian truyền
có lính đCn liic
nghẽn
(xem ( 1.2.3.7))
28 Khps 1.43 giây
3.4 giây 5.8 giây
100 Khps
0.4 giây
2.4 giiìy
5.2 giây
1 Mbps 40 giây
3
2.0 giày
5.0 giây
10 Mbps
4 giây
2.0 giíìy 5.0 giây

TVing kòl lại ta thây với dối lượng có kích cỡ nhò. (hời gian lie trên đường iniyOn
thì giai (loạn Ihãm dò diiu tiên sẽ có ý nghĩa nhất (lịnh. Điều Iiiiv (lúng với những gì
ta Ihấy liên mạng internet.
Trong plián này ta đi sâu nghiên cứu các thuật toán dieu khiên iiru lượng cơ hàn.
hợp thành cơ chế điều khiển lưu lượng đó ỉà : Khới động chạm ( Slow Start), tránh
-19-
tác nghẽn (Congeslion avoiceđance) . phát lại và phục hói nhanh (Fast Retransmit
và Fast Recovery).
1.3.1. Cluián dieu khiển lưu lượng TCP
Cơ chê điều khiến lưu lượng không ngừng phát iriến và cải tiến. Chuẩn nổi bật ià
Reno TCP ( tài liệu tham khảo |5Ị,[8|,[9]) và Vegas TCP. Cả hai chuẩn này đều cải
tiến từ chuẩn Tahoe TCP. Gọi W(t) là độ lớn cửa sổ kênh phát tai thời điểm t,
W(0) = I, Threshold là độ lớn ngưỡng điều khiển khi có ba gói ACK lặp lại.
Threshold = Constant. Chuẩn điều khiến kru lưựng Reno TCP (tài liệu f 11 ) có 3
bước như sau:
* Khi nhận được «ói xác nhận ACK :
if W(t) <= Threshold then
W(t+At) := W(t) +1 ; // Giai đoạn khới động chậm
else
W(t+AO \V(l) + I/W(t); //Giai đoạn tâng tuyên tính
■ Khi nhận được 3 gói xác nhận ACK :
Threshold := W(1)/ 2;
W(0 := W(t)/2;
Thực hiện thuật phát và phục hồi nhanh
■ Khi quá thời gian chờ cho phép :
Threshold := W(t)/ 2;
W(t) := l;
1.3.2. Thuật toán khởi động chậm và tránh tác nghẽn
Đây là hai thuật toán chính, để thực hiện cần dùng hai biên với mỗi một kết nối đó
là min (CWND, RWND) và ngưỡng Threshold. Trước khi thiết lập kết nối, thông

lượng irên mạne là không xác định, kết nối được thiết lạp với các thông sỗ ngầm
định trước. Nhăm tránh tắc nghẽn xảy ra khi phát dữ liệu lẽn mạng, giai đoạn khới
-2 0 -
(tọng chậm thăm dò khá năng của mạng với độ lớn cửi) sổ phiít (lược đật ban (tÀit lir
SMSS tic’ll 4 * SMSS. (ìiií Irị Threshold xác (lịnh lnrức cỏ (hể nrơng dối lc'm nhưng
khi có lắc nghẽn xảy ra giá uị này sẽ giám theo cAp so nhân. ( ’liai đoạn khới dõng
châm (tược khi W(1) < Threshold và giai đoạn (1‘ỉínli lắc nghẽn dược áp (lụng khi
W(t) > Threshold.
Trong giai đoạn khởi (lộng chậm ta có W(t) := W(l) I I. Iront giai đoạn tránh lác
nghõn độ lớn cửa sổ phát lăng luyến lính theo còng thức : W(l) = W(t) + l/VV(t).
Trong (ịuá trình truyền khi gặp lỏi thì giá trị ngưỡng thay đổi th'.'o công thức:
Threshold = max(F!ight Si/c/2. 2*SMSS)
Trong cơ chế diều khiển của TCP, số tu ẩn tự (lùng (lể Xiíc dị till gói xác nhộn ACK
cuối dược gửi thành công và số tuần tự của gói xác nhộn A( K sẽ dược' gửi ticp
ngay sau dó. Lỗi xảy ra khi gói xác nhận ACK bị mất. khi gói dữ liệu bị thay dúi
số Infill tự hay có sự lăị) lại cùa các gói dữ liệu. Điều này dẫn (lòn quá trình pliál lại
và phục hổi các gói xác nhẠn ACK bị mất.
1.3.3 Thuật toán phái và pliục hổi nhanh
Trường hợp mồi cứa số phát chỉ mất tối da một gói (lữ liệu
Thuật toán phát lại được sử dụng sau khi thực thể phát nhận ch rực một số nluì! (lịnh
các gói xác nhận ACK lặp lại (giá trị ngiìm định là 3), khi (tó người ta đũng llutAl
toán phục hổi nhanh cho đốn khi nhân lại gói Xííc nhận ACK bị mût. Thuậl toái)
phát lại và phục hổi nhanh luôn dồng thời thực hiên tlieo các hitớc sau :
(i) Sau khi nhận được gói xác nhận ACK thứ 3.giá (lị nuưữni’ Threshold đưưc (iiil
về I lightSi/.c / 2.
-21-
(ii) Truyền lại gói dữ liệu bị mất và dặt W(t) = Threshold + } * SMSS nhằm lấp
cíđy 3 gói Xỉíc nhận ACK lặp lại.
(ili) 'lĩing W(t) = W(t) + SMSS mỗi khi nhộn (lược các gói xác nhận /\CK Ihlì
4.5


(iv) ] 1 LI yen gói dữ liệu mới nếu có thế.
(V) Khi nhân (lược gói xác nliẠn ACK của gói bị mấl. Đậl W(t» = Threshold (bước
I ) và két thúc thuật toán.

W(t) (bytcs)
50000
— •
40000
Thời điểm lặp lại gói xác nhận
30000
20000
'ĩhPẽsliokl = W(t)/2
1 ()()()()__

1—

i


1

t
1 1

1
1 ■ ■

1 -
0.8 I 1.2 1.4 1.6 hiiìc(s)

Hình 1-5 : Quá trình phát lại và phục hổi nh nth
Trường hợp mồi cửa sổ phát mất nhiều Ịịói dữ liệit
Thuàt loán phát lại và phục hổi nhanh có hai nhược điểm sau :
Việc phát lại các gỏi dữ liệu bị lỗi tlÃn clến phát lại gói (lữ liệu đã được phái
thành cổng trước dỏ.
-22-
- Quá trình phát lại và phục hồi nhanh khổng thành cóng, khi dó phai chờ
theo cơ chế time out de phát lại và khi (ló độ lớn cứa so pliál bằng I.
Do đó một giải pháp dưa ra là sửa dổi Ihuậí toán khới động nhỉinh như sail :
Thíiv dổi thuật toán khới dộng nhanh theo hướng có thể phục hổi nhíéu gói Xík:
nhận ACK bị mất trong cùng mộl cửa sổ phái, ý lương ớ đín là thay vì chờ cho
đến Ihời gian timeout dể phát lại, la dùng ngay thuật loán phái lại giống như (rong
giai đoạn khởi dộng chậm và không khởi động lại thuỌt toán “New Fast
Retransmit” một cách đệ qui khi gặp 3 gói xác nhận ACK lặp lại.
-2 3 -
Tluiật loán “New Pas I Retransmit” :
Khi nhiỊn (lược 3 gói /V K lập Ini.
Khởi dộng lliuột loáti New Fast
Retransmit”
Giai đoạn thiết
Jập :
(i)
- save_w(t) =
W(t)
- Threshold =
: 1/2 * W(t)
- W(t) = 1
(ii)
- snd_high =
SỐ tuần tự lớn nhất cua gót dữ liệu

đã được xác nhận.
Phát lại :
(iii) Phát (heo thuật giống Slow Start
(iv) W(t) = W(() + ] khi W(t) < save_w(!)
(V) Không khơi dộng lại thuật toán “New Fast
Retransmit” một cách tlệ qui khi nhân dược 3 gói
ACK lặp lại
(vi) Phát gói (lữ liệu mới mỗi khi nhận dược hai gói x;ir
No
Két thúc thnẬl toán
“New Fast Retransmit"
-2 4 -
- BiKfcs (i) hoàn toàn giỏng như cơ chc điều khiến t ua thuật to.il) khới động nhanh.
- Bước (ii) siuljligh là sò luẩn tự cuối cùng cùa gói (lữ liệu lia 'lược gưi Ihành cong
trước (ló.
- rác gói (lữ liệu bị m:ĩt (lược phát lại theo cơ chê khới (lõng (Il
1111
Iron g hước (iii ).
- Bước (iv) (litni báo (fộ lớn cúíi sổ phá* khổng vươt (|Uíi (lô lớn rứii sổ tại (ló liAv i;i
lỗi.
- Bước (v) tránh íỉọi tlniậl toán một cách đ ệ qui khi nhận duọv 3 gói ACK lặp lại.
hé tịiiá của việc phát lại các gói tin bị mất.
- Bước (vi ) nhằm duy trì lính liên tục trong truyền số liệu.
Thuật toán dừng khi thiết bị phát nhận được gõi xác nhận A( K có sô tuấn lự phát
lớn hơn sndjiigh.
1.3. 4. Tuyên tính hoá giai đoạn kiioi <tộng chạm ÜOI
1
J» co < hê diều khiên lim
ỉượriị»
Nhu' ln'11 la lIiAy, (lộ lớn cửa sổ phát W(l) (ăng llieo hàm 1Ì1ÍĨ (tong giai (loạn khới

dộng chậm vn dó là nguyên nhân gây lên sự thay dổi (tội hier» VÌ1 cúc lỗi co 1 hổ xáy
ra. Giãi pháp (lưới (hìy đám bảo sự tuyến lính khi Ihay đói (ló lớn cua Nổ pliỉít
trong giai doạn khỏi dộng chậm cũng như Iron g cơ chế plt.il hũ sau (hời giun
timeout. Đó là mục đích của cơ chế tuyến tính hoá (lưới (lây.
Trong mạng internet . các kết nối có the chia làm hai loại : lo.ii có thời gian tổn lại
ngắn (loai I ) và (lài (loại 2) . Trong thực thố. dối với mạng internet, các kêt nối loai
! chiếm tí lệ lớn và lồi xay ta chủ vếu rơi vào các kêi nôi loại I. Các kết nôi loại ỉ
thường giải phóng kết nối khi nó chưa đạt tới (rạng Ihái ổn (tịnh. Điều này có nghía
ỉà giai đoạt) khơi dộng chậm có ảnh hương rất lớt) (lên các kêt Mối loại i.
Theo nguyên lắc của cơ chế diều khiển liru lượng trong TO', ta lliấv với nmrfmg
Threshold (lã hiêt. thời gian cần thiết (lể dó lớn cúíi sổ plrit lăng bàng ịiiíí tri

×