Các mạng Sensor với giá thành thấp, có khả năng triển khai trong nhiều điều kiện địa
lýkhí hậu phức tạp, đặc biệt là các khả năng xử lý cộng tác và chịu được các hư hỏng
sự cố đã đem lại một cuộc cách mạng trong lĩnh vực cảm biến và thu thập thông tin.
Điều này đã mạng lại nhiều lợi ích thiết thực cho cuộc sống, cho sản xuất và cho khoa
học. Trong tương lai, mạng Sensor có thể sẽ là một phương tiện cần thiết và thông
dụng như máy tính cá nhân và điện thoại di động hiện nay.
Trong tương lai mạng sensor hoàn toàn có thể được áp dụng ở nước ta, do đó việc
nghiên cứu tìm hiểu các vấn đề liên quan tới mạng là hết sức cần thiết.
86 trang |
Chia sẻ: lylyngoc | Lượt xem: 3420 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Vấn đề năng lượng trong mạng Wireless Sensor và đánh giá bằng mô phỏng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng C++ và ngôn ngữ hướng đối tượng Tcl (Otcl: object-
oriented tool command language).
NS-2 có một lịch sử khá dài, bắt nguồn từ các phần mềm REAL của UCB (1989) và
NEST của Colombia (1992). Đến năm 1995, NS-2 được phát triển trong dự án VINT
(Virtual InterNet Testbed hay nền kiểm thử Internet ảo). VINT là dự án hợp tác giữa
AT&T Reseach, Lawrence Berkeley National Laboratory, ETH TIK, Xerox PARC,
UCB-Berkeley và USC/ISI. Hiện nay, Ns đang tiếp tục được phát triển trong các dự án
SAMAN và CONSER, cùng với sự hợp tác của nhiều nhà nghiên cứu và ACIRI.
Những tổ chức đã đóng góp đáng kể vào NS-2 là UCB Daeledus, UMU Monarch và
Sun MicroSystems.
So với các phần mềm mô phỏng mạng khác, NS-2 có những ưu thế sau:
- NS-2 có mã nguồn mở miễn phí.
- NS-2 có kiến trúc mở, tạo điều kiện thuận lợi cho việc mở rộng
- NS-2 được phát triển từ các phần mềm nổi tiếng trên thế giới như REAL, NEST
nên nó có những điểm mạnh và đã khắc phục được những yếu điểm của các phần
mềm này
- NS-2 hỗ trợ các tính năng cơ bản của mạng IP, từ đó có thể phát triển thêm các
phần tử mạng.
- NS-2 có cấu trúc modul, rất thuận tiện cho việc nghiên cứu tìm hiểu và phát triển.
Nhìn từ phía người sử dụng , NS-2 là chương trình biên dịch mã Otcl được liên kết
tới thư viện C++ . Các đối tượng cơ sở như tcp, CBR,..được xây dựng trong C++. Đầu
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
vào NS-2 là tập mã lệnh Otcl , đầu ra là các tập tin mô phỏng tiến trình theo yêu cầu
được thể hiện trong tập lệnh Otcl.
Hình 3.1: Cấu trúc chương trình NS-2
Kết quả mô phỏng có thể quan sát bằng hình ảnh mô tả trực quan với ứng dụng Nam
( the Network Animator ), bằng đồ thị (sử dụng Xgraph) hoặc có thể được xử lý bằng
các tập lệnh tuỳ chọn. Với cấu trúc này, việc sử dụng NS-2 trở lên đơn giản hơn nhiều
so với sử dụng trực tiếp C++ nhưng vẫn có được những tính năng của C++.
Với những đặc điểm trên, NS-2 thực sự là một công cụ phần mềm hữu ích cho việc
học tập, nghiên cứu mạng thông tin, giúp cho việc thực hành mạng trở lên hiệu quả
hơn.
b) Cơ chế hoạt động của phần mềm NS-2
Hoạt động của NS-2 được chia thành hai phần là phần dữ liệu (được xây dựng trong
C++) và phần điều khiển (được xây dựng trong Otcl). Để giảm thời gian xử lý gói và
sự kiện, thời biểu sự kiện và các đối tượng thành phần mạng cơ bản trong phần số liệu
được viết và biên dịch bằng C++. Các đối tượng được biên dịch này được tạo sẵn và
được liên kết tới Otcl qua bộ thông dịch Otcl. Mỗi đối tượng C++ này được điều khiển
và được thiết lập các tham số thông qua một đối tượng điều khiển tương ứng trong
Otcl. Các đối tượng C++ không cần điều khiển hoặc chỉ hoạt động nội tại trong phần
C++ thì không cần liên kết đến Otcl. Tương tự, cũng có một số đối tượng (không nằm
trong phần dữ liệu) có thể hoạt động hoàn toàn chỉ trong Otcl. Các đối tượng điều
khiển trong Otcl được ánh xạ 1-1 tới các đối tượng cần điều khiển trong C++. Như
vậy, cấu trúc phân cấp các đối tượng này trong hai phần C++ và Otcl là tương tự nhau.
Quan hệ giữa C++ và Otcl được minh họa trên hình 3.2.
Tập lệnh
Otcl ( mã
nguồn )
Chương trình
biên dịch Otcl
Kết quả mô
phỏng
Các thư viện
C++
NS-2
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
Hình 3.2: Tính đối ngẫu giữa C++ và Otcl
Hình 3.3 chỉ ra kiến trúc NS-2. Trong kiến trúc này, người sử dụng (không phải
người phát triển NS-2) ở vị trí góc dưới bên trái. Dữ liệu đầu vào là tập lệnh Otcl được
phân tích bởi lớp Tcl. Việc thiết lập và chạy mô phỏng trong Tcl sử dụng các đối
tượng trong thư viện Otcl. Thời biểu các sự kiện và hầu hết các thành phần mạng hoạt
động trong C++ và được liên kết tới Otcl. Việc này được thực hiện bởi lớp tclcl.
Chương trình NS-2 có nhiều phiên bản chạy trên các hệ điều hành khác nhau và với
các yêu cầu cài đặt khác nhau. Trong đồ án này, phiên bản ns-allinone-2.27, chạy trên
Windows trong môi trường Cygwin/X được sử dụng để tìm hiểu một số các tính chất
của mạng Wireless Sensor. Cygwin/X cung cấp một giao diện chương trình ứng dụng
(API) giống như hệ điều hành UNIX trên khuôn dạng Windows do NS-2 không chạy
trực tiếp trên Windows.
Hình 3.3: Kiến trúc tổng quan của NS-2
Môi trường ns - 2 là công cụ hết sức linh hoạt trong việc nghiên cứu các đặc tính của
mạng cảm biến không dây (Wireless Sensor network) vì nó có sẵn các mô hình cho
mạng ad-hoc không dây, có ràng buộc về năng lượng. Trong ns - 2, một mạng Sensor
Thời biểu các sự
kiện
NS-2
Các
thành
phần
mạng
Tcl 8.0
Otcl
tclcl
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
có thể được xác định với nhiều tổ hợp các đặc tính như thực tế. Môi trường mạng di
động trong ns - 2, cung cấp sự hỗ trợ lẫn nhau giữa các giao thức như hình 3.12
Hình 3.4: Các giao thức được hỗ trợ trong NS-2 mô phỏng mạng không dây
Với cơ sở này, ta chỉ cần thêm vào NS-2 một số đối tượng và thuộc tính để mô
phỏng mạng Sensor.
3.3.2. Cơ sở phát triển mô phỏng mạng Sensor trên nền NS-2
Cơ sở duy nhất còn thiếu trong NS-2 cho mô phỏng mạng Sensor là việc định nghĩa
một "Phenomenon" (hiện tượng). Ví dụ như chất hoá học, âm thanh,... các đối tượng
này có thể di chuyển và kích hoạt các Sensor ở gần qua một kênh như phẩm chất
không khí hay rung động mặt đất. Khi một Sensor phát hiện tín hiệu từ một hiện tượng
trong kênh này, Sensor sẽ phản ứng tuỳ theo ứng dụng được định nghĩa bởi người sử
dụng NS-2. Các ứng dụng này sẽ quy định việc Sensor làm gì khi phát hiện ra hiện
tượng mục tiêu. Ví dụ, Sensor có thể định kỳ gửi thông báo đến một số điểm thu thập
số liệu nếu nó còn tiếp tục phát hiện thấy hiện tượng, hoặc có thể làm một số việc phức
tạp hơn như công tác với các Sensor lân cận để có được thông tin cụ thể chi tiết hơn về
hiện tượng trước khi cảnh báo người giám sát về một hiện tượng giả định. Mỗi mạng
Sensor có một ứng dụng duy nhất như giám sát động đất, môi trường, Phần mở rộng
NS-2 cung cấp các khả năng trình diễn các ứng dụng Sensor. Với các ứng dụng này,
chúng ta có thể nghiên cứu hoạt động của cơ sở hạ tầng mạng dưới các điều kiện khác
nhau. Cơ sở của việc xây dựng mô hình mạng Sensor trong NS-2 được minh hoạ trong
hình 3.5.
Lớp ứng
dụng
CBR
FTP
Telnet
Lớp giao
vận
TCP
UDP
Lớp mạng
DSDV
DSR
TORA
AODV
OLSR
Lớp liên
kết số liệu
802.11
TDMA
SMAC
Lớp vật lý
Các kiểu
phát vô
tuyến với
suy giảm
bậc 4 :
trong
không gian
tự do, mặt
đất hai tia,
bóng phủ.
Antent độ
lợi đơn.
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
Hình 3.5: Cơ sở xây dựng mô hình mạng Sensor sử dụng NS-2
Mô hình trình diễn của các hiện tượng trong NS-2 được xác định với các gói quảng
bá được chuyển qua một kênh được chỉ định. Phạm vi ảnh hưởng của hiện tượng là tập
hợp các nút có thể nhận được các gói Phenom quảng bá trên kênh này. Mô hình này sẽ
tuân theo quảng bá bất cứ kiểu phát và truyền nào (không gian tự do, mặt đất 2 tia hay
bóng phủ, bao gồm cả các cấu hình nút hiện tượng. Các kiểu phát này phủ sóng theo
dạng gần tròn nhưng các hình dạng khác cũng có thể có được bằng cách thay đổi phạm
vi của các gói Phenon và di chuyển một cách thích hợp một tập các nút hiện tượng
phát cùng kiểu.
Việc phát quảng bá các gói Phenom được hoàn thành nhờ "giao thức định tuyến
Phenom", quảng bá các gói Phenom với tốc độ xung xác định. Khi một gói Phenom
được nhận bởi một nút trên kênh Phenomenon (kênh hiện tượng), một thông báo về sự
kiện này sẽ được chuyển đến ứng dụng Sensor của nút đó.
3.3.3. Các định dạng mới trong NS-2
Giả sử có các nút hiện tượng (Phenomenon) kích hoạt các nút Sensor, lưu lượng các
nút Sensor tạo ra mỗi khi phát hiện thấy hiện tượng phụ thuộc vào chức năng của
mạng. Ví dụ, các mạng thiết kế để để hiệu chỉnh đích bằng hiệu ứng năng lượng sẽ tạo
ra nhiều lưu lượng Sensor đến Sensor hơn mạng thiết kế để cung cấp cho giám sát viên
các dữ liệu chưa qua xử lý. Chức năng này phụ thuộc vào ứng dụng của Sensor và phụ
thuộc vào đặc tính lưu lượng kết hợp với mạng được mô phỏng. Đối tượng và chức
năng được định nghĩa trong các file sau:
- Phenom / Phenom.cc, h: Chứa giao thức định tuyến Phenom sử dụng cho việc
phát tín hiệu từ các hiện tượng. Nó bao gồm các tham số cho tốc độ xung và kiểu
hiện tượng (Bụi cabon, động đất mạnh, động đất nhẹ, tiếng ồn hay loại chung). Các
kiểu này được đặt tên để nhận dạng các nguồn hiện tượng trong file trace (đầu ra
mô phỏng). Tốc độ xung là tham số duy nhất điều khiển việc phát tín hiệu từ một
hiện tượng.
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
Hình 3.6: Hình ảnh mô tả mạng Sensor (được lấy từ ứng dụng NAM trong NS-2) với
25 trạm Sensor được triển khai theo hình lưới trên diện vuông, 20 nút Phenomenon
(mô tả đám mây khí gas-hiện tượng cần cảm biến) di động và một trạm thu thập số
liệu (ở góc trên bên phải). Các nút sẫm màu (màu đỏ) là các nút đang cảm biến được
hiện tượng, các nút nhạt màu (màu xanh lá cây) là các nút không quan sát thấy hiện
tượng. Các vòng tròn to mô tả việcphát sóng tín hiệu của các nút.Cáckhối nhỏ màu
đen biểu thị các gói tin trong mạng.
- Senso nets-NRL / Senso agent.cc, h: định nghĩa các agent Sensor, các agent là
điểm cuối, nơi các gói thuộc lớp mạng được tạo ra và phân tách, xử lý . Các nút
Sensor sử dụng một tác nhân Sensor liên kết đến kênh Phenomenon để tiếp nhận
các gói tin Phenom và sử dụng một tác nhân TCP hay UDP để liên kết đến kênh
của mạng vô tuyến để tạo các gói tin được gửi đi từ ứng dụng Sensor. Các tác nhân
Sensor hoạt động như một ống dẫn, qua đó các gói tín Phenom được nhận và xử lý
bởi các ứng dụng Sensor. Các tác nhân Sensor không thực sự quan tâm đến nội
dung của gói Phenom, nó chỉ đơn giản đánh dấu các gói nhận được và chuyển đến
ứng dụng Sensor. Agent này được định nghĩa trong Sensor agent.cc.
- Sensornets-NRL / Sensorapp.cc, h : ứng dụng Sensor được định nghĩa trong file
này tận dụng màu nút và tạo ra các thông báo Sensor để chỉ ra nút tương ứng phát
hiện ra hiện tượng ( 4 biến môi trường có thể được sử dụng là:
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
SILENT_PHENOMENON, DISABLE_COLORS, MESG_SIZE và
TRANSMIT_FREQ). Cụ thể, khi nút đang nhận gói Phenom, ứng dụng này thay
đổi màu nút thành đỏ, kích thoạt một biến toàn cục "alarm" và gửi một thông báo
Sensor (MESG_SIZE byte) đến nút sink (nút thu thập số liệu) của kết nối UDP,
TCP sau mỗi chu kỳ là TRANSMIT_FREQ giây. Khi một nút không nhận được
một Phenom packet trong thời gian chờ (SILENT_PHENOMENON giây), thì màu
nút trở về màu xanh lá cây. Nếu màu nút được yêu cầu để biểu thị mức năng lượng
thay vì trạng thái cảnh báo Sensor thì ứng dụng bị tắt với việc đặt
DISABLE_COLOR.
- Sensornets-NRL / Phenom_packet.h: File này định nghĩa cấu trúc gói Phenom. Có
5 kiểu hiện tượng (CO, HEAVY - GEO, LIGHT - GEO, SOUND, and TEST -
PHENOMENON) tương ứng với cacbon monoxide (chất carbon monoxide CO),
Heavy Seismic actyvity (động đất mạnh), Light Seismic activy (động đất nhẹ),
Audible Sound (âm thanh), sime Phenomenon (kiểu chung). Các kiểu này có thể được
sử dụng mô phỏng với nhiều nút hiện tượng và có thể dễ dàng nhận ra và phân biệt với
các hiện tượng khác mà nút Sensor phát hiện, bằng cách nhìn vào file trace.
3.3.4. Thay đổi trong NS-2
Hình 3.7 ra sơ đồ cây NS - 2 mở rộng mô phỏng mạng Sensor với các bổ sung
(nhánh bên phải) và hiệu chỉnh (nhánh bên trái).
Các chỉnh sửa trong NS-2 được thực hiện trong các file sau :
- Trace / cmu-trace.cc, h: Lớp CMUTrace được sử dụng để in các phần quan trọng
của một gói vào file trace. Vì phần mở rộng sử dụng kiểu gói mới cho các hiện tượng
nên cần phải định dạng gói tương ứng trong file này.
- Tcl / lib / ns-lib.tcl: Thành phần này trình bày về cấu hình nút được chỉ ra trong tập
lệnh NS-2. Phần mở rộng sử dụng kiểu nút mới (các nút Sensor và Phenomenon). Vì
thế, đã thêm vào một số điểm vào chức năng định cấu hình nút (node-configure) để
phù hợp với các kiểu này.
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
Hình 3.7: Sơ đồ bổ sung và chỉnh sửa NS-2
- Tcl / lib / ns-mobilenode.tcl: Trong NS-2, dung lượng sẵn có cho việc lập mạng
không dây đa kênh được sử dụng để phát các loại tín hiệu hiện tượng khác nhau. Bằng
việc sử dụng kênh riêng cho các hiện tượng, ta có thể mô phỏng môi trường vật lý
riêng cho từng loại hiện tượng như trong thực tế. Như vậy, các nút Sensor cần 2 giao
diện: một với kênh 802.11 và một với kênh Phenom. Khả năng đa giao diện ("Multi -
homed") được bổ xung trong ns-mobilnode.tcl.
- Common / packet-h: Mỗi gói trong ns -2 được liên kết với một kiểu riêng tuỳ thuộc
vào giao thức tương ứng như TCP, ARP, AODV, FTP, .v.v..Vì giao thức phát tín hiệu
hiện tượng là mới nên phải định nghĩa kiểu gói tương ứng trong file tiêu đề packet.h.
NS-2.27/
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
- Mac/ Wireless-phy.cc: ns -2 có gồm mô hình năng lượng cho các nút không dây
được sử dụng để nghiên cứu lợi ích của các kỹ thuật duy trì năng lượng khác nhau.
Như việc nghỉ hoạt động hay tận dụng các mật độ mạng tối ưu. Mô hình này gồm các
đặc tính chỉ ra các yêu cầu công suất của các gói phát và nhận hay trạng thái rỗi trong
thời gian mạng không hoạt động tích cực. Việc cảm biến hiện tượng là một quá trình
có thể tiêu thụ năng lượng tại một tốc độ khác, nên đây là vấn đề quan trọng cần xem
xét. Trong mac / Wireless-phy.cc cung cấp khả năng chỉ ra công suất tiêu thụ của các
nút trong khi cảm biến các hiện tượng.
Một số sửa đổi khác được thực hiện ở mac / mac.cc, tcl / lib / ns-namsupp.tcl và
queue / priqueue.cc. Một số sửa chữa trong thủ tục định màu nút, bổ sung kiểu gói
Phenom vào tổ chức NS-2 được thực hiện để đơn giản hoá giao diện đến kênh
Phenomenon trên nút Sensor.
3.4. Thiết lập mã lập trình mô phỏng
3.4.1. Thiết lập kênh hiện tượng và kênh dữ liệu
Các nút Phenomenon sẽ phát trên một kênh khác với các nút Sensor để tránh sự tranh
chấp tại lớp vật lý. Mọi nút Phenomenon cần định cấu hình trên cùng một kênh ngay
cả khi chúng phát từ các kiểu hiện tượng khác nhau. Lệnh sau thiết lập kênh vô tuyến
và kênh của các hiện tượng (Kênh Phenomenon):
set chan 1 [new $val(chan)]
set chan 2 [new $val(chan)]
3.4.2. Thiết lập một giao thức MAC cho kênh Phenomenon
Chọn một lớp MAC sử dụng cho việc phát Phenomenom qua kênh Phenomenon.
Việc sử dụng 802.11 là không thích hợp vì kênh Phenomena là kênh tự nhiên nên nó
phát mà không cần điều khiển tắc nghẽn và tranh chấp.
Các lệnh sau thiết lập các thủ tục điều khiển truy nhập môi trường vô tuyến và môi
trường Phenomenon:
set val(mac) Mac/802 11
set val(PHENOMmac) Mac
3.4.3. Thiết lập các nút Phenomenon với giao thức "định tuyến" Phenom
Sử dụng nút-config giống như các nút di động nhưng chỉ rõ giao thức định tuyến
Phenom, các hiện tượng được phát đi theo các phương thức được định nghĩa trong
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
Phenom / Phenom.cc. Ngoài ra phải định hình kênh và lớp MAC trước khi chỉ ra việc
quảng bá Phenomenon. Một ví dụ thiết lập cấu hình nút Phenomenon mẫu như sau:
$ns node-config \
-adhocRouting PHENOM \
-Channel $chan 1 \
-llType LL \
-macType $val(PHENOMmac) \
-ifqType Queue/DropTail/PriQueue \
-ifqLen 50 \
-antType Antenna/OmniAntenna \
-phyType Phy/WirelessPhy \
-topoInstance $topo \
-agentTrace ON \
-routerTrace ON \
-macTrace ON \
-movementTrace ON \
-propType Propagation/TwoRayGround
3.4.4. Thiết lập tốc độ và kiểu xung của Phenomenon
Hai tham số sử dụng để thay đổi tuỳ biến Phenomena được chỉ ra
a. Pulserate Float.
- Ploat phải là một số thực
- Mô tả tần số một nút Phenomenon quảng bá tín hiệu của nó.
- Mặc định là một lần phát trên 1 giây
b. Phenomenon Pattern
- Pattern: kiểu hiện tượng, phải là một trong các từ khoá sau: CO, HEAVE-GEO,
LIGHT-GEO, SOUND, TEST-PHENOMENON tương ứng với oxit carbon CO, động
đất nặng, động đất nhẹ, tiếng động và một số kiểu hiện tượng chung khác.
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
- Tuỳ chọn này được sử dụng chủ yếu cho việc mô phỏng các hiện tượng bội nút
(nhiều nút hiện tượng kết hợp) nên dễ dàng phân biệt việc nút Sensor đang cảm biến
hiện tượng nào bằng việc nhìn vào trace file.
- Mặc định TEST-PHENOMENON
Sau đây, minh hoạ việc đặt tham số để phát tín hiệu từ Carbon Oxit 10 lần/s
[$node (0) set ragent ] \
pulserate .1 ;
[$node (0) set ragent ] \
Phenomenon CO ;
3.4.5. Định hình nút Sensor
Nút Sensor phải được định hình với thuộc tính “Phenom chanell” và thuộc tính
“Wireless Channel”. Kênh Phenom Channel phải cùng loại với kênh mà ta ấn định cho
Phenomenon. Kênh còn lại được sử dụng để truyền các báo cáo của Sensor. Cấu hình
nút Sensor cần phải chỉ ra một giao thức MAC cho kênh Phenomenon và một giao
thức MAC (như MAC/802-11) cho kênh chia sẻ với các nút không dây khác.
Điều này được thực hiện với các thuộc tính Phenom mactype và mactype. Phenom
mactype phải cùng kiểu với MAC của các nút Phenom và Mactype phải cùng kiểu với
MAC của các nút khác cùng tham gia mạng IP. Các lệnh sau minh họa ví dụ định hình
cho một nút Sensor :
$ns node-config \
-adhocRouting $val(rp) \
-Channel $chan 2 \
-macType $val(mac) \
-PHENOMChannel $chan 1 \
-PHENOMmacType $val(PHENOMmac)
Nếu muốn, một nút Sensor có thể được định hình với một khối năng lượng nhất định
sẽ được khấu trừ từ nguồn dự trữ của nút mỗi lần nhận một tín hiệu Phenomenon
quảng bá hay phát và nhận các gói tin báo cáo. Để thiết lập tính chất này, phải thêm
các tham số trong phần node-configure của nút Sensor.
-energyModel EnergyModel \
-rxPower 0.175 \
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
-txPower 0.175 \
-sensePower 0.00000175; \
-idlePower 0.0 \
-initialEnergy 0.5
Trong đó:
- rx Power.175 chỉ ra 175mW tiêu thụ cho việc nhận một gói kích thước bất kỳ.
- tx Power 175 chỉ ra 175mW tiêu thụ cho việc phát một gói kích thước bất kỳ
- Sensor Power .000 00175 chỉ ra 1.75W tiêu thụ khi nhận 1 gói quảng bá Phenom.
- Inctial Energy 5 chỉ ra tổng năng lượng dự trữ là 5J.
Chú ý:
Mô hình năng lượng trong NS-2 sử dụng màu sắc để minh hoạ. Để tránh nhầm lẫn
trong mô tả nam việc định màu nút trong ứng dụng hình ảnh Sensor sẽ bị tắt với định
nghĩa DISABLE_COLOR trong Sensorapp.cc. Trong bổ xung DISABLE_COLOR,
một số tham số nút Sensor khác cũng được được chỉ ra trong Sensorapp.cc.
SILENT_PHENOMENON: là khoảng thời gian (s) yên lặng cần thiết để Sensor đi
vào trạng thái tắt cảnh báo. Ví dụ:
# define SILENT_PHENOMENON .2
- MESG_SIZE 256: là kích cỡ (byte) của bản trên chuyển tới Gateway hay điểm thu
thập dữ liệu hoặc các nút thu dữ liệu khác được liên lạc với nút Sensor (qua UDP, TCP
…). Ví dụ:
# define MESG_SIZE 256
- TRANSMIT_FREQ là tần số mà một nút Sensor được kích hoạt bởi các gói
Phenom) sẽ chuyển một bản tin đến nút thu số liệu. Sau mỗi khoảng thời gian
TRANSMIT_FREQ, nút Sensor phát đi một thông báo (MESG_S1ZE byte) đến
Gateway và trong mỗi khoảng này, nút Sensor cò thể nhận được một hay nhiều gói
PHENOM. Ví dụ:
# define TRANSMIT_FREQ 0.1
3.4.6. Thiết lập các nút Non-Sensor (điểm thu thập dữ liệu, Gateway)
Các nút không phải Sensor hay Phenomenon nút không được định hình với một kênh
Phenom Channel vì chúng chỉ có giao diện duy nhất đến mạng MANET (Mobile Ad-
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
hoc Network - mạng di động sử dụng giao thức định tuyến Ad hoc) được thực hiện với
thuộc tính - Phenom Channel "off". Ví dụ:
$ns node-config \
-adhocRouting $val(rp) \
-Channel $chan 2 \
-PHENOMChannel "off"
3.4.7. Gắn kết các tác nhân Sensor
Lệnh này tạo ra một tác nhân Sensor cho mỗi nút Sensor và gắn kết tác nhân này với
nút tương ứng. Ngoài ra, phải chỉ ra rằng tất cả các gói tin đến từ kênh Phenome đều
được nhận bởi Sensor Agent.Ví dụ:
set Sensor ($i) [new \ Agent/SensorAgent]
$ns attach-agent $node ($i) \
$Sensor ($i)
[$node ($i) set ll (1)] \
up-target $Sensor ($i)
3.4.8. Gắn kết một tác nhân UDP và ứng dụng Sensor cho mỗi nút
Việc các nút Sensor phản ứng thế nào khi chúng phát hiện ra hiện tượng mục tiêu
được định nghĩa trong ứng dụng Sensor. Ví dụ như chúng sẽ thông báo thông tin về
hiện tượng tới điểm thu thập dữ liệu qua UDP.
Thí dụ sau minh hoạ việc thiết lập ứng dụng Sensor:
set src ($i) [new Agent/UDP]
$ns attach-agent $node ($i) \
$src ($i)
$ns connect $src ($i) $sink
set app ($i) [new \ Application/SensorApp]
$app ($i) attach-agent $src ($i)
3.4.9. Khởi động ứng dụng Sensor
Nút Sensor có thể nhận các gói Phenom ngay khi Sensor Agent được gắn tới nút.
Nhưng nút chỉ có phản ứng khi ứng dụng Sensor được gắn kết và khởi động.
$ns at 5.0 "$app ($i) start \
Đồ án tốt nghiệp đại học Chương III. Phát triển phần mềm mô
phỏng
$Sensor ($i)"
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
CHƯƠNG IV: MÔ PHỎNG MẠNG WIRELESS SENSOR
4.1. Mục đính mô phỏng
Mục đích của phần mô phỏng này là xem xét mối quan hệ giữa hoạt động của node
mạng với năng lượng dự trữ của nó. Ban đầu, mỗi nút Sensor được định cấu hình với
một khối năng lượng xác định. Mỗi khi nút Sensor thực hiện một hành động như nhận
một tín hiệu cảm biến, thu hoặc phát các gói tin vô tuyến, xử lý tín hiệu, nguồn năng
lượng dự trữ của nút đó sẽ bị khấu trừ theo công suất được định nghĩa trước cho từng
thành phần. Khi nút Sensor không có hành động nào, năng lượng sẽ được khấu trừ
theo công suất rỗi (Idle power).
Mô phỏng này được thực hiện với các mạng Sensor được triển khai theo hình lưới
vuông, trong bản đồ hình vuông. Khoảng cách giữa các nút sensor là d, khoảng cách
vô tuyến 2d để một nút có khả năng phát cho 8 nút lân cận. Khoảng ảnh hưởng
của nút Phenomenom (hiện tượng mục tiêu) là 2d . Kịch bản triển khai trường
Sensor được minh hoạ trong hình 4.1.
Hình 4.1: Kịch bản triển khai trường Sensor trong mô phỏng
Kiểu hiện tượng mục tiêu được chọn là khí Carbon Monoxit (CO) được biểu diễn
bằng một nút Phenomenon đơn di chuyển một cách ngẫu nhiên trong trường Sensor.
Số lượng điểm thu thập số liệu (Sink) là 1, được đặt trên biên của trường Sensor.
Thang năng lượng sử dụng trong cấu hình node (trong phần node-configure):
- rx Power.175 chỉ ra 175mW tiêu thụ cho việc nhận một gói kích thước bất kỳ.
- tx Power 175 chỉ ra 175mW tiêu thụ cho việc phát một gói kích thước bất kỳ
- Sensor Power .000 00175 chỉ ra 1.75W tiêu thụ khi nhận 1 gói quảng bá Phenom.
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
- Inctial Energy 0.5 chỉ ra tổng năng lượng dự trữ là 0.5J (hay 0.5 W/s).
4.2. Thực hiện mô phỏng
4.2.1. Mã chương trình
Các tuỳ chọn về môi trường mạng được khai báo như sau:
set val(chan) Channel/WirelessChannel ;# Kiểu kênh
set val(prop) Propagation/TwoRayGround ;# Kiểu phát vô tuyến
set val(netif) Phy/WirelessPhy ;# Kiểu giao tiếp mạng
set val(mac) Mac/802_11 ;# Kiểu MAC
set val(PHENOMmac) Mac ;# Kiểu MAC Phenomenon
set val(ifq) Queue/DropTail/PriQueue ;# Kiểu hàng đợi
set val(ll) LL ;# Kiểu lớp liên kết số liệu
set val(ant) Antenna/OmniAntenna ;# Kiểu antent
set val(ifqlen) 50 ;# Số gói cực đại trong hàng đợi
set val(nn) 26 ;# Tổng số nút Sensor và Sink
set val(rp) AODV ;# Giao thức định tuyến
set val(x) 451 ;# Chiều dài bản đồ (m)
set val(y) 451 ;# Chiều rộng bản đồ (m)
set val(engmodel) EnergyModel
set val(txPower) 0.175 ;# Công suất truyền (mW)
set val(rxPower) 0.175 ;# Công suất nhận (mW)
set val(sensePower) 0.00000175; ;# Công suất cảm biến (mW)
set val(idlePower) 0.0 ;# Công suất khấu trừ rỗi (mW)
set val(initeng) 0.5 ;# Năng lượng ban đầu (J)
Một đoạn chương trình chính:
# Main Program
# ======================================================================
# Khoi tao bien toan cuc
set ns_ [new Simulator]
set tracefd [open phenom11.tr w]
$ns_ trace-all $tracefd
set namtrace [open phenom11.nam w]
$ns_ namtrace-all-wireless $namtrace $val(x) $val(y)
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
Trong chương trình chính đã định nghĩa tên File số liệu đầu ra (Trace, NAM) và thiết
lập kiểu kênh, giao thức, nút. Thiết lập toạ độ cho các nút và khai báo các sự kiện xảy
ra trong thời gian mô phỏng.
Sau khi đã có mã đầu vào được lưu trong file phenom.tcl ta bắt đầu chạy mô phỏng
bằng lệnh: nam phenom trong cửa sổ X. Sau khi chạy xong ta có thể quan sát hình ảnh
bằng ứng dụng NAM trong ns-2.
4.2.1. Phân tích kết quả
Việc tính toán kết quả dựa trên việc phân tích file Trace. File Trace được định dạng
gồm các trường cơ bản:
[sự kiện] [thời gian] [số thứ tự nút] [mức Trace] ---- [số thứ tự gói] [kiểu gói] [kích
thước gói][địa chỉ Mac][năng lượng còn lại] [kiểu hiện tượng].
Các sự kiện trong trường sự kiện gồm r (nhận gói), s (gửi gói), D (mất gói), f (chuyển
tiếp gói); trường thời gian chỉ ra thời điểm xảy ra sự kiện; trường mức Trace chỉ ra sự
kiện này thuộc phạm vi (mức độ) mô phỏng nào (tác nhân (như udp), lớp liên kết số
liệu (MAC) hay mức vật lý, ....).
Với yêu cầu tính toán trong trường hợp này, ta chỉ cần quan tâm tới 4 trường đầu tiên
và trường năng lượng.
r 1.026254208 _7_ RTR --- 0 AODV 48 [0 ffffffff 8 800] [energy 0.499860] ------- [8:255 -1:255 30 0] [0x2 1 1
[26 0] [8 4]] (REQUEST)
r 1.026254343 _4_ RTR --- 0 AODV 48 [0 ffffffff 8 800] [energy 0.499860] ------- [8:255 -1:255 30 0] [0x2 1 1
[26 0] [8 4]] (REQUEST)
r 1.026254343 _2_ RTR --- 0 AODV 48 [0 ffffffff 8 800] [energy 0.499860] ------- [8:255 -1:255 30 0] [0x2 1 1
[26 0] [8 4]] (REQUEST)
r 1.026254346 _14_ RTR --- 0 AODV 48 [0 ffffffff 8 800] [energy 0.499860] ------- [8:255 -1:255 30 0] [0x2 1
1 [26 0] [8 4]] (REQUEST)
Dựa vào file Trace này chúng ta có thể thấy rõ năng lượng của node mạng sẽ giảm
theo thời gian mỗi khi node mạng nhận, gửi dữ liệu hoặc cảm biến hiện tượng.
Việc phân tích file trace đuợc thực hiện qua hai bước:
- Tách file trace: Ta sẽ tách ra các trường cần thiết cho việc tính toán kết quả
- Tính kết quả: Dựa vào các trường đã tách ở trên, ta sử dụng các trường này để tính
ra kết quả cần thiết.
Sau đây là các bước tiến hành cụ thể:
1) Tính sự tiêu hao năng lượng của các node mạng
- Dùng lệnh sau trong của sổ cygwinX để tách lấy các sự kiện tại một node(trong
trường hợp này la node1) như nhận, gửi gói, trường thời gian và mức năng lượng
tương ứng tại thời điểm đó.
$ cat energy.tr | grep "_1_" | awk ' { printf ("%c\t%f\t%s\t%s\t%s\t%f\n", $1, $2, $3,
$4, $7, $14)} ' >energy_node1.txt
Sau lệnh này ta sẽ tách ra được số liệu nằm ở file energy_node1.txt gồm 6 trường.
Dưới đây là một đoạn file energy_node1.txt:
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
s 1.068626 _1_ MAC AODV 0.493780
s 1.069666 _1_ RTR AODV 0.493640
s 1.070016 _1_ MAC AODV 0.493640
r 1.071847 _1_ MAC AODV 0.493360
r 1.071872 _1_ RTR AODV 0.493360
D 1.071978 _1_ MAC AODV 0.493220
-Sau khi có được file energy_node1.txt ta sử dụng lệnh sau để tính năng lượng cần mỗi
khi node gửi hoặc nhận một gói dữ liệu:
$ cat energy_node1.txt awk ' { dif=old2-$2; if(dif>0) printf ("%c\t%f\t%f\n", $1,
$2, dif)} ' >energy_node1_down.txt
Sau lệnh này ta sẽ tính được số năng lượng cụ thể mỗi khi node1 nhận hoặc gửi dữ
liệu. Các số liệu này được ghi vào file nlgiam_node1.txt
Một đoạn trong file energy_node1_down.txt
r 1.027420 0.000280
r 1.028410 0.000140
s 1.029232 0.000140
r 1.035203 0.000840
r 1.036073 0.000140
s 1.036579 0.000140
Tương tự ta làm như vậy với các node khác ví dụ với node 2 ta dùng lệnh
$ cat energy.tr | grep "_2_" | awk ' { printf ("%c\t%f\t%s\t%s\t%s\t%f\n", $1, $2, $3,
$4, $7, $14)} ' >energy_node2.txt
Và lệnh: $ cat energy_node2.txt awk ' { dif=old2-$2; if(dif>0) printf
("%c\t%f\t%f\n", $1, $2, dif)} ' >nlgiam_node2.txt
2)Tính tốc độ giảm năng lượng
Từ các file energy_node.txt ta có thể tính được tốc độ giảm năng lượng của mỗi
node và tổng năng lượng cho việc gửi dữ liệu và tổng năng lượng cho việc nhận dữ
liệu.
- Tốc độ giảm năng lượng = Tổng năng lượng tiêu tốn/ thời gian khảo sát
4.2. Kết quả
Kết quả được biểu diễn bằng các bảng và đồ thị tương ứng.
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
4.2.1. Sự tổn hao năng lượng
Ta xét một mạng sensor gồm 25 nút được bố trí đều trong một diện tích có kích
thước 651x651(m2). Khi đó mật độ mạng là 60nut/1km2.
Số thứ
tự nút
Năng lượng
nhận dữ liệu
Năng lượng
gửi dữ liệu
Tổn hao năng
lượng do mất
gói
Năng
lượng
cảm biến
Tổng năng
lượng tiêu
tốn
1 0.019285 0.046183 0.003525 0.09376 0.162753
2 0.065298 0.033406 0.01526 0.112968 0.226932
3 0.056915 0.05568 0.002437 0.113328 0.22836
4 0.160718 0.02309 0.004672 0.026297 0.214777
5 0.139551 0.02305 0.00042 0.019622 0.182643
6 0.038426 0.046769 0.001325 0.108743 0.195263
7 0.109089 0.040506 0.018258 0.074516 0.242369
8 0.130553 0.021261 0.010534 0.071392 0.23374
9 0.074877 0.027988 0.013917 0.117594 0.234376
10 0.15393 0.023981 0.005717 0.038833 0.222461
11 0.047487 0.03308 0.000406 0.152266 0.233239
12 0.137623 0.034856 0.022823 0.049413 0.244715
13 0.074405 0.037263 0.005593 0.119159 0.23642
14 0.189775 0.028786 0.010324 0.017346 0.246231
15 0.164631 0.01053 0.006003 0.041165 0.222329
16 0.217707 0.00711 0.005957 0 0.230774
17 0.201076 0.031669 0.010278 0.015522 0.258545
18 0.133041 0.020647 0.010764 0.033383 0.197835
19 0.215369 0.01945 0.016523 0.008967 0.260309
20 0.220979 0.02205 0.00547 0.000409 0.248908
21 0.193351 0.022085 0 0 0.215436
22 0.163264 0.003814 0.076103 0 0.243181
23 0.21931 0.028433 0.002297 0.002453 0.252493
24 0.146921 0.020228 0.002425 0.021554 0.191128
25 0.040937 0.003478 0.002703 0 0.047118
Bảng 4.2: Suy hao năng lượng của các nút sensor
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
Khảo sát sự tiêu tốn năng lượng của các nút sensor
0
0.05
0.1
0.15
0.2
0.25
0.3
0 5 10 15 20 25 30
Số thứ tự nút
N
ăn
g
lư
ợ
n
g
ti
êu
tố
n
(j
)
Năng lượng nhận dữ liệu Năng lượng gửi dữ liệu
Năng lượng hao phí do mất gói Năng lượng cảm biến
Tổng năng lượng tiêu tốn
Hình 4.2: Đồ thị suy hao năng lượng của các nút sensor
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
4.2.2. Tốc độ giảm năng lượng khi tăng số nút mạng
Trong phần này ta sẽ khảo sát tốc độ giảm năng lượng trung bình của các nút mạng
khi số nút sensor thay đổi còn kích thước mạng cố định 651x651(m2).
Số nút Sensor Công suất truyền
giữa các nút (w)
Năng lượng tiêu tốn
trung bình (j)
Tốc độ giảm năng lượng
trung bình của mạng(j/s)
15 0.3187 0.8018702188 0.080187021876
25 0.1 0.2826000000 0.028260000000
37 0.04 0.1183298067 0.011832980669
58 0.01919 0.0438586242 0.004385862420
79 0.006 0.0090531975 0.000905319748
150 0.00166 0.0006454619 0.000064546188
240 0.0006 0.0000530490 0.000005304904
410 0.000174 0.0000086468 0.000000864676
585 0.0000778 0.0000018869 0.000000188685
715 0.0000572 0.0000009930 0.000000099299
900 0.0000285 0.0000002816 0.000000028160
1200 0.0000154 0.0000000685 0.000000006845
1400 0.000012 0.0000000146 0.000000001462
1612 0.0000074 0.0000000206 0.000000002061
Bảng 4.3: Tốc độ giảm năng lượng
Khảo sát tốc độ giảm năng lượng trung bình của mạng
0.00
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0 200 400 600 800 1000 1200 1400 1600 1800
Số nút Sensor
T
ố
c
đ
ộ
g
iả
m
(
j/
s)
Tốc độ giảm năng lượng
Hình 4.3: Đồ thị tốc độ giảm năng lượng trung bình của mạng
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
4.2.3. Tốc độ giảm năng lượng khi mật độ mạng không đổi
Trong phần này ta sẽ thay đổi số lượng nút sensor trong mạng đồng thời cũng thay
đổi diện tích khảo sát để đảm bảo mật độ mạng là 60sensor/1km2.
Số nút Sensor Năng lượng tiêu tốn trung
bình(j)
Tốc độ giảm (j/s)
15 0.2826 0.02826
25 0.285502 0.02855
37 0.285502 0.02855
58 0.317106 0.031711
79 0.123958 0.012396
150 0.115942 0.011594
240 0.112774 0.011277
410 0.083108 0.008311
585 0.071784 0.007178
715 0.098671 0.009867
900 0.541801 0.05418
1200 0.138967 0.013897
1400 0.293757 0.029376
Bảng 4.4: Tốc độ giảm năng lượng trung bình của mạng
Khảo sát tốc độ giảm năng lượng của mạng
0
0.01
0.02
0.03
0.04
0.05
0.06
0 200 400 600 800 1000 1200 1400 1600
Số nút Sensor
T
ố
c
đ
ộ
g
iả
m
(
j/s
)
Tốc độ giảm năng lượng
Hình 4.4: Tốc độ giảm năng lượng
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
4.2. Đánh giá
Qua kết quả mô phỏng ở trên, ta thấy với một mạng cố định năng lượng cho việc
nhận dữ liệu chiếm tỉ lệ lớn nhất, tiếp đến là năng lượng cho việc cảm biến dữ liệu và
năng lượng cho việc gửi dữ liệu chiếm tỉ lệ thấp nhất.
Mật độ nút sensor trong mạng cũng ảnh hưởng rất nhiều tới việc tiêu thụ năng lượng
của các nút mạng mật độ càng cao thì tốc độ giảm năng lượng của các nút sensor càng
giảm. Điều này được giải thích là do công suất phát của các nút sensor giảm. Do đó
khi thiết kế mạng chúng ta phải hết sức chú ý tới mật độ nút mạng.
Khi mật độ mạng được giữ cố định thì số nút sensor lại là yếu tố ảnh hưởng tới tốc
độ tiêu thụ năng lượng của các nút sensor. Có 3 khoảng chính khi tăng số nút sensor sẽ
ảnh hưởng mạnh tới tốc độ tiêu thụ năng lượng của các nut sensor.
- Khoảng thứ nhất: Dưới 100 nút, tốc độ tiêu thụ năng lượng trung bình của các
nút khoảng 0.28j/s đây là một tốc độ giảm trung bình.
- Khoảng thứ hai: Từ 100 đến 700 nút, tốc độ giảm năng lượng của mạng ổn định
ở mức thấp khoảng 0.1j/s.
- Khoảng thứ ba: Từ 700 nút trở nên, khi này tốc độ giảm năng lượng của các nút
mạng tăng đột biến.
Qua đây ta thấy khi xây dựng mạng trong khoảng thứ hai là đảm bảo tiết kiệm năng
lượng nhất. Tuy nhiên trong trường hợp cần triển khai trong một phạm vi lớn thì ta lên
chọn số nút sensor lớn hơn 1200 nút để đảm bảo tiết kiêm về năng lượng.
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
KẾT LUẬN
Các mạng Sensor với giá thành thấp, có khả năng triển khai trong nhiều điều kiện địa
lý khí hậu phức tạp, đặc biệt là các khả năng xử lý cộng tác và chịu được các hư hỏng
sự cố đã đem lại một cuộc cách mạng trong lĩnh vực cảm biến và thu thập thông tin.
Điều này đã mạng lại nhiều lợi ích thiết thực cho cuộc sống, cho sản xuất và cho khoa
học. Trong tương lai, mạng Sensor có thể sẽ là một phương tiện cần thiết và thông
dụng như máy tính cá nhân và điện thoại di động hiện nay.
Trong tương lai mạng sensor hoàn toàn có thể được áp dụng ở nước ta, do đó việc
nghiên cứu tìm hiểu các vấn đề liên quan tới mạng là hết sức cần thiết.
Đồ án đạt được kết quả:
- Khái quát tổng quan về mạng sensor cũng như các ứng dụng của nó.
- Nêu rõ vai trò năng lượng trong mạng sensor và các biện pháp tiết kiệm năng
lượng.
- Giới thiệu phần mềm mô phỏng mạng sensor, và các thiết lập cơ sở ban đầu cho
việc mô phỏng mạng, trong đó có việc thiết lập cấu hình nguồn năng lượng cho
nút mạng.
- Tiến hành mô phỏng mạng, từ đó rút ra quy luật giảm năng lượng của các nút
mạng.
Vấn đề cần quan tâm:
- Các công nghệ nền tảng để phát triển mạng sensor
- Các vấn đề về đồng bộ Sensor, các thuật toán định vị, các thuật toán cộng tác
Sensor.
- Khả năng mở rộng của mạng.
Hiện tại mạng sensor đã được triển khai rộng, tuy nhiên chúng vẫn đang tiếp tục
được nghiên cứu. Do đó việc nắm bắt các công nghệ mới và các giải pháp phát triển
mạng là hết sức cần thiết.
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
Phan Viết Thời, D2001VT 79
TÀI LIỆU THAM KHẢO
1. Anna Hác (University of Hawait at Manoa, Honolulu, USA), Wireless Sensor
Network Designs, Nhà suất bản Jonh Wiley and Sons.
2. Edgar H. Callaway, Wireless Sensor Network – Architectures and Protocol, Nhà
suất bản CRC.
3. Đinh Văn Dũng (Viện khoa học kỹ thuật bưu điện), Sensor Network Intallation
Guide, Bản Pdf.
4. The Network Simulator - ns-2.
5. The ns Manual.
6. NRL’s Sensor Network Extension to ns-2.
7. NS-2 by Example
8. Ian Downard, SIMULATING SENSOR NETWORKS IN NS-2, Naval Research
Laboratory Code 5523, 4555 Overlook Ave, Washington DC, 20375-5337
9. Q.Hao, D.J.Holding, Y.Peng, K.J.Blow (Aston university), "Energy Efficiency
Design Challenge in Sensor Network: A survey".
Đồ án tốt nghiệp đại học Chương IV. Mô phỏng mạng Wireless
Sensor
Phan Viết Thời, D2001VT 80
MỤC LỤC
Mục lục .............................................................................................................. 1
Thuật ngữ viết tắt ............................................................................................. 83
Lời nói đầu ......................................................................................................... 2
Chương I : Tổng quan về mạng Wireless Sensor ............................................... 3
1.1. Giới thiệu mạng cảm biến không dây ...................................................... 3
1.2. Nền tảng phát triển mạng......................................................................... 3
1.2.1. Mạng Ad hoc không dây................................................................... 3
1.2.2. Nền tảng công nghệ ......................................................................... 6
1.3. Mô tả hệ thống......................................................................................... 8
1.3.1. Mô tả hệ thống tổng quát .................................................................. 8
1.3.2. Hệ thống WISENET ....................................................................... 10
1.4. Tổng quan về kiến trúc mạng................................................................. 13
1.4.1. Lớp ứng dụng ................................................................................. 15
1.4.1.1. Giao thức quản lý Sensor...................................................................15
1.4.1.2. Giao thức phân nhiệm vụ và quảng cáo số liệu ..................................16
1.4.1.3 Giao thức truy vấn Sensor và phổ biến số liệu ....................................16
1.4.2 Lớp giao vận.................................................................................... 17
1.4.3 Lớp mạng ........................................................................................ 17
1.4.4. Liên kết liên mạng .......................................................................... 18
1.4.5 Lớp liên kết số liệu .......................................................................... 19
1.4.5.1 Điều khiển truy nhập môi trường truyền dẫn ......................................19
1.4.5.2 Điều khiển sửa lỗi...............................................................................20
1.4.6 Lớp vật lý ........................................................................................ 22
1.5. Đặc điểm của mạng Wireless Sensor ..................................................... 23
1.5.1. Kích thước vật lý nhỏ và tiêu thụ công suất thấp............................. 23
1.5.2. Hoạt động đồng thời với độ tập trung cao ....................................... 23
1.5.3. Khả năng liên kết vật lý và phân cấp điều khiển hạn chế ................ 23
1.5.4. Tính đa dạng trong thiết kế và sử dụng ........................................... 23
1.5.5. Hoạt động tin cậy............................................................................ 24
1.6. Ứng dụng của mạng Sensor ................................................................... 24
1.6.1. Ứng dụng trong quân sự ................................................................. 25
1.6.2. Ứng dụng về môi trường................................................................. 26
1.6.3. Ứng dụng trong y tế........................................................................ 27
1.6.4. Ứng dụng trong gia đình ................................................................. 28
1.6.5. Các ứng dụng thương mại khác ...................................................... 28
Chương II : Năng lượng trong mạng Wireless Sensor ..................................... 30
2.1. Tính đặc thù của mạng........................................................................... 30
2.1.1. Hạn chế phần cứng ......................................................................... 30
2.1.2. Môi trường hoạt động ..................................................................... 31
2.1.3. Môi trường truyền dẫn .................................................................... 32
2.2. Sự tiêu thụ năng lượng........................................................................... 33
Đồ án tốt nghiệp đại học
Phan Viết Thời, D2001VT 81
2.2.1. Năng lượng cho nhiệm vụ cảm biến................................................ 34
2.2.2. Năng lượng cho truyền thông.......................................................... 34
2.2.3. Năng lượng cho xử lý ..................................................................... 35
2.3. Các giải pháp tiết kiệm năng lượng........................................................ 35
2.3.1. Giải pháp định tuyến....................................................................... 35
2.3.1.1. Các phương pháp định tuyến tối ưu về năng lượng ............................36
2.3.1.2. Phương pháp định tuyến số liệu tập trung ..........................................37
2.3.1.3. Các giao thức lớp mạng khác được đề xuất cho mạng Sensor ............39
2.3.2. Giải pháp truy nhập môi trường truyền dẫn..................................... 43
2.3.2.1. Yêu cầu với giao thức điều khiển truy nhập môi trường (MAC) cho
mạng sensor ...................................................................................................44
2.3.2.2. Các giao thức MAC cho mạng sensor................................................44
2.3.2.3. Các chế độ hoạt động tiết kiệm năng lượng .......................................47
2.3.3. Quản lý nguồn công suất................................................................. 47
2.3.3.1 Thời gian tồn tại ................................................................................49
2.3.3.2 Phát hiện nguồn thấp "Low Battery"..................................................49
2.3.3.3. Cảnh báo "Low Battery"....................................................................50
2.3.4. Tận dụng các nguồn năng lượng trong tự nhiên .............................. 51
2.3.1.1. Tế bào quang điện .............................................................................52
2.3.1.2. Các nguồn năng lượng khác...............................................................53
Chương III : Phần mềm mô phỏng năng lượng cho mạng Wireless Sensor ...... 54
3.1. Mô hình hoá mô phỏng.......................................................................... 54
3.1. Mô hình nguồn năng lượng.................................................................... 54
3.3. Thiết kế phần mềm mô phỏng mạng Wireless Sensor............................ 55
3.3.1. Phần mềm NS-2.............................................................................. 55
3.3.2. Cơ sở phát triển mô phỏng mạng Sensor trên nền NS-2.................. 58
3.3.3. Các định dạng mới trong NS-2 ....................................................... 59
3.3.4. Thay đổi trong NS-2 ....................................................................... 61
3.4. Thiết lập mã lập trình mô phỏng ............................................................ 63
3.4.1. Thiết lập kênh hiện tượng và kênh dữ liệu ...................................... 63
3.4.2. Thiết lập một giao thức MAC cho kênh Phenomenon..................... 63
3.4.3. Thiết lập các nút Phenomenon với giao thức "định tuyến" Phenom 63
3.4.4. Thiết lập tốc độ và kiểu xung của Phenomenon .............................. 64
3.4.5. Định hình nút Sensor ...................................................................... 65
3.4.6. Thiết lập các nút Non-Sensor (điểm thu thập dữ liệu, Gateway) ..... 66
3.4.7. Gắn kết các tác nhân Sensor ........................................................... 67
3.4.8. Gắn kết một tác nhân UDP và ứng dụng Sensor cho mỗi nút .......... 67
3.4.9. Khởi động ứng dụng Sensor............................................................ 67
Chương IV: Mô phỏng mạng Wireless Sensor ................................................. 69
4.1. Mục đính mô phỏng............................................................................... 69
4.2. Thực hiện mô phỏng.............................................................................. 70
4.2.1. Mã chương trình ............................................................................. 70
4.2.1. Phân tích kết quả............................................................................. 71
4.2. Kết quả .................................................................................................. 72
Đồ án tốt nghiệp đại học
Phan Viết Thời, D2001VT 82
4.2.1. Sự tổn hao năng lượng .................................................................... 73
4.2.2. Tốc độ giảm năng lượng khi tăng số nút mạng................................ 75
4.2.3. Tốc độ giảm năng lượng khi mật độ mạng không đổi ..................... 76
4.2. Đánh giá ................................................................................................ 77
Kết luận............................................................................................................ 78
Tài liệu tham khảo............................................................................................ 79
Đồ án tốt nghiệp đại học
Phan Viết Thời, D2001VT 83
THUẬT NGỮ VIẾT TẮT
§å ¸n tèt nghiÖp ®¹i häc Ch¬ng IV. M« pháng m¹ng Wireless Sensor
Phan Viết Thời, D2001VT 84
Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt
ADC Analogue/Digital converter Bộ chuyển đổi tương tự / số
AODV Ad Hoc On-Demand Distance-
Vector
Định tuyến dựa vào chuỗi chỉ hướng
theo yêu cầu tạm thời
API Application program interface Hệ giao tiếp lập trình ứng dụng
ARC Adaptive transmitssion rate
control
Điều khiển tốc độ truyền dẫn thích ứng
ARQ automatic repeat request Cơ chế sửa lỗi bằng yêu cầu lặp lại tự
động
BER Bit error rate Tỷ lệ lỗi bit
CSMA Carrier sense multiple access Đa truy nhập theo cảm biến lưu lượng
DSDV Destination-Sequenced
Distance-Vector
Định tuyến theo chuỗi chỉ hướng với
đích tuần tự
DSR Dynamic Source Routing Giao thức định tuyến nguồn động
FDMA Frequency division multiple
access
Đa truy nhập phân chia theo tần số
FEC Forward error correction Cơ chế sửa lỗi trước
GPS Global Possition System Hệ thống định vị toàn cầu
HTTP HyperText Tranffer Protocol Giao thức truyền siêu văn bản
ISM band Industrial, Scientific and
Medical band
Dải tần sử dụng cho các ứng dụng
công nghiệp, khoa học và y học
LEACH Low energy adaptive clustering
hierarchy
Phân cấp cụm thích ứng với năng
lượng thấp
MAC Medium access control Điều khiển truy nhập môi trường
truyền dẫn
MANET Mobile ad hoc network Mạng di động ad hoc (tạm thời, không
có cơ sở hạ tầng)
ME Minimum energy Năng lượng tiêu thụ cực tiểu
MECN Minimum energy
communication network
Mạng truyền thông với năng lượng cực
tiểu
MH Minimum hop Số bước nhảy cực tiểu
NAM Network AniMator Mô tả mạng bằng hình ảnh động
NS-2 Network Simulator version 2 Phần mềm mô phỏng mạng phiên bản2
Otcl Object-oriented tool command
language
Ngôn ngữ điều khiển bằng lệnh hướng
đối tượng
PA Power available Mức năng lượng hiện tại
§å ¸n tèt nghiÖp ®¹i häc Ch¬ng IV. M« pháng m¹ng Wireless Sensor
Phan Viết Thời, D2001VT 85
QoS Quality of service Chất lượng dịch vụ
REQ Request message Bản tin yêu cầu
RERR Route error packet Gói báo lỗi tuyến
RREP Route reply packet Gói đáp ứng yêu cầu tuyến
RREQ Route request packet Gói yêu cầu tuyến
RS-232 Serial Radio Link - 232 Liên kết vô tuyến nối tiếp theo chuẩn
RS-232
SAR Sequential assignment routing Định tuyến chỉ định liên tục
SMECN Small minimum energy
communication network
Mạng truyền thông với năng lượng cực
tiểu loại nhỏ
SMACS Self Organizing MAC for
Sensor network
Giao thức MAC tự tổ chức cho mạng
sensor
SMP Sensor management protocol Giao thức quản lý sensor
SPIN Sensor protocols for
information via negotiation
Các giao thức thông tin sensor thông
qua thỏa thuận
SQDDP Sensor query and data
dissemination protocol
Giao thức truy vấn sensor và phổ biến
số liệu
SQL Structure Query Language Ngôn ngữ truy vấn theo cấu trúc
SQTL Sensor query and tasking
language
Ngôn ngữ truy vấn và đặt nhiệm vụ
sensor
SSF Scalable Simulation
Framework
Cơ cấu mô phỏng mở rộng
TADAP Task assignment and data
advertisement protocol
Giao thức phân nhiệm vụ và quảng cáo
số liệu
TCP/IP Transmission Control
Protocol/Internet Protocol
Giao thức điều khiển truyền dẫn/giao
thức Internet
TDMA Time division multiple access Đa truy nhập phân chia theo thời gian
TORA Temporally Ordered Routing
Algorithm
Định tuyến bằng thuật toán tìm đường
tuần tự theo thời gian
WINS Wireless Integrated network
sensors
Mạng các thiết bị cảm biến tích hợp
thiết bị thu phát không dây
WISENET WIreless SEnsor NETwork Hệ thống mạng sensor không dây
WISENET
WLAN Wireless local area network Mạng cục bộ không dây
WSN Wireless sensor network Mạng cảm biến không dây
§å ¸n tèt nghiÖp ®¹i häc Ch¬ng IV. M« pháng m¹ng Wireless Sensor
Phan Viết Thời, D2001VT 86
Các file đính kèm theo tài liệu này:
- do_an7_2956.pdf