فعالسازی نسخه‌های مختلف پروتکل OpenFlow در Open vSwitch

سلام دوستان، امروز می‌خواهم در مورد یکی از سوئیچ‌های نرم افزاری یا مجازی که از پروتکل OpenFlow پشتیبانی می‌کند مطالبی ارزنده ارائه کنم. اگر در شروع کار هستید لطفا پیش از مطالعه مقاله پیش رو این لینک رو مشاهده کنید تا با مفاهیم اولیه این سوئیچ آشنا شوید. پس از مطالعه این مقاله با نحوه فعالسازی پروتکل OpenFlow 1.5 و سایر نسخه‌های OpenFlow بر روی این سوئیچ آشنا خواهید شد.

 

با توجه به مستندات Open vSwitch جهت برخورداری از امکانات کامل OpenFlow 1.3 و همچنین استفاده از OpenFlow 1.5 می‌بایست از آخرین نسخه Open vSwitch یعنی 2.3 استفاده نمایید. پشتیبانی نسخه‌های مختلف Open vSwitch از OpenFlow را می‌توانید در شکل زیر ملاحظه کنید:

ovs

پشتیبانی نسخه‌های مختلف Open vSwitch از پروتکل OpenFlow

همانطور که می‌بینید تنها در نسخه 2.3 از OVS بطور کامل از OpenFlow 1.3 پشتیبانی می‌شود و در نسخه‌های قبلی آن برخی از ویژگی‌های OpenFlow 1.3 بطور کامل پیاده‌سازی نشده بود. توجه کنید که در OVS نسخه 2.3 ممکن از برخی از ویژگی‌هایی که مدنظر شما است وجود نداشته باشد؛ لذا می‌بایست منتظر نسخه‌های بعدی آن باشید.

اوپن وی سوئیچ 2.3 به طور پیش فرض در ovs-vswitchd نسخه های 1.0، 1.1، 1.2 و 1.3 را فعال می‌کند؛ این درحالی است که در نسخه‌های 1.10 تا 2.2 از آن می‌بایست به صورت دستی در ovs-vswitchd نسخه‌های 1.1، 1.2 و 1.3 را فعال می‌کردید. در ovs 2.3 نسخه‌های 1.4 و 1.5 نیز پشتیبانی می‌شوند ولی توجه کنید که ممکن است از برخی ویژگی‌های مورد نیاز شما در حال حاضر پشتیبانی نشود. در ovs 2.3 و نسخه‌های بعدی آن به طور پیش فرض Openflow 1.4 و openFlow 1.5 فعال نمی‌باشد. در هر حال شما می‌توانید با استفاده از دستورات زیر این پیشفرض را تغییر دهید:

  • جهت فعالسازی نسخه‌های 1.0، 1.1، 1.2 و 1.3 می‌توانید پس از اجرای توپولوژی با mininet، اقدام به تغییر پیش فرض در سوئیچ (های) مورد نظر(تان) بکنید (به جای br0 از نام سوئیچ مدنظرتان مثلا s1 استفاده کنید):
ovs-vsctl set bridge br0 protocols=OpenFlow10,OpenFlow11,OpenFlow12,OpenFlow13
  • جهت فعالسازی نسخه‌های 1.0، 1.1، 1.2، 1.3، 1.4 و 1.5 می‌توانید پس از اجرای توپولوژی با mininet، اقدام به تغییر پیش فرض در سوئیچ (های) مورد نظر(تان) بکنید (به جای br0 از نام سوئیچ مدنظرتان مثلا s1 استفاده کنید):
ovs-vsctl set bridge br0 protocols=OpenFlow10,OpenFlow11,OpenFlow12,OpenFlow13,OpenFlow14,OpenFlow15
  • جهت فعالسازی تنها OpenFlow 1.0 از دستور زیر استفاده نمایید (به جای br0 از نام سوئیچ مدنظرتان مثلا s1 استفاده کنید):
ovs-vsctl set bridge br0 protocols=OpenFlow10

توجه: اگر از Mininet برای ایجاد توپولوژی استفاده می‌کنید می‌توانید بجای استفاده از دستورات ovs-vsctl از دستورات mininet استفاده نمایید. به طور می‌توانید بجای دستور اول از دستور زیر استفاده کنید:

sudo mn --controller=remote --switch ovsk,protocols=OpenFlow10,OpenFlow11,OpenFlow12,OpenFlow13

بدیهی است که می‌توانید در کنار آرگومان‌های فوق از سایر آرگومان‌های مینی نت نیز استفاده نمایید.

 

  • جهت استفاده از ovs-oftcl نسخه‌های بالاتر از OpenFlow 1.0 می‌بایست با O- نام پروتکل OpenFlow مدنظرتان را بیاورید؛ زیرا در همه ورژن‌های OVS این دستور به طور پیش فرض از OpenFlow 1.0 استفاده می‌کند. به طور مثال (به جای br0 از نام سوئیچ مدنظرتان مثلا s1 استفاده کنید):
ovs-ofctl -O OpenFlow13 dump-flows br0

فعالسازی نسخه‌های مختلف پروتکل OpenFlow در Open vSwitch
میانگین 4.5 امتیاز از 2 رای

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *