2.2.1. Ý tƣởng của kỹ thuật LQI
Kỹ thuật LQI là kỹ thuật ước lượng tuyến dựa trên phần cứng, dựa trên thông số của bộ thu và bộ phát không dây để xác định chất lượng của tuyến. Tức là, kỹ thuật LQI dựa trên khai thác thông tin trực tiếp từ bộ thu phát sóng không dây thí dụ như bộ CC2420, giá trị đo đạc các đặc tính vật lý đính kèm trong gói tin nhận được. Các thông số đó có thể là:
Chỉ số chất lượng liên kết - LQI (Link Quality Indicator)
Chỉ số cường độ tín hiệu nhận được - RSSI (Received Signal Strength Indicator)
Tỷ số tín trên tạp - SNR (Signal-to-Noise Ratio).
Các thông số này được hệ thống tính toán và gửi kèmtheo gói tin để nơi nhận xác định được chất lượng tuyến của kênh truyền đó.
2.2.2. Mô tả kỹ thuật LQI
Kỹ thuật sử dụng lại các mô đun (module) của giao thức cây thu thập- CTP (Collection Tree Protocol- CTP) [9], đó là module thu thập, module quản lý hàng xóm, module định tuyến. Kỹ thuật LQI chỉ thay đổi module ước lượng tuyến. Cách tính giá trị ETX của kỹ thuật dựa vào thông số LQI được đính kèm trong các gói tin nhận được. Quá trình cập nhật ETX của LQI được minh họa trong hình 2.1.
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Hình 2.1: Lưu đồ cập nhật ETX (LQI)
Với các thông số lớp vật lý, chất lượng tuyến được đánh giá tốt khi giá trị LQI cao, nên nếu lấy trực tiếp giá trị ETX = LQI để ước lượng thì bị ngược với yêu cầu của CTP là tìm tuyến có rtmetric nhỏ (tương đương với ETX nhỏ), nên giá trị ETX được tính bằng công thức: ETX = 255- LQI. Với cách tính này, đảm bảo sự chính xác của cơ chế CTP, nút cha được chọn là nút có rtmetric nhỏ nhất, tương ứng với ETX nhỏ nhất, tương ứng với LQI lớn nhất.
Sau khi tính được giá trị ETX thì giá trị này sẽ được lưu trong trong các stack, lần lượt từ ngăn nhớ đầu tiên cho đến ngăn nhớ cuối cùng (ngăn nhớ thứ 8), lấy trung bình 8 giá trị đó sẽ được giá trị ETX của liên kết cần tìm trong một khoảng thời gian nhất định.
2.2.3. Nhận xét kỹ thuật LQI
Ưu điểm chính của những thông số trên là không yêu cầu bất cứ một sự tính toán nào mà chúng được lấy trực tiếp từ thiết bị phần cứng.Thêm nữa, những thông số này có thể lấy được từ bất kỳ gói tin nào nhận được, không phân biệt là gói tin unicast hay broadcast.
Nhược điểm kỹ thuật LQI là những thông số này phụ thuộc nhiều vào tính chính xác của thiết bị phần cứng. Ngoài ra việc tính toán thông số này chỉ có thể thực hiện khi nhận được gói tin, kỹ thuật ước lượng loại này không thể tận dụng được thông tin từ việc mất gói và thậm chí khi có nhiều gói tin bị mất trên tuyến,
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
kỹ thuật ước lượng loại này không còn chính xác. Hơn nữa, kỹ thuật ước lượng tuyến dựa trên phần cứng chưa giải quyết được vấn đề bất đối xứng của tuyến.
2.3. Kỹ thuật ETX (Expected Transmission Count) 2.3.1. Ý tƣởng của kỹ thuật ETX 2.3.1. Ý tƣởng của kỹ thuật ETX
Kỹ thuật ETX là kỹ thuật ước lượng dựa trên phần mềm nên yêu cầu một cơ chế dự đoán chất lượng tuyến dựa trên các thông tin độc lập với thông số từ thiết bị phần cứng. Tức là, dựa vào tỷ lệ tiếp nhận gói tin, quá trình ước lượng tuyến có thể nắm bắt được sự thay đổi chất lượng tuyến, hay cần phải có sự trao đổi gói tin thường xuyên giữa các nút để cập nhật kịp thời thông tin cho việc ước lượng chất lượng tuyến.
Mỗi nút đều gửi gói tin quảng bá (beacon) theo chu kỳ, gói tin chứa địa chỉ nút gửi và số thứ tự của gói tin. Phía nhận có thể ước lượng tỷ lệ nhận gói tin của liên kết từ nút gửi tới chính nó, gọi là tỷ lệ nhận gói tin nghịch ( prr_reverse), tỷ lệ này được tính dựa vào sự cách quãng trong dãy số thứ tự các gói tin nhận được, khoảng cách này là số gói tin beacon bị mất trên đường truyền. Nếu trong gói tin beacon gửi tới phía nhận có chứa tỷ lệ nhận gói của liên kết thuận (prr_forward)-tỷ lệ nhận gói thuận mà phía nhận truyền tới nút gửi trước đó- tính được ước lượng theo 2 chiều. Do đó, ước lượng 2 chiều dựa trên độ tin cậy được tính như sau:
ETX = 1/ (prr_forward * prr_reverse) (2.1)
2.3.2. Mô tả kỹ thuật ETX
Kỹ thuật ETX cũng sử dụng các module được thiết lập sẵn trong Contiki OS, chỉ thay đổi module ước lượng tuyến. Kỹ thuật thuật ETX có cơ chế ước lượng dựa trên gói beacon nên có nhiều quá trình phức tạp hơn các kỹ thuật ước lượng dựa trên phần cứng (LQI).
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Hình 2.2: Lưu đồ quá trình gửi gói tin beacon (ETX).
Gói tin beacon có trường info chứa thông tin của bảng hàng xóm của nút. Đầu tiên kiểm tra xem nút có hàng xóm không, nếu không có sẽ thiết lập trường info bằng 0 và gửi, nếu có sẽ thiết lập hàng xóm và giá trị ETX của liên kết từ hàng xóm tới nút vào trường info để gửi đi.
Quá trình nhận gói tin beacon như sau:
Hình 2.3: Lưu đồ quá trình nhận gói tin beacon trong kỹ thuật ETX.
Qua hình vẽ, nút A nhận được gói tin beacon từ nút B, qua quá trình xử lý có được giá trị ETX-forward được đính kèm trong gói tin (ETX(AB)), từ quá
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
trình process-beacon tính được giá trị ETX của chiều tới (ETX(BA). Kết hợp hai giá trị ETX được giá trị ETX theo 2 chiều.
Quá trình xử lý gói tin beacon gửi tới để tính được giá trị ETX chiều tới (ETX(BA)). Khoảng gửi beacon: BEACON_INTERVAL = 6 * CLOCK_SECOND
Hình 2.4: Lưu đồ quá trình xử lý gói beacon nhận được (ETX).
Xét nút A nhận gói tin beacon từ nút B, tại nút A tính toán tỉ lệ nhận thành công các gói tin (PRR) từ nút B tới nút A dựa trên số beacon nhận được (beacon- recerived) và số beacon bị mất (beacon-failed):
PRRlast = (2.2)
Cửa sổ cập nhật dựa theo beacon là theo số gói tin nhận được : BPW = 4. Việc cập nhật giá trị PRR này dựa trên quy tắc cửa sổ trượt trung bình trọng số theo hàm mũ – EWMA (Exponentially Weighted Moving Average) như sau:
PRR new = α*PRRold + (1- α)*PRRlast (2.3)
Trong đó, trọng số α là một trọng số bất kì có giá trị nằm giữa 0 và 1. Tùy thuộc vào mục đích cập nhật dựa trên những giá trị mới hay phụ thuộc nhiều vào giá trị cũ mà α tiến gần về 0 hay 1. Ở đây chọn α = 0,9.
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
ETX(BA) . (2.4)
Sau các quá trình cơ bản trên, giá trị ETX được cập nhật và sử dụng để ước lượng chất lượng tuyến.
2.3.3. Nhận xét kỹ thuật ETX
Vì kỹ thuật ETX sẽ dựa chính vào thông số ETX - số lần truyền kỳ vọng. Mà, mục tiêu của thông số ETX là giảm thiểu số lần truyền dự kiến để truyền thành công một gói tin unicast, từ đó tìm được tuyến đường có hiệu suất truyền thông cao. Nhờ đó, có thể giảm thiểu năng lượng hao phí xảy ra do việc cố gắng truyền gói tin trên một tuyến có chất lượng kém.
Tuy nhiên, việc tính toán giá trị ETX phụ thuộc nhiều vào khoảng thời gian gửi beacon và kích thước cửa sổ cập nhật. Nếu khoảng gửi càng nhỏ hay kích thước cửa sổ cập nhật càng nhỏ thì kỹ thuật ước lượng càng có khả năng thích ứng với sự thay đổi chất lượng liên kết. Tuy nhiên, khi đó chi phí sẽ tăng cao hơn do phải gửi nhiều gói beacon hơn.
2.4. Kỹ thuật DE (Direct Estimate) 2.4.1. Ý tƣởng của kỹ thuật DE 2.4.1. Ý tƣởng của kỹ thuật DE
Kỹ thuật DE là kỹ thuật ước lượng dựa trên phần mềm, nhưng không giống cách ước lượng dựa trên gói tin beacon như kỹ thuật ETX, kỹ thuật (DE) là kỹ thuật sử dụng trực tiếp số lần truyền đi truyền lại của gói tin dữ liệu để ước lượng tuyến tại phía gửi. Cửa sổ trung bình trượt đơn giản được áp dụng cho số lần truyền đi truyền lại của các lần truyền gói tin gần nhất để tính giá trị ETX.
2.4.2. Mô tả kỹ thuật DE
Kỹ thuật DE đã được thiết lập mặc định trên Contiki OS. Quá trình cập nhật ETX của kỹ thuật DE như sau:
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Hình 2.5: Lưu đồ cập nhật EXT của kỹ thuật DE
Giá trị ETX của 1 tuyến được tính bằng trung bình theo thời gian số lần truyền lại để truyền 1 gói tin thành công giữa 2 nút.
Giá trị ETX cho mỗi nút hàng xóm được chứa trong bảng hàng xóm và được tính toán mỗi khi một gói tin dữ liệu được gửi tới hàng xóm. Khi bên gửi đóng gói ACK, số lần truyền đi cần thiết để truyền gói tin đi cũng được gửi tới bộ ước lượng tuyến.
Giá trị ETX tức thời của mỗi thời điểm được tính toán dựa trên số lần truyền lại các gói dữ liệu và được lưu vào trong các stack, lần lượt từ ngăn nhớ đầu tiên cho đến ngăn nhớ cuối cùng (ngăn nhớ thứ 8), lấy trung bình 8 giá trị đó sẽ được giá trị ETX của liên kết cần tìm trong một khoảng thời gian nhất định (có thể hiểu đơn giản là ETX được tính bằng trung bình số lần truyền của 8 gói tin truyền thành công gần nhất thời điểm đó) .
Các giá trị ETX này được cập nhật lần lượt khi có sự kiện nút gửi thành công một gói tin hoặc khi một gói tin timed out: Nếu nút gửi được 1 gói tin, giá trị ETX được thay thế bởi số lần truyền lại gói tin đó; nếu khi gói tin timed out (vượt quá số lần truyền lại), ETX được nhân lên gấp đôi. Quá trình thêm hàng xóm vào bảng hàng xóm
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Hình 2.6: Lưu đồ quá trình thêm hàng xóm của kỹ thuật DE
Tại một nút, nút hàng xóm được quản lý theo danh sách bảng hàng xóm, do đó, khi muốn cập nhật thêm một nút làm hàng xóm thì cần thêm nút đó vào trong bảng hàng xóm của nút. Nếu bảng hàng xóm còn trống, thêm ngay nút mới vào làm hàng xóm được. Nếu bảng hàng xóm đã đầy, phải tìm hàng xóm kém nhất trong bảng (là nút có rtmetric cao nhất trong số các hàng xóm) và so sánh, nếu rtmetric của hàng xóm kém nhất cao hơn rtmetric của nút mới cập nhật thì thêm nút mới đó vào thay thế hàng xóm kém nhất trong bảng hàng xóm. Quá trình cập nhật hàng xóm của bảng hàng xóm như sau:
Hình 2.7: Lưu đồ cập nhật hàng xóm của kỹ thuật DE
Khi một nút nhận được bản tin thông báo (annoucenment) của một nút khác tới, phải kiểm tra xem nút mới có trong bảng hàng xóm của mình không, nếu có
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
thì cập nhật rtmetric của nút hàng xóm này vào thay thế rtmetric cũ luôn, nhưng nếu không có trong bảng hàng xóm, thì phải kiểm tra xem có cập nhật thêm được nút mới vào bảng hàng xóm không:
Theo module thêm hàng xóm ở trên, khi thêm thành công hàng xóm vào bảng hàng xóm, giá trị rtmetric của nút mới được cập nhật vào bảng hàng xóm và khôi phục thời gian đếm về 0. Vì trong quản lý hàng xóm, nút sẽ quét bảng hàng xóm sau 1 phút và nút sẽ khôi phục các giá trị ước lượng tuyến về ban đầu nếu sau khoảng MAX_LE_AGE = 10 phút mà chất lượng tuyến đó không được cập nhật, cũng như loại bỏ hàng xóm khỏi bảng hàng xóm sau khoảng MAX_AGE = 60 phút nếu nút hàng xóm đó không được cập nhật thông tin gì.
2.4.3. Nhận xét kỹ thuật DE
Kỹ thuật DE yêu cầu bộ nhớ cài đặt nhỏ và sử dụng năng lượng hiệu quả, bởi vì không cần phải truyền thêm gói tin beacon, mà dựa vào số lần truyền đi truyền lại trực tiếp của gói tin để tính ETX.
2.5. Kỹ thuật Extend - DE ( Extend - Direct Estimate) 2.5.1. Ý tƣởng kỹ thuật E-DE 2.5.1. Ý tƣởng kỹ thuật E-DE
Việc sử dụng gói tin xác nhận thành công ACK đóng vai trò quan trọng để nâng cao độ tin cậy trong truyền thông không dây. Chính vì thế, cần sử dụng cùng một chính sách phối hợp ở lớp MAC đối với cả hai loại gói tin, đồng thời sử dụng cùng giá trị là số lần truyền lại tối đa cho gói tin ACK và gói dữ liệu. Do đó, kỹ thuật E-DE là kỹ thuật cải tiến từ kỹ thuật DE mà có kết hợp số lần truyền của gói ACK vào cùng với số lần truyền gói dữ liệu để ước lượng, đặt tên cho kỹ thuật mới là Extend-DE.
2.5.2. Mô tả kỹ thuật E-DE
Với ý tưởng trên thì kỹ thuật E-DE kế thừa các quá trình của kỹ thuật thuật DE, và chỉ bổ sung thêm việc tính giá trị EXT thêm số lần truyền gói tin ACK. Do đó, lưu đồ cập nhật ETX của kỹ thuật E-DE được minh họa như hình dưới đây.
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Hình 2.8: Lưu đồ cập nhật ETX của kỹ thuật Extend - DE
-
-DE như hình 2.8.
Kỹ thuật E-DE quan tâm tới cả số lần truyền lại để truyền thành công gói tin ACK. Khi nút A gửi gói tin data cho nút B, nút A sẽ lưu lại số lần truyền để truyền gói tin này (ví dụ = x lần), và khi nút A nhận được gói tin ACK của nút B thông báo nhận thành công gói tin data trên, nút A sẽ lưu luôn số lần truyền của gói tin ACK (được đính kèm trong gói tin ACK), ví dụ = y lần. Khi đó nút A sẽ cập nhật giá trị ETX của tuyến bằng công thức: ETX = x + y (ETX của tuyến sẽ bằng số lần truyền để truyền thành công của cả gói tin data và gói ACK).
Giá trị ETX này sẽ được lưu trong trong các stack, lần lượt từ ngăn nhớ đầu tiên cho đến ngăn nhớ cuối cùng (ngăn nhớ thứ 8), lấy trung bình 8 giá trị đó sẽ được giá trị ETX của liên kết cần tìm trong một khoảng thời gian nhất định (cơ chế hoàn toàn giống với kỹ thuật DE).
Các giá trị ETX này được cập nhật lần lượt khi có sự kiện nút gửi thành công một gói tin hoặc khi một gói tin timed out: Nếu nút gửi được 1 gói tin, giá trị ETX được thay thế bởi số lần truyền lại gói tin đó; nếu khi gói tin timed out, ETX được nhân lên gấp đôi.
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
2.5.3. Nhận xét kỹ thuật E-DE
Bên cạnh, việc E-DE kế thừa những ưu như yêu cầu bộ nhớ nhỏ, sử dụng năng lượng hiệu quả. Tuy nhiên, cách tính ETX của kỹ thuật lại phụ thuộc nhiều vào lưu lượng dữ liệu của mạng, quan tâm đến số lần truyền ACK. Do đó, trong trường hợp lưu lượng mạng thấp, thì kỹ thuật E-DE cũng có nhược điểm là việc cập nhật không phù hợp và dẫn tới không chính xác.
2.6. Kỹ thuật 4B ( Four - Bit) 2.6.1. Ý tƣởng kỹ thuật 4B 2.6.1. Ý tƣởng kỹ thuật 4B
Kỹ thuật 4B đánh giá chất lượng liên kết dựa trên việc khai thác thông tin kênh truyền của lớp vật lý và tham số ETX để đưa những quyết định tối ưu cho việc xác định tuyến và định tuyến cho gói tin. Như vậy, kỹ thuật 4B là kỹ thuật kết hợp cả kỹ thuật ước lượng tuyến dựa trên phần cứng và kỹ thuật ước lượng tuyến dựa trên phần mềm.
Tức là, kỹ thuật 4B được xây dựng dựa trên việc khai thác thông tin của chất lượng kênh vô tuyến từ lớp vật lý, kết hợp với thông số ETX và thông tin từ lớp mạng để dự toán chất lượng đường đi tốt hơn cho việc định tuyến.
2.6.2. Mô tả kỹ thuật 4B
Kỹ thuật 4B là kỹ thuật kết hợp hai loại ước lượng dựa trên phần cứng và phần mềm, đồng thời cũng ước lượng dựa trên cả gói gin beacon và gói tin dữ liệu, nên khi triển khai kỹ thuật trên Contiki OS sẽ có nhiều module của kỹ thuật