KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN KỸ THUẬT MÁY TÍNH …
Transcript of KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN KỸ THUẬT MÁY TÍNH …
13/12/17
1
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN KỸ THUẬT MÁY TÍNH
ĐÁNH GIÁ HIỆU NĂNG MẠNGSỐ TÍN CHỈ: 03, LÝ THUYẾT: 45, THUYẾT TRÌNH: 05
TBKT: 20%, KTGK:20%, THI: 60%
TS. NGUYỄN KIM QUỐC
Tp. Hồ Chí Minh - 2016
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH Nội dung học phần
Tổng quan đánh giá hiệu năng mạngChương 1
Kiểm soát tắc nghẽn bởi giao thức mạngChương 2
Kiểm soát tắc nghẽn bởi điều khiển nút mạngChương 3
Lý thuyết xếp hàng và một số các độ đo hiệu năngChương 4
Mạng xếp hàng và giải pháp đánh giá hiệu năng Chương 5
Ứng dụng các mô hình đánh giá hiệu năng mạngChương 6
Cài đặt các mô hình đánh giá hiệu năng mạngChương 7
TỔNG QUAN ĐÁNH GIÁ HIỆU NĂNG MẠNGChương
1
Chương 1
1. Truyền thông trong mạng
2. Các khái niệm hiệu năng mạng
3. Các độ đo hiệu năng mạng
4. Các phương pháp đánh giá hiệu năng mạng
5. Mô phỏng đánh giá hiệu năng mạng
6. Các giải pháp kiểm soát tắc nghẽn
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 4
Ý nghĩa và các yếu tố hiệu năng mạng
• Đánh giá hiệu năng mạng: là đánh giá khả năng đáp ứng cácdịch vụ, độ ổn định và an toàn của mạng.
• Ý nghĩa đánh giá hiệu năng mạng
- Phân tích, thiết kế, xây dựng hệ thống mạng hiệu quả.
- Cấu hình mạng tối ưu nhất theo hệ thống, tinh chỉnh hệ thống phù
hợp môi trường mạng thực tế, nâng cao chất lượng dịch vụ mạng.
- Đánh giá các giao thức và kiểm nghiệm thiết bị.
• Các nhân tố đánh giá hiệu năng mạng
Tính sẵn sàng để dùng (availability),
Thông luợng (throughput)
Thời gian đáp ứng (response time).
Thời gian trễ (delay),
độ tin cậy (reliability),
Tỉ suất lỗi (error rate)
Tỉ lệ mất gói
Mức độ cân bằng
Khả năng sử dụng và
quản lý tài nguyên
13/12/17
2
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 5
Các độ đo hiệu năng mạng
• Tỉ lệ mất gói tin (𝑝𝑎𝑐𝑘𝑒𝑡 𝑙𝑜𝑠𝑠 𝑟𝑎𝑡𝑒): được xác định là tỉ số của
tổng số gói tin bị mất 𝑡𝑜𝑡𝑎𝑙 𝑙𝑜𝑠𝑠 𝑝𝑎𝑐𝑘𝑒𝑡 với tổng số gói tin đã
gửi 𝑡𝑜𝑡𝑎𝑙 𝑠𝑒𝑛𝑡 𝑝𝑎𝑐𝑘𝑒𝑡 . Đối với mạng ổn định thì tỉ lệ này thấp,
ngược lại tỉ lệ này rất cao. Tỉ lệ này mất gói tin được xác định
theo công thức như sau:
• Mức độ sử dụng đường truyền: là khả năng tận dụng đường
truyền của mạng. Chỉ số này cho biết khả năng truyền của mạng
qua đường truyền là mạnh hay yếu và tính theo công thức sau:
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 6
Các độ đo hiệu năng mạng
• Mức độ công bằng: là mức độ của các luồng thể hiện mạng có
đảm bảo sự công bằng cho các kết nối khi trong mạng có nhiều
loại hình thông lượng khác nhau. Mức độ công bằng là 1 khi
thông lượng của các luồng bằng nhau, và ngược lại.
• Kích thước hàng đợi trung bình: là chỉ số biểu thị trực tiếp mức
độ sử dụng tài nguyên tại bộ định tuyến. Chỉ số này được xác
định bằng tỉ số của kích thước hàng đợi trung bình với kích
thước thực của hàng đợi. Cơ chế có chỉ số này càng nhỏ sẽ có
độ trễ tại hàng đợi nhỏ và ngược lại.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 7
Các phương pháp đánh giá hiệu năng mạng
• Mô hình phân tích:
- Đây là phương pháp sử dụng cơ sở lý thuyết, công thức toán học
để đánh giá hiệu năng mạng.
- Có thể thay đổi các tham số hệ thống và cấu hình mạng trong một
miền rộng với chi phí thấp mà vẫn có thể đạt được các kết quả
mong muốn.
- Mô hình giải tích thuờng là không thể giải được nếu không được
đơn giản hoá nhờ các giả thiết, hoặc được phân rã thành các mô
hình nhiều cấp. Các mô hình giải được thuờng rất đơn giản hoặc
khác xa thực tế.
- Thuờng chỉ được sử dụng ngay trong giai đoạn đầu của việc thiết
kế mạng, giúp cho nguời thiết kế dự đoán được các giá trị giới hạn
của hiệu năng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 8
Các phương pháp đánh giá hiệu năng mạng
• Phương pháp mô phỏng
- Phương pháp thực hiện cài đặt và thực nghiệm, đòi hỏi một chi phí
rất cao. Tuy nhiên, sau khi đã xây dựng xong bộ mô phỏng, có thể
tiến hành chạy chương trình mô phỏng bao nhiêu lần tuỳ ý, với độ
chính xác theo yêu cầu và chi phí cho mỗi lần chạy thuờng là rất
thấp.
- Các kết quả mô phỏng nói chung vẫn cần được kiểm chứng, bằng
phương pháp giải tích hoặc đo đạc.
- Phương pháp mô hình Giải tích và mô hình Mô phỏng đóng vai trò
rất quan trọng trong việc thiết kế và triển khai thực hiện hệ thống,
đặc biệt là ở giai đoạn đầu.
13/12/17
3
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 9
Các phương pháp đánh giá hiệu năng mạng
• Phương pháp độ đo
- Phương pháp chỉ có thể thực hiện được trên mạng thực, đang hoạt
động, nó đòi hỏi chi phí cho các công cụ đo và việc tiến hành đo.
- Việc đo cần được tiến hành tại nhiều điểm trên mạng thực, ở
những thời điểm khác nhau và cần lặp đi lặp lại trong một khoảng
thời gian đủ dài.
- Ngoài ra, nguời nghiên cứu phải có kiến thức về Lý thuyết thống kê
thì mới có thể rút ra được các kết luận hữu ích từ các số liệu thu
thập được.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 10
Các phương pháp đánh giá hiệu năng mạng
• Tổng hợp các phương pháp đánh giá hiệu năng mạng
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 11
Truyền thông trong mạng
• Mô hình OSI (Open Systems Interconnection)
Máy gửi Máy nhận
MÔI TRƯỜNG TRUYỀN THÔNG
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 12
Truyền thông trong mạng
• Tầng ứng dụng (Application layer): Giao tiếp với mạng với ứng dụng
người dung, xác định giao diện giữa người sử dụng với môi trường
mạng.
• Tầng trình bày (Presentation layer): Chuyển đổi các thông tin từ ứng
dụng của người sử dụng sang khuôn dạng dữ liệu truyền, ngoài ra nó
có thể nén và mã hóa dữ liệu truyền trước khi truyền để bảo mật.
• Tầng giao dịch (Session layer): Thiết lập các phiên, xác lập ánh xa giữa
các tên, cách đặt địa chỉ, tạo ra các giao tiếp ban đầu giữa các máy.
tính khác nhau trên cơ sở các giao dịch truyền thông.
• Tầng giao vận (Transport layer): Điều khiển truyền thông, cách thức
chuyển giao gói tin. Để bảo đảm được việc truyền ổn định trên mạng,
đánh số các gói tin và đảm bảo chúng chuyển theo thứ tự.
13/12/17
4
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 13
Truyền thông trong mạng
• Tầng mạng (Network layer): Định tuyến, xác định việc chuyển
hướng, vạch đường các gói tin trong mạng, các gói tin này có
thể phải đi qua nhiều chặng trước khi đến được đích cuối cùng.
• Tầng liên kết dữ liệu (Data link layer): Thiết lập khung dạng dữ
liệu, xác định cơ chế truy nhập thông tin trên mạng, các dạng
thức chung trong các gói tin, đóng các gói tin.
• Tầng vật lý (Phisical layer): Môi trường truyền thông, motả các
đặc trưng vật lý của mạng, mô trường truyền, kỹ thuật nối mạch
điện, tốc độ cáp truyền dẫn.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 14
Truyền thông trong mạng
• Mô hình TCP/IP
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 15
MÔ PHỎNG ĐÁNH GIÁ HIỆU NĂNG MẠNG
• GIỚI THIỆU PHẦN MỀM MÔ PHỎNG NS2
• CÀI ĐẶT MÔ PHỎNG MẠNG TRÊN NS2
• ĐÁNH GIÁ HIỆU NĂNG MẠNG MÔ PHỎNG
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 16
Giới thiệu phần mềm NS2
• Kiến trúc NS2
Tcl
OTclOTcl
TclCLTclCL
ns-2
Event Scheduler
Network Components
Event Scheduler
Network Components
C/C++
Dùng C++ để:
- Mô phỏng giao thức chi tiết yêu
cầu ngôn ngữ lập trình hệ thống
- Thao tác trên byte, xử lý gói, thực
thi thuật toán.
- Thực hiện bất kỳ việc gì mà cần
phải xử lý tứng packet của một
luồng.
OTcl để:
- Mô phỏng những thông số hay cấu hình thay đổi.
- Cấu hình, thiết lập, thời gian tương tác.
- Thực hiện những cái ta muốn bằng cách thao tác trên các đối
tượng C++ đang tồn tại.
13/12/17
5
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 17
Giới thiệu phần mềm NS2
• Mô hình mô phỏng NS2
OTcl Script Kịch bản OTcl
Simulation Program Chương trình mô phòng
OTcl Bộ biên dịch Tcl mở rộng hướng đối tượng
NS Simulation Library Thư viện mô phỏng NS
Event Scheduler Objects Các đối tượng bộ lập lịch sự kiện
Network Component Objects Các đối tượng thành phần mạng
Network Setup Helping Modules Các mô đun trợ giúp thiết lập mạng
Plumbling Modules Các mô đun Plumbling
Simulation Results Các kết quả mô phỏng
Analysis Phân tích
NAM Network Animator Minh họa Mạng NAM
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 18
Giới thiệu phần mềm NS2
• Công dụng phần mềm NS2
- NS2 là phần mềm mô phỏng mạng điều khiển sự kiện riêng rẽ
hướng đối tượng, được phát triển tại UC Berkely, viết bằng ngôn
ngữ C++ và OTcl. NS2 rất hữu ích cho việc mô phỏng mạng diện
rộng (WAN) và mạng local (LAN).
- NS thực thi các giao thức mạng như: giao thức điều khiển truyền
tải (TCP) và giao thức gói người dùng (UDP).
- Các dịch vụ nguồn lưu lượng như: Giao thức truyền tập tin (FTP),
Telnet, Web, tốc độ bit cố định (CBR) và tốc độ bit thay đổi (VBR).
- Các kỹ thuật quản lý hàng đợi như: Vào trước ra trước (Drop Tail),
dò sớm ngẫu nhiễn (RED) và CBQ.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 19
Giới thiệu phần mềm NS2
• Đặc điểm của NS2
- Khả năng kiểm tra tính ổn định của các giao thức mạng.
- Khả năng đánh giá các giao thức mạng trước khi sử dụng.
- Khả năng thực thi những mô hình mạng lớn mà gần như ta không
thể thực thi được trong thực tế.
- Khả năng mô phỏng nhiều loại mạng khác nhau, các kỹ thuật quản
lý hàng đợi Router như DropTail, RED, CBQ.
- Multicasting, mô phỏng mạng có dây, mạng không dây: thuộc mặt
đất (di động, adhoc, GPRS, WLAN, BLUETOOTH), vệ tinh, Mobile-IP
và adhoc như DSR, TORA, DSDV và AODV.
- Hành vi nguồn traffic – www, CBR, VBR, agent UDP/ TCP.
- Định tuyến, luồng packet, Telnet, FTP, Ping.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 20
Mô phỏng đánh giá hiệu năng mạng
• Kịch bản mô phỏng mạng trong NS2
- Khởi tạo mô phỏng: set ns [new Simulator], tạo instance của
Simulator, gán vào biến ns.
- Tạo đối tượng ghép như các node và các link
- Connect (nối) các đối tượng thành phần Mạng đã được tạo lại với
nhau (ví dụ như hàm attach-agent)
- Gán giá trị cho các tham số cho các đối tượng thành phần mạng
(thường là cho các đối tượng ghép)
- Tạo các connection giữa các agent (ví dụ như tạo connection giữa
“tcp” và “sink”)
- Xác định tuyến tùy chọn trình diễn NAM.
13/12/17
6
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 21
Mô phỏng đánh giá hiệu năng mạng
• Otcl script trong NS2
- Tạo nút:
✓set n0 [$ns node]
✓set n1 [$ns node]
- Để tạo liên tục 5 node:
✓ for {set i 0} {$i<5} {incr i} {Set n($i) [$ns node]}
- Thiết lập màu cho node bằng lệnh:
✓$n0 color <colour>
- Tạo link một chiều giữa hai node:
✓$ns simplex-link $n0 $n1 <bandwidth> <delay> <queue_type>
- Tạo link hai chiều giữa hai node:
✓$ns duplex-link $n0 $n1 <bandwidth> <delay> <queue_type>
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 22
Mô phỏng đánh giá hiệu năng mạng
• Otcl script trong NS2
- Khởi tạo Network Agents UDP
✓set udp0 [new Agent/UDP]
✓set null [new Agent/Null]
✓$ns attach-agent $n0 $udp0
✓$ns attach-agent $n1 $null
✓$ns connect $udp0 $null
- Khởi tạo Network Agents TCP
✓set tcp [new Agent/TCP]
✓set tcp_sink [new Agent/TCPSink]
✓$ns attach-agent $n0 $tcp
✓$ns attach-agent $n1 $tcp_sink
✓$ns connect $tcp $tcp_sink
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 23
Mô phỏng đánh giá hiệu năng mạng
• Otcl script trong NS2
- Tốc độ bit cố định CBR
✓set my_cbr [new Application/Traffic/CBR]
✓$my_cbr attach_agent $udp
✓$ns at <time> “$my_cbr start”
- Traffic thay đổi theo phân bố mũ
✓set my_exp [new Application/Traffic/Exponential]
- Traffic thay đổi theo phân bố Pareto
✓set my_pareto [new Application/Traffic/Pareto]
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 24
Mô phỏng đánh giá hiệu năng mạng
• Otcl script trong NS2
- TrafficTrace
✓set t_file [new Tracefile]
✓$t_file filename <file>
✓set src [new Application/Traffic/Trace]
✓$src attach-tracefile $t_file
- Giao thức truyền tập tin FTP
✓set ftp [new Application/FTP]
✓$ftp attach-agent $tcp
✓$ns at <time> “$ftp start”
- Telnet
✓set telnet [new Application/Telnet]
✓$telnet attach-agent $tcp
13/12/17
7
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 25
Mô phỏng đánh giá hiệu năng mạng
• Otcl script trong NS2
- Ứng dụng HTTP ở Node client:
✓set client [new HTTP/Client $ns $node0]
✓$client connect $server
- Ứng dụng HTTP ở Node server:
✓set server [new HTTP/Server $ns $node0]
✓$server set-page-generator $pgp
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 26
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
- Topology mạng đơn giản và kịch bản mô phỏng
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 27
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
set ns [new Simulator]; #Create a simulator object
$ns color 1 Blue; #Define different colors for data flows
$ns color 2 Red ; #Define different colors for data flows
set nf [open out.nam w]; #Open the NAM trace file
$ns namtrace-all $nf
set tf [open out.tr w]
$ns trace-all $tf
#Define a 'finish' procedure
proc finish {} {
global ns nf
$ns flush-trace
close $nf ; #Close the NAM trace file
exec nam out.nam & ; #Execute NAM on the trace file
exit 0
}
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 28
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
#Create four nodes
set n0 [$ns node] ; set n1 [$ns node] ;
set n2 [$ns node] ; set n3 [$ns node]
$ns duplex-link $n0 $n2 2Mb 10ms DropTail; #Create links between the nodes
$ns duplex-link $n1 $n2 2Mb 10ms DropTail; #Create links between the nodes
$ns duplex-link $n2 $n3 1.7Mb 20ms DropTail; # links between the nodes
$ns queue-limit $n2 $n3 10; #Set Queue Size of link (n2-n3) to 10
$ns duplex-link-op $n0 $n2 orient right-down; #Give node position (for NAM)
$ns duplex-link-op $n1 $n2 orient right-up; #Give node position (for NAM)
$ns duplex-link-op $n2 $n3 orient right; #Give node position (for NAM)
$ns duplex-link-op $n2 $n3 queuePos 0.5; #Monitor the queue for link (n2-n3)
13/12/17
8
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 29
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
#Setup a TCP connection
set tcp [new Agent/TCP]
$tcp set class_ 2
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n3 $sink
$ns connect $tcp $sink
$tcp set fid_ 1
#Setup a FTP over TCP connection
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTPĐánh giá hiệu năng mạng– Khoa Công nghệ thông tin 30
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
set udp [new Agent/UDP]; #Setup a UDP connection
$ns attach-agent $n1 $udp
set null [new Agent/Null]
$ns attach-agent $n3 $null
$ns connect $udp $null
$udp set fid_ 2
set cbr [new Application/Traffic/CBR]; #Setup a CBR/ UDP connection
$cbr attach-agent $udp
$cbr set type_ CBR
$cbr set packet_size_ 1000
$cbr set rate_ 1mb
$cbr set random_ false
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 31
Mô phỏng đánh giá hiệu năng mạng
• Ví dụ minh họa
#Schedule events for the CBR and FTP agents
$ns at 0.1 "$cbr start"
$ns at 1.0 "$ftp start"
$ns at 4.0 "$ftp stop"
$ns at 4.5 "$cbr stop"
$ns at 4.5 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink"
$ns at 5.0 "finish"
#Print CBR packet size and interval
puts "CBR packet size = [$cbr set packet_size_]"
puts "CBR interval = [$cbr set interval_]"
#Run the simulation
$ns runĐánh giá hiệu năng mạng– Khoa Công nghệ thông tin 32
Mô phỏng đánh giá hiệu năng mạng
1. set ns [new Simulator]
2. set n0 [$ns node]
3. set n1 [$ns node]
4. $ns duplex–link $n0 $n1
10Mbps 5ms DropTail
5. Set tcp0 [new Agent/TCP]
6. $ns attach-agent $n0 $tcp0
7. Set ftp0 [new Application/FTP]
8. $ftp0 attach–agent $tcp0
9. $tcp0 set packet_size_ 500
10.$tcp0 set windown_ 1000
11.Set sink0 [ new Agent /TCPSink]
12.$ns attach-agent $n1 $sink0
13.$ns connect $tcp0 $sink0
14.$ns at 1.0 “$ftp0 start“
15.$ns at 5.0 “$ftp0 stop“
• Bài tập: Giải thích ý nghĩa từng dòng lệnh và vẽ mô hình mạng
của kịch bản sau:
13/12/17
9
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 33
Cấu trúc của các file bám vết
1. Trường đầu tiên là kiểu sự kiện.
Được đưa ra bằng một trong 4
biểu tượng: r,+,-,d lần lượt tương
ứng với nhận (ở đầu ra của kênh
truyền), đã xếp vào hàng, đã ra
khỏi hàng, và bị loại.
2. Thời điểm xảy ra sự kiện.
3. Đưa ra nút đầu vào
4. Đưa ra nút đầu ra
5. Đưa ra kiểu gói tin (ví dụ như
CBR hay TCP.
6. Kích thước gói tin
7. Các cờ hiệu
8. Mã nhận dạng luồng (fid)
Ipv6
9. Địa chỉ nguồn đưa ra
dưới dạng "node.port"
10. Địa chỉ đích, có dạng
như trên.
11. Đây là số thứ tự gói tin
của giao thức lớp mạng.
12. Mã nhận dạng duy nhất
của gói tin
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 34
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Khái niệm tắc nghẽn trong mạng TCP/IP
- Dưới góc độ của người dùng: Một mạng được cho là tắc nghẽn từ
quan điểm của người dùng nếu tiện ích của người dùng đó giảm do
sự gia tăng tải mạng.
- Dưới góc độ của mạng: Tắc nghẽn mạng như một trạng thái của
mạng, nó làm giảm hiệu năng của mạng do sự bão hòa của tài
nguyên mạng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 35
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Nguyên nhân tắc nghẽn trong mạng TCP/IP
- Do thời gian chờ xử lý và xếp hàng trong hàng đợi quá lớn: Khi
luồng các gói tin đột ngột đến từ nhiều cổng vào và tất cả đều cần
ra cùng một cổng ra thì hàng đợi tại đây sẽ có chiều hướng tăng.
Nếu khả năng xử lý của các nút mạng chậm thì sẽ dẫn đến tắc
nghẽn.
- Do chiều dài hàng đợi nhỏ: Nếu chiều dài hàng đợi không đủ dung
lượng để lưu các gói tin đến thì xảy ra hiện tượng mất gói. Việc
tăng chiều dài hàng đợi lên sẽ hạn chế sự mất gói, nhưng đây
không phải là giải pháp tốt vì khi tăng chiều dài hàng đợi thì đồng
nghĩa với việc tạo ra trễ lớn tại hàng đợi, làm ảnh hưởng đến hiệu
năng mạng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 36
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Nguyên nhân tắc nghẽn trong mạng TCP/IP
- Do hạn chế của giao thức TCP: TCP kiểm soát tắc nghẽn theo cơ
chế thụ động ở phía đầu cuối, nên sẽ có độ trễ lớn từ khi xảy ra
hiện tượng mất gói cho đến khi TCP nhận biết tắc nghẽn. Hơn nữa,
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.
- Do tính không đồng nhất giữa các mạng liên kết với nhau: Tốc độ
truyền trên kênh di động thấp hơn nhiều so với kênh 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ới đầu cuối ở mạng cố định.
Hoặc trong trường hợp có sự chênh lệch lớn về tốc độ truyền của
hai mạng liền kề nhau gây ra hiệu ứng băng thông không đối xứng,
làm tác động lớn đến truy cập mạng, hệ thống dễ dàng xảy ra tắc
nghẽn.
13/12/17
10
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 37
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Nguyên lý kiểm soát tắc nghẽn trong mạng TCP/IP
- Nguyên lý điều khiển vòng mở: kiểm soát tắc nghẽn không phụ
thuộc vào thông tin phản hồi từ các điểm tắc nghẽn trong mạng.
Trong nguyên lý điều khiển vòng mở, việc quyết định khi nào có
thể nhận gói tin mới, khi nào loại bỏ gói tin và loại bỏ gói nào
không xem xét đến tình trạng lưu thông của mạng.
- Nguyên lý điều khiển vòng đóng: kiểm soát dựa trên một số loại
thông tin phản hồi về cho nguồn gửi. Ba bước thực hiện:
✓Bước thứ nhất, phát hiện tắc nghẽn xảy ra khi nào và ở đâu.
✓Bước thứ hai, chuyển thông báo tắc nghẽn về nguồn gửi để
nguồn gửi điều tiết lưu lượng gửi gói tin vào mạng.
✓Bước thứ ba, khi nhận được thông tin về tắc nghẽn, nguồn gửi
có những hành động thích hợp để giảm tắc nghẽn.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 38
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Kỹ thuật kiểm soát tắc nghẽn trong mạng TCP/IP
- Kỹ thuật kiểm soát tắc nghẽn ở nguồn gửi: điều khiển luồng, điều
tiết lưu lượng gói tin gửi vào mạng trên các luồng hoặc định tuyến
lại để tránh gửi gói vào các tuyến có dấu hiệu tắc nghẽn.
- Kỹ thuật kiểm soát tắc nghẽn mạng ở đích nhận: cách tốt nhất để
tránh tắc nghẽn xảy ra ở đầu cuối là giảm tải. Để giảm tải có thể sử
dụng cách phủ nhận dịch vụ người dùng, hoặc dự đoán mức độ sử
dụng dịch vụ của người dùng.
- Kỹ thuật phân phối tài nguyên: Kỹ thuật bao gồm tiến trình lập lịch
các mạch vật lý hoặc các nguồn tài nguyên khác trong mạng.
- Kỹ thuật quản lý hàng đợi tại nút mạng: Kỹ thuật này nhằm duy trì
số lượng gói tin trong hàng đợi tại nút mạng một cách hợp lý, nhằm
tránh trường hợp hàng đợi bị đầy và làm mất gói tin.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 39
Tắc nghẽn và các giải pháp kiểm soát tắc nghẽn
• Các giải pháp kiểm soát tắc nghẽn
SS7 signalling
PSTN, CS core
MSC
BSCGSM
UMTS
RNC
Public WLAN
IP basedcoreSGSN
SGSNInternet
Private
WLANPrivate
WLAN
broadcastServer farm,
Gateways, proxies
Firewall,
GGSN,
gateway
Hội tụ các mạng trên nền tảng TCP/IP Các giải pháp kiểm soát tắc nghẽn
Kiểm soát
tắc nghẽn
Kỹ thuật
phần cứng
Kỹ thuật
phần mềm
Tăng tài
nguyên mạng
Giao thức
truyền thông
Quản lý
hàng đợi
Chi phí cao,
khó đồng bộChi phí thấp,
dễ đồng bộ
Chất lượng
dịch vụ mạng
KIỂM SOÁT TẮC NGHẼN BỞI GIAO THỨCChương
2
Nội dung Chương 2
1. Mô hình truyền thông mạng TCP/IP
2. Định tuyến trong mạng TCP/IP
3. Kiểm soát tắc nghẽn của TCP
4. Các kỹ thuật cải tiến TCP
5. Các biến thể của giao thức TCP
6. Kết luận và phát triển Chương
13/12/17
11
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 41
Mô hình truyền thông trong mạng TCP/IP
• Cơ chế truyền thông trong TCP/IP
Thông tin muốn gửi đi được chia thành các đơn vị dữ liệu nhỏ gọi là
gói tin (Packet). Trước khi gửi gói tin đi, máy gửi gắn vào gói tin các
thông tin điều khiển khi nó qua các tầng. Sau khi gói tin được gửi đến
máy nhận, máy nhận thực hiện gỡ các thông tin điều khiển trong gói
tin khi gói tin lần lượt qua các tầng. Cuối cùng, máy nhận tổng hợp
các gói dữ liệu để có được toàn bộ thông tin như máy gửi đã gửi.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 42
Mô hình truyền thông trong mạng TCP/IP
• Cơ chế truyền thông trong TCP/IP
Tại tầng giao vận, các gói tin được gắn thêm các thông tin điều khiển của giao
thức TCP (TCP Header). Các thông tin điều khiển của TCP gồm có: cổng máy gửi
(Source Port), cổng máy nhận (Destination Port), số thứ tự gói tin (Sequence
Number), thứ tự gói tiếp theo máy nhận cần (Acknowledment Number), kích
thước cửa sổ gửi (Window size), kích thước phần đầu của gói tin (Offset), các cờ
điều khiển (Flags), kiểm tra lỗi (Checksum) trong quá trình truyền thông.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 43
Mô hình truyền thông trong mạng TCP/IP
• Cơ chế truyền thông trong TCP/IP
Khi gói tin được chuyển xuống tầng liên mạng, thông tin điều khiển của giao thức
IP được gắn vào gói tin: phiên bản (Version), chiều dài phần đầu của gói tin
(Header length), loại dịch vụ (ToS: Type of Service), tổng chiều dài của gói tin
(Total length of Datagram), thời gian tồn tại gói tin (Time to live), giao thức ở tầng
kế tiếp (Protocol), địa chỉ máy gửi (Source Address) và địa chỉ máy nhận
(Destination Address) để định tuyến và chuyển gói tin đến đúng máy nhận.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 44
Mô hình truyền thông trong mạng TCP/IP
• Thiết lập kết nối, TCP sử dụng một quy trình bắt tay 3 bước
- Client yêu cầu mở cổng dịch vụ bằng cách gửi gói tin 𝑆𝑌𝑁 tới
server. Trong gói tin này, tham số 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒 𝑛𝑢𝑚𝑏𝑒𝑟 được gán cho
một giá trị ngẫu nhiên 𝑋.
- Server hồi đáp bằng cách gửi lại phía client bản tin 𝑆𝑌𝑁 − 𝐴𝐶𝐾.
Trong gói tin này, tham số 𝑎𝑐𝑘𝑛𝑜𝑤𝑙𝑒𝑑𝑔𝑚𝑒𝑛𝑡 𝑛𝑢𝑚𝑏𝑒𝑟 được gán giá trị
bằng 𝑋 + 1, tham số 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒 𝑛𝑢𝑚𝑏𝑒𝑟 được gán ngẫu nhiên một
giá trị 𝑌
- Để hoàn tất quá trình bắt tay ba bước, client tiếp tục gửi tới server
bản tin 𝐴𝐶𝐾. Trong bản tin này, tham số 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒 𝑛𝑢𝑚𝑏𝑒𝑟 được gán
cho giá trị bằng 𝑋 + 1 còn tham số 𝑎𝑐𝑘𝑛𝑜𝑤𝑙𝑒𝑑𝑔𝑚𝑒𝑛𝑡 𝑛𝑢𝑚𝑏𝑒𝑟 được
gán giá trị bằng 𝑌 + 1.
13/12/17
12
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 45
Mô hình truyền thông trong mạng TCP/IP
• Truyền dữ liệu
- Cơ chế Cửa sổ trượt (Sliding Window)
- Khởi động chậm (Slow Star)
- Tránh tắc nghẽn (Congestion avoidance)
- Phát lại nhanh (Fast Retransmission)
- Phục hồi nhanh (Restore Retransmission)
• Kết thúc kết nối
- Khi một bên muốn kết thúc nó gửi một segment có cờ FIN được bật
và khi bên kia nhận được Segment này nó sẽ gửi lại một Segment
ACK hồi đáp.
- Vì vậy một quá trình kết thúc kết nối sẽ có 2 cặp Segment được trao
đổi giữa 2 máy tính. Trong quá trình kết thúc có thể tồn tại dạng
một bên đã kết thúc việc gửi chỉ còn nhận Segment.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 46
Định tuyến trong mạng TCP/IP
• Địa chỉ IP
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 47
Định tuyến trong mạng TCP/IP
• Định tuyến trong mạng
- Chọn đường đi đến đích với ‘chi phí’ thấp nhất cho gói tin. Lưu và
chuyển tiếp các gói tin từ nhánh mạng này sang nhánh mạng khác.
- Chiều dài đuờng đi: Là số luợng router phải di qua trên đuờng đi.
- Bảng chọn đường (Routing table) chứa đường đi đến những điểm
khác nhau trên toàn mạng. Hai trường quan trọng nhất trong bảng
chọn đường của router là đích đến (Destination) và bước kế tiếp
(Next Hop) cần phải chuyển gói tin để có thể đến được đích đến.
R1 - Routing Table
Destination Next Hop
1 Local
2 Local
3 Local
4 R2
5 R2
7 R3
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 48
Định tuyến trong mạng TCP/IP
• Định tuyến trong mạng
13/12/17
13
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 49
Định tuyến trong mạng TCP/IP
• Cập nhật bảng định tuyến
- Cập nhật thủ công: Thông tin trong bảng chọn đường được cập
nhật bởi nhà quản trị mạng. Hình thức này chỉ phù hợp với các
mạng nhỏ, có hình trạng đơn giản, ít bị thay đổi.
- Cập nhật tự động: Tồn tại một chương trình chạy bên trong router
tự động tìm kiếm đường đi đến những điểm khác nhau trên mạng.
Loại này thích hợp cho các mạng lớn, hình trạng phức tạp, có thể
ứng phó kịp thời với những thay đổi về hình trạng mạng.
- Cập nhật hỗn hợp: Vừa kết hợp cả hai phương pháp cập nhật bảng
chọn đường thủ công và cập nhật bảng chọn đường tự động. Đầu
tiên, nhà quản trị cung cấp cho router một số đường đi cơ bản, sau
đó giải thuật chọn đường sẽ giúp router tìm ra các đường đi mới
đến các điểm còn lại trên mạng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 50
Định tuyến trong mạng TCP/IP
• Thuật toán chọn đường ngắn nhất
Procedure Dijkstra (𝐺 = (𝑉, 𝐸) là đơn đồ thị liên thông, có trọng số với
trọng số dương) {𝐺 có các đỉnh 𝑎 = 𝑢0, 𝑢1, … , 𝑢𝑛 = 𝑧 và trọng số
𝑚(𝑢𝑖, 𝑢𝑗), với 𝑚(𝑢𝑖, 𝑢𝑗) = ∞ nếu (𝑢𝑖, 𝑢𝑗) không là một cạnh trong 𝐺}
for 𝑖 ∶= 1 to 𝑛
begin 𝐿(𝑢𝑖) ∶= ∞; 𝐿(𝑎) ∶= 0 ;𝑆 ∶= 𝑉 {𝑎}; 𝑢 ∶= 𝑎 end;
while 𝑆 ≠ ∅
begin
for (𝑡ấ𝑡 𝑐ả 𝑐á𝑐 đỉ𝑛ℎ 𝑣 𝑡ℎ𝑢ộ𝑐 𝑆)
if 𝐿(𝑢) +𝑚(𝑢, 𝑣) < 𝐿(𝑣) then
𝐿(𝑣) ∶= 𝐿(𝑢) +𝑚(𝑢, 𝑣)
𝑢 ∶= đỉ𝑛ℎ 𝑡ℎ𝑢ộ𝑐 𝑆 𝑐ó 𝑛ℎã𝑛 𝐿(𝑢) 𝑛ℎỏ 𝑛ℎấ𝑡
{𝐿(𝑢): độ 𝑑à𝑖 đườ𝑛𝑔 đ𝑖 𝑛𝑔ắ𝑛 𝑛ℎấ𝑡 𝑡ừ 𝑎 đế𝑛 𝑢}
𝑆 ∶= 𝑆 − {𝑢}
end
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 51
Định tuyến trong mạng TCP/IP
• Ví dụ: Tìm khoảng cách 𝑑(𝑎, 𝑣) từ 𝑎 đến mọi đỉnh 𝑣 và tìm
đường đi ngắn nhất từ 𝑎 đến 𝑣 cho trong đồ thị 𝐺 hình bên.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 52
Định tuyến trong mạng TCP/IP
• Ví dụ: Tìm khoảng cách
𝑑(𝑎, 𝑣) từ 𝑎 đến mọi đỉnh 𝑣
và tìm đường đi ngắn nhất
từ 𝑎 đến 𝑣 cho trong đồ thị
𝐺 hình bên.
13/12/17
14
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 53
Định tuyến trong mạng TCP/IP
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 54
Định tuyến trong mạng TCP/IP
• Bài tập định tuyến trong mạng: Dùng thuật toán Dijkstra tìm
đuờng đi ngắn nhất từ đỉnh a đến các đỉnh khác.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 55
Kiểm soát tắc nghẽn của TCP
• Cơ chế điều khiển của TCP
Khi một máy nhận một gói hoặc một tập các gói thì nó sẽ gửi một
ACK cho phía gửi để thông báo đã nhận được gói tin. Cơ chế cửa sổ
cho phép máy nhận đa gói tin mà chỉ dùng một ACK. Việc phía gửi
không nhận được ACK (hay nhận các ACK trùng lặp) từ máy nhận,
chứng tỏ mạng có dấu hiệu bị nghẽn, khi đó cần thực hiện kiểm soát
tắc nghẽn phía nguồn gửi.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 56
Kiểm soát tắc nghẽn của TCP
• Cơ chế điều khiển của TCP
Chiến lược kiểm soát tắc nghẽn của TCP là “Tăng theo cấp số cộng -
giảm theo cấp số nhân” (AIMD: Additive Increase Multiplicative
Decrease) để điều chỉnh tốc độ gửi gói tin vào mạng. Lược đồ về
luồng dữ liệu thể hiện số lượng các gói tăng lên (tăng theo cấp số
cộng) cho đến khi có dấu hiệu tắc nghẽn xuất hiện trong mạng và khi
đó TCP giảm nhanh (giảm theo cấp số nhân) tốc độ gửi gói vào mạng
cho đến khi kết thúc.
13/12/17
15
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 57
Kiểm soát tắc nghẽn của TCP
• Pha bắt đầu chậm
Ban đầu, giao thức TCP hoạt động ở pha bắt đầu chậm. Mục đích là
để có được một ngưỡng dự đoán tắc nghẽn. Khởi đầu của pha bắt
đầu chậm, TCP thiết lập kích thước cửa sổ tắc nghẽn
(𝑐𝑤𝑛𝑑: Congestion Window) 𝑐𝑤𝑛𝑑 = 1. Mỗi khi nhận được một ACK,
𝑐𝑤𝑛𝑑 sẽ tăng lên một đơn vị (𝑐𝑤𝑛𝑑𝑛𝑒𝑤 = 𝑐𝑤𝑛𝑑𝑜𝑙𝑑 + 1, nên 𝑐𝑤𝑛𝑑 lần lượt
là: 20, 21, 22,..), nhưng không vượt quá cửa sổ nhận của bên nhận.
Như vậy, 𝑐𝑤𝑛𝑑 sẽ tăng lên theo hàm mũ cho tới khi đạt đến ngưỡng
(Ssthresh) của bắt đầu chậm thì chuyển sang pha tránh tắc nghẽn.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 58
Kiểm soát tắc nghẽn của TCP
• Pha tránh tắc nghẽn
Trong giai đoạn tránh tắc nghẽn, TCP sẽ điều chỉnh 𝑐𝑤𝑛𝑑 = 𝑐𝑤𝑛𝑑 +
1/𝑐𝑤𝑛𝑑 mỗi khi nhận được một ACK cho đến khi việc mất gói xảy ra.
Khi phát hiện mất gói, nguồn gửi sẽ đặt 𝑆𝑆𝑡ℎ𝑟𝑒𝑠ℎ = 𝑐𝑤𝑛𝑑/2, truyền lại
các gói tin bị mất và trở về pha bắt đầu chậm, đặt lại 𝑐𝑤𝑛𝑑 = 1. Trong
khi 𝑐𝑤𝑛𝑑 < 𝑆𝑆𝑡ℎ𝑟𝑒𝑠ℎ, thuật toán bắt đầu chậm thực hiện, khi 𝑐𝑤𝑛𝑑 =
𝑆𝑆𝑡ℎ𝑟𝑒𝑠ℎ thì thuật toán tránh tắc nghẽn được thực hiện, giá trị 𝑐𝑤𝑛𝑑
được tăng 1/𝑐𝑤𝑛𝑑 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).
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 59
Kiểm soát tắc nghẽn của TCP
• Pha phát lại nhanh
Pha phát lại nhanh là cho phép gửi lại các gói bị mất không cần chờ
timeout (thời gian chờ đợi báo nhận ACK), trong trường hợp nhận
được hơn ba thông báo ACK lặp lại, nghĩa là có gói tin bị mất, cần gửi
lại gói tin. TCP thực hiện phát lại một gói tin khi nhận được thông báo
NAK (thu sai) hoặc vượt thời gian mà không nhận được ACK. Nếu
chờ timeout mới phát lại thì gây ra số gói cần phát lại nhiều, hoặc đòi
hỏi hàng đợi phía thu lớn để giữ tạm các gói sai, dễ gây ra tắc nghẽn.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 60
Kiểm soát tắc nghẽn của TCP
• Pha phục hồi nhanh
Khi việc mất gói được phát hiện do hiện tượng lặp lại bản tin báo
nhận, TCP trở về pha bắt đầu chậm bằng cách đặt 𝑆𝑆𝑡ℎ𝑟𝑒𝑠ℎ = 𝑐𝑤𝑛𝑑/2.
Nếu kích thước cửa sổ lớn và tỉ lệ lỗi nhỏ thì thay vì tiếp tục thuật
toán bắt đầu chậm, TCP sẽ chuyển sang pha phục hồi nhanh. Lúc
này, thiết lập 𝑐𝑤𝑛𝑑 = 𝑆𝑆𝑡ℎ𝑟𝑒𝑠ℎ/2 + 3 và chuyển thẳng sang pha tránh
tắc nghẽn.
13/12/17
16
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 61
Đánh giá giao thức TCP
• Các yếu tố ảnh hưởng TCP
- Kích thước của cửa sổ tắc nghẽn và kích thước của cửa sổ nhận
- Thời gian khứ hồi của các Segments (RTT),
- Xác suất lỗi và thông lượng đường truyền.
• Hạn chế của TCP
- Thời gian đạt được thông lượng tối đa của đường truyền còn lớn.
- Chưa có khả năng nhận biết vị trí, thời điểm nghẽn mạng.
- 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 với thông lượng lớn.
- Với những đường truyền có độ trễ lớn và bất đối xứng thi TCP tỏ ra
kém hiệu quả.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 62
Đánh giá giao thức TCP
• Cải tiến đã được đề xuất cho TCP
- Tăng kích thước cửa sổ với một tốc độ không phụ thuộc RTT: tức
là cần phải tính toán sao cho RTT nhỏ.
- Điều chỉnh kích thước cửa sổ theo độ trễ lúc không có lỗi: tập
trung vào việc so sánh RTT với RTT cực tiểu.
- Đánh dấu các gói tin ở bộ định tuyến khi có dấu hiệu tắc nghẽn cho
đến khi gói tin rơi (ECN: thông báo rõ tắc nghẽn).
- Cải tiến điều khiển tại bộ định tuyến: phân lớp, quản lý hàng đợi và
lập lịch gói.
- Xây dựng cơ chế điều khiển lỗi cho những liên kết nhiều lỗi
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 63
Đánh giá giao thức TCP
• Cải tiến đã được đề xuất cho TCP
- Để giảm bớt ACK trên đường truyền và giải phóng hàng đợi, người
ta sử dụng Kỹ thuật lọc gói ACK, tức là loại bỏ bớt các gói ACK của
cùng một kết nối, tích luỹ số thứ tự của các gói ACK đến trước vào
ACK sau cùng.
- Tại mỗi thiết bị nhận người ta duy trì một hệ số động DelAck gọi là
hệ số giữ chậm (hay trễ) ACK nhằm xác định số gói tin tương ứng
với một gói ACK.
- Khi một gói ACK có đánh dấu ECN, giá trị DelAck được nhân lên
nhiều lần nên làm giảm số gói ACK trên đường truyền.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 64
Cơ chế thông báo tắc nghẽn rõ ràng
• Kỹ thuật thông báo tắt nghẽn rõ ràng (ECN: Explicit Congestion
Notification) là kỹ thuật cho phép một nút mạng cung cấp thông
tin phản hồi rõ ràng cho máy gửi về tình trạng tắc nghẽn.
• ECN dùng bit 6 và 7 trong trường ToS của IP Header để thiết lập
thông báo tắt nghẽn rõ ràng, bit 6 là ECT (ECN Capable
Transport) và bit 7 là CE (Congestion Experienced),
• Ngoài ra, ECN còn dùng bit thứ 6 là bit ECE (ECN-Echo) và thứ 7
là bit CWR (Congestion Window Reduced) trong trường
Reserver của TCP Header để máy gửi và máy nhận bắt tay nhau
khi dùng kỹ thuật ECN
13/12/17
17
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 65
Cơ chế thông báo tắc nghẽn rõ ràng
• Bước 1: Bit ECT được thiết lập từ nguồn, chỉ cho các nút trong mạng IP
biết các gói tin có thể chọn để đánh dấu ECN.
• Bước 2: Khi một nút mạng dự đoán được tắc nghẽn, nó thiết lập bit CE =1
và bit ECT = 1 để báo hiệu tắc nghẽn cho hệ thống đầu cuối.
• Bước 3: Khi nhận được gói tin có thiết lập ECN, máy nhận thiết lập bit
ECE của gói ACK bằng 1 rồi gửi về máy gửi.
• Bước 4: Tại máy gửi, sau khi nhận gói ACK có ECE=1, máy gửi sẽ thực
hiện pha tránh tắc nghẽn và thiết lập bit CWR bằng 1 và gửi về máy nhận.
• Bước 5: Máy nhận sau khi bắt tay với máy gửi sẽ thiết lập ACK theo ECN.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 66
Các biến thể của TCP
• TCP_Tahoe
- Giao thức điều khiển tắc nghẽn TCP_Tahoe là giao thức TCP kết hợp
với ba cơ chế “bắt đầu chậm”, “tránh tắc nghẽn” và “phát lại nhanh”.
- Đặc trưng của TCP_Tahoe là khi phát hiện mất gói dữ liệu thông qua
việc nhận 3 gói ACK lặp lại, trạm gửi phát lại gói dữ liệu bị mất đặt
𝑐𝑤𝑛𝑑 = 1 gói dữ liệu và khởi động quá trình “bắt đầu chậm”.
- Cơ chế “phát lại nhanh” khôi phục chờ “time-out”, cho phép tăng đáng
kể thông lượng và hiệu suất sử dụng kênh kết nối TCP.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 67
Các biến thể của TCP
• TCP Reno
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 68
Các biến thể của TCP
• TCP Reno
- Trường hợp 1: Trạm phát nhận được Segment hồi đáp ACK (Truyền
nhận thành công):
✓Nếu w <= ssth thì: Sử dụng cơ chế bắt đầu chậm; Kích thước cửa
sổ được cập nhật: w(t+1) = w(t) + 1
✓Ngược lại (Cho trường hợp w>ssth): Tăng kích thước w theo tuyến
tính; Kích thước cửa sổ cập nhật: w(t+1) = w(t) + 1/ w(t)
- Trường hợp 2: Trạm phát nhận 3 Segments ACK hồi đáp trùng lặp:
✓Sử dụng cơ chế phát lại nhanh và phục hồi nhanh: Đặt lại ngưỡng
ssth = w(t)/2; Kích thước cửa sổ cập nhật: w(t+1) = ssth
- Trường hợp 3: Khi phát hiện có Segment bị Time Out
✓Đặt lại ngưỡng: ssth = w(t)/2
✓Kích thước cửa sổ được cập nhật: w(t+1) = 1
✓Sử dụng cơ chế bắt đầu chậm
13/12/17
18
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 69
Các biến thể của TCP
• TCP Vegas
- TCP Vegas điều khiển kích thước cửa sổ tắc nghẽn bằng cách theo
dõi các RTT (Round Trip Time).
- Nếu thời gian của các RTT được theo dõi tăng, thì TCP Vegas nhận
biết mạng sắp bị tắc nghẽn và thực hiện cơ chế tránh tắc nghẽn.
- Nếu thời gian của các RTT giảm thì TCP Vegas nhận biết mạng
được khai thông và TCP Vegas thực hiện cơ chế tăng kích thước
cửa sổ để tận dụng thông lượng của đường truyền.
- Trong quá trình điều khiển truyền thông, TCP Vegas sử dụng các
cơ chế: Cơ chế cửa sổ trượt, cơ chế bắt đầu chậm, tránh tắc
nghẽn, phát lại nhanh, phục hồi nhanh và cơ chế điều khiển truyền
thông của nó.
- Cơ chế bắt đầu chậm được TCP Vegas sử dụng khi bắt đầu một kết
nối. Cơ chế phát lại nhanh và phục hồi nhanh được thực hiện khi
nó nhận được 1 hoặc 3 segments ACK trùng lặp số hiệu.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 70
Các biến thể của TCP
• TCP Vegas
- TCP Vegas sử dụng sự khác biệt giữa thông lượng được ước
lượng và thông lượng tiểu chuẩn để đánh giá trạng thái tắc nghẽn
của mạng.
- Trước hết, Vegas thiêt lặp 𝐵𝑎𝑠𝑒𝑅𝑇𝑇 và tính thông lượng lý tưởng
𝐸𝑥𝑝𝑒𝑐𝑡𝑒𝑑 theo:
- Thứ hai: Vegas sẽ tính thông lượng thật Actual hiện tại: Với mỗi gói
được gửi đi tính thông lượng thật Actual bằng việc sử dụng RTT
được ước lượng theo công thức:
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 71
Các biến thể của TCP
• TCP Vegas
- Thứ ba: Vegas thực hiện kiểm soát theo thuật toán
NÂNG CAO HIỆU NĂNG MẠNG BỞI NÚT MẠNGChương
3
Nội dung Chương 3
Kiểm soát tắc nghẽn bằng cách quản lý hàng đợi
Kiến trúc CQS trong bộ định tuyến
Các loại hàng đợi trong bộ định tuyến
Phân lớp các cơ chế quản lý hàng đợi
Đánh giá và phân lớp ứng dụng
13/12/17
19
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 73
Kiểm soát tắc nghẽn bằng cách quản lý hàng đợi
• Ngoài cách kiểm soát bằng giao thức truyền thông còn có hướng tiếp
cận khác là dùng cơ chế quản lý hàng đợi tại các nút mạng. Có hai
cách quản lý hàng đợi, đó là quản lý hàng đợi thụ động và quản lý
hàng đợi tích cực:
- Quản lý hàng đợi thụ động là kỹ thuật thiết lập một giá trị chiều dài cực
đại cho mỗi hàng đợi, gói tin được chấp nhận đưa vào hàng đợi cho
đến khi hàng đợi đạt giá trị này. Sau đó, sẽ loại bỏ những gói tin được
chuyển đến tiếp theo cho đến khi các gói trong hàng đợi được giảm
nhờ vào các gói đã được truyền đi.
- Quản lý hàng đợi tích cực là một kỹ thuật mà các nút mạng chủ động
loại bỏ gói từ ngay trong hàng đợi nhằm tránh tràn hàng đợi và thông
báo dấu hiệu tắc nghẽn về nguồn gửi để nguồn điều chỉnh tốc độ gửi
gói hay định tuyến tránh tắc nghẽn.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 74
Kiến trúc CQS trong bộ định tuyến
• Các nút mạng có kiến trúc CQS (Classification-Queue-
Schedular) nhằm hỗ trợ kiểm soát tắc nghẽn tại nút cổ chai.
B¶ng ®Þnh
tuyÕn
FIB
FIB
FIB
Qu¶n lý
hµng ®
îi
§Þn
h tu
yÕn
LËp lÞc
h h
µng ®
îi
Ph©n líp gãi tin
IP Header IP Paybad
Ngâ v
µo
Ngâ ra
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 75
Kiến trúc CQS trong bộ định tuyến
• Phân lớp gói tin: Việc truyền tải lưu lượng, điều khiển truy nhập, và
đáp ứng các dịch vụ khác nhau đòi hỏi có sự phân biệt các gói dựa
trên cơ sở đa trường trong phần đầu của mỗi gói (PH: Packet Header),
được gọi là phân loại gói tin. Mạng sẽ đặt ra các mức ưu tiên cho các
gói, dựa vào mức ưu tiên này để điều khiển mạng khi có tắc nghẽn xảy
ra.
• Quản lý hàng đợi: bao gồm các hoạt động: thêm gói vào hàng đợi khi
hàng đợi chưa đầy, loại bỏ gói nếu hàng đợi đã đầy, quản lý mức độ
chiếm giữ hàng đợi, đánh dấu các gói khi hàng đợi chuẩn bị đầy và
thông báo tình trạng tắc nghẽn về máy gửi để điều tiết lưu thông trong
mạng.
• Lập lịch: Mỗi giao diện có tầng lập lịch để cùng chia sẻ khả năng của
giao diện đầu ra có cùng các hàng đợi liên quan. Quá trình lập lịch này
giúp cho các gói từ nhiều hàng đợi ra cùng một giao diện đầu ra không
phải tranh chấp đầu ra, tránh được tắc nghẽn tại đầu ra.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 76
Các loại hàng đợi trong bộ định tuyến
• Hàng đợi FIFO: là hàng đợi mặc định được sử dụng trong hầu
hết các bộ định tuyến. Các gói đến từ các luồng khác nhau
được đối xử công bằng, bằng cách đưa vào các hàng đợi theo
trật tự đến (gói nào đến trước sẽ được đưa vào trước và được
phục vụ trước).
13/12/17
20
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 77
Các loại hàng đợi trong bộ định tuyến
• Hàng đợi ưu tiên PQ: Mỗi hàng đợi có một mức ưu tiên khác
nhau, hàng đợi nào có mức ưu tiên cao nhất sẽ được ưu tiên
phục vụ trước. Khi có tắc nghẽn xảy ra thì các gói trong các
hàng đợi có độ ưu tiên thấp sẽ bị loại bỏ.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 78
Các loại hàng đợi trong bộ định tuyến
• Hàng đợi cân bằng FQ: Kỹ thuật này giải quyết vấn đề một số
hàng đợi không được phục vụ trong một thời gian dài do tài
nguyên dùng để phục vụ cho các hàng đợi có độ ưu tiên cao
hơn. Thuật toán Round Robin trong lập lịch được dùng để phục
vụ tất cả các hàng đợi một cách công bằng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 79
Các loại hàng đợi trong bộ định tuyến
• Hàng đợi cân bằng có trọng số WFQ: Thuật toán hàng đợi cân
bằng có trọng số là một thuật toán nằm trong họ các thuật toán
hàng đợi cân bằng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 80
Quản lý hàng đợi thụ động
• Quản lý hàng đợi thụ động là kỹ thuật thiết lập một giá trị chiều
dài cực đại cho mỗi hàng đợi, gói tin được chấp nhận đưa vào
hàng đợi cho đến khi hàng đợi đạt giá trị này. Sau đó, sẽ loại bỏ
những gói tin được chuyển đến tiếp theo cho đến khi các gói
trong hàng đợi được giảm nhờ vào các gói đã được truyền đi.
• Kỹ thuật này có 2 hạn chế:
- Thứ nhất, gây ra vài luồng dữ liệu độc quyền chiếm giữ hàng đợi,
ngăn chặn các luồng khác trong cùng hàng đợi, hiện tượng này sẽ
kéo theo sự tắc nghẽn đồng bộ trên toàn mạng;
- Thứ hai, có thể làm cho hàng đợi luôn bị duy trì ở trạng thái đầy
trong suốt thời gian dài, điều này đã tác động đến tất cả các gói tin
đến sau của bất cứ luồng nào đều bị loại bỏ, có thể dẫn đến một sự
đồng bộ hóa ở phạm vi lớn, làm cho lưu lượng toàn bộ quá trình
giảm xuống đáng kể.
13/12/17
21
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 81
Quản lý hàng đợi tích cực
• Quản lý hàng đợi tích cực là một kỹ thuật mà các nút mạng chủ động
loại bỏ gói từ ngay trong hàng đợi nhằm tránh tràn hàng đợi và thông
báo dấu hiệu tắc nghẽn về nguồn gửi, để nguồn gửi điều chỉnh tốc độ
gửi gói hay định tuyến lại tránh tắc nghẽn.
• Kỹ thuật quản lý hàng đợi tích cực có các ưu điểm chính sau :
- Giảm độ trễ dịch vụ: Bằng việc giữ cho chiều dài trung bình hàng đợi
nhỏ và ổn định trong phạm vi cho phép, các cơ chế quản lý hàng đợi
tích cực sẽ giảm độ trễ gói tin khi cho các luồng dữ liệu đi vào nút
mạng.
- Giảm tỷ lệ mất gói trung bình: Các gói tin đến nút mạng dưới dạng bó,
nếu không gian bộ đệm không đủ, nút mạng sẽ không có khả năng xử
lý các bó gói tin và nhiều gói tin bị loại bỏ. Khi có nguy cơ tắc nghẽn
do hàng đợi đầy, cơ chế quản lý hàng đợi tích cực sẽ loại bỏ gói tin
thay vì loại bỏ bó tin và hỗ trợ thông báo tắc nghẽn cho máy gửi, máy
gửi giảm tốc độ gửi gói nhằm tránh mất nhiều gói.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 82
Phân lớp các cơ chế quản lý hàng đợi tích cực
• Dựa tiêu chí đo lường mức độ sử dụng hàng đợi và băng thông
đường truyền, các cơ chế quản lý hàng đợi tích cực được phân
thành ba nhóm: quản lý hàng đợi tích cực dựa trên chiều dài
hàng đợi, quản lý hàng đợi tích cực dựa trên tải nạp, quản lý
hàng đợi tích cực dựa trên chiều dài hàng đợi và tải nạp.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 83
Cơ chế quản lý hàng đợi tích cực RED
• Hoạt động của RED
- RED tính toán kích thước hàng đợi trung bình (𝒌), so sánh với hai
giá trị ngưỡng nhỏ nhất (𝑚𝑖𝑛𝑡ℎ) và lớn nhất (𝑚𝑎𝑥𝑡ℎ), để tính xác suất
loại bỏ gói (𝑝𝑎)
- Khi kích thước hàng đợi trung bình nhỏ hơn mức ngưỡng nhỏ nhất
thì cho gói vào hàng đợi.
- Khi kích thước hàng đợi trung bình lớn hơn mức ngưỡng tối đa
cho cho phép thì loại bỏ gói tin.
- Khi kích thước hàng đợi trung bình nằm trong khoảng giá trị
ngưỡng nhỏ nhất và giá trị ngưỡng lớn nhất thì mỗi gói đến đều
được đánh dấu bằng một xác suất 𝑝𝑎
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 84
Cơ chế quản lý hàng đợi tích cực RED
• Thuật toán RED
13/12/17
22
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 85
Cơ chế quản lý hàng đợi tích cực RED
• Ưu điểm
- Phát hiện sớm sự tắc nghẽn và chuyển thông báo tắc nghẽn tới các
nguồn để chúng giảm tốc độ truyền trước khi hàng đợi bị đầy và các
gói bị rơi.
- Xác định xác suất rơi gói tin dựa vào kích thước hàng đợi trung bình,
không dựa vào kích thước thực của hàng đợi.
• Khuyết điểm
- Trong khi sự tắc nghẽn chỉ xảy ra ở hàng đợi cố định, độ dài hàng đợi
đem lại rất ít thông tin sự tắc nghẽn.
- Để RED hoạt động tốt thì cần phải có một số lượng đủ không gian
hàng đợi và giá trị các tham số phù hợp.
- Không đảm bảo sự công bằng giữa các luồng, việc cho rơi gói tin
không quan tâm đến băng thông của các luồng.
- Không hạn chế được luồng không thích nghi gây ảnh hưởng xấu đến
các luồng thích nghi.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 86
Cơ chế quản lý hàng đợi tích cực FRED
• Hoạt động của cơ chế FRED
- Ý tưởng FRED áp dụng RED trên từng luồng. Luồng có nhiều gói
tin lưu trên hàng đợi hơn sẽ có xác xuất rơi cao hơn, luồng yếu
hơn sẽ ít rơi hơn. Mục đích là để làm giảm thiểu những tác động
không công bằng tại hàng đợi RED.
- FRED xác định 2 ngưỡng 𝑚𝑖𝑛𝑞 và 𝑚𝑎𝑥𝑞 là số lượng tối thiểu và tối
đa các gói tin mà mỗi luồng được phép đến hàng đợi, biến 𝑞_𝑙𝑒𝑛(𝑖)
đếm số gói tin hiện tại và biến 𝑠𝑡𝑟𝑖𝑘𝑒(𝑖) để đếm số lần luồng 𝑖 có số
lượng gói tin vượt quá ngưỡng (𝑚𝑎𝑥𝑞).
- Bảo vệ luồng yếu: là luồng có 𝑞_𝑙𝑒𝑛(𝑖) <= 𝑚𝑖𝑛𝑞, FRED cho phép
mỗi kết nối được vào hàng đợi 𝑚𝑖𝑛𝑞 gói tin.
- Quản lý luồng mạnh: là luồng có 𝑚𝑖𝑛𝑞 <𝑞_𝑙𝑒𝑛(𝑖) < 𝑚𝑎𝑥𝑞.
- Cản trở luồng không thích nghi: là luồng có 𝑞_𝑙𝑒𝑛(𝑖) > 𝑚𝑎𝑥𝑞.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 87
Cơ chế quản lý hàng đợi tích cực FRED
• Thuật toán của cơ chế FRED
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 88
Cơ chế quản lý hàng đợi tích cực FRED
• Ưu điểm
- Thuật toán FRED tập trung vào việc quản lý độ dài hàng đợi theo
luồng. FRED đạt được sự công bằng và sử dụng đường truyền cao
bằng cách chia sẻ kích thược hàng đợi giữa các luồng hoạt động.
- Bảo vệ luồng yếu, quản lý luồng mạnh và cản trở luồng không thích
nghi.
• Khuyết điểm
- FRED còn những hạn chế là chỉ dựa vào kích thước hàng đợi để
xác định xác suất rơi gói tin, không dựa vào tải nạp để kiểm soát
tắc nghẽn.
- Điều này làm cho FRED kém linh động. Vì vậy, cần có các cơ chế
quản lý hàng đợi tích cực tốt hơn, chẳng hạn như các cơ chế quản
lý hàng đợi theo tải nạp sẽ được trình bày dưới đây.
13/12/17
23
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 89
Cơ chế quản lý hàng đợi tích cực BLUE
• Hoạt động của BLUE
- BLUE quản lý hàng đợi theo tải nạp, dựa trên yếu tố mất gói tin và hiệu
năng sử dụng đường truyền. Sử dụng một biến xác suất 𝑝𝑚 để đánh
dấu các gói tin khi chúng vào hàng đợi. Xác suất này tăng/giảm một
cách tuyến tính tùy thuộc vào mức độ sử dụng đường truyền.
✓Nếu như liên tục hủy bỏ các gói tin vì tải nặng, BLUE sẽ tăng
𝑝𝑚 = 𝑝𝑚 + 𝛿1 .
✓Nếu đường truyền rỗi, BLUE giảm xác suất loại bỏ gói tin
𝑝𝑚 = 𝑝𝑚 − 𝛿2 .
- Các tham số khác của BLUE:
✓𝑛𝑜𝑤 : Thời gian hiện hành
✓ 𝑙𝑎𝑠𝑡_𝑢𝑝𝑑𝑎𝑡𝑒 : Thời gian cuối cùng 𝑝m thay đổi
✓𝑓𝑟𝑒𝑒𝑧𝑒_𝑡𝑖𝑚𝑒 : Lượng thời gian giữa các thay đổi thành công
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 90
Cơ chế quản lý hàng đợi tích cực BLUE
• Thuật toán BLUE
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 91
Cơ chế quản lý hàng đợi tích cực BLUE
• Ưu điểm
- Quản lý hàng đợi trực tiếp trên cơ sở tải nạp,
- Sử dụng độ mất gói và độ khả dụng của kết nối để tang/giảm xác suất.
- Khai thác và sử dụng đường truyền cao.
• Khuyết điểm
- Không đạt được sự công bằng giữa các luồng.
- Việc cập nhật các tham số gặp rất nhiều khó khăn
✓𝑓𝑟𝑒𝑒𝑧𝑒_𝑡𝑖𝑚𝑒 cần phải được thiết lập dựa trên thời gian khứ hồi
nhằm cho phép bất kỳ sự thay đổi nào trong việc gán xác suất phù
hợp tình trạng mạng.
✓Tham số 𝛿1 và 𝛿2 được thiết lập cho phép đường truyền có khả
năng thích nghi hiệu quả với những thay đổi vĩ mô trong lưu lượng
truyền đi qua đường kết nối.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 92
Cơ chế quản lý hàng đợi tích cực SFB
• Hoạt động của SFB
- Hàng đợi công bằng ngẫu nhiên SFB được xây dựng dựa trên cơ
chế BLUE.
- SFB chia hàng đợi thành các thùng tính toán (accounting bin), mỗi
thùng duy trì một xác suất đánh dấu (hoặc rơi) gói tin 𝑝𝑚 tương tự
BLUE. Các thùng được tổ chức thành 𝐿 mức, mỗi mức có 𝑁 thùng.
- Khi một gói đến hàng đợi nó được băm vào 𝐿 thùng, mỗi mức một
thùng. Nếu số lượng gói tin ánh xạ vào một thùng vượt quá một
ngưỡng nhất định thì tăng xác suất 𝑝𝑚 tại thùng đó lên. Nếu số
lượng gói tin trong thùng đó giảm đến hết thì giảm 𝑝𝑚 xuống.
13/12/17
24
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 93
Cơ chế quản lý hàng đợi tích cực SFB
• Thuật toán SFB
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 94
Cơ chế quản lý hàng đợi tích cực SFB
• Ưu điểm
- SFB đã khắc phục được hạn chế của BLUE với việc áp dụng xác
suất đánh dấu linh hoạt hơn cho các luồng.
- Những luồng có băng thông cao sẽ có xác suất đánh dấu cao hơn
những luồng có băng thông thấp.
• Khuyết điểm
- Không sử dụng thông tin kích thước hàng đợi để đánh dấu gói tin.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 95
Cơ chế quản lý hàng đợi tích cực REM
• Ý tưởng đầu tiên của REM: Là ổn định tải đầu vào và năng lực
liên kết của hàng đợi. REM duy trì một biến ‘𝑃𝑟𝑖𝑐𝑒‘ như một yếu
tố đánh giá tắc nghẽn. Price được cập nhật định kỳ hoặc không
đồng bộ, dựa trên bất đối xứng của tải và bất đối xứng kích
thước hàng đợi.
• Ý tưởng thứ hai của REM: Là sử dụng tổng các price liên kết
dọc theo đường đi của gói tin, tổng này phản ánh dấu hiệu của
tắc nghẽn trên đường đi và được nhúng vào thiết bị đầu cuối để
đánh dấu xác suất.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 96
Cơ chế quản lý hàng đợi tích cực REM
13/12/17
25
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 97
Cơ chế quản lý hàng đợi tích cực REM
• Ưu điểm
- REM quản lý hàng đợi tích cực theo kích thước hàng đợi và tải nạp.
- REM nhận biết dấu hiệu tắc nghẽn trên dọc đường đi của gói tin.
• Khuyết điểm
- Chưa giải quyết tốt sự cân bằng cho các luồng.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 98
Cơ chế quản lý hàng đợi tích cực GREEN
• GREEN áp dụng tri thức về các hành vi ổn định của các kết nối
TCP ở các bộ định tuyến để thả (hoặc đánh dấu) các gói tin.
• Bằng cách sử dụng như một cơ chế, mỗi bộ định tuyến có thể
cung cấp cho mỗi kết nối chia sẻ công bằng của các băng thông
trong khi ngăn chặn việc xây dựng các hàng đợi gói tin.
• Giả sử có 𝑁 luồng đang hoạt động ở một bộ định tuyến vào một
liên kết ra có năng lực 𝐿. GREEN xem xét một luồng được hoạt
động nếu nó đã có ít nhất một gói tin đi qua các bộ định tuyến
trong một cửa sổ thời gian nhất định. Chia sẻ công bằng băng
thông cho mỗi luồng là 𝐿/𝑁.
2
RTTL
cMSSNp
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 99
Cơ chế quản lý hàng đợi tích cực GREEN
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 100
Cơ chế quản lý hàng đợi tích cực GREEN
• Ưu điểm
- GREEN quản lý hàng đợi tích cực theo kích thước hàng đợi và tải
nạp.
- Sử dụng giá trị của p là xác suất thả rơi để thông báo tình trạng tắc
nghẽn. GREEN buộc các luồng chia sẻ cân bằng tốc độ gửi. Vì p
phụ thuộc vào số lượng luồng và RTT mỗi luồng
• Khuyết điểm
- Chưa nhận biết dấu hiệu tắc nghẽn dọc đường đi của gói tin.
13/12/17
26
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 101
Qui trình mô phỏng
Thêm tổ hợp mã TCL cho hàng đợi
Viết chương trình mô phỏng mạng
Chạy chương trình mô phỏng
Phân tích kết qủa từ việc bám vết
Thống kê, đánh giá, so sánh và kết luận
Qui trình
mô phỏng
thực nghiệm
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 102
Mô hình mạng
iMac
iMac
iMac
iMac
iMac
iMac
iMac
iMac
iMac
iMac
iMac
iMac
N n
gu
ån
gö
i T
CP
N ®
Ých
nh
Ën T
CP
M n
gu
ån
gö
i U
DP
M ®
Ých
nh
Ën U
DP
45Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
100Mbps
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 103
Tiêu chí đánh giá kết quả mô phỏng
Mức độ
cân bằng
Thông
lượngKích thước
hàng đợi
Tiêu chí đánh giá kết quả thực nghiệm
Đường
truyền
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 104
Dựa theo kích thước hàng đợi
• Tỉ lệ mất gói tin của các cơ chế
13/12/17
27
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 105
Dựa theo kích thước hàng đợi
• Mức độ sử dụng đường truyền các cơ chế
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 106
Dựa theo kích thước hàng đợi
• Mức độ công bằng của cơ chế
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 107
Dựa theo kích thước hàng đợi
• Tỉ lệ sử dụng hàng đợi của các cơ chế
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 108
Dựa theo tải nạp
• Tỉ lệ mất gói tin của các cơ chế
13/12/17
28
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 109
Dựa theo tải nạp
• Mức độ cân bằng của các cơ chế theo tải nạp
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 110
Dựa theo tải nạp
• Kích thước hàng đợi của các cơ chế
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 111
Dựa theo tải nạp
• Mức độ sử dụng đường truyền các cơ chế
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 112
Phân lớp các cơ chế
Cơ chế
Phân lớp Điều khiển luồng
Dựa vào
kích
thước
hàng đợi
Dựa vào
tải nạp
Dựa vào
hiệu
suất sử
dụng
đường
truyền
Dựa vào
thông
tin
luồng
Thích
nghi Không thích nghi
Mạnh YếuKhông
hồi đáp
RED ✓ ✓
FRED ✓ ✓ ✓ ✓ ✓ ✓
BLUE ✓ ✓ ✓
SFB ✓ ✓ ✓ ✓ ✓ ✓ ✓
REM ✓ ✓ ✓ ✓
GREE
N✓ ✓ ✓ ✓ ✓ ✓ ✓
13/12/17
29
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 113
Ứng dụng các cơ chế
Cơ chế
Mức độ sử
dụng
đường
truyền
Thông
lượng
Mức độ
công
bằng
Tỉ lệ mất
gói
tin
Không gian
bộ đệm
RED Cao Vừa Thấp Cao Lớn
FRED Cao Cao Cao Vừa Nhỏ
BLUE Cao Cao Thấp Thấp Nhỏ
SFB Cao Vừa Cao Vừa Lớn
REM Cao Cao Vừa Vừa Vừa
GREEN Cao Cao Cao Thấp Nhỏ
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 114
Phân lớp ứng dụng
• Các cơ chế dựa trên chiều dài hàng đợi (như RED, FRED) hoạt
động tốt trong môi trường mạng có bộ định tuyến có hàng đợi
lớn, điều này phù hợp với các mạng lõi.
• Ngược lại, các cơ chế dựa theo tải nạp (như BLUE, SFB) hoạt
động hiệu quả trong môi trường mạng có tải nạp luôn biến động
và được ứng dụng vào các mạng thuê bao. Còn lại, các cơ chế
hoạt động dựa trên chiều dài hàng đợi và tải nạp (như REM,
GREEN) được ứng dụng vào mạng biên.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 115
Kiểm tra thường kỳ - Thời gian 60’
1. Trình bày các phương pháp và các tiêu chí để đánh giá hiệu năng mạng.
2. Nêu các dấu hiệu nhận biết tắc nghẽn, các cơ chế kiểm soát tắc nghẽn của TCP.
3. Giải thích cơ chế hoạt động của cơ chế RED, so sánh RED với cơ chế Droptail.
4. Tìm đường đi ngắn nhất từ điểm a đến các điểm còn lại trong sơ đồ mạng sau.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 116
Bài tập NS2
Viết kịch bản cho hệ thống mô phỏng theo hình dưới đây.
13/12/17
30
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 117
Kiểm tra giữa kỳ - Thời gian 90’ – Mỗi câu 2 điểm
1. Trình bày các phương pháp đánh giá và các giải
pháp nâng cao hiệu năng mạng.
2. Trình bày các cơ chế điều khiển truyền thông của
giao thức TCP.
3. Nêu các hoạt động tại nút mạng và các cơ chế
quản lý hàng đợi tại nó.
4. Hãy giải thích ý nghĩa của các dòng lệnh của kịch
bản trong hình bên và vẽ sơ đồ để minh hoạ
5. Viết chương trình mô phỏng hệ thống mạng theo
sơ đồ mạng bên dưới:
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 118
Ôn tập
1. Trình bày ý nghĩa và các phương pháp đánh giá hiệu năng mạng. Hãy
so sánh các phương pháp đánh giá hiệu năng mạng.
2. Nêu ý nghĩa và công thức của các độ đo hiệu năng mạng.
3. Trình bày các cơ chế kiểm soát tắc nghẽn của giao thức TCP.
4. Trình bày cơ chế, sơ đồ các thuật toán điều khiển truyền thông của
TCP và TCP Vegas. So sánh hiệu năng TCP với TCP Vegas?
5. Trình bày các cơ chế, sơ đồ thuật toán điều khiển truyền thông của
TCP và TCP Reno. So sánh hiệu năng TCP với TCP Reno?
6. Trình bày hoạt động của cơ chế thông báo tắc nghẽn rõ ràng.
7. Phân biệt quản lý hàng đợi tích cực và quản lý hàng đợi thụ động.
8. Mô tả hoạt động, thuật toán, ưu khuyết điểm cơ chế RED, BLUE, REM.
9. Nêu thuật toán của cơ chế quản lý hàng đợi tích cực RED và so sánh
cơ chế này với cơ chế quản lý hàng đợi thụ động DropTail.
10. Nêu thuật toán của cơ chế quản lý hàng đợi tích cực REM và so sánh
cơ chế này với cơ chế quản lý hàng đợi thụ động DropTail.
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 119
Ôn tập
1. set ns [new Simulator]
2. set n0 [$ns node]
3. set n1 [$ns node]
4. $ns duplex–link $n0 $n1
10Mbps 5ms DropTail
5. Set tcp0 [new Agent/TCP]
6. $ns attach-agent $n0 $tcp0
7. Set ftp0 [new Application/FTP]
8. $ftp0 attach–agent $tcp0
9. $tcp0 set packet_size_ 500
10.$tcp0 set windown_ 1000
11.Set sink0 [ new Agent /TCPSink]
12.$ns attach-agent $n1 $sink0
13.$ns connect $tcp0 $sink0
14.$ns at 1.0 “$ftp0 start“
15.$ns at 5.0 “$ftp0 stop“
Bài tập: Giải thích ý nghĩa từng dòng lệnh và vẽ mô hình mạng
của kịch bản sau:
Đánh giá hiệu năng mạng– Khoa Công nghệ thông tin 120
Ôn tập
Viết kịch bản cho hệ thống mô phỏng theo hình dưới đây.