پروتکل های مبتنی بر مکان[۵۵]: اکثر پروتکل های مسیریابی برای شبکه های حسگر بی سیم ، به اطلاعات مکانی حسگرها نیاز دارند. در اکثر موارد این اطلاعات برای محاسبه فاصله بین حسگرها به منظور تخمین مقدار انرژی مورد نیاز برای ارسال داده ها به کار گرفته می شوند. با توجه به اینکه هیچ شمای آدرس دهی اساسی مثل IP در شبکه های حسگر بی سیم وجود ندارد ، اطلاعات جغرافیایی می تواند کمک بسیار مفیدی برای استفاده کارآمد از انرژی باشد. برخی از پروتکل های این دسته در ابتدا برای شبکه های adhoc طراحی شده اند ولی با این وجود در شبکه های حسگر بی سیم نیز کاربرد دارند. برخی از پروتکل هایی که برای شبکه های adhoc طراحی شده اند ، برای شبکه های حسگر بی سیم مناسب نیستند ، زیرا در طراحی آنها انرژی حسگرها مورد توجه قرار نگرفته است
در پروتکل های بر مبنای جریان شبکه ، مسیریابی و تعیین مسیرها به عنوان یک مساله جریان شبکه مطرح می شود و این مساله توسط روش های فعلی برای آن ، حل می شود. در پروتکل های بر مبنای Qos تاخیر ارسال داده به عنوان مساله اصلی مطرح می شود
در زیر چند پارامتر که برای پروتکل های مسیریابی در شبکه های حسگر بی سیم مورد نظر قرار می گیرند ، مطرح شده اند :
۲-۲ پارامترهای موردنظر در پروتکل های مسیر یابی
۲-۲-۱دینامیک شبکه
اکثرا حسگرها در شبکه های حسگر بی سیم ثابت هستند. فقط بعضی از شبکه ها وجود دارند که در آن برخی از حسگرها متحرک هستند. در حضور حسگرهای متحرک ، مساله پایداری مسیرها امر بسیار مهمی است. از طرفی خود پارامتر در حال اندازه گیری ، می تواند حالت استاتیک و یا دینامیک داشته باشد. مثلا در یک کاربرد تعقیب و تشخیص هدف ، شبکه حالت دینامیک به خود می گیرد، در صورتی که مثلا برای تشخیص آتش در یک جنگل دیگر اینطور نیست و شبکه حالت ثابت دارد. در حالت دینامیک ، داده ها از حسگرها به صورت متناوب به ایستگاه پایه فرستاده می شوند در صورتی که در حالت ثابت هر وقت پدیده ای رخ می دهد به ایستگاه پایه گزارش می شود.
۲-۲-۲جایگذاری حسگرها در شبکه
با توجه به کاربردهای مختلف ، جایگذاری حسگرها در شبکه های مختلف با یکدیگر متفاوت می باشند که این امر می تواند در کارایی کل شبکه تاثیر مستقیم بگذارد. در برخی از کاربردها ، مکان حسگرها از قبل تعیین شده است اما در اکثر شبکه های حسگر بی سیم به این صورت نیست.
در شبکه هایی که مکان حسگرها از قبل معین شده ، اطلاعات نیز از طریق مسیرهای از قبل تعیین شده ارسال می شوند. اما در شبکه هایی که مکان از قبل مشخص نشده باید حسگرها به صورت خودکار مسیریابی را انجام دهند. معمولا شبکه ها به این صورت هستند و برای این شبکه ها ایجاد زیر ساخت مناسب در کارایی سیستم تاثیر بسزایی دارد.
۲-۲-۳محدودیت انرژی
در طی مراحل طراحی زیر ساخت شبکه ، ایجاد مسیرها شدیدا تحت تاثیر محدودیت انرژی حسگرها قرار می گیرد. با توجه به اینکه توان ارسال به صورت بی سیم با توان دوم ( و بالاتر ) مسافت رابطه مستقیم دارد، استفاده از روش های ارسال چندگامی باعث می شود تا توان کمتری تلف شود. اما استفاده از این روش باعث ایجاد مشکلاتی در مدیریت همبندی و کنترل دسترسی به محیط انتقال می شود.
مدل انتقال اطلاعات
بنابر کاربرد یک شبکه حسگر بی سیم ، مدل انتقال اطلاعات در آن می تواند پیوسته[۵۶] ، بسته به اتفاق[۵۷] ، بسته به درخواست[۵۸] و یا ترکیبی از این ها باشد.
در حالت پیوسته ، هر حسگر اطلاعات خود را به صورت متناوب ارسال می دارد. در حالت بسته به اتفاق ، هر وقت اتفاقی از قبل تعیین شده در یک بخش از شبکه به وقوع بپیوندد، این اتفاق گزارش می شود. در حالت بسته به درخواست ، از طرف ایستگاه پایه یک درخواست در شبکه منتشر شده و به حسگرهای دلخواه می رسد. حسگرهای مورد نظر نیز پاسخ مناسب را می دهند. برخی از شبکه ها از ترکیب این مدل ها استفاده می کنند. از نقطه نظر کم کردن مصرف انرژی و پایداری مسیرهای ایجاد شده ، مدل انتقال اطلاعات بسیار مورد اهمیت است. مثلا در یک کاربرد تشخیص آتش در جنگل، استفاده از یک پروتکل با مدل انتقال اطلاعات بسته به اتفاق بسیار کارا و مناسب است.
۲-۲-۵ ترکیب داده [۵۹]ها:
بسیاری از حسگرها ممکن است داده های تکراری تولید کنند. با بهره گرفتن از تکنیک ترکیب داده ها می توان از حجم اطلاعات ارسالی تا حد زیادی کم کرد. با توجه به اینکه پردازش اطلاعات کمتر از ارسال اطلاعات توان تلف می کند، ترکیب اطلاعات بسیار مهم جلوه می کند و به همین دلیل در بسیاری از پروتکل ها از این تکنیک استفاده شده است. می توان با بهره گرفتن از تکنیک های پردازش سیگنال اطلاعات دقیق تری بدست آورد که به این روش Data Fusion می گویند که یکی از روش های آن روش شکل دهی پرتو می باشد
۲-۳ پروتکل های مسیریابی
۲-۳-۱ روش سیل آسا[۶۰]
در روش سیل آسا [۶۷] یک گره جهت پراکندن قسمتی از داده ها در طول شبکه ، یک نسخهاز داده مورد نظر را به هریک از همسایگان خود ارسال میکند. هروقت یک گره ، داده جدیدی دریافت کرد، از آن نسخه برداری میکند و داده را به همسایه هایش (به جز گرهی که داده را از آن دریافت کرده است.)ارسال میکند.الگوریتم زمانی همگرا میشود یا پایان می یابد که تمامی گره ها یک نسخه از داده را دریافت کنند.
زمانی که طول میکشد تا دسته ای از گره ها مقداری از داده را دریافت و سپس ارسال کنند، یک دور نامیده میشود.الگوریتم سیل آسا در زمانO(d) دور، همگرا میشود که d قطر شبکه است چون برای یک قطعه داده d دور طول میکشد تا از یک انتهای شبکه به انتهای دیگر حرکت کند . سه مورد از نقاط ضعف روش ارسال ساده جهت استفاده از آن در شبکه های حسگر در زیر آورده شده است[۶۸]:
انفجار[۶۱]: در روش سنتی سیل آسا ، یک گره همیشه داده ها را به همسایگانش، بدون در نظر گرفتن اینکه آیا آن همسایه، داده را قبلا دریافت کرده یا خیر، ارسال میکند.این عمل باعث بوجود آمدن مشکل انفجار میشود که در شکل ۲-۳ آورده شده است.در این شکل گرهA پخش سیل آسا را با ارسال داده ها به همسایگانش یعنی گره هایB,C آغاز میکند.این گره ها داده ها را دریافت یکنند و یک نسخه از آن را به همسایه مشترکشان یعنی گرهD ارسال میکنند.
شکل ۲-۱ :پدیده انفجار[۸۰]
هم پوشانی:حسگرها معمولا نواحی جغرافیایی مشترکی را پوشش میدهند و گره ها معمولا قطعه داده هایی از حسگرها را دریافت میکنند که باهم همپوشانی دارند. شکل۲-۲ نشان میدهد که هنگامی که دو گره A,B داده هایی را که هم پوشانی دارند دریافت میکنند و آن را به همسایه مشترکشانC ارسال میکنند چه اتفاقی می افتد.الگوریتم در این حالت ، انرژی و پهنای باند را جهت ارسال دو نسخه از یک داده به همان گره ، هدر میدهد.
عدم اطلاع از منابع: در روش سیل آسا، گره ها بر اساس میزان انرژی موجود خود در یک زمان ، فعالیتهای خود را تغییر نمیدهند در صورتیکه یک شبکه از حسگرهای خاص منظوره ،میتواند از منابع موجود خود آگاهی داشته باشدو ارتباطات و محاسبات خود را با شرایط منابع انرژی خود مطابقت دهد.
شکل۲-۲:پدیده هم پوشانی[۸۰]
۲-۳-۲ روش شایعه پراکنی[۶۲]
روش شایعه پراکنی [۶۷]، یک جایگزین برای روش سیل آسا سنتی محسوب میشود که از فرایند تصادف برای صرفه جویی در مصرف انرژی بهره میبرد.به جای ارسال داده ها به صورت یکسان، یک گره شایعه پراکن ، اطلاعات را بصورت تصادفی تنها به یکی از همسایگانش ارسال میکند.اگر یک گره شایعه پراکن ، داده ای را از همسایه اش دریافت کند، میتواند درصورتی که همان همسایه به صورت تصادفی انتخاب شد، داده را مجددا به آن ارسال کند.علت این امر در شکل ۲-۳ بحث شده است.دراین شکل اگر گرهD هیچگاه داده خود را به سمت گرهB باز نگرداند ، گرهC هیچگاه داده را دریافت نخواهد کرد.
شکل۲-۳: روش شایعه پراکنی [۶۷]
هرگاه داده در روش سیل آسا کلاسیک، به یک گره با مرتبه بالا برسد، نسخه های بیشتری از داده شروع به پراکنده شدن در داخل شبکه میکنند تا وقتی که این کپی ها در اثر تصادم به انتها برسد در صورتیکه روش شایعه پراکنی جلوی چنین تصادم هایی را میگیرد چون در این روش تنها یک کپی از داده در هر گره ایجاد میشودو هرچه تعداد کپی های ایجاد شده کمتر باشد احتمال تصادم این کپی ها کمتر میشود.
درحالیکه روش شایعه پراکنی اطلاعات را به کندی در شبکه پراکنده میکند، سرعت مصرف انرژی آهسته ای هم دارد .از آنجایی که هر گره داده را به صورت تصادفی ، تنها به یکی از همسایه های خود ارسال میکند.سریعترین سرعت پخش داده ها دراین روش،برابر یک گره در هر دور است.بنابراین باوجود C منبع در شبکه، حداکثر سرعت انتشار در این روش برابر C گره در هر دور است.
درنهایت اگرچه روش شایعه پراکنی میتواند تاحد زیادی از تصادم جلوگیری کندولی این روش، هیچ راه حلی برای جلو گیری از همپوشانی ارائه نکرده است.
۲-۳-۳ روش SPIN
SPIN ؛ از خانواده پروتکل های داده گرای مبتنی بر مذاکره در WSN می باشد. هدف اصلی، انتشار کارای مشاهدات جمع آوری شده توسط سنسورها به سایر گره های سنسور دیگر در شبکه می باشد. معمولاً پروتکل های ساده ی سیل آسا و gossiping ، برای انتشار اطلاعات در WSNپیشنهاد می شود. در تکنیک سیل آسا هر گره یک کپی از بسته ی داده را به همه ی همسایگانش ارسال می دارد آن بسته به همه گره ها در شبکه برسد. از طرف دیگر gossiping ، از تصادفی سازی بهره گرفته و جلوی تکثیر بی رویه بسته های یکسان در شبکه را می گیرد و نیاز است که گره گیرنده بسته ، آن را به همسایه انتخابی به صورت تصادفی اش بفرستد. هر دو تکنیک ساده و در عین حال بی نیاز از یادگیری و حفظ توپولوژی شبکه اند.
نقایص تأخیر بسته ها و به هدر دادن منابع، در الگوریتم های ذیل، همراه با افزایش سایز شبکه؛ و ترافیک Load ، کارآیی آنها را به شدت افت می دهد. این مانع معمولاً توسط همپوشانی جغرافیایی و ترافیک انفجاری انجام می شود. ترافیک انفجاری یعنی اینکه چندین کپی از یک بسته ی داده به یک نود در شبکه ارسال شود. همپوشانی جغرافیایی یعنی اینکه چندین گره با یک ناحیه ی جغرافیایی را برای انتشار بسته های اطلاعاتی یکسان به گره های دیگر در شبکه انتخاب کنند.
این پروتکل ها رفتارشان را نمی توانند تغییر دهند تا با شرایط جدید تطابق پیدا کرده و پویا باشند. این فقدان سبب کاهش طول عمر شبکه و مصرف بی رویه ی انرژی می شود. هدف اصلی SPIN برطرف کردن نقایص رایج در پروتکل های انتشار داده ی امروزی است.
اصل مهم در این خانواده از پروتکل ها، مذاکره بر سر داده و وفق پذیری با منابع شبکه است. مذاکره بر سر داده یعنی اینکه گرهها محتوای داده را بررسی کرده و یک تم جدید به نام Metadata را درباره ی داده ها ( داده درباره ی داده ) تشکیل می دهند که توصیفی از داده ای است که قرار است ارسال شود.
و گره ها می توانند داده های خود را از طریق دسترسی به Metadata انتخاب بکنند و آن را آگهی کنند و بدین ترتیب داده ها فقط به گره هایی که نیازمند آن داده ها هستند ارسال می شود، همچنین موجب حذف ترافیک انفجاری و کاهش بسته های تکراری می شود.
از طرف دیگر استفاده از Metadata،احتمال همپوشانی را نیز از بین می برد البته با شرایط که گره ها می توانند درخواست هایشان را محدود به داده هایی بکنند که دقیقاً لازم دارند.
دو راه کار کلیدی دسته پروتکلهای SPIN برای برطرف کردن مشکلات مطرح شده در روش کلاسیک سیل آسا،استفاده از مذاکره و تطبیق منابع است.برای برطرف کردن مشکل تصادم و همپوشانی،گره هایSPIN، از مذاکره بایکدیگر قبل از ارسال اطلاعات استفاده میکنند.همچنین گره ها قبل از ارسال داده ها ، منابع خود را ارزیابی میکنند.هرگره حسگر،مدیر منابع مخصوص خودش را دارد که مصرف انرژی را دنبال میکند.برنامه های کاربردی قبل از ارسال یا پردازش داده ها مدیر منابع را بررسی میکنند که این امر به حسگرها کمک میکند تا بعضی از فعالیتهای خاص را هنگام کمبود انرژی متوقف کنند.
شبه داده ها که در SPIN به عنوان نماینده داده ها تولید میشوندباید حجمی کمتر از داده هایی که نماینده آنها هستند داشته باشند.همچنین اگر دو قطعه از داده ها باهم قابل تفکیک باشند،باید شبه داده های آنها نیز این خاصیت را داشته باشند.
گره ها درSPIN برای ارتباط با یکدیگر از سه نوع پیغام استفاده میکنند:
-
- ADV-برای تبلیغ داده های جدید استفاده میشود.وقتی یک گره SPIN ، داده ای برای به اشتراک گذاشتن در اختیار دارد ، این امر رامیتواند با ارسال شبه-داده مربوطه تبلیغ کند.
- REQ–جهت درخواست اطلاعات استفاده میشود.یک گره SPIN میتواند هنگامی که میخواهد داده حقیقی را دریافت کند ازاین پیغام استفاده کند.