Google is committed to advancing racial equity for Black communities. See how.

Happy

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

چیه؟

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

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

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

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

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

شروع کنید

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

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

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

مشاهده راه اندازی و طریقه استفاده برای اطلاعات بیشتر در نصب و استفاده از مبارک.

معماری

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

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

پیاده سازی

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

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

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

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

اجرا

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

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

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