Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

Happy

Happy ابزاری برای تنظیم سبک توپولوژی های شبیه سازی شده شبکه است. بدون استفاده از سخت افزار دستگاه اینترنت اشیا ، از آن برای آزمایش پروتکل های شبکه و سایر برنامه های اجرای توزیع شده بر روی یک دستگاه توسعه لینوکس استفاده کنید.

چیه؟

Happy توپولوژی های پیچیده شبکه را شبیه سازی می کند. در یک دستگاه لینوکس ، Happy می تواند چندین گره با پشته های شبکه ایجاد کند که از یکدیگر مستقل نیستند. بعضی از گره ها ممکن است به شبکه های Thread شبیه سازی شده متصل شوند ، بعضی دیگر ممکن است به شبکه های Wi-Fi ، WAN (اینترنت) یا شبکه های تلفن همراه شبیه سازی شده متصل شوند.

شاد آدرس موارد استفاده زیر است:

  • آزمایش پروتکل های شبکه و سایر برنامه های اجرای توزیع شده بر روی یک ماشین توسعه دهنده Linux بدون استفاده از سخت افزار
  • انجام تست عملکرد خودکار در سراسر شبکه
  • اجرای چندین شبکه همزمان ، موازی بر روی یک سیستم برای بهبود توان آزمایش

Happy با ایجاد انتزاعات توپولوژی شبکه با کمترین هزینه سرانه کاربر ، این مشکلات را حل می کند. توپولوژی های پیچیده ممکن است با یک فراخوان فرمان پوسته واحد ایجاد شوند. Happy هم از استفاده تعاملی و هم از برنامه نویسی خودکار پشتیبانی می کند.

از دستورات Happy shell برای تنظیم ، آزمایش و اشکال زدایی کد آنها در حین توسعه استفاده کنید. همان پیکربندی شبکه و برنامه های آزمایشی ممکن است به صورت اسکریپتی استفاده شوند و در تست های خودکار مورد استفاده قرار گیرند.

شروع کنید

سریعترین و ساده ترین راه برای شروع کار با Happy ، مرور Codelab است. این کاربر از طریق تمام اصول Happy از جمله:

  • ایجاد و حذف توپولوژی
  • گره های شبکه با هم
  • ذخیره و بازیابی توپولوژی ها
  • اتصال توپولوژی به اینترنت
  • اصول اساسی را ببافید

شروع کار با Codelab مبارک را امتحان کنید

برای اطلاعات بیشتر در مورد راه اندازی و استفاده از Happy به تنظیمات و نحوه استفاده مراجعه کنید.

معماری

مدل های مبارک موارد زیر:

  • گره - یک فضای نامی شبکه لینوکس است. فرآیندهای متشکل از گره در یک فضای نام مشخص شبکه اجرا می شوند.
  • Link - یک رابط شبکه Linux. مبارک با استفاده از veth دستگاه شبکه برای حمایت از L3 (IP) رابط و tap دستگاه شبکه برای حمایت از L2 اتصالی خارج از جعبه.
  • شبکه - فضاهای نامی شبکه لینوکس با یک پل اترنت که درون آنها اجرا می شود.

پیاده سازی

Happy مجموعه ای از ماژول های پایتون است. ماژول های Core Happy خلاصه هایی را برای:

  • مدیریت انتزاع گره
    • افزودن ، اصلاح و حذف گره ها
    • اجرای مجموعه ای از فرآیندها در گره
  • مدیریت پیوندها
    • افزودن ، اصلاح و حذف پیوندها
    • اختصاص پیوندها به یک گره و یک شبکه
    • اختصاص و اصلاح تکالیف آدرس
  • مدیریت شبکه ها
    • ایجاد ، اصلاح و تخریب شبکه ها
    • ارتباط شبکه
  • مدیریت حالت کلی چارچوب به صورت منسجم

بیشتر موارد انتزاعی که توسط ماژول های Happy پیاده سازی شده اند ، دستوراتی را که به ابزارهای شبکه لینوکس فراخوانی می شوند ترسیم می کنند.

Happy همچنین حاوی مجموعه ای از افزونه های موجود در /plugins . افزونه ها مجموعه ای از قابلیت های مربوط به یک فناوری خاص را می پیچند. به عنوان مثال ، /plugins/weave حاوی یاورهایی است که برنامه های مختلف Weave را برای اجرا درون Happy بسته بندی می کنند.

اجرا

کاربران می توانند از طریق دو روش توپولوژی شبیه سازی شده ایجاد کنند:

  • دستورات Shell - همه دستورات در /bin .
  • اسکریپت های Python - ماژول های Happy را برای فراخوانی دستورات Happy در اسکریپت های Python خود وارد کنید. ماژول ها در /happy .

برای اطلاعات بیشتر در مورد استفاده از ماژول های Happy در اسکریپت های Python خود ، به برنامه نویسی Python مراجعه کنید.