بخشی از مقاله
ارائه يک مسير امن در شبکه Ad-hoc با کشف و حذف سياه چاله تکي در الگوريتم AODV
چکيده - شبکه هاي ويژه سيار شامل مجموعه اي از گره ها ميباشد که ميتوانند آزادانه بدون داشتن هيچ گونه زيرساخت شبکه اي و از طريق فرکانس هاي راديويي با يکديگر در ارتباط باشند. سرعت در برپايي و بدون ساختار بودن اين شبکه ها باعث شده است که نقش بسيار مهمي را در زمينه هاي مختلف خصوصا کاربردهاي نظامي و اضطراري ايفا کنند. مبحث امنيت در اين شبکه ها امروزه يکي از مباحث مهم تحقيقاتي است . در اين مقاله بر روي امنيت در مسيريابي AODV تحقيق خواهد شد. همچنين سعي بر اين است تا روشي براي پروتکل مسيريابي AODV ارائه شود تا بتوان حملات سياه چاله را تشخيص و از بين برد. حمله سياه چاله زماني رخ ميدهد که گره خرابکار در شبکه به تمامي درخواست هاي مسير، بدون در نظر گرفتن داشتن يا نداشتن مسير به مقصد، جواب مثبت ميدهد، به اين ترتيب بعد از مدتي تمام داده هاي شبکه به سمت اين گره ها سرازير ميشوند و اين گره ها داده ها را دور ميريزند، در اين مقاله روشي براي تشخيص حمله سياه چاله ارائه مي - شود که ميتواند گره خرابکار را تشخيص دهد و سپس آن گره را حذف کند در نتيجه با حذف گره خرابکار يک مسير امن براي ارسال داده ها فراهم ميآيد.
کليد واژه - الگوريتم AODV، حمله سياه چاله ، شبکه هاي Ad-hoc، مسيريابي امن
١- مقدمه
يک شبکه ادهاک، يک مجموعه از گره هاي بيسيم است که قادر حملاتي که در اين نوع شبکه ها وجود دارد بنحوي با حملات هستند بدون داشتن زيربناي ثابت يا هرگونه ايستگاه مرکزي موجود در شبکه هاي ديگر متفاوت است و بالطبع سيستم - اوليه با همديگر ارتباط برقرار کنند [١٣]. مبحث امنيت در اين هايي که براي تشخيص حمله در اين شبکه ها استفاده مي - شبکه ها امروزه يکي از مباحث مهم تحقيقاتي است . تحرک گره - شود به نوعي با آنچه که در شبکه هاي سيمي متداول است ، ها، بيسيم بودن ارتباطات ، تغيير پوياي ساختار شبکه ، فقدان متفاوت ميباشد. يک حمله سياه چاله ، يک حمله سختي مديريت متمرکز براي بررسي رفتارها و عملکردها، فقدان خطوط است که به آساني بر ضد مسيريابي در شبکه هاي Ad hoc به دفاعي مشخص و محدوديت در توان مصرفي گره ها، بستر کار گرفته ميشود [١٣]. پروتکل مسيريابي AODV به حمله مناسبي را براي حملات مختلف عليه اين شبکه ها فراهم ميآورد. موسوم به سياه چاله آسيب پذير است . يک سياه چاله گره اي در اين شبکه ها به دليل عدم وجود زيرساخت ثابت ، گره ها هم است که هميشه قاطعانه به هر RREQ اي بوسيله پيغام بعنوان ميزبان و هم بعنوان مسيرياب عمل ميکنند و براي انجام RREP پاسخ ميدهد، حتي در مواقعي که در واقع هيچ فرآيند مسيريابي از پروتکل هاي مسيريابي مختلفي مانند AODV مسير معتبري به گره مقصد ندارد. از آنجا که گره سياه چاله استفاده ميکنند [١٢][١١][٣]. مجبور نيست جدول مسيريابياش را چک کند، در اغلب موارد اولين گره اي است که به RREQ پاسخ ميدهد، از اين رو گره مبدا، داده را توسط گره سياه چاله اي عبور ميدهد که همه بسته هاي داده را به جاي اينکه آن ها را به گره مقصد ارسال کند، دور ميريزد. به اين طريق گره بدرفتار ترافيک شبکه زيادي را به سمت خودش مسيريابي غلط ميکند و ميتواند با اندکي تلاش باعث يک حمله به شبکه شود [٨].
در اين حالت گره تشخيص ، تعداد بسته هاي حذف شده را نسبت به کل بسته هايي که با موفقيت ارسال شده ، محاسبه ميکند. اين نسبت با مقدار آستانه براي شناسايي هرگونه رفتار مخرب مقايسه ميشود. اگر هرگونه بدرفتاري يافته شود، گره تشخيص ، از گره بدرفتار اجتناب ميکند. همچنين علاوه بر تشخيص ، براي ديگر عمليات مضر انجام شده توسط گره بدرفتار در شبکه ، هر گره داراي يک حافظه بافر براي ضبط اطلاعات بسته هاي داده ميباشد و از يک جدول تعيين هويت گره سياه چاله (-Black Hole Identification Table)، استفاده ميکند. براي حذف گره سياه چاله از شبکه از جدول ايزوله (Isolation Table) استفاده ميکنيم .
٢- پروتکل مسيريابي AODV
AODV يکي از معروف ترين پروتکل هاي مسيريابي موردنياز است . اين پروتکل به هنگام نياز، کار مسيريابي را انجام ميدهد، يعني اگر مسير فعالي به مقصد نداشته باشد پروسه کشف مسير را آغاز ميکند. عدم وجود حلقه در AODV مشخصه اصلي اين پروتکل است .
براي کشف مسير، مبدا يک بسته RREQ (درخواست مسير) را به همسايه هاي نزديک خود ميفرستد، گره هاي همسايه نيز اين پيغام را تا زماني که پيغام به گرهي برسد که يا خودش مقصد باشد يا مسير فعالي به مقصد داشته باشد، ارسال ميکنند. هر گره مياني که بسته RREQ را دريافت ميکند، اگر قبلا آن را ملاقات نکرده باشد، آدرس خود را در هدر بسته مينويسد. بعد از کشف مسير مقصد با معکوس کردن آدرس هاي موجود در هدر بسته RREQ، بسته RREP (پاسخ مسير) را به مبدا ارسال مي - کند. مبدا نيز مسير با کمترين تعداد گام يا جديدترين شماره ترتيب را بعنوان مسير اصلي انتخاب کرده و بسته را از اين مسير به مقصد ارسال ميکند.
در فرآيند کشف مسير اگر گره مبدا حرکت کند بايد روال کشف مسير به طرف مقصد را دوباره انجام دهد ولي اگر يکي از گره - در اين مقاله روشي براي تشخيص حمله سياه چاله در پروتکل مسيريابي AODV ارائه ميشود که ميتواند گره خرابکار را تشخيص دهد و سپس آن گره را حذف کند، در نتيجه با حذف گره خرابکار يک مسير امن براي ارسال داده ها فراهم ميآيد. مکانيسم پيشنهاد ما بر مبناي حالت بيقاعده براي تشخيص گره هاي مخرب است .
هاي مياني حرکت کند، همسايه گره اي که حرکت کرده است ، متوجه شکست پيوند ميشود و يک بسته RERR (خطا) را به همسايه هاي خلاف جهت مسير ميفرستد تا اينکه به گره مبدا برسد و مبدا بتواند کشف مسير را در صورت نياز، دوباره انجام دهد[٢][٧] .
٣- حمله سياه چاله
گره اي که حمله سياه چاله را اجرا ميکند، منتظر ميماند تا يک RREQ از گره هاي همسايه دريافت کند، با دريافت RREQ بلافاصله و بدون بررسي کردن جدول مسيريابي خود به گره ارسال کننده RREQ، با ارسال يک RREP دروغين ، پاسخ ميدهد.
سياه چاله در RREP خود بيشترين شماره ترتيب و کمترين تعداد گام را قرار ميدهد و به اين ترتيب گره درخواست - کننده مسير را فريب ميدهد. گره اي که RREQ را فرستاده است با دريافت اين RREP فرض ميکند که بهترين مسير را کشف کرده است . بنابراين بسته هاي داده را براي سياه چاله ميفرستد. سياه چاله همه بسته ها را ازبين ميبرد، بدليل اينکه سياه چاله ، جدول مسيريابي خود را بررسي نميکند، قبل از ساير گره ها به گره درخواست کننده مسير، پاسخ مي - دهد. اگر سياه چاله موفق شود همه ترافيک شبکه را بدست آورد، باعث بوجود آمدن ممانعت از سرويس ميشود. حمله سياه چاله بردونوع است ، سياه چاله تکي و جمعي. در سياه چاله تکي يک گره سياه چاله در شبکه وجود دارد اما در سياه چاله جمعي بيش از يک گره سياه چاله وجود دارد. در اين مقاله حمله سياه چاله تکي بررسي ميشود [٩][٨].
٤- تحقيقات انجام شده
در [٤] يک بسته درخواست تائيد مسير يا CREQ به گره hop بعدي در جهت مقصد بفرستد. بعد از آنکه ، گره hop بعدي CREQ را دريافت کرد، حافظه مسير خودش را براي پيدا کردن يک مسير به مقصد جستجو ميکند. اگر مسيري داشته باشد آنگاه پاسخ تائيد مسير يا CREP را به همراه اطلاعات مسير به گره مبدا ميفرستد. گره مبدا با مقايسه اطلاعات CREP تشخيص ميدهد مسير موجود در RREP معتبر است يا خير، سربار اين روش بالاست . در [٩]، قبل از ارسال بسته هاي داده ، گره مبداء اختلاف بين شماره ترتيب ها را بررسي ميکند اگر بيش از حد بزرگ باشد، بديهي است که گره ، مخرب خواهد بود و از شبکه جدا خواهد شد. در غير اين صورت به سادگي انتقال بسته هاي داده به گره مقصد انجام ميپذيرد.
مشکل اين روش ارسال RREQها با فرکانس بالا به گره هاي مختلف است . در [١]، زمانيکه هر گره مياني در مقابل RREQ پاسخ ميدهد، گره منبع درخواست بيشتري(FREQ) درمورد hop بعدي به گره پاسخ دهنده ميفرستد و در مورد گره پاسخ دهنده و مسير به مقصد ميپرسد. با استفاده از اين روش مي - توان قابليت اعتماد گره پاسخ دهنده را تنها در صورتي که hop بعدي درست باشد، مشخص کرد. اين راه حل تنها يک حمله سياه چاله را در يک زمان تشخيص ميدهد. در [١٠]، گره مبدا با پيدا کردن بيش از يک مسير به مقصد، اعتبار گره اي که RREP را شروع کرده ، تائيد ميکند. گره مبدا صبر ميکند تا بسته RREP را از بيش از دو گره دريافت کند. وقتي گره مبدا RREP ها را دريافت کرد، در صورتي که در مسيرها به مقصد، hop هاي مشترک وجود داشته باشد، گره مبدا ميتواند مسير ايمن به مقصد را تشخيص دهد. اين روش باعث تاخير مسيريابي ميشود چون گره بايد منتظر بماند تا RREP را از بيش از دو گره دريافت کند. در [٦]، هر گره داراي عملکرد يادگيري جريان ترافيک در شبکه و ارزيابي معيار امکان حمله سياه چاله بر اساس نتايج يادگيري به منظور تشخيص گره مخرب است . اگر ارزش شاخص بزرگتر از آستانه از پيش تعيين شده باشد، گره تشخيص مي - دهدکه آنجا يک مهاجم سياه چاله وجود دارد. الگوريتم ارائه شده در [٥]، براي تشخيص حمله سياه چاله در يک MANET که بر اساس روابطي که داراي سطح اعتماد درستي در ميان گره ها است ، ميباشد. با اين حال ، در شبکه واقعي، تعيين مقدار مناسب براي رسيدن به سطح اعتماد بسيار دشوار است .
٥- روش پيشنهادي
مکانيسم پيشنهاد ما بر مبناي حالت بيقاعده براي تشخيص گره هاي مخرب است . گره تشخيص ، تعداد بسته هاي حذف شده را نسبت به کل بسته هايي که با موفقيت ارسال شده ، محاسبه 3 ميکند. اين نسبت با مقدار آستانه براي شناسايي هرگونه رفتار