CHƯƠNG 1 : TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY
2.3. Thuật toán định tuyến LEACH [4][5]
LEACH (Low-Energy Adaptive Clustering Hierarchy-Centralized) là thuật toán phân cấp theo cụm thích ứng năng lượng thấp, dựa trên thuật toán phân nhóm [1][5], trong đó, các nút có thể phân bố ngẫu nhiên, và tự hình thành cụm (sefl configuring cluster formation). Nút chủ cụm có chức năng
điều khiển các nút trong cụm gửi dữ liệu đến nó theo một chu kỳ nhất định. Tại nút chủ, dữ liệu sẽ được thu thập và xử lý ở nhiều mức độ khác nhau, tùy thuộc vào từng ứng dụng, trước khi gửi tới trạm gốc. Thuật toán LEACH có khả năng tự tổ chức thành cụm, thực hiện xử lý cục bộ, rồi truyền tới nút chủ (sink). Do đó, nút chủ sẽ tốn nhiều năng lượng hơn so với nút thông thường. Cho nên, thuật toán LEACH thực hiện ngẫu nhiên quay vòng vai trò nút chủ trong tất cả các nút mạng để tránh tiêu hao năng lượng trên một số nút cố định.
Quá trình hoạt động của thuật toán LEACH như sau:
Thuật toán LEACH được chia thành các vòng, mỗi vòng được bắt đầu với pha thiết lập và pha ổn định [1]. Để giảm lượng bản tin mào đầu trong mạng thì pha ổn định phải dài hơn so với pha thiết lập. Hình 2.3 minh họa trạng thái các pha của thuật toán LEACH.
Hình 2.3. Các bước của thuật toán LEACH [5]
Pha thiết lập
Mỗi vòng hoạt động trong LEACH được bắt đầu bằng pha thiết lập, trong pha thiết lập, bước đầu tiên là lựa chọn nút chủ của từng cụm. Đây là quá trình lựa chọn nút chủ. Ban đầu nút cảm biến tự quyết định có hay không trở thành nút chủ trong vòng hoạt động đó hay không. Việc đưa ra quyết định
này là căn cứ vào tỷ lệ phần trăm mong muốn trở thành nút chủ trong mạng (P) và số lần nút đó đã trở thành nút chủ tính cho đến thời điểm hiện tại. Mỗi nút trong mạng lựa chọn một giá trị ngẫu nhiên (S) trong khoảng 0 và 1.
Nếu giá trị này thấp hơn giá trị ngưỡng T(n), nút trở thành nút chủ của vòng hiện tại, ngược lại, nếu S lớn hơn P thì nút đó là nút thông thường. Giá trị ngưỡng T(n) được xác định bởi công thức [4][5]:
(2.1)
Trong đó:
P = tỉ lệ phần trăm mong muốn trở thành nút chủ của mạng. R là vòng hiện tại.
G là tập các nút chưa trở thành nút chủ trong (1/P) vòng trước đó.
Sử dụng ngưỡng này, mỗi nút sẽ trở thành nút chủ một lần duy nhất trong một chu kỳ 1/P vòng. Cứ hết một chu kỳ 1/P vòng, tất cả nút thiết lập lại giá trị ngẫu nhiên S để bắt đầu một chu kỳ mới. Sau một vòng, giá trị T(n) tăng lên một lượng bằng P và sau 1/P -1 vòng thì T(n)=1, vậy các nút chưa trở thành nút chủ trong 1/P vòng gần nhất chắc chắn sẽ phải đảm nhận vai trò nút chủ tại vòng này. Như vậy, sau 1/P vòng, tất cả nút mạng đủ điều kiện để trở thành nút chủ duy nhất một lần.
Tiếp theo là quá trình thực hiện việc thiết lập cụm. Tức là, sau khi quyết định trở thành nút chủ cho vòng hiện tại, nút chủ phát quảng bá một bản tin Advertisement (ADV) cho nút lân cận. Bản tin này là một bản tin nhỏ chứa ID của nút chủ và một tiêu đề để phân biệt bản tin này là một bản tin thông báo. Nút không phải là nút chủ sẽ phải giữ bộ thu trong suốt thời gian diễn ra pha thiết lập để lắng nghe bản tin Advertisements của nút chủ. Những nút không phải là nút chủ sẽ quyết định nó sẽ nằm trong cụm nào bằng việc
chọn xem nút chủ nào yêu cầu chi phí năng lượng giao tiếp thấp nhất dựa trên cường độ của tín hiệu nhận được từ bản tin quảng bá. Giả sử các kênh truyền là đối xứng, nút chủ có bản tin Advertisement được lắng nghe với cường độ tín hiệu lớn nhất chính là nút cần ít năng lượng nhất cho việc truyền thông.
Hình 2.4: Lưu đồ thuật toán pha thiết lập của LEACH
Sau khi quyết định là thành viên của cụm nào, nút sẽ thông báo cho nút chủ của cụm đó biết. Mỗi nút sẽ phát bản tin “yêu cầu kết nối” (REQ) tới nút chủ. Bản tin này cũng là một bản tin nhỏ, bao gồm ID của nút, ID nút chủ và một phần tiêu đề để phân biệt với bản tin khác. Nút chủ hoạt động như một khối điều khiển trung tâm cục bộ để xử lý dữ liệu gửi từ các nút trong cụm mà nó làm nút
chủ. Nút chủ thiết lập bản tin định thời TDMA và truyền tới các nút trong cụm. Cơ chế này sẽ đảm bảo không có xung đột xảy ra và cho phép nút không phải là nút chủ sẽ không phải hoạt động liên tục, mà chỉ hoạt động khi đến khe thời gian được phân bổ, còn lại, nút chuyển sang trạng thái nghỉ (Sleep State). Như vậy, sử dụng TDMA sẽ tiết kiệm được năng lượng cho nút cảm biến.
Khi bản tin TDMA được truyền đến tất cả nút trong cụm, pha thiết lập đã hoàn thành và bắt đầu cho pha ổn định.
Pha ổn định
Pha ổn định hay pha truyền dữ liệu được chia thành các khung. Mỗi nút sẽ chuyển sang trạng thái hoạt động để gửi dữ liệu của nó tới nút chủ một lần trên một khung trong khe thời gian mà nó được phân bổ. Khe thời gian của nút là cố định trong một vòng, cứ đến khe thời gian đó thì nút tiến hành cảm biến và truyền dữ liệu tới nút chủ.
Số khe thời gian trong một khung dữ liệu phụ thuộc vào số lượng nút trong cụm. Tức là có bao nhiêu nút trong cụm (trừ nút chủ) thì sẽ có bấy nhiêu khe thời gian. Trong thuật toán định tuyến LEACH, số cụm mong muốn trong một vòng (K) được xác định bằng P nhân với tổng số nút trong mạng, nhưng LEACH lại không có cơ chế đảm bảo rằng sẽ có chính xác K cụm được hình thành trong mỗi vòng. Thêm vào đó, trong pha thiết lập, do không đưa tham số vị trí vào quá trình lựa chọn nút chủ, nên không đảm bảo số lượng nút trong một cụm, do đó, số nút trong một cụm là khác nhau và dữ liệu mà mỗi nút gửi đến nút chủ phụ thuộc vào số nút trong cụm đó. Hình 2.5 minh họa sơ đồ thuật toán pha ổn định trong LEACH.
Để giảm sự tiêu thụ năng lượng, mỗi nút không phải là nút chủ sẽ điều khiển công suất phát dựa trên cường độ của bản tin quảng bá nhận được từ nút chủ. Kênh phát sóng của nút sẽ ở trạng thái nghỉ cho đến khe thời gian của nó.
Nút chủ lưu trữ dữ liệu mà nút trong cụm gửi đến. Khi đã nhận được hết dữ liệu từ tất cả nút thành viên, nút chủ tiến hành xử lý dữ liệu cục bộ, mức độ xử lý dữ liệu rất khác nhau, có thể là nén, tính toán, tổng hợp dữ liệu… phụ thuộc vào yêu cầu của từng ứng dụng. Dữ liệu đã được tổng hợp, sau đó, được gửi tới BS. Khoảng cách từ nút chủ tới BS có thể xa và kích cỡ bản tin dữ liệu thường là lớn, do đó đòi hỏi nhiều năng lượng tiêu thụ trong quá trình truyền từ nút chủ tới trạm gốc.
Hình 2.6 chỉ ra hoạt động của LEACH trong một vòng, từ khi các cụm được hình thành trong pha thiết lập, quá trình hoạt động của pha ổn định khi dữ liệu được truyền từ các nút tới Cluster-Head rồi truyền đến BS.
Hình 2.6: Minh họa hoạt động của một pha ổn định trong LEACH
Để giảm thiểu tác động không mong muốn này giữa các cụm, mỗi cụm trong LEACH sử dụng phương pháp đa truy nhập phân chia theo mã CDMA (Code Division Multiple Access). Một cụm có một mã trải phổ duy nhất, tất cả nút trong cụm truyền dữ liệu tới nút chủ phải dùng mã trải phổ này và nút chủ sẽ lọc dữ liệu được gửi từ những nút có cùng mã trải phổ với nó. Nút chủ gửi dữ liệu tới BS cũng sử dụng một mã trải phổ cố định, và dùng cơ chế CSMA để tránh xảy ra xung đột với nút chủ khác. Tuy là kênh truyền vô tuyến, nhưng khi một nút chủ có dữ liệu để gửi tới BS, nó phải lắng nghe xem có nút chủ nào phát dữ liệu không. Nếu không có nút nào phát thì mới tiến hành truyền dữ liệu tới BS, còn nếu có nút đang phát dữ liệu thì nút sẽ phải đợi.
LEACH có thể được mở rộng thông qua thiết lập các nhóm phân cấp. Trong trường hợp mạng lớn, số lượng nút cảm biến nhiều, nút chủ có thể không truyền thông trực tiếp với trạm gốc, mà phải thông qua nút chủ có mức phân cấp cao hơn (super-cluster-head), quá trình này tiếp tục cho đến lớp cao nhất của sơ đồ phân cấp, tại đây, dữ liệu mới được truyền đến trạm gốc.
Trong mạng lớn, sự phân cấp này rõ ràng mang lại hiệu quả cao hơn trong việc tiết kiệm năng lượng tiêu thụ của nút chủ.
Nhận xét thuật toán định tuyến LEACH
Những phần trên đã đề cập đến LEACH, một giao thức định tuyến dựa trên cơ chế phân cụm nhằm tối thiểu hóa năng lượng tiêu hao bằng cách phân bổ đều khả năng được lựa chọn làm nút chủ cho tất cả nút mạng. Tại những thời điểm khác nhau, mỗi nút có vai trò khác nhau, và do đó, sử dụng năng lượng khác nhau. Nhưng số lần đóng vai trò nút chủ của tất cả nút mạng trong một chu kỳ là bằng nhau, nhờ đặc điểm này mà LEACH có thể phân bổ đều năng lượng tiêu thụ trong mạng, vì năng lượng tiêu thụ chủ yếu tập trung tại các nút chủ. Từ đó, có thể rút ra một số ưu điểm của LEACH như sau:
- Đơn giản: Trong giao thức định tuyến LEACH, nút cảm biến tự tiến hành quyết định nút chủ và phân bổ cụm, không đòi hỏi thông tin điều khiển từ trạm gốc và nút không yêu cầu hiểu biết về toàn bộ cấu hình mạng. Ưu điểm này giảm gánh nặng cho trạm gốc và lượng bản tin mào đầu truyền trong mạng.
- Phân bố đều năng lượng tiêu thụ cho nút mạng: Với việc sử dụng ngưỡng quyết định T(n) và giá trị ngẫu nhiên có phân bố đều S, xét về mặt lý thuyết, nếu thời gian càng dài thì thuật toán LEACH phân bố đều vai trò làm nút chủ cho tất cả nút và thông qua đó, gián tiếp làm cho năng lượng tiêu thụ trên các nút gần tương đương nhau.
Bên cạnh những ưu điểm trên, giao thức định tuyến LEACH vẫn còn những nhược điểm sau:
- Số cụm trong một vòng không cố định: Nút mạng sử dụng giá trị ngẫu nhiên S và ngưỡng T(n) để tự quyết định có trở thành nút chủ trong vòng hiện tại hay không, do đó, thuật toán LEACH không có cơ chế nào để đảm bảo được số lượng cụm trong một vòng. Nhược điểm này dẫn đến hậu quả là có
những vòng không có cụm nào được hình thành, trong khi ở những vòng khác lại có quá nhiều cụm, từ đó, dữ liệu gửi tới trạm gốc bị gián đoạn.
- Xác định nút chủ không căn cứ vào năng lượng còn lại: Một trong những ưu điểm của LEACH là phân bố đều vai trò làm nút chủ trong một chu kỳ cho tất cả nút mạng, tuy nhiên, trong trường hợp mạng lớn, khoảng cách từ nút đến trạm gốc chênh lệch nhau nhiều, do đó, lượng năng lượng tiêu hao khi trở thành nút chủ cũng khác xa nhau, nhưng LEACH lại không căn cứ vào năng lượng còn lại để lựa chọn nút chủ, mà căn cứ vào số lần đã trở thành nút chủ trong các vòng trước đó. Nhược điểm này làm cho nút ở xa trạm gốc mất năng lượng sớm hơn.
- Phân bổ cụm không hiệu quả: Quá trình chọn nút chủ và do đó là phân bổ cụm hoàn toàn không quan tâm tới vị trí của nút mạng nên có rất nhiều trường hợp hai nút chủ nằm cạnh nhau, tạo nên hai cụm chồng lấn lên nhau, ảnh hưởng đến hiệu quả của mạng.