Nghiên cứu các giao thức định tuyến trong mạng cảm biến không dây

86 703 1
Nghiên cứu các giao thức định tuyến trong mạng cảm biến không dây

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CƠNG NGHỆ CAO CHÍ CHÍNH NGHIẾN CỨU CÁC GIAO THỨC ĐỊNH TUYẾN TRONG MẠNG CẢM BIẾN KHÔNG DÂY LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội - 2014 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CƠNG NGHỆ CAO CHÍ CHÍNH NGHIÊN CỨU CÁC GIAO THỨC ĐỊNH TUYẾN TRONG MẠNG CẢM BIẾN KHƠNG DÂY Ngành: Cơng nghệ thông tin Chuyên ngành: Truyền liệu 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: PGS TS Nguyễn Đình Việt Hà Nội - 2014 LỜI CẢM ƠN Trong suốt q trình học tập, nghiên cứu hồn thành luận văn Đại học Công nghệ, nhận động viên, góp ý, hướng dẫn tận tình, chu đáo PGS.TS Nguyễn Đình Việt, xin bày tỏ lòng biết sâu sắc đến thầy Xin chân thành cảm ơn đến cán bộ, giảng viên Trường Đại học công nghệ giảng viên đơn vị khác tham gia giảng dạy, góp ý cho tơi hồn thành nội dụng học tập thực luận văn tốt nghiệp Tôi xin gửi lời cảm ơn đến lãnh đạo, tập thể cán bộ, giáo viên Trung tâm Dạy nghề - Hướng nghiệp Giáo dục thường xuyên Vũ Quang - Hà Tĩnh anh chị, bạn khóa học giúp đỡ, tạo điều kiện, động viên vật chất tinh thần để tơi hồn thành khóa học Hà Nội, tháng 11 năm 2014 NGƯỜI THỰC HIỆN LUẬN VĂN Cao Chí Chính LỜI CAM ĐOAN Tơi xin cam đoan kết đạt sản phẩm riêng thân tôi, không chép lại người khác Trong tồn nội dung, vấn trình bày cá nhân tổng hợp từ nhiều nguồn tài liệu Tất tài liệu tham khảo có xuất xứ rõ ràng trích dẫn hợp pháp Tơi xin chịu hồn tồn trách nhiệm chịu hình thức kỷ luật cho lời cam đoan Hà Nội tháng 11 năm 2014 Học viên Cao Chí Chính MỤC LỤC LỜI CẢM ƠN .3 LỜI CAM ĐOAN DANH MỤC BẢNG DANH MỤC HÌNH VẼ .8 BẢNG CÁC KÝ HIỆU, CHỮ VIẾT TẮT MỞ ĐẦU 11 Chương - TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY 13 1.1 Kiến trúc hệ thống yêu cầu WSNs [1 -4, 14, 15] .13 1.1.1 Giới thiệu WSNs 13 1.1.2 Những thành phần WSNs [2-4] .13 1.1.3 Kiến trúc nút cảm biến 16 1.1.4 Một số yêu cầu WSNs .16 1.2 Các yếu tố ảnh hưởng đến hiệu WSNs [1, 2, 4, 5] 17 1.2.1 Sự tiêu thụ lượng WSNs 17 1.2.2 Các mơ hình giao nhận liệu WSNs 18 1.2.3 Cách thức triển khai nút cảm biến .18 1.2.4 Tập trung liệu .18 1.2.5 Vấn đề định tuyến WSNs .19 1.2.6 So sánh mạng WSNs MANETs [2, 4] 19 1.3 Ứng dụng mạng cảm biến không dây [ 1-5, 15] 20 1.3.1 Ứng dụng theo dõi môi trường .20 1.3.2 Ứng dụng quân đội 22 1.3.3 Ứng dụng chăm sóc sức khỏe .23 1.3.4 Ứng dụng gia đình 24 Chương - CÁC GIAO THỨC ĐỊNH TUYẾN TRONG WSNs 25 2.1 Giới thiệu [1] 25 2.2 Các thách thức định tuyến [1, 3-5] .25 2.3 Phân loại giao thức định tuyến WSNs [1-5, 14] 25 2.4 Các giao thức trung tâm liệu [1-2, 4, 14] 27 2.4.1 Giới thiệu [1] 27 2.4.2 Flooding [1] .28 2.4.3 SPIN [1-2, 14] 29 2.4.4 Directed Diffusion [1-2] 31 2.4.5 Enery-aware routing [1] 33 2.4.6 GBR [1] 35 2.4.7 ACQUIRE [1] 35 2.5 Các giao thức phân cấp [1 -2] 36 2.5.1 Giới thiệu [1] 36 2.5.2 LEACH [1-3, 9, 14] 36 2.5.3 PEGASIS Hierarchical-PEGASIS [1-3, 14-15] 38 2.5.4 TEEN APTEEN [1-2] 41 2.6 Các giao thức dựa vào vị trí [1, 14] 42 2.6.1 Giới thiệu [1] 42 2.6.2 MECN SMECN [1] 43 2.6.3 GAF [1] 44 2.6.4 GEAR [1] 46 2.7 Các giao thức hướng đến lưu lượng mạng chất lượng dịch vụ [1] 47 2.7.1 Maximum Lifetime Enery Routing [1] 47 2.7.2 SAR [1] 47 2.7.3 Enery-aware QoS routing protocol [1] 48 2.7.4 SPEED [1] 49 Chương - ĐÁNH GIÁ VÀ SO SÁNH HIỆU NĂNG MỘT SỐ GIAO THỨC ĐỊNH TUYẾN CHO WSNs 51 3.1 Giới thiệu 51 3.2 Công cụ mô WSNs .52 3.2.1 Giới thiệu 52 3.2.2 Công cụ mô NS -2 53 3.3 Giới thiệu tham số mô [3, 12] 56 3.4 Mô đánh giá hiệu giao thức định tuyến [3, -7, 12] .56 3.4.1 Phát biểu toán .57 3.4.2 Phân tích code LEACH tệp truy vết leach.out [7, 12] 57 3.4.3 Chạy mơ phân tích, tr ích lọc số liệu 58 3.4.4 Đánh giá so sánh hiệu LEACH thay đổi số cluster .59 3.4.4.1 Đánh giá thăng giáng thông lượng đến BS 59 3.4.4.2 Đánh giá tiêu hao lượng mạng 62 3.4.4.3 Đánh giá tuổi thọ mạng (số nút sống theo thời gian) 63 3.4.5 Đánh giá so sánh hiệu LEACH-C thay đổi số cluster 65 3.4.5.1 Đánh giá thăng giáng thông lượng đến BS 65 3.4.5.2 Đánh giá tiêu hao lượng mạng 67 3.4.5.3 Đánh giá tuổi thọ mạng (số nút sống theo thời gian) 68 3.4.6 Đánh giá so sánh hiệu STAT-CLUSTER thay đổi số cluster 70 3.4.6.1 Đánh giá thăng giáng thông lượng đến BS 70 3.4.6.2 Đánh giá tiêu hao lượng mạng 72 3.4.6.3 Đánh giá tuổi thọ củ a mạng (số nút sống theo thời gian) 74 3.4.7 So sánh hiệu giao thức LEACH, LEACH -C, STAT-CLUSTER, PEGASIS 75 3.4.7.1 Đánh giá số nút sống lại theo thời gian tuổi thọ mạng .76 3.4.7.2 Đánh giá thăng giáng thông lượng đến BS 77 3.4.7.3 Đánh giá tiêu hao lượng mạng 78 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN TIẾP THEO 79 TÀI LIỆU THAM KHẢO 80 PHỤ LỤC [6], [11] 81 PHỤ LỤC 84 PHỤ LỤC 85 DANH MỤC BẢNG Bảng 1.1 So sánh MANETs WSNs 20 Bảng 2.1 Phân loại so sánh giao thức định tuyến WSNs 27 Bảng 3.1 Các công cụ mô WSNs phổ biến 53 Bảng 3.2 Các thành phần NS-2 54 Bảng 3.3 Các tham số mô giao thức phân cấp LEACH 56 DANH MỤC HÌNH VẼ Hình 1.1 Thiết bị “mote” Berkeley .13 Hình 1.2 Mơ hình mạng cảm biến khơng dây 14 Hình 1.3 Các thành phần nút cảm biến 16 Hình 1.4 Ứng dụng môi trường 21 Hình 1.5 Lực lượng địch bị giám sát bở i WSNs .22 Hình 1.6 Ứng dụng chăm sóc sức khỏe 23 Hình 1.7 Mơ hình ngơ nhà thơng minh nhờ WSNs 24 Hình 2.1 Phân loại giao thức định tuyến WSNs 26 Hình 2.2 Giao thức flooding 29 Hình 2.3 Sự trao đổi thơng tin SPIN 30 Hình 2.4 Các bước thiết lập đường Directed diffusion 32 Hình 2.5 Cách tiếp cận giao thức LEACH 37 Hình 2.6 Dây chuyền PEGASIS 39 Hình 2.7 Thu thập liệu dây chuyền dựa sở sơ đồ nhị phân .40 Hình 2.8 Sự phân cấp cụm TEEN APTEEN .41 Hình 2.9 Vùng chuyển tiếp cặp nút truyền tin - chuyển tiếp (i,r) MECN .43 Hình 2.10 Ví dụ lưới ảo GAF 44 Hình 2.11 Các chuyển đổi trạng thái GAF 45 Hình 2.12 Mơ hình hàng đợi nút cảm biến cụ thể 48 Hình 2.13 Các thành phần định tuyến SPEED 49 Hình 3.1 Cấu trúc NS-2 53 Hình 3.2 Luồng kiện cho file Tcl chạy NS-2 55 Hình 3.3 Sự thăng giáng q trình nhận gói tin BS LEACH .61 Hình 3.4 Sự tiêu tốn lượng toàn cục LEACH 63 Hình 3.5 Số nút cảm biến cịn sống LEACH theo thời gian 64 Hình 3.6 Sự thăng giáng q trình nhận gói tin BS LEACH-C 66 Hình 3.7 Sự tiêu tốn lượng toàn cục LEACH-C .68 Hình 3.8 Số nút cảm biến sống LEACH-C theo thời gian .69 Hình 3.9 Sự thăng giáng trình nhận liệu BS STAT-CLUSTER .71 Hình 3.10 Sự tiêu tốn lượng toàn cục STAT-CLUSTER .73 Hình 3.11 Số nút cảm biến cịn sống STAT-CLUSTER theo thời gian 75 Hình 3.12 Số nút sống LEACH, LEACH-C, STAT-CLUSTER, PEGASIS theo thời gian 76 Hình 3.13 Sự thăng giáng q trình nhận gói liệu sink/BS LEACH, LEACH-C, STAT-CLUSTER, PEGASIS 77 Hình 3.14 So sánh tiêu tốn lượng LEACH, LEACH-C, STAT-CLUSTER, PEGASIS 78 BẢNG CÁC KÝ HIỆU, CHỮ VIẾT TẮT Từ viết tắt Viết đầy đủ ACQUIRE ACtive QUery forwarding In sensoR nEtworks ADC AODV Analog to Digital Converter Adhoc On-demand Distance Vector APTEEN Adaptive Threshold sensitive Energy Efficient sensor Network protocol ARP Address Resolution Protocol BS Base Station CSMA/CA Carrier Sense Multiple Access With Collision Avoidance CSMA/CD Carrier Sense Multiple Access with Collision Detection DARPA Defense Advanced Research Projects Agency DD Directed Diffusion DSDV Destination-Sequenced Distance Vector DSR Dynamic Source Routing GAF Geographic Adaptive Fidelity GBR Gradient-based routing GEAR Geographic and Energy-Aware Routing GPS Global Positioning System HierarchicalPEGASIS ID Hierarchical Power-Efficient GAthering in Sensor Information Systems Identification IEEE Institute of Electrical and Electronics Engineers LAN Local Area Network LEACH MAC Low Energy Adaptive Clustering Hierarchy Medium Access Control MANETs Mobile Adhoc NETwork MECN Minimum Energy Comunication Network NS-2 OLSR Network Simulator version Optimized Link State Routing Protocol PEGASIS QoS Power-Efficient GAthering in Sensor Information Systems Quality of Service RF Radio Frequency RREP Route Reply 10 Từ viết tắt Viết đầy đủ RREQ Route Request RSS Received Signal Strength SAR Sequential Assignment Routing SMECN Small Minimum Energy Communication Network SPEED Stateless Protocol for End-to-End Delay SPIN Sensor Protocols for Information via Negotiation TDMA Time Division Multiple Access TDOA Time Difference of Arrival TEEN Threshold sensitive Energy Efficient sensor Network protocol TORA TTL Temporally-Ordered Routing Algorithm Time to Live WLAN Wireless LAN WSNs Wireless Sensor Networks 72 Nhận xét: - Nếu áp đặt tỷ kích thước cụm hình thành ban đầu khoảng lân cận 25 nút (25% tổng số nút mạng) số gói tin truyền BS nhiều ổn định - Cụ thể, chạy STAT-CLUSTER với kích thước cụm 25 nút 17 nút 33 nút số gói tin chuyển BS nhiều ổn định so với chạy STATCLUSTER có kích thước nhỏ (nhỏ 15 nút) Nguyên nhân: STAT-CLUSTER cố định số cụm trưởng cụm suốt trình hoạt động mạng (ban đầu BS biết mức lượng nút mạng nên phân chia cụm phân chia cách tối ưu để mạng hoạt động tốt) nên trưởng cụm nhanh hết lượng Khi có lượng yếu mà nút cảm nhận thơng tin khơng thể truyền BS (có thể c ó nhiều nút xa BS ) 3.4.6.2 Đánh giá tiêu hao lượng mạng Kết mô tơi thể hình 3.10: Hình 3.10.a) Sự tiêu hao lượng STAT-CLUSTER với số cụm hình thành lần lượt: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 20, 25, 30, 40, 50 73 Hình 3.10.b) Sự tiêu hao lượng STAT-CLUSTER với số cụm hình thành lần lượt: 2, 3, 4, 5, 6, 7, 8, 9, 10 Hình 3.10.c) Sự tiêu hao lượng với số cụm hình thành lần lượt: 2, 3, 4, 5, Hình 3.10 Sự tiêu tốn lượng toàn cục STAT-CLUSTER 74 Nhận xét: - Nếu số cụm áp đặt hình thành ban đầu nhỏ (lân cận 5% tổng số nút mạng) tiêu hao lượng tồn mạng Tuy nhiên tuổi thọ WSNs khơng tốt (trung bình khoảng 50s mạng dừng hoạt động) Nếu áp đặt số cụm hình thành nhiều tiêu hao lượng tăng nhanh - Ngun nhân: STAT-CLUSTER khơng thay đổi trưởng cụm cụm số cụm mạng suốt trình hoạt động nên sau mạng hoạt động thời gian ngắn khơng tiêu tốn lượng (vì trưởng cụm không đủ sức truyền liệu BS bị chết sớm ) 3.4.6.3 Đánh giá tuổi thọ mạng (số nút sống theo thời gian) Kết thể hình 3.11 Hình 3.11.a) Số nút sống theo thời gian STAT-CLUSTER với số cụm hình thành lần lượt: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 20, 25, 30, 40, 50 75 Hình 3.11.b) Số nút cịn sống theo thời gian STAT-CLUSTER với số cụm hìn h thành lần lượt: 2, 3, 4, 5, Hình 3.11 Số nút cảm biến sống theo thời gian STAT-CLUSTER Nhận xét: - Nếu áp đặt số cụm hình thành ban đầu (5% tổng số nút) số nút sống theo thời gian giảm nhanh tuổi thọ mạng ngắn - Nguyên nhân: nút chủ hoạt động nhiều chết sớm Nếu nhiều cụm số nút xa BS nhiều số nút chủ chết sớm không hoạt động nhiều Do mạng có tuổi thọ 3.4.7 So sánh hiệu giao thức LEACH, LEACH-C, STAT-CLUSTER, PEGASIS So sánh hiệu giao thức với cấu hình có hiệu tốt giao thức LEACH kích thước cụm 25 (25% tổng số nút ), LEACH-C với kích thước 76 cụm hình thành 50 (50% tổng số nút), stat-cluster với số cụm hình thành ban đầu 33 (33% tổng số nút mạng) giao thức PEGASIS 3.4.7.1 Đánh giá số nút sống lại theo thời gian tuổi thọ mạng Kết hiển thị hình 3.12 Hình 3.12 Số nút cịn sống LEACH, LEACH-C, STAT-CLUSTER, PEGASIS Nhận xét: Theo Hình 3.12, tuổi thọ mạng sử dụng giao thức PEGASIS kéo dài nhiều so với giao thức lại Cụ thể: - Giao thức STAT-CLUSTER có số nút cịn sống trì khoảng 50s đầu sau chết nhanh không hoạt động Nguyên nhân cố định số cụm hình thành trưởng cụm cố định từ lúc bắt đầu hoạt động đến hết trình hoạt động nên trưởng cụm hết lượng nút cịn lại khơng liên k ết thành cụm truyền thông tin BS - Tuổi thọ mạng cải thiện sử dụng giao thức LEACH LEACHC Sự cải thiện LEACH LEACH-C thực chế nút chủ linh động Tuy nhiên LEACH-C làm cho mạng có tuổi thọ tốt so với dùng LEACH (do LEACHC ban đầu lựa chọn trưởng cụm nút có lượng cao mức lượng 77 trung bình mạng thiết lập cụm cách tối ưu) - Khi sử dụng giao thức PEGASIS làm tuổi thọ mạng nhiều lần so với sử dụng giao thức khác cho WSNs Có điều việc truyền tin thực nút liền kề chuổi làm cho lượng nút cân PEGASIS khắc phục nhược điểm LEACH bỏ tính chất cụm động, tối thiểu khoảng cách truyền, nút thực sử dụng lần tập hợp hợp liệu trước truyền BS Điều làm tăng cần tiêu hao lượng 3.4.7.2 Đánh giá thăng giáng thông lượng đến BS /s Kết thể hình 3.13 Hình 3.13 Sự thăng giáng thông lượng BS LEACH, LEACH-C, STATCLUSTER, PEGASIS Nhận xét: - Nhìn vào hình 3.13 cho thấy: Giao thức PEGASIS gửi liệu BS ổn định so với giao thức cịn lại Xét theo chiều thời gian giai đoạn đầu, PEGASIS gửi liệu không nhiều so với LEACH-C Điều cho thấy PEGASIS có độ trễ gửi nhận liệu lớn so với LEACH-C, số chặng gửi liệu BS LEACH-C 2, số chặng gửi liệu BS PEGASIS nhiều Đặc biệt kích thước mạng lớn đỗ trể lớn Trong q trình hình thành nhóm 78 LEACH-C BS biết vị mức lượng nút mạng, từ hình thành nhóm mạng tốt LEACH (truyền liệu BS ổn định hơn) LEACH truyền liệu BS khơng ổn định lắm, có lúc nhiều có lúc lại Điều có giai đoạn LEACH phải hình thành cụm chuyển giao trưởng cụm, LEACH-C cần chuyển giao trưởng cụm theo chu kỳ - Cũng hình 3.13 giao thức STAT-CLUSTER có thời gian hoạt động hạn chế lượng trưởng cụm, áp đặt cố định số cụm hình thành trưởng cụm cụm 3.4.7.3 Đánh giá tiêu hao lượng mạng Kết hiển thị hình 3.14 Hình 3.14 So sánh tiêu tốn lượng LEACH, LEACH-C, STAT-CLUSTER, PEGASIS Nhận xét: Từ hình 3.14 ta rút kết luận: - Cả giao thức LEACH, LEACH-C, PEGASIS sử dụng tối đa lượng vốn có (2J/nút = 200J) Riêng giao thức STAT-CLUSTER sử dụng khoảng 50J (25%) Sự lãng phí trưởng cụm (nút đầu cụm) chết nhanh nên nút cụm không liên với - Giao thức LEACH-C LEACH tiêu tốn lượng nhanh, giao thức PEGASIS tiêu tốn 79 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN TIẾ P THEO Trong luận văn này, tiến hành nghiên cứu vấn đề định tuyến mạng cảm biến không dây đạt kết cụ thể sau: Về lý thuyết: Tìm hiểu khái qt mạng cảm biến khơng dây, kiến trúc mạng cảm biến không dây, yêu cầu thách thức vấn đề định tuyến, ứng dụng mạng cảm biến không dây nhiều lĩnh vực sống Khảo sát giao thức trình bày phân loại cách tiếp cận định tuyến khác cho mạng cảm biến không dây gồm loại chính: trung tâm liệu, phân cấp v dựa vào vị trí Và mộ t số giao thức theo đuổi theo mơ hình QoS - Các giao thức trung tâm liệu giảm chi phí hình thành cụm, sử dụng số nút đặc biệt Tuy nhiên, giao thức sử dụng kế hoạch đặt tên dùng cặp thuộc tính giá trị không đủ phục vụ truy vấn phức tạp yêu cầu ứng dụng - Các giao thức phân cấp thực hiệu việ c chuyển tiếp liệu đích Sử dụng trưởng cụm để tập hợp tổng hợp liệu để hạn chế số lần truyền tiêu hao lượng toàn cục - Các giao thức dựa vào vị trí s dụng thơng tin vị trí nút cảm biến để định tuyến hiệu lượng Về mô đánh giá hiệu số giao thức cụ thể : Tiến hành nghiêu cứu, tìm hiểu, cài đặt số công cụ mô phỏng, lựa chọn công cụ mô phỏ ng NS-2 (version 2.34) để mô số giao thứ c cho mạng cảm biến khơng dây Tìm hiểu code MIT, tích hợp code MIT vào NS2.34 để mô giao thức LEACH, LEACH-C, STAT-CLUSTER, PEGASIS, tiến hành chạy mô để lấy kết đánh giá hiệu giao thức Kết đánh giá cho thấy, giao thức đánh giá PEGASIS trì tuổi thọ tốt hơn, tiêu tốn lượng ít, liệu truyền BS ổn định, cịn LEACH-C giao thức có hiệu tốt tiêu hao n ăng lượng, truyền liệu BS giai đoạn đầu Các giao thức cịn lại có hiệu LEACH STAT-CLUSTER Hướng phát triển tiếp theo: - Xây dựng thêm nhiều module hỗ trợ cho NS2 để mô giao thức định tuyến mạng cảm biến không dây - Nghiên cứu, triển khai định tuyến mạng thực để lấy kết hiệu so sánh với kết hiệu có sử dụng công cụ mô - Nghiên cứu thêm giao thức lai nhiều loại giao thức khác nhằm mục đích tăng hiệu mạng hiệu lượng thu thập thông tin, ví dụ: giao thức HP -LEACH-C kết hợp giao thức H -PEGASIS LEACH-C - Nghiên cứu giao thức tích hợp mạng cảm biến khơng dây mạng có dây - Nghiên cứu vấn đề triển khai mạng cho định tuyến hiệu giảm chi phí 80 TÀI LIỆU THAM KHẢO Tiếng Anh: [1] Kemal Akkaya and Mohamed Younis (2003), A survey on routing protocols for wireless sensor networks, University of Maryland, USA, pp 1-9, 11-23 [2] Qiangfeng Jiang, D Manivannan, Routing Protocols for Sensor Networks, Department of Computer Science, University of Kentucky [3] Wairagu G Richard (2006), Extending leach routing algorithm for wireless sensor networks, pp 6-11, 23-25, 29-31 [4] Raihan Ahmed (2010), A servey on the routing protocols for sensor networks, BRAC University, Dhaka, Bangladesh, pp 9-15, 24-26 [5] Luna-Vazquez (2006), Implementation and simulation of routing protocols for wireless sensor network, University of Siegen, pp 10-16, 32-44 [6] Jason A Pamplin, www.forum.wsnlab.ir, NS2 leach implementation [7] Term Project - Using NS2 to implement LEACH [8] MIT µAMPS project ns2 code extensions http://wwwmtl.mit.edu/research/icsystems/uamps/research/leach/leach_code.shtml [9] Udit Sajjanhar and Pabitra Mitra, Distributive Energy Efficient Adaptive Clustering Protocol for Wireless Sensor Networks, pp 1-3 [10] Jae Chung And Mark Claypool, ns_by_example, WPI Computer Science [11] http://2bytes4u.blogspot.com/2012/11/installing-wsn-leach-protocol-on-ns-234.html Tiếng Việt: [12] Nguyễn Đình Việt (2010), Bài giảng đánh giá hiệu mạng Trường Đại học Công nghệ Đại học Quốc gia Hà Nội [13] Vũ Chiến Thắng, Nguyễn Chấn Hùng, Tạp chí khoa học cơng nghệ , Đánh giá mức tiêu thụ lượng giao thức LEACH cho mạng WSNs, pp 1-3 [14] Đỗ Thị Tuyết (2008), Nghiên cứu mô giao thức định tuyến PEGASIS mạng cảm biến, ĐH Bách khoa Hà Nội, pp 16 -33, 53-74 [15] Nguyễn Duy Thanh (2009), Mô giao thức LEACH cho WSNs, ĐH Công nghệ, pp 339 [16] Phạm Bảo Sơn (2006), Mạng cảm biến vô tuyến đánh giá tiêu giao thức chọn đường LEACH, pp 1-8 [17] Trần Đình Hóa (2010), Đánh giá hiệu giao th ức định tuyến mạng Adhoc, Học viện cơng nghệ Bưu viễn thông, pp -9 [18] Phạm Văn Tứ (2010), Khảo sát ảnh hưởng chuyển động nút mạng đến hiệu suất số giao thức định tuyến mạng MANETs, ĐH Công nghệ, pp -21 [19] Nguyễn Đình Việt nhóm sinh viê n (2010), Hướng dẫn cài đặt NS2, Đại học công nghệ, Đại học Quốc gia Hà Nội [20] Giáo trình thực hành ns2.pdf [21] ns simulator for beginners.pdf 81 PHỤ LỤC [6], [11] Các bước cài đặt giao thức LEACH vào ns2.34 (hệ điều hành Ubun tu 10.04): Giả sử hệ điều hành cài trước mô mạng NS2.34 trình dịch gcc -4.3 Bước 1.Đầu tiên vào thư mục gốc “/HOME/CHINH/NS-ALLINONE-2.34/” chứa thư mục NS-2.34 Bước 2.Tiến hành Download gói "ns-234-leach.tar.gz" vào thư mục “/HOME/CHINH/NSALLINONE-2.34/NS-2.34” địa : https://docs.google.com/uc?id=0BzLWxPfb8EKhMzMwNjE4MTItZWFkMi00ZTk1LTk5MTAt ZGRmZDBiZDE5ZGYw&export=download&authkey=CNWG1NQK&hl=en Download tệp tệp "leach-setup.sh" vào thư mực “/HOME/CHINH/NS-ALLINONE2.34/NS-2.34” địa chỉ: https://docs.google.com/uc?id=0BzLWxPfb8EKhM2RmNjJjMzItN2M5NC00MmViLWI4NDctY mVjMDgyYWQ0YWVk&export=download&authkey=CJSU5ZYG&hl=en Bước 3.Tiến hành thay đổi đường dẫn thư mục "ns-2.34" có tệp "leach-setup.sh" đường dẫn “/HOME/CHINH/NS-ALLINONE-2.34/NS-2.34” (mục đích: để thực bước 4) Bước 4.Di chuyển vào thư mục “/HOME/CHINH/NS-ALLINONE-2.34/NS-2.34”, thực tệp "leach-setup.sh" lệnh: cd /home/chinh/ns-allinone-2.34/ns-2.34/ bash leach-setup.sh Thực chất copy tệp định tệp leach-setup.sh đến nơi tệp cần thay Bước 5.Nếu thư mục gốc “ns-2.34” bạn có đường dẫn khác so với đường dẫn khai báo tập tin “Makefile” “Makefile.in” mở tệp này, tìm đường dẫn thay tệp “Makefile” , “Makefile.in” đường dẫn thời “/HOME/CHINH/NS-ALLINONE2.34/NS-2.34” - "Makefile" nằm thư mục “/HOME/CHINH/NS-ALLINONE-2.34/NS-2.34” - "Makefile.in" : nằm thư mục “/HOME/CHINH/NS-ALLINONE-2.34/NS-2.34” Bước 6.Tiến hành sửa dịng lệnh có tệp “Makefile” , “Makefile.in” lần lượt: CC = gcc-4.3 CPP = g++-4.3 Ghi đóng tệp Bước Sau thực xong bước trên, tiến hành mở Terminal: chuyển đến thư mục: HOME/CHINH/NS-ALLINONE-2.34/NS-2.34 lệnh sau: + Lệnh kiểm tra tệp thành phần: /configure + Lệnh xóa kết dịch trước đó: make clean + Lệnh thiết lập ràng buộc: make depend + Lệnh thực dịch lại ns để tích hợp giao thức leach: 82 make Bước Sau sử dụng số lệnh xuất số lỗi sau: Code: *****************************************************************trace/cmutrace.cc: In member function ‘void CMUTrace::format(Packet*, const char*)’: trace/cmu-trace.cc:1327: error: ‘format_rca’ was not declared in this scope trace/cmu-trace.cc: At global scope: trace/cmu-trace.cc:1523: error: no ‘void CMUTrace::format_rca(Packet*, int)’ member function declared in class ‘CMUTrace’ make: *** [trace/cmu-trace.o] Error ******************************************************************** Để cố định lỗi ta cần thêm vào sau dòng 165 tệp “cmu-trace.h” đoạn mã sau đây: #ifdef MIT_uAMPS void format_rca(Packet *p, int offset); #define ADV_CHAR 'A' #define REQ_CHAR 'R' #define DATA_CHAR 'D' #endif thêm sau dòng 765 tệp “ns-default.tcl” đoạn mã sau: # —————————————————— Phy/WirelessPhy set alive_ Phy/WirelessPhy set Efriss_amp_ 100e-12 Phy/WirelessPhy set Etwo_ray_amp_ 0.013e-12 Phy/WirelessPhy set EXcvr_ 50e-9 Phy/WirelessPhy set sleep_ Phy/WirelessPhy set ss_ Phy/WirelessPhy set dist_ # —————————————————— ******************************************************************** Bước 9.Bây tiến hành chạy lệnh dịch lại ns Terminal: make clean make depend make Bước 10.Nếu thực lệnh bước thành cơng sẵn sàng chạy giao thức LEACH lệnh /test_leach Bước 11.Tiến hành kiểm tra tệp “leach.err” nằm thư mục: /home/chinh/ns-allinone-2.34/ns2.34/mit/leach_sims” thấy số lỗi tệp “leach.err” sau: ******************************************************************** can't read "env(RCA_LIBRARY)": no such variable while executing 83 "source $env(RCA_LIBRARY)/ns-ranode.tcl" (file "mit/uAMPS/sims/uamps.tcl" line 9) .Code Omitted (procedure "source" line 8) invoked from within "source tcl/mobility/$opt(rp).tcl" (file "tcl/ex/wireless.tcl" line 187) ******************************************************************** Cách sửa lỗi: sai đường dẫn Ta tiến sửa đường dẫn tệp “ns-allinone-2.34/ns2.34/mit/uAMPS/sims/uamps.tcl” sau: global opt bs #source $env(RCA_LIBRARY)/ns-ranode.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/rca/ns-ranode.tcl #source $env(uAMPS_LIBRARY)/ns-bsapp.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/uAMPS/ns-bsapp.tcl #source $env(uAMPS_LIBRARY)/extras.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/uAMPS/extras.tcl #source $env(uAMPS_LIBRARY)/stats.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/uAMPS/stats.tcl #Uncomment these lines to use gdb to debug the c code #source mit/uAMPS/ns-bsapp.tcl #source mit/uAMPS/extras.tcl #source mit/uAMPS/stats.tcl #source $env(RCA_LIBRARY)/resources/ns-resource-manager.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/rca/resources/ns-resource-manager.tcl #source $env(RCA_LIBRARY)/resources/ns-energy-resource.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/rca/resources/ns-energy-resource.tcl #source $env(RCA_LIBRARY)/resources/ns-neighbor-resource.tcl source /home/chinh/ns-allinone-2.34/ns-2.34/mit/rca/resources/ns-neighbor-resource.tcl ******************************************************************** Bước 12.Bây tiến hành chạy dịch lại dùng lệnh Terminal: make clean make depend make thực chạy giao thức LEACH lần lệnh: /test_leach Bước 13.Kiểm tra xem tệp "leach.err", khơng có báo cáo lỗi mở tệp "leach.out" để xem lấy kết 84 PHỤ LỤC Trích phần code tệp chạy giao thức LEACH: leach_test alg=leach #Giao thức cần mô dirname="mit/leach_sims" #Thư mục chứa file ghi đầu filename=$alg # tên tệp code giao thức cần chạy topology_file="mit/uAMPS/sims/100nodes.txt" #File chứa cấu hình mạng: num_clusters=5 #Số phân cụm (clusters) dự kiến eq_energy=1 #khởi tạo nút có lượng nhau, # không (eq_energy=0) */ init_energy=2 #Mỗi nút khởi tạo lượng ban đầu 2j stop=3600 # Thời gian mơ 3600s x=1000 #Kích thước mơi trường cần mô phỏng: 1000m x 1000 m y=1000 bs_x=50 #Tọa độ trạm nhận liệu (BS, Sink) bs_y=175 nn=101 #Tổng số nút: (kể BS) ns tcl/ex/wireless.tcl \ #Lệnh chạy giao thức -sc mit/uAMPS/sims/nodescen \ #file nguồn -rp $alg \ -x $x \ -y $y \ -nn $nn \ -stop $stop \ -eq_energy $eq_energy \ -init_energy $init_energy \ -filename $filename \ //file đầu -dirname $dirname \ //thư mục chứa tệp truy vết -topo $topology_file \ //file chứa topo mạng ban đầu -num_clusters $num_clusters \ //số cụm dự tính hình thành -bs_x $bs_x \ //tọa độ vị trí trạm BS mơi trường -bs_y $bs_y 2>$dirname/$filename.err 1>$dirname/$filename.out & //file chứa kết mô 85 PHỤ LỤC Trích nội dung thực mơ giao thức LEACH mã lệnh thực trích rút số liệu để thực đánh giá, so sánh hiệu giao thức: Thực chạy mô giao thức LEACH trích rút số liệu với 21 lần số cụm là: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13,14,15,17,20,25,30,35,40,50 a Chạy giao thức LEACH thay đổi num_clusters=2 tệp leach_test (Thực Bước 12 13 phụ lục 1) - Lệnh trích rút lấy kết sau: cat leach2.out|grep "At"|perl column > "l2.sta" - Lệnh lấy thông số tổng lượng tiêu hao theo thời gian từ tệp " l2.sta" sau: cat l2.sta|grep "At"|perl column > "l2e.sta" - Lệnh lấy thơng số tổng số gói tin truyền BS theo thời gian từ tệp "leach_5clusters.sta" sau: cat l2.sta|grep "At"|perl column > "l2d.sta" - Lệnh lấy thơng số tổng số nút cảm biến cịn số ng theo thời gian từ tệp "leach_5clusters.sta" sau: cat l2.sta|grep "At"|perl column > "l2l.sta" Tương tự số clusters cịn lại b.Sự thăng giáng q trình nhận gói tin BS Để trích rút số gói tin nhận BS theo chu kỳ 10s, ta dùng lệnh: cat l2d.sta|awk '{dif=$2-old2; if(dif==0) dif=1; if(dif>0) {printf("%f\n",($1old1)/dif);old1=$1;old2=$2}}' > l2j.sta Tương tự số cluster lại Để vẽ đồ thị, từ dấu nhắc Terminal ta gõ lệnh GNUplot: sau tiến hành thực lệnh: set tittle "Jitter in leach" set xlabel "Time(s)" set xrange[1:40] set ylabel "pakets" set yrange[1:2000] plot “l2j.sta” w line 1, “l3j.sta” w line 2, “l4j.sta” w line 3, “l5j.sta” w line 4, “l6j.sta” w line 5,“l7j.sta” w line 6,“l8j.sta” w line 7,“l9j.sta” w line 8,“l10j.sta” w line 9,“l11j.sta” w line 10,“l12j.sta” w line 11,“l13j.sta” w line 12,“l14j.sta” w line 13,“l15j.sta” w line 14,“l17j.sta” w line 15,“l20j.sta” w line 16,“l25j.sta” w line 17,“l30j.sta” w line 18,“l35j.sta” w line 19,“l40j.sta” w line 20,“l50j.sta” w line 21 c.Sự tiêu hao lượng theo thời gian *Vẽ đồ thị biểu diễn tiêu tốn lượng WSNs: 86 Từ dấu nhắc Terminal thực lệnh: GNUplot, sau tiến hành tiến hành lệnh: set title "Consump energy in leach (J)" set xlabel "Time(s)" set xrange[1:550] set ylabel "Joules" set yrange[1:400] plot “l2e.sta” w line 1, “l3e.sta” w line 2, “l4e.sta” w line 3, “l5e.sta” w line 4, “l6e.sta” w line 5,“l7e.sta” w line 6,“l8e.sta” w line 7,“l9e.sta” w line 8,“l10e.sta” w line 9,“l11e.sta” w line 10,“l12e.sta” w line 11,“l13e.sta” w line 12,“l14e.sta” w line 13,“l15e.sta” w line 14,“l17e.sta” w line 15,“l20e.sta” w line 16,“l25e.sta” w line 17,“l30e.sta” w line 18,“l35e.sta” w line 19,“l40e.sta” w line 20,“l50e.sta” w line 21 c.Số nút sống theo thời gian: * Vẽ đồ thị để đánh giá: Từ dấu nhắc Terminal ta dùng lệnh: GNUplot, tiến hành thực lệnh: set title "Nodes alive in leach " set xlabel "Time(s)" set xrange[1:550] set ylabel "Nodes" set yrange[1:105] plot “l2l.sta” w line 1, “l3l.sta” w line 2, “l4l.sta” w line 3, “l5l.sta” w line 4, “l6l.sta” w line 5,“l7l.sta” w line 6,“l8l.sta” w line 7,“l9l.sta” w line 8,“l10l.sta” w line 9,“l11l.sta” w line 10,“l12l.sta” w line 11,“l13l.sta” w line 12,“l14l.sta” w line 13,“l15l.sta” w line 14,“l17l.sta” w line 15,“l20l.sta” w line 16,“l25l.sta” w line 17,“l30l.sta” w line 18,“l35l.sta” w line 19,“l40l.sta” w line 20,“l50l.sta” w line 21 Thực tượng tự chạy giao thức LEACH-C STAT-CLUSTER, PEGASIS./ ... kiến trúc mạng Trong khuôn khổ đề tài, tập trung nghiên cứu “ giao thức định tuyến mạng cảm biến không dây? ??; bao gồm trình bày phân loại giao thức định tuyến, mô đánh giá hiệu số giao thức LEACH,... WSNs lĩnh vực sống Chương Các giao thức định tuyến mạng cảm biến không dây; chương đưa cách tiếp cận định tuyến, phân loại so sánh giao thức, tìm hiểu lý thuyết số giao thức cụ thể thuộc loại gồm... chương: Chương Tổng quan mạng cảm biến không dây; c hương trình bày khái niệm chung mạng cảm biến không dây, yếu tố ảnh hưởng đến mạng kiến trúc mạng cảm biến không dây So sánh MANETs WSNs Đồng

Ngày đăng: 11/07/2015, 10:24

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan