Trong đó, là năng lượng điện tử, phụ thuộc và các yếu số như: mã hóa số, điều chế, lọc tín hiệu trước khi gửi đến bộ khuếch đại. [4]. =50nJ/bit.
3.3. Mơ phỏng các thuật tốn định tuyến LEACH
Hoạt động của các giao thức định tuyến LEACH được chia thành các vịng, do đó, chương trình sẽ khảo sát hiệu năng sử dụng năng lượng của các nút thông qua các thông số như: thời gian nút đầu tiên hết năng lượng, thời gian 50% số nút hết năng lượng, thời gian toàn bộ số nút hết năng lượng.
3.3.1. LEACH cơ bản
3.3.2.1. Giả thiết và thiết lập thông số ban đầu
Một số giả thiết quan trọng:
Tất cả các nút trong mạng đều có khả năng liên lạc được với trạm gốc. Khi liên lạc với nút lân cận, bán kính vùng phủ của nút là 100m. Có thực hiện đồng bộ trong tồn mạng.
Thiết lập thơng số ban đầu: Số nút trong mạng: 100 nút.
Kích thướng mạng: (1000m x 1000m), trạm gốc BS đặt ở vị trí (500m, 500m). Năng lượng ban đầu của mỗi nút: 2J;
Năng lượng tiêu tốn khi xử lý một bit: =50nJ/bit. Hệ số khuếch đại: = 10pJ/bit/m2.
Độ dài mỗi bản tin Data: 500byte, bản tin mào đầu: 25 byte. 3.3.2.2. Kịch bản mô phỏng
Hoạt động của các nút được lặp lại theo vòng, mỗi vòng gồm hai pha và được chia thành bốn bước:
Bước 1: Khởi tạo mạng và chọn nút chủ (CH).
Tiến hành khởi tạo các thông số ban đầu, thiết lập topo mạng và định thời. Để quyết định xem có trở thành nút chủ trong vịng hiện tại hay khơng, mỗi nút tự sinh ra một sô ngẫu nhiên s trong khoảng từ 0 tới 1, đồng thời tính tốn giá trị ngưỡng Tn cho vịng hiện tại theo cơng thức (2.1)
Thực hiện so sánh giá trị ngẫu nhiên S với giá trị ngưỡng Tn, nếu S nhỏ hơn Tn thì nút đó sẽ là nút chủ trong vịng hiện tại.
Sau bước 1, nếu là nút chủ trong vịng hiện tại thì tiến hành phát quảng bá bản tin ADV về trạng thái nút chủ của mình cho các nút lân cận trong phạm vi 100m. Bản tin ADV này chứa Id của nút.
Nếu không phải là nút chủ, nút sẽ chờ bản tin ADV, nếu không nhận được bản tin ADV nào thì tắt bộ thu phát vơ tuyến, chờ đến vịng tiếp theo. Trong trường hợp nhận được ít nhất một bản tin ADV, trước tiên nút lấy Id để xác định của nguồn gửi bản tin đó, tính tốn cơng xuất thu tín hiệu và lưu lại. Nếu một nút nhận được nhiều bản tin ADV, nó tiến hành so sánh và chọn nút chủ là nút có cơng suất thu của bản tin ADV lớn nhất làm nút chủ, rồi gửi trả lại gói tin REQ.
Hình 3.8: Các bước mơ phỏng giao thức định tuyến LEACH. Bước 3: phân chia khe thời gian TDMA.
Nút chủ căn cứ vào số lượng gói tin REQ nhận được, phân bổ khe thời gian cho các nút trong cụm thơng qua gói tin TDMA.
Khi nhận được gói tin TDMA, nút thành viên sẽ xác định được Ts của mình, tiến hành định thời thu thập dữ liệu và gửi bản tin DATA về cho nút chủ. Mỗi khi gửi xong một bản tin DATA, nút sẽ tắt bộ thu phát vô tuyến trong suốt độ dài một khung, cho đến khe thời gian của nút trong khung tiếp theo mới hoạt động trở lại.
Nút chủ nhận được bản tin DATA, lưu lại trong bộ nhớ, tiến hành xử lý tín hiệu rồi gửi về BS.
3.3.2. LEACH-C
3.3.2.1. Giả thiết và thiết lập thơng số ban đầu
Ngồi những giả thiết giống như trong giao thức định tuyến LEACH cở bản, LEACH-C đòi hỏi các nút phải biết được vị trí chính xác thơng qua bộ định vị GPS.
Thiết lập thông số ban đầu: Số nút trong mạng: 100 nút.
Kích thướng mạng: (1000m x 1000m), trạm gốc BS đặt ở vị trí (500m, 500m). Năng lượng bạn đầu của mỗi nút: 2J;
Năng lượng tiêu tốn khi xử lý một bit: =50nJ/bit. Hệ số khuếch đại: = 10pJ/bit/m2.
Độ dài mỗi bản tin Data: 500byte, bản tin mào đầu: 25 byte. 3.3.2.3. Kịch bản mơ phỏng
Q trình mơ phỏng giao thức LEACH-C về cơ bản giống với LEACH, tuy nhiên pha thiết lập trong LEACH-C rất phức tạp.
Khi bắt đầu khởi tạo mạng, trạm gốc cần phải biết được thông tin đầy đủ về vị trí và năng lượng cịn lại của tất cả nút trong mạng. Để có được những thơng tin này, BS tiến hành gửi các bản tin ADV, trong đó có chứa Id của BS. Khi nút nhận được ADV, nó cho rằng BS là nút chủ trong vịng hiện tại, nên tiến gửi trả về gói tin REQ chứa thơng số về ID của nút, tọa độ và năng lượng còn lại tới BS.
BS nhận bản tin REQ, lưu thơng số của tồn bộ nút trong mạng vào cơ sở dữ liệu và sẽ là đầu vào của q trình tính tốn tìm nút chủ cho vịng hiện tại. Số lượng nút chủ cần thiết trong một vòng được xác định bằng 5% tổng số nút trong mạng. Để chọn ra được K nút chủ tối ưu, BS căn cứ vào vị trí và năng lượng cịn lại của nút và thực hiện theo các bước sau:
Bước 1: Tính tốn năng lượng dự trữ trung bình của tất cả nút trong mạng, chọn ra nút có năng lượng dự trữ cao hơn mức trung bình đó được coi là nút chủ tiềm năng (potential cluster-head). Nếu số lượng nút chủ tiềm năng lớn hơn K, tiến hành loại bỏ lần lượt 3 nút chủ tiềm năng.
Bước 2: Đầu tiên, loại bỏ nút chủ tiềm năng có tổng khoảng cách đến các nút chủ tiềm năng cịn lại nhỏ nhất.
Bước 3: Sau đó, tìm hai nút tiềm năng gần nhau nhất, tiến hành loại bỏ một trong hai nút đó khỏi danh sách nút chủ tiềm năng theo phương pháp sau: Nếu một trong hai nút gần biên mạng thì loại bỏ nút đó. Nếu khơng có nút nào gần biên mạng thì loại nút gần BS hơn.
Bước 4: Cuối cùng, tính tổng khoảng cách D của mỗi nút chủ tiềm năng tới các nút lân cận mà không phải là tiềm năng. Nếu nút tiềm năng nào có D bằng khơng thì loại bỏ, nếu khơng có nút tiềm năng nào có D bằng khơng thì loại nút có D lớn nhất ra khỏi danh sách nút tiềm năng. Bằng cách chọn nút chủ như trên, có thể tối thiểu hóa tổng khoảng cách truyền dẫn trong mạng.
Sau khi tiến hành loại bỏ ba nút tiềm năng, nếu số lượng nút chủ tiềm năng vẫn lớn hơn K thì lặp lại bước 2.
Khi đã chọn được một tập nút chủ cho vịng hiện tại, BS gửi tin quảng bá có chứa ID của nút chủ tới tất cả nút trong mạng. Các nút nhận được bản tin thông báo, kiểm tra xem ID của nút có trùng với ID trong bản tin khơng, nếu trùng thì nút sẽ trở thành nút chủ trong vịng hiện tại, q trình thành lập cụm và truyền dữ liệu giống như trong giao thức LEACH cơ bản.
Hình 3.9: Các bước mô phỏng giao thức định tuyến LEACH-C.
Định kỳ một khoảng thời gian T-round nhất định, BS lại gửi bản tin ADV tới tất cả nút trong mạng, khi nhận được bản tin này, nút dừng mọi hoạt động hiện thời để gửi trả lại thông tin về năng lượng dự trữ và vị trí của nút để bắt đầu một vịng mới.
3.3.3. LEACH-F
3.3.2.1. Giả thiết và thiết lập thơng số ban đầu
Các thông số ban đầu:
Số nút trong mạng: 100 nút.
Kích thướng mạng: (1000m x 1000m), trạm gốc BS đặt ở vị trí (500m, 500m). Năng lượng bạn đầu của mỗi nút: 2J;
Năng lượng tiêu tốn khi xử lý một bit: =50nJ/bit. Hệ số khuếch đại: = 10pJ/bit/m2.
Độ dài mỗi bản tin Data: 500byte, bản tin mào đầu: 25 byte. 3.3.2.4. Kịch bản mô phỏng
Pha lựa chọn nút chủ LEACH-F trong vòng đầu tiên giống với giao thức định tuyến LEACH-C. Có nghĩa là trạm gốc cũng phát quảng bá bản tin ADV tới tất cả các nút trong mạng để thu thập thơng tin về vị trí và năng lượng còn lại của các nút, rồi căn cứ vào đó để chọn ra được K nút chủ tối ưu (K bằng 5% tổng số nút). Từ K nút chủ này hình thành nên K cụm, các nút trong cụm thu thập thông tin cảm biến rồi gửi về trạm gốc thông qua nút chủ.
Tuy nhiên, khác với LEACH-C, trong LEACH-F, chỉ có vịng đầu tiên trạm gốc mới tiến hành chọn nút chủ. Từ các vòng tiếp theo, định kỳ một khoảng thời gian T- round nhất định, nút chủ gửi bản tin UPDATE cho tất cả các thành viên trong cụm, khi nhận được bản tin này, các thành viên gửi thơng tin về năng lượng cịn lại của mình cho nút chủ, thay vì cho BS. Lúc này, nút chủ có vai trị chọn ra nút chủ mới cho vòng tiếp theo.
Như vậy, trong LEACH-F, các nút trong cụm được hình thành một lần duy nhất theo quyết định của BS ở vòng đầu tiên, cịn trong các vịng tiếp theo, các nút khơng phải là thành viên của cụm khơng gia nhập cụm đó được. Chỉ trong trường hợp khi số nút hỏng trong toàn mạng vượt quá một số nhất định, BS tiến hành chọn lại cụm từ đầu.
Hình 3.10: Các cụm tự bầu nút chủ trong giao thức định tuyến LEACH-F