Professional Documents
Culture Documents
Nhu cầu con người ngày càng lớn, ngày càng có nhiều dịch vụ mới ra đời. Yêu cầu
băng thông của các dịch vụ này rất lớn. Mạng WDM trở thành sự lựa chọn thiết thực cho
nhiều mạng đường trục. Bên cạnh băng thông cực lớn của sợi quang thì hạn chế về tốc độ
chuyển mạch của các thiết bị chuyển đổi quang điện và chuyển mạch bán dẫn đã làm hạn
chế khả năng của mạng. Do đó, yêu cầu xây dựng một mạng khắc phục những nhược
điểm hiện tại trở thành một nhiệm vụ cấp bách. Và mạng chuyển mạch khối quang đã và
đang được nghiên cứu để đạt được mục đích này.
Luận văn “Mô phỏng ảnh hưởng của quá trình đóng khối trong mạng OBS” đi vào
tìm hiểu về mạng OBS và mô phỏng một phần hoạt động của mạng, đó là quá trình đóng
khối.
Luận văn là kết quả của một quá trình học tập tại Học Viện Công Nghệ Bưu Chính
Viễn Thông – Cơ sở tại Thành phố Hồ Chí Minh.
- Cha mẹ em, những người đã nuôi dạy em đến lúc trưởng thành và cho em
được đi học để có ngày hôm nay.
- Các thầy cô trong Học Viện và đặc biệt là các thầy cô trong Khoa Viễn
Thông II đã trang bị cho em nhiều kiến thức bổ ích.
- Các cán bộ công nhân viên của Học Viện đã tạo điều kiện cho em học tập
- Các thầy trong bộ môn Thông Tin Quang đã đóng góp nhiều ý kiến quý báu
trong quá trình thực hiện luận văn.
- Thầy Th.S Nguyễn Huỳnh Minh Tâm, người đã tận tình giúp đỡ và định
hướng cho em trong lúc thực hiện luận văn.
- Ông TS Jairo Chapela Martinez và ông Iban Cereijo Grana, trường Đại Học
Vigo – Tây Ban Nha đã gợi ý, cung cấp tài liệu và hướng dẫn em cách thức
xây dựng chương trình và kịch bản mô phỏng cũng như cung cấp một số file
làm nền tảng cho chương trình.
- Các bạn lớp D03VTA1 đã giúp đỡ và động viên em trong lúc học tập và làm
luận văn.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -1- SVTH: Đoàn Khánh Tân Thanh
Mục lục
MỤC LỤC
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -2- SVTH: Đoàn Khánh Tân Thanh
Mục lục
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -3- SVTH: Đoàn Khánh Tân Thanh
Danh mục hình
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -4- SVTH: Đoàn Khánh Tân Thanh
Thuật ngữ viết tắt
A
ATM : Asynchronous Transfer Mode
B
BA : Burst Assembler
BHP : Burst Header Packet
F
FFUC : First Fit Unscheduled Channel
FFUC-VF : First Fit Unscheduled Channel with Void Filling
FDL : Fiber Delay Line
I
IP : Internet Protocol
J
JET : Just Enough Time
JIT : Just In Time
L
LOBS : Labled Optical Burst Switching
LAUT : Lastest Available Unscheduled Time
LAUC : Lastest Available Unscheduled Channel
LAUC-VF : Lastest Available Unscheduled Channel with Void Filling
M
MAC : Media Access Control
MPLS : Multi-Protocol Lable Switching
N
NSFNET : National Science Foundation Network
O
OCS : Optical Circuit Switching
OPS : Optical Packet Switching
OBS : Optical Burst Switching
OXC : Optical Cross Connect
Q
QoS : Quality of Service
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -5- SVTH: Đoàn Khánh Tân Thanh
Thuật ngữ viết tắt
R
RM : Routing Module
RTT : Round Trip Time
S
SPF : Shortest Path First
SCU : Switch Control Unit
S : Scheduler
SOA : Semiconductor Optical Amplifier
T
TAG : Tell-and-Go
TAW : Tell-and-Wait
V
VoD : Video on Demand
W
WDM : Wavelength Division Multiplexing
WADM : Wavelength Add Drop Multiplexor
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -6- SVTH: Đoàn Khánh Tân Thanh
Chương I – Khái quát về sự phát triển của mạng quang
Chương I
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -7- SVTH: Đoàn Khánh Tân Thanh
Chương I – Khái quát về sự phát triển của mạng quang
Để có thể xây dựng một mạng mắc lưới bao gồm nhiều liên kết đa bước sóng, chúng
ta cần có những thiết bị kết nối quang thích hợp. Kiến trúc mạng quang thế hệ thứ ba dựa
trên việc kết nối các thiết bị toàn quang. Những thiết bị này thường được phân ra các loại
như sau passive star, passive router và active switch. Tín hiệu được chèn vào ở một bước
sóng tại ngõ vào sau đó công suất tín hiệu này sẽ được chia đều cho tất cả các ngõ ra (sử
dụng cùng bước sóng). Một passive router có thể định tuyến một cách riêng rẻ một trong
số nhiều bước sóng ở sợi quang ngõ vào đến một bước sóng giống như vậy ở ngõ ra.
Active switch cho phép sử dụng lại bước sóng và có thể hỗ trợ những kết nối liên tục qua
nó. Passive star được sử dụng để xây dựng một mạng WDM nội bộ, trong khi active
switch dùng để xây dựng mạng diện rộng định tuyến bước sóng. Passive router dùng như
là một thiết bị mux và demux.
Về cơ bản có ba phương thức truyền tải toàn quang là WDM định tuyến bước sóng
(chuyển mạch kênh quang) OCS, chuyển mạch gói quang OPS và chuyển mạch khối
quang OBS. Mỗi phương thức truyền tải được mô tả ở bên dưới.
Trong mạng WDM định tuyến bước sóng hay chuyển mạch kênh quang OCS,
những đầu cuối liên lạc với những đầu cuối khác thông qua một kênh WDM toàn quang
được gọi là đường quang lightpath [3]. Một lightpath được sử dụng để cung cấp một kết
nối qua một mạng WDM định tuyến bước sóng và có thể trải dài trên nhiều liên kết sợi
quang. Nếu không có các bộ chuyển đổi bước sóng thì một lightpath sẽ có cùng một bước
sóng trên tất cả các liên kết quang. Những kết nối định tuyến bước sóng được cấp phát
băng thông tĩnh hay cố định; do đó, nó không thích hợp với lưu lượng đột biến trong
Internet. Để có thể đáp ứng được yêu cầu về băng thông lớn trong mạng đô thị và mạng
diện rộng, những phương thức truyền tải phải hỗ trợ việc dự trữ tài nguyên và có khả
năng truyền tải được lưu lượng đột biến. Vả lại, khi có một yêu cầu kết nối, một lightpath
được thiết lập cho kết nối này cho dù kết nối này có dung lượng bao nhiêu, do vậy làm
việc sử dụng băng thông trở nên không hiệu quả.
Mạng chuyển mạch gói quang OPS có khả năng cấp phát tài nguyên động. Mạng
chuyển mạch gói quang tạo thành từ những chuyển mạch quang riêng rẽ kết hợp lại với
nhau. Các gói có thể đến mỗi node tại những thời điểm khác nhau. Trong mạng chuyển
mạch gói các bit đồng bộ và khôi phục xung đồng hồ được thêm vào để nhận ra header
của một gói. Mạng chuyển mạch gói quang có thể chia thành hai loại chính đó là có khe
thời gian (mạng đồng bộ) và không có khe thời gian (bất đồng bộ). Trong mạng có khe
thời gian tất cả các gói đều có kích thước bằng nhau. Gói tin cùng với header của nó đều
được đặt trong một khe thời gian cố định, khe thời gian này có chiều dài lớn hơn gói cộng
với header của nó để cung cấp khoảng bảo vệ. Trong mạng không có khe thời gian, gói có
thể có kích thước bằng hay không bằng nhau, gói đến và vào một switch không được sắp
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -8- SVTH: Đoàn Khánh Tân Thanh
Chương I – Khái quát về sự phát triển của mạng quang
xếp. Do đó, hoạt động chuyển mạch packet-by-packet có thể thực hiện tại bất cứ thời
điểm nào. Điều đó có thể dẫn đến xung đột giữa các gói đến khác nhau cùng chiếm một
ngõ ra như nhau. Hiển nhiên rằng, trong mạng không có khe thời gian, khả năng xung đột
là lớn hơn bởi vì hành xử của từng gói là không thể đoán trước được và không có tính quy
luật. Nhưng mạng không có khe thời gian thì dễ hơn, rẻ hơn trong xây dựng và linh hoạt
hơn so với mạng có khe thời gian. Trong mạng IP khi giải quyết xung đột, người ta dùng
các bộ đệm lưu dữ tạm thời các gói tin. Người ta đề xuất dùng cách thức này trong mạng
toàn quang bằng cách dùng các bộ đệm quang. Nhưng làm sao để chế tạo các bộ đệm
quang đó chính là một vấn đề lớn. Người ta đề xuất dùng các đoạn dây trễ FDL nhưng
hiệu quả của nó thì không cao trong khi chi phí sản xuất lớn và công nghệ chưa thực sự
trưởng thành [4, 5].
Trong mạng chuyển mạch khối quang OBS, những gói được tập trung lại và truyền
đi trên một đơn vị truyền tải lớn hơn gọi là burst (khối). Burst sau đó được chuyển mạch
qua mạng lõi quang hoàn toàn trong miền quang theo sau một gói điều khiển của nó.
Mạng chuyển mạch khối quang cho phép đa hợp thống kê ở mức độ cao hơn và thích hợp
hơn cho lưu lượng đột biến so với mạng chuyển mạch kênh quang. Mạng chuyển mạch
khối quang không cần nhiều kỹ thuật bắt buộc kèm theo như mạng chuyển mạch gói
quang [2].
Chuyển mạch kênh quang thích hợp cho những loại dữ liệu đòi hỏi tốc độ cố định
(trễ cố định) như thoại và truyền hình; tuy nhiên, nó lại không thích hợp với các loại lưu
lượng đột biến và không liên tục. Chuyển mạch gói làm việc tốt với các lưu lượng tốc độ
biến đổi, như số liệu, và có thể đạt được hiệu quả sử dụng băng thông cao. Độ ưu tiên của
dữ liệu có thể gộp chung trong chuyển mạch gói; tuy nhiên, khó có thể đảm bảo chất
lượng dịch vụ (dịch vụ best effort) và độ trễ của gói có thể biến đổi khác nhau.
Chuyển mạch khối quang chỉ mới được giới thiệu trong thời gian gần đây cho mạng
quang WDM; do vậy, nó không được biết đến nhiều như chuyển mạch kênh quang và
chuyển mạch gói quang. Chuyển mạch kênh quang sử dụng phương thức chiếm dụng tài
nguyên hai chiều nên thời gian chiếm dụng tài nguyên lớn. Chuyển mạch gói quang yêu
cầu nhiều bộ đệm quang, cơ chế điều khiển phức tạp và cần một cơ chế đồng bộ chính
xác. Chuyển mạch khối quang được thiết kế để cân bằng ưu khuyết điểm của chuyển
mạch kênh quang và chuyển mạch gói quang. Chuyển mạch khối quang sử dụng phương
thức điều khiển một chiều (one way) truyền dẫn tức thời, nghĩa là burst dữ liệu theo sau
một gói điều khiển mà không cần chờ chấp thuận của node kế tiếp trên đường đi đến đích.
Kỹ thuật chuyển mạch khối quang khác với các kỹ thuật khác trong cách nó chiếm dụng
tài nguyên và giải phóng tài nguyên.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -9- SVTH: Đoàn Khánh Tân Thanh
Chương I – Khái quát về sự phát triển của mạng quang
Trong mạng chuyển mạch khối quang, một burst dữ liệu bao gồm nhiều gói (thí dụ
như IP) được chuyển đổi quang điện rồi đưa qua mạng hoàn toàn trong miền quang. Một
gói điều khiển được truyền đi trước burst dữ liệu một khoảng thời gian gọi là offset để cấu
hình các chuyển mạch trên suốt đường đi đến đích. Thời gian offset cho phép các gói điều
khiển được xử lý và các chuyển mạch có thể được thiết lập trước khi burst dữ liệu đến các
node trung gian; do đó không cần các bộ đệm điện hay quang tại các node trung gian này
trong khi các gói điều khiển đang được xử lý.
1.2 Mục tiêu của đề tài
Như đã đề cập ở trên, đặc điểm khác biệt và nổi bậc của mạng chuyển mạch khối
quang OBS là đơn vị truyền dẫn trong mạng không phải là các gói tin mà là một burst dữ
liệu theo sau một gói điều khiển, trong đó burst dữ liệu được sinh ra sau quá trình đóng
khối (burst assembly) bằng cách tập nhiều gói tin trong đó rồi truyền đi. Một câu hỏi đặt
ra là bao nhiêu gói tin trong một burst hay kích thước burst là bao nhiêu và nó ảnh hưởng
như thế nào đến hoạt động của mạng. Đây chính là mục tiêu nghiên cứu của đề tài.
1.3 Giới hạn của đề tài
Sau đây là các giới hạn trước khi thực hiện mô phỏng, những thông số này sẽ được
giải thích rõ hơn trong Chương 4.
- Mạng đường trục Hoa Kỳ NSFNET 14 node được chọn để mô phỏng, các
node trong mạng được giả sử là các node kết hợp. Liên kết trong mạng là các liên
kết WDM song hướng, 2 bước sóng điều khiển và 2 bước sóng dữ liệu cho mỗi
hướng
- Lưu lượng ngõ vào mạng OBS có phân phối Poisson có tốc độ λ
- Kích thước mỗi gói tin IP được giả sử là bằng nhau và bằng 1250 byte
- Thời gian chuyển mạch quang là 10 us
- Thời gian xử lý gói điều khiển là 2.5us
- Lưu lượng được phân phối đồng nhất tại tất cả các cặp node trong mạng
- Việc tính toán đường đi dựa vào giải thuật tìm đường đi ngắn nhất SPF
- Gói điều khiển có kích thước cố định và bằng 64 byte
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -10- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Chương II
Node biên
Liên kết WDM
Node lõi
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -11- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Để làm được điều đó Người ta đề xuất xây dựng mạng OBS như hình 2.1. Một mạng OBS
như vậy bao gồm các node biên, các node lõi liên kết với nhau bằng các liên kết WDM.
Node biên đóng các gói dữ liệu điện thành burst, biến đổi quang điện và chuyển vào
mạng lõi OBS. Node biên ở phía nguồn được gọi là node ngõ vào. Node biên ở phía đích
gọi là node ngõ ra. Node ngõ vào đóng các burst từ những đầu cuối gửi thành một burst.
Burst dữ liệu này được truyền qua mạng lõi OBS hoàn toàn trong miền quang mà không
đệm lại tại bất kỳ node nào. Node biên ngõ ra nhận burst dữ liệu và giải đóng khối thành
các gói tin và chuyển tiếp các gói này đến đầu cuối nhận. Hình 2.2 mô tả các thành phần
của mạng OBS với các chức năng khác nhau.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -12- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Nếu ngõ ra mong muốn không thể sử dụng tức đang được sử dụng bởi một burst
khác, việc cấu hình cho OXC phụ thuộc vào nguyên tắc giải quyết xung đột được đưa vào
mạng. Nói chung, SCU chịu trách nhiệm đọc các gói điều khiển, lập lịch, nhận biết xung
đột và giải quyết, tra cứu bảng chuyển tiếp, điều khiển ma trận chuyển mạch (hay OXC),
tạo lại gói điều khiển để phát tiếp nếu node này chưa phải là đích của nó và điều khiển
việc chuyển đổi bước sóng. Trong trường hợp một burst dữ liệu vào OXC trước gói điều
khiển của nó thì burst này chỉ đơn giản là bị rớt đi.
Class 0
Lưu
Class 1
Lưu lượng ra
lượng
vào Bộ Đến node 1 Lập Tách
lịch khối
định kênh burst
tuyến
Class 0
Class 1
E
Node biên Đến node N -1 Đóng khối burst O
Node biên - Hình 2.3(b)- thực hiện chức năng sắp xếp gói, đệm gói, tập hợp gói này
thành một burst và phân chia các gói từ trong một burst. Có nhiều cách để đóng khối
burst, như các kỹ thuật dựa trên giới hạn của bộ định thời hay mức ngưỡng của kích thước
burst. Kiến trúc của một router biên bao gồm một bộ định tuyến (RM), một bộ đóng khối
(BA) và một bộ lập lịch kênh (S). RM chọn lựa các ngõ ra thích hợp bằng các giải thuật
tìm đường ngắn nhất về mặt thời gian hay số lượng bước nhảy cho mỗi gói và gửi nó đến
bộ BA thích hợp. Mỗi bộ BA chứa các gói dữ liệu có cùng một đích tới. Trong bộ BA còn
Gói IP
Đóng khối
quang cho thích hợp. Trong các phần tiếp theo của chương này sẽ mô tả rõ hơn về các
hoạt động này.
2.3 Đóng khối (Burst Assembly)
Đóng khối là tiến trình tập hợp và đóng các gói ở ngõ vào từ lớp cao hơn thành burst
tại node biên ngõ vào của mạng OBS. Người ta đã đưa ra nhiều kỹ thuật cho việc đóng
khối trong mạng OBS. Hai kỹ thuật được nhiều người quan tâm nhất là đóng khối dựa
theo bộ định thời (timer-based) và dựa trên mức ngưỡng (threshold-based) (hình 2.5).
Trong phương pháp đóng khối dựa trên bộ định thời, một burst được tạo ra trong
mạng theo chu kỳ thời gian, tức là đúng thời gian đã được định sẵn trong bộ định thời thì
sẽ tạo ra một burst không quan tâm đến kích thước burst dài hay ngắn. Do đó, chiều dài
của burst biến đổi khi tải vào mạng biến đổi. Trong phương pháp dựa trên mức ngưỡng,
số lượng gói trong mỗi burst bị giới hạn hay nói rõ hơn là chiều dài của các burst là bằng
nhau. Phương pháp dựa trên mức ngưỡng sẽ không phát các burst theo một chu kỳ thời
gian nào cả. Phương pháp đóng gói dựa trên bộ định thời và dựa trên mức ngưỡng thì
tương tự nhau, bởi lẽ tại tốc độ cố định cho trước thì giá trị về kích thước hay giá trị về
thời gian có thể chuyển đổi qua lại (mapping).
Một vấn đề đặt ra cho đóng khối là làm sao tìm ra giá trị của bộ định thời và kích
thước ngưỡng để tối thiểu xác suất mất gói trong mạng OBS. Việc chọn lựa một con số
tối ưu cho mức ngưỡng (hay giá trị của bộ định thời) là một vấn đề cần nghiên cứu. Đây
cũng là vấn đề mà luận văn nghiên cứu. Trước khi đi vào thực hiện mô phỏng quá trình
đóng khối có thể hình dung như sau:
Nếu như giá trị ngưỡng quá nhỏ, burst sẽ ngắn, số lượng burst trong mạng sẽ nhiều.
Nhiều burst trong mạng dẫn đến nhiều xung đột xảy ra, nhưng số lượng gói mất ở mỗi lần
xung đột lại nhỏ. Nhưng với số lượng burst nhiều như vậy sẽ tăng áp lực lên mặt bằng
điều khiển để xử lý các gói điều khiển của mỗi burst dữ liệu. Nếu như thời gian chuyển
mạch không được bỏ qua, burst ngắn sẽ dẫn đến việc sử dụng lại tài nguyên trở nên kém
đi do phải cần nhiều thời gian cho chuyển mạch. Mặt khác, nếu mức ngưỡng quá lớn,
burst sẽ dài, số lượng burst vào mạng sẽ nhỏ. Do đó, số lượng xung đột sẽ giảm so với
trường hợp burst ngắn, nhưng số lượng gói mất trung bình cho mỗi lần xung đột sẽ tăng.
Như vậy cần có một sự cân bằng giữa số lượng xung đột và số lượng gói mất trung
bình tại mỗi lần xung đột. Do đó, hoạt động của mạng OBS sẽ được cải thiện khi các gói
đến được đóng khối với một kích thước tối ưu. Tương tự đối với kỹ thuật đóng khối dựa
trên bộ định thời cũng cần giá trị tối ưu về mặt thời gian.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -15- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Gói
đến Burst 3 Burst 2 Burst 1
Gói
đến Burst 3 Burst 2 Burst 1
Hình 2.5: Kỹ thuật đóng khối (a) dựa theo mức ngưỡng (b) dựa theo bộ định thời
Trong trường hợp gói đến có yêu cầu về QoS, như giới hạn về độ trễ, một giải pháp
hiển nhiên là phải thêm vào mạng phương thức dựa trên bộ định thời. Giá trị của bộ định
thời được chọn lựa dựa trên yêu cầu về độ trễ end-to-end của các gói. Mặt khác, nếu
không có giới hạn về độ trễ, phương pháp dựa trên mức ngưỡng có thể thích hợp hơn, bởi
vì những burst có kích thước cố định trong mạng sẽ giảm số lượng gói mất trong mỗi lần
xung đột [9].
Việc sử dụng cả hai loại dựa trên bộ định thời và dựa trên mức ngưỡng sẽ là lựa
chọn tốt nhất và việc đóng khối sẽ linh hoạt hơn là chỉ dùng một trong hai phương pháp ở
trên. Bằng cách tính toán giá trị mức ngưỡng tối ưu, tính toán chiều dài burst tối thiểu, và
sử dụng giá trị của bộ định thời dựa trên độ trễ gói cho phép, chúng ta có thể chắc chắn
rằng số lượng gói mất là nhỏ nhất trong khi vẫn đảm bảo độ trễ cho phép.
Kỹ thuật đóng khối sử dụng tại node biên cũng ảnh hưởng đến kỹ thuật báo hiệu
trong mạng lõi. Hầu hết những kỹ thuật báo hiệu cần biết chiều dài burst, thời gian burst
đến hay cả hai để chiếm dụng tài nguyên một cách hiệu quả trong mạng lõi. Thí dụ như,
trong JET, phương thức báo hiệu này cần biết cả hai thông số là chiều dài burst và thời
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -16- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
gian burst đến. Một trong những nhược điểm của những kỹ thuật đóng khối truyền thống
là việc báo hiệu chỉ được khởi tạo khi toàn bộ burst đã được đóng khối, điều này sẽ làm
tăng độ trễ trong việc đóng khối.
Trong [7], kỹ thuật đóng khối dựa trên dự đoán được giới thiệu, trong đó giá trị
ngưỡng của burst hay giá trị của bộ định thời của burst kế tiếp được dự đoán dựa trên tốc
độ trung bình của lưu lượng tới. Bằng cách sử dụng chiều dài burst dự đoán, gói BHP có
thể được gửi đi vào mạng lõi trước khi một burst thực sự được tạo ra và có thể chiếm tài
nguyên trước; do đó, có thể làm giảm độ trễ do đóng khối. Giá trị dự đoán có thể được sử
dụng cho việc thiết lập các giá trị mức ngưỡng hay bộ định thời cho burst kế tiếp. Trong
[7], ông D. Morato đã đề cập phương pháp dự đoán chiều dài burst kế tiếp dựa trên tính
tương quan của lưu lượng. Ưu điểm của phương pháp đóng gói dựa trên dự đoán là báo
hiệu vào đóng khối có thể thực hiện song song nhau do đó tiết kiệm được thời gian đóng
khối.
Trong lúc đóng khối, gói đến ở lớp cao hơn được chứa trong hàng đợi dựa trên đích
đến và lớp QoS của chúng. Sau khi tiêu chuẩn đóng gói được thoã mãn (mức ngưỡng kích
thước burst hay giá trị của bộ định thời đạt được), burst sẽ được tạo ra và gửi vào mạng
lõi. Do đó, chúng ta có thể thấy đặc tính đến của gói và phân phối chiều dài gói ảnh
hưởng nhiều đến đặc tính đến của burst và phân phối chiều dài burst.
Trong lúc đóng khối, node biên ngõ vào sắp xếp và lập lịch cho các gói đến vào
trong những bộ đệm ngõ vào theo mức QoS của nó và đích đến của nó. Những gói này
sau đó được tập hợp thành burst và chứa trong bộ đệm ngõ ra. Bởi vì mỗi hướng và mỗi
lớp dịch vụ yêu cầu một bộ đệm riêng, nên số lượng lượng lớp dịch vụ và kích thước
mạng quyết định nhiều đến kích thước của bộ đệm tại node biên ngõ vào.
Một tình huống phức tạp hơn khi gói đến có nhiều lớp dịch vụ. Trong trường hợp
này, các gói đến phải được đóng khối cùng với mức ưu tiên của nó vào trong mỗi burst để
mạng lõi quang có thể cung cấp các mức dịch vụ khác nhau. Việc chọn lựa một cơ cấu
đóng khối cho tất cả các lớp dịch vụ có thể là không thích hợp. Một phương pháp đóng
khối dựa trên mức ngưỡng hay bộ định thời với giá trị bộ định thời lớn có thể dẫn đến
những đột trễ không thể chấp nhận được cho các lớp dịch vụ yêu cầu nghiêm ngặt về độ
trễ, trong khi chiều dài burst không tối ưu có thể tăng độ mất gói đối với các lớp dịch vụ
yêu cầu nghiêm ngặt về mất mát dữ liệu. Trong [6] đã nêu ra kiểu đóng khối kết hợp để
khắc phục vấn đề này. Trong phương pháp đóng khối kiểu kết hợp, gói từ các lớp dịch vụ
khác nhau với những yêu cầu về QoS khác nhau có thể đóng khối trên cùng một burst.
Trong phần mô phỏng của luận văn sẽ đề cập đến kỹ thuật đóng khối kiểu vi phân hỗ trợ
nhiều lớp dịch vụ khác nhau. Trong phương pháp đóng gói kiểu vi phân, loại burst được
định nghĩa dựa trên yêu cầu về QoS. Mỗi loại burst sau đó được đóng khối sử dụng một
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -17- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
cơ cấu đóng khối thích hợp để chắc chắn rằng đáp ứng được yêu cầu QoS. Giá trị của bộ
định thời được quyết định dựa trên yêu cầu nghiêm ngặt của độ trễ end-to-end và giá trị
của mức ngưỡng được thiết lập bằng giá trị tối ưu của độ dài burst với lưu lượng tải vào
mạng nằm trong một dãi cho trước.
2.4 Định tuyến và sắp xếp bước sóng
Định tuyến là một trong những vấn đề cơ bản cho bất kỳ phương thức truyền tải nào.
Trong các nghiên cứu, hầu hết các nhà nghiên cứu về OBS đều giả sử là định tuyến cố
định được tính toán bởi nguồn. Định tuyến hop-by-hop trong mạng IP thì không thích hợp
bởi vì khoảng thời gian tính toán đường đi trên mỗi hop khá lâu. Mặc dù vậy, hầu hết các
nghiên cứu người ta đều giả sử rằng một con đường ngắn nhất cố định tới đích được tính
toán tại nguồn. Con đường ngắn nhất có thể là ngắn nhất về mặt thời gian trong trường
hợp có yêu cầu nghiêm ngặt về độ trễ, hay có thể số lượng hop tối thiểu khi có yêu cầu về
mặt mất mát dữ liệu [4].
Một vấn đề quan trọng nữa trong định tuyến và sắp xếp bước sóng là sự cân bằng
mất mát giữa việc truyền dữ liệu trên những con đường dài và những con đường ngắn
hơn. Có thể hiểu vấn đề này như sau:
Thời gian offset time của một burst giảm khi burst truyền qua mạng, làm cho khả
năng blocking tại cuối đường đi tăng lên. Cho nên cần có một giải thuật phân cấp burst
dựa trên việc tính toán những burst này đã sử dụng bao nhiêu tài nguyên mạng và nó gần
đích hay không và dựa vào cấp bậc này mà thêm một chế độ ưu tiên cho burst. Luận văn
không đi sâu vào vấn đề này vì thời gian có hạn. Chi tiết của phần này được trình bày
trong [10].
2.5 Báo hiệu trong mạng OBS
Báo hiệu và chiếm tài nguyên là một trong những điểm khác biệt của OBS so với các
kỹ thuật truyền tải toàn quang khác. OBS sử dụng báo hiệu ngoài băng tức truyền trên
một kênh khác với kênh truyền burst, trong đó gói điều khiển được truyền đi trước burst
dữ liệu một khoảng thời gian gọi là offset time.
Khi một burst được truyền qua mạng lõi quang, một phương thức báo hiệu cần phải
thêm vào để chiếm tài nguyên và cấu hình các chuyển mạch quang tại mỗi node. Báo hiệu
có thể là trong băng, bản tin điều khiển được truyền trên cùng bước sóng với burst dữ liệu
hay báo hiệu ngoài băng, bản tin điều khiển được truyền trên một bước sóng khác so với
burst dữ liệu. Nhưng người ta sử dụng báo hiệu ngoài băng cho các nghiên cứu.
Sau khi gói điều khiển được truyền đi, node nguồn có thể đợi chấp thuận trước khi
truyền burst dữ liệu hay node nguồn có thể truyền burst dữ liệu không cần nhận một chấp
thuận nào. Phương pháp đợi chấp thuận được gọi là tell-and-wait (TAW). Trong TAW tài
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -18- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
nguyên đảm bảo được chiếm; tuy nhiên, độ trễ end-to-end có thể lớn do phải chờ chấp
thuận.
Khi node nguồn không cần chờ chấp thuận, burst dữ liệu có thể theo sau gói điều
khiển ngay lập tức, phương thức báo hiệu này gọi là Tell-And-Go (TAG) hay burst dữ
liệu có thể theo sau gói điều khiển sau một khoảng thời gian offset time (hình 2.7),
phương thức báo hiệu này gọi là Just-Enough-Time (JET).
2.5.1 Just-Enough-Time (JET)
Hình 2.6 mô tả về kỹ thuật báo hiệu JET. Như hình vẽ, đầu tiên node nguồn gởi một
gói gói điều khiển BHP trên kênh điều khiển đến đích. Gói BHP được xử lý tại mỗi node
trung gian để thiết lập một đường đi cho dữ liệu toàn quang cho burst dữ liệu đi qua. Nếu
việc chiếm dụng tài nguyên thành công, chuyển mạch sẽ được cấu hình ưu tiên cho burst
này đi qua. Trong thời gian đó, burst này vẫn còn đợi ở nguồn trong miền điện. Sau một
khoảng thời gian định trước gọi là offset time, burst được gửi trên một bước sóng định
trước hoàn toàn trong miền quang [10]. Offset time được tính dựa trên số lượng hop từ
nguồn đến đích và thời gian chuyển mạch của node lõi. Offset time được tính theo công
thức OT = δ.h + ST trong đó h là số lượng hop giữa nguồn và đích, δ là thời gian cần thiết
để xử lý gói điều khiển tại mỗi node và ST là thời gian chuyển mạch. Nếu tại node nào
việc chiếm dụng không thành công thì burst sẽ bị rớt. Đặc tính kỹ thuật duy nhất của JET
khác biệt so với các kỹ thuật báo hiệu một chiều là cơ chế chiếm dụng tài nguyên có trì
hoãn và giải phóng kênh truyền ngầm định.
Thông tin cần thiết được bảo trì tại mỗi kênh truyền của mỗi ngõ ra tại bất kỳ node
nào cho JET là thời điểm bắt đầu và kết thúc của tất cả các burst đã được lập lịch, điều
này làm cho hệ thống trở nên phức tạp. Mặt khác, JET có thể nhận nhận ra những tình
huống không có xung đột nào xảy ra, cho dù thời điểm bắt đầu của burst mới có thể sớm
hơn thời điểm kết thúc của một burst đã được chấp nhận, nghĩa là một burst có thể được
truyền ở giữa hai burst đã chiếm tài nguyên trước. Do đó, khả năng mất gói trong mạng
sử dụng JET tăng lên.
Có hai phương thức báo hiệu một chiều khác đó là Tell-and-Go và Just-in-Time.
Trong phương thức TAG, burst dữ liệu theo sau gói điều khiển ngay khi gói này vừa phát
đi chứ không chờ một khoảng thời gian offset time như trong JET; do đó burst dữ liệu
phải được trì hoãn tại mỗi node trung gian để có thời gian cho các node này xử lý gói điều
khiển và các chuyển mạch được cấu hình. Việc trì hoãn được thực hiện nhờ các dây trễ
FDL.
JIT tương tự như JET ngoại trừ JIT là phương thức báo hiệu chiếm dụng tài nguyên
tức thì và giải phóng tài nguyên yêu cầu rõ thay vì là chiếm dụng tài nguyên có trì hoãn
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -19- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
và giải phóng tài nguyên ngầm định. Ưu điểm cơ bản của việc sử dụng những kỹ thuật
báo hiệu một chiều là tối thiểu được độ trễ end-to-end cho việc truyền dẫn dữ liệu trên
mạng quang đường trục.
Thời gian
offset
Thời gian
truyền burst
Thời
gian
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -20- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -21- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
thì Gapi = 0. Thông tin về khoảng cách rất có ích cho việc chọn lựa một kênh
truyền đối với trường hợp có nhiều kênh truyền đang rỗi.
Những giải thuật lập lịch kênh dữ liệu có thể được phân loại thành hai lớp : có và
không có lấp chỗ trống. Những giải thuật cơ sở khác biệt nhau dựa trên loại và số lượng
thông tin trạng thái được duy trì tai một node về các kênh truyền. Trong những giải thuật
không lấp chỗ trống, LAUTi trên mọi kênh dữ liệu Di, với i = 1, 2, 3…, W, được duy trì
bởi khối lập lịch. Trong những giải thuật có lấp chỗ trống, thời gian bắt đầu và kết thúc
được duy trì tại mỗi node trên tất cả các kênh.
Trong phần dưới đây chúng ta xem xét về các giải thuật lập lịch kênh không lấp chỗ
trống như FFUC, LAUC và lấp chỗ trống FFUC-VF, LAUC-VF.
2.6.1 First Fit Unscheduled Channel (FFUC)
(tạm dịch: tìm kênh thích hợp đầu tiên theo thứ tự định trước ở ngõ ra cho burst đang đến)
Giải thuật lập lịch FFUC lưu trữ giá trị của LAUT (hay còn gọi là horizon) trên tất
cả các kênh dữ liệu. Khi có burst dữ liệu đang đến, giải thuật FFUC sẽ tìm kiếm trên tất
cả kênh truyền theo một thứ tự cố định và sắp xếp một kênh thích hợp tìm thấy đầu tiên
cho burst đang đến này. Một kênh truyền được xem là thích hợp đối với giải thuật FFUC
khi giá trị LAUT của nó nằm trước thời điểm burst đến (burst arrival time). Ưu điểm cơ
bản của FFUC là tính đơn giản của giải thuật và giải thuật chỉ cần phải duy trì giá trị của
LAUTi trên mỗi kênh. Giải thuật FFUC có thể được giải thích như hình 2.7(a). Có thể mô
tả như sau: FFUC thực hiện dựa trên các giá trị LAUT0, LAUT1 và LAUT2 của kênh dữ
liệu D0, D1 và D2. Thời điểm t chính là thời điểm burst đến. Ta thấy cả LAUT1 và LAUT2
đều thoã mãn còn LAUT0 và LAUT3 không thoã mãn. Nếu những kênh này được sắp xếp
thứ tự dựa trên chỉ số của kênh (D0, D1,.., DW), thì kênh dữ liệu D1 sẽ được chọn bởi vì
theo thứ tự D1 nằm trước D2. FFUC là một giải thuật đơn giản nhưng nó lại cho xác suất
mất dữ liệu cao và hiệu quả sử dụng băng thông kém; dưới đây sẽ đề cập đến các giải
thuật khác cho xác suất mất mát dữ liệu thấp hơn.
2.6.2 Horizon hay Latest Available Unscheduled Channel (LAUC)
(tạm dịch: tìm kênh thích hợp có thời điểm LAUT gần nhất)
Giải thuật lập lịch kênh LAUC hay Horizon giữ giá trị LAUT của tất cả các kênh
truyền và sắp xếp cho burst dữ liệu kênh có LAUT gần nhất. Giải thuật LAUC cũng được
giải thích trong hình 2.7(a). Dựa trên LAUT1 và LAUT2 của các kênh dữ liệu D1 và D2
thích hợp cho burst đang đến chưa được lập lịch vì thời điem burst đến t nằm sau các
LAUT này. Nếu như trong giải thuật FFUC thì kênh D1 được chọn. Tuy nhiên, trong
LAUC còn quan tâm đến khoảng cách giữa t và LAUT của mỗi kênh, nó sẽ chọn kênh
nào có khoảng cách này nhỏ hơn; điều này làm tăng hiệu quả sử dụng kênh truyền so với
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -22- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
FFUC. Chúng ta quan sát rằng Gap1 > Gap2; do đó burst đến sẽ được lập lịch ở ngõ ra có
khoảng cách nhỏ nhất, nghĩa là D2.
t
Arrival
LAUT0
Lb
D0
Gap1 LAUT1
FFUC
D1
Gap2 LAUT2
LAUC
D2
LAUT3
D3
Thời gian
(a)
Arrival
E0,a E0,a
E0,1 S0,1 E0,0 S0,0
Lb
D0
FFUC-VF E1,0
S1,0
D1
E2,0
S2,0
D2
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -23- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -24- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
giống như RAM trong miền quang hiện nay vẫn chưa được hữu hiệu. Trong mạng quang,
người ta đề xuất dùng dây trễ FDL (Fiber Delay Line) để lưu giữ các gói tin trong miền
quang một khoảng thời gian cố định. Bằng cách kết nối các dây trễ FDL theo tầng hay kết
nối song song, bộ đệm được đề xuất này có thể giữ các gói tin trong miền quang hay burst
dữ liệu trong các thời gian khác nhau.
Burst 1
Burst 1 vào bộ đệm
Ngõ vào 1
Burst 2 đi tiếp
Burst 2
Node mạng
Dây trễ FDL
Ngõ vào 2
Khuyếch đại
Khoá chuyển
mạch
Sợi quang
Hình 2.9: Dây trễ FDL cùng với bộ khuếch đại và chuyển mạch tạo thành một
vòng lặp trễ
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -25- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
ra ở 2
ra ở 1 Burst 2
Burst 1
ra ở 1
Burst 2
Node 1
Node 4
Hình 2.10: Mô tả giải quyết xung đột bằng cách chuyển đổi bước sóng
Trong mạng chuyển mạch khối quang, số lượng xung đột có thể giảm xuống bằng
cách sử dụng thêm khả năng sử dụng lại bước sóng cho phép nhiều bước sóng cùng hoạt
động trên một liên kết từ node ngõ vào đến node ngõ ra. Một burst đến xung đột
(contenting burst) có thể được chuyển tới bất kỳ bước sóng nào ở ngõ ra đang rỗi. Hiện
nay các bộ chuyển đổi bước sóng chỉ được đưa ra và sử dụng trong các phòng thí nghiệm,
công nghệ này cũng chưa trưởng thành và khoảng bước sóng có khả năng chuyển đổi còn
hạn chế. Sau đây là một số loại chuyển đổi bước sóng:
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -26- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
- Chuyển đổi toàn bộ (Full conversion): Một bước sóng mới đến có thể
chuyển đến bất kỳ bước sóng nào ở ngõ ra; do vậy không có một bước sóng nào
xuất hiện liên tục trên một kết nối từ đầu cuối đến đầu cuối.
- Chuyển đổi có giới hạn (Limited conversion): Việc chuyển đổi bước sóng bị
giới hạn để không phải tất cả các kênh ngõ vào đều có thể kết nối đến tất cả các
kênh ngõ ra. Việc giới hạn này sẽ làm giảm chi phí của chuyển mạch trong khi
chấp nhận một số lượng xung đột.
- Chuyển đổi cố định (Fixed conversion): Đây cũng là một dạng của limited
conversion, trong đó mỗi kênh ngõ vào được kết nối với một hay nhiều kênh ngõ
ra được chỉ định trước.
- Chuyển đổi một phần (Sparse wavelength conversion): Trong mạng có thể
bao gồm các node có chuyển đổi toàn bộ, có giới hạn, cố định và không có bộ
chuyển đổi bước sóng.
2.7.3 Định tuyến chuyển hướng
Trong định tuyến chuyển hướng, xung đột được giải quyết bằng cách định tuyến
burst dữ liệu đến một ngõ ra khác thay vì là ngõ ra như ban đầu; tức là kể từ node đó đi
theo con đường khác để đến đích chứ không còn đi theo con đường ngắn nhất ban đầu.
Định tuyến chuyển hướng không được quan tâm đối với mạng chuyển mạch gói trong
miền điện; tuy nhiên, nó lại thực sự cần thiết đối với mạng toàn quang trong khi các bộ
đệm quang còn hạn chế.
5
Đường ngắn Đường đi sau
nhất được 4 khi chuyển
chọn ban đầu hướng
1 3
Hình 2.11: Mô tả giải quyết xung đột bằng chuyển hướng burst
Trong định tuyến chuyển hướng, gói hay burst dữ liệu bị chuyển hướng có thể đi
trên con đường dài hơn để đến đích làm tăng độ trễ và giảm chất lượng tín hiệu. Hơn nữa,
có thể một gói sẽ bị lặp vòng (loop) trong mạng do không tìm được đường đến đích hay bị
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -27- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
chuyển hướng quá nhiều và tăng thêm tắc nghẽn trong mạng. Một kỹ thuật được thêm vào
để không cho chiều dài tuyến đường vượt quá mức ngưỡng. Kỹ thuật này có thể là xây
dựng một bộ đếm hop (bước nhảy) và không cho số hop vượt quá con số tối đa.
Một số vấn đề khác trong định tuyến chuyển hướng là bảo trì thời gian offset giữa
gói điều khiển và gói dữ liệu của một burst bị chuyển hướng. Bởi vì burst bị chuyển
hướng phải đi trên đường có số lượng hop nhiều hơn khi nó không bị chuyển hướng, do
đó thời gian offset trước đây là không đủ để các chuyển mạch kế tiếp xử lý các gói điều
khiển trước khi burst dữ liệu đến. Để khắc phục vấn đề này, nhiều xử lý khác được thêm
vào để tính toán lại thời gian offset. Một cách đơn giản hơn là chỉ cần loại bỏ những burst
dữ liệu có thời gian offset không hợp lệ. Các bộ đếm và các bộ đếm dựa vào thời gian có
thể được sử dụng để nhận ra số lượng hop mà burst đã đi qua. Các bộ đệm sử dụng dây trễ
có thể được áp dụng; tuy nhiên, cách làm này lại làm tăng thêm tính phức tạp của lớp
quang.
2.7.4 Phân đoạn burst
Trong các nghiên cứu về mạng chuyển mạch khối quang, khi xung đột xảy ra giữa
hai burst mà không thể giải quyết bằng các phương pháp trên thì một trong hai burst bị rớt
toàn bộ, cho dù các phần chồng lấn của các burst lên nhau là rất nhỏ. Trong các ứng dụng
yêu cầu nghiêm ngặt về độ trễ nhưng không quan tâm lắm đến mất gói thì người ta mong
muốn là rớt các gói chồng lấn hơn là rớt toàn bộ burst.
Trong [14], ông V. M. Vokkarane đã đưa ra phương pháp cho việc giải quyết xung
đột bằng cách phân đoạn burst (Burst Segment), làm cho số lượng gói mất đi giảm xuống
bằng cách chỉ cho rớt phần chồng lấn lên nhau của một trong hai burst. Ưu điểm của
phương pháp này là có thể xem xét đến các mức ưu tiên của từng burst từ đó có thể đưa ra
quyết định rớt bỏ một phần của burst đến xung đột (contenting burst) hay burst bị xung
đột (contented burst) (như hình 2.12).
Trong phân đoạn burst, một burst bao gồm nhiều đơn vị truyền tải nhỏ hơn gọi là
đoạn (segment). Mỗi đoạn gồm bao gồm một header và phần payload của đoạn. Header
của đoạn bao gồm các trường cho bit đồng bộ, thông tin sửa lỗi, thông tin về nguồn và
đích đến và chiều dài của đoạn trong trường hợp các đoạn có chiều dài khác nhau. Phần
payload của đoạn có thể mang nhiều loại dữ liệu, như gói IP, tế bào ATM hay các frame
Ethernet (Hình 2.13). Khi hai burst xung đột với nhau trong mạng chuyển mạch khối
quang, chỉ có một số đoạn của một burst chồng lấn lên burst kia mới bị rớt, như hình 2.18.
Nếu thời gian chuyển mạch không được bỏ qua thì có thêm một số đoạn có thể bị rớt khi
chuyển mạch được cấu hình trở lại. Trong các mô tả sau đây, ta gọi burst đến trước hay
burst bị xung đột gọi là contented burst và burst đến sau hay burst đến xung gọi là
contending burst.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -28- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Để đạt được tính trong suốt thì lớp quang không cần phải nhận ra ranh giới thực sự
của các đoạn và không cần biết định dạng phần payload của mỗi đoạn. Trong trường hợp
này, lớp quang chỉ nhận ra thông tin như các node nguồn và đích của burst, thời gian
offset, thời gian của burst và có thể là độ ưu tiên của burst. Tính trong suốt này có thể dẫn
đến việc quyết định tối ưu nhất cho việc giảm thiểu mất gói nhưng cũng có thể một đoạn
có thể bị chia thành hai phần tách biệt do vậy có thể mất mát gói sẽ tăng lên trong trường
hợp đoạn này đến đích không được nhận ra; tuy nhiên, bằng cách bảo đảm tính trong suốt,
lớp lõi quang trở nên đơn giản và không cần thiết phải tính toán lại các giá trị trong gói
điều khiển ở các node lõi.
Node trung
Ngõ vào 1 gian
Vùng xung
đột
Ngõ ra 1
Contented burst
còn nguyên
Ngõ vào 2 Contented burst Contenting
burst bị xén
một phần
Hình 2.12: Mô tả giải quyết xung đột bằng phân đoạn burst
Nếu như ranh giới của các đoạn hoàn toàn trong suốt trong mạng lõi toàn quang thì
các node biên phải chịu trách nhiệm định nghĩa và xử lý các đoạn trong miền điện. Hơn
nữa, node nhận phải có khả năng nhận ra điểm bắt đầu của mỗi đoạn và xác định xem thử
đoạn đó có còn nguyên vẹn hay không; do đó, một số header dùng để nhận ra lỗi và sửa
lỗi phải chứa trong mỗi đoạn. Thêm vào đó thông tin về tín hiệu đồng hồ có thể cũng cần
phải có trong mỗi header của mỗi đoạn để node nhận ngõ ra có thể xác định và phục hồi
dữ liệu trên mỗi đoạn. Một đoạn có thể một frame Ethernet. Nếu mỗi đoạn bao gồm một
frame Ethernet, việc đồng bộ và nhận ra frame được thực hiện bởi trường preamble trong
header của frame Ethernet, trong khi lỗi và các frame không còn nguyên vẹn có thể được
nhận ra bằng cách sử dụng trường CRC trong frame Ethernet; do đó, không cần thiết phải
có phần điều khiển cho mỗi đoạn vì mọi thứ đã có sẵn trong một frame Ethernet.
Nếu các đoạn không được định nghĩa như những frame Ehternet, việc chọn lựa
chiều dài của mỗi đoạn trở thành một thông số chính của hệ thống. Một đoạn có thể có
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -29- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
chiều dài cố định hay thay đổi. Khi các đoạn có chiều dài không đổi thì việc đồng bộ ở
máy thu trở nên dễ dàng; tuy nhiên, những đoạn có chiều dài thay đổi lại có khả năng
chứa được những gói có chiều dài khác nhau. Kích thước của mỗi đoạn còn phải cân nhắc
giữa mất mát trong một lần xung đột và số lượng header trong một burst. Đoạn dài sẽ dẫn
đến mất nhiều dữ liệu cho mỗi lần xung đột; tuy nhiên, những đoạn dài cũng dẫn đến ít
overhead và tỉ số giữa chiều dài header so với chiều dài payload sẽ nhỏ theo. Trong
chương này, chúng ta giả sử rằng mỗi đoạn là một frame Ethernet có chiều dài cố định và
không cần phải tìm kích thước tối ưu của mỗi đoạn.
Burst
Đoạn
Hình 2.13: Cấu trúc của burst được đóng kiểu phân đoạn
Một số vấn đề khác trong phân đoạn burst là quyết định xem đoạn nào bị rớt khi
xung đột xảy ra giữa hai burst. Chúng ta đã đặt tên cho burst burst bị xung đột là
contented burst còn burst xung đột là contenting burst. Chú ý rằng burst được xem là
contented hay contenting burst phụ thuộc vào thứ tự của nó đến chuyển mạch chứ không
phải thứ tự của gói điều khiển đến trước hay đến sau. Có hai cách để xác định xem những
đoạn nào nên rớt, được gọi là tail-dropping (rớt phần đuôi) và head-dropping (rớt phần
đầu).
Những đoạn bị rớt
Contented burst
Contenting burst
Thời gian
Hình 2.14: Xung đột làm chồng lấn các đoạn lên nhau [14]
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -30- SVTH: Đoàn Khánh Tân Thanh
Chương II – Mạng chuyển mạch khối quang OBS
Trong cách rớt phần đuôi tail-dropping thì các đoạn chồng lấn của contented burst sẽ bị
rớt còn trong cách rớt phần head-dropping đầu thì các đoạn của contenting burst chồng
lấn sẽ bị rớt. Ưu điểm của việc tail-dropping hơn head-dropping trong việc thay đổi các
gói sai thứ tự ở node đích với giả thuyết rằng các gói bị rớt được truyền lại sau đó. Việc
head-dropping làm cho các gói đến đích sai thứ tự; tuy nhiên, ưu điểm của head-dropping
là nó chắc chắn rằng một khi burst đến một node không bắt gặp một xung đột nào và sau
đó các burst này tiếp tục đi đến đích mà không phụ thuộc vào các burst đi sau nó có mức
ưu tiên nào đi chăng nữa.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -31- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Chương III
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -32- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
thế, ngược lại thời gian khứ hồi của các tác vụ đó (thời gian thực thi mô phỏng, tìm lỗi,
sửa lỗi, biên dịch lại) lại kém quan trọng hơn.
Thứ hai, phần lớn những nghiên cứu về mạng là tìm kiếm các thông số hay cấu hình
thay đổi không lớn, hay nghiên cứu trên một số địa hình mạng. Trong trường hợp này,
thời gian lặp lại (thay đổi mô hình và thực thi lại) thì quan trọng hơn. Vì quá trình cấu
hình chỉ thực hiện một lần (vào lúc bắt đầu của quá trình mô phỏng), nên thời gian thực
thi trong tác vụ này ít quan trọng hơn.
NS2 kết hợp các công việc cần thiết đó với hai ngôn ngữ, C++ và OTcl. C++ thực
thi nhanh nhưng lại chậm hơn trong quá trình chuyển đổi, do đó nó phù hợp với khía cạnh
thực thi giao thức. OTcl thực thi chậm hơn nhưng thời gian chuyển đổi của nó lại rất
nhanh, do đó nó lý tưởng với việc thay đổi cấu hình trong quá trình mô phỏng. NS2
(thông qua tclcl) giúp liên kết các đối tượng và các biến xuất hiện trong cả hai ngôn ngữ.
Tóm lại OTcl dùng để:
- Cho việc cấu hình và thiết lập các thông số
- Lấy các đối tượng có sẵn trong C++
Và C++ dùng để:
- Cho việc xử lý từng gói tin của mỗi luồng
- Cho việc thay đổi cách thể hiện của các đối tượng có sẵn
3.1.3 Cấu trúc của phần mềm NS2
Hình sau mô tả cấu trúc của phần mềm mô phỏng bao gồm cấu trúc thư mục và chức năng
của một số file quan trọng.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -33- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Trong số các thư mục con của ns-allinone-2.1b thì ns-2 là nơi chứa các file phục vụ cho
mô phỏng (cả viết bằng C++ lẫn OTcl). Trong thư mục này, tất cả OTcl code và những
kịch bản thí dụ đều chứa trong thư mục gọi là tcl và hầu hết được viết bằng C.
Thư mục tcl có những thư mục con, trong số đó có thư mục lib chứa mã nguồn OTcl cho
những thành phần cơ bản nhất và quan trọng nhất (agent, node, link, packet, address,
routing…) và đây cũng là nơi mà user hay developer “ghé thăm” nhiều nhất.
Ns -lib. Tcl: Lớp mô phỏng và đa số các định nghĩa chức năng thành phần của nó
ngoại trừ LAN, Web, và Multicast được chứa trong file này.
Ns -default. Tcl: Những giá trị mặc định cho các thông số cấu hình cho các thành
phần mạng được chứa ở đây. Bởi vì nhiều thành phần mạng được bổ sung bằng
C++, nên những thông số là những biến C++ tạo ra các giá trị cho OTcl qua chức
năng liên kết OTcl, bind(C++_variable_name, OTcl_variable_name).
Ns -packet. Tcl: Thành phần khởi tạo những định dạng header của gói được chứa
trong file này. Khi tạo ra một gói header thì phải đăng ký header trong file này để
tạo ra những xử lý khởi tạo.
3.1.3 Việc sử dụng chương trình
Ở mức độ người sử dụng: Việc mô phỏng bắt đầu bằng việc nắm rõ các câu lệnh tạo
đối tượng mô phỏng từ đó xây dựng các kịch bản mô phỏng Tcl. Các câu lệnh tạo đối
tượng được nêu rõ trong tài liệu hướng dẫn kèm theo của phần mềm NS2. Sau khi tạo một
kịch bản mô phỏng Tcl. Việc chạy chương trình mô phỏng chỉ đơn giản bằng câu lệnh sau
tại dấu nhắc lệnh của Terminal trong Linux.
[Root ~]#ns kichban. Tcl [tham số 1] [tham số 2] ….
Với kichban. Tcl là file kịch bản thể hiện các yếu tố mô phỏng mà người sử
dụng mong muốn.
[Tham số] là các thông số người sử dụng muốn nhập vào trong lúc bắt đầu thực
hiện mô phỏng
Ở mức độ người vừa phát triển vừa sử dụng: Việc phát triển phần mềm bắt đầu từ
việc nắm rõ cấu trúc các thư mục chính trong NS2 cùng với một số file quan trọng liên
quan đến các đối tượng mới cần thêm vào. Khi người sử dụng tạo ra một chương trình mô
phỏng chạy trên nền NS2 cho riêng mình thì cũng có thể tạo ra các câu lệnh tạo đối tượng
riêng cho mình, đó cũng là một ưu điểm của phần mềm NS2 mã nguồn mở.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -34- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Hình 3.2: Cửa sổ chương trình hiện ra sau khi chạy file nam
Xử lý file trace:
Hình sau mô tả cấu trúc của một file trace được tạo ra sau khi mô phỏng kết thúc.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -35- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Event: Có bộn ký tự thường xuất hiện là r, +, -, d để chỉ các sự kiện nhận, vào hàng
đợi, ra khỏi hàng đợi và rớt
Time: Thời điểm xảy ra sự kiện
From node: node đi của gói tin
To node: node đến của gói tin
Pkt type: loại gói tin
Pkt size: kích thước gói tin (byte)
Fid: số nhận diện cho mỗi luồng dữ liệu
Src Addr: Địa chỉ node nguồn ở dạng node. Port
Dst Addr: Địa chỉ node đích ở dạng node. Port
Pkt id: chỉ số nhận diện cho mỗi gói tin. Chỉ số này là duy nhất.
Với việc nắm rõ định dạng của một file trace người dùng có thể dùng các ngôn ngữ
như Perl hay Awk để duyệt file theo hàng và theo cột với một giải thuật để tính toán cụ
thể. Thí dụ như tính tỉ lệ gói mất, độ delay trung bình của các gói tin.
3.2 Phần mềm mở rộng của NS2 OBS4NS ( OBS for NS) dùng để mô phỏng
mạng OBS
3.2.1 Giới thiệu
OBS4NS là một phần mở rộng chạy trên nền NS2, nó giải quyết được vấn đề mô
phỏng mạng toàn quang trong khi NS2 chưa có. Và đặc biệt, OBS4NS phát triển phần lớn
các chức năng phục vụ tương đối đầy đủ cho mô phỏng mạng OBS.
3.2.2 Khả năng của phần mềm
- Tạo các node biên, node lõi và node kết hợp
- Tạo các liên kết WDM
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -36- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Liên kết trong mạng Module tạo liên kết trong mạng
Tất cả các liên kết trong mạng đều là các Chương trình xây dựng liên kết trong mạng
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -37- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
liên kết ghép kênh theo bước sóng WDM gồm các biến số liên quan đến số kênh điều
khiển, số kênh dữ liệu, băng thông mỗi
kênh và chiều dài mỗi liên kết
Đơn vị truyền dẫn trong mạng OBS Module tạo các gói tin
+ Burst dữ liệu + Input: kích thước gói tin, cách đóng khối.
+ Gói điều khiển + Output: thời điểm bắt đầu và kết thúc của
burst dữ liệu, thời gian offset time và gói
điều khiển có kích thước cố định.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -38- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
có phần giao diện đến lớp MAC còn ở node lõi có chuyển mạch khối quang
(Classifier/ObsSwitch).
Node
biên Giao diện MAC
Node lõi
Liên kết bên trong
entry_
Connector/ObsLink
Chuyển mạch khối quang
(Classifier/ObsSwitch)
Ngõ ra
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -39- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
(Classifier/Addr)
Phục hồi
(Agent/Burstifier)
(Agent/Deburstifier)
Lập lịch knh truyền
(ChannelScheduler)
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -40- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
- Trandom là một khoảng thời gian được tạo ngẫu nhiên trong một khoảng nào
đó đóng vai trò một thông số ngẫu nhiên nào đó trong mạng.
+ max_bhp_queue_time_: biến này cho phép cài đặt
TBHPqueue
+ extra_random_time_: biến này cho phép cài đặt Trandom
+ extra_fixed_time_: biến này giới hạn sự biến đổi của
Trandom và TTx,i-1
Thời
gian
offset
Burst
dữ liệu Thời gian
chuyển mạch
ST
Thời gian
truyền
Thời burst
gian
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -41- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
- bhp_struct_map_: cho phép gói điều khiển có thể được sữa lại khi thông
tin về burst trên đường truyền bị thay đổi (thí dụ như burst bị rớt một phần)
- bhp_size_: biến thiết lập kích thước gói điều khiển. Biến số liên quan đến
việc phân đoạn burst:
- segmentation_ : cho phép việc phân đoạn burst trong miền điện
- max_segmentations_: số lượng đoạn lớn nhất trong một burst
- min_segmentable_size_: kích thước tối thiểu của mỗi đoạn. Và cuối
cùng là
- stats_:cho phép gọi chức năng thống kê
Node lõi
Thành phần chủ yếu của node lõi là đơn vị điều khiển chuyển mạch SCU và ma trận
chuyển mạch quang OXC. Các thành phần này thuộc lớp Classifier/ObsSwitch.
Ngõ ra
BHP SCU
DB
OXC
Classifier/ObsSwitch
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -42- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
(Classifier/TypeSwitch) Agent
IP Agent
OBS
Node lõi OBS
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -43- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Trong phần mềm khi xây dựng kịch bản mô phỏng, ta không phải nhập thông số về
độ trễ lan truyền trên mỗi liên kết mà chỉ cần nhập khoảng cách theo km, chương trình sẽ
tự tính ra độ trễ lan truyền với vận tốc ánh sáng là 200000km/s.
3.2.3. c Module đơn vị truyền dẫn trong mạng (ObsPacket)
Hai đơn vị truyền dẫn trong mạng là gói điều khiển OBS_BHP và burst dữ liệu
OBS_DB. Nói thêm rằng trong OBS4NS, burst dữ liệu không phải là một gói cụ thể như
trong NS2. Mà chương trình mô phỏng chỉ bảo trì hai giá trị về thời điểm bắt đầu
DB_START và kết thúc DB_END của mỗi burst. Cụ thể trong chương trình hai giá trị này
là hai biến NULL, điều này làm cho việc xử burst dữ liệu nhanh hơn và không gây áp lực
lên hệ thống xử lý của máy tính.
OBS_BHP
Chương trình sẽ tạo ra gói điều khiển với các thông số sau:
- id_: một biến kiểu unsigned long int làm số nhận diện mỗi gói BHP
- db_start_time_: thời điểm bắt đầu của burst
- db_end_time_: thời điểm kết thúc của burst
- channel_: gói BHP này sẽ đưa lên kênh nào
- ttl_: thời gian sống của gói BHP
- offset_obs_bhp_: thông số về offset time
- stats_: biến gọi module thống kê
OBS_DB
Chương trình tạo ra burst dữ liệu với các thông số sau:
- type_: cho biết là DB_START hay DB_END
- id_: số nhận diện burst, cùng chỉ số với OBS_BHP tương ứng
- src_: địa chỉ node nguồn
- dst_: địa chỉ node đích
- channel_: burst này sẽ được đưa lên kênh nào
- stats_: biến gọi module thống kê
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -44- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Phần DBpayload đại diện cho phần dữ liệu của burst được phát đi bao gồm 3 biến số
liên quan:
np_: số gói tin thực tế trong một burst
size_: kích thước thực tế của burst
number_DB_: số lượng đoạn trong một burst dữ liệu trong trường hợp đóng khối
kiểu phân đoạn
3.2.3. d Module lập lịch kênh truyền (ChannelScheduler)
Khi một burst dữ liệu được tạo ra hoặc khi nó đi qua các node trung gian, nó cần phải
được sắp xếp đến một bước sóng nào đó ở ngõ ra. Nhiều nhà nghiên cứu đã đưa ra nhiều
phương thức sắp xếp khác nhau. Ba phương thức lập lịch được nhiều người quan tâm nhất
được xây dựng trong OBS4NS đó là : FFUC, LAUC và LAUC-VF
- channelScheduler/FFUC: Giải thuật lập lập lịch kênh là FFUC
- channelScheduler/LAUC: Giải thuật lập lịch kênh truyền là LAUC
- channelScheduler/LAUC_VF: Giải thuật lập lịch kênh truyền là
LAUC-VF. Với các thông số liên quan như sau :
3.2.3. e Module định tuyến (ObsRoute)
OBS4NS tính toán đường đi dựa trên giả thuật đường đi ngắn nhất SPF. Mỗi node
mạng cùng với các liên kết tạo ra một topo mạng. Sau đó mỗi node mạng sẽ lưu trữ một
bảng các láng giềng của nó. Việc tính toán đường đi ngắn nhất từ node này đến node kia
ban đầu dựa vào số bước nhảy hay hop count để tìm đường đi ngắn nhất. Nếu như việc tìm
đường đi dựa vào số bước nhảy tìm được nhiều hơn một con đường đến đích thì con đường
ngắn nhất được chọn chính là con đường có độ trễ lan truyền nhỏ nhất.
3.2.4 Đánh giá độ chính xác của phần mềm mô phỏng
Để đánh giá được độ chính xác của phần mềm này trong mô phỏng mạng, tác giả đưa ra
hai phương pháp để đánh giá như sau:
- Thứ nhất, xây dựng một mô hình đơn giản để đánh giá
- Thứ hai, xây dựng mô hình mô phỏng với nhưng thông số tham khảo và so
sánh kết quả đạt được trong bài báo
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -45- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
Điều kiện mô phỏng đối với mô phỏng trong bài báo: mô phỏng chỉ dừng lại khi 100
triệu gói được phát đi.
3.2.4. a Xây dựng mô hình đơn giản để đánh giá
Mô hình mô phỏng đơn giản được xây dựng như sau. Mạng gồm 2 node, 1 liên kết,
8 kênh dữ liệu trên liên kết, số kênh điều khiển được chọn sao cho sự mất mát burst
không phải là do rớt gói điều khiển (chọn 8 kênh).
Lưu lượng được gửi theo một hướng từ node 1 đến node 2 theo phân phối Poisson
(tốc độ trung bình λ và kích thước gói 1250 byte).
Poisson
8 kênh dữ liệu
Node 1 Node 2
Việc chọn lựa bước sóng ngõ ra theo kiểu FFUC (nó rõ hơn ở phần 8.3).
Khi xảy ra xung đột giữa 2 burst thì rớt burst đến xung đột.
Lấy kết quả mô phỏng so sánh với mô hình lưu lượng Erlang B. Việc chọn mô hình
Erlang B vì những đặc điểm sau của mô hình Erlang B tương ứng với mô hình mô phỏng
xây dựng ở trên:
- Số lượng nguồn vô hạn
- Các cuộc gọi đến ngẫu nhiên
- Xoá cuộc gọi bị khoá
- Thời gian chiếm giữ phân phối theo hàm mũ
Kết quả mô phỏng
0.7 Lý thuyết Erlang B
Mô phỏng
0.6
Xácsuất rớt gói
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15 20
Tải (Erlang)
Hình 3.8: Đồ thị so sánh giữa kết quả mô phỏng và lý thuyết mô hình Erlang B
Nhận xét:
Từ đồ thị nhận được ta thấy mô phỏng đã cho kết quả tương đối chính xác so với
mô hình lý thuyết Erlang. Sở dĩ tại lưu lượng thấp Tải < 13 Erlang, hai đường biểu diễn
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -46- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
tách xa nhau ra bởi vì số mẫu cần mô phỏng chưa đạt đến mức độ cần thiết. Nhưng vì
thời gian có hạn nên tác giả chưa thực hiện mô phỏng với số mẫu nhiều hơn.
3.2.4. b So sánh kết quả mô phỏng với kết quả trong bài báo [6]
Trong [6], tác giả thực hiện mô phỏng trên mạng đường trục Hoa Kỳ NSFNET, tác giả đã
xem xét ảnh hưởng của phân đoạn burst đến xác suất mất gói.
800
12
11
800
2400 300
500
1 2800
700
1100 8 9 14
1600 4 500
700
1000 800 7 300
2 600 900
5 13
2000
600
3 6 10
2000 1200
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -47- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
0.08
0.07 bai bao
Hình 3.10: Đồ thị so sánh kết quả trong [6] và kết quả mô phỏng bằng OBS4NS
Nhận xét: Sau khi so sánh hai kết quả từ đồ thị, ta thấy phần mềm đã đáp ứng được độ
chính xác so với kết quả [6].
Qua các kiểm nghiệm trên, phần mềm mô phỏng đã xây dựng có thể dùng trong việc mô
phỏng mạng OBS.
3.3.5 Cách sử dụng chương trình OBS4NS
Trong phần này, sẽ mô tả các thao tác để tạo một kịch bản mô phỏng bằng phần mềm
OBS4NS.
Mở đầu một kịch bản mô phỏng bằng dòng lệnh
Set ns [new Simulator]; tạo ra đối tượng mô phỏng
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -48- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -49- SVTH: Đoàn Khánh Tân Thanh
Chương III – Phần mềm mô phỏng mạng Network Simulator và phần mô phỏng mạng OBS
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -50- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Chương IV
3 6 10
2000 1200
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -51- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Trong chương 1 đã đề cập đến các giới hạn trong mô phỏng quá trình đóng khối
trong mạng OBS nhưng chưa đề cập đến tại sao lại chọn các thông số như vậy. Trong
chương này nhắc lại những thông số đó và giải thích việc chọn lựa các thông số ấy như
thế nào. Sau đây là các giới hạn mô phỏng:
- Mô phỏng trên mạng NSFNET 14 node như trên hình 4.1
- Các node mạng điều là các node kết hợp
- Liên kết là song hướng, mỗi hướng có hai kênh điều khiển và hai kênh dữ liệu
nghĩa là 1 liên kết quang có 8 bước sóng
- Gói đến có phân phối Poisson có tốc độ λ
- Các gói đến có kích thước cố định và bằng 1250 byte
- Tốc độ truyền dẫn trên mỗi kênh truyền là 10 Gb/s
- Thời gian chuyển mạch là 10 us
- Thời gian xử lý gói điều khiển là 2.5 us
- Lưu lượng được phân bố đồng nhất giữa tất cả các cặp node ngõ vào
- Định tuyến dựa vào đường đi ngắn nhất giữa các cặp node
- Đóng khối dựa trên mức ngưỡng tối đa về kích thước burst
- Kích thước gói điều khiển là cố định và bằng 64 bytes
- Giải thuật lập lịch kênh truyền là LAUCVF
Việc chọn lựa mạng NSFNET 14 node trong mô phỏng bởi vì mạng OBS chưa thực
sự được triển khai, việc chọn lựa một mạng chuẩn được các nhà nghiên cứu đề xuất để so
sánh kết quả của các nhà nghiên cứu khác nhau là một điều cần thiết. Ngoài mạng
NSFNET được sử dụng khá phổ biến trên các bài báo về mạng OBS, còn có mạng đường
trục Châu Âu và mạng đường trục Nhật Bản được các nhà nghiên cứu Châu Âu và Nhật
Bản sử dụng để mô phỏng.
Việc chọn số kênh dữ liệu và kênh điều khiển đều là hai; có thể nhìn thấy một điều
bất hợp lý là số lượng kênh truyền được ghép trên một liên kết quang như thế là quá ít so
với công nghệ ghép kênh theo bước sóng tiên tiến. Nhưng việc chọn lựa như vậy dựa vào
hai căn cứ: thứ nhất tác giả tham khảo ở [4, 6, 14], thứ hai là vì khi ta chỉ chú trọng đến
vấn đề đóng khối trong mạng thì có thể kém quan tâm đến các thông số khác hơn. Vả lại
việc chọn lựa số bước sóng cao hơn, với số lượng node mạng và liên kết như vậy để thu
nhận được kết quả hội tụ thì việc mô phỏng yêu cầu cấu hình máy tính lớn và mất rất
nhiều thời gian trong việc mô phỏng. Vì những nguyên nhân như trên tác giả xin được
phép chọn lựa số lượng kênh truyền như vậy.
Việc chọn lựa lưu lượng phân phối Poisson với kích thước gói tin là cố định 1250
byte được tham khảo từ [17] và từ [4, 14]. Theo kết quả thống kê của các nhà nghiên cứu
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -52- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
của tổ chức này thì số lượng gói tin IP có kích thước xung quanh giá trị 1250 byte
(10MB) là nhiều nhất.
Việc chọn lựa thời gian chuyển mạch là 10us được giải thích như sau: công nghệ
chuyển mạch toàn quang có thể dựa trên hai công nghệ là công nghệ chuyển mạch gương
với thời gian chuyển mạch hàng mili giây và công nghệ chuyển mạch bán dẫn với thời
gian chuyển mạch khoảng vài micro giây. Cho nên trong trường hợp mô phỏng này tác
giả giả sử rằng các chuyển mạch toàn quang đều là các chuyển mạch bán dẫn. Và con số
10 us được chọn lựa dựa vào việc tham khảo các bài báo [4, 6, 14].
Việc chọn lựa thời gian xử lý gói điều khiển và việc chọn lựa kích thước gói điều
khiển là 64 byte được tham khảo từ trang web wine. icu. ac.kr /~obsns/index.php.
Việc chọn lựa giải thuật lập lịch kênh truyền là LAUCVF là vì giải thuật này cho
xác suất mất gói thấp nhất trong các giải thuật lập lịch kênh đã nêu ở chương 2. [11]
Việc chọn lựa giải thuật tìm đường đi ngắn nhất SPF và chọn lựa việc phát lưu
lượng đồng nhất ở tất cả các cặp node để cho đơn giản bài toán.
Dựa vào các thông số cho trên tác giả xây dựng một kịch bản với đầy đủ các thông
số trên cho mạng đường trục Hoa Kỳ NSFNET.
Mạng NSFNET như hình được sử dụng trong mô phỏng với khoảng cách ghi trên
hình là km. Mô phỏng sẽ kiểm tra nhiều giá trị của mỗi mức ngưỡng ảnh hưởng thế nào
đến xác suất mất gói trong mạng. Mô phỏng chỉ dừng lại khi nào kết quả của lần mô
phỏng đầu và nhưng lần kế với cùng một giá trị kích thước burst sai lệch nhau trong
khoảng cho phép. Trong mô phỏng cũng so sánh các xác suất mất gói với các mức
ngưỡng khác nhau trong khi mạng có và không có phân đoạn burst trong giải quyết xung
đột. Mô phỏng bắt đầu với việc xem xét trong mạng chỉ có một lớp dịch vụ (mức ưu tiên)
và sau đó là hai lưới dịch vụ. Sau đây là các trường hợp trong mô phỏng:
- Một mức ngưỡng và không có mức ưu tiên trong mạng
- Một mức ngưỡng và có hai mức ưu tiên
4.4 Xây dựng kịch bản mô phỏng
Với các thông số giả định như trên. Việc mô phỏng sẽ xây dựng một kịch bản mô phỏng
bằng cách tạo ra các đối tượng để mô phỏng. Và việc đầu tiên là tạo các node mạng.
Set i 1
While { $i <= 14 } {
Set c($i) [$ns ObsHybridNode $ncc $ndc ChannelScheduler/LAUCVF]
Incr i
}
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -53- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Nhưng dòng lệnh trên sẽ tạo ra 14 node mạng với cách đánh số là c(1), c(2),…,c(14); loại
node là node kết hợp. Số kênh dữ liệu là ndc và số kênh điều khiển là ncc. Lập lịch biên
theo kiểu LAUCVF.
Kế đến là thiết lập số lượng kênh dữ liệu và kênh điều khiển bằng các dòng lệnh sau:
Set ndc 1 ; một kênh dữ liệu
Set ncc 1 ; một kênh điều khiển
Sau đó sẽ xây dựng các liên kết trong mạng góp phần tạo nên một topo mạng hoàn chỉnh.
$ Ns duplex-obs-link $c(1) $c(2) $ncc $ndc 1100 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(1) $c(3) $ncc $ndc 1600 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(1) $c(8) $ncc $ndc 2800 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(2) $c(3) $ncc $ndc 600 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(2) $c(4) $ncc $ndc 1000 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(3) $c(6) $ncc $ndc 2000 ChannelScheduler/LAUCVF
$ Ns duplex-obs-link $c(4) $c(5) $ncc $ndc 600 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(4) $c(11) $ncc $ndc 2400 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(5) $c(6) $ncc $ndc 1100 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(5) $c(7) $ncc $ndc 800 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(6) $c(10) $ncc $ndc 1200 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(6) $c(13) $ncc $ndc 2000 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(7) $c(8) $ncc $ndc 700 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(8) $c(9) $ncc $ndc 700 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(9) $c(10) $ncc $ndc 900 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(9) $c(12) $ncc $ndc 500 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(9) $c(14) $ncc $ndc 500 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(11) $c(12) $ncc $ndc 800 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(11) $c(14) $ncc $ndc 800 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(12) $c(13) $ncc $ndc 300 ChannelScheduler/LAUCVF
$ns duplex-obs-link $c(13) $c(14) $ncc $ndc 300 ChannelScheduler/LAUCVF
Với các dòng lệnh trên tác giả đã tạo ra các liên kết trong mạng node các node tương
ứng với mô hình mạng NSFNET như hình 4.1. Các liên kết này đều là song hướng
duplex-obs-link và có cùng số lượng kênh điều khiển ncc cũng như kênh dữ liệu
ndc. Các khoảng cách được tính bằng km tương ứng như topo mạng NSFNET. Còn giải
thuật lập lịch kênh là LAUCVF.
Sau khi tạo ra được một topo mạng tác giả sẽ thiết lập các thông số mạng giống như giả
định ban đầu bằng các dòng lệnh sau:
Connector/ObsLink dc_bandwidth 10Gb; băng thông kênh dữ liệu
Connector/ObsLink cc_bandwidth 10Gb; băng thông kênh điều khiển
Agent/Burstifier set max_db_size_ [expr 1250*$number]; đóng gói theo
kiểu kích thước tối đa với number là số lượng gói tin trong 1 burst
Agent/Burstifier set bhp_size_ 64; thiết lập kích thước gói điều
khiển là 64 byte
Agent/OXC switch_time 10us; thời gian chuyển mạch là 10us
Agent/SCU max_bhp_proc_time 2.5us; thời gian xử lý gói điều khiển là 2.5us
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -54- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Agent/Burstifier set max_segmentations_ 10; số lượng đoạn trong một burst
Agent/Burstifier set min_segmentable_size_ 1250; kích thước nhỏ nhất của mỗi
đoạn
Agent/Burstifier set segmentation_ true; cho phép giải quyết xung đột
bằng phân đoạn burst
Kế đến tác giả sẽ đưa lưu lượng có tải là 0.5 Erlang vào mạng. Công thức tính tải vào
mạng được sử dụng là công thức tính tải được để cập đến trong chương 4.
set load 0.5 ; tải bằng 0.5 Erlang
Đưa lưu lượng tải vào mạng bằng các vòng lặp trong kịch bản. Lưu lượng đưa vào mạng
theo phân phối Poisson.
set rate [expr $load*$ndc*[Connector/ObsLink dc_bandwidth]/$n_app]; tốc độ của
mỗi luồng lưu lượng được tính ta từ tải đưa vào mạng
#k chỉ ra mức dịch vụ
set k 0
while {$k < 2} {
set i 1
while {$i <= 14} {
set j 1
while {$j <= 14} {
if {$i != $j} {
set Poi($i$j$k) [new Application/Traffic/Poisson]; lưu lượng phân phối poisson
$Poi($i$j$k) set rate_ $rate
$Poi($i$j$k) set packetSize_ 1250
#creat udp to attach traffic
set udp($i$j$k) [$c($i) set burstifier_([$c($j) id]:$k)]; đặt lưu lượng trên
tất cả các cặp node
$Poi($i$j$k) attach-agent $udp($i$j$k)
$udp($i$j$k) set-traffic-generator $Poi($i$j$k)
$ns at 0.0 "$udp($i$j$k) start"; cho phép bắt đầu chạy các lưu lượng khi mới
chạy mô phỏng
}
incr j
}
incr i
}
incr k
}
Trong đoạn code trên, k là số lượng mức dịch vụ được đưa vào mạng. Đặt k = 1 và k = 2
cho các trường hợp mô phỏng bên dưới.
Đến đây hoàn tất việc tạo ra topo mạng và đưa lưu lượng vào mạng. Bây giờ đến bước kế
tiếp là chạy kịch bản mô phỏng.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -55- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Bắt đầu
Burstsize = 50
Seed = 12345
Sai
Burstsize =
Burstsise <= 1200 Đúng burstsize + 50
Seed = 12345
Sai
Bắt đầu
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -56- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Segment
0.08
0.07
0.06
Xác suất mất gói
0.05
0.04
0.03
0.02
0.01
0
0
0
0
00
00
00
20
10
30
40
50
60
70
80
90
10
11
12
Hình 4.3: Xác suất mất gói so với các kích thước burst khác nhau trong mạng dùng rớt
hoàn toàn burst và phân đoạn burst trong việc giải quyết xung đột
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -57- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
0.2
Độ trễ end-to-end (s)
0.15
0.1
0.05
0
0
0
0
00
00
00
0
90
10
20
30
40
50
60
70
80
10
11
12
Kích thước burst (gói)
Hình 4.4: Độ trễ end-to-end trung bình so với các kích thước burst
Trong trường hợp một lớp dịch vụ hay một mức ưu tiên, chỉ có một mức ngưỡng
cho kích thước burst được sử dụng cho tất cả các bộ đóng khối của tất cả các node biên
trong mạng. Xác suất mất gói và xác suất mất gói trong mạng được phân tích qua nhiều
mức ngưỡng khác nhau với tải vào mạng bằng nhau và băng 0.5 Erlang. Từ kết quả nhận
được ta thu được giá trị tốt nhất cho mức ngưỡng với tải cho trước trong một mạng cho
trước.
Hình 4.3 vẽ ra sự tương quan giữa kích thước burst và xác suất mất gói trong mạng
với hai cách giải quyết xung đột khác nhau là rớt toàn bộ burst (Drop) và phân đoạn burst
(Segment) được đưa vào mạng. Qua hình này ta còn thấy tác dụng của phân đoạn burst
đối với xác suất mất gói trong mạng. Hình 4.4 vẽ ra sự tương quan giữa kích thước burst
và độ trễ end-to-end. Trong luận văn này chỉ xem xét các gói đến có kích thước cố định
nên kích thước của burst được tính bằng số lượng gói trong nó.
Từ hình 4.3 ta thấy rằng:
Thứ nhất, nếu trong mạng sử dụng cách rớt toàn bộ burst trong việc giải quyết xung
đột thì kích thước burst nằm trong khoảng từ 300 đến 650 gói cho xác suất mất gói nhỏ
nhất. Qua hình vẽ ta cũng thấy một khi kích thước burst quá nhỏ, số lượng burst trong
mạng sẽ tăng lên, xung đột trong mạng cũng tăng lên theo dẫn đến xác suất mất gói tăng
lên nhưng số lượng gói rớt trong mỗi lần xung đột nhỏ. Ngược lại, một khi kích thước
burst quá lớn, số lượng burst trong mạng giảm đi, số lượng xung đột trong mạng giảm
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -58- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
theo nhưng mỗi lần xung đột xảy ra số lượng gói mất là rất lớn. Cho nên kích thước burst
nằm trong khoảng vừa nêu trên có thể nói là tốt nhất trong trường hợp này.
Thứ hai, nếu trong mạng sử dụng cách phân đoạn burst trong việc giải quyết xung
đột thì kích thước burst nằm trong khoảng từ 350 đến 750 gói thì cho xác suất mất gói
nhỏ nhất.
Nhưng liệu kích thước burst nằm trong khoảng nêu trên có thực sự là phù hợp, ta
hãy xem hình 4.4. Ta thấy khi kích thước burst tăng lên thì độ trễ end-to-end cũng tăng
lên theo. Điều này cũng dễ hiểu, khi kích thước burst tăng lên nghĩa là cần thời gian chờ
để cho số lượng gói đến đủ để tạo thành một burst. Độ trễ end-to-end ảnh hưởng rất lớn
đối với các dịch vụ yêu cầu đáp ứng thời gian thực. Với một yêu cầu về độ trễ trung bình
ta có thể có được cận trên của kích thước burst. Và kích thước tốt nhất của burst chắc
chắn có thể tìm ra trong điều kiện các thông số của mạng hay yêu cầu dịch vụ đều biết.
Qua đó cũng cho thấy trong việc xây dựng mạng OBS nhất thiết phải có các bộ đóng khối
dựa trên bộ định thời. Việc đóng khối cho các dịch vụ yêu cầu thời gian thực như thoại
hay video on demand thì cần bộ đóng khối kiểu dựa trên bộ định thời còn việc đóng khối
cho các dịch vụ không yêu cầu về thời gian thực nhưng yêu cầu nghiêm ngặt về mất mát
gói như dịch vụ dữ liệu thì cần bộ đóng khối dựa trên mức ngưỡng tối đa.
4.5.2 Một mức ngưỡng và có hai mức ưu tiên
Trong trường hợp hai mức ưu tiên và một mức ngưỡng, ta đánh giá xác suất mất gói
và số lượng xung đột cho nhiều mức tải và mức ngưỡng kích thước burst khác nhau. Hai
mức ưu tiên là mức ưu tiên số 0 và mức ưu tiên số 1. Mức ưu tiên số 1 được xem là mức
ưu tiên cao hơn. Chúng ta giả sử rằng tỉ số lưu lượng của hai mức dịch vụ là bằng nhau.
0.06
0.05
0.04
0.03
0.02
0.01
0
0
00
00
00
00
00
0
0
10
20
30
40
50
60
70
80
90
14
10
11
12
13
Hình 4.5: Xác suất mất gói của từng mức dịch vụ đối với các kích thước burst khác nhau
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -59- SVTH: Đoàn Khánh Tân Thanh
Chương IV – Thực hiện mô phỏng quá trình đóng khối trong mạng chuyển mạch khối quang OBS
Từ hình 4.5 ta thấy được lớp dịch vụ có mức ưu tiên cao hơn sẽ cho xác suất mất gói
thấp hơn so với lớp dịch vụ có mức ưu tiên thấp hơn. Từ hình vẽ trên ta thấy trong mạng
có hai mức dịch vụ thì mức ngưỡng tốt nhất cho xác suất mất gói thấp nhất đối với mức
ưu tiên số 1 là 200 đến 700 còn đối với mức ưu tiên số 0 là 550 đến 750.
4.6 Kết luận
Qua hai bài mô phỏng với các kết quả nhận được và những nhận xét đối với từng bài
mô phỏng có thể đi đến khẳng định rằng tồn tài một dải kích thước burst cho xác suất mất
gói thấp nhất. Còn kích thước burst là bao nhiêu thì tuỷ thuộc vào từng topo mạng cùng
với những thông số kèm theo của nó.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -60- SVTH: Đoàn Khánh Tân Thanh
Kết luận và hướng mở của đề tài
Đề tài có thể được mở rộng bằng cách xem xét số lượng bước sóng nhiều hơn và xây
dựng mạng OBS kết hợp hai bộ đóng khối dựa trên mức ngưỡng và dựa trên bộ định thời.
Thêm vào đó phần mềm mô phỏng này có thể được sử dụng cho việc mô phỏng các bài
toán khác của OBS.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -61- SVTH: Đoàn Khánh Tân Thanh
Tài liệu tham khảo
[2]C. Qiao and M. Yoo. “Optical burst switching (OBS) - a new paradigm for an
optical Internet.”, Journal of High Speed Networks, 8(1):69-84, 1999
[3] Würzburg “Static Lightpath Routing in IP over WDM Networks”, Germany - July
24, 2001
[5] X. Lu and B. Mark, “A New Performance Model of Optical Burst Switching with
Fiber Delay Lines”, In Proceedings of IEEE ICC, volume 2, pages 1365-1369, 2003
[6] Vinod M. Vokkarane, “Design and analysis of architectures and protocols for
optical burst switched networks”, the University of Texas at Dallas, August 2004.
[7] D. Morato, J. Aracil, L.A. Diez, M. Izal, and E. Magana. “On linear prediction of
internet traffic for packet and burst switching networks”, In proceedings of Tenth
International Conference on Computer Communications and Networks, pages 138-143,
2001.
[8] J. Turner. “Terabit burst switching”, Journal of High Speed Networks, 1999
[9] C. Qiao. “Labeled optical burst switching for IP-over-WDM integration”, IEEE
Communications Magazine, 38(9):104-114, September 2000
[10] B. Kim and Y. Cho and J. Lee and Y. Choi and D. Montgomery. “Performance of
Optical Burst Switching Techniques in Multi-Hop Networks”, In Proceedings of
GLOBECOM, volume 3, pages 2772-2776, 2002
[11] M. Iizuka and M. Sakuta and Y. Nishino and I. Sasase. “A Scheduling Algorithm
Minimizing Voids Generated by Arriving Bursts in Optical Burst Switched WDM
Network”, In Proceedings of GLOBECOM, volume 3, pages 2736-2740, 2002
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -62- SVTH: Đoàn Khánh Tân Thanh
Tài liệu tham khảo
[16] Eitan Altman and Tania Jiménez “NS simulator for beginners”, December, 2003
[17] http://advanced.comms.agilent.com/insight/2001-08/Questions/traffic_gen.htm
[20] Trong luận văn còn kế thừa các chương trình mô phỏng được viết bởi ông Iban
Cereijo Grana và ông Jairo Chapela Matinez – trường Đại Học Vigo, Tây Ban Nha.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -63- SVTH: Đoàn Khánh Tân Thanh
Phụ lục A
PHỤ LỤC A
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -64- SVTH: Đoàn Khánh Tân Thanh
Phụ lục A
2 0.10929
2.1 0.11475
2.2 0.12022
2.3 0.12568
2.4 0.13115
2.5 0.13661
2.6 0.14208
2.7 0.14754
2.8 0.15301
2.9 0.15847
3 0.16393
Bảng: Giá trị tốc độ trung bình của mỗi luồng lưu lượng tương ứng với tải
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -65- SVTH: Đoàn Khánh Tân Thanh
Phụ lục B
PHỤ LỤC B
1. Cài đặt phần mềm NS
Sau đây là cách cài đặt phần mềm NS2, phiên bản NS 2.28
Yêu cầu máy tính phải có hệ điều hành Linux (Fedora Core 1, 2, 3 hay Ubuntu 7.04…).
Bước 1 : Download miễn phí file ns-2.28allinone.gz.tar tại www.isi.edu
Bước 2 : Chép phần file này vào thư mục muốn cài đặt. Giả sử là /home/study
Bước 3 : Tại câu nhắc lệnh của thư mục này đánh lệnh giải nén
[root ~]#tar xzvf ns-2.28allinone.gz.tar
Sau lệnh này một thư mục được giải nén được tạo ra /home/study/ns-
2.28allinone
Bước 4 : Vào thư mục /home/study/ns-2.28allinone đánh lệnh cài đặt
[root ~]#./install
2. Cài đặt OBS4NS
Yêu cầu máy tính phải cài đặt sẵn NS2.28
Bước 1: Copy file này vào thư mục /home/study/ns-2.28allinone/ns-2.28
Giải nén file này bằng lệnh
[root ~]#tar xzvf obs.gz.tar
Bước 2: Vào thư mục /home/study/ns-2.28allinone/ns-2.28 mở file Makefile và thêm một
số dòng như sau
OBS_PATH = ../../ns4obs
OBJ_CC = \
...
$(OBS_PATH)/cpp/arch/typeswitch.o \
$(OBS_PATH)/cpp/arch/CoSclassifier.o \
$(OBS_PATH)/cpp/arch/OBSlink.o \
$(OBS_PATH)/cpp/arch/OBSswitch.o \
$(OBS_PATH)/cpp/arch/OXC.o \
$(OBS_PATH)/cpp/arch/SCU.o \
$(OBS_PATH)/cpp/arch/burstifier.o \
$(OBS_PATH)/cpp/arch/deburstifier.o \
$(OBS_PATH)/cpp/channelscheduler/channelscheduler.o \
$(OBS_PATH)/cpp/channelscheduler/LAUCscheduler.o \
$(OBS_PATH)/cpp/channelscheduler/LAUCVFscheduler.o \
$(OBS_PATH)/cpp/channelscheduler/LAUCVFMscheduler.o \
$(OBS_PATH)/cpp/channelscheduler/FFUCscheduler.o \
$(OBS_PATH)/cpp/traffgen/expoo2.o \
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -66- SVTH: Đoàn Khánh Tân Thanh
Phụ lục B
$(OBS_PATH)/cpp/stats/stats.o \
$(OBS_PATH)/cpp/stats/stat_entry.o \
$(OBS_PATH)/cpp/stats/Batches.o \
$(OBS_PATH)/cpp/stats/SmplStatDrved.o \
$(OBS_PATH)/cpp/stats/SmplStat.o \
$(OBS_PATH)/cpp/random/beta.o \
$(OBS_PATH)/cpp/random/IPlen.o \
$(OBS_PATH)/cpp/global.o \
$(OBS_PATH)/cpp/debug.o \
$(OBS_PATH)/cpp/OBSpacket.o \
$(OBS_PATH)/cpp/OBSroute.o
NS_TCL_LIB = \
...
$(OBS_PATH)/tcl/lib/ns-obs-lib.tcl \
$(OBS_PATH)/tcl/lib/ns-obs-defaults.tcl \
$(OBS_PATH)/tcl/lib/ns-obs-node.tcl \
$(OBS_PATH)/tcl/lib/ns-obs-link.tcl \
$(OBS_PATH)/tcl/lib/ns-obs-stats.tcl
Bước 3: Mở file /tcl/lib/ns-packet.tcl và thêm một số dòng như sau
foreach prot {
AODV
ARP
....
MIP
OBS_BHP // ađadir esta línea y la siguiente.
OBS_DB
Ping
....
};
Bước 4: Mở file /common/packet.h và thêm một số dòng như sau
enum packet_t {
PT_TCP,
PT_UDP,
......
PT_OBS_BHP,
PT_OBS_DB,
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -67- SVTH: Đoàn Khánh Tân Thanh
Phụ lục B
name_[PT_NTYPE]= "undefined";
}
Bước 5: Tại câu nhắc lệnh của thư mục /home/study/ns-2.28allinone/ns-
2.28 đánh lệnh make
[root ~]#make
Đến đây là hoàn tất quá trình cài đặt.
GVHD: Th.S Nguyễn Huỳnh Minh Tâm -68- SVTH: Đoàn Khánh Tân Thanh