CHƯƠNG 3: TÌM HIỂU GIAO THỨC NÂNG CAO
3.1 Cân bằng năng lượng - ELB
Cơ chế của ELB được cải tiến dựa trên các đặc tính của DMR và MDMR, đó là: cân bằng năng lượng dưa theo hàm mục tiêu và chuyển đổi node parent. Những cải tiến mới này làm cho việc xác định next hop chính xác hơn và cân băng năng lượng đơn giản nhưng hiệu quả.
3.1.1 Xây dựng DODAG
Để bắt đầu, tất cả các node cảm biến ở trạng thái thức và bộ thu phát ở trạng thái chờ để nhận nhận bản tin DIO xây dựng mạng, nó giải phóng bản tin DIS để thu hút bản tin DIO từ các node neighbor.
Định tuyến đa đường cho Internet of Things GVHD: PGS.TS Ngô Quỳnh Thu
Học viên thực hiện Nguyễn Văn Bình – CB 130015 – KTMT&TT 2013B 40 Bước 1: Khi được kích hoạt, trạm gốc khởi tạo thông tin DODAG gồm:
InstanceID, Version, DODAGID và rank của nó. Nó gói gọn thông tin trong bản tin DIO và quảng bá bản tin tới tất cả các node neighbor.
Bước 2: Sau khi nhận được bản tin DIO, các node xác định có hay không bản tin DIO được xử lý và ghi lại các thông tin DODAG mới nhất (InstanceID, Version, DODAGID), xem xét rank của các node neighbor để đưa vào danh sách node parent nếu có thể và đổi rank của nó nếu cần thiết.
Bước 3: Node sẽ thay đổi rank của bản tin DIO ban đầu, quảng bá tới các node neighbor.
Bước 4: Bất cứ khi nào một node cảm biến nhận một bản tin DIO, nó lặp lại bước 2 và bước 3.
Bước 5: Sau một khoảng thời gian được xác định trước, nếu node cảm biến không nhận được bất kỳ bản tin DIO nào, nó giải phóng bản tin DIS để tiếp nhận các bản tin DIS từ các node neighbor.
Định tuyến đa đường cho Internet of Things GVHD: PGS.TS Ngô Quỳnh Thu
Học viên thực hiện Nguyễn Văn Bình – CB 130015 – KTMT&TT 2013B 41
Does self participate in DODAG ?
In initialization phase Join DODAG Receive DIO
Create DAG instance Create parent-list Insert this neighbor to parent list Update energy-level using equation7
Calculate self rank using equation 9 Reset DIO trickler timer
Is self sequence greater than DIO
sequence
In turn of global repair Trigger global repair
Is sender in parent list Is sender rank less than self rank
Clear parent list Insert parent to parent list Update energy-level using equation7
Calculate self rank using equation 9
Add new parent
Update energy-level using equation7 Calculate self rank using equation 9
Reset DIO trickler timer
No
Dismiss message
Update energy-level using equation7 Calculate self rank using equation 9
Update parents’ rank Update energy-level using equation7
Calculate self rank using equation 9 Is sender rank lower
than before Has only 1 parent Remove parent
Yes
Yes
No
No
Yes
Yes
No
Yes
No No
Yes
Hình 23 quá trình xử lý bản tin DIO theo ELB
Kết thúc giai đoạn này, mỗi một node có một danh sách node parent và node parent có rank tốt nhất được chọn làm node parent ưu tên để chọn làm next hop.
3.1.2 Cân bằng năng lượng dựa trên hàm mục tiêu
Thông thường trong RPL, node parent ưu tiên được chọn dựa trên next hop và đây là vấn đề quan trọng trong các giao thức. Khi đó, node parent ưu tiên được sử dụng quá
Định tuyến đa đường cho Internet of Things GVHD: PGS.TS Ngô Quỳnh Thu
Học viên thực hiện Nguyễn Văn Bình – CB 130015 – KTMT&TT 2013B 42 nhiều do có rank tốt nên năng lượng bị giảm, dẫn tới node này có thời gian sống ngắn.
Trường hợp nhiều node children có chung một node parent nó có thể gây ra lỗi do xung đột. Điều này có thể tránh được nếu một số node chuyển sang node parent ưu tiên thứ hai.
Để làm được điều này, ELB đưa ra một hàm mục tiêu không chỉ đánh giá node parent bằng cách tính toán next hop mà còn xét đến năng lượng còn lại qua tất cả các node theo tuyến sau mỗi lượt truyền.
ELB đề xuất hàm mục tiêu mới với việc đánh giá node parent với tiêu chí là mức năng lượng còn lại. Hàm mục tiêu này sẽ sử dụng cả hop-cout và mức năng lượng còn lại để xác định rank của node [16]. Trước hết hàm mục tiêu sẽ giả định và tính toán như sau:
Rank của node được thiết lập bằng 100:
𝑅𝑎𝑛𝑘𝐼𝑛𝑐 = 100 (công thức 5)
Rank của node gốc bằng RankInc : Rank(root) = RankInc (công thức 6)
Mức năng lượng của node được tính như sau:
EnergyLevel(node) = 𝑅𝑒𝑠𝑖𝑑𝑢𝑎𝑙𝐸𝑛𝑒𝑟𝑔𝑦(𝑛𝑜𝑑𝑒)
𝑀𝑎𝑥𝑚𝑖𝑚𝑢𝑚𝐸𝑛𝑒𝑟𝑔𝑦(𝑛𝑜𝑑𝑒) * 100 (công thức 7) Mức năng lượng này có giá trị từ 0 – 100.
Số bước nhảy tối thiểu cần thiết để chuyển tiếp một gói tin vào thư mục gốc DODAG được tính theo rank của node như sau:
Hop(node) = ⌊𝑅𝑎𝑛𝑘(𝑛𝑜𝑑𝑒)
𝑅𝑎𝑛𝑘𝐼𝑛𝑐 ⌋ (công thức 8) Rank của một node được tính như sau:
Rank(node)=(Hop(parent)+1)*RankInc – EnergyLevel(node) (công thức 9) Sau khi xem xét bản tin DIO của bất kỳ node parent ưu tiên nào, chúng có thể tách và tính số bước nhảy, mức năng lượng còn lại của node gửi bản tin DIO bằng cách sử dụng công thức 8, 9 như trên:
EnergyLevel(node) = Rank(node) – Hop(node) (công thức 10)
Bên cạnh đó, việc xử lý bản tin DIO phải được sửa đổi để trích xuất số bước nhảy của node parent để tính toán rank của node đó.
Tuy nhiên, năng lượng của mỗi node thay đổi liên tục và rank của node đó chỉ được cập nhật khi nhận được bản tin DIO. Trong một số trường hợp, rank của node cập nhật trễ làm cho trường rank không chính xác. Để khắc phục điều này nó sẽ xem
Định tuyến đa đường cho Internet of Things GVHD: PGS.TS Ngô Quỳnh Thu
Học viên thực hiện Nguyễn Văn Bình – CB 130015 – KTMT&TT 2013B 43 xét mức năng lượng sau mỗi lần truyền, nhận được thực thi, nếu có sự thay đổi mức năng lượng, rank của node sẽ được tính theo công thức 9.
3.1.3 Cân bằng năng lượng sử dụng cơ chế chuyển đổi node parent
Ở đây, mỗi node parent có cùng hop-count, node nào có năng lượng còn lại cao nhất sẽ được chọn làm next hop tiếp theo để thưc hiện cân bằng năng lượng giữa các node trong list parent.Điều kiện để node parent được chọn khi nó là node sử dụng gần nhất.
Need to forward data
Is having any parents
Choose least recently used parent with the best rank
In term of (hop count and energy-level) Yes
No
Trigger local repair Multicast DIS
Remove parent Perform a local repair
Perform a global repair if no possible parent Update energy-level using equation7
Calculate self rank using equation 9 Is Having ACK
Forward data
Process next data Update energy-level using equation7
Calculate self rank using equation 9
No Yes
Hình 24 Chuyển dữ liệu theo cơ chế ELB
Bằng cách áp dụng cơ chế ELB, node cảm biến có thể chọn node parent với năng lượng dư cao nhất trong số các node parent bằng cách so sánh năng lượng còn lại sau mỗi lần truyền nhận. Lợi thế của cơ chế này là kéo dài thời gian hoạt động của mạng vì mỗi node parent có rank cao nhất được chuyển lần lượt.
Định tuyến đa đường cho Internet of Things GVHD: PGS.TS Ngô Quỳnh Thu