CHƯƠNG 4: ĐÁNH GIÁ HIỆU SUẤT CỦA MẠNG 802.15.3
4.1. Bộ mô phỏng mạng NS-2
4.1.4 Tệp dấu vết (Trace files)
Dữ liệu ra sau khi mô phỏng với NS-2 thường được lưu trong một tệp, tệp này được gọi là tệp dấu vết (trace file). Tệp dấu vết chứa thông tin về các sự kiện của gói tin xảy ra trong suốt thời gian mô phỏng theo từng tầng:
tầng AC, tầng mạng, tầng giao vận.
Sau khi mô phỏng thành công, tệp dấu vết sẽ chứa các thông tin chi tiết về những gì xảy ra và xảy ra khi nào. Có thể thực hiện rất nhiều phân tích khác nhau dựa vào file này.
Như đã nói trước đây, bộ mô phỏng NS-2 là mã nguồn mở. Điều này có nghĩa là trong trường hợp cần thiết, muốn tăng lượng thông tin trong file dấu vết hoàn toàn có thể sửa đổi mã nguồn của NS-2 để thực hiện điều này.
4.2 Triển khai mô phỏng và các kết quả
Để tìm hiểu mạng không dây theo chuẩn IEEE 802.15.3, trong phần này sẽ giới thiệu mục đích mô phỏng, mô hình và các thông số mô phỏng, các phương pháp định tuyến, đồng thời trình bày kết quả mô phỏng, phân tích và đánh giá kết quả thực hiện.
4.2.1 Mục đích mô phỏng
Đánh giá hiệu suất mạng, thông qua các tham số hiệu suất cụ thể, bao gồm: tỉ lệ phân phát gói, Tỉ lệ kết nối thành công, Hiệu suất truyền của chuẩn 802.15.3 với các cơ chế sử dụng trong mạng với trường hợp 2 node. tiếp theo là đánh giá hiệu suất của 802.15.3 cùng với các cơ chế trên trong môi trường đa node để xem xét tác động của yếu tố đa node đến việc hiệu suất thực thi.
Cuối cùng là so sánh hiệu suất của chuẩn 802.15.3 so với các chuẩn 802.15.4 và 802.11 để thấy được giá trị của việc sử dụng băng tần siêu rộng (UWB) trong chuẩn 802.15.3 so với các chuẩn cá nhân khác và chuẩn mạng chung.
4.2.2 Mô hình và các thông số mô phỏng a) Mô hình:
Định nghĩa các kịch bản: Bao gồm các mô-đun lựa chọn các giao thức định tuyến, các phương thức kết nối, lập lịch các sự kiện ví dụ như khởi đầu trạm điều khiển, trạm làm việc trong mạng, các kiểu lan truyền, hàng đợi, beacon …
Để so sánh hiệu suất thực thi, với mong muốn đánh giá được hiệu suất của chuẩn 802.15.3, bởi vậy tôi thực hiện trên 2 node, bên nhận và bên gửi, sau đó là đưa thêm các node khác để xem tác động của các điểm lên hiệu suất thực thi của chúng.
Hình 37 dưới đây là mô hình được sử dụng trong việc đánh giá hiệu suất.
Trong đó các node mạng được đánh số là 0, 1,…,n; node 0 là trạm điều khiển (PNC), các node còn lại là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở trên node 0, Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất, được cấu hình như sơ đồ sau:
LossMonitor
1 0
...
n
UDP
Mpeg-4
node
Traffic source agent
Hình 37: Mô hình mạng của chuẩn 802.15.3 b)Mô hình hàng đợi
Một hàng đợi đầu ra của node được thực thi như một phần của đối tượng simplex link (liên kết 1 chiều). Các packet ra khỏi hàng đợi sẽ được chuyển đến đối tượng Delay để thực thi trì hoãn liên kết. Các packet bị drop (bị bỏ) khỏi hàng đợi sẽ được gửi đến Agent/Null và bị huỷ tại đây. Cuối cùng, đối tượng Thời gian tồn tại TTL tính giá trị TTL cho từng packet và cập nhật giá trị TTL mới. Hàng đợi trong các mô phỏng này là: Queue/DropTail/PriQueue (Khởi tạo hàng đợi ưu tiên chứa các đỉnh chờ duyệt).
1 0
Simplex Link
Queue Link::
entry
Delay TTL
Agent/Null Hình 38: Mô hình hàng đợi c) Các thông số :
Tỉ lệ phân phát gói (Packet delivery ratio): Là tỉ lệ giữa các gói nhận được trên gói truyền đi trong phân tầng MAC.
Trễ chặng (Hop delay): Thời gian truyền một gói từ một trạm đến một trạm láng giềng gọi là một “trễ chặng”, bao gồm t hời gia n t h ự c hiện toàn bộ các quá trình cần thiết (thời gian chờ cũng như là thời gian truyền), Thời gian này được tính trung bình trên toàn bộ quá trình thực hiện từ lúc bắt đầu đến lúc kết thúc thời gian thực hiện mô phỏng. Nó không những được dùng để đo khả năng truyền dữ liệu mà còn là thông số chỉ thị gián tiếp khả năng của tầng MAC. Tầng MAC phải điều khiển các gói từng bước từng bước một. Vì vậy “trễ chặng” càng lớn thì chứng tỏ hiệu quả của MAC càng nhỏ.
Tỉ lệ kết nối thành công (successful association rate): Là tỉ lệ kết nối thành công giữa các trạm làm việc với trạm điều khiển trên tổng số các trạm muốn kết nối với trạm điều khiển.
Hiệu suất truyền (Association efficency): Số lần thực hiện liên kết thành công trên số lượng trung bình mà các trạm dự định truyền.
4.2.3 Thiết lập mô phỏng
Mô hình truyền thông: Các kết nối truyền UDP/MPEG4, UDP/CBR (Constant Bit Rate) được thiết lập giữa các node 0 và 1,..n. Trong đó, node 0 là trạm điều khiển (PNC), các node còn lại là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở trên node 0, Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất như trên hình 38.
Đoạn lệnh thiết lập như sau:
set udp0 [new Agent/UDP]
$udp0 set fid_ 1
set vdo0 [new Application/Traffic/MPEG4]
$vdo0 set initialSeed_ $vdo_seed
$vdo0 set rateFactor_ $vdo_rate_factor
$vdo0 attach-agent $udp0
$ns_ attach-agent $node(1) $udp0 set sink0 [new Agent/LossMonitor]
$ns_ attach-agent $node(0) $sink0
$ns_ connect $udp0 $sink0
Đoạn mã trên tạo agent UDP và gắn vào node(1) bằng thủ tục attach-agent.
Tạo ra agent LossMonitor, hoạt động như một traffic sink và gắn vào node(0).
Hai agent được nối lại bằng phương thức connect.
LossMonitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất. Một thủ tục có thể được lập lịch để kiểm tra xoay vòng LossMonitor sau khoảng 0.1 giây và lưu lại thông tin throughput (thông lượng).
Trong hệ thống mô phỏng này, tôi trình bày đến 2 loại lưu lượng là MPG4, CBR khi sử dụng nhiều nút.
- Tốc độ bit cố định CBR
Đối tượng lưu lượng CBR tạo lưu lượng theo tốc độ đã định trước. Packet có kích cỡ nhất định. Mã OTcl để thực thi nguồn lưu lượng CBR như sau:
set cbr($i) [new Application/Traffic/CBR]
$cbr($i) set packetSize_ $cbr_pkt_size([expr $i + 1])
$cbr($i) set interval_ $cbr_pkt_interval([expr $i + 1])
$cbr($i) attach-agent $udp([expr $i + $nvdo])
$ns_ at $start_time "$cbr($i) start"
$ns_ at $traffic_end_time "$cbr($i) stop"
Các tham số:
• start: bắt đầu gửi packet theo các tham số cấu hình
• stop: ngừng gửi packet
• PacketSize_: cỡ cố định của packet được tạo trong mô phỏng này là 500,1000
• rate_: tốc độ truyền.
• interval_: (tuỳ chọn) khoảng cách thời gian giữa các gói 1ms
Giá trị bandwidth (băng thông) là 100Mb. queue_type (kiểu hàng đợi) là:
Queue/DropTail/PriQueue (Khởi tạo hàng đợi ưu tiên chứa các đỉnh chờ duyệt).
Môi trường mô phỏng: Môi trường mô phỏng được sử dụng là NS – 2.28, NS-2.1b9. Bộ mô phỏng NS – 2.28 đã được hỗ trợ một vài mô hình mạng không dây, ví dụ như: mạng được thực hiện theo chuẩn IEEE802.11, và IEEE 802.15 WPAN, NS2-1.b9 cho 802.15.3.
Mô phỏng đã được thực hiện trên máy tính để bàn với Intel Pentium IV processor, 1.8GHz, 256RAM, NS - 2.28 và NS-21b9.
Lý do, không sử dụng các phiên bản mới hiện nay như ns-2.34 bởi các chuẩn này chỉ được hỗ trợ trong các phiên bản ns-2.28 (đối với chuẩn 802.15.4) và ns-21b9 (đối với chuẩn 802.15.3), do đó chỉ trong các phiên bản này mới tích hợp một số hàm chức năng và các thông số cần thiết để mô phỏng được 2 chuẩn này, tất nhiên đối với mạng không dây phổ biến 802.11 có thể sử dụng bất kỳ phiên bản mới nào vì các phiên bản của ns-2 đều hỗ trợ các chuẩn không dây chung.
4.2.4 Kết quả mô phỏng
Để đánh giá hiệu suất của chuẩn 802153 chúng ta xem khả năng truyền tải của 802.15.3 qua mô phỏng, đối với chuẩn 802.15.3 chúng có 4 cơ chế cho việc truyền tải mpeg, tạo lịch hàng đợi, ta xem xét đến 4 cơ chế này như sau:
(1) Mô phỏng 1: Mô phỏng mạng 802.15.3 sử dụng bộ lập lịch hàng đợi dạng chuẩn (standard): WRR (Weighted Round Robin).
Hàng đợi theo thuật toán WRR: cơ chế này sử dụng nhiều hàng đợi khác nhau, các hàng đợi đều được phục vụ theo lượt. Điểm mấu chốt của cơ chế này là các hàng đợi được gắn một trọng số khác nhau, số lượng gói tin được phục vụ trong một lượt bằng với trọng số được gán cho hàng đợi đó.
Với mô phỏng 1, ta có các thông số như sau:
- Mô hình tương tự như hình 38 nhưng chỉ gồm có 2 node 0, 1. Trong đó, node 0 là trạm điều khiển (PNC), node 1 là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở node 0.
- Hàng đợi Queue/DropTail/PriQueue (hàng đợi ưu tiên chứa các đỉnh chờ duyệt) chứa lưu lượng UDP truyền luồng Video MPG4 từ nguồn node(1).
- Agent UDP và gắn vào node(1).
- Agent Loss Monitor, hoạt động như một traffic sink và gắn vào node(0).
Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất.
- Giá trị bandwidth (băng thông) và delay (trì hoãn) tương ứng có thể là 100Mb và 0.1ms. NS-2 hỗ trợ nhiều giá trị queue_type (kiểu hàng đợi) như RED, Drop Tail… Trong các mô phỏng này, tôi sử dụng kiểu hàng đợi Drop Tail như hình 39. Như vậy, ở phía Node (0) sẽ nhận được các gói tin từ hàng đợi Queue/DropTail/PriQueue đặt ở bên node (1).
Các tham số:
• start: bắt đầu gửi packet theo các tham số cấu hình là 1ms
• stop: ngừng gửi packet traffic_end_time là: 11ms
• PacketSize_: cỡ cố định của packet được tạo trong mô phỏng này là 1Mb.
• Chiều dài khe đảm bảo an toàn gts_time là: 4000.
• rateFactor_: tốc độ truyền 8 Mbps
• initialSeed_ : (tuỳ chọn) khoảng cách thời gian giữa các gói 0.401ms Sau đây chúng ta có kết quả mô phỏng ở node (0) như sau:
THÔNG LƯỢNG TRUNG BÌNH THEO CƠ CHẾ HÀNG ĐỢI WRR
0 2 4 6 8 10 12 14 16 18 20
1 1.7 2.4 3.1 3.8 4.5 5.2 5.9 6.6 7.3 8 8.7 9.4 10.1 10.8 11.5
Thời gian mô phỏng (s)
Thông lượng trung bình (Mbps)
Hình 39: Kết quả mô phỏng cơ chế hàng đợi WRR
(2) Mô phỏng 2: Mô phỏng mạng theo chuẩn 802.15.3 sử dụng bộ lập lịch hàng đợi SRPT (Shortest Remaining Processing Time) để ưu tiên truyền Gói tin có thời gian xử lý ngắn nhất trước.
Với mô phỏng 2, ta có các thông số như sau:
- Mô hình tương tự như hình 38 nhưng chỉ gồm có 2 node 0, 1. Trong đó, node 0 là trạm điều khiển (PNC), các node 1 là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở node 0.
- Hàng đợi Queue/DropTail/PriQueue (hàng đợi ưu tiên chứa các đỉnh chờ duyệt) chứa lưu lượng UDP truyền luồng Video MPG4 từ nguồn node(1).
- Agent UDP và gắn vào node(1).
- Agent Loss Monitor, hoạt động như một traffic sink và gắn vào node(0).
Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất.
- Giá trị bandwidth (băng thông) và delay (trì hoãn) tương ứng có thể là 100Mb và 0.1ms. NS-2 hỗ trợ nhiều giá trị queue_type (kiểu hàng đợi) như RED, Drop Tail… Trong các mô phỏng này, tôi sử dụng kiểu hàng đợi Drop Tail như hình 39. Như vậy, ở phía Node (0) sẽ nhận được các gói tin từ hàng đợi Queue/DropTail/PriQueue đặt ở bên node (1).
Các tham số:
• start: bắt đầu gửi packet theo các tham số cấu hình là 1ms
• stop: ngừng gửi packet traffic_end_time là: 11ms
• PacketSize_: cỡ cố định của packet được tạo trong mô phỏng này là 1Mb.
• Chiều dài khe đảm bảo an toàn gts_time là: 28.
• Kích cỡ superframe superframe_size là 8000.
• Kiểu của superframe là: "use-dynamic-superframe".
• rateFactor_: tốc độ truyền 8 Mbps
• initialSeed_ : (tuỳ chọn) khoảng cách thời gian giữa các gói 0.401ms Sau đây chúng ta có kết quả mô phỏng ở node (0) như sau:
THÔNG LƯỢNG TRUNG BÌNH THEO CƠ CHẾ HÀNG ĐỢI SRPT
0 2 4 6 8 10 12 14 16 18 20
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5 9 9.5 10 10.5 11 11.5 12
Thời gian mô phỏng (s)
Thông lượng trung bình (Mbps)
Hình 40: Kết quả mô phỏng cơ chế hàng đợi SRPT
(3) Mô phỏng 3: Mô phỏng mạng 802.15.3 sử dụng bộ lập lịch hàng đợi CBS (Constant Bandwitdh Server) tại tầng MAC.
Với mô phỏng 3, ta có các thông số như sau:
- Mô hình tương tự như hình 38 nhưng chỉ gồm có 2 node 0, 1. Trong đó, node 0 là trạm điều khiển (PNC), các node 1 là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở node 0.
- Hàng đợi Queue/DropTail/PriQueue (hàng đợi ưu tiên chứa các đỉnh chờ duyệt) chứa lưu lượng UDP truyền luồng Video MPG4 từ nguồn node(1).
- Agent UDP và gắn vào node(1).
- Agent Loss Monitor, hoạt động như một traffic sink và gắn vào node(0).
Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất.
- Giá trị bandwidth (băng thông) và delay (trì hoãn) tương ứng có thể là 100Mb và 0.1ms. NS-2 hỗ trợ nhiều giá trị queue_type (kiểu hàng đợi)
như RED, Drop Tail… Trong các mô phỏng này, tôi sử dụng kiểu hàng đợi Drop Tail như hình 39. Như vậy, ở phía Node (0) sẽ nhận được các gói tin từ hàng đợi Queue/DropTail/PriQueue đặt ở bên node (1).
Các tham số:
• start: bắt đầu gửi packet theo các tham số cấu hình là 1ms
• stop: ngừng gửi packet traffic_end_time là: 11ms
• PacketSize_: cỡ cố định của packet được tạo trong mô phỏng này là 1Mb.
• Chiều dài khe đảm bảo an toàn gts_time là: 28.
• Kích cỡ superframe superframe_size là 8000.
• Kiểu của superframe là: "use-dynamic-superframe".
• rateFactor_: tốc độ truyền 8 Mbps
• initialSeed_ : (tuỳ chọn) khoảng cách thời gian giữa các gói 0.401ms
Sau đây chúng ta có kết quả mô phỏng ở node (0) như sau:
THÔNG LƯỢNG TRUNG BÌNH THEO CƠ CHẾ HÀNG ĐỢI CBS
0 2 4 6 8 10 12 14 16 18 20
1 1.6 2.2 2.8 3.4 4 4.6 5.2 5.8 6.4 7 7.6 8.2 8.8 9.4 10 10.6 11.2 11.8
Thời gian mô phỏng (s)
Thông lượng trung bình (Mbps)
Hình 41: Kết quả mô phỏng cơ chế hàng đợi CBS
Dựa vào kết quả mô phỏng trên ta thấy chế độ này cho ta sự ổn định về thông lượng hơn các chế độ trên và nhưng tốc độ phát có yếu hơn.
(4) Mô phỏng 4: Mô phỏng mạng 802.15.3 sử dụng bộ lập lịch hàng đợi IRSA (Intelligent Reactive Scheduling Architecture - Kiến trúc Lập lịch Phản ứng Thông minh). Tham số Idle Time(thời gian nhàn rỗi – thời gian không tải) được phân bố sử dụng thuật toán WRR.
Với mô phỏng 3, ta có các thông số như sau:
- Mô hình tương tự như hình 38 nhưng chỉ gồm có 2 node 0, 1. Trong đó, node 0 là trạm điều khiển (PNC), các node 1 là trạm làm việc (DEV). Để tạo ra nguồn lưu lượng UDP, ở node 1 thiết bị sẽ truyền một luồng Video Mpeg-4 đến thiết bị ở node 0.
- Hàng đợi Queue/DropTail/PriQueue (hàng đợi ưu tiên chứa các đỉnh chờ duyệt) chứa lưu lượng UDP truyền luồng Video MPG4 từ nguồn node(1).
- Agent UDP và gắn vào node(1).
- Agent Loss Monitor, hoạt động như một traffic sink và gắn vào node(0).
Loss Monitor (Giám sát mất mát) có thể giám sát các packet đang được truyền, cũng như các packet bị mất.
- Giá trị bandwidth (băng thông) và delay (trì hoãn) tương ứng có thể là 100Mb và 0.1ms. NS-2 hỗ trợ nhiều giá trị queue_type (kiểu hàng đợi) như RED, Drop Tail… Trong các mô phỏng này, tôi sử dụng kiểu hàng đợi Drop Tail như hình 39. Như vậy, ở phía Node (0) sẽ nhận được các gói tin từ hàng đợi Queue/DropTail/PriQueue đặt ở bên node (1).
Các tham số:
• start: bắt đầu gửi packet theo các tham số cấu hình là 1ms
• stop: ngừng gửi packet traffic_end_time là: 11ms
• PacketSize_: cỡ cố định của packet được tạo trong mô phỏng này là 1Mb.
• Chiều dài khe đảm bảo an toàn gts_time là: 28.
• Kích cỡ superframe superframe_size là 8000.
• Kiểu của superframe là: "use-dynamic-superframe".
• rateFactor_: tốc độ truyền 8 Mbps
• initialSeed_ : (tuỳ chọn) khoảng cách thời gian giữa các gói 0.401ms
Sau đây chúng ta có kết quả mô phỏng ở node (0) như sau:
THÔNG LƯỢNG TRUNG BÌNH THEO CƠ CHẾ HÀNG ĐỢI IRSA
0 2 4 6 8 10 12 14 16 18
1 1.6 2.2 2.8 3.4 4 4.6 5.2 5.8 6.4 7 7.6 8.2 8.8 9.4 10 10.6 11.2 11.8
Thời gian mô phỏng (s)
Thông lượng trung bình (Mbps)
Hình 42: Kết quả mô phỏng cơ chế hàng đợi IRSA
Dựa vào kết quả mô phỏng trên ta thấy chế độ này cho ta sự ổn định về thông lượng hơn các chế độ trên và tốc độ truyền từ hàng đợi đến đích cho thông lượng khá cao và đều.
(5) Kết luật về 4 cơ chế của chuẩn 802153 cho mpeg: dựa vào các kết quả của 4 cơ chế trên ta có thể phân tích qua đồ thị sau:
SO SÁNH THÔNG LƯỢNG TRUNG BÌNH CỦA CÁC CƠ CHẾ HÀNG ĐỢI
0 2 4 6 8 10 12 14 16 18 20
1 1.7 2.4 3.1 3.8 4.5 5.2 5.9 6.6 7.3 8 8.7 9.4 10.1 10.8 11.5
Thời gian mô phỏng (s)
Thông lượng trung bình (Mbps)
WRR SRPT CBS IRSA
Hình 43: Kết quả tổng hợp so sánh các cơ chế hàng đợi