HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA VIỄN THƠNG 1
BÀI TIỂU LUẬN
Mạng cảm biến không dây và ứng dụng vào mơ hình nơng nghiệp
thơng minh
Nhóm mơn học: Nhóm 6
Giảng viên hướng dẫn: Đặng Thế Ngọc
Sinh viên thực hiện: Nguyễn Tiến Mạnh-B18DCVT282
Đặng Phương Nam- B18DCVT298
Phạm Thế Phú- B18DCVT322
Đào Mạnh Quang- B18DCVT330
Hà Nội – 6/2022
1
Mục lục
2
Lời nói đầu
Trong thời đại 4.0 ngày nay, cơng nghệ là một phần không thể thiếu trong cuộc
sống của mỗi con người. Công nghệ đã phát triển và tồn tại rất nhiều dạng, cơ chế
và kỹ thuật khác nhau. Nó đã có mặt và phục vụ ở tất cả các mặt trong đời sống, từ
giải trí, vui chơi đến quân sự, làm nông nghiệp,.. Bên cạnh sự phát triển của cơng
nghệ thì khơng thể khơng nhắc tới sự phát triển của Internet, nó đã giúp cho cuộc
sống trở nên dễ dàng, tiện nghi và giúp con người trong nhiều mặt.
Trong bài báo cáo này, nhóm chúng em nghiên cứu, đánh giá về Mạng cảm biến
không dây WSN và ứng dụng nó để giúp con người trong việc làm nơng nghiệp.
Nội dung bài báo cáo gồm 2 phần chính:
1. Mạng cảm biến không dây WSN
2. Ứng dụng WSN vào mô hình nơng nghiệp thơng minh
Nội dung từng phần:
3
ACK
ADC
AP
Thuật ngữ viết tắt
Acknowledgement Code
Một bản tin xác nhận
Analog-to-Digital Converter
Bộ chuyển đổi tương tự-số
Access Point
Điểm truy nhập
CCA
Clear Channel Assessment
Đánh giá kênh có rỗi khơng
CTS
DA
Clear-to-send
Destination Address
Field Programmable Gate
Array
MAC
Media Access Control
QoS
Quality of Service
RAM
Random Access Memory
ROM
RTS
Rx
SA
SMAC
TDM
A
TMAC
Tx
WSN
Read-Only Memory
Ready-to-send
Receive
Source Address
Xóa để gửi
Địa chỉ đích
Loại mạch tích hợp cỡ lớn dùng
cấu trúc mảng phần tử logic
Điều khiển truy nhập đường
truyền
Chất lượng dịch vụ
Bộ nhớ khả biến cho phép truy
xuất đọc-ghi ngẫu nhiên
Bộ nhớ chỉ đọc
Sẵn sàng để gửi
Nhận/Thu
Địa chỉ nguồn
Sensor-MAC
Giao thức S-MAC
Time-division multiple access
Đa truy nhập phân chia theo thời
gian
Timeout-MAC
Giao thức T-MAC
Transmission
Wireless Sensor Network
Phát/Truyền
Mạng cảm biến không dây
FPGA
4
Chương 1: TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY WSN
Trong những năm gần đây, mạng cảm biến không dây đang là chủ đề thu hút được nhiều
sự quan tâm của nhiều nhà nghiên cứu cũng như các công ty công nghệ điện tử - viễn
thông trên thế giới. Với tính ưu việt của mình về giá thành thấp, khả năng tự cấu hình
mạng, chịu được các điều kiện trong môi trường đặc biệt, mạng cảm biến không dây
đang được kỳ vọng sẽ có nhiều tác động tích cực hơn đến cuộc sống của chúng ta. Tuy
vậy, việc thiết kế và thực hiện có hiệu quả mạng cảm biến khơng dây phải đối mặt với
rất nhiều thách thức, một trong những thách thức lớn nhất trong mạng cảm biến là
nguồn năng lượng bị giới hạn và không thể truyền lại, chính vì thế hiện nay rất nhiều
nghiên cứu đang tập trung vào việc cải thiện khả năng sử dụng hiệu quả năng lượng của
toàn mạng.
1.1 Khái niệm mạng cảm biến không dây WSN.
Một mạng cảm biến không dây (Wireless Sensor Network- WSN) có thể hiểu
đơn giản là một mạng liên kết các thiết bị đơn giản với nhau bằng kết nối không dây (vô
tuyến, hồng ngoại, quang học) bao gồm nhiều nút cảm biến nhỏ kết hợp với nhau bằng
sóng vô tuyến. Số lượng lớn các nút được triển khai dầy đặc bên trong hoặc ở rất gần
đối tượng cần thăm dị, thu thập thơng tin dữ liệu. Vị trí các cảm biến khơng cần định
trước vì vậy nó cho phép triển khai ngẫu nhiên trong các vùng không thể tiếp cận hoặc
các khu vực nguy hiểm. Khả năng tự tổ chức mạng và cộng tác làm việc của các cảm
biến không dây là những đặc trưng rất cơ bản của mạng này. Với số lượng lớn các cảm
biến không dây được triển khai gần nhau thì truyền thơng đa liên kết được lựa chọn để
công suất tiêu thụ là nhỏ nhất (so với truyền thông đơn liên kết) và mang lại hiệu quả
truyền tín hiệu tốt hơn so với truyền khoảng cách xa. Cấu trúc cơ bản của mạng cảm
biến khơng dây được thể hiện trên hình 1.1.
Hình 1.1: Cấu trúc cơ bản của mạng cảm biến không dây.
5
Các nút cảm biến được triển khai trong một trường cảm biến (sensor field). Mỗi
nút cảm biến được phát tán trong mạng có khả năng thu thập thơng số liệu, định tuyến
số liệu về bộ thu nhận (Sink) để chuyển tới người dùng (User) và định tuyến các bản tin
mang theo yêu cầu từ nút Sink đến các nút cảm biến. Số liệu được định tuyến về phía bộ
thu nhận (Sink) theo cấu trúc đa liên kết khơng có cơ sở hạ tầng nền tảng (Multihop
Infrastructureless Architecture), tức là không có các trạm thu phát gốc hay các trung tâm
điều khiển. Bộ thu nhận có thể liên lạc trực tiếp với trạm điều hành (Task Manager
Node) của người dùng hoặc gián tiếp thông qua Internet hay vệ tinh (Satellite). Mỗi nút
cảm biến bao gồm bốn thành phần cơ bản là: bộ cảm biến, bộ xử lý, bộ thu phát không
dây và nguồn điện. Tuỳ theo ứng dụng cụ thể, nút cảm biến cịn có thể có các thành
phần bổ sung như hệ thống tìm vị trí, bộ sinh năng lượng và thiết bị di động. Các thành
phần trong một nút cảm biến được thể hiện trên hình 2.1. Bộ cảm biến thường gồm hai
đơn vị thành phần là đầu đo cảm biến (Sensor) và bộ chuyển đổi tương tự sang số
(ADC). Các tín hiệu tương tự được thu nhận từ đầu đo, sau đó được chuyển sang tín
hiệu số bằng bộ chuyển đổi ADC, rồi mới được đưa tới bộ xử lý. Bộ xử lý, thường kết
hợp với một bộ nhớ nhỏ, phân tích thơng tin cảm biến và quản lý các thủ tục cộng tác
với các nút khác để phối hợp thực hiện nhiệm vụ. Bộ thu phát đảm bảo thông tin giữa
nút cảm biến và mạng bằng kết nối khơng dây, có thể là vơ tuyến, hồng ngoại hoặc bằng
tín hiệu quang. Một thành phần quan trọng của nút cảm biến là bộ nguồn. Bộ nguồn, có
thể là pin hoặc ắc quy, cung cấp năng lượng cho nút cảm biến và không thay thế được
nên nguồn năng lượng của nút thường là giới hạn. Bộ nguồn có thể được hỗ trợ bởi các
thiết bị sinh điện, ví dụ như các tấm pin mặt trời nhỏ. Hầu hết các công nghệ định tuyến
trong mạng cảm biến và các nhiệm vụ cảm biến yêu cầu phải có sự nhận biết về vị trí
với độ chính xác cao. Do đó, các nút cảm biến thường phải có hệ thống tìm vị trí. Các
thiết bị di động đơi khi cũng cần thiết để di chuyển các nút cảm biến theo yêu cầu để
đảm bảo các nhiệm vụ được phân công.
1.2 Cấu trúc của một mạng cảm biến không dây.
1.2.1. Các thành phần trong mạng cảm biến không dây.
Hệ thống phần cứng của WSN bao gồm 3 thành phần cơ bản: nút nguồn hay nút
cảm biến là các nút làm nhiệm vụ cảm biến, kết hợp và gửi dữ liệu; nút sink là các nút
chỉ làm nhiệm vụ thu thập dữ liệu từ nguồn và chuyển cho AP, cũng có thể làm nhiệm
vụ trung gian giữa các mạng WSN và các hệ thống mạng khác; AP làm nhiệm vụ trung
gian trung chuyển dữ liệu, đơi khi vai trị của AP khơng rõ ràng.
6
Hình 1.2.1: Các thành phần của nút cảm biến.
Nút Sink
Nút sink chứa các thông tin các nút khác cần và gửi yêu cầu tới. Nút sink có thể
là một thành phần bên trong mạng (là một nút cảm biến) hoặc bên ngồi mạng, có thể là
một thiết bị vật lý thực có khả năng tương tác với mạng cảm biến, hoặc cũng có thể là
một gateway logic kết nối tới các vùng mạng khác lớn hơn như Internet, khi các thơng
tin cần phải trích xuất từ các nút mạng được yêu cầu từ các thành phần ngoài mạng cảm
biến. Nút sink chịu trách nhiệm tương tác với các nút cảm biến, chuyển các dữ liệu đã
được xử lý từ các nút cảm biến đến các trạm gốc hoặc đến các AP. Nhờ sử dụng bộ vi
xử lý, nút sink có khả năng xử lý tín hiệu kỹ thuật số. Bộ vi xử lý có thể bao gồm nhiều
khối mơ-đun khác nhau như ăng ten, bộ thu phát, bộ xử lý, bộ nhớ ngồi, khối đầu vào,
màn hình hiển thị và pin và mạch sạc. Nguồn nuôi của nút Sink thường là một pin có thể
sạc được và có thời gian hoạt động ít nhất từ 8h đến 12h. Do giới hạn về khả năng tính
toán của bộ xử lý trên từng nút mạng cũng như để tiết kiệm năng lượng cho nút, thuật
tốn xử lý tín hiệu và dữ liệu được sử dụng trong mạng cảm biến không thường là kiểu
dây phi tập trung (giảm tải cho các nút mạng gần hết năng lượng), hoặc gửi dữ liệu thô
cho các trạm gốc có khả năng xử lý mạnh và ít phụ thuộc vào mức độ tiêu thụ năng
lượng.
Nút cảm biến (Sensor Nút)
Một mạng cảm biến không dây thường là một tập hợp nhiền nút cảm biến được
phân bố trong một diện tích rộng. Các nút cảm biến đều có khả năng cảm biến môi
trường và xử lý thông tin thu thập được một cách độc lập. Sau đó các nút mạng sẽ thực
hiện gửi thông tin đã qua xử lý đến bộ xử lý trung tâm bằng cách gửi gián tiếp qua các
nút lân cận. Thông thường một nút cảm biến sẽ bao gồm những thành phần như: Bộ
7
phận thu phát sóng, bộ xử lý, bộ nhớ, một hoặc nhiều đơn vị cảm biến và bộ nguồn hữu
hạn.
Bộ xử lý: Là một vi điều khiển hay một máy tính nhỏ, trên một mạch tích hợp
duy nhất có chứa một lõi xử lý, bộ nhớ và đầu vào/đầu ra. Nhiệm vụ của bộ xử lý là lập
trình cho các tác vụ, xử lý dữ liệu và điều khiển các thành phần khác. Các kiểu bộ xử lý
có thể được sử dụng trong WSN: bộ vi xử lý, bộ xử lý tín hiệu số, FPGA (Field Program
Gate Array). Trong đó vi xử lý được sử dụng nhiều hơn cả. Ví dụ như cảm biến Mica2
Mote sử dụng bộ xử lý ATMega 128L Microcontroller.
Bộ thu phát tín hiệu: Đảm nhiệm việc thu phát tín hiệu vơ tuyến. Bộ thu phát
thường sử dụng sóng vơ tuyến, laser hoặc hồng ngoại, song sóng vơ tuyến được sử dụng
phổ biến hơn cả vì do khả năng đáp ứng các ứng dụng trong một hệ thống mạng cảm
biến khơng dây. Bộ thu phát tín hiệu có các trạng thái như: Truyền tin, Nhận tin, Chờ và
Ngủ.
Bộ nhớ: Bao gồm các bộ nhớ flash và và thanh RAM của bộ vi xử lý. Có thể có
cả các thẻ nhớ ngồi để lưu trữ thơng tin trước và sau khi xử lý.
Bộ nguồn: Trong quá trình hoạt động của một nút cảm biến, việc cảm ứng môi
trường, xử lý và truyền dữ liệu tiêu thụ phần lớn nguồn năng lượng hữu hạn của nút
mạng. Trong đó tiêu tốn nhiều năng lượng nhất là dành cho quá trình truyền dữ liệu.
Lựa chọn phổ biến cho nguồn năng lượng trong các cảm biếnlà pin. Do việc bị giới hạn
nguồn năng lượng nên một trong những ưu tiên hàng đầu trong thiết kế là vận hành
mạng cảm biến không dây la việc tiết kiệm năng lượng cho các nút cảm biến. Hiện nay
đã có rất nhiều nghiên cứu cải tiến nhằm tăng cường thời lượng hoạt động của các nút
cảm biến. Việc sử dụng các nguồn năng lượng tự nhiên để thay thế như pin năng lượng
mặt trời cho các nút cảm biến cũng đã được tính tốn như một giải pháp thay thế nguồn
năng lượng hiện tại.
Bộ cảm biến: Là thiết bị phần cứng được sử dụng để quan sát các thông số vật lý
ở môi trường xung quanh. Dữ liệu cảm ứng được thể hiện ở dạng dữ liệu tương tự và
được số hóa bằng bộ ADC. Sau đó dữ liệu số được gửi cho bộ xử lý để thực hiện các tác
vụ tiếp theo. Các cảm biến thường là các vi mạch để đảm bảo kích thước nhỏ và tiêu thụ
rất ít năng lượng. Một nút cảm biến có thể sử dụng cùng lúc một hoặc nhiều loại cảm
biến. Ngồi ra có thể có thêm những thành phần khác tùy thuộc vào từng ứng dụng như
là hệ thống định vị, bộ sinh điện và bộ phận di động.
Các thành phần của phần cứng trong mơ hình mạng cảm biến không dây thường sử
dụng các hệ điều hành nhúng với thiết kế đơn giản và tập trung vào nhiệm vụ của nút,
đồng thời ưu tiên việc tối ưu hóa sử dụng năng lượng. Do đó, các nút cảm biến sử dụng
các bộ xử lý có khả năng đảm bảo các kỹ thuật được sử dụng không tốn quá nhiều tài
nguyên và cần thiết cho quá trình hoạt động của nút mạng.
8
1.2.2 Các mơ hình cấu trúc của mạng cảm biến không dây.
Khi thiết kế một cấu trúc mạng cảm biến không dây cần đảm bảo việc sử dụng
nguồn tài nguyên hạn chế của mạng tối ưu nhất có thể, từ đó kéo dài thời gian sống của
mạng. Vì vậy thiết kế cấu trúc mạng và kiến trúc mạng phải cần phải quan tâm đến các
yếu tố sau:
Giao tiếp không dây đa chặng: Khi sử dụng chủ yếu giao tiếp vô tuyến thì giao
tiếp trực tiếp giữa hai nút sẽ có nhiều hạn chế do khoảng cách vật lý hoặc tồn tại vật cản.
Trong trường hợp nút phát và nút thu ở vị trí cách xa nhau thì cần tăng cơng suất phát so
với khoảng cách gần. Để xử lý vấn đề này, có thể sử dụng các nút trung gian đóng vai
trị chuyển tiếp để giảm cơng suất tổng thể. Do vậy các mạng cảm biến không dây cần
phải dùng giao tiếp đa chặng.
Sử dụng hiệu quả năng lượng: Để kéo dài thời gian hoạt động của mạng cảm
biến không dây, đảm bảo hiệu suất sử dụng năng lượng đạt yêu cầu là kĩ thuật quan
trọng.
Tự động cấu hình: Mạng cảm biến khơng dây cần phải có khả năng tự cấu hình
các thơng số của bản thân. Một ví dụ về khả năng này là các nút có thể xác định vị trí
địa lý của nó thơng qua các nút khác (gọi là tự định vị).
Công tác, xử lý trong mạng và tập trung dữ liệu: Trong một số ứng dụng, một
nút cảm biến không thể đảm bảo công việc thu thập đủ dữ liệu mà cần phải có nhiều nút
cùng cộng tác hoạt động thì mới thu thập đủ dữ liệu đáng tin cậy. Trong trường hợp đó,
nếu từng nút thu dữ liệu và gửi đến trạm gốc thì sẽ rất hao phí băng thơng và năng
lượng. Việc kết hợp các dữ liệu của nhiều nút trong một vùng trước khi gửi tới trạm gốc
sẽ tiết kiệm băng thông và năng lượng cần cho mỗi phiên truyền tin. Các tác vụ này có
thể là xác định nhiệt độ trung bình, hay cao nhất của một khu vực.
Hình 1.2.2a: Mơ hình mạng cảm biến khơng dây với các nút cảm biến phân bố rải rác
trong trường cảm biến
9
Do vậy, cấu trúc mạng cảm biến không dây cần được thiết kế để thỏa mãn:
Kết hợp tiết kiệm năng lượng với khả năng tự định tuyến.
Tích hợp dữ liệu và giao thức mạng.
Truyền năng lượng hiệu quả qua các phương tiện không dây.
Chia sẻ nhiệm vụ giữa các nút lân cận.
Các nút cảm biến được phân bố trong một vùng cảm biến như hình 1.2.2a. Mỗi một
nút cảm biến có khả năng thu thập dữ liệu và định tuyến lại đến các trạm gốc. Hình vẽ
trên cũng thể hiện cấu trúc đa điểm định tuyến dữ liệu. Các trạm gốc có thể giao tiếp với
các nút quản lý nhiệm vụ (nút task manager) thông qua mạng Internet hoặc vệ tinh.
Có thể phân chia cấu trúc của mạng cảm biến thành 2 loại: cấu trúc phẳng và cấu trúc
phân cấp.
Cấu trúc phẳng
Trong cấu trúc phẳng (hình 1.2.2b), tất cả các nút đều bình đẳng và đồng nhất về
hình dạng và chức năng. Các nút giao tiếp với trạm gốc qua hình thức đa chặng và sử
dụng các nút ngang hàng khác như bộ tiếp sóng. Do có phạm vi truyền cố định, các nút
gần trạm gốc hơn đảm nhiệm vai trị của bộ tiếp sóng cho một lượng lớn nút nguồn.
Trong trường hợp tất cả các nguồn đều dùng cùng một tần số để truyền dữ liệu, tài
nguyên mạng có thể chia sẻ là thời gian.
Hình 1.2.2b: Cấu trúc phẳng của mạng cảm biến không dây.
Cấu trúc phân cấp
Trong cấu trúc phân cấp như hình 1.2.2c, mạng cảm biến được phân chia thành các
cụm, mỗi cụm có một nút chủ cụm. Các nút khác trong cụm thu thập dữ liệu, rồi gửi đơn
chặng hoặc đa chặng tới nút chủ cụm (tùy theo kích thước của cụm và vị trí của nút
nguồn).
10
Hình 1.2.2c: Cấu trúc phân cấp của mạng cảm biến không dây.
Trong cấu trúc này các nút tạo thành một hệ thống cấp bậc mà ở đó mỗi nút ở
một mức xác định thực hiện các nhiệm vụ đã định sẵn. Trong cấu trúc phân cấp thì chức
năng cảm nhận, tính tốn và phân phối dữ liệu khơng đồng đều giữa các nút. Những
chức năng này có thể phân theo cấp, cấp thấp nhất thực hiện tất cả nhiệm vụ cảm nhận,
cấp giữa thực hiện tính tốn, và cấp trên cùng thực hiện phân phối dữ liệu.
1.3 Kiến trúc giao thức của mạng cảm biến khơng dây.
Mục đích thiết kế WSNs là để phát triển giải pháp không dây dựa trên tiêu chuẩn
về hao phí là thấp nhất, đáp ứng các yêu cầu như tốc độ dữ liệu thấp – trung bình, tiêu
thụ cơng suất thấp, đảm bảo độ bảo mật và tin cậy cho hệ thống. Vị trí node cảm biến
hầu như khơng xác định trước, có nghĩa là giao thức và giải thuật mạng phải có khả
năng tự xây dựng.
Các nhà nghiên cứu đã phát triển nhiều giao thức đặc biệt cho WSNs, trong đó
vấn đề căn bản là năng lượng tiêu thụ phải thấp nhất đến mức có thể. Chủ yếu tập trung
vào giao thức định tuyến, bởi vì định tuyến có khác so với các mạng truyền thống (phụ
thuộc vào ứng dụng và kiến trúc mạng).
11
Hình 1.3: Kiến trúc giao thức mạng cảm biến.
+ Lớp vật lý: có nhiệm vụ lựa chọn tần số, tạo ra tần số sóng mang, phát hiện tín hiệu,
điếu chế và mã hố tín hiệu.
+ Lớp liên kết số liệu: Có nhiệm vụ ghép các luồng dữ liệu, phát hiện các khung dữ
liệu, cách truy cập đường truyền và điều khiển lỗi. Vì mơi trường có tạp âm và các node
cảm biến có thể di động, giao thức điều khiển truy nhập môi trường (MAC) phải xết đến
vấn đề công suất và phải có khả năng tối ưu hố việc va cham với thông tin quảng bá
của các node lân cận.
+ Lớp mạng: Quan tâm đến việc chọn đường số liệu được cung cấp bởi lớp truyền tải.
+ Lớp truyền tải: giúp duy trì luồng số liệu nếu ứng dụng mạng cảm nhận yêu cầu. Lớp
truyền tải chỉ cần thiết khi hệ thống có kế hoạch được truy cập thơng qua mạng Internet
và các mạng bên ngoài khác.
+ Lớp ứng dụng: tuỳ theo nhiệm vụ cảm biến, các loại phần mềm ứng dụng khác nhau
có thể được xây dựng và sử dụng ở lớp ứng dụng.
Mặt phẳng quản lý công suất: Điều khiển việc sử dụng công suất của node cảm biến.
Ví dụ:
Node cảm biến có thể tắt bộ thu sau khi nó nhận một bản tin để tránh tạo ra các bản
tin giống nhau.
Khi mức công suất của node cảm biến thấp, nó sẽ phát quảng bá sang các node cảm
biến bên cạnh thông báo rằng mức năng lượng của nó thấp và nó khơng thể tham gia
vào q trình định tuyến. Cơng suất cịn lại được giành cho nhiệm vụ cảm biến.
Mặt phẳng quản lý di chuyển: Có nhiệm vụ phát hiện và đăng ký sự chuyển động
của các node. Từ đó có thể xác định xem ai là hàng xóm của mình.
Mặt phẳng quản lý nhiệm vụ: Có nhiệm vụ cân bằng và sắp xếp nhiệm vụ cảm biến
giữa các node trong vùng đó đều thực hiện nhiệm vụ cảm biến tai cùng một thời điểm.
12
1.4 Đặc điểm của mạng cảm biến khơng dây.
WSNs có một số đặc điểm khác các mạng không dây khác (mạng adhoc), như
tính chất hướng dữ liệu. Do vậy cấu trúc các giao thức mạng cũng khác, WSNs đòi hỏi
một kiến trúc ứng dụng nhạy cảm hơn, đồng thời đòi hỏi một số dịch vụ cơ bản như
định vị và đồng bộ thời gian để cho phép công tác hiệu quả và thu thập dữ liệu tốt. Hơn
nữa, do kiến trúc và nhiệm vụ của WSN nên nó dễ bị tấn cơng. Các đặc tính của mạng
cịn phụ thuộc vào các ứng dụng cụ thể.
Nút mạng có tài nguyên hạn chế: Năng lực xử lý yếu, bộ nhớ hạn chế và tốc độ truyền
thông thấp. Nguồn nuôi bằng PIN, mạng triển khai bằng cách rắc trên miền địa hình
phức tạp, nút khơng giám sát do đó khơng thể nạp hoặc thay PIN. Vì vậy, vấn đề năng
lượng hiệu quả cho các nút mạng là rất quan trọng cho việc kéo dài tuổi thọ của mạng.
Hoạt động đồng thời với độ tập trung cao: Hoạt động chính của các thiết bị trong mạng
cảm biến là đo lường và vận chuyển các dịng thơng tin với khối lượng xử lý thấp, gồm
các hoạt động nhận lệnh, dừng, phân tích và đáp ứng. Vì dung lượng bộ nhớ trong nhỏ
nên cần tính tốn rất kỹ về khối lượng công việc cần xử lý và các sự kiện mức thấp xen
vào hoạt động xử lý mức cao. Một số hoạt động xử lý mức cao sẽ khá lâu và khó đáp
ứng tính năng thời gian thực. Do đó, các nút mạng phải thực hiện nhiều cơng việc đồng
thời và cần phải có sự tập trung xử lý cao độ.
Khả năng chịu lỗi: Một số các nút cảm biến có thể khơng hoạt động nữa do thiếu năng
lượng, do những hư hỏng vật lý hoặc do ảnh hưởng của môi trường. Khả năng chịu lỗi
thể hiện ở việc mạng vẫn hoạt động bình thường, duy trì những chức năng của nó ngay
khi cả một số nút mạng không hoạt động.
Quy mô lớn và khả năng mở rộng: Kích thước của WSN khác nhau tùy vào từng ứng
dụng, một số mạng có số lượng nút cảm biến rất lớn (có thể lên đến hang tram nghìn
nút). Do đó cấu trúc mạng mới phải có khả năng mở rộng để có thể làm việc với số
lượng lớn các nút này. Đồng thời điều này cũng khiến cho việc gỡ rối hay tổ chức lập
trình gặp nhiều khó khăn.
Mơ hình truyền thơng mới: Khác với mơ hình truyền thơng khơng dây truyền thống
điển hình adhoc là end to end cịn mơ hình trong WSN có lưu lượng dữ liệu thơng
thường được chuyển từ nhiều nguồn tới một đích.
u cầu thời gian thực: Có một số ứng dụng địi hỏi xử lý dữ liệu tức thì, các cảm nhận
kịp thời thu dữ liệu và truyền sẽ tăng khó khăn trong việc gửi tín hiệu. Độ trễ trong q
trình cảm nhận dữ liệu lớn có thể là vơ ích.
Hoạt động tin cậy: Các thiết bị có số lượng lớn, được triển khai trong phạm vi rộng với
một ứng dụng cụ thể. Việc áp dụng các kỹ thuật mã hóa sửa lỗi truyền thống nhằm tăng
độ tin cậy của các đơn vị riêng lẻ bị giới hạn bởi kích thước cảm biến và công suất. Việc
tăng độ tin cậy của các thiết bị lẻ là điều cốt yếu. Thêm vào đó, khả năng chấp nhận và
khắc phục được sự hỏng hóc của thiết bị đơn lẻ có thể tăng độ tin cậy của ứng dụng.
13
Như vậy, hệ thống hoạt động trên từng nút đơn khơng những mạnh mẽ mà cịn dễ dàng
phát triển các ứng dụng phân tán tin cậy.
Môi trường hoạt động: Các nút cảm biến được thiết lập dày đặc, rất gần hoặc trực tiếp
bên trong các hiện tượng để quan sát. Vì thế, chúng thường làm việc mà khơng cần giám
sát ở những vùng xa xơi. Chúng có thể làm việc ở bên trong các máy móc lớn, ở dưới
đáy biển, hoặc trong những vùng ơ nhiễm hóa học hay sinh học, ở gia đình hay những
tịa nhà lớn.
1.5 Thách thức của mạng cảm biến không dây.
Những thách thức trong mạng cảm biến không dây phát sinh trong thực hiện một
số dịch vụ. Có rất nhiều các thơng số có thể điều khiển và không thể điều khiển bằng
những thực hiện ảnh hưởng của mạng cảm biến như:
Bảo tồn năng lượng: Trong mạng cảm biến không dây mọi nút được trang bị
cảm biến và các thiết bị cảm biến đang ở điều kiện làm việc tùy thuộc vào sức mạnh
được cung cấp bởi pin đính kèm. Để có hiệu suất tốt hơn mạng nên hoạt động trong thời
gian lớn. Như chúng ta biết rằng, nút cảm biến có kích thước nhỏ do vậy pin cũng có
kích thước nhỏ nên năng lực và năng lượng có sẵn là rất ít. Và trong đó tình trạng bơm
lại hoặc thay thế pin là khơng thể. Điều này cũng dẫn đến chi phí rất tốn kém. Để tránh
vấn đề này một số giao thức tiết kiệm năng lượng hơn được thiết kế sao cho node cảm
biến giao tiếp hiệu quả bằng cách tăng cả hai thông lượng và dung lượng mạng.
Hoạt động trong môi trường đối kháng: Mạng cảm biến có thể hoạt động trong
điều kiện mơi trường đối kháng. Vì vậy, vấn đề thiết kế của nút cảm biến được xem xét
cẩn thận. Giao thức cho mạng cảm biến phải mạnh mẽ. Nó im lặng về bất kỳ lỗi nào xảy
ra trong hệ thống.
Thời gian và độ tin cây: IoT sẽ được áp dụng tới các khu vực mà điều khiển thời
gian thức với độ chính xác cao là bắt buộc (nhà máy, trạm không lưu…) hay ở các ứng
dụng giám sát nơi mà kết quả được thu thập cứ mỗi vài giây hay thậm chí là vài phút.
1.6 Ứng dụng của mạng cảm biến không dây.
WSN được ứng dụng đầu tiên trong các lĩnh vực quân sự. Cùng với sự phát triển
của ngành công nghiệp điều khiển tự động, robot, thiết bị thông minh, môi trường, y
tế… WSN ngày càng được sử dụng nhiều trong hoạt động công nghiệp và dân dụng.
Một số ứng dụng cơ bản của WSN:
Cứu trợ thiên tai: Đây là một trong những ứng dụng được chú ý nhất của WSN.
Hiện tượng thường gặp nhất là phát hiện cháy rừng: Các nút cảm biến được trang bị
nhiệt kế và có thể xác định vị trí của nó (theo hệ tọa độ tuyệt đối hoặc tương đối, tức vị
trí của nó so với nút khác). Các cảm biến này được thả vào một đám cháy (ví dụ như
một khu rừng) từ một chiếc máy bay. Chúng tạo ra một “bản đồ nhiệt độ” chung của
14
khu vực hoặc xác định chu vi của khu vực có nhiệt độ cao để có thể tiếp cận từ bên
ngoài. Ví dụ tương tự là kiểm soát tai nạn tại nhà máy hóa chất.
Trong nông nghiệp: Áp dụng WSN vào nông nghiệp làm cho việc thụ phấn và
tưới tiêu được chính xác bằng cách đặt các cảm biến đo độ ẩm/thành phần đất vào môi
trường. Số lượng cảm biến không cần quá nhiều, khoảng một cảm biến cho mỗi vùng có
diện tích 100m × 100 m. Tương tự, giám sát sâu bọ có thể được thực hiện bằng một bộ
theo dõi có độ phân giải cao. Ngoài ra, chăn nuôi có thể tăng lợi nhuận từ việc gắn cảm
biến cho mỗi con lợn hoặc bò để kiểm soát tình trạng sức khỏe của động vật (bằng cách
kiểm tra nhiệt độ cơ thể, …) và báo động nếu vượt qua ngưỡng cho phép.
Chăm sóc sức khỏe và y tế: Cùng cách làm tương tự, sử dụng WSN trong các
ứng dụng chăm sóc sức khỏe đem lại nhiều lợi nhuận nhưng cũng gây tranh cãi về mặt
đạo đức. Phạm vi áp dụng là từ chăm sóc sau phẫu thuật và chuyên sâu, nơi mà cảm
biến trực tiếp gắn vào với bệnh nhân – thể hiện lợi thế so với hữu tuyến – để giám sát
bệnh nhân trong thời gian dài (thường là người cao tuổi) và để quản lý thuốc tự động
(cảm biến nhúng vào bao bì của thuốc, bật báo động khi sử dụng sai cho bệnh nhân). Do
đó, hệ thống theo dõi bệnh nhân và bác sĩ trong bệnh viện giúp tiết kiệm thời gian.
Hình 1.6a. Ứng dụng trong y tế.
Quản lý thiết bị: Để quản lý được nhiều hơn các thiết bị ở trong một tòa nhà, các
WSN cũng có 1 loạt các ứng dụng cụ thể. Một ví dụ đơn giản là vào không cần chìa
khóa ở những nơi mọi người đeo phù hiệu, nó cho phép WSN kiểm tra những người
được phép vào các khu vực đó. Ví dụ này có thể được mở rộng để phát hiện kẻ xâm
nhập, khi phương tiện của họ ra khỏi cơ quan trong giờ làm việc. Một WSN diện rộng
có thể theo dõi vị trí của một phương tiện nào đó và báo cho nhân viên an ninh. Ứng
dụng này có nhiều điểm chung với các ứng dụng trong quân sự. Theo cách khác, một
WSN có thể được sử dụng trong nhà máy hóa chất để kiểm tra rò rỉ hóa chất..
15
Phát hiện sự kiện: Các nút cảm biến phải báo cáo với bộ thu khi nó phát hiện sự xuất
hiện của sự kiện. Những sự kiện đơn giản nhất có thể được phát hiện bởi một nút cảm
biến đơn (ví dụ như vượt quá ngưỡng nhiệt độ); loại sự kiện phức tạp hơn yêu cầu phải
có sự cộng tác của các bộ cảm biến lân cận hoặc thậm chí là các cảm biến ở xa để quyết
định xem liệu sự kiện đã xảy ra chưa (ví dụ như đường biến thiên nhiệt độ trở nên quá
dốc). Nếu nhiều sự kiện khác nhau xảy ra thì phải thực hiện phân loại sự kiện.
Trong hệ thống giao thông thông minh:
+ Giao tiếp giữa biển báo và phương tiện giao thông.
+ Hệ thống điều tiết lưu lượng công cộng.
+ Hệ thống báo hiệu tai nạn, kẹt xe…
thông.
+ Hệ thống định vị phương tiện, trợ giúp điều khiển tự động phương tiện giao
Hình 1.6b. Ứng dụng trong giao thông thông minh.
Ứng dụng trong quân sự, an ninh:
+ Định vị, theo dõi di chuyển của các thiết bị quân sự.
+ Điều khiển tự động các thiết bị quân sự, robot..
+ Kích hoạt thiết bị, vũ khí quân sự.
+ Theo dõi biên giới kết hợp với vệ tinh.
16
Hình 1.6c Ứng dụng trong quân sự
1.7 Giao thức MAC.
Mạng cảm biến không dây là loại mạng đặc biệt với số lượng lớn nút cảm biến
được trang bị bộ vi xử lý, thành phần cảm biến và thành phần quản lý sóng vơ tuyến.
Các nút cảm biến cộng tác với nhau để hoàn thành một nhiệm vụ chung. Trong nhiều
ứng dụng, các nút cảm biến sẽ được triển khai phi cấu trúc như mạng ad hoc. Chúng
phải tự tổ chức để hình thành một mạng khơng dây đa bước nhảy. Thách thức chung
trong mạng không dây là vấn đề xung đột do hai nút gửi dữ liệu cùng lúc trên cùng kênh
truyền.
Giao thức điều khiển truy nhập đường truyền (MAC) đã được phát triển để giúp
đỡ mỗi nút quyết định khi nào và làm sao để truy nhập kênh. Vấn đề này cũng được biết
như sự định vị kênh hoặc đa truy nhập. Lớp MAC được xem xét bình thường như một
lớp con của lớp liên kết dữ liệu trong giao thức mạng Có nhiều giao thức MAC đã được
phát triển cho mạng truyền thông thoại và dữ liệu không dây. Ví dụ điển hình bao gồm
truy cập phân chia theo thời gian (TDMA), truy cập phân chia theo mã (CDMA) và dựa
trên tranh chấp như IEEE 802.11.
Mạng cảm biến khác với mạng dữ liệu không dây truyền thống trên một vài khía
cạnh. Trước hết, đa số các nút trong những mạng cảm biến hoạt động dựa trên nguồn
điện pin, và rất khó để nạp điện cho những nguồn pin của tất cả các nút. Thứ hai, những
nút thường được triển khai trong một kiểu cách đặc biệt phi cấu trúc, chúng phải tự tổ
chức hình thành một mạng truyền thông. Ba là, nhiều ứng dụng cần phải sử dụng số
lượng lớn nút, và một độ nút sẽ thay đổi tại những địa điểm và thời gian khác nhau, với
cả những mạng mật độ thưa lẫn những nút với nhiều lân cận. Cuối cùng, đa số các lưu
thông trong mạng được thúc đẩy bởi những sự kiện cảm ứng, phân bố không đều và rất
co cụm. Tất cả những đặc trưng này cho thấy những giao thức MAC truyền thống khơng
thích hợp cho những mạng cảm biến khơng dây nếu khơng có những cái biến.
17
Để thiết kế giao thức MAC tốt cho các mạng cảm biến khơng dây, cần xem xét
các thuộc tính sau. Đầu tiên là hiệu quả năng lượng. Như đã nêu ở trên, các nút cảm biến
được cấp nguồn pin và thường rất khó thay đổi hoặc sạc pin cho các nút này. Thực tế,
một ngày nào đó con người mong đợi một số nút đủ rẻ để chúng bị loại bỏ thay vì sạc
lại. Kéo dài tuổi thọ mạng cho những nút là một vấn đề quan trọng. Một thuộc tính quan
trọng khác là khả năng mở rộng và thích ứng với những thay đổi về kích thước mạng,
mật độ nút và cấu trúc liên kết. Một số nút có thể chết theo thời gian, một số nút mới có
thể tham gia sau này, một số nút có thể di chuyển đến các vị trí khác nhau. Một giao
thức MAC tốt nên phù hợp theo cách như vậy, có thể thay đổi, mở rộng. Các thuộc tính
quan trọng khác bao gồm công bằng, độ trễ, thông lượng và băng thông hiệu dụng có thể
là thứ cấp trong mạng cảm biến.
1.8 Giao thức Sensor-MAC
S-Mac cố gắng kế thừa sự linh hoạt, tính khả biến của giao thức trên nền cạnh
tranh trong khi cải tiến tính hiệu quả sử dụng năng lượng trong mạng đa bước nhảy. SMAC cố gắng giảm bớt tiêu thụ năng lượng từ tất cả các nguồn được xác định là nguyên
nhân gây tiêu hao năng lượng, đó là: nghe khi rỗi (idle listening), xung đột (collision),
nghe thừa (overhearing) và xử lý thông tin điều khiển (control overhead). Để đạt được
mục đích như thiết kế, S-MAC được thiết kế gồm có ba vấn đề chính: thực hiện chu kỳ
thức - ngủ; tránh xung đột và nghe thừa; xử lý thông điệp.
1.8.1 Thực hiện chu kỳ thức – ngủ.
Trong những ứng dụng của mạng cảm biến, nút cảm biến thường ở trạng thái nhàn
rỗi trong phần lớn thời gian nếu không xuất hiện sự kiện cảm biến. Thực tế tốc độ trao
đổi dữ liệu rất thấp do vậy không cần thiết để các nút cảm biến ở trạng thái thức trong
tất cả thời gian. S-MAC được thiết kế để giảm bớt thời gian thức bằng cách để cho nút
cảm biến định kỳ chuyển sang trạng thái ngủ. Ví dụ, trong chu kỳ một giây, nút cảm
biến ở trạng thái ngủ nửa giây và ở trạng thái nghe ở nửa giây cịn lại thì chu trình hoạt
động giảm bớt tới 50%. Như vậy có thể tiết kiệm được 50% năng lượng.
a) Lược đồ cơ bản
Mỗi nút cảm biển chuyển vào trạng thái “ngủ” trong một khoảng thời gian, sau đó
tỉnh dậy và nghe xem liệu có nút nào muốn “nói chuyện” với nó. Trong thời gian ngủ,
nút cảm biến tắt bộ phận thu phát vô tuyến và đặt thời gian để quay về trạng thái thức.
Khoảng thời gian cho việc thức và ngủ có thể được lựa chọn theo những ứng
dụng khác nhau.
18
Hình 1.8.1a : Lược đồ S-MAC.
Lược đồ trên yêu cầu có định kỳ sự đồng bộ giữa các nút cảm biến trong vùng
tránh sai lệch thời gian. Tất cả các nút cảm biến đều tự do lập lịch cho mình chu kỳ
thức/ngủ. Tuy nhiên, để giảm bớt phải xử lý những gói tin điều khiển, tốt hơn là để cho
các nút trong vùng đồng bộ cùng nhau. Có nghĩa là chúng thức cùng lúc và chuyển sang
trạng thái ngủ cùng lúc. Nhưng cũng cần chú ý trong một mạng đa bước nhảy khơng
phải tất cả các nút lân cận có thể đồng bộ hóa cùng nhau. Hai nút lân cận A và B có thể
có lịch khác nhau vì chúng tiến hành đồng bộ với những nút khác nhau, C và D (Hình
1.8.1b)
Hình 1.8.1b : Đồng bộ giữa các nút. Hai nút lân cận A, B có lịch khác nhau vì A đồng
bộ với C, B đồng bộ với D.
Các nút cảm biến trao đổi với nhau thông tin lịch làm việc của chúng bằng cách
phát quảng bá cho tất cả các nút lân cận hiện thời. Điều này bảo đảm rằng tất cả các nút
trong vùng vẫn có thể nói chuyện được với nhau dù chúng có lịch làm việc khác nhau.
Ví dụ trong Hình 1.8.1b, nếu nút A muốn nói chuyện với nút B, nó chỉ cần đợi cho đến
khi B ở trạng thái thức. Nếu có nhiều nút trong vùng lân cận muốn nói chuyện với một
nút, thì chúng cần tiến hành cạnh tranh chiếm đường truyền khi nút nhận ở trạng thái
thức, sử dụng gói tin RTS (Request to Send) và CTS (Clear to Send). Nút nào gửi gói tin
RTS ra trước sẽ giành quyền truy nhập và nút nhận sẽ trả lời với một gói CTS. Sau đó
chúng bắt đầu sự truyền dữ liệu, lúc này chúng khơng tn theo lịch làm việc trước đó
của chúng cho đến khi chúng kết thúc truyền dữ liệu.
Nhược điểm của lược đồ là sự gia tăng độ trễ do duy trì chu kỳ ngủ (sleep) của
mỗi nút. Hơn nữa, độ trễ có thể tích lũy qua mỗi chặng (hop), nên yêu cầu giới hạn độ
trễ của ứng dụng tạo ra giới hạn thời gian ngủ trong chu kỳ làm việc của các nút cảm
biến.
b) Tiến trình lựa chọn và duy trì lịch làm việc
Trước khi mỗi nút bắt đầu chu kỳ thức/ngủ, nó cần phải chọn một lịch biểu làm
việc (khi nào thức, khi nào ngủ) và trao đổi lịch này với các nút lân cận. Mỗi nút duy trì
một bảng lưu giữ tất cả các thời gian biểu của các nút lân cận mà nó biết.
19
Các nút hiếm khi áp dụng nhiều lịch trình, vì các nút sẽ cố gắng chọn một thời
gian biểu đã tồn tại trước khi tự chọn cho mình một thời gian biểu độc lập. Mặt khác, có
thể một số nút lân cận không phát hiện ra nhau khi bắt đầu do va chạm khi lịch phát
sóng. Chúng vẫn có thể tìm thấy nhau sau trong lần lắng nghe định kỳ tiếp theo .
Để minh họa thuật toán này, hãy xem xét một mạng mà tất cả các nút có thể nghe
thấy nhau. Bộ đếm thời gian của một nút sẽ kích hoạt đầu tiên và chương trình phát sóng
của nó sẽ đồng bộ hóa tất cả các chương trình đồng bộ theo lịch trình của nó. Nếu thay
vào đó, hai nút chỉ định lịch biểu một cách độc lập (hoặc bởi vì chúng khơng thể nghe
thấy nhau, hoặc bởi vì chúng xảy ra để truyền gần như cùng một lúc), những nút đó ở
biên giới giữa hai lịch trình sẽ chấp nhận cả hai. Bằng cách này, một nút chỉ cần gửi một
lần cho một gói quảng bá. Nhược điểm là các nút biên giới này có ít thời gian để ngủ
hơn và tiêu hao nhiều năng lượng hơn những nút khác.
Một tùy chọn khác để cho những nút trên vùng biên chấp nhận duy nhất một thời
gian biểu là chấp nhận cái đến trước tiên. Khi nó biết thời gian biểu khác mà một số nút
lân cận của nó theo, nó có thể vẫn cịn “nói chuyện”. Tuy nhiên, với những gói quảng
bá, nó cần gửi hai lần với hai thời gian biểu khác nhau. Ưu điểm của phương pháp này
là các nút nằm trong vùng biên sẽ có cùng chu kỳ nghe ngủ với những nút khác.
c) Thực hiện đồng bộ
Lược đồ thức/ngủ yêu cầu sự đồng bộ giữa những nút trong vùng lân cận. Việc
các nút trong vùng lân cận định kỳ cập nhật lẫn nhau thời gian biểu của chúng là cần
thiết để ngăn ngừa sự sai lệch thời điểm của chu kỳ nghe/ngủ.
Việc cập nhật thời gian biểu được thực hiện bằng trao đổi gói tin đồng bộ SYNC.
Gói tin SYNC rất ngắn, và bao gồm địa chỉ của nút gửi và thời điểm chuyển sang trạng
thái ngủ tiếp theo của nó.
Để một nút nhận được cả những gói đồng bộ lẫn những gói dữ liệu, chúng ta chia
khoảng thức (active time) của nó thành hai phần. Phần đầu tiên để nhận những gói tin
đồng bộ, phần hai để nhận những gói RTS (Hình 1.8.1c). Mỗi phần được chia tiếp thành
nhiều khe thời gian cho những nút gửi để thực hiện cảm nhận sóng mang. Ví dụ, nếu
một nút gửi muốn gửi một gói tin đồng bộ thì nó khởi động cảm nhận sóng mang khi nút
nhận bắt đầu nghe. Nó ngẫu nhiên lựa chọn một khe thời gian để kết thúc cảm nhận
sóng mang. Nếu nó khơng phát hiện ra bất kỳ sự truyền nào vào khoảng cuối khe, thì nó
chiếm được đường truyền và bắt đầu gửi gói tin đồng bộ của nó ở tại thời điểm ấy. Việc
thực hiện truyền gói dữ liệu cũng được thực hiện tương tự.
Hình 1.8.1c cũng thể hiện mối quan hệ định thời của ba trường hợp có thể khi
một nút gửi thực hiện truyền tới một nút nhận. CS là cảm ứng sóng mang. Trong lược
đồ, Nút gửi 1 chỉ gửi một gói tin đồng bộ SYNC. Nút gửi 2 chỉ muốn gửi dữ liệu. Nút
gửi 3 gửi một gói tin đồng bộ và một gói tin RTS.
20
Mỗi nút định kỳ quảng bá những gói tin đồng bộ tới các lân cận của nó kể cả khi
nó khơng có nút đồng bộ theo. Điều này cho phép một nút mới gia nhập nhóm lân cận
đã hình thành trước đó. Nút mới thực hiện thủ tục để chọn một thời gian biểu có sẵn làm
thời gian biểu của nó. Quãng thời gian nghe đủ dài để nó có khả năng học và theo một
thời gian biểu có sẵn trước khi nó tự chọn cho mình một thời gian biểu độc lập.
Hình 1.8.1c : Quan hệ định thời giữa các nút nhận và các nút gửi.
1.8.2. Tránh xung đột và nghe thừa.
Tránh xung đột là một nhiệm vụ cơ bản của giao thức MAC. S-MAC sử dụng
một lược đồ tránh xung đột trên nền cạnh tranh. Khi một nút phát đi một gói tin, gói tin
đó được thu bởi tất cả các nút lân cận của nó mặc dù chỉ một trong số chúng là nút nhận,
đó chính là nghe thừa. Phải nghe thừa làm cho giao thức MAC trên nền cạnh tranh kém
hiệu quả về tiết kiệm năng lượng hơn so với những giao thức TDMA, vậy nên nó cần
phải tránh.
a) Tránh xung đột
Khi nhiều nút có nhu cầu gửi số liệu vào cùng một thời điểm, chúng cần cạnh
tranh để quyết định một nút được quyền gửi.
Có một trường độ dài phát trong mỗi gói tin được truyền đi để chỉ rằng việc
truyền này được duy trì trong thời gian bao lâu. Nút ghi giá trị này trong một biến gọi là
vectơ thời gian chiếm giữ mạng NAV (Network Allocation Vector) và đặt một đồng hồ
21
tính giờ cho nó. Vào mọi thời điểm khi NAV hoạt động, nút cảm biến tuần tự giảm giá
trị NAV cho đến khi về giá trị 0. Khi một nút có dữ liệu gửi, đầu tiên sẽ kiểm tra đồng
hồ NAV, nếu giá trị khác 0 thì xác định rằng đường truyền bận và không phát dữ liệu.
kỹ thuật này được gọi là cảm nhận sóng mang ảo (Virtual Carrier Sense).
Cảm nhận sóng mang vật lý được thực hiện tại lớp vật lý bằng cách thực hiện
nghe kênh để truyền. đường truyền chỉ được xác định là rỗi nếu cả cảm nhận sóng mang
vật lý lẫn cảm nhận song mang ảo đều xác định đường truyền rỗi.
Tất cả các nút gửi thực hiện cảm nhận sóng mang trước khi bắt đầu phát dữ liệu.
Nếu một nút thất bại trong việc thăm dị đường truyền, thì nó chuyển sang trạng thái ngủ
và thức giấc tại thời điểm nút nhận ở trạng thái nghe và đường truyền rỗi. Những gói tin
Unicast sẽ theo tuần tự RTS/CTS/Data/ACK giữa nút gửi và nút nhận.
b) Tránh nghe thừa.
S-MAC tránh nghe thừa bằng cách cho những nút có khả năng gây nhiễu khơng tham
gia q trình truyền phát dữ liệu, chuyển sang trạng thái ngủ sau khi nhận được gói tin
RTS hoặc CTS. Khi những gói dữ liệu ln dài hơn gói tin điều khiển, cách tiếp cận là
ngăn cản các nút lân cận nghe thừa những gói dữ liệu dài và sử dụng gói tin ACK theo
sau. Phần tiếp theo sẽ mô tả cách truyền có hiệu quả một gói tin dài kết hợp tránh nghe
thừa.
Hình 1.8.2b. Thực hiện tránh nghe thừa. Nút nào nên chuyển tới trạng thái ngủ.
Trong Hình 1.8.2b, nút A, B, C, D, E, Và F hình thành một mạng đa bước nhảy mà từng
nút chỉ có thể nghe thơng tin truyền từ lân cận hiện thời của nó. Giả thiết nút A đang
truyền một gói dữ liệu tới nút B. Câu hỏi đặt ra những nút nào phải chuyển sang trạng
thái ngủ.
Xung đột dễ xảy ra ở nút nhận, nút D cần phải ngủ vì sự truyền của nó ảnh hưởng tới sự
tiếp nhận tín hiệu của B. Cũng dễ để nhận ra nút E và nút F không phát sinh nhiễu, vì
vậy chúng khơng cần phải ngủ. Nút C có nên đi ngủ hay khơng? C là cách hai bướcc tới
B, và sự truyền của nó khơng gây nhiễu tới sự tiếp nhận của B, như vậy nó tự do được
phép truyền tới lân cận của nó, ví dụ như E. Tuy nhiên, C không thể nhận bất kỳ sự trả
lời nào từ E, vì sự truyền của E xung đột với sự truyền của A tại nút C. Nhờ vậy sự
truyền của C đơn giản là một sự tiêu phí năng lượng. Tóm lại, tất cả lân cận tức thời của
cả nút gửi và nút nhận cần phải chuyển trạng thái ngủ khi chúng nghe thấy gói RTS
hoặc CTS cho đến khi sự truyền hiện thời kết thúc.
22
Mỗi nút duy trì NAV chỉ để báo động trong khu lân cận của nó. Khi một nút nhận
gói, cập nhật NAV của nó tại trường duration trong định dạng gói tin. Một giá trị NAV
lớn hơn 0 chỉ báo rằng có một nút đang gửi số liệu trong khu vực lân cận nó. Giá trị
NAV giảm dần theo thời gian. Một nút cần phải ở trạng thái ngủ để tránh nghe thừa khi
giá trị NAV của nó khác 0.
1.8.3 Xử lý thơng điệp.
Truyền dữ liệu dài trong một gói tin thì chi phí cho việc truyền lại khi chỉ có một
vài bít lỗi trong lần truyền đầu tiên là rất cao. Tuy nhiên, nếu chúng ta chia nhỏ thông
điệp vào trong nhiều gói nhỏ độc lập, chúng ta phải xử lý quá nhiều gói tin điều khiển
do vậy độ trễ truyền sẽ tăng.
S-MAC xử lý vấn đề trên bằng cách chia nhỏ thông điệp dài thành nhiều phân
đoạn nhỏ và truyền chúng trong một cụm (burst) nhưng chỉ sử dụng một gói tin RTS và
một gói tin CTS. Chúng chiếm dụng đường truyền truyền tất cả các đoạn. Mỗi lần một
đoạn dữ liệu được truyền, nơi gửi đợi một xác nhận ACK từ nơi nhận. Nếu nó khơng
nhận được ACK, nó sẽ mở rộng thời gian chiếm dụng đường truyền cho đủ một phân
đoạn nữa, và truyền lại ngay phân đoạn dữ liệu hiện thời.
Như đã biết, tất cả các gói tin đều có trường thời gian, bây giờ nó là thời gian cần
cho sự phát tất cả các phân đoạn dữ liệu cịn lại và những gói ACK. Nếu một nút trong
vùng lân cận nhận được một gói RTS hoặc CTS, thì nó sẽ chuyển sang trạng thái ngủ
trong khoảng thời gian truyền tất cả các phân đoạn.
Mục đích của việc sử dụng ACK sau mỗi phân đoạn dữ liệu nhằm ngăn ngừa vấn
đề nút ẩn (hidden terminal). Có thể một nút lân cận thức dậy hoặc một nút mới gia nhập
vùng lân cận trong quá trình truyền. Nếu nút chỉ là lân cận của nút nhận nhưng khơng
phải nút gửi, thì nó sẽ khơng nghe thấy các phân đoạn dữ liệu đang được phát từ nút gửi.
Nếu nút nhận khơng gửi ACK thường xun, thì nút mới có thể gây nhiễu vì cảm nhận
sóng mang trong việc thăm dị đường truyền sẽ thơng báo đường truyền rỗi. Nếu nó khởi
động tiến trình phát, thì q trình truyền hiện thời sẽ bị hỏng ở tại nút nhận.
Mỗi phân đoạn dữ liệu và gói tin ACK cũng có trường thời gian. Bằng cách này,
nếu một nút tỉnh dậy hoặc một nút mới gia nhập trong quá trình truyền, thì nó chuyển
sang trạng thái ngủ bẩt kể nó là lân cận của nút gửi hay nút nhận. Ví dụ, giả sử một nút
lân cận nhận được một RTS của nút gửi hoặc một CTS từ nút nhận, nó sẽ chuyển trạng
thái ngủ trong toàn bộ thời gian được cung cấp trong thông điệp. Nếu bên gửi mở rộng
thời gian truyền do mất phân đoạn dữ liệu hoặc do lỗi, vì ngủ nên các nút lân cận không
ý thức được sự mở rộng này ngay lập tức. Tuy nhiên, các nút sẽ biết được điều này từ
những phân đoạn mở rộng hoặc những gói tin ACK khi nó tỉnh dậy.
Ưu-Nhược điểm của S-MAC:
23
Ưu điểm: Việc sử dụng pin được tăng lên khi thực hiện các lịch trình ngủ. Giao thức này
là đơn giản để thực hiện, thơng tin dài có thể được được chuyển thành thạo bằng cách
sử dụng chuyển một cách kĩ thuật.
Nhược điểm: RTS / CTS không được sử dụng do việc phát sóng có thể dẫn đến va chạm.
Thích nghi việc lắng nghe gây ra tình trạng nghe lén hoặc nghe không hoạt động dẫn đến
việc sử dụng pin không hiệu quả. Trong thời gian ngủ và nghe tải lưu lượng truy cập
biến cố định làm cho thuật toán hiệu quả.
1.9. Time out – MAC.
Mặc dù thực hiện giảm tiêu hao năng lượng bằng việc giảm thời gian chờ nghe
qua giải pháp thực hiện chu trình thức/ngủ cố định, nhưng giải pháp này của S-MAC
chưa đạt hiệu quả tối ưu. S-MAC có hai tham số quan trọng: độ lớn của khung thời gian
(frame time) và độ dài thời gian thức (active time). Độ lớn khung thời gian bị giới hạn
bởi yêu cầu về độ trễ cho phép và độ lớn bộ đệm. Độ lớn thời gian thức phụ thuộc chủ
yếu trên tốc độ phát sinh thông điệp: nó phải đủ lớn để nút cảm biến có thể phát đi tất cả
các thơng điệp của nó trong khoảng thời gian thức. Trong khi yêu cầu độ trễ và khơng
gian bộ đệm nói chung là cố định thì tốc độ phát sinh thông điệp thường thay đổi. Để
đảm bảo tất cả các thông điệp được phát như mong muốn, nút cảm biến phải được cài
đặt một thời gian thức sao cho có thể xử lý ở mức thơng lượng cao nhất. Nhưng khi
thơng lượng xuống thấp thì thời gian thức sẽ không được sử dụng tối ưu và do đó năng
lượng sẽ bị lãng phí do vấn đề nghe khi rỗi (idle listening).
Ý tưởng mới của giao thức T-MAC là giảm bớt thời gian nghe khi rỗi bằng việc
truyền tất cả các thơng điệp trong những cụm (burst) có độ dài thay đổi tùy theo, và thực
hiện ngủ giữa các cụm, xác định một cách mềm dẻo độ dài tối ưu thời gian thức theo sự
thay đổi của lưu lượng đường truyền.
Một số vấn đề cơ bản:
1.9.1 Lược đồ.
Hình 1.9.1: Lược đồ cơ bản T-MAC với thời gian thức thay đổi.
Hình 1.9.1 cho thấy lược đồ cơ bản của giao thức T-MAC. Mỗi nút định kỳ tỉnh
dậy liên lạc các nút lân cận, sau đó ngủ tiếp cho đến khi khung tiếp theo. Trong lúc đó,
những thơng điệp mới được đưa vào hàng đợi. T-MAC cũng sử dụng kỹ thuật RTS,
CTS, Data, ACK để tránh xung đột và truyền số liệu tin cậy.
24
Một nút sẽ được đặt ở chế độ nghe và sẵn sàng thực hiện truyền số liệu khi nó
đang ở trạng thái thức. Trạng thái thức sẽ kết thúc khi khơng có một sự kiện kích hoạt
(activation event) nào xuất hiện một khoảng thời gian TA. Một sự kiện kích hoạt là:
Sự kết thúc một khung thời gian theo định kỳ.
Sự tiếp nhận bất kỳ dữ liệu nào trên sóng vơ tuyến.
Sự xuất hiện sự kiện cảm biến được phát hiện qua thành phần vô tuyến.
Sự kết thúc truyền dữ liệu của một nút có sở hữu gói dữ liệu hoặc sự biên nhận ACK;
Thơng tin về sự kết thúc trao đổi dữ liệu của các nút lân cận qua nhận được các gói
RTS, CTS.
Thơng số TA xác định thời gian tối thiểu cho việc thức chờ nghe trên một khung thời
gian.
Lược đồ timeout chuyển tất cả các giao dịch vào một cụm tại điểm bắt đầu của
khung. Khi đó những thơng điệp giữa các thời gian hoạt động phải được đưa vào bộ
đệm. Độ lớn của bộ đệm xác định cận trên của độ lớn khung thời gian cực đại.
1.9.2 Phân nhóm và đồng bộ
Đồng bộ khung thời gian được thực hiện qua sự hình thành phân nhóm ảo như
được mơ tả trong giao thức S-MAC. Khi một nút cảm biến bắt đầu quá trình hoạt động
của mình, nó bắt đầu bằng việc đợi và nghe. Nếu nó khơng nghe thấy gì trong một
khoảng thời gian nhất định, thì nó tự chọn cho mình một lịch làm việc và truyền một gói
tin đồng bộ SYNC chứa đựng thời gian khởi tạo của khung tiếp theo trong lịch làm việc.
Nếu nút cảm biến trong thời gian khởi động nghe thấy một gói tin đồng bộ từ nút khác,
thì nó sẽ theo lịch làm việc trong gói tin đồng bộ đó và quảng bá gói tin đồng bộ tương
ứng của chính mình.
Các nút cảm biến thực hiện phát lại ngay gói tin đồng bộ của chúng. Chúng thực
hiện nghe đầy đủ một khung một cách không thường xun, vì vậy chúng có thể phát
hiện ra sự tồn tại của những thời gian biểu khác nhau. Điều này này cho phép các nút
mới hoặc các nút di động có thể được chấp nhận gia nhập nhóm đã tồn tại trước đó.
Nếu một nút đã có một thời gian biểu nhưng lại nghe được từ gói tin đồng bộ một
thời gian biểu khác (từ nút khác), thì nó chấp nhận cả hai và thực hiện phát một gói tin
đồng bộ chứa thời gian biểu của mình để cho các nút khác biết có sự tồn tại thời gian
biểu đó. Việc chấp nhận cả hai thời gian biểu làm việc có nghĩa rằng nút sẽ có những sự
kiện kích hoạt ở tại thời điểm bắt đầu của cả hai khung.
Muốn truyền dữ liệu, các nút cảm biến phải khởi động tại điểm bắt đầu khoảng
thời gian thức quy định trong lịch biểu của chúng. Tại thời điểm đó, cả các nút lân cận
có cùng thời gian biểu, và các lân cận mà đã chấp nhận thời gian biểu nhờ sự bổ sung
đều ở trạng thái thức. Nếu nó thực hiện ở điểm bắt đầu của một khung của nút lân cận,
25