مسیریابی یا Routing فرآیندی است که در آن مشخص میشود برای ارسال ترافیک شبکه و ارسال بستهها در امتداد زیر شبکه انتخاب شده باید از کدام مسیرها استفاده شود. در اصطلاحات شبکه کامپیوتری یک پروتکل مسیریابی مشخص میکند که نودهای موجود در شبکه (به ویژه روترها) چگونه باید با یک دیگر تعامل داشته باشند و کدام مسیرها برای ارسال ترافیک شبکه باید انتخاب شود. معمولا این نودها اطلاعاتی ابتدایی در مورد سایر نودهایی که مستقیما به آنها متصل میشوند را در اختیار دارند و این پروتکل مسیریابی است این اطلاعات را ابتدا به نودهای نزدیک و سپس به سایر نودها گسترش میدهد. به همین شیوه است که پروتکلهای مسیریابی اطلاعات توپولوژی شبکه را برای روترهای شبکه فراهم میکنند.
دو نوع پروتکل مسیریابی وجود دارد که تحت عنوان پروتکل داینامیک و استاتیک طبقه بندی میشوند. پروتکلهای استاتیک تنها با جداول مسیریابی که به صورت دستی پیکربندی شده است کار میکند، در حالی که پروتکلهای داینامیک جداول مسیریابی را بر اساس تغییرات انجام شده در توپولوژی شبکه بهروزرسانی میکند. پروتکلهای داینامیک بیشتر تحت عنوان متمرکز و توزیع شده طبقه بندی میشوند. پروتکلهای متمرکز برای تمام تصمیمات مسیریابی روی یک نود مرکزی تمرکز دارند، در حالی که در پروتکلهای توزیع شده تصمیم گیری برای تعیین مسیر به عهده هر کدام از دستگاههای موجود در شبکه گذاشته شده است.
همانطور که در بالا اشاره شد، پروتکلهای مسیریابی متمرکز به خانواده پروتکلهای مسیریابی داینامیک تعلق دارند. در یک شبکه که از پروتکل مسیریابی متمرکز استفاده میکند یک دستگاه پردازش مرکزی اجرا شده روی یک نود مرکزی اطلاعات (وضعیتهایی مثل وضعیت بالا/ پایین، ظرفیت و کاربرد فعلی) موجود در هر لینک موجود در این شبکه را جمع آوری میکند. سپس این دستگاه پردازش از این اطلاعات جمع آوری شده برای محاسبه جداول مسیریابی سایر نودها استفاده میکند. این نوع از پروتکل مسیریابی برای این محاسبات از یک پایگاه داده متمرکز موجود در نود مرکزی استفاده میکند. به عبارت دیگر، جدول مسیریابی در یک نود مرکزی نگهداری میشود که از آن در مواقعی که سایر نودها نیاز به تصمیم گیری در مورد مسیریابی دارند استفاده میشود.
پروتکلهای مسیریابی توزیع شده نیز به خانواده پروتکلهای مسیریابی داینامیک تعلق دارند. تحت یک پروتکل مسیریابی توزیع شده هر دستگاه موجود در شبکه مسئول اتخاذ تصمیم گیری های مسیریابی است. دو نوع پروتکل توزیع شده به نامهای جداسازی شده یا isolated (نودهایی که با یک دیگر ارتباط برقرار نمیکنند) و جداسازی نشده یا non-isolated (نودهایی که با یک دیگر ارتباط برقرار میکنند) وجود دارد. بنابراین با توجه به این زیر مجموعه دو کلاس از پروتکل وجود دارد که امروزه بیشتر از آن استفاده میشود که شامل پروتکل بردار فاصله و پروتکل وضعیت لینک است. پروتکل بردار فاصله اطلاعات اشتراکی نودها از قبیل مقصد و هزینه را در فواصل منظم یا در صورت نیاز فراهم میکند. پروتکل وضعیت لینک، اطلاعات وضعیت لینک را در طول شبکه منتشر میکند تا این امکان برای هر نود فراهم شود تا یک نقشه راه ترسیم کند.
اگر چه هر دو پروتکل مسیریابی متمرکز و توزیع شده زیر مجموعهای از پروتکل مسیریابی داینامیک هستند، اما در نحوه عملکرد آنها تفاوتهایی وجود دارد. تفاوت اصلی بین آنها این است که کدام دستگاههای موجود در شبکه مسئولیت تصمیم گیری در مورد مسیریابی را برعهده دارند. در مسیریابی متمرکز یک نود مرکزی است که مسئولیت تمام تصمیمات مسیریابی را برعهده دارد، در حالی که در پروتکل توزیع شده هر دستگاه مسئول تصمیم گیری در مورد مسیریابی است. پروتکلهای متمرکز در مقایسه با پروتکلهای توزیع شده با مشکلات بیشتری از قبیل داشتن یک نقطه شکست و احتمال ازدحام شبکه در اطراف نود مرکزی مواجه هستند. به همین دلایل پروتکلهای توزیع شده رایجتر هستند.