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

Nghiên cứu phương pháp đánh giá và cải thiện hiệu năng giao thức TCP cho mạng máy tính

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 (54.79 MB, 136 trang )

Đ Ạ I HỌ C QUÓ C G IA HÀ N Ô I
K H O A CÔNG NGHỆ
NG UYỄN Đ ĨNH VIỆT
NGHIÊN CỬU
PHƯƠNG PHÁP ĐÁNH GIÁ VÀ CẢI THIỆN HIỆU NĂNG
GIAO THỨC TCP CHO MẠNG MÁY TÍNH
Chuyên ngành: Đảm bào Toán học cho Máy tính và Hệ thông tính toán
Mã số: 1.01.10
LUẬN ÁN TIÉN SỸ TOÁN HỌC
NGƯỜI HƯỚNG DẢN KHOA HỌC:
1. PGS.TS. Vũ Duy Lợi
HÀ NỘI - 2003
MỤC LỤC
MỞ ĐÀU 3
CHƯƠNG 1 GIÓI THIỆU CHƯNG 8
1.1 Sự phát triển của mạng Internet



.

8
1.2 Kiến trúc mạng Internet



•••••



9


1.2.1 Mô hình tham chiếu ISO OSI


.

.
9
1.2.2 Mô hình tham chiếu TCP/IP 12
1.3 Điêu khiên lưu lượng và điêu khiên tăc nghẽn
.
14
1.3.1 Cơ bản về điều khiển kru lượng và điều khi en tãc nghẽn
14
1.3.1.1 Khái niệm
.



.
.

.

.

14
1.3.1.2 Điều khiển lưu lượng theo cơ chế cửa sồ trượt

15
1.3.1.3 Điều khiển tắc nghẽn


19
].3.2 Điều khiển lưu lượng trong giáo thức TCP 22
].3.2.1 Giao thức TCP ban dầu

.

.



.
22
1.3.2.2 Nguyên lý "Bảo toàn các ạỏi số liệu” và các nsuyên nhân vi phạm 24
1.3.2.3 Khởi động chậm

.

.

.

.

.

.
” 27
1.3.2.4 Tính thời gian khứ hồi một cách thông minh



29
1.3.2.5 Tránh tẳc nghẽn





、•
32
1.4 Kết nối mạng không dây với Internet và các vấn đề nảy sinh 33
1.4.1 Các mạng truyền thông không dây số hiện đại 33
1.4.2 Các vấn đề nảv sinh khi kết nối với Internet 36
CHƯƠiNG 2 CÁC PHƯƠNG PHÁP ĐÁNH GIÁ HIỆU NĂNG M ẠNG 38
2.1 Giới thiệu



38
2.1.1 Tầm quan trọng của việc đánh giá hiệu năng mạng máy tính 38
2.1.2 Các độ đo hiệu năng mạn2



39
2.
1.3 Các phương pháp đánh giá hiệu năng mạng

.


.

40
2.2 Mô hình Giải tích

••••:

.

.

43
2.2.1 Quá trình Poisson và các tính chất của nó
45
2.2.2 Hàng đợi M /M /l và một số kết quả
.

46
2.2.2.1 Xác suất trạng thái cân bằng cùa hàng đợi M /M /l 47
2.2.2.2 Đặc trưng thông lượng của hàng đợi M/M/l hữu hạn 48
2.2.2.3 Kích thước trung bình của hàng đợi M /M /1 hữu hạn 49
2.2.2.4 Công thức Little L=AAV và áp dụng để tính thời gian trễ trung bình 50
2.3 Mô phỏng mạng bàng chương trình máy tính 52
2.3.1 Ý tường xây dựng bộ mô phỏng mạn a
52
2.3.2 Bộ mô phỏng mạngNS (Network Simulator) 53
2.3.2.1 Gi ơi thiẹu ! T


.


.

.

53
2.3.2.2 Cấu trúc phần mềm của NS 57
2.3.2.3 Lập trình mô phỏng bằng NS

.

58
CHƯƠNG 3 ĐÁNH GIÁ HIỆU NĂNG MẠNG BẢNG MÔ HÌNH HÀNG ĐỢ I. 59
3.1 Mô hình mạch ảo

.

.


♦•••♦. 59
3.2 Hiệu năng của các cơ chê kiêm soát lôi 6

3.2.1 Kiềm soát lỗi đầu cuối - đầu cuối (enđ-to-end)

62
3.2.2 Kiềm soát lỗi theo chặng (link-by-link)
.

.

66
3.2.3 So sánh cơ chế kiểm soát lỗi đầu cuối - đầu cuối và theo chặno, 69
3.2.3.1 So sánh các cơ chế theo chặníĩ và đầu cuối - đầu cuối ờ mạiìíi tốc độ ihấp

69
3.2.3.2 So sánh các cơ che theo chànu và đầu cuôi - đâu cuối ở mang tôc đô cao

71
t \ y
' Ü *
3.3 Hiệu nâne của cơ chê điôu khiên lưu lượng băng cứa sô trư ợt 73
3.3.1 Mỏ hình cửa sồ trượt với sự bien nhận từng gỏi sổ liệu

3.3.1.1 Trirờrm hợp tải rất nặng
3.3.1.2 Trường hợp tài xấp xi bằng khà năng vận chuyên cùa dường truyên

3.3.2 Mô hình cửa sổ trượt với sự biẻn nhận

cuối cửa sô
3.3.2.1 Trirờng họp tài rắt nặng

.

.

.
3.3.2.2 Trường họp tài xấp xi băng khả nãng vận chuyẻn của đường truyên

CHƯƠNG 4 CẢI TIÉN c o CHÉ ĐIỂU KHIẺN LƯU LƯỢNG TCP
.



4.1 Các cài tiến đối với giao thức TCP cho mạng có dây
4.1.1 Tahoe TCP •…:•



•■二



4.1.2 Reno TCP
.

4. ] .3 New-Reno TCP

.


.



4.1.4 SACK TCP

• 二

二 • 二

.


.

.
4.1.5 So sánlì hiệu năng cùa Tahoe, Reno, Ne\v-Rcno và SACK TCP

4.2 Đặc tính lỗi cùa đường truyền không dây
4.3 Ảnh huửnc cùa lồi dường truyền không dây len hiệu năng cúa TCP

4.4 Các cơ chế cải thiện hiệu năng TCP trong mạng có đường truỵên không dây ••
4.4.1 Che nielli phần mạng hav làm Iĩiất sói số liệu do lỗi đường truyền

4.4.1.1 Các giải pháp ớ tầng Liên kết dữ liệu

.

4.4.1.2 Các giải pháp ờ tầng giao vận
4.4.2 Tlìông báo rõ
ràníi
về nguyên nhân mât gói sô liệu (ELN và ECN)

CHƯONC

5 PHÁT LẠI cục Bộ THỎNG MINH VÀ SNOOP TCP

5.1 Phát lại cục bộ thông m inh


.


.
5.1.1 Thuật toán tính thời gian hết giờ để phát lại cục bộ



.
5.1.2 Đồng hồ phát lại (Retransmission Timer)

.

5.2 Mô hình lỗi (Error Model) của đường truyên không dây

5.2.1 Mô hìiìh lỗi đồng đều (Uniform Error Model)

5.2.2 Mô hình lỗi Markov hai trạng thái (Two-State Markov Error Model)

5.2.3 Mô hình lỗi Markov hai trạng thái cài tiến
5.3 Snoop TCP

••••:•
5.3.1 Snoop data
5.3.2 Snoop ACKs

5.3.3 Phát lại cục bộ thông minh trong Snoop TCP

.

5.3.3.1 Chọn giá trị cho hệ số làm trơn của bộ lọc tính srtt

5.3.3.2 Chọn đơn vị thời gian đồng hồ phát lại (snoopTick) và cận dưới cùa rto


5.3.3.3 Đặt giả trị cận trên cho rto bẳne cách giới hạn số lần rút lui (backoff)

5.4 Lập mô hinh mạng mồ phòng để đánh giá hiệu năng của Snoop TCP

5.4. ' Thiết lặp cấu hình mạng mô phòng

.

.
5.4.2 Thiết lạp ụiá trị các tham sổ của mô hinlì lỗi đirợc cài đột troim NS-2

5.5 Đánh giá hiệu năng cùa snoop TCP bàng mô phòng

.

5.5/. Xác định thời gian mô phòng cần thiết

.

5.5.2 Đánh o,iá hiệu năng của Snoop TCP với các mírc độ lỗi đườníi truyền khác nhau,
5.5.3 Nghiên cửu ảnh hưởng của đông hồ phát lại lên hiệu năng của Snoop TCP

5.6 So sánh hiệu quà của snoop TCP với một số phươna pháp khác

PHUƠNG HU ỚN G NGHIÊN c ử u TIẺP THEO

130
DANH MỤC CỎNG TRÌNH CÔNG BÔ CỦA TÁC C;IẢ


131
DAM ! MỤC TÀ丨 LlẸU I HAiM KHẢO
132
BẢNG CHỦ (;IA 丨(Index) 136
74
75
77
78
79
81
82
83
83
84
86
87
89
90
91
94
94
94
96
97
20
20
21
23
27
M Ở ĐÀU

Mạnẹ Internet đã phát triển bùng nổ trong hơn 20 năm qua; hiện nay, Internet đă
mở rộn2 thành một liên mạng trên phạm vi toàn câu và dược coi là cơ sở hạ tâng
cho truvền thôníĩ của xà hội loài người. Trono mạn a Internet; bộ siao thức TCP/IP
■% /
t

đã dược sử dụng ngay từ những ngày đâu tiên và giữ vai trò quyêt định đôi với sự
i \
7
hoạt động của mạng Internet. Giao thức TCP sử dụng cơ chê điêu khiên lưu lượng,
r
〜 n
/ r •* f
tăc nghẽn và lôi từ hai đâu của kêt nôi đê vận chuyên thông tin trên Internet một
' V
r
cách hiệu quả và tin cậy. Trong suôt nhiêu Ilặm được sử dụng rộng rãi, các khiêm
khuyết thể hiện ra đà dược phát hiện và khắc phục. Chính vì thế, TCP hoạt dộrm rất

, 、 产 %

tôt trong các mạng kiêu truyên thông: sử dụng các đường truyên có dây với tỉ suât
〜 r
• •
lôi bit thâp, tin cậy và các máy tính nôi mang cô định. Trong các mang như vậy,
rc p coi việc mất gói số liệu là tín hiệu báo tắc nehẽn dã xảy ra và sẽ phàn ứng một
cách tích cực dể tránh hiện tượng này, bằng cách giảm lưu lượng dưa vào mạng.
Thực tế đòi hỏi phải mờ rộng Internet, kết nổi các mạng khác nhau vào Internet
và sử dụng nhiêu loại môi trường truvên với các đặc tính rât khác nhau vê lôi
Iruycn, dộ trê lan truven, tính cân xứng vê dải thông của các dường truyên v.v. Thí

r
r
1
dụ, kêt nôi các mans khôn a dây với các trạm làm việc có thê di động vào Internet.
V / 〜 / %
Đường truyện không day có đặc trưng là tỉ suât lôi bit cao, thât thường, đông thời
thỉnh thoảníí bị dứt doạn do sự chuyên cuộc ơọị khi các máy tính di động. Giao thức
TCP phan với sự lììât gỏi tin do chât lượn2 đường truyên xâu giông nỉur phản
ứng với hiện tưựnsz tắc nahẽn, dó là giảm lưu lượns đưa vào mans

phản írns như
vậy rõ ràng là không thích hợp, làm cho hiệu năng của TCP bị giảm rất trầm trọns.
Đe cải thiện hiệu năns của TCP,người ta đã đề xuất vả áp dụns nhiều phương
pháp khác nhciu: tuv nhiên, cỏ thể chia chúnơ làm hai loại.
Loại «iài pháp thứ nhầt: tlụrc hiện che ơiấu sự mất 2Ói số liệu khỏns phải do tấc
Iiehẽn, lảm cho các d ườn li truyên chât lượn 2 kém thê hiện ra trirớc bẻn sửi như các
đưừn» truvền có chất lượng cao hơn, nhưng có dải thông nhỏ hơn. Theo các phươno


r *
pháp thuộc loại này. nói chune. bên gửi của kêt nôi TCP chỉ phát hiện được sự mât
/ / V •*
Gỏi SÔ liộu mìy ra do lac imlicn. do đỏ khỏn« cân plìài sứa dỏi các «iao thức da dược
cài đặt tại bên gửi. Một sô trong các công trình nghiên cứu đâu tiên theo hưởng này
là[5|,[16]. [47], [48].
• \ t w
Loại giải pháp thứ hai: thực hiện cải tiên giao thức TCP băng một sô cơ chê, làm
• •

_



cho ben gửi của kêt nôi TCP có khả năng phân biệt dược nguyên nhân gây ra mât
r \

, •

gói SÔ liệu, nhờ dỏ tránh được sai lâm dân đên làm giảm hiệu năng TCP rât trâm
trọn2, đỏ lồ thực hiện thuật toán trảnh tắc imhẽn khi không xảy ra tắc nghen. Các
phươne pháp thuộc loại này đêu đòi hôi phải sửa dôi dao thức TCP trên các máy
/ /

f f t

tính kêt nôi Internet, kê cả các thiêt bị định tuyên (router). Một sô trons các côns
trinh nshiên cứu dầu tiên theo hướns nàv là [9]. [35], [36].
Luận án di sâu nshiẽn cửu loại eiải pháp thứ nhât, khôim đòi hòi phải thay đôi
aiao thức TCP trên mạng Internet truyền thống.
Theo phương pháp I-TCP [5], [47], kết nổi TCP được chia làm hai kết nối tại
trạm cơ sở, là cửa ncõ nối mạng Internet với mạng không dây; một kết nối đi qua
chặng không dây; kêt nôi kia đi qua phân mạng có dây. Phương pháp Ỉ-TGP cải
thiện được hiệu nãim TCP, ưu đi êm chính của nó là tính dơn giản; tuy nhiên nó có
•»
r
«V
y t \ r \ r
nhược đi êm rât lớn là mâu thuân với các cơ chê điêu khiên kiêu đâu cuôi - đâu GUÔÌ
của TCP. do dó có thể làm mất hoặc giảm tác cỉụns của các cơ chế này.
Pỉnrơng pháp dược dề xuất trons [48] là phát lại nhanh trong trirờns hợp kết nối
bị ẹián doạn do sự chuyển cuộc eọi, nó cải thiện đánẹ kể hiệu năns của TCP; tuy

nhiên, phirơrm pháp nàv cỏ nhược điểm lớn là đòi hỏi phải sửa đổi giao thức liên
mạng mobile IP, làm cho nó cỏ khả năng phát tín hiệu báo sự kết thúc việc chuyển
cuộc ưọi; nạoài ra giao thức TCP trên các rnáv tính dầu cuối cung phải sửa đổi.
、 /
Chủng tôi chọn phương pháp snoop TCP được đê xuât troníỉ [16] (1995), thuộc
loại giải pháp thử nhâu nhăm cải thiện hiệu nâng của giao thức TCP trong mạng có
dường truyền khôns dầv là chặng cuối cùng của kết nối eiữa người sửi và người
nhận. Giải pháp mì' có hai ưu đi êm nôi bật là: khôns dòi hòi phái thay đôi các cơ
chế điều khien dầu cuối - dẩu cuối của TCP và khòn» cần phài sứa dồi bộ eiao thírc
TCP/IP đà đưực cài dặt trên các máv tính của ỉĩiạnii Internet. Theo siải pháp Snoop
TCP. 11ÌỘI clìirơim irình dậc biệl gợi là Snoop asent SC dirợc cài đặt tại máy tính nằm
ờ cửa imỏ nôi Internet với mạng khôns dây. Asicnt này sẽ giám sát các gói sô liệu
và bien nhận cùa ket nôi ICP đi qua nó. đê thực hiện phát lại một cách thông minh
các gói sô liệu bị mât trên chặíỉg đường truyên không dây. Hiệu quả của việc phát
lại chủ yếu dựa trên
ước
lượng thời gian khứ hồi cục bộ trên chặng này, trong đỏ
việc chọn đơn vị thời gian của đông hô phát lại có ý nghĩa quyêt định.
Chúng tôi đã

nghiên cửu kv cúc thuật toán ước lirợníỊ tìuỳi gian khứ hồi thông minh; đa nghiên
cửu kv các cỉậc diènì lôi của aicờn^ truỵén klìỏtì^ cỉảy và ành hường của nó lèn hiệu
nỗn^ TCP. Dựa ỉrẽn các kẻ í quá nghiên cửu đó, chún^ tôi đã nêu các đê xuớí có
tính p/nrơng pháp luận đế tính ước lượng thời gian khử hồi thông minh cho chặnẹ
không
dâv. Các đê xuâ t cụ thê của chúng tô i gôm có: l / Chọn đơn vị th ò i gian

cùa đỏng lĩô p lìát la i a id snoop agent bang 2 lân thời ẹidỉỉ khứ hôi trên chặng

không (ỉây khi đường truyền tốt; 2/ Chọn cận dưới của th ờ i gian hết g iờ đê phát


lạ i (rto) đủniỊ băng đơn vị thời gian của đông hô; 3 / Chọn cận trên của thờ i gian

hết g iờ đề p lĩá í /a i bằng cách g iớ i hạn số lần rú t lu i (backoff),
^
9 •
Hiệu năng của Snoop TCP có áp dụne dê xuât cải tiên của chiinç tôi được so
sánh với Snoop TCP chưa cải tiến cũrm nhir TC1) thông thường. Chúng tôi đánh giá
hiệu năn« bầnạ plurơim pháp mô phỏns, sir dụng phần mềm mô phỏne mans NS. dó
là bộ mô phỏns mạng được sử dụng rât phô biên, đặc biệt ià trong các trường đại
học và viện rmhiẽn cứu ờ Mỹ cũng như ờ nhiêu quôc gia khác. Kêt quả nghiên cứu
băng mô phỏim của chúns tôi đã chỉ ra răns, so với TCP thônç thường, Snoop TCP
(chưa cải tiến) có thể cải thiện
thỗno
lượng đến hơn 400%, tronơ trường hợp mans
WAN có đường truyền không dây. Với cùng mạng mô phỏng như vậỵ,Snoop TCP
có áp
dụxvi
dề xuất cài tiến của chúns tôi có hiệu năns cao hơn nữa. đạt tới hơn
150% so với Stioop TCP chưa cải tiến.
Mục dích chính của Luận án này là đóng sỏp vào các
nghiên cihi phương pháp

đánh giả và cài ỉhiệrì hiệu ỉìủng giao thức TCP cho mạng máy tính có đường fruyen
k/ìóng (ỉây. Dè llìirc hiẹn nụic liêu chính, chủíìii tỏi còn imhien cứu một so vấn dò
khác có lien quan in.rc tiếp, hồ trợ cho nó. đó là:
1. Các cơ clìê cỉiẽu khiên lưu lirựrm và tãc nshẽn trone siao thức TCP.
ê t 9 \ •% ,
2. Các cải tiên đôi với cơ chê điêu khiên kru lượng và tăc nghẽn trong TCP.
3. Đặc lính lỗi của đường truyền không dây và các Mô hình lỗi (Error Model).

4. Phương pháp đánh siá hiệu năng mạn2. bằng mô hình Giải tích và mô phỏna.
Luận án gôm phân mở đâu, năm chươna và kêt luận. Nội dung chính của các
chươno dược trình bày tóm tắt dưới đây.
Chươna 1 : Các vấn đề cơ bản về điều khiển lưu lượng và tấc nghẽn tronơ giao
thức TCP; việc kết nối các mang không dây với Internet và các vấn đề nảy sinh.
\
Chương 2 trình bày tâm quan trọns của việc đánh aiá hiệu nănạ mạng, các dộ đo
hiệu nãim thòng dụns, và các phươne pháp chính đánh giá hiệu năn2

mạng.
Chương 3 trình bày phương pháp đánh giá hiệu năns mạng bănR mô hình hàng
f
9
đợi. I rons mục 3.2, chúns tôi trình bàv một kêt quả nẹhiên cứu, sử dụne lý thuvêt
Hànạ đợi đổ tính toán định lượn a hiệu nãn» hai cơ chế kiểm soát lồi đầu cuối - đầu
cuối (cnd-to-end) và kiểm soát lồi theo chặng (link-by-link).

hông qua việc so
sánh két quả, chúng tôi đã rút ra được một số kết luận hữu ích, tron? đó có một số
kết luộn Ììiinh chửng cho tính hợp lý của giải pháp Snoop TCP.
/
i \ y
Chương 4 trình bày các cải tiên trong cơ chê điêu khiên lưu lượng của giao thức
TCP; đặc tính lôi của đường truyên không đây và ảnh hưởng của nó lên hiệu năng
cùa TCP. Nội (June chươns: 4 là cơ sở trực tiếp cho các nshiên cứu ở chương 5.
Chirơna 5 trình bày các nghiên cứu sâu về eiải pháp phát lại cục bộ thông minh
và snoop TCP. Tác giả luận án cũng trình bày các đê xuât vê tính ước lượng thời
gian khứ hỏi trên chặng không dây và đánh giá hiệu quà của chúng băng mô phỏno.
Ba kêt quả nghiên cứu băng mô phỏng là: 1/ Xác định thời gian mô phỏnc cân thiềt
dối với mans mô phỏns Snoop TCP; 2/ Đánh giá hiệu năng của Snoop TCP ứng với

các mức dộ lồi khác nhau của đường truyền khôna dây; 3/ Nghiên cửu ảnh hưởĩìR
của đồng hồ phát lại lên hiệu năng của Snoop TCP. xác định được giá trị tốt nhất
của đơn vị ihừi eian của đồne hồ phát lại.
Luận án dã được trình bày, thảo luận và thông qua tại Bộ môn Mạng và Truyên


thôn<4 mảy tính,Khoa Công nghệ, Đại học Quôc gia Hà nội; đã được bảo vệ tại HỌ1
ĐỒNG ĐÁNH GỈÁ CÁP c ơ SỞ LUẬN ÁN TIÉN sĩ, ngày 16 tháng 5 năm 2003.
f r ^
Một sô kêt quả nghiên cứu của luận án đã được báo cáo tại Hội thảo Quôc gia “ Các
vấn đề chọn lọc của Công nghệ Thông tin” (Hải Phòng, 6/2001); Hội thảo Khoa học
Quốc sia lần thứ nhất: ICT.rda (Hà nội, 02/2003) và trình bày trone hai buổi semina
tại trunsi tâm CDMC (Center for Distributed and Mobile Computing), Đại học
Cincinnati, Hoa Kỳ. Các kết quả nghiên cứu chính của luận án đã dược công bố
trons [1]

[2], [3]

[42]

[43]; trong đỏ [42] là nội dung chính của chương 4,đã được
báo cảo tại semina của trung tâm CDMC (14/5/2002); [43j là một phần nội dung
cùa ch iron 2 5, cỉâ được báo cáo tại semina của truns tâm CDMC (02/8/2002).
Tác aiả xin bày tỏ lòng biết ơn chân thành đối với Khoa Công nghệ, Đại học
Quôc gia Hà Nội, đã tạo điêu kiện thuận lợi và giúp đỡ nhiêu mặt đê tác giả hoàn
thành được luận án. Xin chân thành cám ơn các đồng níhiệp ở Khoa Công nghệ đã
dộim viên, eiúp đỡ tác eià trong thời gian qua.

ảc ơịả xin bày tò
\òno,

biết ơn chân thành dổi với GS. vs. Nguyễn Văn I ỉiộu,
Chủ nhiệm Khoa Công nghệ, Đại học Quốc gia Hà Nội,đă tạo cơ hội tốt để tác lỊÌả
được đến nçhiên cứu khoa học tại một Đại học lớn của Hoa Kỳ trong thời gian đang
thực hiện luận án, từ thảng 2 đến tháng 8 năm 2002.
Tảc giả xin bày tỏ lòng biết ơn chân thành đối với Đại học Cincinnati, Hoa kỳ, đã
tạo điêu kiện thuận lợi đê tác giả được đên tham gia các hoạt động nghiên cửu khoa
học như một thành viên của Trung tam Tính toán Phân tán và Di độns,Khoa Côns
imhệ thône tin. Trườn2 Dại học Côns
noỳiệ
(Center for Distributed and Mobile
Computing Department o f Electrical and Computer Eindneering and Computer
Science, College of Engineering, University of Cincinnati).
1'ác oiâ xin bàv tỏ lòn ụ biết ơn sâu sắc đối với PGS. TS. Vù Duy Lợi và PCiS.
Nguvền Quốc Toán đã tận tình hướng dẫn, chi hảo và cho nhiều lời khuyên quý báu
troniz suỏt quá trinh lác 2Ìâ thực hiện luạn án.
C H Ư Ơ N G 1 G IỚ I T H IỆ U C HUN G
1.1 Sự phát triền của mạng Internet
Năm 1967, Robert L. G. đă đề xuất một mạng máy tính thí nghiệm, sau đó trở
thành mạnơ ARPANET (Advanced Research Projects Agency Network) của Bộ
Quốc phòng Mỹ. Ngay từ thời kỳ đầu,các nghiên cứu đã cho biết rằng, nếu sử dụng
kỹ thuật chuyển mạch gói cho ARPANET sẽ đem lại hiệu quả cao hơn các phương
pháp khác về nhiều phươns diện: tính kỉnh tế,tính sẵn sàng sử dụng và tính hữu
dụn

. Chính điều này đã thúc đẩy sự nghiên cứu về chuyển mạch gói và đến đầu
' > 7
năm 1969, Bộ Quôc phòng Mỹ đã ký hợp đông triên khai thực hiện mạng
ARPANET với hãnẹ BBN (Bolt Beranek, and Newman) có trụ sở đóng lại
Massachusetts. Đôn tháng 9 năm 1969,mạng máy tính chuyên mạch gói đâu tiên
p

*1
t f •

trên the eió.i ra đời, sau đó đă phát triên rãt nhanh chỏng, kỗt nôi mạng của các
trường đại học. các truns tâm nghiên cứu của chính phủ và của các hãng công
nghiệp trên khăp nước Mỹ. Mạng ARPANET cung câp các dịch vụ truỵên thông,
,
f y
cho phép truy cập từ xa tới tât cả tài nguyên của hệ thông, do đỏ đem lại nhiêu lợi
ích cho Bộ Quôe phòng Mỹ cũng như cho cộng đông khoa học.


_
\
Trong quá trình nghiên cứu và triên khai mạng ARPANET, nhiêu tư tưởng và
phươns pháp mới lần đầu tiên được đề xuất và đưa vào thực hiện, trong đó có các
%
eiao thức được phân lớp, mạn ạ có các đường trục và các đường rẽ nhánh, điêu
khiển lưu lượn2

(flow control), đặc tính thứ lồi; với các đặc tính này, mans vẫn có
khả nănR hoạt độn2, được khi có một số nút hoặc đườns truyền bị hỏng mà khôns
cần sự can thiệp của người điều hành. Nçoài ra, nhữne người nshiên cứu và thực
hiện mạna ARPANET đã phổ biển việc sử dụng các mô hình Giải tích và mô hình
Mô phòna để dự đoán và đánh giá hiệu năn2

mạng. Trong số các nhà khoa học
*> >
tham aia dự án ARPANET phải kê đên L. Kleinrock vả các cộng sự của ông ở Đại
học California, Los Angeles (UCLA)-

r
f
Maim ARPANirr có ảnh lìirởns to lớn đên sự tiên hoá của các mans thương mại,
r .
'
,
mỏ hiỉìli tham clìiẻu đirợc sứ dụn^ troim mạne A R PA N E T la tiên thân của tât cá các
loại mạn<ỉ máv tính, kể cả mạng Internet ra đời sau này. về sau, khi các mạng vệ
tinh và vô tuyến ra đời và kết nối vào ARPANET thì các giao thức đang được sử
dụng trong ARPANET khôn2 đáp ứng được yêu câu liên mạng, do đỏ cân phải có
các mô hình kiến trúc mới, có khả năng liên kết nhiều mạng với nhau một cách
tronơ suốt. Kiến trúc này được gọi là mô hình tham chiếu TCP/IP, tên này được đặt
theo tên của hai giao thức cơ bản của nó là TCP và IP.
/
1.2 Kiên trúc mạng Internet
r
/ X /
Các mạn

mảy tính hiện đại được thiêt kê băng cách phân chia câu trúc ở mức độ
cao nhàm làm giảm độ phức tạp của việc thiết kế; mạng được chia thành các tầng
(layer), môi tâng được xây dựng dựa trên tâng bên dưới nó. Trong các mạng khác
nhau, số tầng,tên các tàng, nội dung cửa các tầng và chức năng của các tầng có thể
khác nhau; tuy nhiên, mục đích của mỗi tầng là sử dụng các dịch vụ do các tầng bên
r f r f \
dưới cun ụ cap, đê cung câp những dịch vụ nhât định cho các tâng cao hơn, sao cho
các tầng này khi sử dụng các dịch vụ của nó5 không cần phải quan tâm tới các thao
tác chi tiết mà các dịch vụ phải thực biện.
Dê các ìnạne máy tính khác nhau có thê truyên thông với nhau,chúng cân phải
tuân theo các chuẩn. Người ta đã xây dựng nên các chuẩn như vậy, chúng còn được

f r ể t
gọi là mô hình tham chiêu, làm cơ sở chung cho các nhà thiêt kê dựa vào khi thiêt
kế ììiạnR. Hai mô hình tham chiếu quan trọng là ISO OSI và TCP/IP sẽ được trình
bày ở các phần dưới đây.
1.2.1 Mô hình tham chiếu ISO OSI
MÔ hình mans máy tính này do Tô chức Tiêu chuân Quôc tê ISO (International
Standard Organization) đề nehị năm 1983,được gọi là mô hình tham chiếu ISO OSI
(ISO Open Systems Interconnection Reference Model), thườns được gọi neẳn gọn
là mô hình OSI. f)âv là bước tiên đâu tiên tới sự chuân hoá quôc tê các ẹiao thức
khác nhau về truyền thông, giải quyết việc kết nổi các hệ thốns, mở, là các hệ thống
tuần theo các ch uẩn dược chỉ rõ, do đó các hệ thống này có khả năng truyền tlvông
f
■»
f x

với các hệ thông khác tuân theo các chuân giông, nỏ. Mô hình OSI có bảy tâng.
3. laiìg mạng
2. Tẩrìgliền kết
I
rpÀ _ _Ạ,
\ ề
. lârgvậtiý
A
* » §)*
| M l
1 -OU u
1^5-1
3. TâiigrrjaJïg
r\
rpA.

4%
Ạ. « Ạ. I
'Ạ
2.Taríg lienkêt dữ bệu
• Tầng vậì lý
3. Tẩngmạqg
:5 L . ' _
2. Ĩầĩ^g !iễn kết dữ lieu:
l. Tẩng vât lỷ
Nút n.^uồn Đường truyền vật lý (tín hiệu điện) Nút đích
Hình 1.1 Mô hình tham chiếu OSI
Tầng Vật lỷ (Physical Layer).
Tầng vật lý giải quyết các vấn đề ghép nối cơ khí,
điện và RÌao thức để có thể khởi tạo,duy trì và kết thúc các liên kết vật lý giữa các
thiết bị truyền thông. Tầng này liên quan đến việc truyền dòng bit giữa các máy
băns, kênh truyên thông vật lý, không xét đên ý nghĩa và câu trúc của dòng bit.
TầnỉỊ Liên kết dừ liệu (Data Link Laver).
Nhiệm vụ chính của tầns này là thiết
lạp, duy tri. huỷ bỏ các liên kết dữ liệu, kiểm soát lồi truyền, điều khiến lưu lirợne.
điều khiến truy cập mồi trường truvền thông.
minh hoạ trên hình 1.1.
íửn-dur-
Sự trao đoi dữ liệu
r fú W d u r : Y Ì
V
giữa các chư ong trinh ứng dụng
^ Ullg ClỊUlg X

-1 ^ -


c u
ửr
c r
Tầng tỉinh dữ 1ĨỆU
rp À I #A
iangphicîi
Tang Kao vằn
7 Tang
ủ:ìg dụ\i
6. Tầng trbih dữ liêu
5
Tang phiên
.o
la
> S b
' I
T ;
vấn
Truyền thông
giữa các thực thê
ngang liàiìg
được
A— I—
I ấ u e ẩ u
-s
Ỉ3
i
6b
Tầng Mang (Nety\>ork Layer).
Tầng mạng phải giải quyết nhiều vấn đề phức tạp,

như: định tuyến, giao tiếp giữa các mạng và điều khiển tắc nghẽn (congestion
control); trong đó định tuyến ỉà vấn đề quan trong nhất.
Tầng Giao vận (Transport Layer).
Tầng này thực hiện việc truyền tin, điều
khiển lưu lượng và điều khiển tắc nghẽn đầu cuối - đầu cuối (end-to-end), thực hiện
ahép kênh vả phần kênh.
Tầng Phiên (Session Layer).
Ians phiên tổ chức và đồng bộ việc trao đổi dữ
liệu eiừa các tiến trinh ứng dụng, cho phép người sử dụng trển các máy khác nhau
Ihiôt lộp, duy tri. huỷ bỏ, đôns bộ phiên truyên thông giữa họ, đăng nhập từ xa vào
nhữnơ hệ thống chia sẻ thời gian.
Tãng Trìnli dừ liệu (Presentation Layer).
Tâng này giải quyêt các vân đê liên
quan đến CÍ1 pháp và ngữ nghĩa của thông tin được truyền, làm cho các máy tính sử
dụnii cấc biểu diễn dữ liệu khác nhau có thể truyền thông với nhau. Tầng này cũng
thực hiện các dịch vụ như nén hoặc mã hoá dữ liệu.
Tầng ủ ng dụng (Application Layer).
Tầng này có nhiệm vụ tạo ra giao diện
thuận tiện giữa người sử dụng và môi trườno truyên tin; cung câp các dịch vụ hô trợ
cho các ửn« duns khồna thuộc IĨÌÔ hình OSL thí dụ: thư điện tử (email), truyền tệp
(ftp), WWW."
Truyền (lừ liệu trong mô hìtĩh OSỈ.
Khi ứng dụng X trên một máy tính cần gửi
dữ liệu cho
ừno
dụng Y trên một máy tính khác trên mạng, nó sẽ trao dữ liộu cho
A 、 9 /
f f
tânư ứng dụna, tân2; ứng dụriíi có thê oẵn thêm m ột khôi dữ liệu có câu trủc xác
định, gọi là header, vào đâu gói sô liệu của nó rôi gửi xuông tâng trình dữ liệu. Tâng

trình dữ liệu có thể chuyển đổi gói số liệu này theo các cách khác nhau và có thể bổ
sung header của nó rôi gửi kêt quả xuông tân2 phiên bên dưới. Đôi với tâng nàv, nó
không phân biệt header của tâng trên với dữ liệu trong gói sô liệu mà nó nhận được.
r \ \
Quá trình này cứ tiêp tục cho tới khi dữ liệu truyên xuông tâng vật lý, tại đó đừ liệu
\
___

mói thực sự được truyên tới máy nhận. Tại máy nhận, các header được lân lượt loại
• • •
^ V • •
^ * • • •
bỏ khi 2Ói số liêu đi qua các tần a từ dưới lên trên, cho tó.i khi nỏ đi đến úne dụng
lìhạn Y ,'ĩâ nẹ nào phát hiện ra lòi thì veil cầu plìát lại nçay tại tâng đó.
Dơn vị dữ liệu theo mô hình tham chiếu OSI.
Tại mồi tầng của mô hình OSI,
•ỹ 1 ^

các thực thê n2.ans hàns có thê trao đôi với nhau các đơn vị dữ liệu. Môi đơn vị dữ
' 、
9

liệu bao côm một trườne dừ liệu và một phân ơọi là header, có vai trò như chiêc
“ phona b r đê chứa trường dữ liệu. Header là phân đâu của môi dơn vị dữ liệu, chứa

p
t ♦
các địa chỉ cân thiêt đê cỏ the gửi đơn vị này tới đích, ngoài ra, nó còn chứa các
thôns tin điều khiển. Tại mỗi tầng của mô hình, đơn vị dữ liệu này thường có một
•f % f

'
tên 2ỌÌ riêna, chăng hạn, tại tâng Liên kêt dừ liệu, là khung tin (frame), tại tâng
9 \
mạnu, lả sói sô liệu (packet), tại tâng giao vận. là phân đoạn (segment). Tuy nhiên,
trons rât nhiêu tài liệu, người ta hay dùng một thuật ngữ chung là gói sô liệu; chúng
tôi cũn2

sẽ sử dụng thuật ngữ gói sô liệu theo nghĩa như vậy.
1.2.2 Mô hình tham chiếu TCP/IP
Hình 1.2 trình bày hai mô hình tham chiếu TCP/IP và OSI để tiện so sánh.
M ô ìùiủx OSI
M ô iùiih TCP/IP
Tầng ứng dụng Tầng ứng dụng
Tầng trình dữ liệu
n r iẰ t • A

ãng phien
Tầng giao vận Tầng giao vận
Tẩng mạng Tâng Internet
rrtX
f •八 4 /N. I 1 *
Ak
lẵng lien ket dữ liệu
Tầnơ Host-to-net\vork
r p Ằ /V.
ị f

ẵng vật ly
Khong
có trong

mô hinh
Hình 1.2 Mỏ hình tham chiếu TCP/IP và mô hình tham chiếu OS1
Tầng Internet
Tang Internet đôi khi dược eọi là tans IP. có chức năn

tươno tự tane mạng tronsĩ
mô hình OSI. Nhiệm vụ của tầnR Internet là dịnh tuyến 2Ói số liệu, diều khiển lưu
lượng và cliều khiển tắc nghẽn. Mỗi gói số liệu có thề đi đến đích theo các con
dường khác nhau; tại dích. thứ tự nhận các aỏi số liệu có thể khác với thứ tự lúc
chúng dược phát đi từ nguồn, do đỏ tầng Giao vạn trên nó phải ai ải quyết vấn đề
thứ tự các gói số liệu. Tầng Internet định nghĩa một khuôn dạno oói số liệu và eiao
thức chính là lỊÌao thức IP.
Tâng íỊÌao vận
Tầrm này plìài được thiết kế sao cho các thực thể naans hànẹ ở máy nsỊuồn và
máy đíclì có thể truyền thông với nhau, tương tự như trong mô hình OSI. Tại tầng
t \
/ %
9
này. naười ta định nshĩa hai giao thức kiêu đâu cuôi - đâu CLiôi là TCP
(Transmission Control Protocol) và UDP (User Dataaram Protocol).
TCP là dao thức hướng kêt nôi, bào đảm, nỏ vận chuyên dòng byte sinh ra từ
máy (neuồn) tới một máy tuỳ V khác (đích) trong liên mạng mà khôn2 có lồi. TCP
phân mảnh dòne byte từ các tầng trên đi xuống thành các gói số liệu riêng biệt rồi
chuyên tìrim gói sô liệu này xuông cho tâna Internet. Tại máy đích, tiên trinh TCP
f f \
*>
nhộn vả thực hiện lãp ráp các gói sô liệu nhận được lại thành dòng byte rọi chuyên
lên lâng trên. TCP cũng có các chức năng điêu khiên lưu lượn

và điêu khiên tăc

nghẽn; các chức năng này sẽ được nghiên cứu kỹ tại mục 1.3 của chương này.
UỈ)P là 2;iao tlúrc khônơ hướng kết nối. khôna bảo đảm (khôno có sự biên nhận
cho gói số liệu UDP). dành cho các írnG

dụns khônơ muốn sử dụna các chức năng
điểu khiến lưu lượng và phân phát các gói số liệu đúnẹ thử tự của TCP mà muốn tự
ĩ
9
cuns câp các chức năng này. ƯDP được sử dụnR rộn2

rãi trong các ứng dụng kiêu
dùn

một lân, khách/chủ và các ÚÌ1ÍỊ dụng troníi đó việc phân phát tin nhanli chóng
ẽ ệ
quan trọng hơn việc phân phôi tin chính xác. Mồi quan hệ giữa IP, TCP và UĐP
dược thổ hiện trên hinh 1.3.
Tên tầng tương ứng
trong mô Ỉùỉũì OSI
ứng dụng
Gao vận
Mạng
V ật lý
+ Liên kèt dừ hêu
TELNET FTP
SMTP
DNS
Các
giao
thức

Các
mang
TCP
UDP
ARPANET SATNET
Packet
radio
U N
I linh 1.3 Các siao thức và các
nrdWj.
iroiie mỏ hinh rcp/ip ban dau
Tfmg
U nịỊ dụtĩỉỊ
Tầng ứng dụng chứa tất cả các giao thức bậc cao, hỗ trợ ứng dụng. Trong các mô
hình đầu tiên, tầng này bao gồm các giao thức TELNET (virtual terminal protocol
) ,
F ri) (File Transfer Protocol) và SMTP (Simple Mail Transfer Protocol) v.v.
TầníỊ 11 ost-to-Neiwork
Ben cỉirới tans Internet là một khoàne trống lớn, mô hình tham chiếu TCP/IP thực
tế hầu như không nói gì về tầng này, ngoài việc chỉ ra rằng máy tính (host) phải nối
với mạng bànạ cách sử dụrig một số giao thức để có thể sửi các gói sổ liệu IP đi
trên lììạim.
Yầno
này khỏno, dược dịnh nshĩa và nó khác nhau trên các máy lính
khác nhau cùnạ như trên các mạnu khác nhau [8].
1.3 Điêu khiên lưu Iưọìig và điêu khiên tăc nghẽn
r / \
•?
p •
Nói chung, nêu không có một cơ chê điêu khiên nào dôi với các lưu lượng đên



• f \

mạna thì tăc nghẽn là điêu chăc chăn sẽ xảy ra. Chính vì vậy, cân phải có các quy
tăc chi phoi việc nhận các lưu lượng từ bện neoài đi vào mạng, các quy tăc này
thường được eợi là các cơ chê điêu khiên lưu lượng, việc thực hiện các cơ chê này
được aọi là diều khiển lưu krợng. Nếu các cơ chế điều khiển lưu lượng không được
tricn khai llìực hiện đúng đắn,nó có thể đưa mạn

đến trạng thái bị tắc nghẽn, dó là
trạng thái khi lưu lượng đến mạng tăng lên, thông lượng vận chuyển của mạng lại
giảm đi. Thậm chí tình trạng tăc nghẽn có thê trâm trọng đên mức mạng bị nghẹt
1
ề \

hoàn toàn, thôna lượng vận chuyên của mans tụt xuông băng không, trạng thái này
thườrm dược oọi là deadlock [39]

[41].
1.3.1 Co biín vê điêu khiên luu lirọng và điêu khiên tăc nghẽn
1.3.
/•
l Khái niệm
D iểii klìiẽn lưu hvợníỊ
liên quan dcn việc vận chuyên iziừa một neười mri dà bi ốt
nào dó và một nẹười nhạn. Nhiệm vụ cùa nó là đam bào rầnu bên aửi có tốc dộ
nhanh klìỏne the tiếp tục iruyền dừ liẹu nhanh hơn mức nìà bcn nhạn có the ticp thu
đirợc. Dieu khi en lưu lượne luôiì luỏìi lien quan đến một sự phéin hồi trực ticp từ
p

•» , ,
phía nmrời niìận don người sửi đe báo cho bên gửi vẽ khá nãng nhạn sô liệu thực
cùa bên nhận.
Điều khiển tác "g h ẽ "
thực hiện nhiệm vụ đàm bảo cho mạng có khả nãng vận
ch uy en lưu lượng đưa vào, đó là ruột vân đê toàn cục, liên quan đen hành vi của
mọi nút mans, quá trình chứa và chuyển tiếp trong mỗi nút mạng và các yếu tố khác
có khuynh hướng làm giảm thông lượng của mạng.
、 •丨 、 /
Dieu klìiẻn lưu lirựnẹ và diêu khiên tăc nẹhẽn ỉà hai khái niệm khác nhau, nhưn«
、 今 >
ề \
liên quan chặt chè với nhau. Điêu khiên lưu lượng là đô tránh tăc nghỗiL còn điêu
khiển tắc rmhẽn là để giải quyết vấn đề tắc nsĩhỗn khi nó xuất hiện hoặc cỏ dấu hiệu
săp xảy ra. Trong thực tê triên khai thực hiện các thuật toán điêu khiên lưu lượng và
điều khiến tắc nahẽn, nhiều khi cả hai thuật toán này cùng dược cài đặt trong một
siao thức, thê hiện ra như là một thuật toán duy nhât,thí dụ trong giao thức TCP
[26]. [27]. Trong nhiều tài liệu thuộc lĩnh vực mạng máy tính, hai khái niệm này
được sử dụng như nhau và được coi là đôns nghĩa.
Trong các phân sau của Luận án
f f % s \ i \ 7
này, (ác già sẽ theo quan đỉêm đó, các vân đế vê điêu khiên lưu lượng và điêu khiên

íăc nghẽn sẽ được trình bàv chung, với ten gọi điêu khiên lỉm lượng.
Các tầng cỏ thô thực hiện điều khiến lưu hvợng
Có thể thực hiện diều khiển lưu lượng ở một vài tần2

trong mạne,thí dụ:
Điều khiến lưu /irợng ớ tầng Giao vận:
thườns được ạọi là diều khiển lưu lưựrm

đầu cuối - đầu cuối: nhàm tránh cho bộ đệm cùa quá trình nhận tại đích khỏi bị tràn.
%
9 \ %
Điêu khiên lim lượng trẽn í ừng chặng'
nhăm tránh cho tìrim dườna truvên klìòi bị
tắc nehẽn. Tuv nhiên, việc điều khiển lưu lượng trên từng chặng sẽ có ảnh hưởnơ
đến các chặn ụ khác, do đó nó CÜI12 có tác dụns tránh tắc nshẽn cho các đirờns
*.
___

Ệ \
truyên cỏ nhiêu cliặnũ. Tronẹ mô hình tham chiẻu OS1, dieu khiên lưu lượn2 theo
¥
• w • W
từ no
clìặna dược thục hiện ờ tâim Liên kêt dừ liệu và tâns, Mạng,
1.3.1.2 Diêu khiên lư u /irựỉỉỊỊ theo cơ chê cửa sô irivọl
Dây là Ìììộl Iroim các cơ che diều khiên lưu
ỉuợna
dirợc sứ dụ 11Ü rộng rai nhất, cỏ
ilic áp dụ nu tại một luiy nhiều tanu cúa mụrm. thirờne là tầne l.icn kcl dữ liẹu, tầim
I • w • •
y
I ^ s-
Mạng Iiay tằn 2 Oi ao vạn.
Cơ chế điều khiển lưu lượng bàng cửa sổ trượt cho phép bên gửi phát đi liên tiếp
một số gói số liệu nhất định rồi mới phải dửng lại chờ thông báo về kết quả nhận,
/ \
t \


gọi là biên nhận, trước khi tiêp tục phát. Bên nhận điêu khiên lưu lượng băng cách
kim lại hav eửi ngay biên nhận, đó là một gói sô liệu điêu khiên, hoặc một gói sô
liệu có chứa thông tin điều khiển, mà bên nhận dùng để báo cho bên gửi biết về việc
r. f f *>
đã nhận một hav một sô sói sô liệu như thê nào. Tại mọi thời diêm, bên gửi phải ghi
nhớ một danh sách chứa số thứ tự liên tiếp các gói số liệu mà nó được phép gửi đi,
r s
, 番
các gỏi sô liệu này được gọi là năm trong cửa sô gửi. Tương tự như vậy, bên nhận
cũng duv trì một danh sách gọi là cửa sổ nhận, tương ứng với các gói số liệu mà nó
f f f \

được phép nhận. Hai cửa sô gửi và nhận khpng nhât thiêt phải có độ lớn bănẹ nhau.
Neười ta đà đê xuât và sử dụng một sô phươns thức quản lý cửa sô khác nhau,
thí dụ: biên nhận riêng rẽ cho mồi gói sổ liệu nhận được, biên nhận ở cuối cửa sổ

biên Iìliận ở đâu cửa sô v.v. Dưới đây sẽ trình bày hai cách đã được sử dụng phô
biến trong số các cách đã được nêu [31], [41],
•) \ •> • ,
Đỗ việc phân tích sự điêu khiên lưu lượng theo cơ chê cửa sô được thuận lợi,
chúnu tôi sử
dụrìQ,
một số ký hiệu cho các tham số nêu trong bảng 1.1.
Bảng 1.1 Định nghĩa các tham số
丁【






.

V" ■ ■
f



.

— ■■
.
_•、
Thời ai an truyên (transmit) một gói sô liệu.
T
ip
Thời gian truyên một biên nhận, là tín hiệu cho phép tiêp tục trayên.
T
Thời eian trê lan truyên.
w
V
Kích thước cửa sô, đơn vị là gói sô liệu.
d
Thời gian từ khi bắt đâu truyền gói số liệu đâu tiên trong cửa sổ, cho đến khi
nhận được tín hiệu cho phép truyền tiếp.
Biên nhộn từng gỏi số liệu
Theo cách quản lý này, mỗi khi nhận được một gói số liệu, bên nhận sỗ gửi một
biên nhận cho bên gửi. Cửa sổ gửi tương ứng với các gói số liệu đă sửi đi nlurns
/ ' »1
chưa dược biên nhận (hình 1.4a). Khi có một ẽói sô liệu mới từ târia trên chuvên
xuốn« dẻ mVi di,nó sẽ được éán số thứ tự lớn nhất tiếp theo, do đó mép tren của cửa

- 17-
sổ «ứi sẽ lãn« thêm 1. Neu cửa sổ tăng tới cực đại thi tiến trinh truyền ờ tầng trẽn bị
chặn lại, klìôníi thể truyền các sói số liệu xuốnơ nữa,cho đến khi cỏ chồ trốn2 trons
t
vùng, nhớ đêm. Môi gói sô liệu sau khi đên đích sẽ được bên nhận biên nhân một
參 • ♦ » •參
^
t 9
cách riêng rẽ. Khi biên nhận vê đên bên gửi, mép dưới của cửa sô gửi sẽ được tăng
thêm K làm cho danh sách các ẹói sổ liệu đã truyền nhưng còn chờ biên nhận giảm
đi một phần Ur, done thời vùng nhớ tươns írns với phần tử đỏ cũna được aiải phỏng
đề cấp phát cho một 2Ói số liệu mới (hinh 1.4b, c). Bẳng cách nàỵ, cửa sồ cừi luôn
ghi nhớ được danh sách các gói số liệu còn chưa được biên nhận. Vi các gói số liệu
, ,
/ \

trorm cửa sỏ aửi có thê bị hỏn2

hoặc mât trên cỉườnạ truyên, nên bên eửi phải eiữ lại
0 f 9
bản sao của clìúníi trong bộ nhớ đệm đê phát lại nêu sau một khoảng thời gian nhât
định vần khỏns nhận được biên nhận.
Mình 1.4 Điêu khiên lưu lượng băng cửa sô trượt, biên nhận từng gói sô liệu,
a. Trạng thái ban đâu b. Gói sô 0 được biên nhận c. Gói sô 1 được biên nhận
^ % ■*
f t

Các sỏi sô liệu năm ngoài cửa sô nhận nêu đên sẽ bị loại bỏ. Khi nhận được một
gỏi sô liệu có sô thử tự băng mép dưới của cửa sô, nó sẽ được truyẽn cho tân2


trên,
bẽn nhận sinlì ra một biên nhận gửi tới người sỉri và tăng cửa sổ len một ô. Nếu kích
thước cửa sô nhận băng 1,có nghĩa là nó chỉ châp nhận các 2,0 i sô liệu den theo
dủng thứ lự. Ne 11 khác 1 thi khôno phải nil 11* \ ộv. tronẹ trườns hợp này

bèn
nhận sẽ
, ,
0

giừ gói sô liộu dêiì không đúng thứ tự tronu bộ cỉệni, chừ nhận dủ các eói sô liộu
tron G cửa số rồi mới chuyển các gỏi số liệu lẻn tầne trên theo thử tự mà bên sửi đã
eửi di. Klioânu thời ai an chờ này luôn CỈƯỢC 2ÌỚÌ hạn.
rnép trên
của cửa sỗ
mep chróì

Các gói tin chưa
cúa cứa sổ 0 1 o ' đươc biẽn nhân
Các gói to chưa
/ được biên nliậri
Các gói tin
chưa được
biên nhân
Biên nhạn ớ cuôi cửa sô
Đáy là cách đơn eiản nhất, bên nhận sẽ phát ra một biên nhận sau khi nhận được
tất cả các gói số liệu trong cửa sổ nhận. Hình 1.5 minh hoạ cho phương pháp này

tronsz dó nút


truyền thông với nút B, sử dụng một giao thức tựa như giao thức
HDLC,kích tỉnrớc cửa sổ gửi và cửa sổ nhận ban đầu bằng 3. Các gói sổ liệu đi trên
mạnii dơợc biếu diền bànơ các mũi tên, kiểu của gói sổ liệu dược ghi bẻn cạnh mũi
ten. V Ĩìíihĩa nhir sau [31 ]:
Hình 1.5 Điều khiển lưu lượng bằng cửa sổ trượt, biên nhận ờ cuối
cửa sô. Kích thước cửa sô nhận và gửi ban đâu băng 3
• t
/
• I n.m: là gói sô liệu, với trường sô thứ tự gỏi sô liệu N(S) = n, trường biên nhận
N(R) = m. Bên B cho gói số liệu của nó “ cõng” (‘‘piggyback,’) biên nhận tới bên
A, việc này giúp nâng cao hiệu quả sử dụng đường truyền. Tất nhiên, bên A


cùng có the biên nhận các sói sô liệu mà B gửi cho nỏ băne cách trên.
• RNR 4: là aói sổ liệu điều khiển, B báo cho A răn a. lúc này nó khôns thể nhận
9 9 X 9 f
tiêp các cói sô liệu của A, đông thời biên nhận cho các 2
.ÓÌ
sô liệu có sô thứ tự
nhỏ hơn hoặc bằng 3. Khi nhận được tín hiệu này, A se phái ngừng £ửi,chờ cho
/
*

clẻn khi nhận dược tín hiệu cho phép íiửi tiẽp của B.
• KR 4: là íiói số liộu điều khicn, B báo cho A rănu, lúc này nỏ sần sànẹ nhặn tiếp
R f U
R N Í U
các íiỏi số liệu cùa A. bát dầu từ eỏi số 4.
Giả sử rằng bôn gửi luôn có sẵn dữ liệu để gửi, CÒĨ1 bên nhận cũng gửi biên nhận
f r




ngay sau khi nhận được gói sô liệu cuôi cùng trong cửa sô nhận. Chúng ta có thê
, ,
tính được thông lượng trung bình lớn nhât có thê đạt được, dựa trên hình 1.6 :
R
WT,
X-R
( M )
với d = WTt + Tp + 2x và R là dung lượns đường truyền giữa À và B

1 \
7
Hình 1.6 Điêu khiên lưu lượng băng cửa sô trượt,
nhận ở cuối cửa sổ; kích thước cửa sổ w=3.
biên
So với cách biên nhận từng gói số liệu, rõ ràng là sổ lượng biên nhận giảm đi, từ
một biên nhận/một gói số liệu, xuống còn một biên nhận/một cửa sổ. Thí dụ, nếu
kích thước cửa sô w = 8,thi sô biên nhận giảm đi 8 lân. Tuy nhiên, chúng ta sẽ phải
trả giá bạng việc thông lượng truyền bị giảm đi. Kết luận này sẽ được làm sáng tỏ
bằng các phân lích định lượns;, tại Chươns 3,mục 3.3.
1.3. ỉ.3 Điều khiển tắc nghẽn
Tắc nghẽn
Trong mạng máy tính, tăc nghẽn xảy ra khi sô lượng 2Ói sô liệu đên nút mạng
vượt quá khả năng xử lý của nó hoặc vượt quá khả năns vận tải của các đườna
truy en ra, điêu đó dân ớỗn việc thông lượn
2 của mạns, bị eiám đi khi lưu lượn a den
r
.

t
. . .
r
mạng tãĩì2 lên. Hiện tượng tãc nghẽn có thẻ xảy ra ớ một hoặc một sô nút mạim.
hay trcn toàn mạmi và dược miêu tả trên hình 1.7.
TĩiOHẩ lu -:aig
Tải đưa vào mạng
e r
Hình 1.7 Sự xuât hiện tăc nghẽn trong mạng
Khi số lirợnu sói số liệu đén mạng còn tươrm đói nhò, nàm trong klìả nãng vận
tải của nó, chúnỉĩ sẽ được phân phát đi hêt,sô lượnu gói sô liệu được chuyên đi tỉ ỉệ
0 9 ệ 9
thuận với sô lượns rói sô liệu đên mạng. Do luôn có một tỉ lệ gói sô liệu phải phát
lại do bị lồi trong quá trình vận chuyển, lưu lượng mà mạng thực sự phải vận
chuyển nhin chuim lớn hơn lưu lượns đi qua mạno (thôns lượne).
Khi lưu lượns đến cao quá một mức nào đó, các nút mạng không còn đủ kbả
năne chứa và chuvển liếp các gói số liệu,do đỏ các nút mạng bắt đầu phải loại bò
các eói số liệu. Bên gửi sẽ phát lại các gói số liệu không được biên nhận sau một
• r ^ r f
khoảnẹ thời t>ian nlìât định, ẹọi lả thời eian hêt giờ. Nêu lưu lượng đen mạng tiêp
• o r
/
,
lục tănẹ lên nữa, lỉ lệ ạói sô liệu phát lại trên tôns sô gói sô liệu tronç mạnạ có thê
tăng đến 100%, ỉmhĩa là không có gói số liệu nào được phân phát đi cả,thông lượn2
của mạne ẹiảm xuốnG, bàn2, khôns:, mạno; bị nshẹt hoàn toàn.
Một số yếu tổ cỏ thẻ dần đến tắc nahẽn. nsay cả khi lưu lượne đi vào mạns thấp
t
• • •


hơn khả năne vận tài của mạns. Chăng hạn, khi sô lượng gói sô liệu đên trên hai
hoặc ba lôi vào của một nút mạng đêu cân đi ra trên cùns một đường truyên đê đên
đích, chúim sẽ phài xép hàng đợi dược truyền đi. Nếu tinh trạng trên kéo dài,hàng
dợi sẽ dài dần ra và dầy, khôns còn chồ cho các gói số liệu mới đến, chún2 bị loại
bỏ và sè dược pliát lại. làm tãng tỉ lệ gói số liệu phát lại troníỊ mạim. Biện pháp khắc
phục banii cách tăim kích thước hàng đợi (bộ nhớ) tại các nút nianü tron í một
chìrn^ nrực nao dó là có ỉclì. tuy nhiên, nsười ta dă chímẹ minh dược rằní>, tãng
kích tlurớc lìàim dợi quá một eiới hạn lì ào dó sẽ khône mane lại lợi ích ÍIÌ, tlìậm chí
Km • ì

^
c •
còn có tlìê làm clìo \ản dẽ tãc nghen tôi tệ hơn. Đó là vi các 2Ói sỏ liệu sc hi hot sjờ
ĩìí>ay trone quả trình xếp hảng, bản sao của chúng đã được bên gửi phát lại rồi, làm
tăng số lượng sói số liệu phát lại trong mạng [1]

[38], [41].
Tốc độ xử lý chậm của các nút mạng cũng là một nguyên nhân quan trọng sây
nôn tác nẹhỗn. bởi vì chúns có thể sẽ làm hànơ đợi bị tràn nsay cả khi lưu lượne gói
sổ liệu đến nút mạng nhỏ hơn năng lực vận tải của đường truyền đi ra.
Các đượng truyền dung lượng thấp cũng cỏ thể gây ra tắc nghẽn. Việc tăng đung
lượns đườnẹ truvền nhưns không nân

cấp bộ xử lý tại nút mạng, hoặc chỉ nânẹ
cấp
iừno
phần của mạng

dôi khi cCmg cải thiện được tình hình đôi chút, nhưng
thườn


clìỉ làm cái “ cô chai” ,nơi xảy ra tăc nghẽn, dời đi chô khác mà thôi. Giải
quyết vấn đề tắc nghẽn nói chung, cần đến các giải pháp đồng bộ.
f \ r
Tăc nehẽn cỏ khuynh hướng tự làm cho nó trâm trọng thêm. Nêu một nút mạng
nào dó bị tràn bộ đệm, gói số liệu đến sẽ bị loại bỏ, trong khi đó nút mạng bên trên

phía người gửi, vẫn phải giữ bản sao của gói số liệu đă gửi trong hàng đợi, cho đến
khi hêt giờ đê phát lại. Việc phải giữ bản sao gói sô liệu trong hàng đợi đê chờ biên
nhận, cộng thêm việc có thể phải phát lại gói số liệu một số lần có thể làm cho hàng
đợi tại chính nút trên cũng có thể bị tràn. Sự tác nshẽn lan truyền ngược trở lại phía
ĩìRuồn phát sinh ra 2ỏi số liệu.
Các g iả i pháp điều khiển tắc nghẽn
^ ^ \ f f
7
f
,
Vân đê điêu khiên tăc nghẽn cỏ thê được RÌải quyêt theo quan điêm của Lý
thuyết điều khiển. Theo cách tiếp cận này, cỏ thể chia các giải pháp thành hai nhóm:
các giải pháp Vòng lặp mở (Open loop) và các giải pháp Vòng lặp đóng (Closed
loop).

heo các giải pháp vòng lặp mở,tắc nghẽn sẽ được giải quyết bằng việc thiết
kế tốt. đảm bảo sao cho tấc nghẽn không xảy ra. Một hệ thống

như vậy phải có khả
năng quyết định khi nào thi nhận thêm các lưu lirợns> mới vào, khi nào thì loại bỏ
các gỏi sô liệu và loại các gói sô liệu nào. Các quyêt địnlì này phải theo lịch trình và
phải có ở tìrng nút mạng, chúna đirợc hệ thốnơ đưa ra mà khônẹ xem xét đến trạna
thái hiộn thời của mạne.


rải lại. các giải pháp vòng lặp dóng lại dựa trên khái niệm về vònạ phàn hồi
(ieedlxick loop), ch ling
nom
có ba phần, hay ba bưó'c như sau:
- 22-
r t t
B iivc một: theo cỉõi hệ íhông đê phát hiện tăc nghẽn xảy ra khi nào và ở đáu.

.7
r
Việc phát hiện tăc nghẽn có thê dựa trên một sỏ độ đo khác nhau. Các độ đo thường
được sử dụng là tỉ lệ 2Ói số liệu bị loại bỏ do thiếu bộ đệm, chiều dài trung bình của
hàns đợi, số sói số liệu phải phát lại do bị hết giờ, thời gian trễ trung bình của gói
số liệu khi di qua mạng v.v. Sự tăng lên của các số đo này nói lên rằng tắc nghẽn
đaníí lăn ạ lên trons mans.
• \ 、 f

Bước hai: nơi pháỉ hiện ra tăc nghẽn cân phải chuyên thông tin vê sự tăc nghẽrì
đến những nơi có thể phản ứng lại.
Một cách thực hiện rất đơn giản là nút mạng
f f r \
phát hiện ra tăc nghẽn sẽ gửi gỏi sô liệu đên các nguôn sinh lưu lượn2

trên mạng,
%
• .r •
báo tin vê sự cô. Tât nhiên, việc này sẽ làm tăng thêm lưu lượng đưa vảo mạne
A / /
díiĩìíi lúc lẽ ra phải ạiảm đi. Người ta cũng đã đê xuât và thực hiện một sô cách khác

nữa. Chăng hạn, nút mạng phát hiện ra tăc nghẽn sẽ đánh dâu vào một bit hay một
trường định trước của mọi gói số liệu trước khi gói số liệu được nút mạng chuyển
r
> 、 / ■> »
tiêp đi, nhăm loan báo cho các nút mạn

khác vê trạng thái tăc nghẽn. Có thê nêu ra
một cách thục hiện khác nữa, đỏ là làm cho các nút mạng đều đặn gửi đi các gỏi số
liệu thằm dò để biết tình trạns của mạng. •
Bước ba: điêu chinh lo i hệ thông đê sửa chữa sự cô.
Các cơ chê thực hiện phần
hồi đều nhằm mục đích là để các máy tính trên mạng có những phản ứng phù hợp
nhằm lảm giảm tắc nghẽn. Nếu phản írna xảy ra quả nhanh, lưu lượng
ìrono
hệ
thống sẽ thăng giáng mạnh và không bao giờ hội tụ. Nêu phản ứng quá chậm, việc
diều khiến tắc nghẽn có thể không có ý nghĩa thực tế gì nữa. Chính vì vậy, để cơ
chế phản hồi có hiệu quả, cần phải sử dụng một số cách tính trung bình [26]

[27].
1.3.2 Điều khiển lull lưọng trong giao thức TCP
ì 3 .2 .1 Giao thức TCP ban đầiỉ
Giao thức TCP được xây dựng dựa trên các khái niệm được Cerf và Kahn đira ra
dầu tiên 110J. Dó là giao thức hướng kết nối, kiểu đầu cuối - đầu cuối, tin cậy, dược
thiếl kế phù hợp với kiến trúc phân lớp các íỉiao lhức\ Giao tlìức TCP cung cấp sự
'
t

tni}cn thông lìn cậy gi lìa hai tien trình chạy trcn hai máv tính ờ các mạn^ khác ỉìhau
nhưng két nối với nhau. Giao thức TCP có khả năng gửi và nhận liên tiếp các đơn vị

dữ liệu chiều dải có thể thay đổi, được gọi là phân đoạn (segment), mồi phân đoạn
được đóng aói trone một “ phong b ì,’ và tạo nên một gói số liệu IP. Khi thiết kế TCP
người ta eiả thiêt răng TCP sẽ nhận được các dịch vụ vận chuyên gói sô liệu không
tin cậy (khôn? cỏ sự biên nhận chơ các gói số liệu) do các giao thức ở các tầng bên
r 'X ệ

cỉưới cung câp. Vê nguyên tắc, TCP phải có khả năng hoạt động bên trên một miên
rât rộn2 các hệ thôns truyên thông, từ các mạng cỏ các đườns; truyên cô dịnh, tới
các mans chuyên mạch sói và các mạns

chưvên mạch cứng.
••• •> t
Đe có thê thực hiện chức năng chính là vận chuyên dừ liệu hiệu quả và tin cậy,
TCP phải có khả năng thực hiện các chức năng cơ bản sau:
Dồn kênh: Đe nhiều tiến trình trên một máy tính có thể đồng thời truyền thôns
qua mạng với các tiến trình trên các máv tính khác trên Internet, giao thức TCP
• \ \

cung câp một giao diện giữa tâng ứng dụng và tâng giao vận,gọi là socket. Socket
được đặc trưng bởi số hiệu cổng (port) và địa chỉ IP. Mỗi một socket có thể được
’ /
, \

nhiêu kôt nôi sử dụng đông thời.
9 r
?

ì \
Kêt nôi: Đê đảm bảo việc vận chuyên tin cậy và thực hiện được cơ chê điêu
khiển liru lượng, TCP phái khởi tạo và duy trì một số tlìôns tin trạnơ thái cho mồi

dòng dữ liệu. Sự kết hợp các thông tin này,bao gồm socket, sổ thứ tự gói số liệu và
kích thước cửa sổ, được gọi là kết nối. Mồi một kết nối được xác định rõ ràng, duy
, \ r f
nhât bởi một cặp socket thuộc hai đâu kêt nôi đó.
Đảm bảo sự vận chuyên tin cậy: TCP phải khôi phục lại được gói sô liệu bị
hỏng, bị mât, bị lặp hoặc bị phân phát sai thứ tự đo hệ thông truvên thông gây ra.
Điêu này có thê đạt được băn

cách sán sô thứ tự cho môi byte được truyên đi và
biên nhận đã nhận đúnơ (ack) từ bên nhận của kết nối TCP. Nếu bên gội khôn2

nhạn được bien nhận trons khoảng thời gian hết hạn. nó sẽ phát lại sỏi số liệu. Bên
nhận sê kiêm tra sô thứ tự các 2,6 i sô liệu nhận được vả loại bỏ các Rỏi sô liệu khôna
đủng thử tự hoặc trùng lặp. Các cói số liệu không đúng thứ tự sẽ phải được phát lại.
Điều khicn liru hrọìig bằng cửa sổ: TCP cuns cấp phương tiện cho bên nhộn
dc 11 ó dieu khiên lim lirọne mà bên eưi phát di: dỏ là truờne ••cửa sổ*' tronu 2 Ói tin
bien nhiln. Trng ny ell I ra mien sụ th t cỏc byte m nú sc chõp nhn, tiụp sau
% t

byte m nú õ nhn thnh cụna. Ngi ta gi thiờt rng con sụ ny liờn quan ờn
/

khụng eian nh m d liu dnh cho kờt nụi ny, m bờn nhn hin ang cú ờ s
t
r ,
dium. Vic ch ra mt ca sụ ln s khuyờn khớch vic phỏt, nhns nờu d liu dờn
s
y
nhicu hn mc cú thờ nhn, chỳns s b loi bũ v s dỏn dn vic phi phỏt li quỏ
nhicu. Vic chỡ ra mt ca sụ nh s hn chờ vic phỏt d liu, cú thờ lm thi ôian

tr ca mụi

sụ liu i di tna them mt ln 2 bn a khong thi ian kh hụi.
t
/
,
Bờn gi ca kờt nụi TCP phi c kh nng nhn v gi dc ớt nhõt mt byte d
liu mi t nsi s drm, neay c khi ca s gi bng khụn. Ngoi ra, bờn
nhn cựne phi u n 2ri li cho bờn si mt gúi s liu ( r n g k h i ca s mri
cựa n brm khụnô. Khona thi sian 2èri li u dn dú c si ý ly brm hai
phiu [49]. Cỏc kh nn2, trờn dỏm bo mi bờn ca kt ni TCP cú th bỏo cho bờn




\ 9 \
kia ca kờt nụi rng, n võn cũn s ụ n g ụ n g thi c thờ bỏo cho bờn kia biờt rng
nú sn sng nhn thờm d liu. Khi ca sụ nhn bng khụng, nờu cú mt gúi sụ
/
9 0 9
liu ờn, nú phi c kh nng gi biờn nhncho bờn gi biờt sụ th t gúi sụ liu
tip iheo m nú ane ch v giỏ tr ca s nhn hin thi.
Xỏc lp th t tru tiờn v thc hin bo mt: Ngi s dng dch v ca giao


thc TCP cú thờ ch ra mc u tiờn (Precedence) v bo mt (Security) ca kờt nụi
c s dnc. TCP s sỏn cỏc ớiỏ tr tng ns cho cỏc tnrng Type of service"
v tnrim "Sccuritv optiorT troim úi tin IP [49].
1
.

3
.
2 .2
j \g u y ờ n lý B ó to n c ỏ c g ú i s l i u % vự c ỏ c n g u y ờ n n h n v i p h m
Mna Internet õ phỏt trin mt cỏch bựng n tronới hn 30 nm qua, tron2 quỏ
trỡnh dú cuns ó xy ra nhiỡnn s c tc nshn ndiiem trng, mans; liờn tip b
, 9 \ \ \ t
sp vỡ tc imhốn. Noi ta d lin hnh iờu tra v phỏt hin ra rna, hõu het nmiycn
nhõn Iiaiỡỡ trono vic triộn khai llỡc hin eiao thc IC), ch khụng phi chớnh
bn thõn aiao thc ny. Nhna cỏch thc c s dng trin khai thc hin uiao
tlic TC I> dira trn ra s d eõy ra hnh vi sai tronQ phõn ns vi tc nshcn nina.
Niiiri Ui ciỡnu ( dira ra cỏc thớ d \ C hnlỡ \ i sai vỏ mụ t mt s thut toỏn dn
eiõn (le ỹiai qIIvột vn d 26|. Cỏc thmu toỏn n> bt nmin t ý tirno v viỗc dt

×