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

Ứng dụng giải thuật di truyền để tối ưu định tuyến trong mạng IP

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

..

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

NGUYỄN NGỌC ĐẠI

ỨNG DỤNG GIẢI THUẬT DI TRUYỀN
ĐỂ TỐI ƯU ĐỊNH TUYẾN TRONG MẠNG IP

LUẬN VĂN THẠC SĨ
Chuyên ngành: Cơng nghệ thơng tin
Mã số ngành: 60480201
TP. HỒ CHÍ MINH, tháng 11 năm 2014


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

NGUYỄN NGỌC ĐẠI

ỨNG DỤNG GIẢI THUẬT DI TRUYỀN
ĐỂ TỐI ƯU ĐỊNH TUYẾN TRONG MẠNG IP
LUẬN VĂN THẠC SĨ
Chuyên ngành: Công nghệ thông tin
Mã số ngành: 60480201
CÁN BỘ HƯỚNG DẪN KHOA HỌC: TS. LÊ MẠNH HẢI


TP. HỒ CHÍ MINH, tháng 11 năm 2014


CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ TP. HCM

Cán bộ hướng dẫn khoa học: TS. LÊ MẠNH HẢI

Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công nghệ TP. HCM
ngày 9 tháng 11 năm 2014
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:

TT
1
2
3
4
5

Họ và tên
PGS. TSKH. Nguyễn Xuân Huy
PGS. TS. Lê Hoàng Thái
TS. Nguyễn Thanh Bình
TS. Nguyễn Văn Mùi
TS. Võ Đình Bảy

Chức danh Hội đồng
Chủ tịch
Phản biện 1
Phản biện 2

Ủy viên
Ủy viên, Thư ký

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã được
sửa chữa (nếu có).

Chủ tịch Hội đồng đánh giá LV


TRƯỜNG ĐH CƠNG NGHỆ TP. HCM
PHỊNG QLKH – ĐTSĐH

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
TP. HCM, ngày 02 tháng 4 năm 2014

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Nguyễn Ngọc Đại

Giới tính: Nam

Ngày, tháng, năm sinh: 26/09/1988

Nơi sinh: Lâm Đồng

Chuyên ngành: Công nghệ thông tin

MSHV: 1241860003

I- Tên đề tài:

Ứng dụng giải thuật di truyền để tối ưu định tuyến trong mạng IP.
II- Nhiệm vụ và nội dung:
Khái niệm hoạt động định tuyến mạng và vấn đề cần tối ưu trong định tuyến mạng.
Ứng dụng giải thuật di truyền tìm đường đi ngắn nhất giữa 2 node trong mạng IP.
So sánh khả năng tìm ra tập đường đi ngắn nhất giữa giải thuật di truyền và thuật
toán Dijkstra.
III- Ngày giao nhiệm vụ: 02/4/2014
IV- Ngày hoàn thành nhiệm vụ: 26/9/2014
V- Cán bộ hướng dẫn: TS. LÊ MẠNH HẢI
CÁN BỘ HƯỚNG DẪN
(Họ tên và chữ ký)

KHOA QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)


i

LỜI CAM ĐOAN

Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi. Các số liệu, kết quả
nêu trong Luận văn là trung thực và chưa từng được ai cơng bố trong bất kỳ cơng trình
nào khác.
Tơi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này đã được
cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc.

Học viên thực hiện Luận văn


ii


LỜI CÁM ƠN

Em xin cám ơn q Thầy Cơ phịng Quản lý khoa học và Đào tạo sau đại học,
Trường Đại học Công nghệ TP. HCM đã hướng dẫn và cung cấp đầy đủ các thơng tin
giúp em hồn thành Luận văn thạc sĩ này.
Em xin cám ơn Thầy Lê Mạnh Hải, Giảng viên Khoa Công nghệ thông tin,
Trường Đại học Công nghệ TP. HCM đã đồng ý và hết lòng hướng dẫn em thực hiện
Luận văn thạc sĩ này.
Em xin cám ơn quý Thầy đã nhiệt tình giảng dạy và đưa ra các kiến thức rất bổ
ích giúp em hình thành Luận văn.
Cám ơn các Anh Chị học viên lớp 12SCT21 đã cùng em gần 2 năm học tập và
nghiên cứu cùng nhau.
Nguyễn Ngọc Đại


iii

TÓM TẮT
Hiệu suất và độ tin cậy của Internet phụ thuộc vào hoạt động của các giao thức
định tuyến. Trong các giao thức định tuyến đang được sử dụng thì Open Shortest Path
First (OSPF) với thuật toán Dijkstra là được sử dụng phổ biến nhất. Thuật toán Dijkstra
được sử dụng để tìm kiếm đường đi ngắn nhất từ một node đến tất cả các node còn lại
trong đồ thị. Thuật tốn dừng khi node đích là đạt được. Do đó, nếu có nhiều đường đi
cùng ngắn nhất để truyền các gói tin từ node nguồn đến node đích thì thuật toán
Dijkstra chỉ xuất ra được một đường đi. Điều này không phản ánh được nhu cầu là cần
thực hiện cân bằng tải trong định tuyến. Bên cạnh đó, mạng Internet ngày càng phát
triển với một số lượng lớn node. Khi có sự thay đổi trong cấu trúc liên kết mạng, thuật
tốn Dijkstra sẽ mất nhiều tính tốn lặp lại.
Luận văn chọn tiếp cận theo giải thuật di truyền để giải quyết vấn đề nêu trên.

Giải thuật di truyền có thể khám phá khơng gian tìm kiếm theo nhiều hướng. Giải thuật
di truyền thích hợp cho việc giải quyết vấn đề có khơng gian giải pháp là lớn. Để thực
hiện được mục tiêu tìm kiếm thì giải thuật di truyền phải dựa trên các khái niệm về
quần thể, cá thể và các hoạt động di truyền như chọn lọc, lai ghép, đột biến, thay thế.


iv

ABSTRACT
Performance and reliability of the Internet depends on the operation of the routing
protocol. In the routing protocol being used, the Open Shortest Path First (OSPF) with
Dijkstra's algorithm is used most commonly. Dijkstra's algorithm is used to find the
shortest path from one node to all other nodes in the graph. The algorithm stops when
the destination node is reached. Therefore, if there are multiple shortest paths to
transmit the packets from the source node to the destination node, then Dijkstra
algorithm is only one way out. This does not reflect the demand is to perform load
balancing in routing. Besides, the Internet is growing with a large number of nodes.
When there is a change in the network topology, Dijkstra's algorithm takes many
repeated calculations.
This thesis focuses describes a genetic algorithm to solve the routing problems.
Genetic algorithm can explore the search space in many directions. Genetic algorithms
are suitable for solving the problem that the solution space is huge. To accomplish the
goal of searching for the genetic algorithm is based on the concept of population,
individuals and genetic operations such as selection, crossover, mutation, replacement.


v

MỤC LỤC
LỜI CAM ĐOAN ............................................................................................................ i

LỜI CÁM ƠN ................................................................................................................. ii
TÓM TẮT ...................................................................................................................... iii
ABSTRACT ................................................................................................................... iv
MỤC LỤC ....................................................................................................................... v
DANH MỤC CÁC TỪ VIẾT TẮT ............................................................................. vii
DANH MỤC CÁC HÌNH ẢNH ................................................................................. viii
DANH MỤC CÁC BẢNG ............................................................................................ ix
CHƯƠNG 1. MỞ ĐẦU .................................................................................................. 1
1.1 Đặt vấn đề ............................................................................................................... 1
1.2 Lý do chọn đề tài .................................................................................................... 1
1.3 Phương pháp luận ................................................................................................... 5
1.4 Cấu trúc Luận văn .................................................................................................. 6
CHƯƠNG 2. TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU .................................. 7
2.1 Các nghiên cứu liên quan đến công việc của luận văn .......................................... 7
2.2 Nhiệm vụ của Luận văn ......................................................................................... 9
2.3 Tổng quan về định tuyến ...................................................................................... 10
2.3.1 Định tuyến và hoạt động định tuyến ............................................................. 10
2.3.2 Tối ưu hóa định tuyến ................................................................................... 13
2.3.3 Mơ hình hóa bài tốn ước lượng nhu cầu truyền thơng ............................... 15
2.3.4 Phương pháp ước lượng nhu cầu truyền thông............................................. 16


vi

2.4 Tổng quan về giải thuật di truyền ........................................................................ 21
2.4.1 Các khái niệm quan trọng trong giải thuật di truyền .................................... 22
2.4.2 Cấu trúc của giải thuật di truyền ................................................................... 23
CHƯƠNG 3. ỨNG DỤNG GIẢI THUẬT DI TRUYỀN ĐỂ TÌM CÁC ĐƯỜNG
ĐI TỐT NHẤT TRONG MẠNG IP ........................................................................... 25
3.1 Phương pháp thực hiện......................................................................................... 25

3.2 Sơ đồ giải thuật của phương pháp thực hiện ....................................................... 26
3.3 Các bước hoạt động cụ thể của phương pháp thực hiện ...................................... 27
3.4 Kết quả của phương pháp thực hiện .................................................................... 38
CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA LUẬN VĂN .......... 45
TÀI LIỆU THAM KHẢO ........................................................................................... 46
PHỤ LỤC ...................................................................................................................... 48


vii

DANH MỤC CÁC TỪ VIẾT TẮT
AS

Autonomous System

IP

Internet Protocol

ISP

Internet Service Provider

NAT

Network Address Translation

OSPF

Open Shortest Path First


QoS

Quality of Service

RIP

Routing Information Protocol

SNMP

Simple Network Management Protocol

TCP

Transmission Control Protocol

UDP

User Datagram Protocol


viii

DANH MỤC CÁC HÌNH ẢNH
Hình 1.1 Ví dụ một đồ thị G .......................................................................................... 3
Hình 1.2 Mạng trục Internet ........................................................................................... 4
Hình 1.3 Cấu trúc cơ bản của một mạng trục cấp 2....................................................... 5
Hình 2.1 Độ hội tụ trong mơ hình mạng ........................................................................ 11
Hình 2.2 Các thành phần chính trong q trình tối ưu .................................................. 14

Hình 2.3 Ví dụ mơ hình cho bài tốn ước lượng nhu cầu truyền thơng [10] ................ 15
Hình 2.4 Đường trục chính và đường liên kết biên trong cùng một AS ....................... 18
Hình 3.1 Python 2.7.8 Shell ........................................................................................... 25
Hình 3.2 Sơ đồ giải thuật của phương pháp thực hiện .................................................. 26
Hình 3.3 Đồ thị G = G(10,16,Cv) .................................................................................. 27
Hình 3.4 Chọn lọc giải đấu............................................................................................. 31
Hình 3.5 Kết quả của phương pháp thực hiện ............................................................... 38
Hình 3.6 Kết quả của thuật tốn Dijkstra....................................................................... 38
Hình 3.7 Mơ hình 50 node ............................................................................................. 39
Hình 3.8 Kết quả của thuật tốn Dijkstra cho mơ hình 50 node ................................... 40
Hình 3.9 Kết quả của phương pháp thực hiện cho mơ hình 50 node ............................ 40


ix

DANH MỤC CÁC BẢNG
Bảng 2.1 Ví dụ về một ma trận lưu lượng ..................................................................... 16
Bảng 3.1 Các cá thể trong quần thể ban đầu .................................................................. 28
Bảng 3.2 Giá trị fitness của các cá thể trong quần thể ban đầu ..................................... 29
Bảng 3.3 Kết quả tìm đường đi sau 50 lần cập nhật trong mơ hình 50 node ................ 41


1

CHƯƠNG 1. MỞ ĐẦU
1.1 Đặt vấn đề
Do nhu cầu sử dụng Internet rất lớn từ doanh nghiệp và cá nhân, các nhà cung cấp
dịch vụ Internet – ISP) luôn cố gắng đáp ứng nhu cầu lưu lượng truyền và nhận trên
mạng ngày càng tăng. Các gói tin được gửi đi qua mạng theo nhiều đường đi khác nhau
từ node mạng nguồn đến node mạng đích bằng các giao thức định tuyến. Các node

mạng trong định tuyến được hiểu là các thiết bị định tuyến (router). Mục đích của giao
thức định tuyến là tìm ra đường đi tốt nhất cho các gói tin [1]. Đường đi tốt nhất là
đường đi có tổng chi phí nhỏ nhất. Yếu tố chi phí có thể được suy ra từ băng thông,
khoảng cách giữa các node, độ trễ khi truyền các gói tin, độ tải, độ tin cậy hoặc giá trị
lớn nhất của một gói tin (byte) mà một node có thể xử lý được.
Hiệu suất và độ tin cậy của Internet phụ thuộc lớn vào các hoạt động của giao
thức định tuyến [2]. Vấn đề tìm kiếm đường đi tối ưu nhất giữa hai node là một vấn đề
lớn trong phân tích mạng. Khi mạng càng phát triển, ln địi hỏi các nghiên cứu để tối
ưu hoạt động định tuyến hiện có. Trong những năm gần đây đã có nhiều nghiên cứu thể
hiện xu hướng cho bài toán này. Trong các nghiên cứu [2], [3], [4], [5], các tác giả đã
đưa ra một hướng tiếp cận dựa trên giải thuật di truyền. Giải thuật di truyền được xem
là hướng tiếp cận hiệu quả khi cần tìm kiếm các giải pháp tối ưu trong một khơng gian
lớn. Do đó, Luận văn tập trung vào ứng dụng của giải thuật di truyền trong định tuyến
mạng IP.

1.2 Lý do chọn đề tài
Luận văn chọn thực hiện đề tài “Ứng dụng giải thuật di truyền để tối ưu định
tuyến trong mạng IP” do nguyên nhân sau:


2

Trong các giao thức định tuyến trong cùng một AS thì OSPF là giao thức quan
trọng và phổ biến nhất [3]. Định tuyến OSPF được thực hiện bằng kỹ thuật đồ thị với
thuật toán Dijkstra. Thuật toán Dijkstra được đưa ra bởi nhà khoa học máy tính người
Hà Lan – Edsger Dijkstra vào năm 1959. Mơ hình tốn học của mạng truyền dữ liệu
được xem như là một đồ thị G = (N, V, Cv). N là số node mạng, V là các liên kết giữa
các node và Cv là giá trị trọng số (cost) của liên kết trực tiếp giữa 2 node. Ở mỗi node,
giải thuật Dijkstra xác định 3 thông tin là Kn, Dn, Pn.
 Kn: Mang giá trị Boolean, xác định trạng thái được chọn của node n. Ban đầu,

thuật toán khởi tạo tất cả các node chưa được chọn. Nghĩa là, Kn = false, ∀n  N.
 Dn: Giá trị cost của đường đi cho đến thời điểm đang xét. Ban đầu, thuật toán khởi
tạo Dn = ∞, ∀n  N \{node nguồn}, Dnode nguồn = 0 hay Da = 0.
 Pn: Node trước của node n trên đường đi ngắn nhất từ a đến b. Đường đi ngắn
nhất từ a đến b sẽ có dạng (a,…,Pn,n,…,b).
Các bước cụ thể của thuật toán Dijkstra như sau:
Bước 1. Khởi tạo Kn = false ∀n  N, Dn = ∞ ∀n  N \ {a}, Da = 0.
Bước 2. Chọn Dn = min {Dt / t  N, Kt = false}. Nếu Dn = ∞ thì thuật tốn kết
thúc, không tồn tại đường từ a đến b.
Bước 3. Ngược lại thì đánh dấu node n, Kn = true.
Bước 4. Nếu n = b thì kết thúc thuật tốn và Db là độ dài đường đi từ a đến b.
Ngược lại nếu n ≠ b thì chuyển sang Bước 5.
Bước 5. Với mỗi node u kề với node n mà Ku = false, nếu Du > Dn + C(n,u) thì
gán Du = Dn + C(n,u) và quay lại Bước 2.


3

Gọi f(n) là số lần mà giải thuật Dijkstra khảo sát một node trong đồ thị G trong
trường hợp xấu nhất. Khi đó thì f(n) <

(|N|2). Ở Bước 5 là vòng lặp chứa các Bước

từ 2 đến 5. Vòng lặp được thực hiện cho đến khi n = b. Vì ở mỗi vòng lặp sẽ rút ra một
node của N, khởi đầu N có n phần tử nên vịng lặp được xử lý nhiều nhất là n lần. Ở
Bước 2 thì số node tối đa được khảo sát là (n-1), ở Bước 5 thì số node kề tối đa được
khảo sát là (n -1). Do đó, f(n) ≤ 2(n-1)n <
Dijkstra là

(|N|2). Độ phức tạp của thuật tốn


(|N|2). Hình 1.1 là một đồ thị G(8, 10, Cv). Nếu node 1 là node nguồn,

node 3 là node đích thì một đường đi có thể từ A sang B là A -- node1 -- node 2 -- node
3 -- B. Đường đi này sẽ có tổng cost là c1 + c2.

Hình 1.1 Ví dụ một đồ thị G
Đồ thị trong Hình 1.1 được tạo ra bằng một ma trận với 3 véctơ hàng như bên
dưới. Véctơ hàng 1 đại diện cho node nguồn, véctơ hàng 2 đại diện cho node đích,
véctơ hàng 3 đại diện cho giá trị cost cho liên kết giữa 2 node tương ứng.


4

OSPF được cấu hình theo nhiều vùng, mỗi vùng chỉ nên có từ 40 đến 50 node.
Một AS đại diện cho một ISP thường cấu hình rất nhiều vùng kết nối với nhau. Ở Việt
Nam, các ISP lớn như FPT, Viettel, VNPT… được xem là những mạng trục cấp 2 (ISP
Tier-2). Một mạng trục cấp 2 có cấu trúc gồm lớp lõi, lớp phân phối và các điểm đấu
nối. Phía trên mạng trục cấp 2 là những mạng trục cấp 1 (ISP Tier-1). Hình 1.3 bên
dưới là cấu trúc của một mạng trục cấp 2. Mạng trục cấp 1 là xương sống của mạng
Internet, được thiết kế cho việc truyền dữ liệu qua những tuyến đường dài. Các mạng
trục cấp 1 như AT&T, Sprint, GÉANT... Dưới mạng trục cấp 2 là các mạng chi nhánh.
Mạng chi nhánh thuộc về các công ty, bệnh viện, trường đại học hay những khách hàng
cá nhân. Hình 1.2 là một mạng trục Internet.

Hình 1.2 Mạng trục Internet
Một gói tin được gửi bởi một máy tính thường đi qua nhiều AS trước khi đến
đích, làm cho hiệu suất truyền thông phụ thuộc vào lưu lượng trong và giữa các AS.
Bên cạnh đó, theo thống kê năm 2002 trên thế giới có tổng cộng khoảng 12.500 AS với
hơn 100.000 nhóm các địa chỉ IP đang được sử dụng [6]. Trong đó, hệ thống tự trị lớn

nhất là khoảng 100.000 nhóm địa chỉ IP. Do đó, G = (N, V, Cv) thường có số lượng
node lớn.


5

Hình 1.3 Cấu trúc cơ bản của một mạng trục cấp 2
Trong [2], tác giả khẳng định khi một mạng với số node lớn thì thuật tốn
Dijkstra trở nên kém hiệu quả khi có nhiều tính tốn cần phải được thực hiện. Nếu
đường đi ngắn nhất trở nên quá tải hoặc tắc nghẽn xảy ra trên một liên kết thì các gói
tin sẽ bị trì hỗn hoặc khơng thể đến node đích do các node phải xử lý chúng trong
hàng đợi theo QoS.
Do vậy, mục tiêu chính của đề tài là tìm ra tập đường đi tối ưu được cân bằng tải
trong một khơng gian tìm kiếm lớn. Luận văn chọn phương pháp tiếp cận theo giải
thuật di truyền để giải quyết vấn đề đã nêu. Giải thuật di truyền đã được chứng minh là
có thể khám phá khơng gian giải pháp trong nhiều hướng [7], [8], [9].

1.3 Phương pháp luận
Luận văn “Ứng dụng giải thuật di truyền để tối ưu định tuyến trong mạng IP”
xuất phát từ khái niệm Convergence hay sự hội tụ trong định tuyến. Khái niệm hội tụ
mạng được hiểu là từ một node bất kỳ trên mạng có thể liên lạc được với tất cả các
node còn lại theo các đường đi tốt nhất. Khi mạng đạt được hội tụ thì quá trình truyền


6

dữ liệu giữa các node mạng mới được thực hiện thành cơng. Có thể thấy sự hội tụ
mạng nhanh hay chậm sẽ ảnh hưởng lớn đến hiệu suất hoạt động mạng.

1.4 Cấu trúc Luận văn

Luận văn được chia thành 4 Chương như sau:
CHƯƠNG 1. MỞ ĐẦU. Nội dung của Chương gồm 2 phần chính là đặt vấn đề
và đưa ra lý do chọn đề tài.
CHƯƠNG 2. TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU. Nội dung của
Chương là trình bày các cơng trình nghiên cứu liên quan đến cơng việc hiện tại của
Luận văn. Từ những cơng trình nghiên cứu này, Luận văn đưa ra các vấn đề cần tập
trung nghiên cứu và giải quyết. Một phần cơ sở lý thuyết cũng được trình bày để làm rõ
hơn cho vấn đề của Luận văn.
CHƯƠNG 3. ỨNG DỤNG GIẢI THUẬT DI TRUYỀN ĐỂ TÌM CÁC
ĐƯỜNG ĐI TỐT NHẤT TRONG MẠNG IP. Nội dung của Chương là trình bày
một phương pháp thực hiện nhằm khẳng định khả năng của giải thuật di truyền trong
tối ưu định tuyến.
CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA LUẬN VĂN.
Nội dung của Chương là đưa các vấn đề mà Luận văn đã làm được và chưa làm được
cùng hướng phát triển của Luận văn.


7

CHƯƠNG 2. TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU
2.1 Các nghiên cứu liên quan đến công việc của luận văn
Các nghiên cứu được tìm kiếm với các từ khóa như routing, OSPF, routing
optimization, genetic algorithm…
Trong nghiên cứu [2], tác giả đã đã thực hiện một thuật toán di truyền để tìm ra
đường đi tối ưu để gửi lưu lượng truy cập từ nguồn tới đích. Metric tối ưu hóa là tổng
cost của đường đi giữa các node. Tác giả khẳng định giải thuật di truyền hoạt động tốt
kể cả khi fitness phức tạp và thay đổi liên tục theo thời gian. Điểm nổi bật trong nghiên
cứu của tác giả là khi điều kiện dừng đã đạt được, tiến hành lưu trữ các đường đi trong
thời gian là t giây. Trong thời gian này, chuyển gói dữ liệu theo các con đường tìm
kiếm được. Sau đó, tác giả cho làm mới các con đường sau thời gian t giây để phản ánh

tình trạng hiện tại của mạng. Tuy nhiên, tác giả sử dụng cơng thức tính giá trị fitness là:
[(Tổng số hop trên đường đi × Kích thước dân số) – Tổng cost của đường đi]
Với cơng thức này thì khơng phải ánh đúng tính chất định tuyến cho các gói tin
trong mạng. Cách chọn đường đi tối ưu cho gói tin khơng phải phụ thuộc vào số hop
mà gói tin phải đi qua. Nếu số hop nhỏ nhưng băng thông trên đường đi cũng nhỏ thì
q trình truyền gói tin trên đường đi này dễ xảy ra hiện tượng nghẽn. Nếu giá trị
fitness của cá thể được tính theo cơng thức trên thì các cá thể có fitness tốt hơn lại có
khả năng bị loại bỏ cao hơn. Một ví dụ cụ thể để so sánh và phân tích nhược điểm của
công thức này với công thức được sử dụng trong Luận văn được trình bày trong
Chương 3.
Bên cạnh đó, khi thực hiện mơ phỏng thì tác giả sử dụng 6 node mạng và phương
pháp đề xuất của tác giả cũng không đưa ra được bất cứ so sánh nào với thuật toán
Dijkstra như trong phần đặt vấn đề của mình.


8

Khác với nghiên cứu [2], tác giả của nghiên cứu [3] cho rằng mục đích của định
tuyến khơng phải tìm thấy những đường đi tốt nhất mà để tìm đường đi với một giá trị
cost hợp lý trong thời gian cho phép. Trong một mạng lớn định tuyến trở nên phức tạp
vì có nhiều node trung gian mà một gói tin cần phải đi qua trước khi đến đích. Tác giả
cũng khẳng định trong một mạng lớn thì Dijkstra sẽ kém hiệu quả do nhiều tính tốn
phải thực hiện lặp lại. Tác giả đã nghiên cứu vấn đề tối ưu hóa trọng số trong OSPF
bằng giải thuật di truyền.
Tuy nhiên, theo phương pháp trong nghiên cứu [3], tác giả đã khơng làm rõ vai
trị quan trọng của lai ghép và đột biến trong giải thuật di truyền. Quá trình thay thế cho
thấy một áp lực chọn lọc thấp dẫn đến mất thời gian trong quá trình hình thành một
quần thể hội tụ. Giải thuật di truyền có thể đưa ra được các giải pháp hội tụ về tối ưu.
Trong khi tác giả lại khẳng định việc sử dụng giải thuật di truyền để tìm ra được tập
đường đi có giá trị cost hợp lý. Nghĩa là giải thuật di truyền hội tụ về các giải pháp tối

ưu cục bộ. Tác giả cũng không đưa ra so sánh nào với thuật toán Dijkstra để chứng
minh cho phần đặt vấn đề của mình.
[5] là một nghiên cứu gần đây thể hiện được rõ ý tưởng của giải thuật di truyền để
ứng dụng giải thuật này trong định tuyến. Tác giả của [5] cũng khẳng định định tuyến
trong mạng là một thách thức trong phân tích, bởi vì cấu trúc liên kết của mạng khơng
phải là cố định. Trong phương pháp được trình bày trong [5], tác giả đã sử dụng
phương pháp chọn lọc theo bánh xe số. Phương pháp truyền thống này thuộc nhóm
chọc lọc theo tỉ lệ fitness của các cá nhân trong dân số. Bên cạnh đó, tác giả sử dụng
phương pháp lai ghép mới là Partially Matched Crossover (PMX). Điểm nổi bật trong
nghiên cứu [5] là tác giả sử dụng thuật toán ants để đưa ra tập các đường đi trong
mạng. Các đường đi được tạo ra bởi ants như là đầu vào cho thuật toán di truyền. Tầm
quan trọng của việc sử dụng thuật toán ants là để giảm kích thước của bảng định tuyến.
Việc giảm kích thước của bảng định tuyến giúp cho các node mạng hoạt động hiệu quả


9

hơn nhờ giảm bởi được các tính tốn và xử lý. Tuy nhiên, tương tự với nghiên cứu [2]
thì tác giả của nghiên cứu [5] cũng sử dụng cùng một cơng thức tính giá trị fitness cho
các cá thể.
Tác giả của nghiên cứu [10] cũng đã ứng dụng giải thuật di truyền cho việc tối ưu
hóa q trình định tuyến trên mạng IP. Trong nội dung của [10], tác giả trình bày bài
tốn ước lượng nhu cầu truyền thơng dựa trên phương pháp quy hoạch tuyến tính và
phương pháp suy diễn dựa vào mơ hình trọng lực. Từ đó, tác giả đưa ra được nhu cầu
tối ưu hóa định tuyến. Tác giả đưa ra một mơ hình tối ưu hóa dựa trên thông tin về
băng thông thu thập được nhờ giao thức SNMP. Nhưng tác giả không làm rõ lý thuyết
về giải thuật di truyền cũng như các hoạt động quan trọng của nó. Tương tự như nghiên
cứu [10] thì tác giả của nghiên cứu [11] cũng dùng giải thuật di truyền để tìm ra đường
đi tối ưu nhưng với các giá trị cost được giả định là ngẫu nhiên. Tác giả cũng không
làm rõ lý thuyết về giải thuật di truyền trong phương pháp đề xuất của mình.


2.2 Nhiệm vụ của Luận văn
Nhiệm vụ chính của Luận văn là ứng dụng giải thuật di truyền để tối ưu định
tuyến trong mạng IP. Luận văn tập trung giải quyết các vấn đề trong các nghiên cứu [2]
và [5] đã được trình bày trong phần 2.1. Cơng việc chính của Luận văn bao gồm:
 Sử dụng một cơng thức để tính giá trị fitness để phản ánh đúng tính chất chọn
đường đi cho gói tin trong định tuyến. Cơng thức này được suy ra từ tổng trọng số
(tổng cost) của đường đi. Giá trị cost được suy ra từ băng thông. Băng thơng của
liên kết càng lớn thì gói tin càng ưu tiên được truyền đi theo liên kết đó. Cơng
thức này được trình bày trong Chương 3.
 Luận văn đưa ra được một kết quả so sánh với thuật toán Dijkstra về khả năng tìm
ra được tập đường đi tối ưu để gửi các gói tin. Các gói tin được truyền trên tập
đường đi này sẽ được cân bằng tải. Trong khi thuật tốn Dijkstra chỉ tìm ra được


10

một đường đi để truyền các gói tin. Vì thuật tốn Dijkstra sẽ dừng khi node đích
là đạt được.
 Mơ hình được các tác giả đưa ra trong các nghiên cứu [5] có các trọng số được
gán tĩnh. Điều này sẽ khơng phản ánh được tính chất của một mơ hình mạng là sự
mất liên kết giữa các node ln có thể xảy ra. Trong trường hợp này, Luận văn sẽ
áp dụng giải thuật di truyền cho một mơ hình có các trọng số được gán động để
phản ánh được tình trạng hiện tại của mạng. Khi các giá trị trọng số thay đổi thì
giải thuật di truyền ln có thể tìm ra được đường đi tối ưu để truyền các gói tin.

2.3 Tổng quan về định tuyến
2.3.1 Định tuyến và hoạt động định tuyến
Hoạt động định tuyến được thực hiện bởi các node tại tầng Network trong mơ
hình OSI. Khái niệm định tuyến đầy đủ được thể hiện qua 5 vấn đề [1]:

 Định tuyến là việc một node xác định đường đi tối ưu nhất từ một điểm này đến
một điểm khác trên mạng.
 Node cần phải xác định được node kế tiếp mà gói tin cần phải đi qua.
 Node cũng cần biết tất cả đường có thể đến được điểm đích.
 Node tiến hành phân tích IP Header của gói tin và đọc trường Destination IP
Address để xác định đường đi cho gói tin.
 Node gửi gói tin theo đường đi đã chọn.
Nguyên tắc chung của hoạt động định tuyến là phân tích IP Header của các gói
tin. Các gói tin IP khi đi đến node mạng, node mạng sẽ phân tích IP Header để tìm ra
thơng số IP đích. Thơng số này sẽ được tra bảng định tuyến, nếu đích đến của gói tin
thuộc về một entry có trong bảng định tuyến thì gói tin sẽ được chuyển đi tiếp, nếu
khơng thì gói tin sẽ bị loại bỏ. Bảng định tuyến trên node mạng thể hiện ra rằng node


11

mạng biết được hiện nay có những địa chỉ mạng nào đang tồn tại trên mạng mà nó
tham gia và muốn đến được những địa chỉ mạng đó thì phải đi theo những đường nào.
Trong định tuyến cần phải đảm bảo các tính chất chính xác, mạnh mẽ, ổn định,
cơng bằng và tối ưu. Ổn định, cân bằng và tối ưu mới được xem là vấn đề quan trọng.
Trong suốt quá trình hoạt động định tuyến, các thiết bị phần cứng và phần mềm có thể
gặp trục trặc do nhiều nguyên nhân khác nhau. Những trục trặc này có thể dẫn đến sự
thay đổi trong cấu trúc mơ hình mạng. Do đó, phương pháp định tuyến cần phải đảm
bảo hoạt động mạng được ổn định khi gặp sự cố.
Sự ổn định được phải ánh qua một khái niệm gọi là sự hội tụ mạng. Giá trị đặc
trưng của sự hội độ chính là độ hội tụ. Độ hội tụ được định nghĩa là khoảng thời gian
từ khi mạng xảy ra sự cố đến khi mạng hoạt động lại bình thường. Nghĩa là, độ hội tụ
càng nhỏ thì quá trình ổn định hoạt động định tuyến được thực hiện nhanh hơn. Độ hội
tụ của các giao thức định tuyến khác nhau là khác nhau.


Hình 2.1 Độ hội tụ trong mơ hình mạng


12

Quan sát Hình 2.1, node 1 có thể đến mọi vị trí cịn lại trong mạng thơng qua các
node neighbor là node 2, node 4 và node 6. Xét tuyến đường từ A đến B, giả sử đường
đi A -- node 1-- node 2 -- node 3 -- B là đường đi tốt nhất. Các gói tin đi từ A đến B sẽ
được gửi dọc theo đường đi này. Xét trường hợp, liên kết giữa node 2 và node 3 xảy ra
sự cố. Nếu node 1 không biết sự cố kết nối xảy ra giữa node 2 và node 3 thì node 1 vẫn
tiếp tục gửi các gói tin dọc theo đường đi trên. Do đó, dẫn đến các gói tin sẽ bị mất và
không đảm bảo được hiệu suất mạng. Liên kết giữa node 2 và node 3 bị lỗi sẽ dẫn đến
sự thay đổi trong mơ hình mạng. Điều này làm thay đổi cơ sở sự liệu trong bảng định
tuyến của node 1.
Sự hội tụ được phản ánh qua quá trình mà node 1 tìm ra được đường đi thay thế
cho tuyến đường trước đó. Nói cách khác, node 1 phải mất một khoảng thời gian để tìm
ra được đường đi thay thế. Giả sử, đường đi thay thế trong trường hợp này là A -- node
1-- node 4 -- node 5 -- node 3 -- B. Thông tin trong bảng định tuyến cần có một sự thay
đổi, để đến được B thì node kế tiếp mà node 1 cần phải đi qua là node 4 thay vì phải đi
qua node 2 như đường đi trước đó. Sự ổn định của bảng định tuyến là một điều kiện
quan trọng giúp cho hoạt động mạng được hiệu quả.
Giao thức định tuyến được chia thành hai nhóm chính là định tuyến tĩnh và định
tuyến động. Hai nhóm giao thức định tuyến này có sự khác biệt lớn về cách thiết lập,
cấu hình, nguyên tắc hoạt động. Giao thức định tuyến động có thể thay đổi quyết định
định tuyến để phản ánh những thay đổi trong cấu trúc liên kết của mơ hình mạng hoặc
trọng số được cấu hình trên các liên kết tương ứng. Ngược lại, giao thức định tuyến
tĩnh không phản ánh được sự thay đổi của liên kết mạng hoặc không dựa các phép đo
hay ước lượng về lưu lượng trên các liên kết.
Bảng định tuyến được hình thành trên node bởi giao thức định tuyến tĩnh là do
người quản trị phải tự cấu hình. Người quản trị sẽ chỉ cho node là để đến được đích thì



×