Luận án Giải quyết bài toán định tuyến đảm bảo băng thông, độ trễ

Ngày nay, mạng máy tính được sử dụng rộng rãi và đóng vai trò nền tảng trong

lĩnh vực thông tin và truyền thông toàn cầu. Bên cạnh sự tiếp tục phát triển của các

dịch vụ truyền thống như World Wide Web, Fire Transfer Protocol, email. . . nhiều

dịch vụ và ứng dụng mạng ra đời như kĩ thuật thoại trên Internet Protocol (IP), truyền

hình theo yêu cầu, trò chơi trực tuyến. . . đòi hỏi chất lượng dịch vụ mạng ngày càng

cao. Một số yêu cầu chất lượng dịch vụ quan trọng gồm băng thông, độ trễ, tỉ lệ mất

gói tin. Bên cạnh đó, các công ty cung cấp dịch vụ mạng không chỉ cần đáp ứng chất

lượng dịch vụ mà còn phải tìm cách quản lý và khai thác một cách tốt nhất tài nguyên

mạng nhằm nâng cao hiệu quả kinh doanh. Một giải pháp hiệu quả để quản lý và điều

khiển tài nguyên mạng từ đó đảm bảo chất lượng dịch vụ là kĩ thuật lưu lượng - kĩ

thuật thiết lập, kiểm soát và quản lý các dòng dữ liệu truyền tải trên mạng [9]. Trong

kĩ thuật lưu lượng, vấn đề định tuyến đóng một vai trò quan trọng vì định tuyến quyết

định đường đi của luồng dữ liệu trong hệ thống mạng.

Ngoài ra, đã có nhiều công nghệ, kĩ thuật được phát triển để khắc phục những

khuyết điểm của mạng IP - Internet Protocol truyền thống và thực hiện kĩ thuật lưu

lượng. Trong lĩnh vực định tuyến, các khuyết điểm này bao gồm việc lựa chọn cố

định một đường đi (thông thường là đường ngắn nhất hoặc có chi phí nhỏ nhất) cho

mỗi cặp nút nguồn đích trong sơ đồ mạng. Điều này có thể dẫn đến tắc nghẽn và

lãng phí tài nguyên mạng khi một đường truyền bị dồn nhiều lưu lượng trong khi các

đường truyền khác không được sử dụng. Hơn nữa, khi xử lý gói tin cần đọc địa chỉ

IP tương đối dài (32 bit đối với IPv4 và 128 bit đối với IPv6) để xác định điểm đến

trên đường đi cũng làm giảm tốc độ truyền dữ liệu. Để giải quyết các vấn đề trên, tổ

chức Internet Engineering Task Force (IETF) đã đề xuất kĩ thuật chuyển mạch nhãn

đa giao thức (Multi Protocol Label Switching – MPLS) [17]. MPLS hoạt động ở giữa

lớp mạng và lớp liên kết dữ liệu nhằm đơn giản hóa và tăng tốc độ truyền gói tin IP.

MPLS cũng được sử dụng như một môi trường mạng lõi tích hợp, thống nhất để vận

chuyển dữ liệu của các giao thức lớp 2 khác nhau như ATM, Frame Relay. . . , ví dụ

Cisco Any Transport over MPLS [62].

pdf 150 trang dienloan 9540
Bạn đang xem 20 trang mẫu của tài liệu "Luận án Giải quyết bài toán định tuyến đảm bảo băng thông, độ trễ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Luận án Giải quyết bài toán định tuyến đảm bảo băng thông, độ trễ

Luận án Giải quyết bài toán định tuyến đảm bảo băng thông, độ trễ
 BỘ THÔNG TIN VÀ TRUYỀN THÔNG 
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG 
CAO THÁI PHƯƠNG THANH 
GIẢI QUYẾT BÀI TOÁN ĐỊNH TUYẾN 
ĐẢM BẢO BĂNG THÔNG, ĐỘ TRỄ 
LUẬN ÁN TIẾN SĨ KỸ THUẬT 
HÀ NỘI – 2017 
BỘ THÔNG TIN VÀ TRUYỀN THÔNG 
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG 
CAO THÁI PHƯƠNG THANH 
GIẢI QUYẾT BÀI TOÁN ĐỊNH TUYẾN 
ĐẢM BẢO BĂNG THÔNG, ĐỘ TRỄ 
Chuyên ngành: Hệ thống thông tin 
Mã số: 62.48.01.04 
LUẬN ÁN TIẾN SĨ KỸ THUẬT 
 NGƯỜI HƯỚNG DẪN KHOA HỌC: 
1. PGS. TS. TRẦN CÔNG HÙNG 
2. PGS. TS. HÀ HẢI NAM 
HÀ NỘI – 2017 
iLỜI CAM ĐOAN
Nghiên cứu sinh cam đoan nội dung luận án này là kết quả nghiên cứu của bản thân
dưới sự hướng dẫn của PGS. TS. Trần Công Hùng và PGS.TS. Hà Hải Nam. Các kết
quả và số liệu trình bày trong luận án là trung thực, một phần đã được công bố trong
các công trình của nghiên cứu sinh và chưa được công bố trong công trình khoa học
của tác giả khác. Tất cả tham khảo từ những nghiên cứu liên quan đều được nêu rõ
trong danh mục tài liệu tham khảo ở phần sau của luận án.
Người cam đoan
Cao Thái Phương Thanh
ii
LỜI CẢM ƠN
Để hoàn thành được luận án này, đầu tiên, nghiên cứu sinh chân thành cảm ơn sự
hướng dẫn khoa học và tận tình giúp đỡ của Thầy giáo, PGS. TS. Trần Công Hùng
và PGS. TS. Hà Hải Nam. Nghiên cứu sinh trân trọng cảm ơn Ban Giám đốc Học
viện Công nghệ Bưu chính Viễn thông, Hội đồng Tiến sĩ, Khoa Quốc tế và Đào tạo
Sau Đại học đã tạo điều kiện thuận lợi cho nghiên cứu sinh thực hiện và hoàn thành
chương trình nghiên cứu. Xin cảm ơn các Thầy, Cô đã đọc và đóng góp ý kiến cho
luận án.
Nghiên cứu sinh chân thành cảm ơn Ban Giám hiệu trường Đại học Sài Gòn và
Ban Tổ chức Thành ủy Thành phố Hồ Chí Minh đã tạo điều kiện công tác thuận lợi
và hỗ trợ kinh phí để nghiên cứu sinh tham gia và hoàn thành khóa đào tạo.
Cuối cùng, nghiên cứu sinh bày tỏ lòng biết ơn sâu sắc và muôn vàn tình yêu đến
ba, mẹ, vợ, con, những người thân, những người bạn đã luôn bên cạnh, động viên và
ủng hộ nghiên cứu sinh trong suốt thời gian qua.
Nghiên cứu sinh
Cao Thái Phương Thanh
iii
MỤC LỤC
Lời cam đoan i
Lời cảm ơn ii
Danh mục các chữ viết tắt, các kí hiệu vi
Danh mục các bảng ix
Danh mục các hình xi
MỞ ĐẦU 1
NỘI DUNG 6
Chương 1. TỔNG QUAN VỀ ĐỊNH TUYẾN ĐẢM BẢO CHẤT LƯỢNG
DỊCH VỤ 6
1.1 CHẤT LƯỢNG DỊCH VỤ . . . . . . . . . . . . . . . . . . . . . . 6
1.1.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.2 Các khái niệm cơ bản . . . . . . . . . . . . . . . . . . . . . 6
1.2 ĐỊNH TUYẾN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Khái niệm . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Phân loại . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.3 Một số hướng nghiên cứu phổ biến . . . . . . . . . . . . . . 10
1.3 ĐỊNH TUYẾN ĐẢM BẢO CHẤT LƯỢNG DỊCH VỤ . . . . . . . 11
1.4 KẾT CHƯƠNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Chương 2. BÀI TOÁNĐỊNHTUYẾNUNICASTĐẢMBẢOBĂNGTHÔNG
VÀ ĐẢM BẢO BĂNG THÔNG, ĐỘ TRỄ 13
2.1 ĐỊNH NGHĨA BÀI TOÁN . . . . . . . . . . . . . . . . . . . . . . 13
2.1.1 Phát biểu bài toán và kí hiệu sử dụng . . . . . . . . . . . . . 13
2.1.2 Điều kiện thực hiện bài toán định tuyến và các giả sử . . . . 15
2.1.3 Các độ đo đánh giá hiệu quả thuật toán định tuyến . . . . . . 18
2.2 CÁC THUẬT TOÁN ĐỊNH TUYẾN ĐẢM BẢO BĂNG THÔNG
LIÊN QUAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
iv
2.2.1 Nhóm thuật toán lựa chọn đường đi dựa trên thông số từng
liên kết . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.2 Nhóm thuật toán lựa chọn đường đi hạn chế ảnh hưởng . . . 21
2.2.3 Nhóm thuật toán áp dụng máy học . . . . . . . . . . . . . . 25
2.3 CÁC THUẬT TOÁNĐỊNH TUYẾNĐẢMBẢOBĂNGTHÔNGVÀ
ĐỘ TRỄ LIÊN QUAN . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.1 Thuật toán LDA . . . . . . . . . . . . . . . . . . . . . . . . 28
2.3.2 Thuật toán MDWCRA . . . . . . . . . . . . . . . . . . . . 28
2.3.3 Thuật toán MDMF . . . . . . . . . . . . . . . . . . . . . . 30
2.4 KHẢO SÁT THUẬT TOÁN ĐỊNH TUYẾN BẰNG MÔ PHỎNG . 31
2.4.1 Mô phỏng thuật toán định tuyến đảm bảo băng thông bằng ns2 31
2.4.2 Chương trình mô phỏng thuật toán định tuyến trên .NET Frame-
work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.4.3 Sơ đồ mạng và bộ yêu cầu định tuyến thử nghiệm . . . . . . 35
2.4.4 So sánh, đánh giá thuật toán định tuyến bằng mô phỏng . . . 38
2.5 KẾT CHƯƠNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Chương 3. THUẬT TOÁN ĐỊNH TUYẾN ĐẢM BẢO BĂNG THÔNG 40
3.1 BGHT: THUẬT TOÁN ĐỊNH TUYẾN ĐẢM BẢO BĂNG THÔNG
SỬ DỤNG THỜI GIAN GIỮ BĂNG THÔNG . . . . . . . . . . . . 40
3.1.1 Thuật toán đề xuất BGHT . . . . . . . . . . . . . . . . . . 40
3.1.2 Ví dụ minh họa . . . . . . . . . . . . . . . . . . . . . . . . 44
3.1.3 Phân tích hoạt động . . . . . . . . . . . . . . . . . . . . . . 45
3.2 TEARD: THUẬTTOÁNĐỊNHTUYẾNĐẢMBẢOBĂNGTHÔNG
SỬ DỤNG DỮ LIỆU ĐỊNH TUYẾN . . . . . . . . . . . . . . . . . 46
3.2.1 Thuật toán đề xuất TEARD . . . . . . . . . . . . . . . . . . 46
3.2.2 Ví dụ minh họa . . . . . . . . . . . . . . . . . . . . . . . . 48
3.2.3 Phân tích hoạt động . . . . . . . . . . . . . . . . . . . . . . 51
3.3 KẾT QUẢ MÔ PHỎNG . . . . . . . . . . . . . . . . . . . . . . . 52
3.3.1 Kết quả khi thay đổi tham số yêu cầu thử nghiệm . . . . . . 54
Đặc điểm kết quả thử nghiệm . . . . . . . . . . . . . . . . . 54
Thay đổi băng thông yêu cầu . . . . . . . . . . . . . . . . . 57
Thay đổi số cặp nguồn đích . . . . . . . . . . . . . . . . . . 61
v3.3.2 Kết quả trên số lượng lớn bộ yêu cầu định tuyến . . . . . . . 64
Kịch bản định tuyến tĩnh . . . . . . . . . . . . . . . . . . . 65
Kịch bản định tuyến động, điều kiện tải bình thường . . . . . 68
Kịch bản định tuyến động, điều kiện tải cao . . . . . . . . . 71
3.3.3 Kết quả khi thay đổi tham số thuật toán đề xuất . . . . . . . 74
3.4 KẾT CHƯƠNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Chương 4. THUẬT TOÁN ĐỊNH TUYẾN ĐẢM BẢO BĂNG THÔNG VÀ
ĐỘ TRỄ 78
4.1 HRABDC: THUẬT TOÁN ĐỊNH TUYẾN HEURISTIC ĐẢM BẢO
BĂNG THÔNG VÀ ĐỘ TRỄ . . . . . . . . . . . . . . . . . . . . . 78
4.1.1 Thuật toán đề xuất HRABDC . . . . . . . . . . . . . . . . . 78
4.1.2 Ví dụ minh họa . . . . . . . . . . . . . . . . . . . . . . . . 80
4.1.3 Phân tích hoạt động . . . . . . . . . . . . . . . . . . . . . . 84
4.2 TĂNG CƯỜNG KHẢ NĂNG TÌM ĐƯỜNG ĐI CÓ TRỌNG SỐ
NHỎ CHO DIJKSTRA HEURISTIC . . . . . . . . . . . . . . . . . 86
4.2.1 Cải tiến thuật toán tìm đường Dijkstra heuristic . . . . . . . 86
4.2.2 Thuật toán định tuyến eHRABDC . . . . . . . . . . . . . . 88
4.3 KẾT QUẢ MÔ PHỎNG . . . . . . . . . . . . . . . . . . . . . . . 89
4.3.1 Thử nghiệm thuật toán định tuyến . . . . . . . . . . . . . . 90
Kết quả mô phỏng trên sơ đồ MIRA . . . . . . . . . . . . . 90
Kết quả mô phỏng trên sơ đồ CESNET . . . . . . . . . . . . 93
Kết quả mô phỏng trên sơ đồ ANSNET . . . . . . . . . . . 96
4.3.2 Thử nghiệm phương pháp tính trọng số và tìm đường đi . . . 99
4.4 KẾT CHƯƠNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
KẾT LUẬN VÀ KIẾN NGHỊ 105
Danh mục các công trình đã công bố của nghiên cứu sinh 107
Tài liệu tham khảo 109
PHỤ LỤC 116
vi
DANHMỤC CÁC CHỮ VIẾT TẮT
BCRA Bandwidth Constrained Routing Al-
gorithm
Tên một thuật toán định tuyến
BGHT Bandwidth Guaranteed routing algo-
rithm using Holding Time
Tên một thuật toán định tuyến
BGMRA Bandwidth Guaranteed MPLS Rout-
ing Algorithm
Tên một thuật toán định tuyến
CSPF Constrained Shortest Path First Tên một thuật toán định tuyến
DiffServ Differentiated Services Tên một mô hình đảm bảo chất lượng
dịch vụ
DORA Dynamic Online Routing Algorithm Tên một thuật toán định tuyến
eHRABDC enhanced Heuristic Routing Algo-
rithm with Bandwidth Delay Con-
straints
Tên một thuật toán định tuyến
HRABDC Heuristic Routing Algorithm with
Bandwidth Delay Constraints
Tên một thuật toán định tuyến
IGRP Interior Gateway Routing Protocol Tên một giao thức định tuyến
IntServ Integrated Services Tên một mô hình đảm bảo chất lượng
dịch vụ
IP Internet Protocol Tên một giao thức mạng máy tính
LDA Least Delay Algorithm Tên một thuật toán định tuyến
M-MDWCRA Modified Maximum Delay Weighted
Capacity Routing Algorithm
Tên một thuật toán định tuyến
MDMF Minimum Delay and Maximum Flow Tên một thuật toán định tuyến
MDWCRA Maximum Delay Weighted Capacity
Routing Algorithm
Tên một thuật toán định tuyến
MHA Minimum Hop Algorithm Tên một thuật toán định tuyến
MIRA Minimum Interference Routing Algo-
rithm
Tên một thuật toán định tuyến
MPLS Multi Protocol Label Switching Tên một kĩ thuật mạng máy tính
vii
MPLS TE Multi Protocol Label Switching Traf-
fic Engineering
Tên một kĩ thuật mạng máy tính
OC Optical Carrier Mức truyền dẫn cáp quang
OSI Open Systems Interconnection Tên một mô hình mạng máy tính
POOA Paths Optimal Ordering Algorithm Tên một thuật toán định tuyến
QoS Quality Of Service Khái niệm chất lượng dịch vụ trong
mạng máy tính
RIP Routing Information Protocol Tên một giao thức định tuyến
RRATE Random Race based Algorithm for
Traffic Engineering
Tên một thuật toán định tuyến
RSVP Resource Reservation Protocol Tên một giao thức mạng máy tính
TEARD Traffic Engineering routing algorithm
using Routing Data
Tên một giao thức định tuyến
viii
DANHMỤC CÁC KÍ HIỆU
SLYC Số lượng yêu cầu
TC Tỉ lệ chấp nhận yêu cầu định tuyến
TT Thời gian tính toán định tuyến trung bình
ĐT Độ lệch chuẩn tải liên kết
b(l) Băng thông còn lại của liên kết l
c(l) Dung lượng băng thông của liên kết l
d(l) Độ trễ của liên kết l
w(l) Trọng số của liên kết l
G(N,L) Đồ thị biểu diễn sơ đồ mạng
N Tập hợp k nút mạng
L Tập hợp m liên kết
SD Tập hợp các cặp nút nguồn đích sd
r(s,d,b) Yêu cầu định tuyến từ s đến d với lượng băng thông b cần đảm bảo
r(s,d,β ,δ ) Yêu cầu định tuyến từ s đến d với lượng băng thông β và độ trễ δ cần đảm bảo
psd Một đường đi từ s đến d
pr(s,d,b) Đường đi psd thỏa yêu cầu r(s,d,b)
pr(s,d,β ,δ ) Đường đi psd thỏa yêu cầu r(s,d,β ,δ )
P(sd) Tập hợp tất cả đường đi từ s đến d
ix
DANHMỤC CÁC BẢNG
2.1 Kí hiệu được sử dụng trong bài toán . . . . . . . . . . . . . . . . . 15
2.2 Các bước tổng quát thuật toán định tuyến đảm bảo băng thông . . . 27
3.1 Thuật toán BGHT . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2 Thuật toán TEARD . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3 Độ phức tạp của thuật toán định tuyến đảm bảo băng thông . . . . . 52
3.4 Kết quả định tuyến tĩnh, sơ đồ CESNET với băng thông yêu cầu thay
đổi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.5 Kết quả trung bình 300 bộ yêu cầu định tuyến tĩnh . . . . . . . . . . 65
3.6 Kết quả trung bình 300 bộ yêu cầu định tuyến động, điều kiện tải thường 69
3.7 Kết quả trung bình 300 bộ yêu cầu định tuyến động, điều kiện tải cao 72
3.8 Kết quả một thử nghiệm định tuyến tĩnh, sơ đồ CESNET, sau 1000
yêu cầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.9 Kết quả một thử nghiệm định tuyến động, điều kiện tải cao, sơ đồ
ANSNET, sau 5000 yêu cầu . . . . . . . . . . . . . . . . . . . . . . 76
4.1 Thuật toán HRABDC . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.2 Độ phức tạp của thuật toán định tuyến đảm bảo băng thông và độ trễ 85
4.3 Thuật toán eHRABDC . . . . . . . . . . . . . . . . . . . . . . . . 89
4.4 Kết quả trung bình thử nghiệm trên sơ đồ MIRA . . . . . . . . . . . 90
4.5 Kết quả trung bình thử nghiệm trên sơ đồ CESNET . . . . . . . . . 94
4.6 Kết quả trung bình thử nghiệm trên sơ đồ ANSNET . . . . . . . . . 97
xDANHMỤC CÁC HÌNH
2.1 Ví dụ mô hình hóa bài toán định tuyến đảm bảo băng thông [27] . . 15
2.2 Mô hình MPLS TE thực hiện bài toán định tuyến đảm bảo băng thông 17
2.3 Mô hình MPLS TE với máy chủ định tuyến [63] . . . . . . . . . . . 18
2.4 Giá trị trọng số liên kết MIRA cho yêu cầu r1(1,5,1) . . . . . . . . 22
2.5 Ví dụ trọng số khác nhau của thuật toán MIRA và NewMIRA . . . . 23
2.6 Mô hình mô phỏng thuật toán định tuyến . . . . . . . . . . . . . . . 32
2.7 Mô hình định tuyến đảm bảo băng thông với MNS 2.1 và QOSPF
trong ns2 [63] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.8 Các thành phần của chương trình mô phỏng thuật toán định tuyến . . 34
2.9 Mô hình định thời gian trong việc xử lý và kết thúc yêu cầu . . . . . 35
2.10 Sơ đồ mạng thử nghiệm . . . . . . . . . . . . . . . . . . . . . . . . 36
2.11 Một ví dụ biểu đồ so sánh độ đo các thuật toán từ [11] . . . . . . . . 39
3.1 Ví dụ định tuyến liên quan đến thời gian giữ băng thông . . . . . . . 41
3.2 Kết quả ví dụ minh họa thuật toán BGHT . . . . . . . . . . . . . . 45
3.3 Ví dụ minh họa thuật toán TEARD . . . . . . . . . . . . . . . . . . 49
3.4 Kết quả ví dụ minh họa thuật toán TEARD . . . . . . . . . . . . . . 51
3.5 Kết quả định tuyến động, điều kiện tải thường, sơ đồ MIRA . . . . . 55
3.6 Kết quả định tuyến động, điều kiện tải cao, sơ đồ ANSNET với băng
thông yêu cầu thay đổi . . . . . . . . . . . . . . . . . . . . . . . . 59
3.7 Kết quả định tuyến tĩnh, sơ đồ CESNET với số cặp nguồn đích thay đổi 62
3.8 Kết quả trung bình 100 bộ yêu cầu định tuyến tĩnh, sơ đồ MIRA . . 67
3.9 Kết quả trung bình 100 bộ yêu cầu định tuyến động, điều kiện tải
thường, sơ đồ CESNET . . . . . . . . . . . . . . . . . . . . . . . . 70
3.10 Kết quả trung bình 100 bộ yêu cầu định tuyến động, điều kiện tải cao,
sơ đồ ANSNET . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.1 Kết quả ví dụ minh họa thuật toán HRABDC . . . . . . . . . . . . . 83
4.2 Kết quả ví dụ minh họa Dijkstra mở rộng . . . . . . . . . . . . . . . 85
4.3 Ví dụ Dijkstra heuristic cải tiến . . . . . . . . . . . . . . . . . . . . 88
xi
4.4 So sánh tỉ lệ chấp nhận yêu cầu của thử nghiệm định tuyến động, điều
kiện tải cao, sơ đồ MIRA . . . . . . . . . . . . . . . . . . . . . . . 91
4.5 So sánh thời gian tính toán định tuyến trung bình của thử nghiệm định
tuyến tĩnh, sơ đồ MIRA . . . . . . . . . . . . . . . . . . . . . . . . 92
4.6 So sánh độ lệch chuẩn tải liên kết của thử nghiệm định tuyến động,
điều kiện tải thường, sơ đồ MIRA . . . . . . . . . . . . . . . . . . . 93
4.7 So sánh tỉ lệ chấp nhận yêu cầu của thử nghiệm định tuyến động, điều
kiện tải thường, sơ đồ CESNET . . . . . . . . . . . . . . . . . . . . 95
4.8 So sánh thời gian tính toán định tuyến trung bình của thử nghiệm định
tuyến động, điều kiện tải cao, sơ đồ CESNET . . . . . . . . . . . . 95
4.9 So sánh độ lệch chuẩn tải liên kết của thử nghiệm định tuyến tĩnh, sơ
đồ CESNET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.10 So sánh tỉ lệ chấp nhận yêu cầu của thử nghiệm định tuyến tĩnh, sơ đồ
ANSNET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.11 So sánh thời gian tính toán định tuyến trung bình của thử nghiệm định
tuyến động, điều kiện tải thường, sơ đồ ANSNET . . . . . . . . . . 98
4.12 Một kết quả thử nghiệm kết hợp phương pháp tính trọng số và tì ... rk (CESNET), Czech Republic, pp. 3–18.
[46] Ogier R., Rutenburg V., Shacham N. (1993), “Distributed algorithms for comput-
ing shortest pairs of disjoint paths”, IEEE Transactions on Information Theory
39(2), pp. 443–455.
[47] Oommen B. J., Misra S., Granmo O.-C. (2007), “Routing Bandwidth-Guaranteed
Paths in MPLS Traffic Engineering: A Multiple Race Track Learning Ap-
proach”, IEEE Transactions on Computers 56(7), pp. 959–976.
113
[48] Pant R., Sanguankotchakorn T. (2010), “A heuristic approach for bandwidth con-
straint path selection in MPLS based networks”, International Conference on
Electrical Engineering/Electronics Computer Telecommunications and Infor-
mation Technology, ECTI-CON 2010, Thailand, pp. 909–913.
[49] Porwal M. K., Yadav A., Charhate S. (2008), “Traffic Analysis of MPLS and Non
MPLS Network including MPLS Signaling Protocols and Traffic Distribution
in OSPF and MPLS”, First International Conference on Emerging Trends in
Engineering and Technology, ICETET 08, IEEE, pp. 187–192.
[50] Pushpavalli M., Natarajan A. M. (2012), “Quality of Service in Mobile Adhoc
Networks using Two Bandwidth Estimation Method in Optimized Link State
Routing protocol”, International Journal of Computer Science and Network
Security 12(1), pp. 98–105.
[51] Qadir J., Ali A., Yau K. L. A., Sathiaseelan A., Crowcroft J. (2015), Exploiting
the power of multiplicity: a holistic survey of network-layer multipath, ArXiv
e-prints.
[52] Rocha M., Sousa P., Cortez P., Rio M. (2011), “Quality of Service constrained
routing optimization using Evolutionary Computation”, Applied Soft Comput-
ing 11(1), pp. 356–364.
[53] Rutgers C. L. H. (2005), An Introduction to IGRP, CISCO Technology white pa-
per, CISCO.
[54] Sahoo S. P., Kabat M. R., Sahoo A. K. (2011), “Tabu Search Algorithm for Core
Selection in Multicast Routing”, International Conference on Communication
Systems and Network Technologies, CSNT 2011, IEEE, USA, pp. 17–21.
[55] Sang-Woon Jeon, Kyomin Jung, Hyunseok Chang (2014), “Fully Distributed Al-
gorithms for Minimum Delay Routing Under Heavy Traffic”, IEEE Transac-
tions on Mobile Computing 13(5), pp. 1048–1060.
[56] Scoglio C., Anjali T., Cavalcante de Oliveira J., Akyildiz I., Uhl G. (2004), “TEAM:
a traffic engineering automated manager for diffserv-based MPLS networks”,
IEEE Communications Magazine 42(10), pp. 134–145.
[57] Singh A., Mittal G. (2000), QoS and Traffic Engineering: MPLS, DiffServ and
Constraint Based Routing, BSc thesis, Indian Institute of Technology, India.
114
[58] Smit H., Li T. (2004), Intermediate System to Intermediate System (IS-IS) Exten-
sions for Traffic Engineering (TE), RFC 3784, IETF.
[59] Soorki M. N., Rostami H. (2014), “Label switched protocol routing with guaran-
teed bandwidth and end to end path delay in {MPLS} networks”, Journal of
Network and Computer Applications 42, pp. 21–38.
[60] Stiliadis D., Varma A. (1998), “Latency-rate Servers: A General Model for Analy-
sis of Traffic Scheduling Algorithms”, IEEE/ACM Transactions on Networking
6(5), pp. 611–624.
[61] TanenbaumA. S. (2011),Computer networks, 5th ed, Pearson Prentice Hall, Boston.
[62] Tran C. H., Le Q. C., Tran T. T. M. (2010), “A study on Any transport over
MPLS (AToM)”, The 12th International Conference on Advanced Communi-
cation Technology, ICACT 2010, IEEE, Korea, pp. 64–70.
[63] Tran C. H., Nguyen H. T., Nguyen D. T., Jung H. W., Kim T. I., Kim S. H., Yang
W. J. (2007), “Advanced Routing Algorithms and Load Balancing on MPLS”,
The 9th International Conference on Advanced Communication Technology,
ICACT 2007, IEEE, Korea, pp. 1886–1891.
[64] Turky A. A., Mitschele-Thiel A. (2009), “MPLS Online Routing Optimization
Using Prediction”, Network Control and Optimization, Springer Berlin Heidel-
berg, Berlin, Heidelberg, pp. 45–52.
[65] Wang B., Su X., Chen C. (2002), “A new bandwidth guaranteed routing algorithm
for MPLS traffic engineering”, International Conference on Communications,
ICC 2002, IEEE, USA, pp. 1001–1005.
[66] Wang N., Ho K., Pavlou G., Howarth M. (2008), “An overview of routing op-
timization for internet traffic engineering”, IEEE Communications Surveys &
Tutorials 10(1), pp. 36–56.
[67] Wang Z., Crowcroft J. (1995), “Bandwidth-delay based routing algorithms”,Global
Telecommunications Conference, GLOBECOM 1995, IEEE, Singapore, pp. 2129–
2133.
[68] Wang Z., Crowcroft J. (1996), “Quality-of-service routing for supporting multime-
dia applications”, IEEE Journal on Selected Areas in Communications 14(7),
pp. 1228–1234.
115
[69] Wisniewski L., Schumacher M., Jasperneite J., Diedrich C. (2014), “Linear time,
possibly disjoint path search approach for ethernet based industrial automation
networks”, Emerging Technology and Factory Automation, ETFA 2014, IEEE,
Spain, pp. 1–9.
[70] Wroclawski J. (1997), The Use of RSVP with IETF Integrated Services, RFC 2210,
IETF.
[71] Xu Y. (2011), Metaheuristic Approaches for QoS Multicast Routing Problems,
PhD thesis, University of Nottingham, Nottingham, UK.
[72] Xu Y., Qu R. (2012), “A hybrid scatter search meta-heuristic for delay-constrained
multicast routing problems”, Applied Intelligence 36(1), pp. 229–241.
[73] Xuan L., Ying L. (2008), “L-MMIRA: LightMulticast Minimal Interference Rout-
ing Module in MPLS Network”, Seventh International Conference on Network-
ing, ICN 2008, IEEE, Mexico, pp. 421–426.
[74] Yang Y., Muppala J., Chanson S. (2001), “Quality of service routing algorithms
for bandwidth-delay constrained applications”, Ninth International Conference
on Network Protocols, ICNP 2001, IEEE, USA, pp. 62–70.
[75] Yang Y., Zhang L., Muppala J. K., Chanson S. T. (2003), “Bandwidth–delay con-
strained routing algorithms”, Computer Networks 42(4), pp. 503–520.
[76] Yen J. Y. (1971), “Finding the K Shortest Loopless Paths in a Network”,Manage-
ment Science 17(11), pp. 712–716.
[77] Younis O., Fahmy S. (2003), “Constraint-based routing in the internet: Basic prin-
ciples and recent research”, Communications Surveys Tutorials, IEEE 5(1),
pp. 2–13.
[78] Zahary A., Ayesh A. (2010), “An analytical review for multipath routing in Mobile
Ad Hoc Networks”, International Journal of Ad Hoc and Ubiquitous Comput-
ing 5(2), p. 69.
[79] Zhang L., Cai L.-b., Li M., Wang F.-h. (2009), “A method for least-cost QoS
multicast routing based on genetic simulated annealing algorithm”, Computer
Communications 32(1), pp. 105–110.
116
PHỤ LỤC A. CHƯƠNG TRÌNH MÔ PHỎNG ĐỊNH TUYẾN
ĐẢM BẢO BĂNG THÔNG, ĐỘ TRỄ
A.1 Thiết kế chương trình mô phỏng trên .NET Framework
Chức năng của chương trình mô phỏng thuật toán định tuyến bao gồm:
• Đọc vào sơ đồ mạng và bộ dữ liệu định tuyến được lưu dưới dạng tập tin văn bản.
• Thực hiện định tuyến cho mỗi yêu cầu bằng các thuật toán định tuyến được cài
đặt thành các lớp đối tượng.
• Xuất ra kết quả định tuyến cũng như kết quả thống kê của mỗi bộ yêu cầu dưới
dạng tập tin phân cách giá trị bằng dấu phẩy (.csv).
• Chạy tự động kết hợp nhiều bộ yêu cầu với nhiều thuật toán định tuyến.
Hình A.1 trình bày sơ đồ lớp chính của chương trình mô phỏng.
Network Component là thành phần mô phỏng sơ đồ mạng, có ba lớp đối tượng:
• Lớp Topology thể hiện sơ đồ mạng. Mỗi đối tượng Topology có một danh sách
nút mạng (kiểu lớp Node), một danh sách liên kết (kiểu lớp Link), và một tập hợp
các cặp nút nguồn đích.
• Lớp Node thể hiện nút mạng, mỗi nút có chứa một danh sách liên kết xuất phát
từ chính nó.
• Lớp Link thể hiện liên kết, có các thuộc tính như dung lượng, băng thông còn
lại, nút đầu, nút cuối.
Routing Component là thành phần cài đặt thuật toán với hai thành phần con:
• Common Algorithms gồm các lớp cài đặt thuật toán dùng chung như thuật toán
tìm đường đi có trọng số nhỏ nhất Dijkstra, thuật toán tính luồng cực đại Fork-
Fulkerson [15], thuật toán Yen tìm k đường đi ngắn nhất [76]...
• Routing Algorithms gồm các lớp cài đặt thuật toán định tuyến liên quan như
MHA, MIRA, RRATE, MDMF... và các thuật toán của nghiên cứu sinh đề xuất
BGHT, TEARD, HRABDC (sẽ được trình bày chi tiết ở chương sau).
Simulator Component là thành phần thực hiện mô phỏng, có các lớp đối tượng:
• Lớp Request thể hiện yêu cầu định tuyến với các thông tin nút nguồn, nút đích,
băng thông yêu cầu, thời điểm đến của yêu cầu, thời gian giữ băng thông. Đối
với bài toán đảm bảo băng thông và độ trễ thì có thêm độ trễ yêu cầu.
• Lớp Response mô phỏng kết quả đáp ứng yêu cầu. Mỗi đối tượng Response
117
Hình A.1: Sơ đồ lớp chính của chương trình mô phỏng
118
tương ứng với một đối tượng Request, chứa thông tin đường đi tìm được, thời
gian xử lý của thuật toán, thời điểm kết thúc (để giải phóng tài nguyên mạng).
• Lớp Ticker và giao diện ITickerListener thực hiện cơ chế bộ định thời gian của
chương trình mô phỏng, trong đó mỗi lần hàm callback Ticker::OnTimedEvent
được gọi thì tính là đã qua một đơn vị thời gian mô phỏng.
• Lớp RequestDispatcher chứa bộ yêu cầu định tuyến và thực thi giao diện ITick-
erListener để gửi yêu cầu đến thuật toán định tuyến dựa trên thời điểm đến của
yêu cầu.
• Lớp ReponseManager chứa bộ kết quả ứng với những yêu cầu đã xử lý, thực thi
giao diện ITickerListener để giải phóng băng thông dựa trên thời điểm kết thúc
yêu cầu định tuyến.
• Lớp Simulator chứa các hàm chương trình để thực hiện quá trình mô phỏng.
• Lớp Configuration dùng để đọc thông tin cấu hình được lưu dưới dạng tập tin
XML.
Cuối cùng, thành phần Statistics gồm lớp Log để ghi vết quá trình thử nghiệm, và
lớp Statistics dựa trên kết quả ReponseManager::ResponseForStatistics để thống kê
tỉ lệ chấp nhận yêu cầu, thời gian tính toán trung bình, độ lệch chuẩn tải liên kết và
xuất kết quả thống kê thành tập tin csv.
Hình A.2 và hình A.3 lần lượt trình bày sơ đồ thiết kế tuần tự của việc xử lý yêu
cầu định tuyến và kết thúc yêu cầu.
119
Hình A.2: Sơ đồ tuần tự chức năng gửi yêu cầu đến thuật toán định tuyến
Hình A.3: Sơ đồ tuần tự chức năng kết thúc yêu cầu
120
A.2 Một số màn hình kết quả thử nghiệm
Xét ví dụ hình A.4, sơ đồ mạng có 11 nút, 2 cặp nguồn - đích, thử nghiệm với2
yêu cầu định tuyến r1 = (0,4,1) và r2 = (5,8,1). Thuật toán MHA chọn đường đi
ngắn nhất cho yêu cầu r1: pr1 = (0,6,7,4) nên yêu cầu thứ hai không thể đáp ứng vì
liên kết (6− 7) không còn đủ băng thông. Trong khi thuật toán MIRA chọn đường
đi cho r1 là pr1 = (0,1,2,3,4) nên tiếp tục đáp ứng được yêu cầu r2 với đường đi
pr2 = (5,6,7,8). Hình A.5 thể hiện quá trình thử nghiệm trên ns2, trong khi hình A.6
thể hiện cùng một kết quả trên chương trình mô phỏng .NET Framework.
Hình A.4: Ví dụ thử nghiệm thuật toán định tuyến
121
(a) Kết quả thuật toán định tuyến MHA
(b) Kết quả thuật toán định tuyến MIRA
Hình A.5: Thử nghiệm trên ns2
122
(a) Kết quả thuật toán định tuyến MHA
(b) Kết quả thuật toán định tuyến MIRA
Hình A.6: Thử nghiệm chương trình mô phỏng trên .NET Framework
123
PHỤ LỤC B. VÍ DỤ MINH HỌA TỪNG BƯỚC CÁC PHƯƠNG
PHÁP TÌM ĐƯỜNG TRONG BÀI TOÁN ĐỊNH TUYẾN ĐẢM
BẢO BĂNG THÔNG VÀ ĐỘ TRỄ
B.1 Dijkstra mở rộng và Dijkstra heuristic
Ví dụ từng bước thực hiện của hai phương pháp tìm đường Dijkstra mở rộng và
Dijkstra heuristic trên cùng một hệ thống mạng.
(a) Sơ đồ mạng
(b) Bỏ liên kết không đảm bảo băng thông và tính trọng số
Hình B.1: Sơ đồ mạng được sử dụng làm ví dụ
124
(a) Giá trị khởi tạo Dijkstra mở rộng. Thông tin trên mỗi liên kết (trọng số, độ trễ)
(b) Xét mục có w nhỏ nhất en00, cập nhật hai mục en
1
1 và en
2
1. (Mục en
2
1 lưu vết đường đi từ 0
đến 2, có độ trễ bằng 1 và trọng số bằng 2)
125
(c) Xét mục có w nhỏ nhất kế tiếp en01, cập nhật hai mục en
1
2 và en
2
2
(d) Tương tự xét en02, cập nhật en
1
3 và en
2
3
126
(e) Xét en03, không cập nhật mục nào vì không thỏa điều kiện độ trễ
(f) Xét en11 (w nhỏ nhất kế tiếp), cập nhật en
3
3
127
(g) Xét en12, không cập nhật mục nào ở nút liền kề 3 vì không thỏa điều kiện độ trễ. Xét en
1
3
có kết quả tương tự
(h) Xét w nhỏ nhất kế tiếp en21, cập nhật mục en
3
2 và en
4
3
128
(i) Tiếp tục xét en22, cập nhật en
3
3 vì trọng số nhỏ hơn giá trị đã lưu. Không cập nhật mục ở
nút 4 vì không thỏa điều kiện độ trễ
(j) Xét en23, không cập nhật mục nào vì không thỏa điều kiện độ trễ
129
(k) Xét w nhỏ nhất kế tiếp en32, cập nhật en
5
3
(l) Xét en33, không cập nhật mục nào vì không thỏa điều kiện độ trễ
130
(m) Xét en43, không cập nhật mục nào vì không thỏa điều kiện độ trễ
(n) Xét en53, không cập nhật mục nào vì không có liên kết từ nút 5
131
(o) Xét en10, không cập nhật mục nào vì không thỏa điều kiện trọng số. Kết quả tương tự khi
xét các mục có w= ∞ khác
(p) Thuật toán kết thúc khi duyệt hết 24 mục, tìm được đường đi pri = (0,2,3,5)
Hình B.2: Kết quả từng bước của Dijkstra mở rộng cho ví dụ B.1
132
(a) Khởi tạo Dijkstra heuristic. Thông tin trên mỗi liên kết là (trọng số, độ trễ)
(b) Xét mục có w nhỏ nhất en0 (tại nút 0), cập nhật mục en2. Mục en1 không được cập nhật
vì không thỏa điều kiện độ trễ
(c) Xét mục w nhỏ nhất tiếp theo en2, cập nhật mục en3. Mục en4 không được cập nhật vì
không thỏa điều kiện độ trễ
133
(d) Xét mục tiếp theo en3, cập nhật mục en5
(e) Xét tiếp các mục en5, en1, en4, không có mục nào được cập nhật vì không thỏa điều kiện
trọng số. Thuật toán kết thúc khi duyệt hết nút, tìm được đường đi pri = (0,2,3,5)
.Hình B.3: Kết quả từng bước của Dijkstra heuristic cho ví dụ B.1
B.2 Dijkstra heuristic và Dijkstra heuristic cải tiến
Hình B.4 ví dụ một trường hợp Disjktra heuristic không tìm được đường đi nhỏ
nhất; sau đó hình B.5 thể hiện kết quả áp dụng Dijkstra heuristic cải tiến để tìm được
đường đi có trọng số nhỏ hơn.
134
(a) Khởi tạo Dijkstra heuristic, đã bỏ các liên kết không đảm bảo băng thông. Thông tin trên
mỗi liên kết là (trọng số, băng thông). Yêu cầu định tuyến ri(0,5,1,4)
(b) Xét mục w nhỏ nhất en0, cập nhật en1, en2
(c) Xét mục w nhỏ nhất kế tiếp en1, cập nhật en3
135
(d) Xét mục w nhỏ nhất kế tiếp en2, vì không thỏa điều kiện trọng số (w3 < w2+w(l23)) nên
không cập nhật en3, dẫn đến sẽ không tìm được đường đi trọng số nhỏ nhất
(e) Xét mục w nhỏ nhất kế tiếp en3, cập nhật en5. en4 không được cập nhật vì không thỏa điều
kiện độ trễ
136
(f) Tiếp tục xét en5 (w= 7) và en4 (w= ∞), không cập nhật mục nào. Thuật toán kết thúc với
đường đi tìm được p1 = (0,1,3,5) (trong khi đường p2 = (0,2,3,4,5) có trọng số nhỏ hơn).
Hình B.4: Ví dụ Dijkstra heuristic không tìm được đường đi trọng số nhỏ nhất
(a) Bỏ liên kết trọng số lớn nhất l35 từ đường đi p1 = (0,1,3,5) đã tìm được. Tiếp tục thực
hiện Dijkstra heuristic trên sơ đồ mạng còn lại
137
(b) Kết quả Dijkstra heuristic tìm được đường đi p2 = (0,2,3,4,5)
(c) Bỏ liên kết trọng số lớn nhất l23 từ đường đi p2 = (0,2,3,4,5) tìm được. Tiếp tục thực hiện
Dijkstra heuristic và không tìm được đường đi thỏa điều kiện độ trễ. Quá trình tìm đường kết
thúc và lựa chọn đường đi có trọng số nhỏ hơn p2 = (0,2,3,4,5).
Hình B.5: Áp dụng Dijkstra heuristic cải tiến tiếp theo ví dụ hình B.4

File đính kèm:

  • pdfluan_an_giai_quyet_bai_toan_dinh_tuyen_dam_bao_bang_thong_do.pdf