Phát triển mô đun truyền thông

Một phần của tài liệu Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm biến (Trang 96 - 99)

Truyền thông của nút cảm biến là mô đun khá phức tạp. Truyền thông liên quan đến công nghệ truyền thông, giao thức truyền thông và chuẩn truyền thông,... Luận án đã thực hiện các mô đun truyền thông với sơ đồ lớp được trình bày như Hình

3.10.

Hình 3.10. Sơ đồ lớp truyền thông

Lớp with_delay_linear cài đặt cơ chế truyền thông đơn giản, không quan tâm đến các vấn đề khác ngoài độ trễ khi truyền nhận thông tin. Người dùng chỉ cần đặt thời gian trễ và phương thức tạo ra sự thay đổi về thời gian trễ của các gói tin theo công thức 3.1.

Trong đó:

������: khoảng thời gian trễ khi truyền thông (s)

�������: thời gian cơ sở của việc truyền bản tin (s) ���������: thời gian cơ sở của việc nhận bản tin (s) ���: khoảng cách truyền bản tin (m)

�: hệ số thời gian theo khoảng cách truyền,

��: thời gian được lấy từ hàm ngẫu nhiên, giá trị này đặc trưng cho tính bất định về thời gian truyền tin để tương đối giống với thực tế (s).

Lớp package cài đặt cơ chế truyền thông quảng bá, một nút khi nhận được bản tin sẽ phát tới tất cả các nút trong phạm vi của nó. Mỗi bản tin được xác định bởi thuộc tính như mã bản tin, kích thước bản tin, thời gian lưu trữ trong bộ nhớ đệm. Việc xử lý truyền dữ liệu thông qua phương thức gửi và phương thức định tuyến truyền thông.

Lớp with_loss cài đặt tỉ lệ mất bản tin trong truyền thông, thuộc tính cơ bản của lớp này là tỉ lệ mất bản tin, người dùng có thể đặt tỉ lệ mất bản tin ngẫu nhiên trong khoảng nào đó theo tỉ lệ phần trăm. Phương thức tính toán và đưa ra tỉ lệ mất bản tin dựa trên hàm ngẫu nhiên.

Lớp loop_avoidance cài đặt cơ chế truyền thông tránh lặp gói tin. Một gói tin khi nhận được sẽ lưu trong bộ đệm đến một chừng mực nào đó. Trường hợp gói tin được nhận lại lần nữa thì gói tin sẽ không được xử lý, điều này tránh lãng phí tài nguyên và thời gian. Việc xác định gói tin dựa trên cặp giá trị mã của gói tin và mã nút gửi, cặp giá trị mã này do người dùng xác định.

Lớp broadcast_routing cài đặt cơ chế truyền thông theo dạng quảng bá, khi một nút nhận được bản tin nó sẽ phát bản tin đó đến tất cả các nút xung quanh nó. Bản tin được quảng bá với những thuộc tính như khoảng cách quảng bá, giới hạn số lần quảng bá tối đa, và thời gian quảng bá tối đa. Điều này sẽ tránh được lãng phí thời gian và tài nguyên mạng.

Lớp hierarchical_routing cài đặt cơ chế truyền thông phân cấp, mỗi cấp có nhiều nhóm và mỗi nhóm có một trưởng nhóm chịu trách nhiệm truyền thông giữa các nút trong nhóm với các nút không thuộc nhóm. Các nút trong cùng nhóm gọi là các nút lân cận và đều được xác định theo danh sách. Một nút khi thực hiện truyền thông sẽ có phương thức kiểm tra xem một nút có phải là nút lân cận của nó hay không. Người dùng có thể thêm hoặc xóa một hay nhiều nút khỏi danh sách nhóm lân cận của một nút nhờ các phương thức thêm và xóa nút lân cận. Cơ chế truyền thông phân cấp về mặt lý thuyết, khi một bản tin được phát đi sẽ lan truyền tới tất cả các nút trong mạng, nhưng tránh được sự truyền lặp lại bản tin. Tuy nhiên, việc lan truyền bản tin theo cơ chế như vậy sẽ gây mất nhiều tài nguyên mạng và giảm hiệu quả trong truyền thông. Một triển khai tiếp theo từ lớp hierarchical_routing là lớp fix_routing cài đặt cơ chế định tuyến theo đường truyền cố định, mỗi nút khi nhận được bản tin sẽ gửi tới nút cố định được xác định từ trước. Việc cài đặt định tuyến cố định sẽ tạo ra một bản đồ đường đi của gói tin truyền từ mỗi nguồn đến mỗi đích. Bản đồ này được người dùng xác định khi thực hiện thiết lập mạng.

Người dùng muốn mô phỏng một giao thức truyền thông phải tổ hợp các mô đun trên để tạo thành một giao thức truyền thông cho nút cảm biến. Việc tổ hợp

thứ tự. Một mô đun có thể được sử dụng nhiều lần ở các lớp khác nhau. Ví dụ mô đun with_loss có thể vừa được tổ hợp ở lớp package cho tỉ lệ lỗi của việc chia và đóng gói tin, vừa được tổ hợp ở lớp broadcast_routing cho tỉ lệ lỗi khi truyền quảng bá.

Một phần của tài liệu Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm biến (Trang 96 - 99)