Các giao thức trung tâm dữ liệu [1-2, 4, 14]

Một phần của tài liệu Nghiên cứu các giao thức định tuyến trong mạng cảm biến không dây (Trang 27)

2.4.1. Giới thiệu[1]

Trong nhiều ứng dụng của WSNs, do số lượng các nút rất lớn nên việc gán định danh ID toàn cục cho mỗi nút cảm biến sẽ không phù hợp. Khi thực hiện triển khai ngẫu nhiên các nút cảm biến sẽ khó chọn một tập các nút cảm biến cụ thể để thực thi được truy vấn. Do đó, dữ liệu được truyền về từ nhiều nút cảm biến trong khu vực triển khai sẽ có sự dư thừa đáng kể (nhiều gói dữ liệu có nội dung tương tự nhau). Với những lí do trên sẽ

làm cho hiệu quả tiêu thụ năng lượng kém đi, khi đó các giao thức định tuyến có thể chọn một tập các nút cảm biến và sử dụng cơ chế tập hợp dữ liệu trong suốt quá trình truyền tin để tăng hiệu quả năng lượng.

Trong định tuyến trung tâm dữ liệu, nơi nhận dữ liệu (sink/BS) sẽ gửi các truy vấn dữ liệu đến các nút cảm biến thuộc một vùng cụ thể và chờ các nút trong vùng đó gửidữ liệu trở lại. Dữ liệu được yêu cầu qua các truy vấn nên dữ liệu được mô tả bằng cách đặt tên dựa vào các thuộc tính. SPIN là giao thức trung tâm dữ liệu đầu tiên xét đến thông qua sự dàn xếp thỏa thuận dữ liệu giữa các nút để loại bỏ dữ liệu dư thừa và tiết kiệm năng lượng. Giao thức tiếp theo được xét đến là Directed Diffusion.

2.4.2. Flooding [1]

Flooding là cơ chế truyền tin truyền thống chuyển tiếp dữ liệu trong WSNs mà không cần bất kỳ thuật toán định tuyến nào cũng như duy trì thông tin vềkiến trúc mạng.

Ý tưởng: mỗi nút cảm biến khi nhận một gói dữ liệu cần truyền đến sink/BS sẽ phát quảng bá gói đó đến tất cả các nút lân cận của nó. Quy trìnhđó tiếp tục cho đến khi gói tin đến đích hoặc thời gian sống của gói dữ liệu TTL=0.

Gossiping được cải tiến từ flooding bằng cách: nút nhận gửi gói tin đến từ một nút hàng xóm, nút nhận được gói tin đó lại lựa chọn ngẫu nhiên một nút hàng xóm khác (không phải là nút đã gửi gói tin đến cho nó) để chuyển tiếp gói tin đi và cứ tiếp tục như vậy cho đến khi gói tin đến được đích hoặc thời gian sống của gói tin không còn.

Ưu điểm: flooding rất dễ thực hiện. Nhược điểm: (xem hình 2.2) gồm:

- Bị lặp gói tin (implosion): một nút có thể nhận nhiều gói tin bị lặp được gửi đến từ nhiều nút;

- Tạo sự chồng chéo: khi hai hoặc nhiều nút cảm biến cảm nhận cùng khu vực và gửi thôngtin tương tự tới cùng một nút hàng xóm ;

- Sự mù tài nguyên (resource blindness): tiêu thụ lượng lớn năng lượng mà không xem xét sự hạn chế năng lượng.

Gossiping tránh được vấn đề lặp gói tin bằng cách chọn một nút hàng xóm ngẫu nhiên để gửi gói tin thay vì phát quảng bá đến tất cả các nút hàng x óm. Tuy nhiên lại có nhược điểm tạo nên sự chậm trễ trong quá trình truyền dữ liệu qua các nút đến đích.

Hình 2.2.a.Vấn đề lặp gói tin

(Nút A phát quảng bá gói tin của nó đến tất cả hàng xóm của nó, nút D nhận được các

bản tin tương tự nhau từ B và C )

Hình 2.2.b.Sự chồng chéo

Hai nút A,B đều cảm nhận trên cùng một vùng, và dữ liệu nút C nhận được gói tin tương tự nhau

Hình 2.2. Giao thức flooding

2.4.3. SPIN [1-2, 14]

SPIN là giao thức định tuyến dựa vào dàn xếp sự thỏa thuận thông tin truyền về để tránh dư thừa dữ liệu.

* Ý tưởng: SPIN thực hiện đặt tên dữ liệubằng cách sử dụng mô tả dữ liệu ở mức caodưới dạng siêu dữ liệu (meta-data). Trước khi truyền gói tin đi, siêu dữ liệu được trao đổigiữa các cảm biến thông qua cơ chế quảng cáodữ liệu. Mỗi nút khi cảm nhận được thông tin mới hoặc nhận được thông tin từ nút khác quảng cáo tới từ các nút láng giềngcủa nó và nếu các nút láng giềng quan tâm đến thông tin đó thì nút lấy dữ liệu đó (nếu nút không có dữ liệu đó) bằng cáchgửi một tin nhắn yêu cầu.

Thực tế không có khuôn dạng siêu dữ liệu chuẩn mà nó chỉ xác định khuôn dạng siêu dữ liệu tùy thuộc vào từng ứng dụngcụ thể.

* Các tin nhắn sử dụng trong SPIN để trao đổi dữ liệu giữa các nút cảm biến gồm: - Tin nhắn ADV: đểmột nút cảm biến quảng bá một siêu dữ liệu cụ thể đến các nút hàng xóm.

- Tin nhắn REQ: đượcgửi từ nút hàng xóm quan tâm đến siêu dữ liệu đã quảng cáođể yêu cầu nhận dữ liệu từ nút đã quảng cáo thông tin.

- Tin nhắn DATA: chứa dữ liệuthực tế mà nút hàng xóm yêu cầu cần nhận thông tin.

Hình 2.3. Sự trao đổi thông tin trong SPIN

* Diễn giải hoạt động của SPIN:

(a) Nút A quảng cáo thông tin mới mà nó cảm nhận được đến nút B bằng cách gửi tin nhắn ADV;

(b) Nút B hồi đáp đồng ý nhận dữ liệu của nút A bằng cách gửi tin nhắn yêu cầu REQ tới nút A;

(c) Nút A thực hiện gửi dữ liệu bằng cách gửi tin nhắn DATA tới nút B; (adsbygoogle = window.adsbygoogle || []).push({});

(d) Nút B lại phát quảng cáo ADV của dữ liệu mà nó mới nhận được tới các nút hàng xóm (trừ nút đã gửi dữ liệu đó cho nó);

(e) Một số nút hàng xóm của B quan tâm dữ liệu mà B quảng cáo thì gửi tin nhắn yêu cầu REQ đến B;

(f) Nút B gửi tin nhắn dữ liệu DATA tới những nút đã gửi REQ cho B. Quá trình truyền dữ liệu thực hiện cho đến khi dữ liệu đến đích.

* Ưu điểm:

- SPIN giải quyết được các vấn đề của flooding như: thông tindư thừa, sự chồng chéo của các khu vực cảm nhận và tính mù tài nguyên (vì trước khi truyền tin thì có sự dàn xếp thỏa thuận giữa 2 nút cảm biến), từ đó tiết kiệm được năng lượng một cách tối đa. - Phù hợp với các thay đổikiến trúc mạng vì đượccục bộ hóa khi mỗi nút chỉ cần biết các nút láng giềng đơn lẽ mà không cần quan tâm đến thông tin toàn cục.

* Nhược điểm: Một số trường hợp cơ chếquảng cáo dữ liệu của SPIN có thể khôngđảm bảo chuyểndữ liệu đến đích. Ví dụ:nếu các nútquan tâm đếndữ liệu ởxa nút

nguồn có dữ liệu mong muốn mà các nút trung gian lại không quan tâm đến dữ liệu đó thì dữ liệu đó không thể chuyển tiếp đến đích. SPIN không phù hợp với những ứng dụng phát hiện xâm nhập đòi hỏi việc truyền thông tin phải tin cậy trong khoảng thời gia n xác định.

2.4.4. Directed Diffusion [1-2]

Directed Diffusion (truyền tin trực tiếp) là giao thức định tuyến trung tâm dữ liệu cho WSNs.

* Ý tưởng: truyền dữ liệu thông qua các nút cảm biến bằng cách sử dụng một kế hoạch đặt tên cho dữ liệu, trong đó thực hiện thăm dò và thiết lập đường đi trước khi truyền dữ liệu. Directed Diffusion sử dụng cặp thuộc tính - giá trị cho dữ liệu và truy vấn gửi đến các nút cảm biến. Để tạo một truy vấn, một quan tâm (interest) được xác định sử dụng một danh sách các cặp thuộc tính - giá trị (ví dụ: tên của các đối tượng, khoảng thời gian giữa 2 hiện tượng, hạn định, khu vực địa lý,… đồng thời cũng chứa trường hướng). Một quan tâm tại một nơi chứa dữ liệu (sink/BS) quảng bá đến các nút lân cận của sink/BS. Mỗi nút lân cận nhận được một quan tâm có thể lưu vào bộ nhớ đệm để sử dụng lần sau. Các nút nhận được dữ liệu dựa vào tên của dữ liệu và cặp thuộc tính giá trị các quan tâm trong bộ nhớ đệm so sánh dữ liệu cảm nhận được với các giá trị trong các quan tâm đó.Một hướng (gradient) là một liên kết trả lời cho một nút lân cận gửi quan tâm tới, và hướng được đặc trưng bởi tốc độ dữ liệu, hạn định (thời gian hết hạn của quan tâm). Bằng cách tận dụng quan tâm và các hướng, các đường đi được thiết lập giữa nơi chứa dữ liệu (sink/BS) và các nguồn (nơi cảm nhận thông tin).

Ví dụ: yêu cầu dữ liệu gửiđể cảm nhận nhiệt độ trong vòng 10s và trong một miền cụ thể có thể được trình bày như sau:

Cặp thuộc tính - giá trị Mô tả

Type = temperature Start = 01:00:00 Interval =1s Duration = 10s Location = [24,48,36,40] kiểu dữ liệu cảm nhận thời gian bắt đầu

báo cáo sự kiện, chu kỳ là 1s thời gian sống của interest (10s) giới hạn cảm nhận

Và dữ liệu trả lời từ nút cảm biến chi tiết có thể là:

Cặp thuộc tính - giá trị Mô tả

Type = temperature Value = 38.3

kiểu của dữ liệu cảm nhận giá trị nhiệt độ được đọc

Cặp thuộc tính - giá trị Mô tả

Timestamp = 1:02:00 Location = [30,38]

nhãn thời gian (tại thời điểm đọc) báo cáo từ cảm biến trong vùng x,y

Hình 2.4. Các bước thiết lập đường đi trong Directed diffusion

Diễn giải hoạt động của Directed Diffusion:

Bước 1: Sink/BS gửi yêu cầu bằng cách quảng cáo interest (quan tâm) đến các nút lân cận theo định kỳ. Bản tin interest này sẽ truyền đến tất cả các nút trong mạng để tìm kiếm dữ liệu nào đó. Mục đích xem có nút cảm biến nào có thể tìm kiếm dữ liệu tương ứng mô tả trong interest hay không. Tất cả các nút đều duy trì một bộ nhớ đệm để lưu trữ các thực thể interest từ sink/BS. Bộ nhớ đệm sẽ lưu trữ một thực thể interest gồm một số trường như: nhãn thời gian (timestamp), trường hướng (gradient) cho các nút lân cận và trường thời gian sống của interest (duration). Mỗi hướng sẽ lưu trữ cả tốc độ dữ liệu và chiều mà dữ liệu được gửi đi.

Bước 2: Nút nhận interest tạo liên kết với nút hàng xóm đã gửi interest. Việc truyền bản tin interest trong toàn mạng kết hợp với việc thiết lập các gradient tại mỗi nút cảm biến cho phép tìm ra và thiết lập các đường truyền dữ liệu tới sink/BS.

Bước 3: Đường đi dữ liệu được thiết lập giữa nút cảm nhận thông tin và sink/BS. Khi một nút cảm nhận được thông tin của một sự kiện, nó sẽ tìm kiếm trong bộ nhớ đệm xem có interest nào phù hợp với các mô tả của thông tin cảm nhận được không. Nếu phù hợp nút sẽ gửi mô tả về sự kiện cảm nhận được cho các nút hàng xóm theo hướng. Các nút hàng xóm này sẽ kiểm tra trong bộ nhớ đệm xem có interest nào phù hợp với các mô tả gửi đến không, nếu không nó sẽ loại bỏ dữ liệu, nếu phù hợp nó sẽ nhận dữ liệu này, sẽ thêm mô tả vào bộ nhớ đệm dữ liệu và sau đó gửi bản tin mô tả dữ liệu cho các nút lân cận.

Trong bước 2 thiết lập hướng thì sink/BS sẽ thiết lập một tập hợp các đường đi. sink/BS có thể sử dụng đường dẫn chất lượng cao để làm tăng tốc độ truyền dữ liệu.

Cách gia cố đường đi trong Directed Diffusion: Khi một đường truyền tin thiết lập giữa một nguồn và nơi chứa dữ liệu bị hỏng thì một đường truyền mới thay thế sẽ được xác định bằng cách tìm kiếm đường đi khác và thực hiện gửi dữ liệu ở tốc độ thấp hơn.

* Ưu điểm:Directed diffusion có thể tiết kiệm được năng lượng bằng cách chọn đường truyền tốt theo lịch sử bộ nhớ đệm và quy trình xử lý dữ liệu trong mạng.

* Nhược điểm: (adsbygoogle = window.adsbygoogle || []).push({});

- Directed Diffusion không thể được áp dụng cho tất cả ứng dụng WSNs vì nó được dựa trên một mô hình giao nhận dữ liệu hướng truy vấn. Cácứng dụng đòi hỏi giao nhận dữ liệu liên tục đến nơi chứa dữ liệu sẽ không làm việc hiệu quả với mô hình dữ liệu vận hành truy vấn dựa trên nhu cầu.Do đó, Directed Diffusion không tốt với những ứng dụng nhưgiám sát môi trường.

- Các kế hoạch đặt tên trong Directed Diffusion phụ thuộc từng ứng dụngvà mỗi lần sẽ phải xác định một ưu tiên.Đồng thời phải xử lí phù hợp giữa dữ liệuvà các truy vấn.

2.4.5. Enery-aware routing [1]

Energy-aware routing (định tuyến có nhận biết năng lượng) là giao thức trung tâm dữ liệu tối ưu năng lượng.

* Ý tưởng: Enery-aware routing dùng mộtbộcácđường đicon tối ưu để tăng tuổi thọ củamạng. Các đường đi nàyđược lựa chọnbằng giá trị của một hàm xác suất tùy vào sự tiêu hao năng lượng của mỗi đường đi.

* Các pha trong Enery-aware routing: Giả sử mỗi nút có địa chỉ dựa trên cơ chế định địa chỉ gồm: vị trívà kiểucủa nút. Enery-aware routing thực hiện theo 3 pha sau:

1. Pha thiết lập: thực hiện cục bộ hóa flooding đểtìm ra các đường đi và tạo các bảng chuyển tiếp (Forwarding Table).

Giai đoạn này, tổng chi phí năng lượng được tính toán trong mỗi nút. Ví dụ: nếu yêu cầu được gửi từ nút Niđến nút Nj, thì Njtính toán chi phí của đường đi theo công thức sau:

Trong đó:

- CNj,Ni : chi phí đường đi từ nút Nj đến nútNi

- Cost(Ni): năng lượng để truyền tải tin nhắn yêu cầu của nút Ni - Metric(Nj,Ni): năng lượng tiếp nhận yêu cầu của Nj từ nút Ni

Từ công thức trên, những đường đi có chi phí rất cao bị bỏ đi. Mỗi nút cảm biến gắn một xác suất cho các nút hàng xóm tương ứng trong bảng chuyển tiếp (forwarding Table - FTj) để hình thành đường đi. Công thức tính xác suất của mỗi nút hàng xóm tỉ lệ nghịch với chi phí năng lượng:

Trong đó: PNjNi: Xác suất nút hàng xóm Ni của nút Nj

Sau đóNjtính toán chi phínăng lượng trung bìnhđể đến được đíchbằng cách dùng xác suất các nút hàng xóm trong bảngchuyển tiếp (forwarding table - FTj) theo công thức:

Trong đó: Cost(Nj): Chi phí trung bình của Njđượcthiết lập trong trường chi phí của yêu cầu và đã chuyển tiếp.

2. Pha truyền dữ liệu: Mỗi nút chuyển tiếp gói tinbằng cách chọn ngẫu nhiên một nút hàng xóm theo xác suất trongbảngchuyển tiếp (FTj);

3.Giai đoạn bảo trì đường đi: thực hiện cục bộ hóa flooding không thường xuyên để giữ tất cả đường đi đang tồn tại.

* Ưu điểm: Tiết kiệm năng lượng hơn Directed Diffusion, do đó tăngtuổi thọ mạng.

* Nhược điểm:

- Sử dụng đường truyền đơn sẽ không truyền được tin đến đích nếu một nút hoặc đường truyền bị hỏng;

-Phương pháp này đòi hỏi thu thậpthông tin vị trí và thiếtlập cơ chế định địa chỉ cho các nút.

2.4.6. GBR [1]

GBR là giao thức định tuyến trung tâm dữ liệu dựa vào hướng.

* Ý tưởng: mỗi nút cảm biến ghi nhận sốchặngtừ nút đó đến sink/BS khi sink/BS phát quảng bá các truy vấn trong mạng (nhận truy vấn quảng bá từ các hàng xóm). Từ đó mỗinút có thể xác định được số chặng tối thiểu đi đến nơi chứa tin (còn gọi là chiều cao của nút).

Sự chênh lệch giữachiều cao của một nút và số hàng xóm của nút đó gọi làhướng trên liên kết đó. Việc truyền tin được thực hiện trên một liên kết với hướnglớn nhất.

GBR sử dụng một số kỹ thuật hỗ trợ như tập hợpdữ liệuvà phân chia lưu lượng để cânđối lưu lượng thống nhấttrong mạng.

Có ba kỹ thuật hỗ trợ sau:

- Chương trình ngẫu nhiên (Stochastic scheme) : khi có hai hoặc nhiều nút hàng xóm cócùng hướng, nút lựa chọn ngẫu nhiên một hàng xóm.

- Chương trình dựa vào năng lượng (Energy-based scheme): Khinăng lượng của một nút giảm xuống dưới một ngưỡng nào đó, thì tăng chiều cao của nút đó đểcảm biến khácđượckhuyến khíchgửi dữ liệu tớinútđó.

- Chương trình dựa vào dòng chảy dữ liệu (Stream-based scheme):để chuyển hướng sang dòng chảydữ liệu mớitừ các nút hiện đang là một phần đường đi của các dòng chảy khác. (adsbygoogle = window.adsbygoogle || []).push({});

* Ưu điểm: Có các chương trình phân chia dữ liệu để đạt được sự phân bố lưu lượngphù hợp trên toàn mạng, giúp chocân đối tải trên các nút cảm biến và tăng tuổi thọcủa mạng. GBR thực hiện tốt hơn trong giới hạn tổng năng lượng giao tiếp.

2.4.7. ACQUIRE [1]

ACQUIRE (chuyển tiếp truy vấn tích cực trong mạng cảm biến) là giao thức trung tâm dữ liệu.

* Ý tưởng:truy vấn được chuyển từ nơi chứa tin (sink/BS) và mỗi nút nhận truy vấn cố gắng để đáp ứng một phần yêu cầu bằng cách sử dụng thông tinđã chứa trong bộ

Một phần của tài liệu Nghiên cứu các giao thức định tuyến trong mạng cảm biến không dây (Trang 27)