بخشی از مقاله
چکیده
در روش پیشنهادي از مسیریابی چندگامه براي ارسال بسته استفاده کردهایم طوریکه به جاي در نظر گرفتن انرژي نودهاي همسایه براي انتخاب مناسبترین گره براي ارسال داده، براي هر کدام از همسایه ها، تابع هزینه محاسبه میکنیم و بر اساس آن مسیریابی انجام میدهیم. براي هر بار ارسال بسته از بافر، هر گره روي آن بسته الگوریتم تشخیص نفوذ را اعمال میکند. دادهها یکبار طبق منطق فازي و یکبار هم با ماشین بردار پشتیبان جهت تشخیص نفوذ بصورت توزیع شده بررسی میشوند. در روش ارائه شده نرخ انتقال بسته، میانگین انرژي باقیمانده گرهها نسبت به روشهاي ماشین بردار پشتیبان و منطق فازي بهبود یافته است.
-1 مقدمه
شبکه هاي حسگر بیسیم، از تعداد زیادي گره حسگر تشکیل یافته اند که در آنها محدودیت انرژي و قدرت پردازش وجود دارد. به همین جهت گره ها، دادههاي خود را جهت آنالیز به پایگاه داده ارسال میکنند. از طرفی به علت سایز کوچک گرهها، تا یک مقدار محدودي میتوانند انرژي در خود ذخیره کنند. در روش پیشنهادي براي ارسال بسته بصورت چندگامه، براي هر گره همسایه تابع هزینه محاسبه میشود. پارامترهاي دخیل در تابع هزینه نیز عبارتند از : فاصله بین گره همسایه تا چاهک 1، انرژي باقی مانده گره همسایه، تعداد دفعات ارسال بسته از گره فعلی به گره همسایه. هر گره همسایهاي که تابع هزینه بیشتري داشته باشد، بسته به آن ارسال میشود.
پارامترهاي فوق باعث تصمیم گیري بهتر در انتخاب گره همسایه میشود. از طرفی بحث امنیت در شبکه هاي حسگر بیسیم مطرح است. تاکنون روشهاي مختلفی براي تشخیص نفوذ ارائه شده است از جمله تشخیص نفوذ مبتنی بر ماشین بردار پشتیبان. از آن جایی که داده هاي موجود در شبکه روز به روز پیچیده تر میشوند و تکنیک هاي دسته بندي بصورت صفر و یک مطلق تصمیم میگیرند از این رو میتوان براي تحلیل بهتر داده هاي شبکه، با استفاده از قواعد فازي احتمالهاي مختلفی براي حمله در نظر گرفت.
در این پژوهش، با تعریف قواعد فازي براي رفتارهاي شبکه وترکیب آن با تکنیک ماشین بردار پشتیبان2 و اعمال یک روش مسیریابی جدید بر اساس تابع هزینه الگوریتم تشخیص نفوذي ارائه شده است که نسبت به الگوریتم SVM و تکنیک منطق فازي، کارایی بهتري دارد. در روش جدید نرخ تحویل بسته و میانگین انرژي باقیمانده گرهها بهبود یافته است. در قسمت 2، کارهاي انجام شده، در قسمت 3، الگوریتم پیشنهادي، در قسمت 4 آزمایشات انجام یافته و در قسمت آخر، نتیجهگیري شرح داده می-شود .
2 کارهاي پیشین
ژائو و تیان و همکارانش، روشی براي تشخیص نفوذ ارائه دادند که با الگوریتم ژنتیک پارامترهاي SVM را بهبود داده شده است.[1] دقت تشخیص این روش بالاتر از SVM است ولی انواع جدید حملات را تشخیص نمی دهد فقط حملات از قبل تعریف شده را تشخیص میدهد. روش کار چنین است که با استفاده از SVM، نمونه هاي داده را جمع آوري میکنیم سپس از روي آنها باید مشخصه ها یا ویژگی هایی را که در تشخیص رفتارهاي آنومال مؤثر هستند را استخراج کنیم.
از بین مشخصه هاي استخراج شده آنهایی را که بیشترین تأثیر در تشخیص رفتار آنومال دارند را به عنوان مشخصه هاي کلیدي انتخاب می کنیم یعنی مشخصه هایی با بیشترین درجه وابستگی به رفتار آنومال. مشخصه هاي کلیدي انتخاب شده به عنوان بردارهاي ورودي SVM محسوب میشوند . از الگوریتم ژنتیک هم براي بهبود عملکرد SVM استفاده میشود. مونته آن و واله آن وهمکارانشان، روشی براي تشخیص نفوذ ارائه دادند که از ترکیب کلاسبندي بر اساس هزینه و SVM استفاده میکند.[2] درواقع براي SVM یک الگوریتم کلاسبندي ارائه داده اند که با تکثیر آن در نمونه کلاسها در مرحله یادگیري، عملکرد SVM را بهبود میبخشد.
روش جدید باعث حداقل شدن هزینه کلاسبندي میشود. به جاي ایجاد نمونه دادههاي متعادل از طریق نمونه گیريهاي مختلف، این روش، مسائل یادگیري نامتعادل را با استفاده از ماتریسهاي هزینه مختلف در نظر میگیرد که بیانگر هزینههاي مجموعه دادههاي مشخص کلاسبندي نشده است. بآاو و همکارانش روشی براي تشخیص نفوذ مبتنی بر SVM پیشنهاد دادند که تشخیص نفوذ ناهنجاري و تشخیص نفوذ بدرفتاري را با هم ترکیب میکند.[3] این سیستم از چهار قسمت تشکیل شده است :
واحد جمع آوري داده و پیش پردازش آنها ، واحد یادگیري، واحد تشخیص و واحد تصمیم گیري واحد تشخیص از واحد تشخیص نفوذ بدرفتاري و واحد تشخیص نفوذ آنومالی تشکیل شده است که هر دوي آنها مبتنی بر SVM هستند. در حالیکه توابع داخلی مختلفی دارند و SVMهاي مختلفی را اعمال میکنند .واحد جمع آوري داده و پیش پردازش آنها، مسئول جمع آوري دادههاي مورد نیاز و پردازش و انتقال آنها هستند. هو و همکارانشان یک ماشین بردار پشتیبان روباست1 براي تشخیص نفوذ ارائه دادند. که کارایی FSVM را با SVM معرفی و با روش کلاسبندي نزدیک ترین همسایه مقایسه کرده است. به زبان ساده، SVM یک شبکه عصبی شبیه پرستپرون میباشد و براي کلاسبندي الگوهایی که بصورت خطی جداپذیر هستند، بسیار مناسب است .
-1-3 الگوریتم مسیریابی
برخی از روش ها از قبیل [7],[6],[8] فقط از پارامتر "انرژي باقیمانده گره بعدي"، برخی از روشها از قبیل [9],[10],[11] فقط از پارامتر "فاصله تا چاهک" و برخی دیگر نیز فقط از پارامتر "ترافیک شبکه" [12],[13] جهت تعیین مناسبترین مسیر جهت ارسال بسته از گره فعلی به سمت چاهک استفاده مینمایند. اما به دلیل اینکه به نظر میرسد استفاده از هر سه پارامتر میتواند تأثیر بسیار شایانی در نتایج مسیریابی در این نوع شبکه ها داشته باشد، در روش مسیریابی پیشنهادي از هر سه پارامتر با درجه اهمیت متفاوتی استفاده شده است.
در واقع چون هر گره همسایه احتمال دارد، مهاجم باشد پس سعی میکنیم بستهها را عادلانه بین همسایهها ارسال کنیم تا در صورت مهاجم بودن یک همسایه فقط قسمتی از دادهها آسیب ببیند. پارامتر انرژي را هم در فرمول پیشنهادي دخیل کردهایم تا مصرف انرژي را بین نودها متعادل کنیم و از طرفی در مصرف انرژي، فاصله گره تا ایستگاه پایه نیز مهم است پس از آن هم استفاده کردهایم. موارد فوق در قالب یک فرمول با نام تابع هزینه ارائه شده است. داده اند که مشکلات روش ترکیبی خوشه بنديK–means / K–Medoids و کلاسبندي Naive Bayes را حل میکند.[5] روش پیشنهادي، از طریق بکار بردن SVM با حفظ کیفیت بالاي خوشه بندي K–Medoids، نیاز به نمونههاي زیاد را نسبت به روش قبلی کاهش داده است.
-3 روش پیشنهادي
مصرف انرژي مهمترین عاملی است که در طراحی پروتکلهاي شبکههاي حسگر بیسیم در نظر گرفته می شود . هر حسگر براي حس محیط، پردازش و انتقال اطلاعات انرژي مصرف میکند و پرمصرفترین عمل در گرههاي حسگر انتقال اطلاعات میباشد. بنابراین گرههاي شبکه حسگر باید توان مصرفی کمی داشته باشند. از طرفی با رشد تکنولوژي و پیچیدهتر شدن دادهها انواع حملات نیز پیچیده تر شدهاند پس نیاز به سیستمهاي تشخیص نفوذ با دقت بالا بیش از پیش شده است. در روش پیشنهادي براي بالا بردن کارایی دو ایده اعمال شده است:
1. ارائه فرمولی با عنوان تابع هزینه جهت بهبود در مسیریابی .
2. در مرحله تشخیص نفوذ، ترکیب روش ماشین بردار پشتیبان با منطق فازي. با اعمال این ایدهها کارایی الگوریتم، هم نسبت به ماشین بردار پشتیبان æ هم نسبت به روش منطق فازي بهبود یافته است .
در واقع بسته به آن گره از گرههاي همسایه ارسال می شود که انرژي بالاتري نسبت به سایرگره هاي همسایه داشته، فاصله آن گره تا ایستگاه پایه کمتر از فاصله گرههاي دیگر تا ایستگاه پایه بوده و همچنینتعداد دفعات قبلاً ارسال داده از گره فعلی به گره همسایه کمتر از تعداد دفعات ارسال بسته به گرههاي دیگر است. به دلیل اینکه بسته باید تا حد امکان به گرهی ارسال شود که انرژي قابل قبولی دارد و احتمال اتمام انرژي آن گره و از بین رفتن بسته ارسال شده پایین می باشد از مشخصه انرژي باقیمانده گرههاي همسایه در روش مسیریابی پیشنهادي استفاده میشود.
مشخصه فاصله نیز به این دلیل مورد استفاده قرار گرفته است که بسته میبایست به گرهی از گرههاي همسایه ارسال شود که تا حد امکان فاصله کمتري نسبت به سایرگرههاي همسایه تا ایستگاه پایه داشته باشد تا هم ترافیک شبکه را کاهش دهد و هم بستهها در زمان کمتري به ایستگاه پایه تحویل داده شوند. همچنین تعداد دفعات ارسال نیز به این دلیل در رویه مسیریابی پیشنهادي بکار برده شده است که اگر برخی از گرههاي همسایه به عنوان گره جاسوس در شبکه حضور داشته باشند ارسال بسته ها بطرف آن در حد پایینتر یا متوسط باشد تا بتوان تا حد امکان تعداد بسته هاي ارسال شده به آن گره جاسوس را کاهش داد.
-2-3 تشخیص نفوذ
تشخیص نفوذ بصورت توزیع شده توسط گرههاي حسگر اعمال میشود. روش پیشنهادي یک روش ترکیبی از ماشین بردار پشتیبان [14] و منطق فازي [15] است. در واقع دادههاي ارسال شده یکبار با روش ماشین بردار پشتیبان و بار دیگر با احتمال مهاجم بودن روش منطق فازي محاسبه می-شود. سپس پاسخ آنها با هم ترکیب شده، مشخص میکند که گره فوق مهاجم است یا خیر .
-1-2-3 روش تشخیص نفوذ با روش ماشین بردار پشتیبان
براي پیاده سازي ماشین بردار پشتیبان، درایههاي بردار ویژگی را به ترتیب "نرخ انتقال بسته" [16]، "سطح انرژي" [17]،[18],[16] ، "سطح بافر" [17] تعریف کردهایم. و با جایگذاري متغیرهاي فوق در فرمول ماشین بردار پشتیبان، گره را برچسب گذاري میکنیم . کنترلر فازي پیشنهادي هم جهت تشخیص حمله از پارامترهاي ورودي "نرخ انتقال بسته"، "سطح انرژي" و "سطح بافر" و همچنین از پارامتر خروجی، "احتمال جاسوسی" استفاده مینماید. در صورتیکه احتمال جاسوسی در گرههاي شبکه از 75 درصد بالا باشد، به عنوان گره مخرب تشخیص داده میشود و هیچ بستهاي از طرف گره فعلی به آن گره ارسال نخواهد شد. این امر توسط چاهک انجام میشود و به همه گرههاي شبکه ارسال میگردد .
• متغیرهاي کلامی براي نرخ انتقال بسته : کم، عادي، زیاد، خیلی زیاد
• متغیرهاي کلامی براي سطح انرژي : خیلی پایین، پایین، متوسط، بالا
• متغیرهاي کلامی براي سطح بافر : خیلی کم، کم، عادي، زیاد
• متغیرهاي کلامی براي احتمال جاسوسی : خیلی پایین، پایین،
متوسط، بالا و خیلی بالا حال بر اساس پارامترهاي تعریف شده، قواعد فازي را براي تشخیص نفوذ تعریف میکنیم. قواعد بکار رفته در جدول 1-3 نشان داده شده است.
-3-2-3 روش تشخیص نفوذ ترکیبی
در مکانیزم ترکیبی به این صورت عمل میشود، در صورتی که یک گره هم توسط کنترلر فازي پیشنهادي و هم توسط روش مبتنی بر SVM به عنوان گره مخرب تشخیص داده شود، به عنوان گره مخرب برچسب گذاري میشود.