Mạng cáp quang Toán tin; Thuật di truyền; Định tuyến multicast; Mạng truyền thông Content: Chương I: MẠNG CÁP QUANG – NỀN TẢNG CHO MẠNG THẾ HỆ MỚI I.1 Công nghệ WDM WDM là phươ
Trang 1Đi ̣nh tuyến Multicast trong ma ̣ng cáp quang
Bùi Thị Ngọc Tú
Đại học khoa học tự nhiên; Khoa Toán-Cơ-Tin
Chuyên ngành: Đảm bảo toán cho máy tính và HTTT
Mã số: 60 46 35 Người hướng dẫn: TS Lê Tro ̣ng Vĩnh
Năm bảo vệ: 2011
Abstract Giới thiệu về mạng cáp quang, các vấn đề chính trong mạng cáp quang:
Công nghệ WDM; Kiến trúc mạng cáp quang ; Các vấn đề trong mạng cáp quang Trình bày chi tiết về bài toán định tuyến multicast trong mạng quang: Các khái niệm và định nghĩa; Bài toán; Các cách tiếp cận giải bài toán Áp dụng giải thuật
GA cho bài toán MRWA: Giải thuật di truyền; Giải thuật di truyền giải bài toán; Các kết quả thực nghiệm và thảo luận
Keywords Mạng cáp quang Toán tin; Thuật di truyền; Định tuyến multicast; Mạng
truyền thông
Content:
Chương I: MẠNG CÁP QUANG – NỀN TẢNG CHO MẠNG THẾ HỆ MỚI
I.1 Công nghệ WDM
WDM là phương thức ghép kênh quang theo bước sóng Thông thường trong tuyến thông tin quang điểm nối điểm, mỗi một sợi quang cho một tia laser với một bước sóng ánh sáng truyền qua, tại đầu thu, bộ tách sóng quang tương ứng sẽ nhận tín hiệu từ sợi này Mỗi một sóng laser mang một số tín hiệu điện với một phổ nhất định Từ những năm 1980, công nghệ sợi quang
có nhiều tiến bộ nên phương thức ghép kênh quang theo bước sóng được ứng dụng trong mạng viễn thông đường trục và quốc tế Ở đây, WDM cho phép ta tăng dung lượng kênh mà không cần tăng tốc độ bit của đường truyền và cũng không dùng thêm sợi dẫn quang Nó cho phép khai thác một cách đơn giản và
kinh tế lượng thông tin vào một sợi quang đơn mode trên cự ly dài và tăng độ
Trang 2mềm dẻo của cấu trúc phân phối Những đường truyền dẫn thử nghiệm đã đạt được tốc độ lưu lượng 160Gbit/s phân phối trên 8 kênh ghép theo bước sóng Hơn nữa, ghép theo WDM không chỉ giảm bớt ảnh hưởng của tán sắc mà còn chống được tổn hao do phân cực Các hệ thống thông tin quang hiện đại có sử dụng bộ khuếch đại quang để ghép nhiều kênh theo WDM Nếu với lưu lượng
là 2,5Gbit/s, ghép theo WDM từ 8 đến 16 luồng thì ta thực hiện được một đường thông tin quang với lưu lượng là 20Gbit/s đến 40Gbit/s trên một sợi đơn mode mà vẫn dùng lại được các thiết bị ghép kênh và phân kênh hiện có Nói một cách khác, WDM cho phép tăng tích số lưu lượng nhân với cự ly trên một sợi quang
I.2 Kiến trúc mạng quang
Một mạng cáp quang bao gồm các nút OCXs được kết nối với nhau bởi
những liên kết điểm tới điểm theo một topo bất kỳ như hình 1.2 Mỗi nút cuối (liên kết với người dùng) kết nối tới một nút định tuyến thông qua một liên kết quang Tập hợp những nút cuối gắn với một nút định tuyến tạo nên một
nút mạng Mỗi nút có các đầu truyền và các đầu nhận tương ứng để gửi dữ
liệu vào trong mạng và nhận dữ liệu từ mạng về
OCX
OCX
OCX
OCX
OCX
OCX
D
A
E
F
1
1
2
2
2
1
1
Hình 1.2: Kiến trúc mạng cáp quang Các thông điệp được gửi từ nút này đến nút khác thông qua một lightpath Một lightpath là một đường dẫn quang được thiết lập giữa hai nút và ấn định cho các bước sóng trên toàn bộ đường dẫn quang đó Trong trường hợp mạng không có sự biến đổi các bước sóng (wavelength conversion) thì các bước sóng trên toàn bộ các liên kết của đường dẫn được yêu cầu là giống nhau Điều này được biết đến như là ràng buộc về sự liên tục bước sóng
Trang 3(wavelength continuty constraint) Một điều hiển nhiên là hai lightpaths không được gán cùng một bước sóng trên cùng một liên kết (link)
I.3 Các vấn đề trong mạng cáp quang
I.3.1 Các kiểu truyền thông trên mạng
Unicast: Truyền thông loại này cho phép các gói tin được gửi từ một nút nguồn đến một nút đích
Broadcast: Các gói tin được gửi từ một nút (nút nguồn) đến tất cả các nút còn lại trong mạng
Multicast: Các gói được gửi từ một nút nguồn s đến một nhóm các nút đích D Rõ ràng, định tuyến multicast là trường hợp tổng quát nhất: |D| =
1 sẽ tương ứng với unicast, |D| = n-1 (n là số nút mạng) tương ứng với
broadcast
I.3.2 Các yêu cầu truyền thông trên mạng
Yêu cầu truyền thông trên mạng có hai dạng:
Dạng tĩnh (static): Còn gọi là off-line, trong đó một tập các yêu cầu kết nối
đã được biết trước và mục tiêu là thiết lập các kết nối để thỏa mãn yêu cầu này với chi phí thấp nhất Vì bài toán là off-line, nên các thuật toán cho dạng này không quan tâm nhiều về thời gian thực hiện mà quan tâm nhiều đến độ chính xác
Dạng động (dynamic): Còn gọi là on-line, trong đó các yêu cầu kết nối đến
và rời khỏi mạng một cách ngẫu nhiên nào đó Do các yêu cầu là on-line, nên các thuật toán cho dạng này khác với dạng tĩnh là yêu cầu về thời gian thực hiện nhanh
I.3.3 Định tuyến và gán bước sóng
Thuật toán để chọn tuyến (path hoặc tree) và gán bước sóng (wavelength) cho
việc thiết lập các lightpath được gọi là thuật toán định tuyến và ấn định bước
sóng RWA (MRWA) Bài toán RWA (MRWA) là bài toán NP đầy đủ nên
thường được chia thành hai bài toán nhỏ và giải độc lập: định tuyến và gán bước sóng
Trang 4a Định tuyến
Phương pháp định tuyến cố định ( fixed routing)
Tìm một cây cố đi ̣nh, khi có yêu cầu kết nối ta dùng cây đó để setup
Đi ̣nh tuyến luân phiên cố đi ̣nh (fixed alternate routing)
Chúng ta không sử dụng một đường (một cây) cố định như mà dùng nhiều đường (cây) cố định để thiết lập lightpath cho chúng Có nghĩa là khi yêu cầu kết nối đến, chúng ta có thể tìm các bước sóng trên tất cả các đường (cây) này
để thiết lập lightpath (light-tree) Thông thường k đường đi ngắn nhất giữa nút nguồn và đích (tính offline theo thuật toán kshostest paths) được dùng làm
các đường cố định đó
Phương pháp định tuyến thích nghi (adaptive routing)
Trong định tuyến thích nghi, với mỗi cặp nút nguồn s và nút đích d, không
một đường (cây) cố định nào được chọn trước cho nó Khi yêu cầu kết nối
đến, thuật toán sẽ tìm đường đi ngắn nhất giữa s và d (tập D)có bước sóng rỗi
dựa trên trạng thái mạng để thiết lập lightpath (light-tree) cho nó Khi không tìm được đường đi như vậy, kết nối sẽ bị block
b Gán bước sóng
Gán bước sóng ngẫu nhiên (Random)
Gán bước sóng dựa trên bước sóng sử dụng ít nhất (LU Least Used)
Gán bước sóng theo số bước sóng sử dụng nhiều nhất ( MU Most Used)
Gán bước sóng theo thứ tự cố định( Fixed oder)
I.3.4 Sự cần thiết của các thiết bị chuyển đổi bước sóng
Sự chuyển đổi bước sóng là khả năng chuyền tín hiệu từ bước sóng này (w 1)
thành bước sóng khác (w 2) Bộ chuyển đổi rất có ích trong việc giảm xác suất tắc nghẽn mạng Các bộ chuyển đổi bước sóng giúp loại trừ sự bắt buộc tính liên tục về bước sóng Nếu không có các thiết bị chuyển đổi bước sóng thì phải có sự ràng buộc cần thiết về bước sóng Sự ràng buộc này làm giảm hiệu quả sử dụng các tài nguyên mạng
Các trường hợp chuyển đổi bước sóng
Trang 5- Chuyển đổi hoàn toàn
- Chuyển đổi giới hạn
- Chuyển đổi cố định
Chương II: ĐỊNH TUYẾN MULTICAST TRONG MẠNG CÁP QUANG
II.1 Các khái niệm và định nghĩa
- MC node (Multicast Capble): Có khả năng chia ánh sáng , chuyển 1 tín
hiê ̣u từ cổng đến thành nhiều tín hiê ̣u ở cổng ra trên cùng mô ̣t bước sóng
- MI node (Multicast Incapble): Chuyển 1 tín hiệu từ cổng đến đến đúng 1 cổng ra Trong đó, nút ToC chỉ có khả năng trích (lấy để sử dụng) hoặc chuyển tiếp tín hiệu đến một cổng ra Nút TaC có cả hai khả năng này
- VS node (Virtual Source): Là nút MC trang bị thêm khả năng chuyển đổi
bước sóng
=> Mạng có một số MC node và các MI node còn lại gọi là mạng có khả năng phân chia bước sóng thưa
II.2 Bài toán
Với các khái niệm đã trình bày như trên, bài toán định tuyến và gán bước sóng đáp ứng yêu cầu multicast có thể phát biểu như sau:
Topo mạng: Một mạng cáp quang có thê biểu diễn như một đồ thị G(V, E),
trong đó V là số nút trong mạng và E là tập các kết nối, mạng chỉ có một số
nút là MC, VS tại các nút chiến lược, các nút còn lại là MI với khả năng TaC
Kiểu truyền thông: Mutlicast, nút nguồn s cần gửi các gói tin đến một tập các
D các nút đích (D là tập con của V)
Yêu cầu truyền thông: tuân theo quá trình Poisson Thời gian nắm giữ đường
truyền theo phân bố mũ
Mục tiêu: Thiết lập các light-tree (hoặc light-forest) cho các yêu cầu kết nối
multicast này xác suất tắc nghẽn là ít nhất
Trang 6Gọi N là số các yêu cầu kết nối đến trong khoảng thời gian T nào đó, với mỗi một yêu cầu kết nối i, gọi d i là tổng số các nút đích Gọi r i là số các nút đích
không được phục vụ trong yêu cầu kết nối i Khi đó, xác suất tắc nghẽn p của
mạng được tính theo công thức sau:
) 1 ( 1
1
N
i i
N
i i
d
r p
II.3 Các cách tiếp cận giải bài toán
II.3.1 Thuật toán Member-Only
Các ký hiệu và định nghĩa:
F(s, D): là tập các cây multicast (rừng –forest) cho một yêu cầu kết nối
multicast với nút nguồn s và tập các nút đích D
V: Là tập các nút được dùng cho việc mở rộng (phát triển) cây
V’: Là tập các nút không được dùng cho việc mở rộng cây
Z: Tập các nút nguồn ảo VS
UV: Tập các nút đích chưa được thêm vào cây F(s, D)
T: Tập các nút trong cây multicast
P (x, y): là đường đi ngắn nhất giữa nút x và y
d(x, y): là giá của đường đi P (x, y) được tính dựa trên số hop
Nút VS có độ ưu tiên cao nhất, sau là các nút MC và thấp nhất là các nút MI thuật toán Member-Only có thể tóm tắt như sau:
1: F (s, D) = ø, UV = D; UV được sắp xếp theo thứ tự không giảm theo khoảng
cách của chúng đến nguồn s
2: V = s, V’ = ø, Z = ø, T = ø
3: Xét các nút đích trong UV lần lượt Giả sử rằng, chúng ta đang xét nút u
4: Tìm P (v, u): v ∈V, x ∈ P (v, u): x V’
5: If tồn tại một tập các nút v: lựa chọn nút v với độ ưu tiên cao nhất
6: d uv = d(u, v); d us = d (u, s)
Trang 77: IF ( P (v, u))
{
8: if (dus ≥d uv )
9: Thêm mọi link e ∈ P (v, u) tới T
10: else {
11: Tìm P (w, u):w ∈Z;
12: duw = d (u, w)
13: if (dus ≥d uw )
14: Thêm mọi link e ∈ P (w, u) to T;
15: else
16: Thêm mọi link e ∈ P (s, u) to T; }
17: if (v = MI node) chuy ển v từ V sang V’
18: for x ∈ P (v, u) or P(s, u) or P (w, u):
19: if (x ≠ v (or x ≠ s or x ≠ w) && x ≠ u){
20: if (x = MI node) chuyển x tới V’;
21: if (x = MC node) chuyển x tới V;
22: if (x = VS node) chuyển x tới Z; }
23: Chuyển u từ UV sang V
24: if (UV = ø)
26: STOP
27: else
28: Go to (3) }
29:ELSE (! P (v, u))
30: Chuyển các nhánh từ T tới F (s, D) và chuyển về bước (2)
Mặc dù thuật toán này có thể tìm được light-forest trong phần lớn các trường hợp, nhưng nó vẫn có lỗi trong một số trường hợp được mô tả dưới đây
II.3.2 Những thiếu sót của thuật toán Member-Only
Để dễ dàng nhận ra các thiếu sót của thuật toán Member-Only, chúng tôi sẽ trình bày thông qua các ví dụ dưới đây
Trang 8 Ví dụ 1
Xét mạng đơn giản như trong hình 2.1, nhãn của các cạnh là giá của chúng
Giả sử rằng, chúng ta có một yêu cầu multicast (s, {d1, d2, d3})
- Theo thuật toán: light-forest ({s-MI-d1-d2-d3}) với giá 2+2+4+5 = 13
- Nhìn thấy: light-forest {s-MI-d1-d3-d2}) với giá ít hơn 2+2+3+5 =12
- Thực tế: Sau khi thêm một nút từ UV tới cây T, thứ tự các nút còn lại trong UV có thể thay đổi theo nghĩa khoảng cách giữa chúng đến cây hiện
hành
Hình 2.1: Mạng đơn giản 1
Ví dụ 2
Xét mạng đơn giản được mô tả trong hình 2.2 và một yêu cầu multicast (s, {d1, d2}), tìm thấy light-forest bởi thuật toán Member-Only sẽ là
({s-VS-MI-d1-d2}) với giá 3 +2+1+6 =12 Tuy nhiên, một light-forest khác ({s-VS-MI-d 1 }, {VS-MI-d2}) với giá 3+2+1+ 3+2 = 11 cũng đáp ứng yêu cầu kết nối này Lý
do của sự thiếu sót này đó là thuật toán Member-Only đã sử dụng dus tại bước
6 như là một ngưỡng (threshold) cho việc tạo một nhánh mới hoặc một cây mới và ngưỡng này là cố định
Hình 2.2: Mạng đơn giản.2 Thuật toán cải tiến:
- Nhược điểm thứ nhất tại bước 3: Xét u ∈UV gần nhất với V
- Nhược điểm thứ nhất tại bước 6: d uv = d(u, v); d us = min {d (u, x)} : x ∈Z;
Nhược điểm thứ ba là cách tiếp cận dựa trên nút nguồn (source-based), như được chỉ ra trong ví dụ sau:
4
5
4
3
3
2
2
s
MI
d 3
d 2
d 1
3
1
6
7
3
2
s
MI
vs
d 1
d 2
Trang 9 Ví dụ 3
Xét mạng đơn giản trong hình 2.3 và một yêu cầu multicast (s, {d1, d2})
Hình 2.3: Mạng đơn giản 3 Dựa theo chiến lược Source-based đó là xây dựng light-forest dựa trên các
đường đường đi ngắn nhất, chúng ta sẽ tìm được light-forest ({s-MI-d1
-MC-d2}) đáp ứng yêu cầu multicast với giá 1+2+1+3 = 7, tròn khi một light-forest
khác ({s-MI-MC-d2}, {MC-d1}) có giá ít hơn là 1+1+3 + 1 = 6 nên được sử dụng
Để vượt qua nhược điểm này, chúng tôi sẽ trình bày thuật toán di truyền GA
Chương III: ÁP DỤNG GIẢI THUẬT DI TRUYỀN CHO ĐỊNH TUYẾN MULTICAST
III.1 Giải thuật di truyền
III.1.2 Ý tưởng của thuật toán di truyền
Thuật toán di truyền được xây dựng dựa trên quy luật tiến hóa sinh học hay phát triển tự nhiên của một quần thể sống Các cá thể trải qua một quá trình phát triển và sinh sản để tạo ra những cá thể mới cho thế hệ tiếp theo Trong quá trình tăng trưởng và phát triển những cá thể xấu (theo một tiêu chuẩn nào
đó hay còn gọi là độ thích nghi với môi trường) sẽ bị đào thải, ngược lại, những cá thể tốt sẽ được giữ lại (đây chính là quá trình chọn lọc) và được lai ghép (quá trình lai ghép) để tạo ra những cá thể mới cho thế hệ sau Những cá thể mới được sinh ra mang những tính trạng của cá thể cha-mẹ (còn gọi là hiện tượng di truyền)
3
1
1
1 2
s
MI
d 2
Trang 10III.1.3 Các vấn đề cơ bản về thuật toán di truyền
- Sự diểu diễn của cá thể (encoding mechanism)
- Đánh giá độ thích nghi (fitness function)
Hàm Fitness là hàm dùng để đánh giá độ tốt của một lời giải hoặc cá thể Hàm Fitness nhận vào một tham số là xâu mã hóa nhị phân của một cá thể và trả ra một số thực Tùy theo giá trị của số thực này mà ta biết độ tốt của cá thể đó
Lai ghép (crossover operator)
+ Lai ghép đơn điểm (single-point crossover)
+ Lai ghép đa điểm (multi-point crossover)
+ Quá trình lai ghép:
Phép lai xảy ra với xác suất là p c (đây là tham số do người dùng tự định nghĩa)
Xác suất p c này cho ta số cá thể tham gia lai ghép là p c * pop_size (pop_size là
kích thước quần thể)
- Đột biến (mutation operator)
Là quá trình tạo ra cá thể mới từ một cá thể ban đầu bằng cách thay đổi một
số gen của nó Nếu sử dụng biểu diễn nhị phân thì phép đột biết thường sử dụng là bit flipping, nghĩa là nếu gen là 1 thì được đổi thành 0 và ngược lại
- Chọn lọc và thay thế (slection and replacement)
Chọn lọc và thay thế (cũng được biết như là reproduction) là quá trình chọn những cá thể từ quần thể hiện tại để tạo ra thế hệ sau của nó Trong quá trình này diễn ra sự đào thải những cá thể xấu chỉ giữ lại những cá thể tốt
- Điều kiện dừng (stopping conditions)
Thuật toán di truyền là một quá trình ngẫu nhiên, nên ta phải đặt điều kiện dừng Nó sẽ dừng sau một số hữu hạn các thế hệ hoặc tối ưu toàn cục đã đạt được, hoặc giá trị trung bình của độ thích nghi trên tất cả các cá thể của quần thể không thay đổi
Tóm lại, mã giả của một thuật toán di truyền được viết như sau:
Bắt đầu t=0;
Khởi tạo p(t);