بخشی از مقاله
چکیده
امروزه شبکه حسگرهای بیسیم به سبب ویژگیهای کاربردی و سهولت استفاده به یکی از محبوبترین شبکههای بی-سیم تبدیل شدهاند. اما کوچکی حسگرهای بکار رفته در این شبکهها و امکان قرار دادن منبع انرژی جهت استفاده طولانی مدت در آنها، از محدودیتهای این شبکهها به حساب میآید. لذا در دهه اخیر، تلاشهای فراوانی در جهت ارائه راهحلهای مختلف برای کاهش مصرف انرژی در این شبکهها پیشنهاد شده است که از آن جمله میتوان به پروتکلهای متنوع در لایه MAC اشاره نمود.
پروتکل MAC میتواند باعث ارتقاء بهرهوری انرژی در ارسال داده و افزایش طول عمر شبکههای حسگر شود. در این تحقیق هدف ارائه پروتکلی برای لایه MAC است که با استفاده از آن بهصورت غیر همگام، زمان خواب و بیداری گرهها و همچنین ملاقات گرهها با یکدیگر - به جهت تبادل داده - را تنظیم نماید. در روش پیشنهادی هدف بهبود اندازه قطاعهای در نظر گرفته شده در پروتکل CMAC و استفاده از اندازههای لگاریتمی بهجای اندازه های ثابت قطاعها، میزان مصرف انرژی در گرهها و به تبع آن در کل شبکه حسگر بیسیم، کاهش یافته است. نتایج شبیهسازی های انجام شده نشان می دهد که روش پیشنهادی از حیث میزان مصرف انرژی نسبت به دیگر روشهای مبتنی بر پروتکل های MAC، برتری دارد.
-1 مقدمه
شبکههای حسگر بیسیم، بهعنوان یکی از مهمترین تکنولوژیهای قرن بیست و یکم مطرحشدهاند. این شبکهها به سبب کاربردهای گوناگون در زمینههای مختلف و سادگی استفاده، یکی از محبوبترین شبکههای بیسیم به شمار میآید. با توجه به پیشرفتهای اخیر در زمینه سیستمهای میکروالکترونیکی و تکنولوژی مخابرات بیسیم، حسگرهای کوچک، ارزان قیمت و هوشمند قادرند در یک ناحیه فیزیکی و شبکهبندی شده با استفاده از لینکهای بیسیم و اینترنت چیده شوند و فرصتهای بینظیری را برای طیف وسیعی از کاربردهای نظامی و غیرنظامی مانند مانیتورینگ محیطی، نظارت منطقه جنگی و کنترل فرآیند صنعتی فراهم آورند .[4-1]
این شبکها معمولاً در محیطهای جنگی برای مقاصد مختلفی مثل نظارت و دنبال کردن هدف به کار میرود. بینظم و بیقاعده بودن این محیطها، تعویض باطری اجزای شبکه حسگر را بهسختی ممکن میسازد. با توجه به کوچکی و سبکی حسگرهای موجود در این نوع شبکهها امکان قرار دادن منبع انرژی جهت استفاده طولانی در آنها وجود ندارد و باطریهای کوچک برای تغذیه حسگرها استفاده میشود. همچنین در بسیاری از کاربردها تعویض یا پر کردن باطری حسگرها غیرممکن میباشد. لذا بهبود مصرف انرژی در شبکههای حسگر بیسیم در سالهای اخیر در کانون توجه بسیاری از محققین و مراکز بزرگ تحقیقاتی قرارگرفته و راه و روشهای ذخیره انرژی در این شبکهها مرسوم میباشد.
کنترل دسترسی به رسانه - - MAC یکی از مسائل بحرانی در طراحی شبکههای حسگر بیسیم است و نقش مهمی را در ارتقاء کارایی انرژی و عملکرد شبکههای حسگر بیسیم ایفا میکند. لایه MAC یکی از لایههای پشته پروتکل است که طراحی درست آن باعث مصرف انرژی کمتر و درنتیجه افزایش طول عمر شبکه میشود. عملکرد اصلی پروتکل MAC، ایجاد دسترسی به یک رسانه مشترک بهمنظور اجتناب از تصادم گرههای مختلف است. علاوه بر این عملکرد اصلی، پروتکل MAC باید فاکتورهای دیگری را بهمنظور ارتقاء کارایی شبکه و تأمین سرویسهایی متناسب با کاربردهای مختلف، در طراحی خود بگنجاند. در شبکههای حسگر بیسیم این عوامل عمدتاً شامل بهرهوری انرژی، مقیاسپذیری، بهرهوری کانال، تأخیر، گذردهی و تسهیم عادلانه میباشد.
یکی از مهمترین عواملی که باید در طراحی MAC برای شبکههای حسگر بیسیم در نظر گرفته شود، بهرهوری انرژی است. بهرهوری انرژی به میزان انرژی مصرفشده به ازای هر مخابره موفقیتآمیز گفته میشود. ازآنجاکه گرههای حسگر معمولاً از طریق باتری تغذیه میشوند، غالباً تعویض یا شارژ مجدد باتریها برای گرههای حسگر دشوار یا غیرممکن است، بنابراین پروتکل MAC باید ازنظر انرژی کارآمد باشد تا بتواند نهتنها طول عمر تکتک گرههای حسگر، بلکه طول عمر کل شبکه را به حداکثر برساند.
انواع مختلفی از پروتکلهای MAC برای شبکههای حسگر ارائهشده است، اما هنوز هیچ پروتکلی استانداردسازی نشده است. دلیل اصلی آن، این است که شبکههای حسگر وابسته به کاربرد میباشند، بنابراین پروتکل MACمعمولاً به کاربرد موردنظر وابسته است. اکثر پروتکلهایی که برای لایه MAC شبکههای حسگر بیسیم ارائهشده است مبتنی بر استفاده از یک کانال است که چنین پروتکلهایی بهخصوص در پیادهسازی با چگالی بالای گرهها در شبکه، باعث افزایش تصادم، افزایش تأخیر انتها به انتها و در نهایت کاهش طول عمر شبکه میشود. برخی از پروتکلهای MAC نیاز به همگامسازی بین گرههای حسگر دارند.
پروتکلهای همگام معمولاً زمانبندی دارند که تعیین میکند چه هنگام یک گره باید بیدار باشد تا رسانه را جهت تبادل داده بررسی کند. چنین پروتکلهایی نمیتوانند به نحو مطلوبی با ترافیک یک گره وفق یابند. در پروتکل MAC ناهمگام، گرههای حسگر بهطور مستقل زمانهای بیداری خود را زمانبندی میکنند تا بهطور دورهای کانال را بهمنظور تبادل دادهها بررسی نمایند. در چنین پروتکلهایی، زمانی که گرهای بخواهد دادهای ارسال کند، داده آغازین را ارسال مینماید، طول داده آغازین باید بهاندازهای باشد که توسط گره گیرنده تشخیص داده شود.
پس از تشخیص داده آغازین، گره گیرنده بیدار میماند تا داده اصلی را که در ادامه داده آغازین ارسال میشود، دریافت نماید. چنین پروتکلهای غیر همگامی از سربار همگامسازی اجتناب میکنند، اما داده آغازین طولانی منتج به تأخیر بیشتر و مصرف انرژی بالاتر میشود. هیچیک از پروتکلهای اشاره شده فوق، یعنی پروتکلهای همگام و غیر همگام، شرایطی را که در آنیک گره ممکن است ناگهان از کار بیفتد در نظر نگرفتهاند. چنین شرایطی ممکن است اتصال شبکه را از بین ببرد و باعث شود که دادهها نتوانند بهخوبی منتقل شوند.
همچنین، اکثر پروتکلهای MAC ارائهشده بیشتر بر روی چگونگی تخصیص بهینه کانال تأکید داشتهاند و کمتر بر روی همگامسازی گرهها و مصرف انرژی آنها تمرکز شده است. لذا ارائه پروتکل MAC ناهمگامی که مسئله انرژی گرهها و طول عمر شبکه را مدنظر قرار دهد مسئلهی حلنشدهای است. در این تحقیق هدف ارائه پروتکلی برای لایه MAC است که با استفاده از آن بهصورت غیر همگام زمان خواب و بیداری گرهها و همچنین ملاقات گرهها با یکدیگر - جهت تبادل داده - را تنظیم نماید. در این تحقیق با توجه به کاربرد، از پروتکل C-MAC با هدف بهبود پارامترهای آن استفاده شده است.
-2 مقدمه
تاکنون روشهای بسیار متنوعی بهمنظور کاهش مصرف انرژی گرههای حسگر و در حالت کلی شبکه حسگر بیسیم به کار گرفتهشدهاند. در مواردی این روشها بر اساس اینکه در کدامیک از لایههای پشته پروتکل طراحیشدهاند، طبقهبندی میشوند. برای مثال در 18]،[19 مطالعات مروری جامعی بر پروتکلهای کاهش مصرف انرژی در لایه MAC، انجام گرفته است. همچنین روشهای بسیاری به کاهش ارتباطات در لایه شبکه پرداختهاند که به آنها پروتکلهای مسیریابی اطلاق میگردد. در [5] مطالعات مروری جامعی بر پروتکلهای مختلف مسیریابی و دستهبندی آنها انجام گرفته است.
پروتکل MAC میتواند باعث ارتقاء بهرهوری انرژی در ارسال داده و افزایش طول عمر شبکه حسگر شود. بهمنظور طراحی یک پروتکل MAC با مصرف انرژی پایین، باید منابع اصلی تلفات انرژی را در شبکههای حسگر بیسیم شناسایی کرد. تلفات انرژی از 4 منبع اصلی صورت میگیرد: تصادم، گوش دادن ناخواسته، کنترل سربار و گوش دادن در حالت بیکاری. پروتکلهای MAC متعددی برای شبکههای حسگر بیسیم ازجمله پروتکل رقابتی، پروتکل بدون رقابت و پروتکل ترکیبی ارائهشده است. پروتکل [6] S-MAC که YE و همکارانش ارائه کردهاند، در مورد شبکههای حسگری بیان شده است که در آن قسمت اعظم ارتباطات بین گرهها در حالت نظیر به نظیر رخ میدهد و ایستگاه مرکزی وجود ندارد. بنابراین کاربردهای آن دارای دورههای بیکار طولانی هستند.
برای کاهش گوش دادن در حالت بیکاری، S-MAC مکانیزم گوش دادن و خوابیدن دورهای را برای چرخه عملیات در هر گره ارائه میکند. S-MAC در مقایسه با استاندارد IEEE802.11 به لحاظ مصرف انرژی، بسیار کارآمدتر است، اما به دلیل نسبت ثابت زمان خواب به زمان بیداری، قسمتی از پهنای باند آن همیشه غیرقابل استفاده بوده و میزان تأخیر آن بالا خواهد بود. گوش دادن ناخواسته در ترافیک تکپخشی منع شده، اما برای انتشار یا ترافیک تشخیص حامل، کماکان یک مسئله حلنشده است. مشکل اصلی S-MAC تأخیر بالای آن در تحویل پیام است، زیرا S-MAC بهمنظور صرفهجویی در مصرف انرژی، تأخیر پیام را افزایش میدهد .[7]
پروتکل D-MAC، یک پروتکل کارآمد ازنظر انرژی با تأخیر پایین است که LU و همکارانش آن را با هدف اصلی جمعآوری داده در شبکههای حسگر بیسیم ارائه کردهاند. این پروتکل برای رفع مسئله تداخل هدایت پیشرو دادهها در تحویل دادههای چند پرشه ارائهشده و هدف اصلی آن دستیابی به هر دو عامل کارایی انرژی و تأخیر پایین است. برای تحویل دادهها از گره حسگر به سینک از طریق مسیر چندپرشه، اکثر پروتکلهای MAC که از دورههای کار فعال- خواب - مانند - S-MAC استفاده میکنند، از مسئله تداخل در هدایت پیشرو دادهها رنج میبرند به این دلیل که برخی از گرههای روی مسیر چندپرشه نمیتوانند از تحویل مداوم دادهها اطلاع داشته باشند.[8]
برای نمونه در مکانیزم تنظیم دوره کار صریح، گره موردنظر زمانی که ارسالهای مداوم را در همسایگی خود بیشازحد معمول دریافت کند، فعال میماند . ازآنجاکه محدوده گوش دادن ناخواسته گره به قابلیت حسگری رادیویی آن محدود میشود، گرهی که در خارج از محدوده گوش دادن ناخواسته فرستنده و گیرنده ارسال داده قرار دارد، نمیتواند از ارسال مداوم دادهها آگاه شود، بنابراین تا سیکل بعدی به خواب میرود. درنتیجه، فرآیند هدایت پیشرو دادهها در گرهی که پرش بعدی آن به سمت سینک در خارج از محدوده گوش دادن ناخواسته قرار دارد، مختل میشود.
بسته داده باید تا دوره فعال بعدی در صف منتظر بماند که این امر منجر به ایجاد تأخیر برای حالت خواب میشود. در مکانیزم تنظیم دوره کار صریح، از پیامهایی بهمنظور تنظیم مستقیم دوره کار استفاده میشود. ازآنجاکه پیامهای تنظیمکننده تنها میتوانند به تعداد محدودی از پرشها در دوره فعال ارسال شوند، گرهی که در خارج از این محدوده قرار دارد، بعد از دوره کار اولیه خود به خواب میرود، این امر باعث تداخل در ارسال دادهها خواهد شد.
پروتکلهای B-MACتقریباً یک هسته کوچک از دسترسی به رسانه را صورت میدهند و پروتکلی جهت دسترسی به رسانه با توان کمتری است. پروتکل B-MAC از سیگنال CCA و بستههای به تعلیق درآمده برای تعیین وضعیت کانال، از دانستههای لایه پیوند برای قابلیت اعتماد، و از شنود جهت کم کردن توان مورد استفاده در ارتباط بهره میگیرد. بههرحال این پروتکل جهت کاهش مصرف انرژی از روش نمونهبرداری ابتدائی وفق پذیر جهت کاهش و به حداقل رساندن گوش دادن به کانال بیکار استفاده میکند.
هر زمان که حسگری از خواب بیدار میشود، ابتدا گیرنده خود را روشن کرده و به کانال گوش میدهد، اگر فعالیتی را در کانال مشاهده کند گیرنده خود را تا پایان مدتزمان دریافت کامل بستههای ارسالی روشن نگه میدارد و پسازاین مدتزمان مجدداً به حالت خواب بازمیگردد. ولی اگر در مدتزمان تعیینشده که به کانال گوش میدهد هیچ بستهای را دریافت نکند مجدداً به حالت خواب بازمیگردد. بااینوجود، پروتکل B-MAC نمیتواند بهصورت مستقیم تضمینی برای مکانیسمهای جهت پاسخ گوئی به حل مشکل حسگرهای پنهان ارائه دهد .[9]
X-MAC یک پروتکل MAC توان کم برای شبکههای حسگر بیسیم ارائه میدهد. X-MAC با کاهش گوش دادن در حالت بیکار باعث بهرهوری انرژی میشود. این حالت زمانی رخ میدهد که یک گره حسگر دادهای برای ارسال نداشته و بهمنظور دریافت بستههای ارسالی در شبکه، به کانال ارسال گوش میدهد. در این شرایط، گره تا مدت طولانی در حالت بیکار باقی میماند. این امر منجر به هدر رفتن مقدار زیادی انرژی خواهد شد. بههرحال در بسیاری از پروتکلهای MAC مانند IEEE 802.11 ad hoc یا CSMA، گره برای دریافت بستههای داده باید به کانال گوش کند.