ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THÀNH CÔNG NGHIÊN CỨU, CẢI TIẾN GIAO THỨC ĐỊNH TUYẾN LEACH HIỆU QUẢ VỀ MẶT NĂNG LƯỢNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY WSN Ngành:
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THÀNH CÔNG
NGHIÊN CỨU, CẢI TIẾN GIAO THỨC ĐỊNH TUYẾN LEACH
HIỆU QUẢ VỀ MẶT NĂNG LƯỢNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY (WSN)
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội - 2014
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THÀNH CÔNG
NGHIÊN CỨU, CẢI TIẾN GIAO THỨC ĐỊNH TUYẾN LEACH
HIỆU QUẢ VỀ MẶT NĂNG LƯỢNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY (WSN)
Ngành: Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và Mạng máy tính
Mã số:
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN VIỆT ANH
Hà Nội - 2014
Trang 3Lời cảm ơn
Trong quá trình học tập tại trường Đại học Công nghệ-Đại học Quốc gia
Hà Nội, tôi đã luôn được các thầy cô trong trường, bạn bè và gia đình quan tâm, giúp đỡ về mọi mặt
Tôi xin gửi lời cảm ơn tới các thầy, cô trong trường Đại học Công Nghệ- Đại học Quốc gia Hà Nội, là các giảng viên đã nhiệt tình giảng dạy, truyền đạt kiến thức và tạo điều kiện tốt nhất cho tôi trong suốt thời gian học tập cũng như trong thời gian làm luận văn
Đặc biệt, tôi xin bày tỏ lòng cảm ơn sâu sắc đối với thầy TS Nguyễn Việt Anh, người đã trực tiếp hướng dẫn, chỉ bảo và góp ý cho tôi để tôi có thể hoàn thành luận văn của mình
Cuối cùng tôi xin cảm ơn bạn bè, tập thể lớp K18 chuyên ngành Truyền
dữ liệu và Mạng máy tính và nhất là gia đình tôi đã giúp đỡ, chia sẻ kiến thức,
tạo mọi điều kiện để tôi có thể hoàn thành khóa học này
Hà Nội, ngày 26 tháng 10 năm 2014
Trang 4Lời cam đoan
Tôi xin cam đoan rằng các kết quả đạt được trong luận văn là sản phẩm của riêng cá nhân tôi, không đi sao chép của người khác Trong toàn bộ nội dung của luận văn, những vấn đề được trình bày là của cá nhân hoặc được tổng hợp từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có nguồn gốc rõ ràng và được trích dẫn một cách hợp pháp Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật cho lời cảm đoan của mình
Hà Nội, ngày 26 tháng 10 năm 2014
Học viên
Nguyễn Thành Công
Trang 5Mục Lục
Lời cảm ơn 1
Lời cam đoan 2
Mục Lục 3
Danh mục các ký hiệu và chữ viết tắt 5
Danh mục các bảng và sơ đồ 7
Danh mục các hình vẽ và đồ thị 8
MỞ ĐẦU 9
CHƯƠNG 1 TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY (WSN) 12
1.1 Giới thiệu 12
1.2 Lịch sử mạng cảm biến 13
1.3 Nút cảm biến 14
1.3.1 Kiến trúc phần cứng 14
1.3.2 Phần mềm 15
1.4 Kiến trúc truyền thông của mạng WSN 16
1.4.1 Kiến trúc truyền thông 16
1.4.2 Truyền thông giữa các nút mạng 17
1.5 Những yếu tố ảnh hưởng đến thiết kế mạng 18
1.6 Chồng giao thức mạng WSN 20
1.7 Ứng dụng của mạng WSN 22
1.7.1 Các kiểu của ứng dụng 22
1.7.2 Các ứng dụng của mạng WSN 23
CHƯƠNG 2 ĐỊNH TUYẾN TRONG MẠNG WSN 26
2.1 Giới thiệu 26
2.2 Thách thức trong vấn đề định tuyến 26
2.3 Phân loại giao thức định tuyến 29
2.4 Một số giao thức định tuyến 31
2.4.1 Giao thức bình đẳng 31
2.4.2 Giao thức phân cấp 37
2.4.3 Giao thức dựa trên vị trí 40
Chương 3 GIAO THỨC LEACH VÀ CẢI TIẾN 42
3.1 Giới thiệu 42
3.2 Hoạt động 42
3.3 Hạn chế của LEACH và cải tiến 44
3.3.1 Hạn chế 44
3.3.2 Cải tiến 45
3.4 Đề xuất 48
3.4.1 Giả thiết và hoạt động của giao thức LEACH-DE 48
3.4.2 Lí do đề xuất 49
3.4.2 Cơ sở chọn c 50
CHƯƠNG 4 CÁC CÔNG CỤ MÔ PHỎNG MẠNG WSN 51
4.1 Giới thiệu 51
4.2 Các công cụ mô phỏng mạng WSN 51
4.2.1 NS2 (Network Simulatior version 2) 51
4.2.2 OMNET ++ 52
4.2.3 TOSSIM 52
Trang 64.2.4 OPNET 53
4.3 Công cụ mô phỏng mạng NS2 55
4.3.1 Giới thiệu 55
4.3.1.1 Một số đặc điểm của bộ mô phỏng NS2 55
4.3.1.2 Các thành phần của bộ mô phỏng NS2 56
4.3.2 Cấu trúc phần mềm của NS2 56
4.3.2.1 Lập trình tách biệt 56
4.3.2.2 Lập trình hướng đối tượng 57
4.3.3 Lập trình mô phỏng bằng NS2 57
4.3.3.1 Tạo bộ lập lịch các sự kiện (Creating Event Scheduler) 57
4.3.3.2 Ghi lại vết các sự kiện của mạng mô phỏng (vào tệp “*.tr” và/hoặc “*.nam”) 57
4.3.3.3 Thiết lập mạng mô phỏng 58
4.3.3.4 Tạo ra các kết nối ở tầng giao vận (giao thức TCP, UDP ) 59
4.3.3.5 Tạo ra các nguồn sinh lưu lượng 59
4.3.3.6 Xác định thời gian mô phỏng 60
4.3.4 Mô hình truyền radio 60
4.3.5 Mô hình năng lượng 60
4.3.6 NAM 61
4.4 Một số công cụ hỗ trợ việc phân tích và hiển thị kết quả mô phỏng 62
CHƯƠNG 5 MÔ PHỎNG VÀ ĐÁNH GIÁ KẾT QUẢ 65
4.1 Các độ đo thường dùng 65
4.2 Mô phỏng 65
4.2.1 Các công việc chuẩn bị 65
4.2.2 Các thông số mô phỏng 66
4.2.3 Tiến hành chạy mô phỏng 67
4.2.4 Các tệp dữ liệu đầu ra 68
4.3 Đánh giá kết quả 71
4.3.1 Giao thức LEACH-DE1 với các giá trị c nhỏ hơn hoặc bằng 0.02 71
4.3.2 Giao thức LEACH-DE1 với các giá trị c bằng 0.03, 0.05 71
4.3.2.1 Mức năng lượng tiêu hao 72
4.3.2.2 Thời gian sống của mạng 73
4.3.2.3 Lượng dữ liệu nhận được ở BS 74
4.3.3 Giao thức LEACH-DE1 với các giá trị c lớn hơn hoặc bằng 0.06 và nhỏ hơn 1 75
4.4 Kết luận 75
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 76
KẾT LUẬN 76
HƯỚNG PHÁT TRIỂN 76
TÀI LIỆU THAM KHẢO 77
Trang 7Danh mục các ký hiệu và chữ viết tắt
LEACH-DE LEACH-Distance Energy
MIT μAMPS micro-Adaptive Multidomain Power-aware Sensors
Trang 8NAM Network Animator
OMNET++ Objective Modular Network Testbed in C++
TL-LEACH Two-Level LEACH
Trang 9Danh mục các bảng và sơ đồ
Bảng 4.1 Một số công cụ mô phỏng mạng WSN 54Bảng 5.1 Các thông số mô phỏng mạng WSN 67
Trang 10Danh mục các hình vẽ và đồ thị
Hình 1.1 Mạng cảm biến không dây 12
Hình 1.2 Các thành phần chính của một nút cảm biến 14
Hình 1.3 Các hệ thống phần mềm của một nút cảm biến 16
Hình 1.4 Các nút cảm biến nằm rải rác trong trường cảm biến 17
Hình 1.5 Truyền thông Single-Hop và Multi-hop trong mạng WSN 18
Hình 1.6 Kiến trúc giao thức mạng WSN 20
Hình 2.1 Phân loại các giao thức định tuyến 29
Hình 2.2 Tổng quan các giao thức định tuyến 31
Hình 2.3 Flooding 32
Hình 2.4 Vấn đề bùng nổ (hình bên trái) và chồng chéo (hình bên phải) của Flooding 32
Hình 2.5 Các hoạt động cơ bản của giao thức SPIN 34
Hình 2.6 Giao thức bắt tay ba bước trong SPIN-PP 34
Hình 2.7 Các hoạt động cơ bản của giao thức SPIN 35
Hình 2.8 Hoạt động của Directed Diffusion 36
Hình 2.9 Mô hình mạng dùng LEACH 38
Hình 2.10 Cấu trúc chuỗi của PEGASIS 39
Hình 2.11 Cách tiếp cận lưới ảo của GAF 40
Hình 3.1 Hai pha hoạt động trong một vòng của Leach 44
Hình 3.2 TL-LEACH 45
Hình 3.3 Kiến trúc truyền thông Multi-hop LEACH 46
Hình 3.4 V-LEACH 47
Hình 3.5 Sơ đồ hoạt động của giao thức LEACH-DE 48
Hình 4.1 Giao diện đồ họa của NAM 61
Hình 5.1 Kiến trúc của MIT 66
Hình 5.2 Một phần nội dung của tệp leach.alive 68
Hình 5.3 Một phần nội dung của tệp leach.energy 69
Hình 5.4 Một phần nội dung của tệp leach.data 69
Hình 5.5 Một phần nội dung của tệp leach.out 70
Hình 5.6 Mức năng lượng tiêu hao(c=0.02 với LEACH-DE1) 71
Hình 5.7 Mức năng lượng tiêu hao (c=0.05 với LEACH-DE1) 72
Hình 5.8 Thời gian sống của mạng (c=0.05 với LEACH-DE1) 73
Hình 5.9 Lượng dữ liệu nhận được ở BS(c=0.05 với LEACH-DE1) 74
Hình 5.10 Mức năng lượng tiêu hao (c=0.06 với LEACH-DE1) 75
Trang 11MỞ ĐẦU
1 Đặt vấn đề, định hướng nghiên cứu
Trong những năm gần đây, các hệ thống mạng không dây nói chung và hệ thống mạng cảm biến không dây (Wireless Sensor Network viết tắt là WSN) nói riêng đã và đang được nghiên cứu và triển khai bởi rất nhiều các nhà khoa học, các trường đại học, các viện nghiên cứu, các tổ chức xã hội, quốc phòng, an ninh, kinh tế
Với hàng loạt các ứng dụng đang được triển khai trong hầu hết các lĩnh vực của đời sống con người như: giám sát môi trường tự nhiên, ngôi nhà thông minh, giám sát và thu thập các sự kiện trong môi trường độc hại, nông nghiệp chính xác, giám sát hoạt động của kẻ địch trên chiến trường, giám sát an ninh, theo dõi sức khỏe bệnh nhân,…mạng WSN đang dần trở thành một phần không thể thiếu trong cuộc sống
Không giống như các mạng không dây đang tồn tại, các nút mạng trong mạng WSN có kích thước rất nhỏ và có năng lượng hạn chế (rất khó hoặc không
có khả năng nạp thêm), tô pô mạng không ổn định Do đó các kỹ thuật và các giao thức được phát triển cho các mạng đã tồn tại không thể áp dụng trực tiếp cho mạng WSN được Yêu cầu được đặt ra cho các nhà nghiên cứu là tạo ra các giao thức mới phù hợp với các đặc điểm của mạng WSN
Do các nút trong mạng WSN có năng lượng hạn chế, tuổi thọ của mạng WSN lại phụ thuộc vào mức tiêu hao năng lượng của các nút mạng mà nguyên nhân chính của sự tiêu hao năng lượng của các nút cảm biến là hoạt động truyền thông nên một giao thức định tuyến được thiết kế tốt sẽ góp phần đáng kể vào việc kéo dài tuổi thọ cũng như tăng tính hiệu quả của mạng
Từ khi mạng ra đời đến nay, đã có rất nhiều các giao thức định tuyến được thiết kế cho mạng này, có thể kể ra ở đây là SPIN, LEACH, PEAGSIS, TEEN….Ngoài việc thiết kế ra các giao thức định tuyến mới cho mạng WSN thì việc nghiên cứu, cải tiến các giao thức đã có để giao thức hoạt động tốt hơn
cũng rất cần thiết Vì vậy tôi đã chọn đề tài “Nghiên cứu, cải tiến giao thức định
tuyến LEACH hiệu quả về mặt năng lượng trong mạng cảm biến không dây (WSN)” để nghiên cứu trong luận văn này Mục đích của luận văn là nghiên cứu
về giao thức LEACH, tìm hiểu các giao thức cải tiến từ giao thức này, đề xuất cải tiến cho giao thức LEACH, mô phỏng và so sánh giao thức LEACH với giao thức cải tiến của mình
Trang 12 Thiết lập kịch bản mô phỏng, tiến hành mô phỏng, so sánh và đánh giá kết quả mô phỏng
Trên cơ sở các tìm hiểu và nghiên cứu trên viết luận văn với nội dung:
“Nghiên cứu, cải tiến giao thức định tuyến LEACH hiệu quả về mặt năng lượng
trong mạng cảm biến không dây (WSN)”
3 Phương pháp nghiên cứu
Nghiên cứu lý thuyết:
- Nghiên cứu tổng quan về mạng WSN, vấn đề định tuyến trong mạng WSN, một số giao thức định tuyến trong mạng WSN và các vấn đề liên quan
- Nghiên cứu về giao thức LEACH, tìm hiểu về một số giao thức cải tiến từ giao thức này
Thực nghiệm:
- Đưa ra đề xuất cải tiến giao thức LEACH hiệu quả về mặt năng lượng
- Tiến hành mô phỏng và so sánh, đánh giá kết quả
4 Bố cục
Để có thể thực hiện được các mục tiêu của luận văn, bố cục luận văn được tôi tổ chức thành năm chương như sau:
Chương 1 Tổng quan về mạng cảm biến không dây (WSN): Giới thiệu
một cách tổng quan về mạng WSN, lịch sử của mạng WSN, cấu tạo phần cứng
và các thành phần phần mềm của một nút cảm biến, kiến trúc truyền thông của WSN, những yếu tố ảnh hưởng đến thiết kế mạng WSN, chồng giao thức mạng WSN, các ứng dụng của mạng WSN
Chương 2 Định tuyến trong mạng WSN: Giới thiệu về định tuyến trong
mạng WSN, tìm hiểu về các thách thức gặp phải trong vấn đề định tuyến, tìm
Trang 13hiểu về việc phân loại các giao thức định tuyến trong mạng WSN, nghiên cứu một số giao thức định tuyến trong mạng WSN
Chương 3 Giao thức LEACH và cải tiến: Giới thiệu và nghiên cứu về
hoạt động của giao thức LEACH, tìm hiểu một số giao thức cải tiến từ giao thức LEACH đã được đề xuất, và đề xuất cải tiến của tác giả
Chương 4 Các công cụ mô phỏng mạng WSN: Tìm hiểu các công cụ mô
phỏng hỗ trợ mô phỏng mạng WSN, nghiên cứu công cụ mô phỏng mạng NS2
và tìm hiểu một số công cụ hỗ trợ việc phân tích và hiển thị kết quả mô phỏng thu được
Chương 5 Mô phỏng và đánh giá kết quả: Tiến hành mô phỏng và so
sánh, đánh giá kết quả
Phần kết luận và hướng phát triển: tổng kết những công việc đã thực
hiện, những kết quả đã đạt được đồng thời cũng nêu các công việc và hướng nghiên cứu trong tương lai
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY (WSN) 1.1 Giới thiệu
Ngày nay với sự phát triển nhanh chóng của khoa học kĩ thuật nói chung và
sự phát triển của mạch kĩ thuật số, công nghệ vi hệ thống cơ điện tử (micro electro-mechanical systems-MEMS), truyền thông không dây nói riêng thì việc thiết kế và phát triển các nút cảm biến (sensor node) với kích thước nhỏ, thực hiện được nhiều chức năng, giá thành rẻ, tiêu thụ ít năng lượng, có thể truyền thông không dây là hoàn toàn khả thi Các nút cảm biến rất nhỏ có thể thực hiện nhiều chức năng, bao gồm cảm biến, xử lý dữ liệu và truyền thông không dây, cho phép triển khai các mạng WSN trong nhiều lĩnh vực khác nhau của đời sống
Khái niệm mạng cảm biến không dây: “Mạng cảm biến không dây (Wireless Sensor Network, viết tắt là WSN) là tập nhiều nút cảm biến có khả năng cảm biến môi trường như cảm biến nhiệt độ, cảm biến độ ẩm, cảm biến cường độ ánh sáng, và khả năng xử lý dữ liệu, truyền thông không dây với nhau, phủ sóng trên một vùng vật lý nào đó nhằm giám sát và quản lý vùng vật
lý đó”
Với mạng WSN, ngoài các nút cảm biến chỉ có thể thu thập và trao đổi thông tin về môi trường quan sát, còn có thể có các thiết bị được gọi là Sink hoặc trạm gốc (BS hay Base Station) với bộ xử lý, năng lượng và khả năng lưu trữ lớn đảm nhận chức năng khác trong một như nhận dữ liệu từ các nút cảm biến và xử lí… Hình 1.1 là một mô hình mạng WSN
Hình 1.1 Mạng cảm biến không dây
Trang 15Mạng WSN có một loạt các ứng dụng đang được triển khai trong quân sự, công nghiệp, nông nghiệp, môi trường…và tương lai sẽ dần trở thành một phần không thể thiếu trong cuộc sống của chúng ta Tuy nhiên để thực hiện các ứng dụng hiện tại và tương lai cho mạng WSN, việc thiết kế các giao thức truyền thông phức tạp và hiệu quả cũng được đặt ra Với mạng WSN, các nút cảm biến hay các nút mạng có năng lượng hạn chế nên không giống như các mạng truyền thống, các giao thức được thiết kế để cải thiện các thông số như hiệu năng mạng, thông lượng và độ trễ…, các giao thức trong mạng WSN tập trung chủ yếu vào việc tiết kiệm năng lượng, kéo dài tuổi thọ mạng
1.2 Lịch sử mạng cảm biến [5, tr.8]
Năm 1978, Defense Advanced Research Projects Agency (DARPA) đã tổ chức hội thảo Distributed Sensor Nets Workshop (DAR 1978), tập trung vào các khó khăn trong nghiên cứu mạng cảm biến như công nghệ mạng, kỹ thuật xử lý tín hiệu và các thuật toán phân phối DARPA cũng vận hành chương trình Distributed Sensor Networks (DSN) vào đầu những năm 1980, sau đó là chương trình Sensor Information Technology (SensIT)
Trung tâm khoa học Rockwell và Đại học California tại Los Angeles kết hợp đề xuất các khái niệm về Wireless Integrated Network Sensors hay WINS Một kết quả của dự án WINS là Low Power Wireless Integrated Microsensor (LWIM), được sản xuất vào năm 1996 (Bult và cộng sự 1996) Hệ thống cảm biến thông minh này được dựa trên một chip CMOS, tích hợp nhiều cảm biến, mạch giao tiếp, mạch xử lý tín hiệu số, radio không dây, và vi điều khiển trên một chip duy nhất
Dự án Smart Dust (Kahn và cộng sư 1999) tại trường Đại học California tại Berkeley tập trung vào việc thiết kế các nút cảm biến cực nhỏ được gọi là các
mote Mục tiêu của dự án này là để chứng minh rằng một hệ thống cảm biến
hoàn chỉnh có thể được tích hợp vào các thiết bị nhỏ, có thể là kích thước của một hạt cát hoặc thậm chí là một hạt bụi
Dự án PicoRadio (Rabaey và cộng sự 2000) do Berkeley Wireless Research Center (BWRC) tập trung vào sự phát triển của các thiết bị cảm biến với năng lượng thấp, năng lượng tiêu thụ là rất nhỏ, có thể tự cung cấp năng lượng từ các nguồn năng lượng của môi trường, chẳng hạn như năng lượng mặt trời hoặc dao động
Dự án MIT μAMPS (micro-Adaptive Multidomain Power-aware Sensors) (Calhoun và cộng sự 2005) cũng tập trung vào phần cứng và phần mềm cho các nút cảm biến công suất thấp
Trang 16Ban đầu các nghiên cứu về mạng WSN chủ yếu là của các trường đại học, ngày nay với khả năng ứng dụng rộng rãi thì các mạng WSN đã được các tập đoàn, công ty nghiên cứu để thương mại hóa
1.3 Nút cảm biến [2, tr.78-80]
Các nút cảm biến là thành phần quan trọng trong một mạng WSN Một nút dùng để cảm biến, lưu trữ, thực hiện các giao thức truyền thông và các thuật toán xử lý dữ liệu Chất lượng, kích cỡ của dữ liệu được cảm biến có thể thu từ mạng bị ảnh hưởng bởi các nguồn tài nguyên vật lý có sẵn ở các nút Vì vậy, việc thiết kế và triển khai một nút cảm biến là rất quan trọng
1.3.1 Kiến trúc phần cứng
Một nút cảm biến cơ bản bao gồm các thành phần chính là bộ cảm biến (sensing unit), bộ xử lý (processing unit), bộ thu phát (transceiver unit) và bộ nguồn (power unit) Ngoài ra có thể có thêm những thành phần khác tùy thuộc vào từng ứng dụng như là hệ thống định vị (location finding system), bộ phát nguồn (power generator) và bộ phận di động (mobilizer) như hình 1.2
Hình 1.2 Các thành phần chính của một nút cảm biến
Bộ cảm biến bao gồm một hoặc nhiều cảm biến vật lý và bộ chuyển đổi
tương tự-số (ADC – Analog to Digital Converter) Dựa trên những hiện tượng quan sát được, tín hiệu tương tự tạo ra bởi sensor được chuyển sang tín hiệu số bằng bộ ADC, sau đó được đưa vào bộ xử lý
Trang 17Bộ xử lý bao gồm một chip xử lý, bộ nhớ để lưu trữ chương trình, dữ liệu
cảm biến được Các bộ xử lý quản lý các thủ tục cho phép các nút cảm biến thực hiện các hoạt động cảm biến, chạy các thuật toán liên quan, phối hợp với các nút khác thông qua truyền thông không dây
Bộ thu phát gửi và nhận các dữ liệu thu được từ chính nó hoặc các nút
hàng xóm tới các nút khác hoặc tới Sink
Bộ nguồn là phần quan trọng nhất của một nút cảm biến Thông thường,
năng lượng pin được sử dụng cho bộ nguồn, nhưng các nguồn năng lượng khác cũng có thể được sử dụng như năng lượng mặt trời, dao động Mỗi thành phần trong nút cảm biến không dây được cung cấp năng lượng thông qua bộ nguồn và
và vì năng lực hạn chế của bộ nguồn nên yêu cầu tiết kiệm năng lượng cho các nhiệm vụ phải được thực hiện bởi mỗi thành phần của nút
Hầu hết các kĩ thuật định tuyến và các nhiệm vụ cảm biến của mạng đều yêu cầu có độ chính xác cao về vị trí Vì vậy cần phải có các bộ định vị Các bộ phận di động, đôi lúc cần để dịch chuyển các nút cảm ứng khi cần thiết để thực hiện các nhiệm vụ đã ấn định như cảm biến theo dõi sự chuyển động của đối tượng nào đó
1.3.2 Phần mềm
Các phần mềm cho nút mạng cảm biến như hình 1.3 Sau đây sẽ xét các thành phần cơ bản sau
Hệ điều hành hay còn được gọi là middleware, là phần mềm nằm giữa
phần cứng và ứng dụng Nhiệm vụ chính của nó là cho phép các ứng dụng tương tác với tài nguyên phần cứng, lập lịch và công việc ưu tiên, phân xử tranh chấp các nguồn tài nguyên giữa các ứng dụng và dịch vụ, quản lý bộ nhớ, quản lý năng lượng, quản lý tập tin, networking TinOS là một hệ điều hành phổ biến nhất
Trình điều khiển cảm biến (Sensor drivers) là các mô-đun phần mềm
quản lý các chức năng cơ bản của bộ thu phát cảm biến
Xử lý truyền thông (Communication processors) quản lý các chức năng
truyền thông bao gồm định tuyến, đệm gói và chuyển tiếp, bảo trì tô pô, điều khiển truy nhập môi trường, mã hóa, và FEC
Trình điều khiển truyền thông (Communication drivers): Gồm các
module phần mềm quản lý các chi tiết của liên kết truyền kênh vô tuyến, bao gồm cả clocking và đồng bộ hóa, mã hóa tín hiệu, phục hồi bit, bit đếm, mức tín hiệu và điều chế
Trang 18Xử lý dữ liệu các ứng dụng mini (Data processing mini-apps) là một số
dữ liệu ở điểm tập trung thông tin Hình 1.4 là kiến trúc truyền thông của mạng WSN Các thực thể trong kiến trúc là:
1 Các nút cảm biến với kích thước nhỏ, nằm rải rác trong một trường cảm biến, chúng giao tiếp không dây với nhau, chúng có thể tự định vị nhờ hệ thống định vị toàn cầu hoặc dựa vào thuật toán định vị Mỗi một nút cảm biến có khả năng thu thập dữ liệu và dữ liệu được truyền trở lại Sink và người dùng
2 Sink/Gateway/Base Station có thể giao tiếp với các nút quản lý công việc (Task Manager Node)/ người dùng (User) thông qua Internet hoặc vệ tinh hoặc bất kỳ loại mạng không dây (như WiFi, WiMAX,…), hoặc có thể kết nối trực tiếp đến người dùng Sink có thể là một nút cảm biến như các nút cảm biến khác trong mạng WSN hoặc là một thiết bị kĩ thuật số hỗ trợ cá nhân (Personal Digital Assistant hay PDA) kết nối trực tiếp với mạng WSN, hoặc là một phần của mạng bên ngoài (như Internet…) bằng các nào đó kết nối vào mạng WSN
3 Hiện tượng cần theo dõi
4 Người dùng là những người cần lấy thông tin về hiện tượng
Trang 19Hình 1.4 Các nút cảm biến nằm rải rác trong trường cảm biến
1.4.2 Truyền thông giữa các nút mạng
Năm 1997 chuẩn IEEE 802.11 ra đời, là công nghệ mạng không dây phổ biến nhất cho các hệ thống di động Nó sử dụng các băng tần khác nhau như các băng tần 2.4-GHz được sử dụng bởi IEEE 802.11b và IEEE 802.11g, trong khi các giao thức IEEE 802.11a lại sử dụng băng tần 5 GHz IEEE 802.11 thường được sử dụng trong các mạng WSN đầu tiên và vẫn có thể được tìm thấy trong các mạng WSN hiện nay khi nhu cầu băng thông cao được đặt ra như cho các cảm biến đa phương tiện Tuy nhiên, chi phí năng lượng cao của các mạng dựa trên IEEE 802.11 làm cho chuẩn này không phù hợp cho các mạng cảm biến năng lượng thấp
Vì yêu cầu tốc độ dữ liệu đặc trưng trong các mạng cảm biến được so sánh với băng thông được cung cấp bởi modem dial-up, do đó tốc độ dữ liệu được cung cấp bởi IEEE 802.11 là cao hơn nhiều so với cần thiết Điều này đã dẫn đến sự phát triển của một loạt các giao thức tốt hơn đáp ứng nhu cầu của mạng với sự tiêu thụ năng lượng thấp và có tốc độ dữ liệu thấp Có thể dẫn ra ở đây là giao thức IEEE 802.15.4 (Gutierrez và cộng sự năm 2001.), được thiết kế đặc biệt cho truyền thông tầm ngắn trong các mạng cảm biến năng lượng thấp và được hỗ trợ bởi hầu hết các nút cảm biến để nghiên cứu, học tập và thương mại hóa
Khi phạm vi truyền của sóng vô tuyến của tất cả các nút cảm biến là đủ lớn
và các nút cảm biến có thể truyền dữ liệu trực tiếp cho các Sink, chúng có thể
Trang 20tạo thành một cấu trúc liên kết sao như hiển thị bên trái trong hình 1.5 Trong cấu trúc này, mỗi nút cảm biến liên lạc trực tiếp với Sink sử dụng một chặng duy nhất, và được gọi là truyền thông đơn chặng hay single-hop Tuy nhiên, các mạng cảm biến thường được triển các khu vực địa lý rộng lớn và năng lượng truyền dẫn vô tuyến nên được giữ ở mức tối thiểu để tiết kiệm năng lượng Do
đó truyền thông đa chặng hay multi-hop được dùng phổ biến hơn cho các mạng cảm biến như hiển thị ở bên phải trong hình 1.5 Với truyền thông đa chặng, các nút cảm biến không phải chỉ thu thập và truyền các dữ liệu riêng của của chúng,
mà còn thực hiện chức năng chuyển tiếp dữ liệu cho các nút cảm biến khác, có nghĩa là chúng phải hợp tác để truyền dữ liệu cảm biến đến Sink Việc tìm kiếm một con đường đa chặng từ một nút cảm biến đến trạm cơ sở, là một trong những thách thức quan trọng nhất trong định tuyến và đã nhận được sự quan tâm rất lớn từ cộng đồng nghiên cứu Khi một nút có nhiệm vụ chuyển tiếp dữ cho nhiều nút, chúng có cơ hội để phân tích dữ liệu cảm biến trong mạng nên có thể dẫn đến việc loại bỏ các thông tin dư thừa hoặc chúng có thể tập hợp các dữ liệu
đó để thu được dữ liệu có thể là nhỏ hơn so với dữ liệu gốc
Hình 1.5 Truyền thông Single-Hop và Multi-hop trong mạng WSN
1.5 Những yếu tố ảnh hưởng đến thiết kế mạng WSN [2, tr.29-30]
Ràng buộc phần cứng: Như thể hiện trong hình 1.2, một nút cảm biến
thường bao gồm bốn thành phần chính và bốn thành phần tùy chọn Các thành phần chính bao gồm một bộ nguồn (pin hoặc các tế bào năng lượng mặt trời…), một bộ cảm biến (cảm biến và chuyển đổi tương tự-sang-kỹ thuật số), một bộ xử
lý (cùng với bộ nhớ lưu trữ), và một bộ thu phát (kết nối các nút cảm biến), tất
cả các thành phần này phải được đặt trong một khối có kích thước nhỏ 2x5x1
cm hoặc thậm chí là 1x1x1 cm Do đó ràng buộc phần cứng là một trong các yếu
tố ảnh hưởng đến thiết kế mạng WSN
Trang 21Năng lượng tiêu thụ: Tuổi thọ của các nút cảm biến nút thường phụ thuộc
mạnh mẽ vào tuổi thọ pin Trong đa số các trường hợp, các nút cảm biến không dây có một nguồn năng lượng hạn chế (<500 mAh, 1,2 V), và việc bổ sung năng lượng là khó khăn hoặc không thể Các chức năng của một nút cảm biến trong một trường cảm biến là phát hiện các sự kiện, thực hiện xử lý dữ liệu cục bộ, và truyền tải và hoặc xử lý dữ liệu thô Năng lượng tiêu thụ do đó có thể được phân
bổ cho ba lĩnh vực chức năng: cảm biến, truyền thông, và xử lý dữ liệu, mỗi chức năng trong số đó đều yêu cầu tối ưu hóa việc tiêu hao năng lượng
Chi phí nút: Vì mạng WSN gồm một số lượng lớn các nút cảm biến nên
chi phí cho mỗi nút sẽ là quan trọng đối với tổng chi phí cho toàn mạng
Môi trường: Các nút cảm biển thường được triển khai trong môi trường
khắc nghiệt, thù địch, hoặc phân tán rộng rãi Môi trường như vậy sẽ làm phát sinh thách thức các cơ chế quản lý
Kênh truyền: Trong mạng WSN, các nút có thể giao tiếp với nút khác
thông qua một liên kết không dây Các liên kết này có thể được hình thành bởi
liên kết vô tuyến, hồng ngoại, quang học
Kết nối và tô pô mạng: Kết nối thường xuyên giữa hai nút cảm biến bất kỳ
được triển khai dầy đặc trong một mạng cảm biến sẽ xác định kết nối mạng Các kết nối là rất quan trọng, vì nó ảnh hưởng đến kỹ thuật truyền dữ liệu và thiết kế
giao thức truyền thông
Các nút cảm biến có thể được triển khai vào môi trường cần giám sát theo một cách nào đó (thả chúng từ một máy bay trực thăng, tán xạ bởi một đạn pháo hoặc tên lửa, hoặc triển khai bởi con người hay một robot) Bất cứ lúc nào sau khi triển khai, việc tôpô thay đổi có thể xảy ra, do sự thay đổi vị trí nút cảm biến, nút bị hỏng hóc, hết năng lượng…, và tại một số thời điểm trong tương lai, các nút cảm biến có thể cần phải bổ sung được triển khai để thay thế các nút bị ngừng hoạt động
Khả năng chịu lỗi: Một nút có thể gặp sự cố về phần cứng hoặc phần
mềm, dẫn đến nút đó không hoạt động Khả năng chịu lỗi là khả năng mạng hoạt động bình thường khi một số nút cảm biến gặp sự cố
Khả năng mở rộng: Khi triển khai các nút cảm biến với mật độ cao trong
mạng WSN sẽ cải thiện khả năng chịu lỗi của mạng nhưng cũng tạo ra những thách thức về khả năng mở rộng Số lượng các nút cảm biến được triển khai để cảm biến một hiện tượng vật lý có thể từ hàng trăm đến hàng ngàn nút Do đó, các giao thức mạng được phát triển cho các mạng này sẽ phải xử lý số lượng lớn các nút một cách hiệu quả
Trang 221.6 Chồng giao thức mạng WSN [3, tr.12-15][4]
Chồng giao thức mạng WSN gồm các lớp: lớp vật lý, lớp liên kết dữ liệu, lớp mạng, lớp giao vận, lớp ứng dụng; các mặt phẳng: mặt phẳng quản lý năng lƣợng, mặt phẳng quản lý di động, mặt phẳng quản lý tác vụ nhƣ hình 1.6
Hình 1.6 Kiến trúc giao thức mạng WSN
Lớp vật lý
Lớp vật lý chịu trách nhiệm thực hiện các chức năng bao gồm cảm biến, cung cấp các kênh truyền thông, các kỹ thuật điều chế, truyền, phát và xử lý tín hiệu
Lớp liên kết dữ liệu
Lớp liên kết dữ liệu có chức năng duy trì khả năng truy cập và chia sẻ kênh truyền cho các nút cảm biến, làm giảm thiểu việc đụng độ dữ liệu và thực
hiện việc kiểm soát lỗi
MAC (Medium Access Control)
Giao thức MAC trong một mạng WSN đa chặng, tự tổ chức phải đạt đƣợc hai mục tiêu Thứ nhất là tạo ra cơ sở hạ tầng mạng Từ hàng ngàn các nút cảm biến có thể đƣợc triển khai rải rác trong một lĩnh vực cảm biến, MAC phải thiết lập liên kết truyền thông để truyền dữ liệu Điều này tạo cơ sở hạ tầng cơ bản cần thiết cho truyền thông không dây hop-by-hop và cung cấp khả năng tự tổ chức Mục tiêu thứ hai là để đạt đƣợc sự công bằng và hiệu quả trong chia sẻ tài nguyên truyền thông giữa các nút cảm biến Các nguồn tài nguyên bao gồm thời gian, năng lƣợng và tần số
Trang 23Một giao thức MAC chắc chắn phải hỗ trợ các hoạt động để tiết kiệm năng lượng cho nút cảm biến Việc tiết kiệm năng lượng rõ ràng nhất là chuyển bộ thu phát sang chế độ ngủ khi nó không phải là bắt buộc hoạt động Mặc dù phương pháp tiết kiệm năng lượng này dường như mang lại lợi ích đáng kể về mặt năng lượng, tuy nhiên nó có thể cản trở việc kết nối của mạng Khi một bộ thu phát được tắt, các nút cảm biến không thể nhận được bất kỳ gói dữ liệu từ các nút hàng xóm, khi đó về cơ bản mạng trở thành bị ngắt kết nối Hơn nữa, tắt
và mở một bộ thu phát sẽ mất một chi phí về tiêu thụ năng lượng do các thủ tục
mở và tắt cần thiết cho cả phần cứng và phần mềm
Kiểm soát lỗi
Một chức năng quan trọng của lớp liên kết dữ liệu là kiểm soát lỗi dữ liệu truyền Hai phương thức quan trọng của kiểm soát lỗi trong mạng truyền thông
là sửa chữa lỗi chuyển tiếp (FEC), yêu cầu lặp lại tự động (ARQ), và ARQ lai Tính hữu ích của ARQ trong các ứng dụng mạng cảm biến bị hạn chế bởi chi phí truyền lại Do đó, mã kiểm soát lỗi đơn giản với mã hóa-giải mã độ phức tạp thấp là các giải pháp tốt nhất cho mạng cảm biến Để thiết kế của một chương trình như vậy, yêu cầu phải có một kiến thức tốt về các đặc tính kênh và kỹ thuật
thực hiện
Lớp mạng
Chức năng chính của lớp này là thực hiện kết nối mạng, định tuyến và kết
nối với mạng ngoài Lớp mạng của các mạng cảm biến thường được thiết kế theo nguyên tắc sau:
Hiệu quả năng lượng luôn luôn là một yếu tố quan trọng
Mạng cảm biến hầu hết là hướng dữ liệu hay dữ liệu tập trung centric)
(data- Ngoài định tuyến, các nút chuyển tiếp có thể tổng hợp dữ liệu từ nhiều nút hàng xóm thông qua xử lý địa phương
Do số lượng lớn các nút trong một mạng WSN, đinh danh (ID) duy nhất cho mỗi nút có thể không được cung cấp và các nút có thể cần phải được đánh địa chỉ dựa trên dữ liệu hoặc vị trí của chúng
Lớp giao vận
Chức năng của lớp này là cung cấp truyền tải dữ liệu tin cậy và tránh tắc nghẽn Lớp này đặc biệt cần thiết khi một hệ thống được tổ chức để truy cập các mạng khác
Trang 24Không giống như các giao thức như TCP, các chương trình truyền thông end-to-end trong các mạng cảm biến không dựa trên địa chỉ toàn cầu Các chương trình này phải giải quyết vấn đề dựa trên dữ liệu hoặc vị trí để chỉ ra những điểm đến của các gói dữ liệu Các yếu tố như tiêu thụ năng lượng và khả năng mở rộng, và các đặc điểm như định tuyến hướng dữ liệu, đặt ra yêu cầu mạng cảm biến cần phải xử lý khác trong lớp giao vận Vì vậy, các yêu cầu này nhấn mạnh sự cần thiết cho các loại mới của giao thức lớp giao vận
Mặt phẳng quản lý di động phát hiện và ghi lại sự chuyển động của các
nút cảm biến, do đó, một tuyến đường đến người dùng luôn được duy trì, và các nút cảm biến có thể theo dõi nút hàng xóm của chúng
Mặt phẳng quản lý tác vụ lập lịch các nhiệm vụ cảm biến cho một khu
vực cụ thể Không phải tất cả các nút cảm biến trong khu vực được yêu cầu để thực hiện nhiệm vụ cảm biến đồng thời Kết quả là, một số nút cảm biến thực hiện nhiệm vụ nhiều hơn những nút khác, tùy thuộc vào mức năng lượng của chúng
Những mặt phẳng quản lý là cần thiết để các nút cảm biến có thể làm việc với nhau một cách hiệu quả về năng lượng, dữ liệu được định tuyến trong một mạng cảm biến di động, và chia sẻ tài nguyên giữa các nút cảm biến Nếu không
có chúng, mỗi nút cảm biến sẽ chỉ làm việc riêng Từ quan điểm của toàn bộ mạng cảm biến, sẽ là hiệu quả hơn nếu các nút cảm biến có thể cộng tác với nhau, vì vậy tuổi thọ của các mạng cảm biến có thể được kéo dài
Trang 25Đo định kỳ
Các nút cảm biến có thể được giao nhiệm vụ định kỳ báo cáo các giá trị đo được Thông thường, các báo cáo này có thể được kích hoạt bởi một sự kiện được phát hiện
Theo dõi
Nguồn một sự kiện có thể di động (ví dụ như một kẻ xâm nhập trong các tình huống theo dõi hay sự di chuyển của động vật) Mạng WSN có thể được sử dụng để báo cáo các cập nhật về vị trí của nguồn sự kiện tới Sink Để làm được điều này, các nút cảm biến thường phải hợp tác với nhau
Phát hiện biên
Cho phép tìm ra các khu vực hoặc các điểm có giá trị giống nhau Ví dụ như để tìm thấy những điểm đẳng nhiệt trong ứng dụng cháy rừng để phát hiện ranh giới của đám cháy thực tế
1.7.2 Các ứng dụng của mạng WSN
Mạng WSN với giá các nút có kích thước nhỏ, giá thành thấp đang ngày càng được ứng dụng trong đời sống Các mạng cảm biến có thể cảm biến các thành phần như là nhiệt độ, độ ẩm, hình ảnh và ánh sáng hồng ngoại, âm thanh, rung động (ví dụ như để phát hiện rối loạn địa chấn), áp lực, cảm biến hóa học (đối với các loại khí khác nhau hoặc để đánh giá thành phần của đất), áp lực cơ học, cảm biến từ tính (để phát hiện các phương tiện qua lại) Dưới đây sẽ trình bày một số các ứng dụng của mạng WSN
Ứng dụng cứu trợ thiên tai
Một trong những loại ứng dụng thường được nhắc đến nhiều nhất cho mạng
là hoạt động cứu trợ thiên tai Có thể chỉ ra một ví dụ điển hình là phát hiện cháy rừng: các nút cảm biến được trang bị nhiệt kế và có thể xác định vị trí của mình (tương đối với nhau hoặc trong tọa độ tuyệt đối) Những cảm biến này được triển khai trong một vụ cháy rừng trong một khu rừng, từ máy bay Chúng sẽ tạo
ra một "bản đồ nhiệt độ" của khu vực hoặc xác định chu vi của khu vực với nhiệt độ cao để xác định phạm vi đám cháy Một số các ứng dụng cứu trợ thiên tai giống với ứng dụng phát hiện cháy rừng là các ứng dụng quân sự, nơi mà bộ cảm biến sẽ phát hiện quân địch chứ không phải là cháy rừng Trong ứng dụng này, các nút cảm biến nên đủ rẻ với số lượng lớn và yêu cầu cuộc đời không phải là đặc biệt cao để có thể chỉ dùng một lần
Trang 26Kiểm soát môi trường và lập bản đồ đa dạng sinh học
Mạng WSN có thể được sử dụng để kiểm soát môi trường như đối với các chất ô nhiễm hóa học, một ứng dụng có thể nêu ra là kiểm soát bãi rác
Liên quan chặt chẽ đến kiểm soát môi trường là việc sử dụng để đạt được một sự hiểu biết về số lượng các loài động thực vật sống trong một nơi cư trú nhất định (lập bản đồ đa dạng sinh học) Ưu điểm chính của ở đây là tính lâu dài, không cần giám sát, hoạt động cảm biến gần với các đối tượng được quan sát, do nút cảm biến có thể được làm đủ nhỏ nên không làm phiền các động vật
và thực vật được quan sát Thông thường, với các ứng dụng này, một số lượng lớn các bộ cảm biến được yêu cầu với tuổi thọ cao
Tòa nhà thông minh
Mỗi tòa nhà lãng phí một lượng lớn năng lượng không hiệu quả bởi độ ẩm, thông gió, việc sử dụng điều hòa nhiệt độ Bằng cách sử dụng một mạng WSN, thời gian thực, theo dõi nhiệt độ, luồng không khí, độ ẩm, và các thông số vật lý khác trong một tòa nhà có thể làm tăng mức độ thoải mái của người dân và giảm tiêu thụ năng lượng Cải thiện hiệu quả năng lượng cũng như cải thiện tiện nghi
là một số mục tiêu của "tòa nhà thông minh”
Ngoài ra, các nút cảm biến như vậy có thể được sử dụng để theo dõi mức
độ căng cơ học của các tòa nhà trong khu vực địa chấn hoạt động Bằng cách đo các thông số cơ học như tải trọng uốn của dầm, nó có thể nhanh chóng xác định một tòa nhà dù chưa bị sập sau địa chấn nhưng có còn an toàn hay không khi
Hệ thống tương tự có thể được áp dụng cho các cây cầu Các mạng cảm biến có thể được dùng để phát hiện vị trí người bị vùi lấp trong một toà nhà bị sập và truyền thông tin đó cho một đội cứu hộ
Quản lí khu vực
WSN cũng có một loạt các ứng dụng trong việc quản lý các cơ sở lớn hơn
so với một tòa nhà Một ứng dụng đơn giản đó là ra vào không khóa Với ứng dụng này mọi người đeo một phù hiệu cho phép kiểm tra những người được phép vào các khu vực của một công ty hay không Ứng dụng này rất nhiều điểm tương đồng với các ứng dụng quân sự tương ứng Một ứng dụng nữa của trong lĩnh vực này là có thể được sử dụng trong một nhà máy hóa chất để phát hiện rò
rỉ hóa chất
Các ứng dụng này phải giải quyết các khó khăn như yêu cầu số lượng của các nút cảm biến có thể lớn, chúng phải hợp tác và chúng có thể vận hành một thời gian dài
Trang 27Trong nông nghiệp chính xác
Ứng dụng mạng WSN đối với nông nghiệp cho phép tưới chính xác và bón phân hợp lí bằng việc đặt các cảm biến thành phần độ ẩm hoặc đất ở ruộng Ngoài ra, chăn nuôi có thể dùng mạng WSN bằng cách gắn một nút cảm biến vào mỗi con vật để kiểm soát tình trạng sức khỏe của động vật (bằng cách kiểm tra nhiệt độ cơ thể)
Trong y tế
Sử dụng mạng WSN trong các ứng dụng chăm sóc sức khỏe có tiềm năng rất lớn Các cảm biến được gắn trực tiếp vào bệnh để giám sát lâu dài của bệnh nhân (thường là người cao tuổi) và dùng thuốc tự động (cảm biến nhúng vào bao
bì thuốc, nâng cao báo động khi áp dụng cho các bệnh nhân sai) Ngoài ra, hệ thống theo dõi bệnh nhân và bác sĩ trong bệnh viện rất cần thiết để theo dõi tình trạng sức khỏe của bệnh nhân
Trong hậu cần
Trong các ứng dụng hậu cần khác nhau, nó có thể được để trang bị cho hàng hóa với cảm biến đơn giản mà cho phép theo dõi các đối tượng trong quá trình vận chuyển hoặc tạo điều kiện theo dõi hàng tồn kho trong các cửa hàng hoặc kho
Trong giao thông
Các nút cảm biến gắn vào đường phố hoặc vệ đường có thể thu thập thông tin về tình trạng giao thông Các nút cũng có thể tương tác với những chiếc xe
để trao đổi các cảnh báo nguy hiểm về điều kiện đường xá hoặc ùn tắc giao thông ở đoạn đường phía trước
Trang 28CHƯƠNG 2 ĐỊNH TUYẾN TRONG MẠNG WSN 2.1 Giới thiệu
Trong mạng WSN, dữ liệu được thu thập bởi các nút cảm biến được truyền tới một trạm gốc (Sink hay Gateway hay Base Station) và tại đó dữ liệu có thể được phân tích, xử lí và gửi đi Với các mạng cảm biến nhỏ, nơi các nút cảm biến và nút Sink rất gần nhau, có thể truyền thông trực tiếp hay đơn chặng (single-hop) giữa tất cả các nút cảm biến và Sink Tuy nhiên, trong hầu hết các ứng dụng mạng WSN sẽ yêu cầu số lượng lớn các nút cảm biến trên một khu vực rộng lớn, khi đó sẽ đòi hỏi một cách tiếp cận truyền thông gián tiếp hay đa chặng (multi-hop) Có nghĩa là, các nút cảm biến không những phải tạo ra và truyền các thông tin riêng của chúng, mà còn phục chuyển tiếp thông tin cho các nút cảm biến khác Quá trình xây dựng đường đi cho dữ liệu từ một nút nguồn
(source) tới một nút Sink qua một hoặc nhiều nút được gọi là định tuyến Khi
các nút của một mạng WSN được triển khai một cách xác định (tức là, chúng được đặt tại các vị trí được xác định trước), việc định tuyến dữ liệu từ nút nguồn tới nút Sink là có thể xác định trước Tuy nhiên, khi các nút được triển khai một cách ngẫu nhiên (tức là, chúng được phân tán vào môi trường một cách ngẫu nhiên), hoặc là các nút di động, khi đó tô pô mạng là không thể xác định trước Trong trường hợp này, cần thiết phải để các nút tự tổ chức nghĩa là chúng phải phối hợp để xác định vị trí của chúng, xác định nút hàng xóm của mình, và khám phá ra đường đi đến các Sink Chương này sẽ giới thiệu các thách thức trong định tuyến, cách phân loại các giao thức định tuyến và một số giao thức định tuyến tiêu biểu trong cách phân loại theo tổ chức mạng
2.2 Thách thức trong vấn đề định tuyến [3, tr.139-141]
Đảm bảo định tuyến hiệu quả trong mạng WSN phải đối mặt với nhiều thách thức do ảnh hưởng của truyền thông không dây và do các đặc thù của mạng cảm biến Sau đây sẽ trình bày một số thách thức chính phải đối mặt trong vấn đề định tuyến trong mạng WSN
Mức tiêu thụ năng lượng
Mục tiêu chính của các giao thức định tuyến là cung cấp hiệu quả thông tin giữa các nút cảm biến và Sink Vì mụch đích này, tiêu thụ năng lượng là vấn đề quan tâm chính trong phát triển của bất kỳ giao thức định tuyến cho mạng WSN Bởi vì năng lượng hạn chế của các nút cảm biến, dữ liệu cần phải được chuyển giao một cách tiết kiệm năng lượng nhất mà không ảnh hưởng đến tính chính xác của nội dung thông tin Do đó, nhiều thông số định tuyến thông thường và các kĩ thuật định tuyến đã có như các thuật toán đường đi ngắn nhất có thể
Trang 29không phù hợp với mạng WSN Thay vào đó, các nguyên nhân tiêu thụ năng lượng cần được nghiên cứu một cách cẩn thận và các thông số định tuyến hiệu quả năng lượng mới được phát triển cho mạng WSN Nguyên nhân chính của tiêu thụ năng lượng cho định tuyến trong mạng WSN có thể được phân chia như sau:
Phát hiện vùng lân cận: Nhiều giao thức định tuyến yêu cầu mỗi nút cần
trao đổi thông tin giữa chúng và các nút hàng xóm Các thông tin được trao đổi
có thể thay đổi tùy theo các kỹ thuật định tuyến Trong khi hầu hết các giao thức định tuyến địa lý đòi hỏi kiến thức về vị trí của các nút hàng xóm, một giao thức hướng dữ liệu có thể yêu cầu nội dung thông tin quan sát được của mỗi cảm biến xung quanh Trong cả hai trường hợp, các nút tiêu thụ năng lượng trong việc trao đổi thông tin này thông qua các phương tiện không dây, làm tăng chi phí của các giao thức Do đó để nâng cao hiệu quả năng lượng của các giao thức định tuyến, việc trao đổi thông tin địa phương giữa các nút nên được giảm thiểu
mà không cản trở việc định tuyến chính xác
Truyền thông so với tính toán: Việc tính toán là rẻ hơn nhiều so với
truyền thông về mặt tiêu thụ năng lượng Ngoài ra trong mạng WSN, mục tiêu là
để cung cấp thông tin thay vì các gói cá nhân Do đó, ngoài các kỹ thuật chuyển mạch gói thông thường, việc tính toán nên cũng được tích hợp với định tuyến để cải thiện mức tiêu thụ năng lượng, ví dụ như dữ liệu từ nhiều nút có thể được tổng hợp thành một gói duy nhất để giảm lưu lượng truyền mà không cản trở nội dung thông tin Tương tự như vậy, tính toán tại mỗi nút chuyển tiếp có thể được
sử dụng để ngăn chặn thông tin dư thừa
Khả năng mở rộng
Số lượng nút cảm biến có thể là hàng trăm, hàng nghìn hoặc có thể nhiều hơn Bất kỳ phương pháp định tuyến nào cũng phải có khả năng làm việc với một số lượng lớn các nút cảm biến
Trang 30đó, cơ chế đánh địa chỉ mới hoặc các kỹ thuật định tuyến mới mà không yêu cầu định danh duy nhất cho mỗi nút được đặt ra
Độ bền vững
Trong mạng WSN, các nút thường là truyền thông đa chặng và các giao thức định tuyến hoạt động trên các nút cảm biến thay vì các bộ định tuyến chuyên dụng như trên mạng Internet Các thành phần với chi phí thấp được sử dụng trong các nút cảm biến có thể bị lỗi đến mức mà nút cảm biến có thể không hoạt động Kết quả là, các giao thức định tuyến phải cung cấp tính bền vững để ngăn chặn trường hợp nút ngừng hoạt động và tình huống điểm-thất-bại bại đơn, nơi mà các thông tin bị mất nếu một nút cảm biến chết Ngoài ra kênh không dây cũng bị mất trong quá trình truyền thông Ngoài tính bền vững chống lại tình trạng nút hỏng, giao thức định tuyến phải đảm bảo rằng hiệu quả của các giao thức không dựa vào một gói duy nhất có thể bị mất Ngay cả trong điều kiện rất khắc nghiệt với các lỗi kênh thường xuyên, giao thức định tuyến phải cung cấp phân phối hiệu quả giữa nút cảm biến và Sink
Tô pô mạng
Việc triển khai các nút mạng của mạng WSN có thể xác định trước hoặc theo chiến lược ngẫu nhiên Với một tôpô xác định trước thì có thể xây dựng được một giao thức định tuyến hiệu quả Tuy nhiên với mạng WSN thì tôpô không phải lúc nào cũng cố định Tô pô mạng WSN có thể thay đổi do sự di động của các nút cảm biến, các Sink hoặc có thể do nút bị sự cố, nút đang ở chế
độ ngủ (sleep), do các nút mới được bổ sung sẽ làm ảnh hưởng đến định tuyến
do đó giao thức cũng cần thích nghi với những thay đổi trong tô pô mạng Việc thiết lập và bảo trì tô pô mạng WSN có thể chia làm ba giai đoạn như sau:
- Giai đoạn tiền triển khai và triển khai các nút cảm biến: các nút cảm biến thường được triển khai trong môi trường một cách ngẫu nhiên như rải từ máy bay xuống, do con người hoặc rô bốt trực tiếp rải…
- Giai đoạn hậu triển khai: Sau khi các nút cảm biến được triển khai vào môi trường, các nút thường bị thay đổi vị trí ban đầu do nút tự di động hoặc các nút cảm biến ngừng hoạt động do hỏng hóc Ngoài ra các liên kết giữa các nút mạng cũng thường bị ảnh hưởng bởi nhiễu và các vật cản, Do đó tô pô mạng sau khi triển khai thường xuyên bị thay đổi
- Giai đoạn tái triển khai: để mạng WSN tiếp tục hoạt động thì có thể sẽ phải bổ sung thêm các nút cảm biến mới vào mạng Khi đó phải tạo ra các liên kết mới để duy trì tuổi thọ của mạng WSN
Trang 31Ứng dụng
Các loại ứng dụng cũng rất quan trọng cho việc thiết kế các giao thức định tuyến Với các ứng dụng giám sát, thường là các nút truyền quan sát của chúng cho Sink một cách định kỳ Kết quả là, các tuyến đường cố định có thể được sử dụng để duy trì phân phối hiệu quả của các quan sát trong suốt cuộc đời của mạng Trong các ứng dụng dựa trên sự kiện thì các mạng cảm biến ở trạng thái ngủ phần lớn thời gian Tuy nhiên, bất cứ khi nào một sự kiện xảy ra, các tuyến đường phải được tạo ra để cung cấp các thông tin sự kiện một cách kịp thời Ngoài ra, vị trí sự kiện không cố định vì nó liên quan trực tiếp đến sự kiện nên các tuyến đường mới sẽ được tạo ra cho mỗi sự kiện Có thể thấy rằng các kỹ thuật định tuyến liên quan trực tiếp đến các ứng dụng và kỹ thuật định tuyến khác nhau có thể được yêu cầu cho các loại ứng dụng khác nhau
2.3 Phân loại giao thức định tuyến [3, 5]
Có nhiều cách khác nhau để phân loại các giao thức định tuyến trong mạng
WSN Waltenegus Dargie và Christian Poellabauer[5] dẫn ra ba cách phân loại
các giao thức định tuyến theo Al-Karaki và Kamal 2004 là: phân loại theo cấu trúc hay tổ chức mạng (Network Organization), phân loại dựa trên phát hiện đường (Route Discovery) hoặc phân loại dựa trên sự hoạt động của giao thức (Protocol Operation) như hình 2.1
Hình 2.1 Phân loại các giao thức định tuyến
Phân loại theo cách tổ chức mạng (Network Organization)
Theo cách phân loại này thì có các nhóm giao thức là nhóm giao thức bình đẳng, nhóm giao thức dựa trên phân cấp và nhóm giao thức dựa trên vị trí Với các giao thức bình đẳng (Flat- based) thì coi các nút có vai trò như nhau Ngược
Trang 32lại, trong các giao thức định tuyến dựa trên phân cấp (Hierarchical-based) các nút khác nhau có thể đảm nhận chức năng khác nhau trong quá trình định tuyến, với một số nút có thể truyền dữ liệu thay cho nút khác, trong khi các nút khác chỉ thực hiện cảm biến, tạo và truyền dữ liệu cảm biến của nó Các giao thức định tuyến dựa trên vị trí (Location-Based) dựa vào thông tin vị trí của các nút
để đưa ra quyết định định tuyến
Phân loại theo cách phát hiện đường (Route Discovery)
Theo các phân loại này thì có các nhóm giao thức là giao thức phản ứng, giao thức chủ động, giao thức lai Với các giao thức phản ứng (Reactive) thì các tuyến đường được tìm khi có yêu cầu, còn với các giao thức chủ động (Proactive), các tuyến đường được thiết lập trước khi chúng cần dùng, trong khi nhóm giao thức lai ghép (Hybird) là sự kết hợp của những ý tưởng của cả hai giao thức phản ứng và chủ động
Phân loại dựa trên hoạt động của giao thức (Protocol Operation)
Theo cách phân loại này thì có các nhóm giao thức là giao thức dựa trên thương lượng, giao thức dựa trên đa đường, giao thức dựa trên truy vấn, giao thức dựa trên chất lượng dịch vụ và giao thức Coherent-Based Với các giao thức dựa trên thương lượng (negotiation-based) thì một nút sẽ thương lượng với các nút hàng xóm trước khi truyền dữ liệu nhằm giảm dữ liệu dư thừa Các giao thức dựa trên đa đường (MultiPath- Based) sử dụng đồng thời nhiều tuyến đường để nâng cao hiệu suất hoặc khả năng chịu lỗi Với các giao thức định tuyến dựa trên truy vấn (Query-Based) thì các nút cảm biến gửi dữ liệu để đáp ứng các truy vấn phát hành bởi nút đích Mục đích của các giao thức định tuyến dựa trên chất lượng dịch vụ (QoS-Based) là để đáp ứng một số thông số chất lượng dịch vụ (QoS) hoặc kết hợp nhiều thông số, như độ trễ thấp, tiêu thụ năng lượng thấp, hoặc tỉ lệ mất gói thấp Cuối cùng, giao thức định tuyến cũng khác
nhau trong cách chúng hỗ trợ xử lý dữ liệu trong mạng Giao thức
Coherent-Based thực hiện chỉ một xử lý tối thiểu (ví dụ, loại bỏ trùng lặp) trước khi dữ liệu cảm biến được gửi và tập hợp Tuy nhiên, trong các giao thức Noncoherent-Based, các nút có thể thực hiện xử lý đáng kể dữ liệu thô trước khi nó được gửi đến các nút khác để xử lý tiếp
Còn theo tác giả Ian F Akyildiz và Mehmet Can Vuran [3] thì các giao thức có thể được phân thành các nhóm (1) các giao thức hướng dữ liệu và cấu trúc ngang hàng (data-centric and flat architecture), (2) các giao thức phân cấp (hierarchical), (3) các giao thức dựa trên vị trí (Geographical) và (4) các giao thức dựa trên chất lượng dịch vụ (QoS based) như hình 2.2 Trong đó định tuyến
Trang 33hướng dữ liệu dùng để chỉ loại thông báo truy vấn được khởi tạo thông qua Sink Kỹ thuật định tuyến hướng dữ liệu tập trung vào việc thu thập và truyền thông tin của một kiểu cụ thể hoặc được mô tả bởi các thuộc tính nhất định, đối lập với thu thập dữ liệu từ các cảm biến cụ thể Nghĩa là trong định tuyến hướng
dữ liệu, chỉ các nút cảm biến thỏa mãn truy vấn từ Sink mới thực hiện truyền dữ liệu
Hình 2.2 Tổng quan các giao thức định tuyến
2.4 Một số giao thức định tuyến [2,3,5]
Như trên đã trình bày thì các giao thức có thể được phân loại theo cấu trúc mạng, theo cách chọn đường, hoặc theo cách giao thức hoạt động Phần này sẽ trình bày một số giao thức định tuyến tiêu biểu trong mạng WSN theo cách phân loại dựa trên cấu trúc mạng
2.4.1 Giao thức bình đẳng
Với các giao thức bình đẳng thì các nút mạng được coi là có vai trò như nhau và chúng hợp tác với nhau để để thực hiện nhiệm vụ cảm biến
Flooding và Gossiping
Kĩ thuật định tuyến ngập lụt (Flooding) đã được phát triển cho các mạng
multi-hop Theo kĩ thuật này, bất cứ khi nào một nút nhận được một gói tin, nó phát gói tin này đến tất cả các nút hàng xóm của nó trừ nút đã gửi cho nó Điều này tiếp tục cho đến khi tất cả các nút trong mạng nhận được gói tin đó Kết quả
là, một gói tin có thể tràn ngập (flooded) toàn bộ mạng Flooding có thể được kiểm soát bằng cách hạn chế việc phát lại gói tin cho đến khi gói tin đến đích hoặc đạt số lượng tối đa của các chặng (hop) Cũng có thể nói Flooding là một giao thức phản ứng và thực hiện khá đơn giản Hình 2.3 là một minh họa của Flooding
Trang 34Hình 2.3 Flooding
Những lợi thế của Flooding là ở sự đơn giản của nó (không cần kết tốn kém duy trì tô pô mạng và các thuật toán định tuyến phức tạp) Tuy nhiên nó cũng có một số nhƣợc điểm sau:
- Bùng nổ (Implosion): Một nút có thể nhận đƣợc cùng một thông điệp từ các nút hàng xóm của nó
- Chồng chéo (Overlap): Nếu hai nút chồng lấn khu vực cảm biến thì khi xảy một kích thích thì hai nút cảm biến cùng cảm biến và cùng gửi dữ liệu Kết quả là các nút hàng xóm nhận đƣợc thông điệp trùng lặp
- Mù tài nguyên (Resource blindness): Không tính đến nguồn năng lƣợng hiện có của các nút
Nhuợc điểm bùng nổ và chồng chéo đƣợc minh họa nhƣ hình 2.4
Hình 2.4 Vấn đề bùng nổ (hình bên trái) và chồng chéo (hình bên phải) của
Flooding
Trang 35Một sự cải tiến của giao thức này là Gossiping (Hedetniemi và cộng sự
1988), thuật toán này cải tiến ở chỗ mỗi nút sẽ ngẫu nhiên gửi gói tin mà nó nhận được đến một trong các nút hàng xóm của nó Thuật toán này làm giảm số lượng các gói lan truyền trong mạng, tiết kiệm năng lượng hơn flooding Tuy nhiên có nhược điểm là có thể gói sẽ không bao giờ đến được đích, và làm tăng
độ trễ truyền Các kĩ thuật Flooding và Gossiping có thể được sử dụng bởi các giao thức cho các chức năng cụ thể như Sink có thể sử dụng Flooding hoặc Gossiping để xác định các nút hoạt động ngay sau khi các nút được triển khai Hay sử dụng Flooding hoặc Gossiping để các nút thu thập thông tin từ nút hàng xóm khi khởi tạo mạng
Sensor Protocols for Information via Negotiation (SPIN)
SPIN (Kulik và cộng sự 2002) là một họ các giao thức định tuyến được thiết kế để giải quyết những nhược điểm của Flooding bằng thương lượng và thích ứng tài nguyên Do đó SPIN được thiết kế dựa trên hai ý tưởng: (1) hoạt động hiệu quả và tiết kiệm năng lượng bằng cách gửi siêu dữ liệu (meta-data -là
dữ liệu mô tả về dữ liệu cảm biến) thay vì gửi toàn bộ dữ liệu cảm biến ở nút cảm biến và (2) các nút trong một mạng phải nhận thức được sự thay đổi về nguồn năng lượng của mình và thích nghi với những thay đổi này để kéo dài tuổi thọ của mạng SPIN có ba loại thông điệp là ADV, REQ và DATA
- ADV: khi một nút có dữ liệu để gửi, nó quảng cáo thông qua quảng bá thông điệp này (chứa siêu dữ liệu) cho tất cả các nút hàng xóm
- REQ: một nút quan tâm gửi thông báo này khi nó mong nhận một số dữ liệu
- DATA: Thông điệp dữ liệu có chứa dữ liệu cảm biến thực tế
Các hoạt động cơ bản của SPIN được minh họa trong hình 2.5 với nút cảm biến A chứa dữ liệu, quảng cáo dữ liệu của mình cho hàng xóm của nó là nút cảm biến B, bằng cách gửi thông điệp ADV chứa các siêu dữ liệu mô tả dữ liệu cảm biến của nó (hình 2.5a) Node B muốn nhận dữ liệu này gửi một thông điệp REQ cho nút A (hình 2.5b) Sau khi nhận được thông điệp này của nút B thì nút
A sẽ gửi dữ liệu cho nút B trong thông điệp DATA (hình 2.5c) Khi nhận được
dữ liệu, nút B sẽ gửi một tin nhắn ADV để quảng cáo dữ liệu mới nhận được tới các nút láng giềng của nó (hình 2.5d) Chỉ có ba trong số các nước láng giềng, các nút C, E và G, muốn có dữ liệu này Các nút này nhắn REQ đến nút B (hình 2.5e), nút B cung cấp dữ liệu tới mỗi nút đó (hình 2.5f)
Trang 36Hình 2.5 Các hoạt động cơ bản của giao thức SPIN
SPIN-PP
Là phiên bản đơn giản nhất của SPIN được thiết cho mạng truyền thông điểm-điểm Giao thức này sử dụng giao thức bắt tay ba bước như hình 2.6
Hình 2.6 Giao thức bắt tay ba bước trong SPIN-PP
Bước 1, nút chứa dữ liệu, nút A, phát ra một gói quảng cáo (ADV) Trong bước 2, nút B thể hiện việc muốn nhận dữ liệu bằng cách phát ra một yêu cầu dữ liệu (REQ) Ở bước 3, nút A đáp ứng các yêu cầu và gửi một gói DATA đến nút
B và hoàn thành bắt tay ba bước
SPIN-EC
Là một mở rộng của SPIN-PP với việc thêm cơ chế nhận biết tài nguyên dựa trên ngưỡng để hoàn thành thương lượng dữ liệu Một nút quyết định tham gia hoạt động giao thức hay không phụ thuộc vào năng lượng hiện có của nó so với ngưỡng Nút không tham gia vào các hoạt động giao thức, tức là, nó không gửi một gói REQ, nếu nó không có đủ năng lượng để truyền tải các gói REQ và
Trang 37nhận một gói DATA Nếu một nút có nhiều năng lượng SPIN-EC hoạt động như SPIN-PP
SPIN-BC
Không giống SPIN - PP và SPIN - EC được thiết kế cho truyền thông điểm- điểm, SPIN -BC được thiết kế cho mạng quảng bá Với mạng WSN, khi một nút gửi đi một gói dữ liệu, các gói tin truyền đi được nhận bởi tất cả các nút khác trong phạm vi nhất định của nút gửi Giao thức SPIN-BC tận dụng khả năng này
và yêu một nút mà đã nhận được một gói thông điệp ADV thì không trả lời ngay lập tức với một gói REQ Thay vào đó, nút chờ đợi trong một thời gian, trong thời gian đó nó sẽ theo dõi các kênh truyền thông Nếu nó nghe thấy một thông điệp REQ do một nút khác mà cũng muốn nhận dữ liệu thì nó hủy bỏ việc phát thông điệp REQ của mình, nên sẽ tránh được các thông điệp REQ dư thừa Hơn nữa, khi nhận được một thông điệp REQ, nút quảng cáo gửi thông điệp DATA chỉ một lần, ngay cả khi nó nhận được nhiều yêu cầu cho cùng một thông điệp Các hoạt động cơ bản của giao thức SPIN được minh họa như hình 2.7
Hình 2.7 Các hoạt động cơ bản của giao thức SPIN
Trong hình 2.7, nút giữ dữ liệu, nút A, sẽ gửi một gói ADV để quảng cáo
dữ liệu tới các nút hàng xóm B, C, D, E và F (1) Tất cả các nút hàng xóm của A đều nghe thấy quảng cáo, nhưng nút C là nút đầu tiên đầu tiên phát hành một gói REQ yêu cầu dữ liệu từ nút A (2) Tất cả các nút hàng xóm của A đều nhận được gói tin này Các nút B và D mong muốn nhận được gói tin của nút A sẽ không phát hành gói REQ riêng của chúng Các nút E và F không có quan đến
dữ liệu quảng cáo nên bỏ qua thông điệp này Khi nghe yêu cầu nút C, nút A trả lời bằng cách gửi các gói dữ liệu Tất cả các nút trong phạm vi truyền dẫn của A nhận được các gói dữ liệu, bao gồm các nút E và F Trong môi trường phát sóng,
Trang 38SPIN-BC có khả năng làm giảm tiêu thụ năng lượng bằng cách loại bỏ trao đổi
dư thừa của yêu cầu dữ liệu và trả lời
SPIN-RL
Là một cải tiến của SPIN-EC, cung cấp một cơ chế tin cậy Nếu một nút nhận được một gói ADV nhưng không nhận được gói DATA theo sau nó (do lỗi kênh truyền không dây), nó yêu cầu gói DATA từ nút hàng xóm mà có thể đã nhận được gói DATA Hơn nữa, SPIN-RL giới hạn thời gian truyền lại của các nút vì vậy mà không truyền lại một gói dữ liệu trước một khoảng thời gian quy định
Directed Diffusion (Khuếch tán trực tiếp)
Với SPIN một nút cảm biến truyền dữ liệu về các quan sát của mình cho các nút quan tâm đến dữ liệu này Kết quả là, luồng lưu lượng trong SPIN được bắt đầu từ các cảm biến và thường kết thúc tại Sink Tuy nhiên, kiểu lưu lượng này không thích hợp khi người sử dụng (ví dụ, Sink) yêu cầu những thông tin cụ
thể từ các cảm biến Directed Diffusion đã được phát triển để giải quyết yêu cầu này Hoạt động của Directed Diffusion bao gồm bốn giai đoạn để xây dựng các
tuyến đường giữa Sink và các cảm biến thỏa mãn yêu cầu của Sink như hình 2.8
Hình 2.8 Hoạt động của Directed Diffusion
Bốn giai đoạn là:
(1) Truyền interest (interest propagation)
Directed diffusion được khởi xướng khi Sink gửi tin nhắn interest tới tất
cả các nút như hình 2.8(a) Tin nhắn interest đóng vai trò như tin nhắn thăm dò
Trang 39để chỉ ra các nút với các dữ liệu phù hợp cho các nhiệm vụ cụ thể Trong suốt nhiệm vụ, Sink tiếp tục định kỳ phát sóng tin nhắn interest
(2) Thiết lập gradient (gradient setup)
Khi nhận được tin nhắn interest, mỗi nút cảm biến lưu trữ nó trong một cache interest Cache interest có một số trường như timestamp, gradient, interval
và duration Trường timestamp cho biết thời gian địa phương khi interest được nhận Trường gradient chỉ ra các nút mà từ đó interest được nhận Trường gradient này được sử dụng để tạo thành đường dẫn ngược lại phía Sink Trường duration chỉ định thời gian mỗi interest được lưu trữ tại bộ nhớ cache Sau khi nhận interest, các nút cảm biến chuyển tiếp tin nhắn interest tới láng giềng phía dưới của nó Chuyển tiếp này có thể tương tự như flooding Khi interesst truyền qua mạng cảm biến, các gradient từ nút nguồn trở lại Sink được thiết lập như thể
hiện trong hình 2.8(b)
(3) Reinforcement
Vì dữ liệu ở nút nguồn có thể được gửi thông qua nhiều tuyến đường đến Sink nên Sink có thể chỉ định một đường cụ thể để truyền dữ liệu bằng việc gửi lại interest thông qua các nút được chỉ định tạo thành con đường đó như thể hiện trong hình 2.8(c) Con đường này có thể được lựa chọn theo một số quy tắc như chất lượng liên kết tốt nhất, số lượng các gói tin nhận được từ một hàng xóm, hoặc độ trễ thấp nhất
(4) Cung cấp dữ liệu (data delivery)
Sau khi xác định đường đi từ nút nguồn tới Sink, nút nguồn có thể gửi dữ liệu về Sink theo đường đó như hình 2.8(d)
2.4.2 Giao thức phân cấp
Giao thức định tuyến phân cấp dựa trên việc phân các nút vào các cụm để giải quyết một số điểm yếu của giao thức định tuyến bình đẳng, đặc biệt là khả năng mở rộng và tính hiệu quả Các nút cảm biến sẽ được phân thành các cụm, mỗi cụm có một nút gọi là cụm trưởng CH (cluster head) và các nút còn lại gọi
là các nút thành viên (cluter member), trong một cụm các nút thành viên chỉ truyền thông trực tiếp với cụm trưởng của cụm đó Cách tiếp cận này có thể làm giảm đáng kể gánh nặng truyền thông và sự tiêu hao năng lượng trên các nút cảm biến
Trang 40LEACH (Low Energy Adaptive Clustering Hierarchy)
Là một kĩ thuật định tuyến được thiết kế để thu thập và cung cấp dữ liệu cho Sink theo chu kì Mục tiêu chính của LEACH là:
Kéo dài của tuổi thọ mạng
Giảm sự tiêu thụ năng lượng
Tổng hợp dữ liệu (data aggregation) để giảm các truyền thông không cần thiết
Để đạt được những mục tiêu này, LEACH sử dụng cách tiếp cận phân cấp
tổ chức mạng thành một tập các cụm Mỗi cụm gồm một số nút thành viên được quản lý bởi một nút cụm trưởng Cụm trưởng chủ trì để thực hiện nhiều nhiệm
vụ Nhiệm vụ đầu tiên là là tạo ra một lịch trình dựa trên TDMA (Time Division Multiple Access) theo đó mỗi nút thành viên của cụm được gán một khe thời gian để truyền dữ liệu Cụm trưởng quảng cáo lịch trình cho các thành viên của mình Nhiệm vụ thứ hai của một cụm trưởng là thu thập định kỳ dữ liệu từ các thành viên của cụm Sau khi thu thập dữ liệu, cụm trưởng tổng hợp dữ liệu nhằm loại bỏ sự dư thừa dữ liệu Nhiệm vụ thứ ba của cụm trưởng là truyền tải các dữ liệu tổng hợp trực tiếp tới Sink Việc truyền tải các dữ liệu tổng hợp được thực hiện trên một chặng (hop) duy nhất Quá trình hoạt động của LEACH được chia thành hai pha là pha thiết lập và pha trạng thái ổn định Pha thiết lập bao thực hiện các công việc xác định cụm trưởng, thiết lập cụm và tạo lịch trình truyền dữ liệu của các nút thành viên của cụm Pha ổn định trạng thái gồm thu thập dữ liệu
ở các nút thành viên và gửi cho cụm trưởng, sau đó cụm trưởng tổng hợp dữ liệu
và truyền dữ liệu đến Sink Mô hình mạng sử dụng LEACH được mô tả trong hình 2.9
Hình 2.9 Mô hình mạng dùng LEACH