پروتکل OpenFlow این امکان را برای سرور ها فراهم می کند که بتوانند مسیر انتقال packet ها را برای سوئیچ های شبکه تعیین کنند. در شبکه های مرسوم که بیشتر با آن برخورد داشته ایم، هر سوئیچی نرم افزار مختص خود را دارد که تعیین می کند چه عملی باید انجام شود. با استفاده از پروتکل OpenFlow، تصمیم گیری ها در مورد انتقال packet ها در یک نقطه متمرکز شده، از اینرو می توان شبکه را مستقل از هر سوئیچ و دیوایسی در دیتاسنتر برنامه ریزی کرد.
OpenFlow یک پروتکل شبکه ای قابل برنامه ریزی برای محیط SDN می باشد، که برای برقراری ارتباط میان سوئیچ های OpenFlow و controller ها استفاده می شود. پروتکل OpenFlow بخش نرم افزاری و قابل برنامه ریزی سوئیچ های شبکه را از سخت افزار آنها جدا می کند. این پروتکل روش استانداردی را برای ارائه ی یک شبکه ی متمرکز و قابل برنامه ریزی که می تواند سریعا خود را با نیاز های شبکه وفق دهد، ارائه می کند.
برای آشنایی بیشتر با این پروتکل به ادامه این مطلب مراجعه نمایید.
سوئیچ OpenFlow، سوئیچی است که پروتکل OpenFlow در آن فعال شده باشد.این سوئیچ از طریق کانالی که OpenFlow ایجاد می کند، با کنترلر بیرونی ارتباط برقرار می کند. این کنترلر از طریق پروتکل OpenFlow سوئیچ ها را مدیریت می کند. به صورت کلی سوئیچ های OpenFlow یا از پایه بر اساس پروتکل OpenFlow ساخته شده اند و یا اینکه فقط با آن سازگار هستند.
سوئیچ های OpenFlow با وجود سه عنصر و همکاری آنها می توانند به فعالیت خود ادامه دهند: flow table هایی که بر روی سوئیچ ها قرار دارند، کنترلر و پروتکل OpenFlow اختصاصی برای برقراری ارتباطی امن میان کنترلر و سوئیچ ها. flow table ها بر روی سوئیچ ها تنظیم و نگهداری می شوند. کنترلرها با استفاده از پروتکل OpenFlow با سوئیچ ها ارتباط برقرار می کنند و از این طریق سیاست هایی را روی جریان ها اعمال می کنند و آنها را مدیریت می کنند. کنترلرها می توانند مسیر هایی که با توجه به مشخصه های خاصی (مانند سرعت، کمترین تعداد hop و کمترین میزان تاخیر) بهینه سازی شده اند را در شبکه تنظیم و برقرار کنند.
در سوئیچ های معمولی، ارسال پکت ها (data plane) و مسیریابی در سطح های بالاتر (control plane)، هر دو در یک دیوایس انجام می شوند. این در حالیست که در سوئیچ های OpenFlow این دو از هم جدا می باشند. در سوئیچ های OpenFlow بخش Data plane سمت سوئیچ فعالیت می کند و بخش control plane به صورت جداشده و خارج از سوئیچ، در مورد مسیریابی اطلاعات تصمیم گیری می کند. سوئیچ و control plane از طریق پروتکل OpenFlow با یکدیگر ارتباط برقرار می کنند.
این روش که SDN1 نامیده می شود، این امکان را فراهم می کند تا نسبت به شبکه های معمولی استفاده مفیدتری از منابع داشته باشیم. با توجه به قابلیت تکنولوژی SDN در بالا بردن چابکی و مقیاس پذیری شبکه، این تکنولوژی رغبت زیادی را در حوزه ی شبکه به خود ایجاد کرده است. در مرکز تکنولوژی SDN پروتکل OpenFlow قرار دارد، و SDN به همراه سوئیچ OpenFlow است که انعطاف پذیری و پیکربندی سریع شبکه های ارتباطی را فراهم می کند.
به این ترتیب سوئیچ OpenFlow مزایای زیر را ارائه می کند:
سوئیچ OpenFlow تنگناهای موجود در محیط SDN را به کارایی و مقیاس پذیری بالا تبدیل می کند. این پروتکل راهکاری کارآمد و مستقل از برند را برای مدیریت شبکه های پیچیده با نیاز های متفاوت ارائه می کند. این راهکار در حال تبدیل شدن به راهکاری متداول در شبکه های بزرگ امروزی و زیرساخت های ابری می باشد.