نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1

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

انتخاب راه حل فنی: پناهگاه جهش یافته

روش کار بر روی یک سیستم خودکار پیچیده در حال حاضر به بهترین وجه در GOST 34.601-90 "سیستم های خودکار" توضیح داده شده است. مراحل آفرینش»، بنابراین بر اساس آن کار کردیم. و در حال حاضر در مراحل شکل گیری الزامات و توسعه مفهوم، با اولین مشکلات مواجه شدیم. سازمان ها با پروفایل های مختلف - بانک ها، شرکت های بیمه، توسعه دهندگان نرم افزار و ... - برای وظایف و استانداردهای خود به انواع خاصی از شبکه ها نیاز دارند که مشخصات آنها مشخص و استاندارد شده است. با این حال، این با ما کار نخواهد کرد.

چرا؟

Jet Infosystems یک شرکت فناوری اطلاعات متنوع و بزرگ است. در عین حال، بخش پشتیبانی داخلی ما کوچک است (اما مفتخر است)، عملکرد خدمات و سیستم های اساسی را تضمین می کند. این شرکت شامل بخش‌های بسیاری است که وظایف مختلفی را انجام می‌دهند: اینها چندین تیم قدرتمند برون‌سپاری، و توسعه‌دهندگان داخلی سیستم‌های تجاری، و امنیت اطلاعات، و معماران سیستم‌های محاسباتی هستند - به طور کلی، هر کسی که باشد. بر این اساس، وظایف، سیستم ها و سیاست های امنیتی آنها نیز متفاوت است. که همانطور که انتظار می رفت، مشکلاتی را در فرآیند تحلیل نیازها و استانداردسازی ایجاد کرد.

برای مثال، بخش توسعه اینجاست: کارمندان آن برای تعداد زیادی از مشتریان کد می نویسند و آزمایش می کنند. اغلب نیاز به سازماندهی سریع محیط های آزمایشی وجود دارد و صادقانه بگویم، همیشه نمی توان الزامات هر پروژه را تدوین کرد، منابع را درخواست کرد و یک محیط آزمایش جداگانه را مطابق با تمام مقررات داخلی ساخت. این باعث ایجاد موقعیت های کنجکاوی می شود: یک روز خدمتکار فروتن شما به اتاق توسعه دهندگان نگاه کرد و زیر میز یک خوشه Hadoop از 20 دسکتاپ که به طور غیرقابل توضیحی به یک شبکه مشترک متصل بود، پیدا کرد. فکر نمی‌کنم ارزش توضیح دادن را داشته باشد که بخش فناوری اطلاعات شرکت از وجود آن اطلاعی نداشت. این شرایط، مانند بسیاری موارد دیگر، مسئول این واقعیت بود که در طول توسعه پروژه، اصطلاح "ذخیره جهش یافته" متولد شد که وضعیت زیرساخت های اداری طولانی رنج را توصیف می کند.

یا این یک مثال دیگر است. به طور دوره ای، یک میز آزمون در یک بخش راه اندازی می شود. این مورد در مورد Jira و Confluence بود که مرکز توسعه نرم افزار در برخی پروژه ها به میزان محدودی از آنها استفاده کرد. پس از مدتی، بخش‌های دیگر با این منابع مفید آشنا شدند، آنها را ارزیابی کردند و در پایان سال 2018، جیرا و تلاقی از وضعیت «اسباب‌بازی برنامه‌نویسان محلی» به وضعیت «منابع شرکت» منتقل شدند. اکنون باید یک مالک به این سیستم ها اختصاص داده شود، SLA ها، سیاست های امنیتی دسترسی/اطلاعات، سیاست های پشتیبان گیری، نظارت، قوانین مسیریابی درخواست ها برای رفع مشکلات باید تعریف شوند - به طور کلی، تمام ویژگی های یک سیستم اطلاعاتی کامل باید وجود داشته باشد. .
هر یک از بخش های ما نیز یک انکوباتور است که محصولات خود را رشد می دهد. برخی از آنها در مرحله توسعه از بین می روند، برخی از آنها در حین کار روی پروژه ها استفاده می کنیم، در حالی که برخی دیگر ریشه می گیرند و تبدیل به راه حل های تکراری می شوند که خودمان شروع به استفاده از آنها کرده و به مشتریان می فروشیم. برای هر یک از این سیستم ها، مطلوب است که محیط شبکه خود را داشته باشد، جایی که بدون تداخل با سایر سیستم ها توسعه یابد و در نقطه ای بتواند در زیرساخت شرکت ادغام شود.

علاوه بر توسعه، ما بسیار بزرگ است مرکز خدمات با بیش از 500 کارمند، تیم هایی برای هر مشتری تشکیل شده است. آنها در حفظ شبکه ها و سایر سیستم ها، نظارت از راه دور، حل و فصل ادعاها و غیره مشارکت دارند. یعنی زیرساخت SC در واقع زیرساخت مشتری است که در حال حاضر با او کار می کنند. ویژگی کار با این بخش از شبکه این است که ایستگاه های کاری آنها برای شرکت ما تا حدی خارجی و بخشی داخلی است. بنابراین، برای SC ما رویکرد زیر را اجرا کردیم - این شرکت با در نظر گرفتن ایستگاه های کاری این بخش ها به عنوان اتصالات خارجی (بر اساس قیاس با شعب و کاربران راه دور) شبکه و سایر منابع را به بخش مربوطه ارائه می دهد.

طراحی بزرگراه: ما اپراتور هستیم (تعجب)

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

ما یک شبکه اصلی ایجاد کردیم که به کمک آن به هر مصرف کننده داخلی و در آینده نیز خارجی خدمات مورد نیاز ارائه می شود: L2 VPN، L3 VPN یا مسیریابی معمولی L3. برخی از بخش ها به دسترسی ایمن به اینترنت نیاز دارند، در حالی که برخی دیگر به دسترسی تمیز بدون فایروال نیاز دارند، اما در عین حال از منابع شرکتی و شبکه اصلی خود در برابر ترافیک آنها محافظت می کنند.

ما به طور غیررسمی "یک SLA" را با هر بخش منعقد کردیم. مطابق با آن، تمام حوادثی که به وجود می آیند باید در یک دوره زمانی معین و از پیش توافق شده حذف شوند. الزامات این شرکت برای شبکه اش سخت بود. حداکثر زمان پاسخگویی به یک حادثه در صورت خرابی تلفن و ایمیل 5 دقیقه بود. زمان بازیابی عملکرد شبکه در هنگام خرابی های معمولی بیش از یک دقیقه نیست.

از آنجایی که ما یک شبکه درجه یک حامل داریم، شما فقط می توانید مطابق با قوانین به آن متصل شوید. واحدهای خدماتی خط مشی ها را تنظیم می کنند و خدمات ارائه می دهند. آنها حتی به اطلاعاتی در مورد اتصالات سرورها، ماشین های مجازی و ایستگاه های کاری خاص نیاز ندارند. اما در عین حال، مکانیسم های حفاظتی مورد نیاز است، زیرا یک اتصال واحد نباید شبکه را غیرفعال کند. اگر یک حلقه به طور تصادفی ایجاد شود، سایر کاربران نباید متوجه این موضوع شوند، یعنی پاسخ کافی از شبکه ضروری است. هر اپراتور مخابراتی به طور مداوم مشکلات به ظاهر پیچیده مشابه را در شبکه اصلی خود حل می کند. به مشتریان زیادی با نیازها و ترافیک متفاوت خدمات ارائه می دهد. در عین حال، مشترکین مختلف نباید ناراحتی ناشی از ترافیک دیگران را تجربه کنند.
در خانه، ما این مشکل را به روش زیر حل کردیم: با استفاده از پروتکل IS-IS یک شبکه اصلی L3 با افزونگی کامل ساختیم. یک شبکه همپوشانی بر اساس فناوری در بالای هسته ساخته شد EVPN/VXLAN، با استفاده از یک پروتکل مسیریابی MP-BGP. برای سرعت بخشیدن به همگرایی پروتکل های مسیریابی، از فناوری BFD استفاده شد.

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1
ساختار شبکه

در آزمایشات، این طرح خود را عالی نشان داد - هنگامی که هر کانال یا سوئیچ قطع می شود، زمان همگرایی بیش از 0.1-0.2 ثانیه نیست، حداقل بسته ها گم می شوند (اغلب هیچ کدام)، جلسات TCP پاره نمی شوند، مکالمات تلفنی قطع نمی شوند.

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1
لایه زیرین - مسیریابی

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1
لایه روکش - مسیریابی

سوئیچ های Huawei CE6870 با مجوز VXLAN به عنوان سوئیچ توزیع مورد استفاده قرار گرفتند. این دستگاه دارای نسبت قیمت/کیفیت بهینه است که به شما امکان می دهد مشترکین را با سرعت 10 گیگابیت بر ثانیه متصل کنید و بسته به فرستنده گیرنده مورد استفاده، با سرعت 40 تا 100 گیگابیت بر ثانیه به backbone متصل شوید.

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1
سوئیچ هواوی CE6870

سوئیچ های هواوی CE8850 به عنوان سوئیچ اصلی استفاده شد. هدف انتقال سریع و مطمئن ترافیک است. هیچ دستگاهی به آنها متصل نیست به جز سوئیچ های توزیع، آنها چیزی در مورد VXLAN نمی دانند، بنابراین مدلی با 32 پورت 40/100 گیگابیت بر ثانیه انتخاب شد، با مجوز اولیه که مسیریابی L3 و پشتیبانی از IS-IS و MP-BGP را فراهم می کند. پروتکل ها

نحوه طراحی و پیاده سازی یک شبکه جدید در هواوی در دفتر مسکو، قسمت 1
سوئیچ اصلی هواوی CE8850 است

در مرحله طراحی، بحثی در تیم در مورد فن آوری هایی که می توانند برای پیاده سازی یک اتصال مقاوم به خطا به گره های شبکه اصلی استفاده شوند، شروع شد. دفتر ما در مسکو در سه ساختمان واقع شده است، ما 7 اتاق توزیع داریم که در هر کدام دو سوئیچ توزیع Huawei CE6870 نصب شده است (فقط سوئیچ های دسترسی در چندین اتاق توزیع نصب شده بود). هنگام توسعه مفهوم شبکه، دو گزینه افزونگی در نظر گرفته شد:

  • ادغام سوئیچ های توزیع به یک پشته مقاوم در برابر خطا در هر اتاق اتصال متقابل. مزایا: سادگی و سهولت نصب. معایب: در صورت بروز خطا در سیستم عامل دستگاه های شبکه ("نشت حافظه" و موارد مشابه) احتمال خرابی کل پشته بیشتر است.
  • از فناوری های M-LAG و Anycast gateway برای اتصال دستگاه ها به سوئیچ های توزیع استفاده کنید.

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

یک سوئیچ دسترسی، سرور یا هر دستگاه دیگری که نیاز به اتصال مقاوم به خطا دارد در دو سوئیچ توزیع گنجانده شده است. فناوری M-LAG افزونگی را در سطح پیوند داده فراهم می کند. فرض بر این است که دو سوئیچ توزیع برای تجهیزات متصل به عنوان یک دستگاه ظاهر می شوند. افزونگی و تعادل بار با استفاده از پروتکل LACP انجام می شود.

فناوری دروازه Anycast باعث ایجاد افزونگی در سطح شبکه می شود. تعداد نسبتاً زیادی VRF روی هر یک از سوئیچ‌های توزیع پیکربندی شده است (هر VRF برای اهداف خاص خود در نظر گرفته شده است - به طور جداگانه برای کاربران عادی، جداگانه برای تلفن، به طور جداگانه برای محیط‌های مختلف آزمایش و توسعه و غیره) و در هر یک. VRF دارای چندین VLAN پیکربندی شده است. در شبکه ما، سوئیچ های توزیع دروازه های پیش فرض برای همه دستگاه های متصل به آنها هستند. آدرس های IP مربوط به رابط های VLAN برای هر دو سوئیچ توزیع یکسان است. ترافیک از طریق نزدیکترین سوئیچ هدایت می شود.

حالا بیایید به اتصال سوئیچ های توزیع به هسته نگاه کنیم:
تحمل خطا در سطح شبکه با استفاده از پروتکل IS-IS ارائه می شود. لطفاً توجه داشته باشید که یک خط ارتباطی جداگانه L3 بین سوئیچ ها با سرعت 100G ارائه شده است. از نظر فیزیکی، این خط ارتباطی یک کابل دسترسی مستقیم است که در سمت راست در عکس سوئیچ های Huawei CE6870 دیده می شود.

یک جایگزین می تواند سازماندهی یک توپولوژی ستاره دوگانه کاملا متصل "صادقانه" باشد، اما همانطور که در بالا ذکر شد، ما 7 اتاق متقابل در سه ساختمان داریم. بر این اساس، اگر توپولوژی "ستاره دوگانه" را انتخاب کرده بودیم، دقیقاً دو برابر تعداد فرستنده‌های گیرنده 40G دوربرد نیاز داشتیم. صرفه جویی در اینجا بسیار قابل توجه است.

چند کلمه باید در مورد نحوه کارکرد فناوری های VXLAN و دروازه Anycast با یکدیگر گفته شود. VXLAN بدون پرداختن به جزئیات، تونلی برای انتقال فریم های اترنت در داخل بسته های UDP است. رابط های حلقه بک سوئیچ های توزیع به عنوان آدرس IP مقصد تونل VXLAN استفاده می شود. هر متقاطع دارای دو سوئیچ با آدرس های رابط حلقه بک یکسان است، بنابراین یک بسته می تواند به هر یک از آنها برسد و یک فریم اترنت را می توان از آن استخراج کرد.

اگر سوئیچ از آدرس MAC مقصد فریم بازیابی شده اطلاع داشته باشد، فریم به درستی به مقصد خود تحویل داده می شود. برای اطمینان از اینکه هر دو سوئیچ توزیع نصب شده در یک اتصال متقاطع دارای اطلاعات به روز در مورد تمام آدرس های MAC هستند که از سوییچ های دسترسی دریافت می شوند، مکانیسم M-LAG مسئول همگام سازی جداول آدرس MAC (و همچنین ARP) است. جداول) روی هر دو سوئیچ جفت M-LAG.

تعادل ترافیک به دلیل وجود چندین مسیر در شبکه زیرین به رابط های حلقه بک سوئیچ های توزیع به دست می آید.

به جای یک نتیجه گیری

همانطور که در بالا ذکر شد، در طول آزمایش و بهره برداری، شبکه قابلیت اطمینان بالایی را نشان داد (زمان بازیابی برای خرابی های معمولی بیش از صدها میلی ثانیه نیست) و عملکرد خوب - هر اتصال متقابل توسط دو کانال 40 گیگابیت بر ثانیه به هسته متصل می شود. سوئیچ های دسترسی در شبکه ما انباشته شده و از طریق LACP/M-LAG با دو کانال 10 گیگابیت بر ثانیه به سوئیچ های توزیع متصل می شوند. یک پشته معمولاً شامل 5 سوئیچ با هر کدام 48 پورت است و در هر اتصال متقابل تا 10 پشته دسترسی به توزیع وصل می شود. بنابراین، ستون فقرات حدود 30 مگابیت بر ثانیه را برای هر کاربر حتی در حداکثر بار نظری فراهم می کند، که در زمان نوشتن برای همه کاربردهای عملی ما کافی است.

این شبکه به شما امکان می دهد جفت شدن هر دستگاه متصل دلخواه خود را از طریق L2 و L3 به طور یکپارچه سازماندهی کنید، و ایزوله کامل ترافیک (که سرویس امنیت اطلاعات دوست دارد) و دامنه های خطا (که تیم عملیات دوست دارد) را فراهم می کند.

در قسمت بعدی نحوه مهاجرت به شبکه جدید را به شما خواهیم گفت. گوش به زنگ باشید!

ماکسیم کلوچکوف
مشاور ارشد گروه ممیزی شبکه و پروژه های مجتمع
مرکز راه حل های شبکه
"جت اینفوسیستمز"


منبع: www.habr.com

اضافه کردن نظر