GIỚI THIỆU VỀ MẠNG CẢM BIẾN KHÔNG DÂY
Giới thiệu
Mạng cảm biến không dây (WSN) có là mạng liên kết các nút với nhau bằng kết nối sóng vô tuyến trong đó các nút mạng thường là các thiết bị đơn giản , nhỏ gọn, giá thành thấp và có số lượng lớn, được phân bố một cách không có hệ thống (non-topology) trên một diện tích rộng (phạm vi hoạt động rộng), sử dụng nguồn năng lượng hạn chế, có thời gian hoạt động lâu dài (vài tháng đến vài năm) và có thể hoạt động trong môi trường khắc nghiệt (chất độc, ô nhiễm, nhiệt độ )
Các nút mạng thường có chức năng cảm nhận, quan sát môi trường xung quanh như nhiệt độ, độ ẩm, ánh sáng theo dõi hay định vị các mục tiêu cố định hoặc di động Các nút giao tiếp với nhau và truyền dữ liệu về trung tâm (base station) một cách gián tiếp bằng kỹ thuật đa chặng (multi-hop)
Lưu lượng (traffic) dữ liệu lưu thông trong WSN là thấp và không liên tục
Do vậy để tiết kiệm năng lượng, các nút thường có nhiều trạng thái hoạt động (active mode) và trạng thái nghỉ (sleep mode) khác nhau Thông thường thời gian
1 nút ở trạng thái nghỉ lớn hơn ở trạng thái hoạt động rất nhiều
Như vậy, đặc trưng cơ bản nhất để phân biệt 1 mạng cảm biến và 1 mạng wireless khác chính là giá thành, mật độ nút mạng, phạm vi hoạt động, cấu hình mạng (topology), lưu lượng dữ liệu, năng lượng tiêu thụ và thời gian ở trạng thái hoạt động (active mode).
Cấu trúc mạng cảm biến không dây
Cấu trúc mạng cảm biến không dây cần phải thiết kế sao cho sử dụng có hiệu quả nguồn tài nguyên hạn chế của mạng, kéo dài thời gian sống của mạng Vì vậy thiết kế cấu trúc mạng và kiến trúc mạng phải cần phải quan tâm đến các yếu tố sau:
- Giao tiếp không dây đa chặng: Khi giao tiếp không dây là kĩ thuật chính, thì giao tiếp trực tiếp giữa hai nút sẽ có nhiều hạn chế do khoảng cách hay các vật cản Đặc biệt là khi nút phát và nút thu cách xa nhau thì cần công suất phát lớn.Vì vậy cần các nút trung gian làm nút chuyển tiếp để giảm công suất tổng thể Do vậy các mạng cảm biến không dây cần phải dùng giao tiếp đa chặng
- Sử dụng hiệu quả năng lượng: để hỗ trợ kéo dài thời gian sống của toàn mạng, sử dụng hiệu quả năng lượng là kĩ thuật quan trọng mạng cảm biến không dây
- Tự động cấu hình: Mạng cảm biến không dây cần phải cấu hình các thông số một các tự động Chẳng hạn như các nút có thể xác định vị trí địa lý của nó thông qua các nút khác (gọi là tự định vị)
- Cộng tác, xử lý trong mạng và tập trung dữ liệu: Trong một số ứng dụng một nút cảm biến không thu thập đủ dữ liệu mà cần phải có nhiều nút cùng cộng tác hoạt động thì mới thu thập đủ dữ liệu, khi đó mà từng nút thu dữ liệu gửi ngay đến trạm gốc thì sẽ rất tốn băng thông và năng lượng Cần phải kết hợp các dữ liệu của nhiều nút trong một vùng rồi mới gửi tới trạm gốc thì sẽ tiết kiệm băng thông và năng lượng Chẳng hạn như khi xác định nhiệt độ trung bình, hay cao nhất của một vùng
Do vậy, cấu trúc mạng được thiết kế sẽ phải thỏa mãn:
- Kết hợp vấn đề năng lượng và khả năng định tuyến
- Tích hợp dữ liệu và giao thức mạng
- Truyền năng lượng hiệu quả qua các phương tiện không dây
- Chia sẻ nhiệm vụ giữa các nút lân cận Các nút cảm biến được phân bố trong một vùng cảm biến như hình 1.1
Mỗi một nút cảm biến có khả năng thu thập dữ liệu và định tuyến lại đến các trạm gốc Dữ liệu được định tuyến lại đến các trạm gốc bởi một cấu trúc đa điểm như hình vẽ trên Các trạm gốc có thể giao tiếp với các nút quản lý nhiệm vụ (task
Hình 1.1 Cấu trúc mạng cảm biến không dây
Có thể phân chia cấu trúc của mạng cảm biến thành 2 loại: cấu trúc phẳng và cấu trúc phân cấp
Trong cấu trúc phẳng (flat architecture) (hình 1.2), tất cả các nút đều ngang hàng và đồng nhất trong hình dạng và chức năng Các nút giao tiếp với trạm gốc qua đa chặng sử dụng các nút ngang hàng làm bộ tiếp sóng Với phạm vi truyền cố định, các nút gần trạm gốc hơn sẽ đảm bảo vai trò của bộ tiếp sóng đối với một số lượng lớn nguồn Giả thiết rằng tất cả các nguồn đều dùng cùng một tần số để truyền dữ liệu, vì vậy có thể chia sẻ thời gian Tuy nhiên cách này chỉ có hiệu quả với điều kiện là có nguồn chia sẻ đơn lẻ, ví dụ như thời gian, tần số…
Trong cấu trúc phân cấp (tiered architecture) như hình 1.3, mạng phân thành các cụm, mỗi cụm có nút chủ cụm (cluster head) Các nút trong cụm thu thập dữ liệu, rồi gửi đơn chặng hay đa chặng tới nút chủ cụm (tùy theo kích thước của cụm)
Hình 1.3 Cấu trúc phân cấp
Trong cấu trúc này các nút tạo thành một hệ thống cấp bậc mà ở đó mỗi nút ở một mức xác định thực hiện các nhiệm vụ đã định sẵn Trong cấu trúc phân cấp thì chức năng cảm nhận, tính toán và phân phối dữ liệu không đồng đều giữa các nút Những chức năng này có thể phân theo cấp, cấp thấp nhất thực hiện tất cả nhiệm vụ cảm nhận, cấp giữa thực hiện tính toán, và cấp trên cùng thực hiện phân phối dữ liệu (hình 1.4)
Hình 1.4 Cấu trúc mạng phân cấp chức năng theo lớp này, các nút ở cấp thấp nhất đóng vai trò một bộ lọc thông dải đơn giản để tách nhiễu ra khỏi dữ liệu, trong khi đó các nút ở cấp cao hơn ngừng việc lọc dữ liệu này, và thực hiện các nhiệm vụ khác như tính toán, phân phối dữ liệu
Mạng cảm biến xây dựng theo cấu trúc phân cấp hoạt động hiệu quả hơn cấu trúc phẳng, do các lý do sau:
- Cấu trúc phân cấp có thể giảm chi phí chi mạng cảm biến bằng việc định vị các tài nguyên ở vị trí mà chúng hoạt động hiệu quả nhất Rõ ràng là nếu triển khai các phần cứng thống nhất, mỗi nút chỉ cần một lượng tài nguyên tối thiểu để thực hiện tất cả các nhiệm vụ Vì số lượng các nút cần thiết phụ thuộc vào vùng phủ sóng xác định, chi phí của toàn mạng vì thế sẽ không cao Thay vào đó, nếu một số lượng lớn các nút có chi phí thấp được chỉ định làm nhiệm vụ cảm nhận, một số lượng nhỏ hơn các nút có chi phí cao hơn được chỉ định để phân tích dữ liệu, định vị và đồng bộ thời gian, chi phí cho toàn mạng sẽ giảm đi
- Mạng cấu trúc phân cấp sẽ có tuổi thọ cao hơn mạng phẳng Khi cần phải tính toán nhiều thì một bộ xử lý nhanh sẽ hiệu quả hơn, phụ thuộc vào thời gian yêu cầu thực hiện tính toán Tuy nhiên, với các nhiệm vụ cảm nhận cần hoạt động trong khoảng thời gian dài, các nút tiêu thụ ít năng lượng phù hợp với yêu cầu xử lý tối thiểu sẽ hoạt động hiệu quả hơn Do vậy với cấu trúc phân cấp mà các chức năng mạng phân chia giữa các phần cứng đã được thiết kế riêng cho từng chức năng sẽ làm tăng tuổi thọ của mạng
1.3 Các đặc trƣng của mạng cảm biến không dây
Các ứng dụng trong mạng cảm biến không dây thường đòi hỏi các thành phần có công suất tiêu thụ thấp hơn rất nhiều so với các công nghệ không dây hiện tại (như Bluetooth) Ví dụ như các cảm biến dùng trong công nghiệp và y tế được cung cấp năng lượng từ những cục pin nhỏ, có thể sống được vài tháng đến vài năm Với các ứng dụng theo dõi môi trường, khi mà số lượng lớn cảm biến được rải trên diện tích rất rộng thì việc thường xuyên phải thay pin để cung cấp nguồn năng lượng là điều không khả thi Chính vì thế trong mạng cảm biến không dây, ngoài việc quản lý năng lượng để sử dụng một cách hiệu quả nhất cần kết hợp các thuật toán định tuyến tối ưu
Khi thiết kế một ứng dụng không dây thì giá thành cũng là một yếu tố chính cần được quan tâm Để có thể đạt được mục tiêu này thì khi thiết kế cấu hình mạng và giao thức truyền thông cần tránh sử dụng các thành phần đắt tiền và tối thiểu hóa độ phức tạp của giao thức truyền thông Trong mạng cảm biến, số lượng các nút mạng sử dụng là khá lớn và khi chi phí để sản xuất từng nút con được giảm đi thì giá thành của toàn bộ hệ thống giảm đi đáng kể Hiện nay trong các ứng dụng cơ bản các nút mạng có giá khoảng 5-10USD
Ngoài các yếu tố trên thì một phần khá lớn tác động tới giá thành đó là chi phí quản trị và bảo trì hệ thống Mạng cảm biến không dây đã làm tốt hai chức năng cơ bản đó là tự cấu hình và tự bảo trì Tự cấu hình có nghĩa là tự động dò tìm vị trí các nút lân cận và tổ chức thành một cấu trúc xác định Tự bảo trì có nghĩa là tự động phát hiện và sửa lỗi nếu phát sinh trong hệ thống (ở các nút mạng hoặc các liên kết giữa các nút) mà không cần sự tác động của con người Với các tính năng ưu việt này thì mạng cảm biến không dây ngày càng tỏ rõ những ưu việt của mình
Những khó khăn trong việc phát triển mạng không dây
Tuy rằng mạng cảm biến không dây có rất nhiều ưu điểm và ứng dụng hữu ích, nhưng khi triển khai trên thực tế sẽ gặp phải một số hạn chế và khó khăn về mặt kỹ thuật Khi nắm rõ được những khó khăn này chúng ta sẽ có điều kiện để cải tạo nhằm tối ưu hơn nữa
Thông thường, các thiết bị trong mạng cảm biến không dây thường sử dụng các nguồn năng lượng có sẵn (pin) Khi số lượng nút mạng là lớn, yêu cầu tính toán là nhiều, khoảng cách truyền lớn thì sự tiêu thụ năng lượng là rất lớn Chính vì vậy cần tìm các giải pháp để có thể tối ưu việc xử lý & truyền dữ liệu với một năng lượng ban đầu của các nút nhằm kéo dài thời gian sống cho mạng
1.4.2 Giới hạn về giải thông
Hiện nay tốc độ truyền thông vô tuyến bị giới hạn trong tốc độ khoảng 10-
100 Kbits/s Sự giới hạn về dải thông này ảnh hưởng trực tiếp đến việc truyền thông tin giữa các nút
1.4.3 Giới hạn về phần cứng
Yêu cầu của mạng cảm biến không dây là kích thước của các nút phải nhỏ vì có một số ứng dụng đòi hỏi phải triển khai một số lượng lớn các nút trên một phạm vi hẹp Điều này đã hạn chế về năng lực tính toán cũng như không gian lưu trữ trên mỗi nút
1.4.4 Ảnh hưởng của nhiễu bên ngoài
Do trong mạng cảm biến không dây sử dụng đường truyền vô tuyến nên bị ảnh hưởng bởi những can nhiễu bên ngoài, có thể bị mất mát hoặc sai lệch thông tin khi truyền từ nút về trạm gốc
Thách thức lớn nhất hiện nay trong mạng cảm biến là nguồn năng lượng bị giới hạn và không thể nạp lại Chính vì vậy, hiện nay có rất nhiều nghiên cứu nhằm tối ưu hóa việc tiêu thụ năng lượng trong mạng cảm biến.
Kết luận
Chương này giới thiệu tổng quan về mạng cảm biến không dây
Về mặt cấu trúc: mạng cảm biến không dây được phân ra làm 2 loại cấu trúc cơ bản là:
- Cấu trúc phẳng: Các nút mạng đồng nhất về hình dạng và chức năng Cấu trúc này thích hợp cho những mạng đơn giản
- Cấu trúc phân cấp: Cấu trúc này tạo thành một hệ thống cấp bậc mà ở đó mỗi nút thực hiện những nhiệm vụ đã định sẵn Với cấu trúc này có thể tối ưu hóa được năng lực tính toán và sử dụng năng lượng của các nút cũng như toàn mạng
Các đặc trưng cơ bản của mạng cảm biến không dây như: thiết bị nhỏ gọn, tiêu thụ năng lượng ít, khả năng triển khai linh họat hứa hẹn trong tương lai công nghệ này sẽ được triển khai rộng rãi
Tuy nhiên khi thiết kế một mạng cảm biến không dây ta cũng phải biết được những khó khăn gặp phải như: giới hạn năng lượng, giới hạn về phần cứng, khả năng tính toán để có những biện pháp phù hợp nhằm khắc phục những khó khăn này.
ĐỊNH TUYẾN TRONG MẠNG CẢM BIẾN KHÔNG DÂY
Các vấn đề về thiết kế giao thức định tuyến
Mục đích chính của mạng cảm biến là truyền thông dữ liệu trong mạng trong khi cố gắng kéo dài thời gian sống của mạng và ngăn chặn việc giảm các kết nối bằng cách đưa ra những kỹ thuật quản lý năng lượng linh hoạt Trong khi thiết kế các giao thức định tuyến, chúng ta thường gặp phải các vấn đề sau
2.1.1 Đặc tính thay đổi thời gian và trật tự sắp xếp của mạng
Các nút cảm biến hoạt động với sự giới hạn về khả năng tính toán, lưu trữ và truyền dẫn, dưới ràng buộc về năng lượng khắt khe Tùy thuộc vào ứng dụng, mật độ các nút cảm biến trong mạng có thể từ thưa thớt đến rất dày Hơn nữa trong nhiều ứng dụng số lượng các nút cảm biến có thể lên đến hàng trăm, thậm chí hàng ngàn nút được triển khai tùy ý bao phủ một vùng rộng lớn Trong mạng này, đặc tính của các cảm biến là có tính thích nghi động và cao, các yêu cầu tự tổ chức và bảo toàn năng lượng buộc các nút cảm biến phải điều chỉnh liên tục để thích
2.1.2 Ràng buộc về tài nguyên
Các nút cảm biến được thiết kế với độ phức tạp nhỏ nhất cho triển khai trong phạm vi lớn để giảm chi phí toàn mạng Năng lượng là mối quan tâm chính trong mạng cảm biến không dây, làm thế nào để đạt được thời gian sống kéo dài trong khi các nút hoạt động với sự giới hạn về năng lượng dự trữ Việc truyền gói đa chặng (multihop) chính là nguồn tiêu thụ năng lượng chính trong mạng Việc giảm năng lượng tiêu thụ có thể đạt được bằng cách điều khiển tự động chu kỳ năng lượng của mạng cảm biến Tuy nhiên vấn đề quản lý năng lượng đã trở thành một thách thức chiến lược trong nhiều ứng dụng quan trọng
2.1.3 Mô hình dữ liệu trong mạng cảm biến
Mô hình dữ liệu mô tả luồng thông tin giữa các nút cảm biến và các trạm gốc Mô hình này phụ thuộc nhiều vào bản chất của ứng dụng, các dữ liệu được yêu cầu và sử dụng Có một vài mô hình dữ liệu được đề xuất nhằm tập trung vào yêu cầu tương tác và nhu cầu tập hợp dữ liệu của các ứng dụng khác nhau
Một loại ứng dụng của mạng cảm biến là mô hình thu thập dữ liệu dựa trên việc lấy mẫu theo chu kỳ hay sự xảy ra của sự kiện trong môi trường quan sát Trong các ứng dụng khác dữ liệu có thể được lấy và lưu trữ hoặc có thể được xử lý, tập hợp tại một nút trước khi chuyển tiếp dữ liệu đến trạm gốc Một loại thứ 3 đó là mô hình dữ liệu tương tác hai chiều giữa các nút cảm biến và trạm gốc
Các truy vấn và dữ liệu được truyền giữa các trạm gốc và các vị trí quan sát hiện tượng là một khía cạnh quan trọng trong mạng cảm biến không dây Một phương pháp cơ bản để thực hiện việc này là mỗi nút cảm biến có thể truyền dữ liệu trực tiếp đến trạm gốc Tuy nhiên phương pháp dựa trên kỹ thuật đơn chặng có chi phí rất đắt và các nút mà xa trạm gốc thì sẽ nhanh chóng bị tiêu hao năng lượng và do đó làm giảm thời gian sống của mạng
Nhằm giảm thiểu lỗi của phương pháp này thì dữ liệu trao đổi giữa các nút cảm biến và trạm gốc có thể được thực hiện bằng việc sử dụng truyền gói đa chặng qua phạm vi truyền ngắn Phương pháp này tiết kiệm năng lượng đáng kể và cũng giảm đáng kể sự giao thoa truyền dẫn giữa các nút khi cạnh tranh nhau để truy cập kênh, đặc biệt là trong mạng cảm biến không dây mật độ cao Để đáp ứng các truy vấn từ các trạm gốc hoặc các sự kiện đặc biệt xảy ra tại môi trường thì dữ liệu thu thập được sẽ được truyền đến các trạm gốc thông qua nhiều đường dẫn đa chặng
Trong định tuyến đa chặng của mạng cảm biến không dây, các nút trung gian đóng vai trò chuyển tiếp dữ liệu giữa nguồn và đích Việc xác định xem tập hợp các nút nào tạo thành đường dẫn chuyển tiếp dữ liệu giữa nguồn và đích là một nhiệm vụ quan trọng trong thuật toán định tuyến Nói chung việc định tuyến trong mạng kích thước lớn vốn đã là một vấn đề khó khăn, các thuật toán phải nhằm vào nhiều yêu cầu thiết kế thách thức bao gồm sự chính xác, ổn định, tối ưu hóa và chú ý đến sự thay đổi của các thông số
Với đặc tính bên trong của mạng cảm biến bao gồm sự ràng buộc về dải thông và năng lượng đã tạo thêm thách thức cho các giao thức định tuyến là phải nhằm vào việc thỏa mãn yêu cầu về lưu lượng trong khi vẫn mở rộng được thời gian sống của mạng.
Các giao thức định tuyến trong WSN
Có nhiều cách phân loại các giao thức định tuyến trong WSN như: phân loại theo cấu trúc, phân loại theo hoạt động, phân loại theo cách thức mà nguồn tìm tới đích
Phân loại theo cấu trúc mạng:
Các phương pháp định tuyến được phân loại theo cấu trúc mạng thành: trung tâm dữ liệu (data-centric) hay định tuyến ngang hàng (flat routing), phân cấp (hierarchical) hoặc dựa trên vị trí (location-based):
- Định tuyến ngang hàng: Trong giao thức này các nút có vai trò ngang nhau Các giao thức này dùng kĩ thuật định tuyến tuyến tập trung dữ liệu (data- centric) dựa trên các query và phụ thuộc vào việc đặt tên các dữ liệu mong muốn, để loại bỏ dư thừa Nhờ đó cũng góp phần tiết kiệm năng lượng
- Định tuyến phân cấp tập trung các nút thành cụm làm cho các nút chủ của mỗi cụm có thể thực hiện tập trung và giảm dữ liệu để tiết kiệm năng lượng
- Định tuyến dựa trên vị trí sử dụng các thông tin về vị trí để chỉ truyền dữ liệu đến các vùng mong muốn thay cho truyền đến toàn mạng để tiết kiệm năng lượng
Phân loại theo hoạt động:
Xét theo hoạt động thì chúng được chia thành định tuyến dựa trên đa đường (multipath-based), định tuyến theo truy vấn (query- based), định tuyến dựa trên thương lượng (negotiation-based), định tuyến theo chất lượng dịch vụ (QoS- based), định tuyến kết hợp (coherent-based)
Phân loại theo cách thức nguồn tìm đường tới đích
Hình 2.1 Phân loại giao thức chọn đường trong WSN
Các giao thức chọn đường có thể được chia thành ba loại là chủ động, tương tác hoặc lai ghép tuỳ thuộc vào cách thức mà nguồn tìm đường tới đích
Trong các giao thức chủ động, tất cả các đường được tính toán trước khi có yêu cầu, trong khi đối với các giao thức tương tác thì các đường được tính toán theo yêu cầu Các giao thức lai ghép kết hợp cả hai quy tắc ở trên Khi các nút cảm biến cố định, nó thích hợp với các giao thức chọn đường theo bảng hơn là với các giao thức tương tác Một lượng công suất đáng kể được sử dụng để tìm đường và thiết lập các giao thức tương tác
2.2.1 Các giao thức xét theo cấu trúc mạng 2.2.1.1 Giao thức định tuyến ngang hàng
Giao thức định tuyến ngang hàng (Flat Routing) là loại đầu tiên kể đến khi xét các loại giao thức định tuyến Trong mạng ngang hàng mỗi nút cảm biến có một vai trò giống nhau và các nút cảm biến kết hợp với nhau để thực hiện nhiệm vụ của mạng Vì số lượng các nút cảm biến rất lớn, nên không dễ để tạo số nhận dạng toàn cầu (global ID) cho mỗi nút Vấn đề này dẫn đến kĩ thuật định tuyến tập trung dữ liệu, trong đó trạm gốc gửi các yêu cầu truy vấn đến các vùng nhất định và đợi dữ liệu từ các nút trong vùng đó thu thập được Vì dữ liệu được yêu cầu thông qua các truy vấn, việc đặt tên theo thuộc tính là cần thiết để xác định tính chất của dữ liệu Các giao thức: SPIN và directed diffusion là các giao thức dựa trên định tuyến tập trung dữ liệu và tiết kiệm năng lượng thông qua việc tích hợp dữ liệu và loại bỏ sự dư thừa dữ liệu
SPIN (Sensor Protocol for Information via Negotiation) dựa trên ý tưởng là đặt tên dữ liệu sử dụng ký hiệu mô tả ở mức độ cao hay còn gọi là thông tin về dữ liệu (meta-data) Trước khi truyền, thông tin về dữ liệu được trao đổi giữa các nút qua một cơ chế thông báo dữ liệu, đó chính là đặc điểm chính của SPIN Mỗi một nút nhận dữ liệu mới, thông báo tới các nút lân cận của nó và các nút lân cận quan tâm đến dữ liệu này, ví dụ như các nút mà không có dữ liệu, lấy được dữ liệu nhờ gửi bản tin yêu cầu Sự dàn xếp các thông tin về dữ liệu của SPIN giải quyết được các vấn đề của flooding như là thông tin dư thừa, chồng chéo các vùng cảm nhận, vì vậy đạt được hiệu quả về mặt năng lượng
Có 3 bản tin được xác định trong SPIN dùng để trao đổi dữ liệu giữa các nút, đó là bản tin ADV cho phép các nút thông báo một meta-data cụ thể, bản tin
REQ để yêu cầu các dữ liệu đặc biệt và bản tin DATA để mang thông tin thực
Hình 3.2 tổng kết lại các quá trình của SPIN
Nút A bắt đầu quảng bá dữ liệu tới nút B (a) Nút B trả lời bằng cách gửi yêu cầu tới nút A (b) Nút B nhận dữ liệu yêu cầu từ nút A (c) Nút B phát bản tin quảng bá đến các nút lân cận (d), sau đó các nút này gửi yêu cầu lại cho B (e-f)
Hình 2.2 Cơ chế của SPIN
Một ưu điểm của SPIN là các thay đổi về cấu hình được khoanh vùng vì thế các nút chỉ cần nhận biết các nút lân cận của chúng Tuy nhiên cơ chế thông báo dữ liệu của SPIN không thể đảm bảo được việc phân phối dữ liệu Ví dụ trong trường hợp nếu các nút cần dữ liệu ở xa so với nút nguồn trong khi các nút ở giữa nguồn và đích lại không cần dữ liệu thì dữ liệu sẽ không được phân phối đến tận đích Vì thế SPIN không được sử dụng cho các ứng dụng như là phát hiện xâm nhập mà yêu cầu độ tin cậy trong việc phân phối các gói dữ liệu qua các khoảng thời gian đều đặn
Giao thức truyền tin trực tiếp
Giao thức truyền tin trực tiếp (Directed Diffusion) sử dụng lược đồ tập trung dữ liệu và các nút đều biết về ứng dụng Tất cả các dữ liệu phát ra bởi nút cảm biến được đặt tên sử dụng các cặp giá trị thuộc tính và sử dụng quá trình xử lí trong mạng như tích hợp dữ liệu (aggregation) Giao thức này loại bỏ sự dư thừa dữ liệu nhờ quá trình xử lí nội mạng, và tối thiểu số lần truyền nên tiết kiệm được năng lượng, kéo dài thời gian sống của mạng Ngoài ra nó cũng giải quyết vấn đề mở rộng (scalability) của mạng Hình 3.3 mô tả các quá trình diễn ra trong mạng khi dùng giao thức Directed Diffusion
Ban đầu trạm gốc tạo ra một yêu cầu được xác định dùng các cặp giá trị thuộc tính như là tên vật thể, vị trí địa lý, khoảng thời gian… Các thông tin này được phát quảng bá thông qua các nút trung gian đến nguồn Mỗi một nút nhận được thông tin đó sẽ giữ lại để so sánh dữ liệu nhận được với giá trị trong thông tin đó Các thông tin này cũng bao gồm các trường gradient Gradient là đường trả lời đến nút lân cận từ nơi mà nhận được thông tin yêu cầu Nó được mô tả bởi tốc độ dữ liệu, khoảng thời gian và thời gian mãn hạn nhận được từ các thông tin yêu cầu Vì thế nhờ việc sử dụng các thông tin yêu cầu và gradient thiết lập được các đường truyền giữa trạm gốc và các nguồn Trạm gốc gửi lại các bản tin gốc qua những đường đã được chọn với khoảng thời gian giữa hai sự kiện ngắn hơn vì vậy tăng cường nút nguồn trên đường đó để gửi dữ liệu đều đặn hơn
Hình 2.3 Các pha trong Directed Diffusion
Kết Luận
Định tuyến trong mạng cảm biến không dây là một lĩnh vực nghiên cứu mới đang thu hút được nhiều sự quan tâm của các nhà nghiên cứu Tuy việc nghiên cứu gặp nhiều khó khăn, nhưng đã đạt được nhiều kết quả to lớn Chương này trình bày tổng quan các kĩ thuật định tuyến trong mạng cảm biến hiện nay
Các kĩ thuật định tuyến này đều nhằm mục đích phân phối dữ liệu một cách có hiệu quả về năng lượng để nâng cao thời gian sống của mạng, đồng thời nâng cao tính chịu lỗi, tính mở rộng của mạng WSN Đồng thời chương này cũng đã trình bày các cách phân loại các giao thức định tuyến trong mạng WSN Tổng quan, các kĩ thuật định tuyến được phân loại dựa trên cấu trúc mạng thành ba loại: định tuyến ngang hàng, định tuyến phân cấp, định tuyến dựa trên vị trí Sâu hơn nữa, các giao thức này lại được phân loại theo hoạt động của giao thức thành định tuyến dựa trên đa đường, định tuyến dựa trên truy vấn, định tuyến dựa trên hỏi đáp, định tuyến dựa trên chất lượng Đồng thời, trong chương này cũng trình bày các giao thức tiêu biểu cho từng loại với những ưu nhược điểm của chúng Mặc dù nhiều giải thuật định tuyến này đầy hứa hẹn trong vấn đề sử dụng hiệu quả năng lượng, nhưng vẫn có nhiều thử thách cần được giải quyết trong mạng cảm biến không dây Thứ nhất, trong mạng WSN có sự liên kết chặt chẽ giữa các thiết bị cảm biến và thế giới vật lý (các môi trường) Trong mỗi ứng dụng các nút cảm biến được đặt trong những môi trường mà không có sự điền khiển, tác động của con người, trong những môi trường khắc nghiệt Thứ hai, các nút cảm biến có phần cứng, nguồn năng lượng, khả năng tính toán bị giới hạn
Thứ ba, truyền thông vô tuyến trong mạng WSN tiêu tốn nhiều năng lượng
Các nghiên cứu sau này cần phải giải quyết tốt hơn nữa các vấn đề trên, đồng thời cũng cần xác định rõ các vấn đề như chất lượng dịch vụ của các ứng dụng cảm biến hình ảnh và những ứng dụng thời gian thực Định tuyến đảm bảo chất lượng dịch vụ và hiệu quả năng lượng trong mạng WSN sẽ đảm bảo chất lượng tín hiệu tốt, độ trễ nhỏ cũng như đường truyền dữ liệu hiệu quả năng lượng nhất
Xu hướng nghiên cứu định tuyến trong mạng WSN tập trung vào các hướng khác nhau, nhưng đều có chung một mục đích là sử dụng hiệu quả năng lượng để kéo dài thời gian sống của mạng.
KIẾN TRÚC GIAO THỨC LEACH
LEACH
LEACH là giao thức phân cấp theo cụm thích ứng năng lượng thấp Nó dựa trên thuật toán phân nhóm và có những đặc trưng sau:
- Các nút có thể phân bố ngẫn nhiên và tự hình thành cụm
- Việc truyền dữ liệu được điều khiển ở trong cụm Tức là nút chủ cụm sẽ điều khiển các nút trong cụm gửi dữ liệu đến nó
- Có quá trình xử lý dữ liệu như việc nút chủ cụm tổng hợp dữ liệu từ các nút gửi đến nó rồi gửi tới trạm gốc
Từ dữ liệu của các nút cụ thể gửi về có mối tương quan với nhau trong mạng WSN, người dùng cuối không cần yêu cầu tất cả dữ liệu, hay nói đúng hơn là người dùng cuối chỉ cần các thông tin ở mức cao của dữ liệu mô tả về các sự kiện xuất hiện trong môi trường mà nút cảm nhận được Bởi vì sự tương quan này rất mạnh mẽ trong số các tin hiệu dữ liệu gửi từ các nút được đặt gần nhau, do đó chúng ta chọn sử dụng kiến truc phân nhóm cho LEACH Điều này cho phép tất cả dữ liệu từ các nút trong phạm vi cụm sẽ được xử lý cụ bộ, giảm được sữ liệu truyền tới người dùng cuối Do đó ma tiết kiệm được năng lượng của nút
Trong LEACH, các nút tự tổ chức thành các cụm, trong đó một nút sẽ đóng vai trò là nút chủ cụm Tất cả các nút không phải là nút chủ sẽ phải truyền dữ liệu của nó tới nút chủ Chút chủ cụm phải nhận dữ liệu từ tất cả các nút thành viên trong cụm, thực hiện xử lý dữ liệu cục bộ rồi truyền tới trạm gốc Bỏi vậy, việc trở thành nút chủ sẽ tiêu hao nhiều năng lượng hơn các nút không được chọn là nút chủ Trong bối cảnh mà năng lượng của cá nút là giới hạn, nếu nút chủ được chọn cố định trong suốt thời gian sống của mạng, như trong giải thuật phân nhóm tĩnh (static clustering), thì các nút chủ sẽ hết năng lượng rất nhanh Một khi nút chủ hết năng lượng, nó sẽ không hoạt động nữa
Khi nút chủ chết, tất cả các nút trong cụm sẽ không có khả năng trao đổi thông tin nữa Vì thế, LEACH thực hiện ngẫu nhiên hóa, quay vòng vị trí các nút chủ có năng lượng cao trong số tất cả các nút để tránh sự tiêu hao năng lượng trên một nút cụ thể trong mạng Theo cách này, năng lượng tải liên quan đến việc trở thanh nút chủ sẽ được phân bố đều cho tất cả các nút
Việc truy cập đường truyên trong LEACH được chọn sao cho giảm được sự tiêu hao năng lượng cho các nút không phải là nút chủ cụm Khi các nút chủ biết được tất cả các nút trong cụm của nó, nó sẽ gửi bản tin định thời TDMA để thông báo cho mỗi nút chính xác khi nào thì truyền dữ liệu đến nó Điều này cho phép các nút có thể duy trì trong trạng thái nghỉ, chỉ khi đến thời điểm nó gửi dữ liệu thì mới hoạt động trở lại Hơn nữa, dùng bản tin TDMA cho việc truyền dữ liệu còn giúp tránh được hiện tượng xung đột trong cụm định khi mà các khungdữ liệu được gửi tới các nút chủ và gửi tới trạm gốc Tất cả các nút phải đồng bộ về mặt thời gian để bắt đầu pha thiết lập tại thời điểm giống nhau Pha ổn định thường dài hơn rất nhiều so với pha thiết lập
Hình 3.2 Time-line hoạt động của LEACH
Tự động cấu hình hình thành cụm (Self-configuring Cluster Formation):
LEACH thực hiện phân cụm bằng việc sử dụng giải thuật phân tán, các nút tự quyết định mà không cần bất cứ sự điều khiển nào Ưu điểm của phương pháp này là không yêu cầu việc giao tiếp với trạm gốc, do đó tránh được việc tiêu hao năng lượng nếu các nút ở xa trạm gốc Đồng thời việc hình thành các cụm phân tán có thể được thực hiện mà không cân biết chính xác vị trí của các nút trong mạng Thêm vào đó, nó không yêu cầu sự liên lạc toàn cục trong pha thiết lập cụm và không có giải thiết nào về trạng thái hiện tại của các nút khác trong quá trình hình thành cụm
Lựa chọn nút chủ cụm
Khi các cụm đươc tạo ra, mỗi nút n tự động quyết định nó có là nút chủ cho vòng tiếp theo hay không Quá trình chọn lựa diễn ra như sau: mỗi nút cảm biến chọn một số ngẫu nhiên giữa 0 và 1 Nếu con số này nhỏ hơn ngưỡng T(n) thì nút đó trở thành nút chủ T(n) được xác định theo phương trình sau:
(3.1) Ở đây P quyết định số lượng trung bình các nút chủ trong một vòng, ra là số vòng hiện tại Dùng thuật toán này thì mỗi nút sẽ là nút chủ đúng một lần trong 1/P vòng Chú ý rằng sau 1/P-1 vòng, T1(n)=1 với tất cả các nút chưa được làm nút chủ Khi một nút được chọn làm nút chủ, nó sẽ thông báo tới tất cả các nút khác
Các nút không phải là nút chủ dùng những bản tin này từ các nút chủ để chọn cụm mà chúng muốn tham gia dựa trên cường độ tín hiệu nhận được bản tin này Sau khi các nút chủ đã được hình thành, nó sẽ quyết định mô hình TDMA cho các nút tuỳ thuộc từng cụm, quảng bá mô hình và sau đó pha trạng thái tĩnh bắt đầu
Mỗi nút sẽ được chọn làm nút chủ cụm nếu xác suất của nó thỏa mãn phương trình (3.1) Nút chủ phải thông báo cho các nút khác trong mạng biết rằng nó được chọn làm nút chủ ở vòng hiện tại Để thực hiện điều này, mỗi nút chủ sẽ phát bản tin quảng bá (ADV) dùng thuật toán CSMA (carrier sense multiple access) Bản tin này là một bản tin nhỏ bao gồm ID của nút và header để phân biệt bản tin này là bản tin quảng bá Tuy nhiên, bản tin này phải được truyền quảng bá tới tất cả các nút trong mạng Có hai lý do cho điều này, thứ nhất là để đảm bảo tất cả các nút lắng nghe bản tin quảng bá để tránh xảy ra đụng độ khi CSMA được dùng Thứ hai là không có cơ chế để đảm bảo rằng các nút được chọn là nút chủ cụm sẽ được phân bố đuều trên toàn mạng Nếu công suất phát bản tin quảng bá bị giảm đi, một số nút ở biên có thể sẽ không nhận được thông báo và do đó có thể sẽ không là một thành phần trong vòng này Hơn nữa, bản tin quảng bá rất nhỏ, do đó việc tăng công suất phát bản tin này để nó đến được tất cả các nút trong mạng không phải là một trở ngại Bởi vậy công suất được thiết lập ở mức cao vừa đủ để tất cả các nút trong mạng có thể lắng nghe được bản tin ADV này
Những nút không phải là nút chủ sẽ quyết định nó sẽ nămg trong cụm nào bằng việc chọn xem nút chủ nào yêu cầu 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á của mỗi nút chủ
Sau khi mỗi nút quýêt định nó là thành viên của cụm nào, nó sẽ báo cho nút chủ của cụm đó biết Mỗi nút sẽ phát bản tin join-request (Join-REQ_ tới nút chủ và cũng dùng giao thức CSMA Bản tin này cũng là một bản tin nhỏ, nó bao gồm
ID của nút, ID nút chủ và header để phân biệt với các bản tin khác
Các nút chủ trong LEACH hoạt động như khối điều khiển trung tâm cục bộ để liên kết các dữ liệu 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 Điều này đảm bảo sẽ không có đụng độ xảy ra và cho phép phần phát sóng radio của các nút không phải nút chủ sẽ ở trạng thái nghỉ Nó chỉ thức dậy tại thời điểm mà nó truyền dữ liệu Như vậy sẽ tiết kiệm được năng lượng cho các nút Sau khi bản tin TDMA được truyền đến tất cả các nút trong cụm, pha thiết lập đã hoàn thành và bắt đầu pha ổn định (steady state phase)
Hình 3.3 Giải thuật hình thành cluster trong LEACH
Hình 3.3 mô tả sơ đồ giải thuật của quá trình hình thành cụm trong LEACH Sau mỗi vòng thì lại bắt đầu pha thiết lập mới để chọn ra cụm mới phù hợp với mô hình mạng
Hình 3.4 Sự hình thành cụm ở 2 vòng khác nhau (nút đen là nút chủ)
Hoạt động của pha ổn định được chia ra thành các khung (frame) Mỗi nút sẽ gửi dữ liệu của nó tới nút chủ cụm một lần trên một khung trong khe định vị của nó Mỗi nút sẽ có một khe thời gian cố định, cứ đến khe thời gian đó thì nút truyền dữ liệu tới nút chủ cụm Số khe thời gian cho 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 khi giải thuật phân tán để xác định nút chủ mong đợi rằng số cụm trong mỗi vòng là k, nhưng nó lại không có cơ chế đảm bảo rằng sẽ có k cụm trong mỗi vòng Thêm vào đó giao thức trong pha thiết lập không đảm bảo rằng các nút sẽ phân bố đều cho mỗi nút chủ Do đó, số nút trong mỗi cụm là khác nhau và tổng 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 Để 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ủ Hơn nữa là kênh phát sóng của nút sẽ ở trạng thái nghỉ cho đến khe thời gian được cấp phát cho nó Các nút chủ sẽ phải giữ lại các dữ liệu mà các nút trong cụm gửi đến nó Khi đã nhận được hết dữ liệu từ tất cả các nút, nó tiến hành xử lý dữ liệu cục bộ như nén, tổng hợp dữ liệu, Dữ liệu đã được tổng hợp sau đó được dữ liệu thường khá lơn, do đó mà năng lượng tiêu thụ do quá trình truyền này thường là cao Nhìn vào hình 3.5 ta sẽ hiểu rõ hơn về hoạt động của pha ổn định
Hình 3.5 Mô hình LEACH sau khi đã ổn định trạng thái
Hình 3.6 Hoạt động của pha ổn định trong LEACH
Hình 3.6 chỉ ra time-line trong một vòng của LEACH, từ khi các cụm được hình thành trong pha thiết lập, qua hoạt động của pha ổn định khi dữ liệu được truyền từ các nút tới nút chủ cụm rồi truyền đến trạm gốc
LEACH-C (LEACH-Centralized)
Phần trên đã trình bày rất chi tiết về giao thức LEACH Chúng ta cũng đã biết sơ qua về LEACH-C ở chương 2 Ở phần này sẽ trình bày chi tiết hơn về LEACH-C
Trong khi có những ưu điểm của giải thuật hình thành cụm phân tán của LEACH, tức là mỗi nút tự nó quyết định sẽ ở trong cụm nào Nhưng giải thuật này lại không đảm bảo được vị trí cũng như số lượng nút chủ trong toàn mạng Tuy nhiên, việc dùng một giải thuật điều khiển trung tâm để hình thành cụm có thể tạo ra các cụm tốt hơn với các nút chủ phân tán trên toàn mạng Giải thuật này gọi là
LEACH-C LEACH-C có pha ổn định giống với LEACH (các nút gửi dữ liệu tới nút chủ và nút chủ tổng hợp dữ liệu rồi gửi về trạm gốc), nó chỉ khác LEACH ở pha thiết lập
Trong pha thiết lập của LEACH-C, các nút sẽ gửi thông tin về trạng thái hiện tại của nó (bao gồm vị trí và năng lượng) về trạm gốc Trạm gốc sau đó sẽ dùng thuật toán tối ưu để xác định ra các cụm và nút chủ cho vòng đó
Hình 3.10 Pha thiết lập của LEACH-C
Việc dùng trạm gốc để xác định cụm nói chung là tốt hon so với việc hình thành cụm dùng giải thuật phân tán Tuy nhiên, LEACH-C yêu cầu các nút phải gửi thông tin về vị trí của nó về trạm gốc tại thời điểm bắt đầu của mỗi vòng, thông tin nay có thể bao gồm việc phải sử dụng hệ thống định vị toàn cầu (GPS- Global positioning system) để xác định vị trí hiện tại của mỗi nút Để xác định được các cụm có tính thích ứng tốt, trạm gốc cần chắc chắn rằng tải năng lượng được phân bố đều trên tất cả các nút trong mạng Để làm được điều này trạm gốc tính toán năng lượng trung bình của các nút Nút nào mà có năng lượng nhỏ hơn năng lượng trung bình này sẽ không được chọn làm nút chủ ở vòng đó, những nút còn lại có nănglượng lớn hơn giá trị trung bình đó có thể là nút chủ Trạm gốc sẽ chạy giải thuật nhiều lần để chọn ra k nút tốt nhất trở thành nút chủ cũng như chọn ra được k cụm tối ưu bản tin bao gồm ID của nút chủ cho mỗi nút Nếu nút nào có ID trung với ID trong bản tin nó sẽ trở thành nút chủ, các nút khác sẽ xác định khe thời gian của nó cho việc phát dữ liệu, và sẽ ở trạng thái nghỉ cho đến thời điểm nó phát dữ liệu về nút chủ
Pha ổn đinh của LEACH-C giống hệt LEACH.
Phân chia cụm cố định (Stat-Cluster)
Nguyên tắc hoạt động tương tự với LEACH-C Trạm gốc sẽ căng cứ vào toạn độ và năng lượng hiện tại của các nút để phân chia cấu hình mạng Tuy nhiên ở Stat-Cluster trạm gốc chỉ chia nhóm một lần và giữ nguyên cấu hình mạng đó để gửi dữ liệu Ƣu điểm: Các nút chủ cụm là cố định nên không tốn thời gian và năng lượng cho quá trình phân chia lại
Nhƣợc điểm: Thời gian sống ngắn vì quá trình chọn nút chủ cụm ban đầu là ngẫu nhiên và nếu các nút chủ cụm này ở quá xa trạm gốc thì mạng sẽ hết năng lượng rất nhanh
3.4 Năng lƣợng truyền tối thiểu (Minimum Transmit Energy)
Hình 3.11 Hoạt động của giao thức MTE
Trong phương pháp định tuyến này dữ liệu được truyền đi theo đường ngắn nhất, sử dụng cơ chế CSMA Ƣu điểm:
- Thời gian sống của mạng có lúc rất lâu vì các nút chỉ tốn năng lượng trao đổi dữ liệu với các nút gần nhau nhất
- Khi xảy ra đụng độ thì các nút sẽ đợi và truyền lại dữ liệu theo cơ chế CSMA
- Khi số nút lớn thì mạng sẽ thường xuyên xảy ra lặp và đụng độ
- Dữ liệu sẽ không thu được hoặc sẽ không như mong muốn khi mà nút ở quá xa so với trạm gốc
- Thời gian sống lâu nhưng dữ liệu thu được phụ thuộc vào vị trí đặt trạm gốc
- Trong thực tế trạm gốc sẽ đặt cách xa các vùng cảm biên nên nếu dùng MTE thì rất có thể mạng vẫn trao đổi thông tin nhưng ta sẽ không thu được dữ liệu gì về trạm gốc
LEACH-F là giao thức mà các cụm được đặt cố định, còn nút chủ sẽ thay đổi ở các vòng khác nhau trong số các nút thuộc cụm đó Các cụm phân bố thích hợp phụ thuộc vào nút nào là nút chủ cho một vòng bởi vì nó đảm bảo các nút trao đổi thông tin với nút chủ mà yêu cầu mức công suất phat nhỏ nhất Ngoài ra để giảm hao phí năng lượng, chúng ta cũng phai giảm thiểu sự ảnh hưởng nhiễu của các cụm lân cận ở mức nhỏ nhất Công suất của các bản tin nhiễu phải nhỏ hơn (hoặc ít nhất là bằng công suất của bản tin mà nhút chủ nhận)
Hình 3.12 Ảnh hưởng giữa các cụm gần nhau
Nếu các cụm có tính thích ứng và thay đổi phụ thuộc vào vị tri của nút chủ thì ảnh hưởng của các cụm lẫn nhau sẽ rất nhỏ Nhìn vào hình 3.12, nút A sẽ chọn là thành viên trong cụm có nút chủ là C bởi vì nó yêu cầu công suất phát khi trao đổi thông tin với nút C nhỏ hơn khi trao đổi với nút B (cũng là nút chủ của một cụm lân cận) Ngoài ra, nó cũng làm giảm sự tiêu hao năng lượng của các nút không phải nút chủ Tuy nhiên, khi các cụm cố định còn nút chủ thay đổi thì một nút có thể sẽ phải dùng môt công suất lớn hơn khi giao tiếp với nút chủ của nó, điều này sẽ gây ảnh hưởng nhiễu đến nút chủ của cụm khác ở gần nó
Hìnhh 3.13 Ảnh hưởng khi một nút dùng công suất phát khá lớn để giao tiếp với nút chủ của nó
Trong hình trên, nút A sẽ phải dùng một công suất phát lớn để giao tiếp với nút chủ B Trong khi nút A rất gần với nút chủ C của một cụm khác, do đó sự phát sóng của nút A sẽ ảnh hưởng đến việc nhận dữ liệu của nút C từ các nút thành viên của nó Do đó mà việc sử dụng các cụm cố định, còn nút chủ thay đổi trong phạm vi các nút của cụm sẽ làm tăng công suất phát của nút, làm tăng mức tiêu thụ năng lượng của các nút không phải là nút chủ Đồng thời cũng lam tăng mức ảnh hưởng tới cụm lân cận Ưu điểm của việc cố định các cụm là việc thiết lập cụm chỉ cần thiết lập mọt lần duy nhất Do đó sẽ không tốn phần mào đầu cho pha thiết lập tại thời điểm bắt đầu của mỗi vòng Trong LEACH-F, các cụm được tạo ra cũng dùng giải thuật hình thành cụm được phát triển cho LEACH-C Trạm gốc quyết định các cụm tối ưu rồi phát thông tin quảng bá tới tất cả các nút Bản tin này bao gồm thông tin ID của cụm cho mỗi nút, nút nào sẽ gửi bản tin định thời TDMA, và thứ tự thay đổi vị
Dùng LEACH-F, do các cụm là cố định nên sẽ không có pha thiết lập cụm khi bắt đầu một vòng mới Các nút biết được khi nào thì nó trở thành nút chủ, khi nào không là nút chủ Còn pha ổn định của LEACH-F thì giống với LEACH Các nút chủ sẽ gửi bản tin định thời TDMA đến các nút trong cụm của nó để thông báo khe thời gian truyền dữ liệu của mỗi nút
LEACH-F không thích hợp cho những hệ thống động Việc cố định cụm sẽ không cho phép thêm các nút mới vào hệ thống Ngoài ra có nhiều ứng dụng mà cần các nút có thể di chuyển được, LEACH-F không xử lý được các nút di động này Do đó LEACH-F có thể không phù hợp với hệ thống thực tế
Chương này đã đi sâu nghiên cứu giao thức LEACH về mặt lý thuyết, bên cạnh đó cũng giới thiệu một số giao thức khác: LEACH-C, LEACH-F, MTE, STAT-CLUSTER, đánh giá những ưu điểm và hạn chế của từng giao thức
Chương này là tiền đề về mặt lý thuyết cho phần mô phỏng thực hiện ở chương 4
CHƯƠNG 4: MÔ PHỎNG MỘT SỐ GIAO THỨC ĐỊNH TUYẾN VÀ ĐÁNH GIÁ KẾT QUẢ
Những chương trước đã nghiên cứu các thuật toán định tuyến về mặt lý thuyết Mỗi thuật toán có những ưu điểm và nhược điểm riêng tác động đến quá trình tiêu thụ năng lượng của các nút và lượng dữ liệu truyền về trạm gốc Tuy nhiên, trên thực tế trước khi triển khai một mạng bất kỳ người ta thường phải đánh giá tính hiệu quả của các thuật toán dựa trên những số liệu cụ thể Để thực hiện điều này người ta thường dùng các phần mềm mô phỏng để xây dựng các mô hình lý thuyết Qua đó chúng ta có thể thu được các kết quả trực quan giúp cho việc triển khai trong thực tế được tối ưu hơn và tiết kiệm rất nhiều chi phí Có khá nhiều phần mềm mô phỏng mạng, tuy nhiên trong luận văn này tác giả đã chọn phần mềm mô phỏng NS-2 (network simulation) bởi đây là một công cụ hỗ trợ rất tốt cho việc mô phỏng các giao thức trong mạng cảm biến không dây
Trong chương này, tác giả đã chọn 4 giao thức định tuyến tiêu biểu để tiến hành mô phỏng, đó là: LEACH, LEACH-C, MTE, STAT-CLUSTER Dựa vào kết quả mô phỏng sẽ đánh giá tính hiệu quả của các giao thức thông qua các tiêu chí: năng lượng tiêu thụ của mỗi nút, thời gian sống của các nút trong mạng, độ trễ khi truyền dữ liệu, tỉ lệ dữ liệu truyền thành công từ các nút về trạm gốc
NS-2 là phần mềm mô phỏng mạng điều khiển sự kiện riêng rẽ hướng đối tượng, được phát triển tại UC Berkely, viết bằng ngôn ngữ C++ và OTcl Bốn lợi ích lớn nhất của NS-2 phải kể đến đầu tiên là:
- Khả năng kiểm tra tính ổn định của các giao thức mạng đang tồn tại
- Khả năng đánh giá các giao thức mạng mới trước khi đưa vào sử dụng
- Khả năng thực thi những mô hình mạng lớn mà gần như ta không thể thực thi được trong thực tế
NS thực thi các giao thức mạng như Giao thức điều khiển truyền tải (TCP) và Giao thức gói người dùng (UDP); các dịch vụ nguồn lưu lượng như Giao thức truyền tập tin (FTP), Telnet, Web, Tốc độ bit cố định (CBR) và Tốc độ bit thay đổi (VBR) ; các kỹ thuật quản lý hàng đợi như Vào trước Ra trước (Drop Tail), Dò sớm ngẫu nhiễn (RED) và CBQ; các thuật toán định tuyến như Dijkstra… NS cũng thực thi multicasting và vài giao thức lớp Điều khiển truy cập đường truyền (MAC) đối với mô phỏng LAN
Hình 4.1: Tổng quan về NS dưới góc độ người dùng
OTcl Script Kịch bản OTcl
Simulation Program Chương trình mô phòng
OTcl Bộ biên dịch Tcl mở rộng hướng đối tượng
NS Simulation Library Thư viện mô phỏng NS
Event Scheduler Objects Các đối tượng bộ lập lịch sự kiện
Network Component Objects Các đối tượng thành phần mạng
Network Setup Helping Modules Các mô đun trợ giúp thiết lập mạng
Plumbling Modules Các mô đun Plumbling
Simulation Results Các kết quả mô phỏng
NAM Network Animator Minh họa mạng NAM
Trong hình trên, NS là Bộ biên dịch Tcl mở rộng hướng đối tượng; bao gồm các đối tượng Bộ lập lịch Sự kiện, các đối tượng Thành phần Mạng và các module Trợ giúp Thiết lập Mạng (hay các mô đun Plumbing) Để sử dụng NS-2, người dùng lập trình bằng ngôn ngữ kịch bản OTcl Người dùng có thể thêm các mã nguồn Otcl vào NS-2 bằng cách viết các lớp đối tượng mới trong OTcl Những lớp này khi đó sẽ được biên dịch cùng với mã nguồn gốc
Kịch bản OTcl có thể thực hiện những việc sau:
Khởi tạo bộ lập lịch sự kiện
Thiết lập mô hình mạng dùng các đối tượng thành phần mạng
Báo cho nguồn traffic khi nào bắt đầu truyền và ngưng truyền packet trong bộ lập lịch sự kiện
Thuật ngữ plumbing được dùng để chỉ việc thiết lập mạng, vì thiết lập một mạng nghĩa là xây dựng các đường dữ liệu giữa các đối tượng mạng bằng cách thiết lập con trỏ “neighbour” cho một đối tượng để chỉ đến địa chỉ của đối tượng tương ứng mô đun plumbing OTcl trong thực tế thực hiện việc trên rất đơn giản
Plumbing làm nên sức mạnh của NS
LEACH-F
LEACH-F là giao thức mà các cụm được đặt cố định, còn nút chủ sẽ thay đổi ở các vòng khác nhau trong số các nút thuộc cụm đó Các cụm phân bố thích hợp phụ thuộc vào nút nào là nút chủ cho một vòng bởi vì nó đảm bảo các nút trao đổi thông tin với nút chủ mà yêu cầu mức công suất phat nhỏ nhất Ngoài ra để giảm hao phí năng lượng, chúng ta cũng phai giảm thiểu sự ảnh hưởng nhiễu của các cụm lân cận ở mức nhỏ nhất Công suất của các bản tin nhiễu phải nhỏ hơn (hoặc ít nhất là bằng công suất của bản tin mà nhút chủ nhận)
Hình 3.12 Ảnh hưởng giữa các cụm gần nhau
Nếu các cụm có tính thích ứng và thay đổi phụ thuộc vào vị tri của nút chủ thì ảnh hưởng của các cụm lẫn nhau sẽ rất nhỏ Nhìn vào hình 3.12, nút A sẽ chọn là thành viên trong cụm có nút chủ là C bởi vì nó yêu cầu công suất phát khi trao đổi thông tin với nút C nhỏ hơn khi trao đổi với nút B (cũng là nút chủ của một cụm lân cận) Ngoài ra, nó cũng làm giảm sự tiêu hao năng lượng của các nút không phải nút chủ Tuy nhiên, khi các cụm cố định còn nút chủ thay đổi thì một nút có thể sẽ phải dùng môt công suất lớn hơn khi giao tiếp với nút chủ của nó, điều này sẽ gây ảnh hưởng nhiễu đến nút chủ của cụm khác ở gần nó
Hìnhh 3.13 Ảnh hưởng khi một nút dùng công suất phát khá lớn để giao tiếp với nút chủ của nó
Trong hình trên, nút A sẽ phải dùng một công suất phát lớn để giao tiếp với nút chủ B Trong khi nút A rất gần với nút chủ C của một cụm khác, do đó sự phát sóng của nút A sẽ ảnh hưởng đến việc nhận dữ liệu của nút C từ các nút thành viên của nó Do đó mà việc sử dụng các cụm cố định, còn nút chủ thay đổi trong phạm vi các nút của cụm sẽ làm tăng công suất phát của nút, làm tăng mức tiêu thụ năng lượng của các nút không phải là nút chủ Đồng thời cũng lam tăng mức ảnh hưởng tới cụm lân cận Ưu điểm của việc cố định các cụm là việc thiết lập cụm chỉ cần thiết lập mọt lần duy nhất Do đó sẽ không tốn phần mào đầu cho pha thiết lập tại thời điểm bắt đầu của mỗi vòng Trong LEACH-F, các cụm được tạo ra cũng dùng giải thuật hình thành cụm được phát triển cho LEACH-C Trạm gốc quyết định các cụm tối ưu rồi phát thông tin quảng bá tới tất cả các nút Bản tin này bao gồm thông tin ID của cụm cho mỗi nút, nút nào sẽ gửi bản tin định thời TDMA, và thứ tự thay đổi vị
Dùng LEACH-F, do các cụm là cố định nên sẽ không có pha thiết lập cụm khi bắt đầu một vòng mới Các nút biết được khi nào thì nó trở thành nút chủ, khi nào không là nút chủ Còn pha ổn định của LEACH-F thì giống với LEACH Các nút chủ sẽ gửi bản tin định thời TDMA đến các nút trong cụm của nó để thông báo khe thời gian truyền dữ liệu của mỗi nút
LEACH-F không thích hợp cho những hệ thống động Việc cố định cụm sẽ không cho phép thêm các nút mới vào hệ thống Ngoài ra có nhiều ứng dụng mà cần các nút có thể di chuyển được, LEACH-F không xử lý được các nút di động này Do đó LEACH-F có thể không phù hợp với hệ thống thực tế.
Kết luận
Chương này đã đi sâu nghiên cứu giao thức LEACH về mặt lý thuyết, bên cạnh đó cũng giới thiệu một số giao thức khác: LEACH-C, LEACH-F, MTE, STAT-CLUSTER, đánh giá những ưu điểm và hạn chế của từng giao thức
Chương này là tiền đề về mặt lý thuyết cho phần mô phỏng thực hiện ở chương 4
CHƯƠNG 4: MÔ PHỎNG MỘT SỐ GIAO THỨC ĐỊNH TUYẾN VÀ ĐÁNH GIÁ KẾT QUẢ
Những chương trước đã nghiên cứu các thuật toán định tuyến về mặt lý thuyết Mỗi thuật toán có những ưu điểm và nhược điểm riêng tác động đến quá trình tiêu thụ năng lượng của các nút và lượng dữ liệu truyền về trạm gốc Tuy nhiên, trên thực tế trước khi triển khai một mạng bất kỳ người ta thường phải đánh giá tính hiệu quả của các thuật toán dựa trên những số liệu cụ thể Để thực hiện điều này người ta thường dùng các phần mềm mô phỏng để xây dựng các mô hình lý thuyết Qua đó chúng ta có thể thu được các kết quả trực quan giúp cho việc triển khai trong thực tế được tối ưu hơn và tiết kiệm rất nhiều chi phí Có khá nhiều phần mềm mô phỏng mạng, tuy nhiên trong luận văn này tác giả đã chọn phần mềm mô phỏng NS-2 (network simulation) bởi đây là một công cụ hỗ trợ rất tốt cho việc mô phỏng các giao thức trong mạng cảm biến không dây
Trong chương này, tác giả đã chọn 4 giao thức định tuyến tiêu biểu để tiến hành mô phỏng, đó là: LEACH, LEACH-C, MTE, STAT-CLUSTER Dựa vào kết quả mô phỏng sẽ đánh giá tính hiệu quả của các giao thức thông qua các tiêu chí: năng lượng tiêu thụ của mỗi nút, thời gian sống của các nút trong mạng, độ trễ khi truyền dữ liệu, tỉ lệ dữ liệu truyền thành công từ các nút về trạm gốc.
Giới thiệu về NS-2
NS-2 là phần mềm mô phỏng mạng điều khiển sự kiện riêng rẽ hướng đối tượng, được phát triển tại UC Berkely, viết bằng ngôn ngữ C++ và OTcl Bốn lợi ích lớn nhất của NS-2 phải kể đến đầu tiên là:
- Khả năng kiểm tra tính ổn định của các giao thức mạng đang tồn tại
- Khả năng đánh giá các giao thức mạng mới trước khi đưa vào sử dụng
- Khả năng thực thi những mô hình mạng lớn mà gần như ta không thể thực thi được trong thực tế
NS thực thi các giao thức mạng như Giao thức điều khiển truyền tải (TCP) và Giao thức gói người dùng (UDP); các dịch vụ nguồn lưu lượng như Giao thức truyền tập tin (FTP), Telnet, Web, Tốc độ bit cố định (CBR) và Tốc độ bit thay đổi (VBR) ; các kỹ thuật quản lý hàng đợi như Vào trước Ra trước (Drop Tail), Dò sớm ngẫu nhiễn (RED) và CBQ; các thuật toán định tuyến như Dijkstra… NS cũng thực thi multicasting và vài giao thức lớp Điều khiển truy cập đường truyền (MAC) đối với mô phỏng LAN
Hình 4.1: Tổng quan về NS dưới góc độ người dùng
OTcl Script Kịch bản OTcl
Simulation Program Chương trình mô phòng
OTcl Bộ biên dịch Tcl mở rộng hướng đối tượng
NS Simulation Library Thư viện mô phỏng NS
Event Scheduler Objects Các đối tượng bộ lập lịch sự kiện
Network Component Objects Các đối tượng thành phần mạng
Network Setup Helping Modules Các mô đun trợ giúp thiết lập mạng
Plumbling Modules Các mô đun Plumbling
Simulation Results Các kết quả mô phỏng
NAM Network Animator Minh họa mạng NAM
Trong hình trên, NS là Bộ biên dịch Tcl mở rộng hướng đối tượng; bao gồm các đối tượng Bộ lập lịch Sự kiện, các đối tượng Thành phần Mạng và các module Trợ giúp Thiết lập Mạng (hay các mô đun Plumbing) Để sử dụng NS-2, người dùng lập trình bằng ngôn ngữ kịch bản OTcl Người dùng có thể thêm các mã nguồn Otcl vào NS-2 bằng cách viết các lớp đối tượng mới trong OTcl Những lớp này khi đó sẽ được biên dịch cùng với mã nguồn gốc
Kịch bản OTcl có thể thực hiện những việc sau:
Khởi tạo bộ lập lịch sự kiện
Thiết lập mô hình mạng dùng các đối tượng thành phần mạng
Báo cho nguồn traffic khi nào bắt đầu truyền và ngưng truyền packet trong bộ lập lịch sự kiện
Thuật ngữ plumbing được dùng để chỉ việc thiết lập mạng, vì thiết lập một mạng nghĩa là xây dựng các đường dữ liệu giữa các đối tượng mạng bằng cách thiết lập con trỏ “neighbour” cho một đối tượng để chỉ đến địa chỉ của đối tượng tương ứng mô đun plumbing OTcl trong thực tế thực hiện việc trên rất đơn giản
Plumbing làm nên sức mạnh của NS
Thành phần lớn khác của NS bên cạnh các đối tượng thành phần mạng là bộ lập lịch sự kiện Bộ lập lịch sự kiện trong NS-2 thực hiện những việc sau:
Tổ chức bộ định thời mô phỏng
Huỷ các sự kiện trong hàng đợi sự kiện
Triệu gọi các thành phần mạng trong mô phỏng
Phụ thuộc vào mục đích của user đối với kịch bản mô phỏng OTcl mà kết quả mô phỏng có thể được lưu trữ như file trace Định dạng file trace sẽ được tải vào trong các ứng dụng khác để thực hiện phân tích:
File nam trace (file.nam) được dùng cho công cụ minh họa mạng NAM
Hình 4.2: Luồng các sự kiện cho file Tcl chạy trong NS
NAM Visual Simulation Mô phỏng ảo NAM
Tracing and Monitoring Simulation Mô phỏng lần vết và giám sát
C++ và OTcl
Hình sau biểu diễn kiến trúc chung của NS User có thể tưởng tượng mình đang đứng ở góc trái dưới, thiết kế và chạy các mô phỏng trong Tcl Tcl dùng các đối tượng mô phỏng trong OTcl Các đối tượng Bộ lập lịch Sự kiện và hầu hết các đối tượng thành phần mạng thực thi bằng C++ và sẵn có cho OTcl qua một liên kết OTcl Liên kết OTcl này được thực thi dùng TclCL Tất cả đã làm nên NS, bộ biên dịch Tcl mở rộng hướng đối tượng và các thư viện mô phỏng mạng
Eve nt Sc he dule r
Eve nt Sc he dule r
Hình 4.3: Kiến trúc của NS-2
NS sử dụng hai ngôn ngữ lập trình: ngôn ngữ kịch bản (Tcl – Tool Command Language, đọc là tickle) và ngôn ngữ lập trình hệ thống (C/C++)
NS là tầng biên dịch Tcl để chạy các kịch bản Tcl
Bằng cách sử dụng C++/OTcl, bộ mô phỏng mạng phải hoàn toàn là hướng đối tượng
Hình sau chỉ ra các đối tượng C++ có liên kết OTcl Khi đó, nếu chúng tạo nên một phân cấp thì các đối tượng OTcl cũng có một phân cấp tương ứng như vậy
Hình 4.4: C++ và OTcl: Sự đối ngẫu
TclCL là ngôn ngữ được sử dụng để cung cấp liên kết giữa C++ và OTcl
Các kịch bản Tcl/OTcl được viết để thiết lập và cấu hình topology của mạng
TclCL cung cấp liên kết giữa phân cấp lớp, khởi tạo đối tượng, nối kết biến và gửi lệnh
Hình 4.5: TclCL hoạt động nhƣ liên kết giữa A và B
Một mặt là vì các mô phỏng cho các giao thức yêu cầu một ngôn ngữ lập trình hệ thống có thể tính toán một cách hiệu quả các byte, các tiêu đề packet và các thuật toán thực thi đang chạy trên một tập dữ liệu lớn Với tác vụ này, run-time speed (tốc độ thời gian chạy thực) là quan trọng trong khi turn-around time (thời gian thay đổi) thì ít quan trọng hơn Turn-around time bao gồm thời gian chạy mô phỏng, thời gian tìm lỗi, thời gian sửa lỗi, thời gian biên dịch lại và thời gian chạy lại
Mặt khác, khi nghiên cứu mạng thì rất cần quan tâm đến các tham số và các cấu hình có thay đổi nhưng không đáng kể, hay quan tâm đến các scenario (tình huống) cần khám phá thật nhanh chóng Trong tác vụ này thì iteration time (thời gian lặp lại, tức là thời gian hay đổi mô hình và chạy lại) là quan trọng hơn Vì cấu hình chỉ chạy một lần lúc bắt đầu mô phỏng nên run-time trong tác vụ này rõ ràng kém quan trọng hơn
Theo giải thích trên, từng ngôn ngữ sẽ được dùng cho những việc gì?
Mô phỏng giao thức chi tiết yêu cầu ngôn ngữ lập trình hệ thống o Thao tác trên byte, xử lý gói, thực thi thuật toán o Tốc độ thời gian thực là quan trọng nhất
Thực hiện bất kỳ việc gì mà cần phải xử lý từng packet của một luồng
Thay đổi hành vi của lớp C++ đang tồn tại theo những hướng đã không được lường trước
Mô phỏng những thông số hay cấu hình thay đổi o Tham dò nhanh một số tình huống o Thời gian tương tác (thay đổi mô hình hay chạy lại) là quan trọng
Cấu hình, thiết lập hay những gì chỉ làm một lần
Thực hiện những cái ta muốn bằng cách thao tác trên các đối tượng C++ đang tồn tại
Ví dụ như các link là những đối tượng OTcl liên kết các mô đun delay (trì hoãn), queueing (hàng đợi) và possibly loss (khả năng mất mát) Còn nếu muốn thực hiện những việc chuyên nghiệp hơn thì cần phải tạo ra đối tượng C++ mới
Hầu hết định tuyến được viết bằng OTcl (dù thuật toán Dijkstra lõi viết bằng C++) Mô phỏng HTTP có từng luồng bắt đầu tại OTcl nhưng việc xử lý từng gói lại được viết bằng C++ Phương pháp này chạy tốt cho đến khi có đến 100 luồng bắt đầu thời gian mô phỏng mỗi giây Nói chung, nếu phải triệu gọi Tcl nhiều lần mỗi giây thì có lẽ nên chuyển sang C++
Về phương diện mã nguồn, NS-2 được viết với 100k dòng mã lệnh C++, 70k dòng mã Tcl và 20k dòng tài liệu.
Các đặc tính của NS-2
NS-2 thực thi những tính năng sau:
Các kỹ thuật quản lý hàng đợi Router như DropTail, RED, CBQ,
Mô phỏng mạng không dây o Được phát triển bởi Sun Microsystems + UC Berkeley (Dự án Daedalus) o Thuộc mặt đất (di động, ad-hoc, GPRS, WLAN, BLUETOOTH), vệ tinh o Chuẩn IEEE 802.11 có thể được mô phỏng, các giao thức Mobile-IP và ad-hoc như DSR, TORA, DSDV và AODV
Các agent truyền tải – UDP, TCP
Các ứng dụng – Telnet, FTP, Ping
Các packet tracing trên tất cả các link và trên các link xác định
Mô phỏng mạng cảm biến không dây trên NS-2
4.4.1 Bài toán mô phỏng Để xây dựng mô hình một mạng cảm biến không dây chúng ta cần quan tâm đến các tham số chính: topo của mạng, số lượng các nút mạng, năng lượng ban đầu của các nút, kích thước mỗi gói tin, các thông số vật lý của kênh vô tuyến
Kết quả của phần mềm mô phỏng thu được sẽ là:
- Tổng năng lượng tiêu thụ bởi mỗi nút
- Tổng số dữ liệu truyền từ mỗi nút đến trạm gốc
- Số nút còn sống sau một thời gian xác định
Hình 4.6 Mô hình cấu trúc phần mềm xây dựng trên NS-2
Các thành phần chính trong mô hình:
- Wireless.tcl: lưu trữ các thông số chính của môi trường truyền sóng vô tuyến như tốc độ kênh truyền, năng lượng tổn hao trên kênh truyền
- uAMPS.tcl: lưu trữ các thông số vật lý, các thông số giả thiết đầu vào của bài toán mô phỏng như: số lượng, vị trí các nút trong toàn mạng, mức ngưỡng năng lượng để truyền, nhận tín hiệu thành công, kích thước, năng lượng ban đầu của gói tin, các thông số của anten
- ns-leach.tcl: thưc hiện các chứ năng của giao thức LEACH như chọn nút chủ cụm, phân chia cluster, truyền, nhận các bản tin của các nút
- stát.tcl: lưu trữ các thông số của quá trình mô phỏng, các thông số này có thể dùng các chương trình đồ họa để hiển thị trực quan thông qua các đồ thị
- Các file Resource Adaptive Node: lưu trữ các thông số của nút như: năng
Tiến hành mô phỏng 4 giao thức định tuyến: LEACH, LEACH-C, MTE, STAT-CLUSTER với các thông số đầu vào:
- Tổng số nút: 101 (bao gồm 1 trạm gốc)
- Phạm vi đặt các nút: 100m x 100m (các nút được đặt ngẫu nhiên)
- Năng lượng ban đầu của mỗi nút: 2J
- Trạm gốc đặt tại vị trí có tọa độ: (50,100)
Hình 4.7 Số nút mạng còn sống theo thời gian Đánh giá:
- Với giao thức Stat-Cluster (đường màu vàng) thì các nút mạng chết rất nhanh sau một thời gian ngắn vì thuật toán của Stat-Cluster là chỉ phân chia cụm một lần nên nếu các nút chủ cụm ở xa trạm gốc thì năng lượng để truyền dữ liệu về trạm gốc là rất lớn
- Với giao thức MTE (đường màu xanh đậm) thì thời gian sống của mạng lâu hơn vì các nút chỉ tốn năng lượng trao đổi dữ liệu với các nút ở gần nhất
Hình 4.8 Năng lƣợng tiêu thụ của toàn mạng theo thời gian Đánh giá:
Trong khoảng 100s đầu tiên, mức tiêu thụ năng lượng của cả 4 giao thức xấp xỉ nhau Tuy nhiên, càng về sau thì mức tiêu thụ năng lượng của MTE càng giảm chậm hơn LEACH tiêu tốn nhiều năng lượng hơn LEACH-C Stat-Cluster tiêu tốn năng lượng nhiều nhất
Hình 4.9 Tỉ lệ nút/số bytes nhận đƣợc ở trạm gốc Đánh giá:
- Với MTE dữ liệu từ các nút gửi thành công về trạm gốc rất nhỏ do cơ chế truyền của MTE là CSMA nên khi có đụng độ trên mạng thì các nút sẽ đợi và truyền lại dữ liệu
- LEACH-C tỏ rõ ưu thế vượt trội nếu tính trên lượng dữ liệu được các nút gửi thành công về trạm gốc
Hình 4.10 Tỉ lệ dữ liệu / năng lƣợng Đánh giá:
- MTE: Mặc dù thời gian sống của mạng lâu nhưng lượng dữ liệu nhận được ở trạm gốc là rất nhỏ Có thể nói trong giao thức định tuyến này mức hao phí năng lượng tính trên lượng dữ liệu nhận được là rất lớn và kém hiệu quả
- LEACH-C: có lượng dữ liệu gửi về trạm gốc tính trên một đơn vị năng lượng hiệu quả nhất trong 4 giao thức
Hình 4.11 Biểu đồ trễ tín hiệu tại trạm gốc Đánh giá:
Có khá nhiều biến động trong quá trình dữ liệu được gửi từ các nút về trạm gốc ở giao thức LEACH Để có thể đánh giá một cách toàn diện ảnh hưởng của các tham số tới hoạt động của mạng, tác giả đã thay đổi 1 thông số giả thiết ban đầu, các thông số khác giữ nguyên
- Kết quả thu đƣợc khi thay đổi vùng đặt các nút mạng từ diện tích 100x100
Hình 4.12 Số nút mạng còn sống theo thời gian
Hình 4.13 Năng lƣợng tiêu thụ của toàn mạng theo thời gian
Hình 4.14 Tỉ lệ nút/số bytes nhận đƣợc ở trạm gốc
Hình 4.15 Tỉ lệdữ liệu / năng lƣợng
Hình 4.16 Biểu đồ trễ tín hiệu tại trạm gốc Nhận xét:
Khi tăng diện tích của vùng các nút mạng, đồng nghĩa với việc các nút mạng nằm cách xa nhau hơn và khoảng cách tới trạm gốc cũng tăng theo Điều đó dẫn tới năng lượng để truyền dữ liệu giữa các nút cũng tăng Qua các đồ thị cho thấy thời gian sống của mạng bị giảm đi đáng kể:
Xét với giao thức LEACH thì ở giả thiết ban đầu (diện tích 100x100) sau 300s có
60 nút mạng còn sống nhưng khi tăng diện tích lên 1000x1000 thì sau 300s chỉ còn 22 nút mạng còn sống (hình 4.7 và hình 4.12)
Bên cạnh đó thời gian trễ tại trạm gốc cũng tăng lên đáng kể (hình 4.11 và hình 4.16), trễ lớn nhất trong trường hợp đầu tiên (hình 4.11) chỉ là 0.9s nhưng trong trường hợp thứ 2 (hình 4.16) đã là 9s
Qua đó có thể thấy rằng yếu tố diện tích đặt nút mạng ảnh hưởng rất lớn đến thời gian sống, cũng như khả năng truyền dữ liệu của mạng
- Kết quả thu đƣợc khi thay đổi năng lƣợng ban đầu của mỗi nút mạng từ 2J lên 10J:
Hình 4.17 Số nút mạng còn sống theo thời gian
Hình 4.18 Năng lƣợng tiêu thụ của toàn mạng theo thời gian
Hình 4.19 Tỉ lệ nút/số bytes nhận đƣợc ở trạm gốc
Hình 4.20 Tỉ lệ dữ liệu / năng lƣợng
Hình 4.21 Biểu đồ trễ tín hiệu tại trạm gốc
Khi tăng năng lượng ban đầu của mỗi nút lên 5 lần (từ 2J -> 10J) thì thời gian sống và độ trễ trên trạm gốc của mạng được cải thiện rõ rệt:
Xét với giao thức LEACH: trong 300s đầu tiên tất cả 100 nút mạng vẫn còn sống (hình 4.17) và thời gian trễ trên trạm gốc giảm (từ 0.9s -> 0.17s) (hình 4.21) Tuy nhiên trên thực tế thì chỉ có thể tăng nguồn năng lượng cấp cho mỗi nút mạng đến một mức độ nào đó Vì thế nên chúng ta cần phải nghiên cứu các thuật toán định
Kết luận
Như vậy, nếu xét một cách tổng thể thì LEACH-C là giao thức vượt trội so với các giao thức khác về nhiều mặt Sở dĩ có được điều này là trong giải thuật của LEACH-C có thêm sự điều khiển lựa chọn nút chủ cụm và phân chia cụm từ trạm gốc Chính điều này đã tối ưu hóa được năng lượng sử dụng của toàn mạng và giúp cho việc gửi dữ liệu từ các nút về trạm gốc được hiệu quả hơn Tuy nhiên LEACH-C cũng có một nhược điểm là phải xác định trước vị trí của các nút để báo về trạm gốc Điều đó đòi hỏi phải thêm chức năng định vị cho mỗi nút con sẽ phát sinh chi phí và làm cho cấu trúc của mỗi nút phức tạp hơn
Giao thức MTE tuy có ưu điểm là tiêu thụ năng lượng ít so với các giao thức khác tuy nhiên sự hạn chế về mặt truyền dữ liệu khi xảy ra xung đột nên nếu xét lượng dữ liệu truyền trên một đơn vị năng lượng thì có thể thấy sự hao phí rất lớn Giao thức này không phù hợp với những mạng cảm biến có số lượng nút lớn vì sẽ xảy ra rất nhiều xung đột trên đường truyền dẫn đến việc không thu được hoặc thu được rất ít dữ liệu tại trạm gốc
Giao thức Stat-Cluster chỉ phân chia cụm một lần nên không tốn thời gian và năng lượng cho quá trình phân chia lại nhưng thời gian sống lại ngắn vì việc chọn nút chủ cụm ban đầu là ngẫu nhiên nên nếu các nút này ở cách xa trạm gốc thì mạng sẽ hết năng lượng rất nhanh.