امروزه تمایل به استفاده از شبکه های بی سیم روز به روز در حال افزایش است ، چون هر شخصی، هر جایی و در هر زمانی می تواند از آنها استفاده نماید . در سالهای اخیر رشد شگرفی در فروش کامپیوترهای laptop و کامپیوترهای قابل حمل بوجود آمده است . این کامپیوترهای کوچک،به چندین گیگا بایت حافظه روی دیسک ، نمایش رنگی با کیفیت بالا و کارتهای شبکه بی سیم مجهز هستند . علاوه بر این ، این کامپیوترهای کوچک می توانند چندین ساعت فقط با نیروی باتری کار کنند و کاربران آزادند براحتی آنها را به هر طرف که می خواهند منتقل نمایند . زمانی که کاربران شروع به استفاده از کامپیوترهای متحرک نمودند ، به اشتراک گذاشتن اطلاعات بین کامپیوترها یک نیاز طبیعی را بوجود آورد . از جمله کاربردهای به اشتراک گذاری اطلاعات در مکانهایی نظیر سالن کنفرانس ،کلاس درس ، ترمینالهای فرودگاه و همچنین در محیط های نظامی است .دوروش برای ارتباط بی سیم بین کامپیوترهای متحرک وجود دارد .استفاده از یک زیر ساخت ثابت که توسط یک Acces point خارج شد آنگاه در محدوده رادیویی Wireless Access point ها فراهم می آید . که در این گونه شبکه ها ، نودهای متحرک از طریق Access Point ها با یکدیگر ارتباط برقرار می کنند و هنگامیکه یک نود از محدوده رادیویی Access Pointدیگری قرار می گیرد . مشکل اصلی در اینجا هنگامی است که یک اتصال باید از یک Access Point به Access Point دیگری تحویل داده شود ، بدون آنکه تاخیر قابل توجهی به وجود آید ویا بسته ای گم شود .شکل دادن یک شبکه بی سیم Adhoc در بین کاربرانی است که می خواهند با هم ارتباط داشته باشند . این گونه شبکه ها زیر ساخت ثابتی ندارند و کنترل کننده و مرکزی نیز برای آنها وجود ندارد .شبکه های بی سیم Adhoc از مجموعه ای از نودهای متحرک تشکیل شده اند که این نودها قادرند به طور آزادانه و مداوم مکانشان را در شبکه تغییر دهند . نودهای موجود در شبکه Adhoc همزمان به عنوان client و مسیریاب عمل می کنند و با توجه به عدم وجود ساختار ثابت در این گونه شبکهها ، نودها مسئولیت مسیریابی را برای بسته هایی که می خواهند در شبکه ارسال شوند بر عهده دارند و در انجام این امر با یکدیگر همکاری می کنند .هدف ما نیز در اینجا بررسی و مطالعه بر روی خصوصیات و ویژگی های این تکنیکهای مسیر یابی است . لازم بذکر است پروتکل های مسیریابی متفاوتی برای استفاده در شبکه های Adhoc پیشنهاد شده اند که پس از مطالعه اجمالی برروی نحوه عملکرد هر یک از آنها ، قادر خواهیم بود آنها را بر طبق خصوصیاتشان قسمت بندی نمائیم .چرا نیاز به طراحی پروتکلهای مسیر یابی جدیدی برای شبکه های Adhoc وجود دارد ؟در شبکه های سیم دار تغییرات در توپولوژی شبکه بندرت اتفاق می افتد . بیشتر host ها و نودهای دیگر در یک جای مشخصی در شبکه قرار دارند ویک شکستگی در لینک زمانی اتفاق میافتد که یک قطع فیزیکی نظیر fail شدن host و یا خسارت فیزیکی کامل اتفاق بیفتد . برای این نوع شبکه های سیم دار با ساختار ثابت یک الگوریتم مسیریابی کلاسیک به خوبی کار می کند.برای اینکه اطلاعات جداول مسیریابی بروز باشند ،مسیریابها به صورت دوره ای اطلاعاتشان را با یکدیگر مبادله می کنند و در حالتی که یک failure ی در لینکی اتفاق بیفتد مسیرها باید مجدداً محاسبه شوند ودر شبکه منتشر گردند. این پروسه یک مدت زمانی طول می کشد که چنین چیزی در شبکه های سیم دار طبیعی است و آشکار است که چنین روشی در شبکه های Adhoc کار نخواهد کرد . در این شبکه ها از آنجایی که نودها مرتباً در حال حرکت هستند ، تغییراتی که در لینکها به وجود می آید نیز بسیار مداوم خواهد بود . به عنوان مثال زمانی را در نظر بگیرید که 2 تا نود در حالی با هم ارتباط برقرار کرده اند که مدام از همدیگر فاصله می گیرند . تا زمانی که هردوی آنها در محدوده ارتباطی همدیگر باشند این ارتباط می تواند حفظ گردد. ولی هنگامیکه فاصله بین نودها بیشتر شود دیگر این ارتباط نیز میسر نخواهد بود . حال تصور کنید که تعداد زیادی از نودها مطابق این سناریو رفتار نمایند ، در این حالت لینکهای زیادی شکل خواهند گرفت ومسیرهای جدیدی به سمت مقصدها محاسبه خواهد شد و در مقابل لینکهای بسیاری نیز شکسته خواهند شد و مسیرهای بسیاری نیز از بین خواهند رفت .از دیگر مواردی که می توان به عنوان دلایل نیاز به طراحی پروتکلهای مسیریابی جدید برای شبکههای Adhoc به آنها اشاره کرد عبارتند از :پروتکلهای مسیریابی شبکه های سیم دار بار محاسباتی بسیار زیادی را به صورت مصرف زیاد حافظه و همچنین مصرف زیاد انرژی بر روی هر کامپیوتر قرار می دهند .پروتکلهای مسیریابی مورد استفاده در شبکه های سیم دار از مشکلات به وجود آوردن حلقههای کوتاه مدت وبلند مدت رنج می برند .متدهایی که برای حل مشکلات ناشی از بوجود آوردن حلقه ها در پروتکلهای مسیریابی سنتی استفاده می شوند در شبکه های Adhoc عملی نیستند .این تفاوتها بین شبکه های سیم دار و بی سیم به راحتی آشکار می کند که یک پروتکل مسیریابی برای شبکه های Adhoc باید یکسری از مشکلات اضافه تری را حل نماید که این مشکلات در شبکه های سیم دار وجود نداشته است .در زیر لیستی از مواردی را که یک پروتکل مسیریابی باید آنها را مدنظر قرار دهد ذکر گردیده که بعضی از این خصوصیات مهمتر از خصوصیات دیگر هستند .به طور کلی اهداف طراحی پروتکلهای مسیریابی این است که پروتکلی ساخته شود که :وقتی که توپولوژی شبکه گسترش می یابد این پروتکل نیز بتواند همچنان مسیریابی را انجام دهد .زمانی که تغییراتی در توپولوژی شبکه به وجود می آید این پروتکل سریعاً قادر به پاسخگویی باشد .مسیرهایی را فراهم کند که بدون حلقه باشد .تاخیر را به حداقل رساند (باانتخاب مسیرهای کوتاه )برای اجتناب از تراکم چندین مسیر را از مبدأ به مقصد فراهم نماید .پروتکل طراحی شده برای مسیریابی در یک شبکه Adhoc باید خصوصیات زیررا دارا باشد .اجرای غیر مرکزی داشته باشد ، به این معنی که نباید به یک نود مرکزی وابسته باشد .استفاده از پهنای باند را کار اگرداند (overhead مسیریابی را می نیمم کند )هم از لینکهای یکطرفه و هم از لینکهای دو طرفه استفاده کند .تقسیم بندی پروتکلهای مسیریابی در شبکه های Adhocچندین معیار متفاوت برای طراحی و کلاس بندی پروتکلهای مسیر یابی در شبکه های Adhoc وجود دارد . به عنوان مثال اینکه چه اطلاعات مسیریابی مبادله می شوند ؟ چه زمانی و چگونه این اطلاعات مبادله میشوند ؟ چه زمانی و چگونه مسیرها محاسبه می شوند .که ما در این بخش در مورد هر یک از این معیارها مطالبی را بیان خواهیم کرد .مسیریابی Link State در مقابل مسیریابی DisTance Vectorهمانند شبکه های سیم دار عرف ، LSR و DVR مکانیزم های زیرین برای مسیریابی در شبکههای Adhoc بی سیم می باشند . در LSR اطلاعات مسیریابی به شکل بسته های Link State (Link State Packets) مبادله می شوند . LSP یک نود شامل اطلاعات لینکهای همسایگانش است . هرنود زمانی که تغییری را در لینکی شناسایی کند LSP هایش را فوراً در کل شبکه جاری می کند . نودهای دیگر بر اساس اطلاعاتی که از LSP های دریافتی شان بدست می آورند ، توپولوژی کل شبکه را ترسیم می کنند و برای ساختن مسیرهای لازم از یک الگوریتم کوتاهترین مسیر نظیردایجکسترا استفاده می کنند .لازم به ذکر است تعدادی از هزینه های لینکها از دید یک نود می توانند غیر صحیح باشند واین بدلیل تاخیر زیاد انتشار و قسمت بندی بودن شبکه است . این دیدهای ناسازگار از توپولوژی شبکه می تواند مارا به سمت تشکیل مسیرهایی دارای حلقه سوق دهد . اگرچه این حلقه ها عمرشان کوتاه است وبعد از گذشت مدت زمانی (مدت زمانی که طول می کشد تا یک Message قطر شبکه را بپیماید ) ناپدید می شوند . مشکلی که در LSR وجود دارد overhead بالای مسیریابی است که بدلیل حرکت سریع نودها در شبکه و در نتیجه تغییرات سریع در توپولوژی شبکه اتفاق می افتد .در مکانیزم DVR ، هر نود یک بردار فاصله که شامل شناسه مقصد ، آدرس hop بعدی ، کوتاهترین مسیر. می باشد را برای هر مقصدی نگهداری می کند . هر نود بصورت دوره ای بردارهای فاصله را با همسایگانش مبادله می کند . هنگامیکه نودی بردارهای فاصله را از همسایگانش دریافت می کند ، مسیرهای جدید را محاسبه می کند و بردار فاصله اش را نیز Update می کند و یک مسیر کاملی را از مبدأ تا مقصد شکل می دهد . مشکلی که در مکانیزم DVR وجود دارد همگرایی کند آن وتمایلش به تولید مسیرهای دارای حلقه است .Event – driven Update در مقابل Periodical Updateبرای تضمین اینکه اطلاعات مربوط به موقعیت لینکها و توپولوژی شبکه بروز باشد ، اطلاعات مسیریابی باید در شبکه منتشر شوند . براساس اینکه چه زمانی اطلاعات مسیریابی منتشر خواهند شد قادر خواهیم بود که پروتکلهای مسیریابی را به 2 دسته تقسیم بندی نمائیم . دسته اول پروتکلهایی هستند که به صورت دوره ای اطلاعات مسیریابی را منتشر می کنند و دسته دوم مربوط به پروتکلهایی است که در زمان وقوع تغییری در توپولوژی شبکه اطلاعات مسیریابی را انتشار میدهند .پروتکلهای Periodical Update ، اطلاعات مسیریابی را بصورت دوره ای پخش می کنند . این پروتکلها ،پروتکلهای ساده ای هستند و پایداری شبکه ها را حفظ می کنند و مهم تر از همه این است که به نودهای جدید امکان می دهند که اطلاعات مربوط به توپولوژی و موقعیت لینکها را درشبکه بدست آورند. اگرچه ،در صورتی که مدت زمان بین این بروز رسانی های دوره ای طولانی باشد آنگاه این پروتکلها نمی توانند اطلاعات بروز ر انگه دارند . از طرف دیگر ، در صورتی که این مدت زمان کوتاه باشد ، تعداد بسیار زیادی از بسته های مسیریابی منتشر خواهند شد که در نتیجه پهنای باند زیادی را از یک شبکه بی سیم مصرف خواهد کرد .