Các yếu tố ảnh hưởng đến hiệu năng thuật toán lập lịch trên mạng chuyển mạch chùm quang OBS
Mạng truyền dẫn quang với những kỹ
thuật truyền tin tiên tiến là giải pháp hữu hiệu
nhằm đáp ứng nhu cầu truyền thông tăng cao.
Kiến trúc của mạng gồm các nút biên, nút lõi,
được kết nối với nhau bằng các sợi quang như
Hình 1. Mạng chuyển mạch chùm quang là kỹ
thuật giải quyết những vấn đề phát sinh trong
truyền tải thông tin quang. Áp dụng mô hình
chuyển mạch chùm quang tại các nút chuyển
mạch làm nâng cao hiệu năng truyền tải thông
tin đối với việc xử lý và định hướng thông tin từ
nguồn đến đích một cách hiệu quả.
Hình 1. Kiến trúc mạng chuyển mạch chùm quang [2]
Hơn nữa mạng chuyển mạch chùm
quang không yêu cầu các bộ đệm quang và
chuyển mạch nhanh [4], do đó việc điều khiển
lưu lượng, tránh tranh chấp xảy ra và nâng cao
hiệu quả sử dụng tài nguyên mạng phụ thuộc
vào các kỹ thuật lập lịch chùm tại các nút biên
và nút lõi. Việc điều khiển lưu lượng, tránh
tranh chấp xảy ra và nâng cao hiệu quả sử
dụng mạng có thể được thực hiện nhờ các kỹ
thuật lập lịch chùm.

Trang 1

Trang 2

Trang 3

Trang 4

Trang 5

Trang 6

Trang 7
Tóm tắt nội dung tài liệu: Các yếu tố ảnh hưởng đến hiệu năng thuật toán lập lịch trên mạng chuyển mạch chùm quang OBS
hình chọn lựa các giải thuật tại
mỗi nút khi thực hiện lập lịch.
2. Một số giải thuật lập lịch cơ sở và các yếu
tố ảnh hưởng đến hiệu năng thuật toán lập
lịch trên mạng chuyển mạch chùm quang
Phần này chỉ trình bày một số thuật toán
lập lịch cơ sở của mạng chuyển mạch chùm
quang bao gồm các giải thuật lấp đầy và không
lấp đầy khoảng trống. Chi tiết đầy đủ về các giải
thuật lập lịch trong mạng chuyển mạch chùm
quang có thể xem trong [2], [3].
2.1. Tổng quan về kỹ thuật lập lịch trong mạng
chuyển mạch chùm quang
2.1.1. Lập lịch trên mạng chuyển mạch chùm quang
Khi một gói tin điều khiển tới tại một nút
lõi, một thuật toán lập lịch kênh được gọi để gán
chùm chưa được lập lịch với một kênh dữ liệu ở
cổng ra. Bộ lập lịch kênh nhận được thời gian
đến của chùm và khoảng thời gian chùm chưa
được lập lịch từ gói tin điều khiển. Thuật toán có
thể cần duy trì thời điểm chưa lập lịch khả dụng
gần nhất (LAUT), các khoảng hở (gap) và các
khoảng trống (voids) trên mọi kênh dữ liệu ra.
2.1.2. Phân loại các thuật toán lập lịch
Các thuật toán lập lịch cho kênh dữ liệu có
thể được phân thành 2 loại, trong phạm vi bài báo
sẽ nghiên cứu các thuật toán tương ứng sau: Thuật
toán không lấp đầy khoảng trống (without void
filling) bao gồm thuật toán FFUC và LAUC.
Thuật toán lấp đầy khoảng trống (with
void filling) bao gồm thuật toán lấp đầy cả lỗ
trống FFUC-VF, thuật toán lấp đầy một phần lỗ
trống LAUC-VF và Min-EV, và thuật toán lấp
đầy tối ưu lỗ trống BFUC-VF.
TẠP CHÍ KHOA HỌC VÀ GIÁO DỤC, TRƯỜNG ĐẠI HỌC SƯ PHẠM, ĐHĐN - SỐ 8(03).2013.
3
D0
D1
D2
Thời gian
D3
LAUT3
LAUT2
LAUT1
LAUT0
Burst đến s
L
Hình 4. Lập lịch xét đến có hay không lấp đầy
khoảng trống
- L: độ dài chùm đến chưa được lập lịch.
- Di: kênh dữ liệu ra thứ i.
- LAUTi: thời điểm chưa lập lịch khả
dụng gần nhất của kênh dữ liệu thứ i (i =
0,1, 2...W-1).
- s: thời điểm bắt đầu lập lịch.
- e: thời điểm kết thúc lập lịch.
2.2. Các yếu tố ảnh hưởng đến hiệu năng lập
lịch trên mạng chuyển mạch chùm quang
2.2.1. Độ phức tạp thuật toán
Dựa trên bài báo [5] tác giả đã chỉ ra sự
khác nhau về độ phức tạp của các thuật toán lập
lịch không lấp đầy và lấp đầy khoảng trống. Để
thấy rõ hơn điều này có thể được diễn giải qua
việc cài đặt thuật toán trong ngôn ngữ lập trình
C++, từ đó xác định độ phức tạp của từng thuật
toán làm cơ sở để biết được thuật toán nào hiệu
quả hơn trong việc làm giảm tỷ lệ mất chùm, qua
đó rút ra kết luận độ phức tạp càng lớn thì tỷ lệ
nghịch với tỷ lệ rơi chùm và chỉ ra rằng sự phức
tạp thời gian của các thuật toán không lấp đầy
khoảng trống là ít hơn các thuật toán lấp đầy
khoảng trống, mà cụ thể được xác định như sau:
a) Độ phức tạp thuật toán của các thuật
toán lập lịch không lấp đầy khoảng trống
Thuật toán FFUC (O(logW))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= unschTime_[i] )
{
result.channel() = i;
result.startTime() = schedTime;
break;
}
}
Thuật toán LAUC (O(W))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= unschTime_[i] )
if( ( schedTime - unschTime_[i] ) < diffTime )
{ diffTime = schedTime - unschTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}}
b) Độ phức tạp thuật toán của các thuật
toán lập lịch lấp đầy khoảng trống
Thuật toán FFUC-VF (O(WlogNb))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= startTime_[i] )
if( ( endTime_[i] - schedTime >= schedDur )
{
result.channel() = i;
result.startTime() = schedTime;
}
if( schedTime >= unschTime_[i] )
{
result.channel() = i;
result.startTime() = schedTime;
break;
}
}
Thuật toán LAUC-VF (O(WlogNb))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= startTime_[i] )
if( ( endTime_[i] - schedTime >= schedDur)
if( ( schedTime - startTime_[i] ) < diffTime)
{diffTime = schedTime - startTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}
if( schedTime >= unschTime_[i] )
TẠP CHÍ KHOA HỌC XÃ HỘI, NHÂN VĂN VÀ GIÁO DỤC TẬP 3, SỐ 3 (2013)
4
if( ( schedTime - unschTime_[i] ) < diffTime)
{diffTime = schedTime - unschTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}
}
Thuật toán Min-EV (O(log2Nb))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= startTime_[i] )
if( ( endTime_[i] - schedTime ) >= schedDur )
if( ( schedTime - startTime_[i] ) < diffTime )
{
diffTime = schedTime - startTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}
}
if (result.channel() >= 0)
break;
for( u_int i = ncc_; i < maxChannels_; i++ )
{ if(schedTime >= unschTime_[i] )
if((schedTime - unschTime_[i]) < diffTime)
{diffTime = schedTime - unschTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}}
Thuật toán BFUC-VF (O(log2Nb))
for( u_int i = ncc_; i < maxChannels_; i++ )
{
if( schedTime >= startTime_[i] )
if(( endTime_[i] - schedTime ) >= schedDur )
if(( endTime_[i] - startTime_[i] ) < diffTime )
{ diffTime = endTime_[i] - startTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}
}
if (result.channel() >= 0)
break;
for( u_int i = ncc_; i < maxChannels_; i++ )
{ if(schedTime >= unschTime_[i] )
if((schedTime - unschTime_[i] ) < diffTime )
{ diffTime = schedTime - unschTime_[i];
result.channel() = i;
result.startTime() = schedTime;
}
}
c) So sánh độ phức tạp
Bảng 1. So sánh độ phức tạp giữa các thuật toán lập
lịch [1], [3]
Trong đó, W: Số bước sóng tại mỗi cổng ra.
Nb: Số chùm đã lập lịch trên mỗi kênh
dữ liệu.
2.2.2. Số lượng thông tin trạng thái
Thuật toán lập lịch lấp đầy khoảng trống
sử dụng nhiều thông tin trạng thái được lưu để so
sánh chùm đến. Thuật toán lập lịch không lấp
đầy khoảng trống chỉ lưu giữ thông tin về
Horizon và LAUT, còn thuật toán lập lịch lấp
đầy khoảng trống lưu thời điểm kết thúc và bắt
đầu của chùm đã lập lịch để so sánh chùm mới
đến chưa lập lịch.
Bảng2. So sánh số lượng thông tin trạng thái các
thuật toán lập lịch [1]
Trong đó: Horizoni: Horizon của kênh dữ liệu
thứ i.
Si,j và Ei,j: Thời gian bắt đầu và kết thúc
của số lượng tối đa các chùm dữ liệu j trên kênh i.
2.2.3. Mức độ sử dụng băng thông
TẠP CHÍ KHOA HỌC VÀ GIÁO DỤC, TRƯỜNG ĐẠI HỌC SƯ PHẠM, ĐHĐN - SỐ 8(03).2013.
5
Thuật toán lập lịch được coi là đạt hiệu
quả cao khi tỷ lệ mất chùm rơi ít trong quá trình
lập lịch, điều đó được thể hiện ngược lại qua
việc sử dụng băng thông (tức là băng thông sử
dụng cao thì số lượng gói tin rơi sẽ thấp). Câu
hỏi đặt ra là làm thế nào để nắm được việc sử
dụng băng thông trong các thuật toán lập lịch,
trong phần tiếp theo sẽ nêu ra 2 phương pháp để
thực hiện điều này:
a) Đánh giá mức độ sử dụng băng thông
thông qua mô phỏng
Bảng 3. So sánh mức độ sử dụng băng thông của các
thuật toán lập lịch [1], [3]
b) Đánh giá mức độ sử dụng băng thông
qua việc sử dụng khoảng trống
Hình 5. Sự mất khoảng trống của thuật toán LAUC-
VF và Min-EV [5]
Tính toán yếu tố việc sử dụng khoảng
trống trong thuật toán lập lịch lấp đầy khoảng
trống qua công thức sau:
utilization = ( a × 100 ) / x
với a là chiều dài chùm dữ liệu, x là chiều dài
khoảng trống. Giá trị số thể hiện trong hình 5: t2
- t1 = 12μs, t4 - t3 = 10μs, t6 - t5 = 8μs, và chiều
dài của chùm dữ liệu B0 = 5μs. Khoảng trống sử
dụng trong thuật toán:
• LAUC-VF, sử dụng = (5 * 100) / 12 = 41,67%
• MIN-EV, sử dụng = (5 * 100) / 10 = 50%
• BFUC-VF, sử dụng = (5 * 100) / 8 = 62,5%.
Điều này cho thấy, khoảng trống sử
dụng trong thuật toán BFUC-VF được tốt hơn
so với 2 thuật toán so sánh [5].
2.2.4. Dựa trên các thiết bị hỗ trợ [6], [7], [8]
Các thiết bị hỗ trợ đánh giá hiệu năng
của các thuật toán lập lịch bao gồm bộ chuyển
đổi bước sóng và đường trễ FDL [6], [7], [8].
Trong phạm vi bài báo, sử dụng đường trễ
FDL để đánh giá sự ảnh hưởng đến hiệu năng
các thuật toán lập lịch. Sử dụng thuật toán lập
lịch không lấp đầy khoảng trống và lấp đầy
khoảng trống kết hợp với đường trễ cố định để
mô phỏng so sánh hiệu quả trong chương 3.
3. Mô phỏng và phân tích kết quả
Mô phỏng về các yếu tố ảnh hưởng đến
hiệu năng lên việc lập lịch được thực hiện trên
gói OBS-0.9a [10] của phần mềm mô phỏng NS
[9]. Hình thái của mạng OBS thực hiện mô
phỏng là một mạng hình vòng được tạo thành từ
21 nút lõi (Ci, i=0..20), mỗi nút lõi kết nối với
hai nút biên (Ei, i=1..42) như mô tả ở hình 6. Các
luồng dữ liệu được tạo ra liên tục (theo phân bố
poisson) giữa các cặp nút Ei và Ej (i,j=1..42) với
mật độ dày đặc. Các chùm do đó được sinh ra tại
các thời điểm thay đổi và có kích thước thay đổi.
Hình 6. Hình thái mạng OBS mô phỏng tạo thành từ
21 nút lõi, 42 nút biên.
Mô phỏng được thực hiện trong các
khoảng thời gian khác nhau (từ 0.05 đến 0.09
giây), kết quả mô phỏng (Hình 7) chỉ ra rằng các
giải thuật lập lịch LAUC hiệu quả hơn FFUC vì
tối ưu khoảng cách giữa các burst. So sánh mức
độ sử dụng băng thông của thuật toán lập lịch lấp
đầy và không lấp đầy khoảng trống qua việc
phân tích số lượng gói tin rơi trong các trường
hợp mô phỏng sau:
3.1. So sánh mức độ sử dụng băng thông thuật
toán lập lịch
a) So sánh 2 thuật toán FFUC và LAUC
Kết quả mô phỏng hình 7 chỉ ra rằng các
TẠP CHÍ KHOA HỌC XÃ HỘI, NHÂN VĂN VÀ GIÁO DỤC TẬP 3, SỐ 3 (2013)
6
thuật toán lập lịch LAUC hiệu quả hơn FFUC,
thể hiện ở tỷ lệ mất chùm dữ liệu ít hơn.
Hình 7. Biểu đồ so sánh 2 thuật toán lập lịch FFUC
và LAUC
b) So sánh 2 nhóm thuật toán lập lịch
không lấp đầy khoảng trống và có lấp đầy
khoảng trống
Hình 8. Biểu đồ so sánh 2 nhóm thuật toán lập lịch
có và không lấp đầy khoảng trống
Hình 8 cho thấy rằng nhóm thuật toán
có lấp đầy khoảng trống (LAUC-VF, MIN-EV
và BFUC-VF) là hiệu quả hơn rõ rệt so với
nhóm thuật toán không lấp đầy khoảng trống
(đại diện là thuật toán LAUC) thể hiện ở tỷ lệ
mất chùm thấp hơn. Nguyên nhân là do nhóm
thuật toán có lấp đầy khoảng trống đã tận dụng
được băng thông nhàn rỗi trong các khoảng
trống được sinh ra khi lập lịch, trong khi các
thuật toán lập lịch không lấp đầy khoảng trống
lại không xét đến.
c) So sánh các thuật toán lập lịch có lấp
đầy khoảng trống với các tiêu chí tối ưu khác
nhau
Hình 9. Biểu đồ so sánh 4 thuật toán lập lịch lấp đầy
khoảng trống
Kết quả mô phỏng ở hình 9 cho thấy tỷ
lệ mất chùm của các thuật toán LAUC-VF, Min-
EV và BFUC-VF chênh nhau không đáng kể.
Nếu xét tỷ lệ mất chùm trên toàn mạng (trường
hợp các nút mạng sử dụng cùng một thuật toán
lập lịch), thuật toán BFUC-VF thể hiện hiệu quả
cao nhất.
3.2. So sánh hiệu quả của việc sử dụng đường
trễ FDL
Việc sử dụng thuật toán kết hợp đường
trễ FDL làm cho số lượng chùm giảm đi đáng
kể, thể hiện trong Hình 10.
Hình 10. Hiệu quả thuật toán kết hợp đường trễ FDL
Kết quả mô phỏng áp dụng với tổng tỷ lệ
mất chùm trên các thuật toán lập lịch FFUC,
LAUC, FFUC-VF, LAUC-VF, MIN-EV và
BFUC-VF chỉ ra rằng khi có sử dụng đường trễ
FDL (với 1 FDL), số chùm rơi trên toàn mạng
giảm đáng kể (tỉ lệ 10,70 %) so với khi không sử
dụng đường trễ FDL (0 FDL). Khi số đường trễ
tăng thêm (3 FDL), số chùm rơi càng giảm nhiều
hơn (tỉ lệ 21,97 %) và (4 FDL) là (tỉ lệ 26,19 %).
a) Nhóm thuật toán không lấp đầy
khoảng trống
Kết quả mô phỏng (Hình 11) chỉ ra rằng
thuật toán lập lịch không lấp đầy khoảng trống
với đường trễ cố định LAUC-FDL hay FFUC-
FDL là hiệu quả hơn nhiều so với thuật toán
LAUC và FFUC.
Hình 11. Biểu đồ so sánh 4 thuật toán LAUC và
FFUC có và không sử dụng FDL
b) Nhóm thuật toán có lấp đầy khoảng
trống
TẠP CHÍ KHOA HỌC VÀ GIÁO DỤC, TRƯỜNG ĐẠI HỌC SƯ PHẠM, ĐHĐN - SỐ 8(03).2013.
7
Hình 12. Biểu đồ so sánh 2 thuật toán lấp đầy
khoảng trống
Tương tự, thuật toán lập lịch có lấp đầy
khoảng trống với đường trễ cố định LAUC-VF-
FDL cũng hiệu quả hơn so với thuật toán LAUC-
VF, như mô tả trong Hình 12.
4. Kết luận
Việc nghiên cứu về mạng chuyển mạch
chùm quang OBS và những thuật toán lập lịch chùm
bước đầu đã thu được những kết quả quan trọng.
Trong bài báo này, tôi đã tập trung trình bày về các
yếu tố ảnh hưởng đến hiệu năng thuật toán lập lịch
dựa trên độ phức tạp, số lượng thông tin trạng thái
và việc sử dụng băng thông. Qua phân tích các yếu
tố và cài đặt thuật toán đó, đã thực hiện mô phỏng
thành công trên một mô hình mạng để thấy được tỷ
lệ mất chùm, đánh giá mức độ sử dụng băng thông
của giải thuật lập lịch. Qua kết quả phân tích, cho
thấy hiệu năng của các thuật toán lập lịch phụ thuộc
trực tiếp đến các yếu tố được đề xuất, với yếu tố độ
phức tạp của thuật toán lập lịch và số lượng thông
tin trạng thái khi tăng thì tương ứng hiệu năng của
thuật toán được sử dụng tốt, làm giảm tỷ lệ mất
chùm khi gửi gói tin. Ngược lại, với mức độ sử
dụng băng thông càng cao thì tỷ lệ mất chùm càng
lớn làm giảm hiệu năng sử dụng của các thuật toán
lập lịch. Ngoài ra, qua mô phỏng các thuật toán kết
hợp FDL còn nêu lên được vai trò đường dây trễ tới
các thuật toán. Từ đó, bài báo giúp nêu bật được
mỗi ưu, nhược điểm các thuật toán lập lịch nhờ chỉ
định được các yếu tố ảnh hưởng đến hiệu năng của
các thuật toán lập lịch trong mạng chuyển mạch
chùm quang OBS.
TÀI LIỆU THAM KHẢO
[1] Adgaonkar R.P., Sharma S.N (2011), A review of burst scheduling algorithm in WDM Optical
Burst Switching Network, Journal of Computer Science Issues, Vol. 8, 6(3).
[2] Jason P. Jue, Vinod M., Vokkarane (2005), Optical Burst Switched Networks, Springer Science
Business Media, Inc.
[3] Lamba Rohit., Kumar Garg Dr.Amit (2012), Performance Analysis of Scheduling Algorithms In
Optical Burst Switching Networks, International Journal of Advanced Research in Computer
Science and Software Engineering, 2(1).
[4] Mukherjee Biswanath (2006), Optical WDM Networks, Springer Science + Business Media, Inc.
[5] Nandi M., Turuk A. K., Puthal D. K., Dutta S.(2009), Best Fit Void Filling Algorithm in Optical
Burst Switching Networks, in Proceeding of IEEE ICETET, 609 – 614.
[6] Sam S.M., Fisal N., Ariffin S.H.S.(2007), “Quality-of-Service Provisioning using Hierarchical
Scheduling in Optical Burst Switched Network”, Networking and Services, 2007.
[7] Vo Viet Minh Nhat, Nguyen Hong Quoc (2011), “The role of fdls in scheduling in obs
networks”, Journal of science, Hue University, 69(6).
[8] Vokkarane V.M., Thodime G.P.V., Challagulla V.U.B., Jue J.P. (2003), “Channel Scheduling
Algorithms using Burst Segmentation and FDLs for Optical Burst-Switched Networks”, in
Proceedings IEEE International Conference on Communications (ICC).
[9] Network Simultor,
[10] Optical Internet Research Center,
File đính kèm:
cac_yeu_to_anh_huong_den_hieu_nang_thuat_toan_lap_lich_tren.pdf

