Cấu trúc các thành phần trong ContikiRPL

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu đánh giá giao thức thu thập dữ liệu cho mạng lưới đồng hồ nước thông minh (Trang 67 - 69)

Hình 3.9 minh họa mô hình cấu trúc thực thi giao thức RPL trên hệ điều hành Contiki.

Lớp ứng dụng

Lớp giao vận (TCP/UDP)

Ngăn xếp truyền thông uIPv6

Lớp MAC, PHY theo chuẩn IEEE

802.15.4

ContikiRPL

ICMPv6 (DIO, DIS, DAO)

Tìm kiếm các nút lân cận

Thiết lập tuyến đường

Các gói tin dữ liệu và điều khiển

Khối ước lượng chất lượng liên kết

Thông tin phản hồi về chất lượng liên kết

ETX

Hình 3.9: Thực thi giao thức RPL trên hệ điều hành Contiki [12].

Ngăn xếp truyền thông uIPv6 gọi đến module ContikiRPL khi nhận được bản tin ICMPv6 (DIO, DIS, DAO) hoặc khi cần tìm kiếm các nút lân cận. Module ContikiRPL gọi đến ngăn xếp truyền thông uIPv6 để thiết lập tuyến đường trong các bảng định tuyến. Module ContikiRPL sử dụng thước đo định tuyến chất lượng

liên kết ETX (Expected Transmission) để thiết lập truyến đường trong mạng. Thông tin phản hồi về chất lượng liên kết được thực hiện bời khối ước lượng chất lượng liên kết (Link Estimator).

Hình 3.10 minh họa cấu trúc các thành phần trong module ContikiRPL.

ContikiRPL

Quản lý cấu trúc liên kết DAG

Quản lý các bản tin điều khiển

Quản lý các

nút lân cận Hàm mục tiêu Quản lý các

bộ định thời

Hình 3.10: Cấu trúc các thành phần trong module Contiki RPL. Contiki RPL bao gồm các thành phần chính:

 Quản lý cấu trúc liên kết DAG: Khối này quản lý quá trình tham gia, xây dựng, duy trì DAG. Khối này cung cấp những phương thức quản lý DAG (khởi tạo DAG, giải phóng DAG, lấy thông tin về DAG), xử lý thông tin khi nhận bản tin DIO, xử lý thông tin khi có sự kiện cập nhật rank của nút cha, không xác định được nút cha phù hợp, thêm, tìm kiếm, lựa chọn nút cha, quản lý (thêm, xóa) các tuyến đường trong bảng định tuyến.

 Quản lý các bản tin điều khiển: Các bản tin điều khiển RPL – ICMP gồm 3 loại bản tin chính DIS, DIO, DAO. Khối này quản lý các chức năng kiểm tra, xử lý các bản tin ICMP đầu vào, tạo và gửi các bản tin ICMP đầu ra.

 Quản lý các bộ định thời: Bao gồm 4 bộ định thời chính, được xây dựng dựa trên những bộ định thời sẵn có của Contiki.

+ Periodic Timer: Có chức năng định thời kiểm tra và làm mới bảng định tuyến, xóa những node trong bảng định tuyến có lifetime bằng 0.

+ DIS Timer: Quản lý gửi các bản tin DIS. Khi hoạt động định thời diễn ra, DIS timer sẽ gọi hàm dis_output() để tạo một bản tin DIS và gửi vào mạng. + DIO Timer: Định thời gửi bản tin DIO vào mạng, nhằm xây dựng và duy trì DAG trong mạng, xác định mối quan hệ giữa các node. Khi bộ định thời

hết hạn sẽ gọi hàm dio_output() để tạo và gửi DIO tới những node khác trong mạng.

+ DAO Timer: Định thời tạo và gửi bản tin DAO sau khi node đã tham gia vào một DAG trong mạng.

 Quản lý thông tin về các nút lân cận: Thông tin về số lần truyền của gói tin gửi, số lần truyền của gói tin nhận, địa chỉ của nút lân cận.

 Hàm mục tiêu: Thực hiện chức năng tính toán rank, xác định nút cha tốt nhất.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu đánh giá giao thức thu thập dữ liệu cho mạng lưới đồng hồ nước thông minh (Trang 67 - 69)

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

(87 trang)