Thƣờng thì rất thuận tiện cho ngƣời sử dụng biểu diễn các truy vấn của họ với một mạng cảm biến dƣới dạng không chỉ là loại (type) và thể thức của dữ liệu mà họ muốn nhận đƣợc mà còn là vùng (region) hoặc vị trí (location) nơi dữ liệu bắt nguồn. Vì vậy, với các địa chỉ dựa trên nội dung, ngƣời sử dụng không muốn xác định một cách tách biệt mỗi nút thuộc khu vực quan tâm nào, mà họ muốn xác định một vùng và để mạng tìm ra các cảm biến nào là phù hợp. Hơn nữa, nếu đã biết vị trí của một nút cảm biến, các kiểu định tuyến địa lý có thể đƣợc áp dụng. Có nhiều cách khác nhau để xác định một vùng, ví dụ:
Xác định một điểm đơn.
Xác định một vòng tròn hoặc một mặt cầu bằng cách cung cấp tâm điểm và bán kính. Xác định một hình chữ nhật hoặc một hình hộp bằng cách cung cấp hai hoặc ba điểm
góc.
Xác định một đa giác (hai chiều) hoặc một hình đa diện polytope (ba chiều) bằng cách cung cấp một danh sách các điểm.
Đánh địa chỉ theo địa lý yêu cầu một cảm biến có thể kiểm tra xem liệu vị trí của nó có nằm trong một vùng đã cho hay không. Việc kiểm tra này có thể phức tạp nếu các đa giác/ đa diện thông thƣờng đƣợc sử dụng để xác định vùng quan tâm. Kiểm tra một điểm trong đa giác là một nhiệm vụ tiêu chuẩn trong hình học tính toán. Sử dụng các hình dạng phức tạp hơn cũng có nhƣợc điểm là để xác định các vùng này thì cần nhiều điểm và do đó cần nhiều bit dữ liệu hơn.
4.3 Định tuyến trong mạng cảm biến không dây
Nhƣ chúng ta đã biết, có rất nhiều nghiên cứu đã đƣợc thực hiện để giải quyết khả năng hợp tác giữa các nút cảm biến trong việc thu thập và xử lý dữ liệu và quản lý hoạt động cảm nhận trong mạng cảm biến không dây. Tuy nhiên, các nút bị ràng buộc về mặt nguồn năng lƣợng và băng thông. Vì vậy, yêu cầu cần thiết là phải phát triển đƣợc các kỹ thuật mới cho phép sử dụng hiệu quả năng lƣợng, giúp tăng thời gian sống của mạng. Các ràng buộc này cùng với đặc tính động của mạng cảm biến đem lại rất nhiều khó khăn khi thiết kế và quản lý WSN cũng nhƣ yêu cầu nhận biết năng lƣợng tại tất cả các lớp trong ngăn xếp giao thức mạng. Ví dụ ở lớp mạng, một tiêu chí quan trọng là tìm đƣợc các phƣơng pháp định tuyến và
140
chuyển tiếp dữ liệu từ các nút cảm biến về trạm gốc hiệu quả năng lƣợng để thời gian sống của mạng đƣợc tối đa.
Định tuyến trong WSN là rất khó khăn do các đặc tính cố hữu khác biệt giữa mạng cảm biến không dây với các mạng không dây khác nhƣ mạng ad hoc hoặc mạng di động.
Thứ nhất, do số lƣợng các nút cảm biến tƣơng đối lớn, hầu nhƣ không thể xây dựng một cơ chế đánh địa chỉ toàn cục để triển khai số lƣợng lớn các nút này vì chi phí duy trì ID rất cao. Vì vậy, các giao thức dựa trên IP truyền thống có thể không áp dụng đƣợc cho mạng cảm biến không dây. Ngoài ra, các nút cảm biến đƣợc triển khai theo kiểu ad hoc cần có khả năng tự tổ chức, yêu cầu hệ thống hình thành các kết nối phù hợp với cấu hình phân bố nút, đặc biệt khi hoạt động của mạng ở chế độ tự động, không có ngƣời giám sát. Trong WSN, nhiều khi hoạt động nhận dữ liệu lại quan trọng hơn việc biết địa chỉ của nút cung cấp dữ liệu.
Thứ hai, khác với các mạng truyền thông khác, hầu hết các ứng dụng của mạng cảm biến yêu cầu dòng dữ liệu từ nhiều nguồn tới một trạm gốc nào đó. Tuy nhiên điều này không ảnh hƣởng đến định dạng của dòng dữ liệu (ví dụ phát đa điểm hay ngang hàng).
Thứ ba, các nút cảm biến bị ràng buộc chặt chẽ về mặt năng lƣợng cũng nhƣ khả năng xử lý và lƣu trữ dữ liệu. Vì vậy, cần phải có các biện pháp quản lý năng lƣợng hiệu quả.
Thứ tƣ, trong hầu hết các ứng dụng, các nút trong WSN sau khi triển khai thƣờng không di chuyển, trừ một số trƣờng hợp các nút có thể di động. Các nút trong các mạng không dây truyền thống có thể di chuyển tự do, do đó cấu hình mạng thƣờng xuyên thay đổi và không dự đoán đƣợc. Tuy nhiên, trong một vài ứng dụng, các nút cảm biến cũng đƣợc phép di chuyển và thay đổi vị trí (mặc dù chúng di chuyển với tốc độ rất thấp).
Thứ năm, các mạng cảm biến thƣờng đƣợc xác định theo ứng dụng, các yêu cầu thiết kế của một mạng cảm biến thay đổi tùy thuộc vào mục đích sử dụng. Ví dụ, yêu cầu thiết kế đảm bảo độ chính xác trễ thấp cho ứng dụng giám sát trong quân sự khác với ứng dụng giám sát thời tiết định kỳ.
Thứ sáu, việc nhận thức vị trí của các nút cảm biến là rất quan trọng vì quá trình thu thập dữ liệu thƣờng dựa trên vị trí. Hiện nay, không thể sử dụng hệ thống định vị toàn cầu GPS cho mục đích này. Các phƣơng pháp dựa trên tam giác đạc (trigangulation) cho phép các nút xác định gần đúng vị trí sử dụng cƣờng độ sóng vô tuyến từ một số điểm đã biết.
Cuối cùng, dữ liệu thu thập bởi nhiều cảm biến trong WSN thƣờng dựa trên các hiện tƣợng thông thƣờng, vì vậy xác suất dữ liệu này có sự dƣ thừa là rất cao. Sự dƣ thừa dữ liệu này cần phải đƣợc loại bỏ nhờ các giao thức định tuyến để cải thiện việc sử dụng năng lƣợng cũng nhƣ băng thông. Thông thƣờng, WSN là các mạng tập trung dữ liệu, dữ liệu đƣợc yêu cầu dựa trên các thuộc tính nhất định, nghĩa là đánh địa chỉ dựa trên thuộc tính. Một địa chỉ dựa trên thuộc tính gồm một bộ các truy vấn cặp thuộc tính – giá trị. Ví dụ, nếu truy vấn có dạng [temperatura > 60F], chỉ các nút cảm biến cảm nhận đƣợc nhiệt độ lớn hơn 60F cần gửi đáp ứng báo cáo dữ liệu của nó về trạm gốc.
Do những khác biệt này, có rất nhiều thuật toán mới đƣợc đề xuất để định tuyến trong WSN. Các giải thuật này đƣợc xây dựng dựa trên việc xem xét các đặc tính cố hữu của WSN cùng với các yêu cầu kiến trúc và ứng dụng. Nhiệm vụ tìm và duy trì tuyến trong WSN là rất
141
quan trọng, vì hạn chế năng lƣợng và tình trạng thay đổi đột ngột của các nút mạng (nhƣ nút bị hỏng) sẽ gây ra những thay đổi về mặt cấu trúc không dự đoán đƣợc trong mạng. Để tối thiểu hóa năng lƣợng tiêu thụ, các giải thuật định tuyến đã sử dụng các kỹ thuật đặc biệt cho WSN nhƣ tập hợp dữ liệu và xử lý trong mạng, phân cụm, gán vai trò nút khác nhau, tập trung dữ liệu, …
4.3.1 Sự phân phối và tập hợp dữ liệu
Mạng cảm biến không dây có khả năng ứng dụng rộng rãi trong giám sát và điều khiển. Các dữ liệu đƣợc thông tin giữa các trạm trung tâm và các nút phân bố là một khía cạnh quan trọng và cơ bản của mạng cảm biến không dây.
Cách đơn giản để thực hiện liên lạc là trao đổi trực tiếp từ các nút đến trạm trung tâm. Tuy nhiên, liên kết dựa trên truyền đơn bƣớc nhảy (một chặng) gặp vấn đề suy giảm năng lƣợng nhanh chóng nếu các nút ở cách xa trạm trung tâm, do đó làm giảm thời gian sống của mạng. Đây là vấn đề quan trọng đối với các mạng cảm biến không dây đƣợc xây dựng phân bố trên phạm vi rộng hay các nút di động và có thể di chuyển ra xa trạm trung tâm.
Để giải quyết nhƣợc điểm này, dữ liệu trao đổi giữa các nút và trạm trung tâm đƣợc truyền đa bƣớc nhảy (đa chặng). Khi một nút không thể gửi các gói tin của nó trực tiếp đến nút đích, và phải nhờ vào sự trợ giúp của các nút trung gian để chuyển tiếp các gói tin này, nghĩa là sử dụng một mạng đa bƣớc nhảy nhƣ minh họa trong hình 4.3. Các liên kết đa chặng có thể kéo dài khoảng cách và đƣa ra một đƣờng đi linh hoạt hơn. Phƣơng pháp này tiết kiệm hiệu quả năng lƣợng và giảm đáng kể can nhiễu giữa các nút đang tranh chấp truy cập kênh truyền, đặc biệt trong những mạng cảm biến không dây có mật độ cao. Mô hình truyền dữ liệu đƣợc minh họa trên hình 4.3. Gói yêu cầu đƣợc phát đi, các nút đáp lại bằng gói trả lời hoặc đáp ứng các sự kiện xảy ra, dữ liệu thu thập từ các nút cảm biến phải đi qua nhiều chặng để đến trạm trung tâm.
Hình 4.3. Truyền dữ liệu đa bƣớc nhảy
Trong một mạng nhƣ vậy, một nút trung gian (kể cả nút nguồn) phải quyết định chuyển gói tin tới đến nút lân cận nào để nó có thể tới đƣợc đích. Nhƣ minh họa trong hình 4.4, nếu
142
nút S gửi gói tin tới nút A thì sẽ không tới đƣợc đích. Hoạt động này đƣợc gọi là chuyển tiếp gói tin, và quá trình chuyển tiếp có thể đƣợc tổ chức theo nhiều cách khác nhau.
Hình 4.4. Định tuyến trong mạng đa bƣớc nhảy – nút S gửi các gói tin đến nút D
Các phƣơng pháp chuyển tiếp gói tin để đạt đƣợc hiệu suất (xét về số lƣợng gói tin chuyển đƣợc hoặc trễ) còn phải xét đến cấu hình của mạng. Vì vậy, khi lựa chọn tuyến truyền, cần bổ sung thông tin về nút lân cận phù hợp để chuyển tiếp gói tin. Sự phù hợp có thể đƣợc đánh giá thông qua nhiều tiêu chí khác nhau, ví dụ số lƣợng bƣớc nhảy tối thiểu hoặc năng lƣợng tối thiểu cần để truyền gói tin tới đích thông qua các nút lân cận. Các thông tin này đƣợc lƣu trong bảng định tuyến, nhƣ minh họa trong bảng 4.2.
Bảng 4.2 Bảng định tuyến của một số nút minh họa trong hình 4.4, sử dụng thông số số bƣớc nhảy Đích Bƣớc kế tiếp Số bƣớc nhảy Đích Bƣớc kế tiếp Số bƣớc nhảy A A 1 A S 2 D A 3 D C 2 D B 3 D S 3 D E 2 E A 2 E E 1 E C 3
(a) Bảng định tuyến của nút S (b) Bảng định tuyến của nút B
Xác định các bảng định tuyến này là nhiệm vụ của giải thuật định tuyến với sự trợ giúp của giao thức định tuyến. Trong các mạng hữu tuyến, các giao thức này thƣờng dựa trên trạng thái đƣờng truyền hoặc các giải thuật vector khoảng cách. Trong mạng vô tuyến, mạng di động hoặc mạng đa bƣớc nhảy cần sử dụng các khái niệm khác. Định truyến trong mạng cỡ lớn gặp nhiều khó khăn, thiết kế phải đảm bảo sự chính xác, tính ổn định và khả năng tối ƣu. Các giao thức định tuyến ở đây có thể là phân bố, thƣờng yêu cầu chi phí thấp, tự cấu hình và có khả năng hoạt động trong các cấu hình mạng thƣờng xuyên thay đổi. Cùng với các đặc tính của mạng cảm biến không dây nhƣ tiết kiệm năng lƣợng và băng thông hạn chế, đặt ra nhiều thách thức cho giải thuật định tuyến để đáp ứng yêu cầu lƣu lƣợng và kéo dài thời gian sống của mạng.
4.3.2 Các thách thức trong kỹ thuật định tuyến
Mạng cảm biến không dây có nhiều điểm chung với mạng hữu tuyến và mạng ad hoc. Tuy nhiên, mạng cảm biến có một số đặc điểm riêng, do đó đòi hỏi phải có thiết kế giao thức định tuyến riêng cho mạng.
143