Đánh địa chỉ dựa trên nội dung

Một phần của tài liệu Bài giảng Mạng cảm biến: Phần 2 (Trang 63 - 66)

Vài hệ thống đặt tên dựa theo nội dung hoặc dựa theo thuộc tính xuất hiện trong các tài liệu. Trƣớc khi chuyển đến một thảo luận chung hơn, chúng ta biểu diễn một ví dụ về phƣơng pháp đặt tên mà đƣợc phát triển trong khái niệm của các mạng cảm biến không dây.

Ví dụ 4.2: Cơ chế đặt tên mức thấp:

Trong phƣơng pháp này, việc đánh địa chỉ dựa trên nội dung đƣợc tích hợp với định tuyến truyền tin trực tiếp. Trong một phạm vi nhỏ, trong truyền tin trực tiếp một nút thu

phát ra thông điệp interest, thông điệp này xác định một tập các thuộc tính dùng để mô tả dữ liệu mong muốn. Bản tin này đƣợc phân phát trong mạng. Các nút có thể cung cấp dữ liệu cảm biến phù hợp với dữ liệu trong mô tả interest đƣợc gọi là các nút nguồn. Gói dữ liệu tạo bởi nút nguồn di chuyển qua các nút trung gian để tới nút thu. Nút trung gian lƣu lại thông điệp interest cùng với một (hoặc một tập) nút lân cận có thể (hƣớng về phía bộ thu) trong bộ nhớ đệm (interest cache). Sau khi nhận đƣợc gói dữ liệu, nút trung gian tìm trong bộ nhớ đệm xem có interest phù hợp với dữ liệu nhận đƣợc không, nếu có nó chuyển tiếp gói dữ liệu đến nút lân cận liên quan (hƣớng về phía bộ thu).

Các gói tin dữ liệu và interest đƣợc biểu diễn nhƣ một tập các bộ toán tử giá trị thuộc tính AVO (Attribute Value Operation). Tập các thuộc tính đƣợc định nghĩa trƣớc, mỗi thuộc tính có một khóa duy nhất đã biết và có sự hiểu biết về loại dữ liệu cho giá trị tƣơng ứng. Đối với các mạng cảm biến, việc biểu diễn của tất cả các thành phần cấu thành bộ AVO phải càng ngắn càng tốt để giảm số lƣợng các bit cần thiết. Các toán tử khác nhau và ý nghĩa của chúng đƣợc cho ở bảng 4.1. Toán tử IS xác định rằng thuộc tính tƣơng ứng thực sự có giá trị chỉ thị và thƣờng đƣợc tạo bởi nguồn dữ liệu; IS cũng đƣợc gọi là một toán tử thực (actual operator). Tất cả các toán tử khác đƣợc gọi là các toán tử chính thức (formal operators), đƣợc sử dụng để xác định interest với các giá trị thực tạo bởi nguồn là phù hợp.

Các nút trung gian sử dụng một toán tử gọi là phù hợp một chiều (one-way match) (trình bày ở danh sách 4.1 trong chú giải mã giả (pseudocode)) để xác định một gói dữ liệu nhận đƣợc phù hợp với interest nào. Về cơ bản, với một gói interest cho trƣớc, nút trung gian xét tất cả các thuộc tính chính thức của nó và kiểm tra xem: (i) gói dữ liệu có thuộc tính nào phù hợp không; (ii) giá trị thực trong thuộc tính của gói dữ liệu có phù hợp với toán tử chính thức trong interest không.

Xét ví dụ sau. Giả thiết rằng ngƣời sử dụng tại nút thu muốn biết khi nào nhiệt độ trong một vùng địa lý nào đó vƣợt quá một ngƣỡng nào đó. Một vài thuộc tính đƣợc kết hợp trong bản tin interest nhƣ minh họa trong danh sách 4.2. Trong ví dụ này, thuộc tính type xác định

137

loại cảm biến mà interest hƣớng tới (ở đây là các cảm biến nhiệt độ). Thuộc tính tiếp theo

threshold-from-below xác định bộ thu quan tâm đến các trƣờng hợp nhiệt độ vƣợt quá ngƣỡng 200

C . Khu vực quan sát là diện tích hình vuông trong khoảng (0,0) và (20,20) (đơn vị mét). Nếu nhiệt độ vƣợt quá ngƣỡng này, một cảm biến phù hợp sẽ ghi lại sự kiện này cứ 0,05s một lần trong khoảng thời gian 10s. Thuộc tính cuối cùng class biểu thị bộ AVO này là bản tin interest chứ không phải là bản tin dữ liệu.

Bảng 4.1 Tập toán tử

Tên toán tử Ý nghĩa

EQ Phù hợp nếu giá trị thực bằng giá trị

NE Phù hợp nếu giá trị thực không bằng giá trị

LT Phù hợp nếu giá trị thực nhỏ hơn giá trị

GT Phù hợp nếu giá trị thực lớn hơn giá trị

LE Phù hợp nếu giá trị thực nhỏ hơn hoặc bằng giá trị

GE Phù hợp nếu giá trị thực lớn hơn hoặc bằng giá trị

EQ_ANY Luôn phù hợp, giá trị không có ý nghĩa

IS Xác định một thuộc tính dạng chữ

Giả thiết có nhiều loại cảm biến khác nhau, bao gồm các cảm biến nhiệt độ. Mỗi cảm biến có một tập các bộ AVO tự mô tả. Tập tự mô tả của một cảm biến nhiệt độ đƣợc minh họa trong danh sách 4.3. Nếu bản tin interest trong danh sách 4.2 tới cảm biến nhiệt độ, việc kiểm tra một chiều cho thấy bản tự mô tả của cảm biến phù hợp với các thuộc tính trong interest. Theo đó, cảm biến (nói chính xác hơn: tất cả các cảm biến phù hợp với interest này và thực sự muốn đáp ứng interest) bắt đầu quan sát môi trƣờng xung quanh và tạo các bản tin dữ liệu khi sự kiện của interest thực sự xảy ra. Danh sách 4.4 minh họa một ví dụ về bản tin dữ liệu. Nhƣ đã đƣợc giải thích ở trên, các cảm biến không phù hợp lƣu interest trong bộ nhớ đệm (interest cache) của chúng.

Cần lƣu ý rằng tập các thuộc tính đƣợc sử dụng trong các danh sách này thực sự chỉ là các ví dụ; nhìn chung, các thuộc tính và các giá trị của chúng phụ thuộc vào ứng dụng.

parameters : attribute sets A and B

// A corresponds to the interest , B to the data message

foreach attribute a in A where a.op is formal {

matched = false

foreach attribute b in B where

a.key == b.key and b.op is actual {

if b.val satisfies condition

expressed by a.key and a.val then { matched = true

} } }

if (not matched ) then { return false

} } }

return true; // matching successful !

138

<type ,temperature ,EQ >

<threshold -from -below ,20,IS > <x-coordinate ,20,LE > <x-coordinate ,0,GE > <y-coordinate ,20,LE > <y-coordinate ,0,GE > <interval ,0.05 ,IS > <duration ,10,IS > <class ,interest ,IS >

Danh sách 4.2 Ví dụ bản tin interest

<type ,temperature ,IS > <x-coordinate ,10,IS > <y-coordinate ,10,IS >

Danh sách 4.3 Ví dụ cảm biến nhiệt độ

<type ,temperature ,IS > <x-coordinate ,10,IS > <y-coordinate ,10,IS > <temperature ,20.01 ,IS > <class ,data ,IS >

Danh sách 4.4 Ví dụ bản tin dữ liệu

Một đặc điểm quan trọng của bất kỳ hệ thống đặt tên nào là tính biểu đạt

(expressiveness) của nó. Chú thích này rất khó để định nghĩa; nó bao gồm cả phép đo số lƣợng các sự vật có thể thực sự đƣợc đặt tên bởi hệ thống đặt tên (the naming system) cũng nhƣ nỗ lực cần thiết để biểu diễn/ viết tên sự vật. Một đặc điểm quan trọng thứ hai đó là nỗ lực tính toán (computational effort) cần để kiểm tra liệu một thực thể (trong ví dụ tiếp theo: gói dữ liệu với các thuộc tính thực của nó) có phù hợp với một tên hay không (ở đây:

interest). Đối với ví dụ này, có thể thấy rằng: (i) các thuộc tính là đơn giản để đánh giá và (ii) thủ tục phù hợp một chiều chỉ cho phép một chế độ kết hợp thuộc tính – tất cả các thuộc tính xét phải phù hợp một cách đồng thời, tƣơng ứng với phép toán logic AND giữa chúng. Bằng cách giới hạn việc kết hợp thuộc tính bằng phép toán AND, gần nhƣ là có bao nhiêu thuộc tính chính thức thì có bấy nhiêu phép kiểm tra thuộc tính phải thực hiện. Do đó, nỗ lực tính toán là tuyến tính theo số lƣợng các thuộc tính chính thức. Cho phép các hàm Boolean tổng quát trên các phù hợp thuộc tính đơn có thể cần thời gian tính toán nhiều hơn đáng kể.

Hệ thống đặt tên của Heidemann đƣợc thực hiện (cùng với giao thức định tuyến truyền tin trực tiếp), và hai ví dụ ứng dụng cụ thể đƣợc thảo luận: tập hợp trong mạng và khả năng xác định các truy vấn lồng nhau (nested queries). Các truy vấn lồng nhau là một cách rõ ràng để phát hiện các sự kiện phức hợp. Trong một sự kiện phức hợp, sự xuất hiện của một sự kiện kích hoạt interest trong một sự kiện khác. Điểm mấu chốt trong các thực nghiệm này là nhờ sử dụng hệ thống đặt tên dựa trên nội dung và nhờ triển khai các bộ lọc (filter) trong mạng (có thể xử lý dữ liệu đƣợc đặt tên), một khối lƣợng tốt các phép tính toán có thể đƣợc đƣa vào mạng, gần với các nguồn sự kiện. Tập hợp và xử lý cục bộ có thể tiếp kiệm băng thông đáng kể.

Giao thức SPIN đƣa ra khái niệm metadata, đó là mô tả dữ liệu mà một nút có thể cung cấp. Metadata đƣợc giả thiết là ngắn hơn dữ liệu thực tế. Nút nguồn cấp dữ liệu phân phát bản

139

tin quảng cáo chứa metadata trong mạng. Các nút khác quan tâm đến dữ liệu đƣợc quảng cáo gửi trả lại một gói tin yêu cầu. Sau khi nhận yêu cầu, nút nguồn gửi gói dữ liệu đầy đủ.

Rõ ràng là có nhiều kiểu đặt tên phức tạp hơn và đi kèm là các giao thức phân giải/ràng buộc cho phép thực hiện sự phức tạp hơn này. Một số giải pháp tích hợp đánh địa chỉ dựa trên nội dung với phần sụn (middleware) công bố/đăng ký cho mạng không dây dựa trên IP và mạng ad hoc mà không xác định một cơ chế đặt tên cụ thể.

Các hệ thống đặt tên và các giao thức phân giải cũng đóng một vai trò quan trọng trong việc phát hiện dịch vụ, các mạng chia sẻ file ngang hàng peer to peer (ví dụ: các mạng đánh địa chỉ dựa trên nội dung), và hệ thống thƣ mục X.500. Tuy nhiên, các hệ thống này không thể áp dụng trực tiếp vào các mạng cảm biến bởi vì kiến trúc và các tập yêu cầu khác nhau của chúng. Hiệu suất năng lƣợng không đóng vai trò gì trong thiết kế của các hệ thống này.

Một phần của tài liệu Bài giảng Mạng cảm biến: Phần 2 (Trang 63 - 66)

Tải bản đầy đủ (PDF)

(96 trang)