LINC – سوئیچ نرم افزاری OpenFlow

LINC چیست؟

LINC یک سوئیچ pure OpenFlow است که به زبان Erlang نوشته شده است که در userspace سیستم عامل به عنوان یک نود Erlang پیاده سازی شده است. این رویکرد بهینه ترین روش نیست اما انعطاف‌پذیری بالایی داشته و ما را قادر به توسعه و تست ویژگی‌های جدید OpenFlow می‌سازد.

ویژگی‌ها

  • پشتیبانی از پروتکلهای OpenFlow 1.3، OpenFlow 1.2 و OpenFlow 1.4.
  • قابلیت اجرای چندین سوئیچ به صورت logical.
  • پشتیبانی از پروتکل مدیریتی OF-Config 1.1.1.
  • معماری ماژولار، توسعه پذیری آسان.

طریقه استفاده

Erlang:

برای استفاده از LINC می‌بایست بر روی ماشین خود Erlang runtime را نصب نمایید که حداقل باید نسخه R16 آن باشد.

نصب از طریق سورس‌ها:

برای build و نصب Erlang می‌بایست در ابتدا پکیج‌های زیر را (در اوبونتو) نصب نمایید:

$ apt-get install gcc wget make autoconf openssl libssl0.9.8 libssl-dev libncurses5 libncurses5-dev


دریافت LINC از سایت Github و buid آن:

$ git clone git://github.com/FlowForwarding/LINC-Switch.git


کامپایل کردن همه چیز:

$ cd LINC-Switch% make

تنظیمات:

فایل کافیک LINC را که در آدرس rel/linc/releases/0.1/sys.config می‌باشد به شکل زیر ویرایش کنید:


    {linc,
     [
      {of_config, enabled},
      {capable_switch_ports,
       [
        {port, 1, [{interface, "eth0"}]},
        {port, 2, [{interface, "tap0"}]}
       ]},
      {logical_switches,
       [
        {switch, 0,
         [
          {backend, linc_us4},
          {controllers,
           [
            {"Switch0-DefaultController", "localhost", 6633, tcp}
           ]},
          {queues_status, disabled},
          {ports,
           [
            {port, 1, {queues, []}},
            {port, 2, [{queues, []}, {port_no, 10}, {port_name, "Port10"}]}
           ]}
         ]}
       ]}
     ]}.

فایل کانفیک فوق به عنوان یک نمونه است و شما میتوانید لیست کنترلرها و پورت‌های مورد استفاده توسط سوئیچ را ویرایش کنید.

نحوه اجرای LINC:

# rel/linc/bin/linc console

منبع:

github.com

LINC – سوئیچ نرم افزاری OpenFlow
میانگین 4.3 امتیاز از 4 رای

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

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