چرا CEF بهینه ترین روش Packet Switching است

نویسنده: علیرضا خرمی
2 ماه پیش

چرا CEF بهینه ترین روش Packet Switching است

دستگاه های شبکه دارای سه Plane مختلف هستند که عملیات خود را در این سه بخش انجام می دهند.

  • Management Plane
  • Data Plane
  • Control Plane

Management Plane

در این بخش عملیات مربوط به مدیریت دستگاه صورت می گیرد. برای مثال ادمین شبکه از طریق SSH به دستگاه متصل می شود این اتصال به عنوان یک عمل مدیریتی محسوب می شود که توسط Management Plane مدیریت می شود.

Data Plane

این Plane فقط ترافیک های عبوری از دستگاه را مدیریت می کند، به این صورت که ترافیک های ورودی و خروجی را ارسال و دریافت می کند به عنوان مثال ترافیک کلاینت به سمت وب سرور در شبکه از این قسمت عبور می کند.

Control Plane

هدف این Plane تصمیم گیری جهت ارسال بسته ها است. عملکرد پروتکل های مسیریابی را به عنوان یک مثال در این بخش می توان نام برد.

CEF

از سه Plane مذکور Data Plane و Control Plane نقش اصلی را در سرعت و ارسال ترافیک بر عهده دارند. در این دو Plane سه روش پردازشی به نام Packet Switching بر روی ترافیک هایی که به اینترفیس ورودی روتر وارد و از اینترفیس خروجی آن خارج می شوند وجود دارد که در ادامه متن بررسی شده اند.

به صورت پیش فرض روتر های سیسکو سه مدل از Packet Switching را پشتیبانی می کنند:

  • Process Switching
  • Fast Switching
  • Cisco Express Forwarding (CEF)

عملکرد Process Switching

هنگامی که روتر بسته ای را مسیریابی می کند هدر لایه 2 آن را حذف نموده و هدر لایه 3 آن را بررسی می کند، سپس تصمیم می گیرد بسته را چگونه ارسال نماید. پس از انتخاب مسیر، هدر لایه 2 دوباره باز نویسی می شود یعنی هدر لایه 2 (که شامل تغییر آدرس های MAC مبدا و مقصد و محاسبه دو باره CRC می باشد) به بسته اضافه می گردد و بسته به اینترفیس خروجی مربوطه ارسال می شود.

با استفاده از Process Switching پردازنده روتر مستقیما در عمل پردازش ارسال بسته درگیر می شود (در Control Plane) که این کار منجر به مصرف منابع و در نتیجه پایین آمدن عملکرد روتر خواهد شد.

Process Switching

عملکرد Fast Switching

Fast Switching از حافظه سریعی که در Data Plane قرار دارد استفاده می کند. این حافظه (Fast Cache) حاوی اطلاعاتی در مورد چگونگی ارسال ترافیک از جریان داده های مختلف است. همانطور که در شکل زیر قابل مشاهده است اولین بسته از جریان ترافیکی که به روتر می رسد توسط CPU پردازش می شود. پس از اینکه روتر تصمیم گرفت که اولین بسته از جریان ترافیکی را چگونه ارسال کند، اطلاعات ارسال بسته در Fast Cache ذخیره می گردد. بسته های بعدی در همان جریان داده بر اساس اطلاعات موجود در حافظه Fast Cache ارسال خواهند شد در نتیجه Fast Switching به طور چشم گیری باعث کاهش مصرف CPU روتر می شود.

Fast Switching

عملکرد Cisco Express Forwarding

Cisco Express Forwarding (CEF) شامل دو جدول در Data Plane است. Forwarding Information Base (FIB) که وظیفه نگه داری اطلاعات ارسال پکت ها در لایه 3 بر عهده آن می باشد. این جدول با استفاده از IP Routing Table که در آن اطلاعات Destination Network ،Destination Subnet و IP Next-Hop همراه با اینترفیس خروجی قرار می گیرد، کامل می شود.

جدول Adjacency آدرس Next-Hop IP و هدر Layer 2 مربوط به روتر همسایه را ثبت می کند، برای تکمیل اطلاعات لایه دو به جدول TCAM رجوع می نماید. در این مرحله روتر اطلاعات کافی برای بازنویسی هدر بسته ها و ارسال آنها از اینترفیس خروجی را خواهد داشت.

CEF با توجه به این جدول ها اقدام به ارسال بسته ها می کند بر خلاف Fast Switching، در روش CEF نیازی به پردازش اولین بسته در CPU نیست. این تکنولوژی مختص شرکت سیسکو است و در بسیاری از Platform ها به صورت پیش فرض فعال می باشد.

Cisco Express Forwarding

به عنوان مثال به شکل زیر توجه کنید، در این شکل پروتکل مسیریابی BGP برای رسیدن به شبکه 10.0.0.0/8 آدرس مقصد 1.2.3.4 را معرفی می کند و نهایتا 1.5.4.1 با کمک OSPF به عنوان Next Hop انتخاب شده و در جدول FIB ثبت می شود. اطلاعات لایه دو (MAC Address) مربوط به Next Hop از ARP Table گرفته شده و در جدول Adjacency قرار می گیرد. اکنون روتر برای ارسال پکت به این شبکه دیگر نیازی به پردازش بسته درControl Plane ندارد و مستقیما به جدول FIB مراجعه می کند و بسته را به مقصد مورد نظر ارسال می نماید.

CEF

 

42
0
0
نظرات