ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1

آج میں آپ کو بتاؤں گا کہ ہماری کمپنی کے لیے ایک نیا اندرونی نیٹ ورک بنانے کا خیال کیسے آیا اور اس پر عمل کیا گیا۔ انتظامیہ کی پوزیشن یہ ہے کہ آپ کو اپنے لیے وہی مکمل پروجیکٹ کرنے کی ضرورت ہے جو کلائنٹ کے لیے ہے۔ اگر ہم اسے اپنے لیے اچھا کرتے ہیں، تو ہم گاہک کو مدعو کر سکتے ہیں اور دکھا سکتے ہیں کہ جو کچھ ہم اسے پیش کرتے ہیں وہ کتنی اچھی طرح سے کام کرتا ہے اور کام کرتا ہے۔ لہذا، ہم نے مکمل پیداواری سائیکل کا استعمال کرتے ہوئے، ماسکو آفس کے لیے ایک نئے نیٹ ورک کے تصور کی ترقی تک بہت اچھی طرح سے رابطہ کیا: محکمانہ ضروریات کا تجزیہ → تکنیکی حل کا انتخاب → ڈیزائن → عمل درآمد → ٹیسٹنگ۔ تو آئیے شروع کرتے ہیں۔

تکنیکی حل کا انتخاب: اتپریورتی پناہ گاہ

پیچیدہ خودکار نظام پر کام کرنے کے طریقہ کار کو فی الحال GOST 34.601-90 "خودکار نظاموں میں بہترین طریقے سے بیان کیا گیا ہے۔ تخلیق کے مراحل"، تو ہم نے اس کے مطابق کام کیا۔ اور پہلے سے ہی ضروریات کی تشکیل اور تصور کی ترقی کے مراحل میں، ہمیں پہلی مشکلات کا سامنا کرنا پڑا۔ مختلف پروفائلز کی تنظیمیں - بینک، انشورنس کمپنیاں، سافٹ ویئر ڈویلپرز وغیرہ - اپنے کاموں اور معیارات کے لیے انہیں مخصوص قسم کے نیٹ ورکس کی ضرورت ہوتی ہے، جن کی تفصیلات واضح اور معیاری ہیں۔ تاہم، یہ ہمارے ساتھ کام نہیں کرے گا۔

کیوں؟

جیٹ انفو سسٹم ایک بڑی متنوع آئی ٹی کمپنی ہے۔ ایک ہی وقت میں، ہمارا اندرونی معاونت کا شعبہ چھوٹا ہے (لیکن قابل فخر ہے)، یہ بنیادی خدمات اور نظاموں کی فعالیت کو یقینی بناتا ہے۔ کمپنی میں بہت سے ڈویژنز ہیں جو مختلف کام انجام دیتے ہیں: یہ کئی طاقتور آؤٹ سورسنگ ٹیمیں ہیں، اور بزنس سسٹمز کے اندرون ملک ڈویلپرز، اور انفارمیشن سیکیورٹی، اور کمپیوٹنگ سسٹمز کے معمار - عام طور پر، کوئی بھی ہو۔ اسی مناسبت سے ان کے کام، نظام اور سیکورٹی پالیسیاں بھی مختلف ہیں۔ جس نے حسب توقع ضروریات کے تجزیہ اور معیاری کاری کے عمل میں مشکلات پیدا کیں۔

یہاں، مثال کے طور پر، ڈیولپمنٹ ڈیپارٹمنٹ ہے: اس کے ملازمین بڑی تعداد میں صارفین کے لیے کوڈ لکھتے اور جانچتے ہیں۔ اکثر ٹیسٹ کے ماحول کو فوری طور پر ترتیب دینے کی ضرورت ہوتی ہے، اور واضح طور پر، ہر پروجیکٹ کے لیے تقاضے وضع کرنا، وسائل کی درخواست کرنا اور تمام داخلی ضوابط کے مطابق ایک الگ ٹیسٹ ماحول بنانا ہمیشہ ممکن نہیں ہوتا۔ یہ متجسس حالات کو جنم دیتا ہے: ایک دن آپ کے عاجز بندے نے ڈویلپرز کے کمرے میں دیکھا اور اسے میز کے نیچے 20 ڈیسک ٹاپس کا ایک مناسب طریقے سے کام کرنے والا ہڈوپ کلسٹر ملا، جو ایک عام نیٹ ورک سے ناقابل فہم طور پر جڑا ہوا تھا۔ مجھے نہیں لگتا کہ یہ وضاحت کرنے کے قابل ہے کہ کمپنی کے آئی ٹی ڈیپارٹمنٹ کو اس کے وجود کے بارے میں معلوم نہیں تھا۔ یہ صورت حال، بہت سے دوسرے لوگوں کی طرح، اس حقیقت کے لئے ذمہ دار تھی کہ اس منصوبے کی ترقی کے دوران، "اتپریورتی ریزرو" کی اصطلاح پیدا ہوئی تھی، جو دفتر کے طویل ڈھانچے کی حالت کو بیان کرتی ہے۔

یا یہاں ایک اور مثال ہے۔ وقتا فوقتا، ایک محکمے کے اندر ایک ٹیسٹ بینچ قائم کیا جاتا ہے۔ یہی حال جیرا اور سنگم کا تھا، جنہیں سافٹ ویئر ڈویلپمنٹ سینٹر نے کچھ منصوبوں میں محدود حد تک استعمال کیا۔ کچھ عرصے کے بعد، دوسرے محکموں نے ان مفید وسائل کے بارے میں جان لیا، ان کا جائزہ لیا، اور 2018 کے آخر میں، جیرا اور کنفلوئنس "مقامی پروگرامرز کے کھلونے" کی حیثیت سے "کمپنی کے وسائل" کی حیثیت میں چلے گئے۔ اب ایک مالک کو ان سسٹمز، SLAs، رسائی/معلومات کی حفاظتی پالیسیاں، بیک اپ پالیسیاں، نگرانی، مسائل کو حل کرنے کے لیے روٹنگ کی درخواستوں کے لیے قواعد و ضوابط کی وضاحت ہونی چاہیے - عام طور پر، ایک مکمل معلوماتی نظام کی تمام صفات کا موجود ہونا ضروری ہے۔ .
ہماری ہر ڈویژن بھی ایک انکیوبیٹر ہے جو اپنی مصنوعات خود اگاتی ہے۔ ان میں سے کچھ ترقی کے مرحلے پر مر جاتے ہیں، کچھ ہم پروجیکٹس پر کام کرتے ہوئے استعمال کرتے ہیں، جب کہ دیگر جڑ پکڑتے ہیں اور نقل شدہ حل بن جاتے ہیں جنہیں ہم خود استعمال کرنا شروع کر دیتے ہیں اور گاہکوں کو فروخت کرتے ہیں۔ اس طرح کے ہر نظام کے لیے، اس کا اپنا نیٹ ورک ماحول ہونا ضروری ہے، جہاں یہ دوسرے سسٹمز میں مداخلت کیے بغیر ترقی کرے گا، اور کسی وقت کمپنی کے بنیادی ڈھانچے میں ضم کیا جا سکتا ہے۔

ترقی کے علاوہ، ہمارے پاس ایک بہت بڑا ہے سروس سینٹر 500 سے زیادہ ملازمین کے ساتھ، ہر گاہک کے لیے ٹیمیں تشکیل دی گئیں۔ وہ نیٹ ورکس اور دیگر نظاموں کو برقرار رکھنے، ریموٹ مانیٹرنگ، دعووں کو حل کرنے وغیرہ میں شامل ہیں۔ یعنی، SC کا بنیادی ڈھانچہ درحقیقت، کسٹمر کا بنیادی ڈھانچہ ہے جس کے ساتھ وہ اس وقت کام کر رہے ہیں۔ نیٹ ورک کے اس حصے کے ساتھ کام کرنے کی خاصیت یہ ہے کہ ہماری کمپنی کے لیے ان کے ورک سٹیشن جزوی طور پر بیرونی اور جزوی طور پر اندرونی ہیں۔ لہذا، SC کے لیے ہم نے درج ذیل نقطہ نظر کو لاگو کیا - کمپنی متعلقہ محکمے کو نیٹ ورک اور دیگر وسائل فراہم کرتی ہے، ان محکموں کے ورک سٹیشن کو بیرونی کنکشن کے طور پر سمجھتے ہوئے (شاخوں اور دور دراز کے صارفین کے ساتھ مشابہت سے)۔

ہائی وے ڈیزائن: ہم آپریٹر ہیں (حیرت)

تمام خرابیوں کا جائزہ لینے کے بعد، ہم نے محسوس کیا کہ ہمیں ایک دفتر میں ٹیلی کمیونیکیشن آپریٹر کا نیٹ ورک مل رہا ہے، اور ہم نے اس کے مطابق کام کرنا شروع کیا۔

ہم نے ایک بنیادی نیٹ ورک بنایا ہے جس کی مدد سے کوئی بھی اندرونی، اور مستقبل میں بھی بیرونی، صارفین کو مطلوبہ سروس فراہم کی جاتی ہے: L2 VPN، L3 VPN یا باقاعدہ L3 روٹنگ۔ کچھ محکموں کو محفوظ انٹرنیٹ تک رسائی کی ضرورت ہوتی ہے، جب کہ دوسروں کو فائر وال کے بغیر صاف رسائی کی ضرورت ہوتی ہے، لیکن ساتھ ہی ساتھ ہمارے کارپوریٹ وسائل اور بنیادی نیٹ ورک کو ان کی ٹریفک سے بچانا ہوتا ہے۔

ہم نے ہر ڈویژن کے ساتھ غیر رسمی طور پر "ایک SLA کا نتیجہ اخذ کیا"۔ اس کے مطابق، پیدا ہونے والے تمام واقعات کو ایک مخصوص، پہلے سے طے شدہ مدت کے اندر ختم کر دینا چاہیے۔ اس کے نیٹ ورک کے لیے کمپنی کے تقاضے سخت نکلے۔ ٹیلی فون اور ای میل کی ناکامی کی صورت میں کسی واقعے کے جواب کا زیادہ سے زیادہ وقت 5 منٹ تھا۔ عام ناکامیوں کے دوران نیٹ ورک کی فعالیت کو بحال کرنے کا وقت ایک منٹ سے زیادہ نہیں ہے۔

چونکہ ہمارے پاس کیریئر گریڈ نیٹ ورک ہے، اس لیے آپ اس سے صرف قواعد کے مطابق ہی جڑ سکتے ہیں۔ سروس یونٹس پالیسیاں مرتب کرتے ہیں اور خدمات فراہم کرتے ہیں۔ انہیں مخصوص سرورز، ورچوئل مشینوں اور ورک سٹیشنوں کے کنکشن کے بارے میں بھی معلومات کی ضرورت نہیں ہے۔ لیکن ایک ہی وقت میں، تحفظ کے طریقہ کار کی ضرورت ہے، کیونکہ ایک بھی کنکشن نیٹ ورک کو غیر فعال نہیں کرنا چاہئے. اگر غلطی سے کوئی لوپ بن جاتا ہے، تو دوسرے صارفین کو اس کا نوٹس نہیں لینا چاہیے، یعنی نیٹ ورک کی طرف سے مناسب جواب ضروری ہے۔ کوئی بھی ٹیلی کام آپریٹر اپنے بنیادی نیٹ ورک میں اسی طرح کے بظاہر پیچیدہ مسائل کو مسلسل حل کرتا ہے۔ یہ بہت سے گاہکوں کو مختلف ضروریات اور ٹریفک کے ساتھ سروس فراہم کرتا ہے. ایک ہی وقت میں، مختلف سبسکرائبرز کو دوسروں کی ٹریفک سے تکلیف کا سامنا نہیں کرنا چاہیے۔
گھر پر، ہم نے اس مسئلے کو درج ذیل طریقے سے حل کیا: ہم نے IS-IS پروٹوکول کا استعمال کرتے ہوئے، مکمل بے کار ہونے کے ساتھ ایک بیک بون L3 نیٹ ورک بنایا۔ ٹیکنالوجی کی بنیاد پر کور کے اوپر ایک اوورلے نیٹ ورک بنایا گیا تھا۔ ای وی پی این/VXLAN، ایک روٹنگ پروٹوکول کا استعمال کرتے ہوئے ایم پی-بی جی پی. روٹنگ پروٹوکولز کو تیز کرنے کے لیے، BFD ٹیکنالوجی استعمال کی گئی۔

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
نیٹ ورک کا ڈھانچہ

ٹیسٹوں میں، اس سکیم نے اپنے آپ کو بہترین دکھایا - جب کوئی چینل یا سوئچ منقطع ہو جاتا ہے، کنورجنس کا وقت 0.1-0.2 s سے زیادہ نہیں ہوتا ہے، کم از کم پیکٹ ضائع ہو جاتے ہیں (اکثر کوئی نہیں ہوتا ہے)، TCP سیشن پھٹے نہیں ہوتے، ٹیلی فون پر بات چیت مداخلت نہیں کر رہے ہیں.

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
زیریں تہہ - روٹنگ

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
اوورلے لیئر - روٹنگ

VXLAN لائسنس کے ساتھ Huawei CE6870 سوئچز کو ڈسٹری بیوشن سوئچ کے طور پر استعمال کیا گیا۔ اس ڈیوائس میں بہترین قیمت/معیار کا تناسب ہے، جو آپ کو 10 Gbit/s کی رفتار سے سبسکرائبرز کو جوڑنے اور 40-100 Gbit/s کی رفتار سے ریڑھ کی ہڈی سے منسلک کرنے کی اجازت دیتا ہے، استعمال شدہ ٹرانسسیور پر منحصر ہے۔

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
Huawei CE6870 سوئچ کرتا ہے۔

Huawei CE8850 سوئچز کو بنیادی سوئچ کے طور پر استعمال کیا گیا۔ مقصد ٹریفک کو تیزی سے اور قابل اعتماد طریقے سے منتقل کرنا ہے۔ ڈسٹری بیوشن سوئچ کے علاوہ کوئی بھی ڈیوائس ان سے منسلک نہیں ہے، وہ VXLAN کے بارے میں کچھ نہیں جانتے، اس لیے 32 40/100 Gbps پورٹ کے ساتھ ایک ماڈل کا انتخاب کیا گیا، جس میں بنیادی لائسنس ہے جو IS-IS اور MP-BGP کے لیے L3 روٹنگ اور سپورٹ فراہم کرتا ہے۔ پروٹوکول

ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
سب سے نیچے والا Huawei CE8850 کور سوئچ ہے۔

ڈیزائن کے مرحلے پر، ٹیم کے اندر ان ٹیکنالوجیز کے بارے میں ایک بحث چھڑ گئی جن کا استعمال بنیادی نیٹ ورک نوڈس سے غلطی برداشت کرنے والے کنکشن کو نافذ کرنے کے لیے کیا جا سکتا ہے۔ ہمارا ماسکو آفس تین عمارتوں میں واقع ہے، ہمارے پاس 7 ڈسٹری بیوشن رومز ہیں، جن میں سے ہر ایک میں دو Huawei CE6870 ڈسٹری بیوشن سوئچ نصب کیے گئے تھے (صرف رسائی کے سوئچ کئی ڈسٹری بیوشن رومز میں نصب کیے گئے تھے)۔ نیٹ ورک کا تصور تیار کرتے وقت، فالتو پن کے دو اختیارات پر غور کیا گیا:

  • تقسیم کا استحکام ہر ایک کراس کنکشن روم میں غلطی کو برداشت کرنے والے اسٹیک میں بدل جاتا ہے۔ پیشہ: سادگی اور سیٹ اپ میں آسانی۔ نقصانات: نیٹ ورک ڈیوائسز ("میموری لیک" اور اس طرح کے) کے فرم ویئر میں خرابیاں ہونے پر پورے اسٹیک کے ناکام ہونے کا زیادہ امکان ہوتا ہے۔
  • ڈیوائسز کو ڈسٹری بیوشن سوئچز سے جوڑنے کے لیے M-LAG اور Anycast گیٹ وے ٹیکنالوجیز کا اطلاق کریں۔

آخر میں، ہم نے دوسرے آپشن پر طے کیا۔ اسے ترتیب دینا کچھ زیادہ مشکل ہے، لیکن عملی طور پر اس کی کارکردگی اور اعلیٰ وشوسنییتا دکھایا گیا ہے۔
آئیے پہلے اختتامی آلات کو ڈسٹری بیوشن سوئچز سے منسلک کرنے پر غور کریں:
ہم نے ماسکو آفس میں Huawei پر ایک نیا نیٹ ورک کیسے ڈیزائن اور نافذ کیا، حصہ 1
کراس

ایک رسائی سوئچ، سرور، یا کوئی دوسرا آلہ جس کے لیے فالٹ ٹولرنٹ کنکشن کی ضرورت ہوتی ہے، دو ڈسٹری بیوشن سوئچز میں شامل ہے۔ M-LAG ٹیکنالوجی ڈیٹا لنک کی سطح پر فالتو پن فراہم کرتی ہے۔ یہ فرض کیا جاتا ہے کہ دو ڈسٹری بیوشن سوئچز ایک ڈیوائس کے طور پر منسلک آلات میں ظاہر ہوتے ہیں۔ فالتو پن اور بوجھ میں توازن LACP پروٹوکول کا استعمال کرتے ہوئے کیا جاتا ہے۔

اینی کاسٹ گیٹ وے ٹیکنالوجی نیٹ ورک کی سطح پر فالتو پن فراہم کرتی ہے۔ ہر ایک ڈسٹری بیوشن سوئچ پر کافی بڑی تعداد میں VRFs ترتیب دیے گئے ہیں (ہر VRF کا مقصد اپنے مقاصد کے لیے ہے - الگ سے "باقاعدہ" صارفین کے لیے، الگ سے ٹیلی فونی کے لیے، الگ الگ ٹیسٹ اور ڈیولپمنٹ ماحول وغیرہ کے لیے)، اور ہر ایک میں VRF میں کئی VLANs ترتیب دیے گئے ہیں۔ ہمارے نیٹ ورک میں، ڈسٹری بیوشن سوئچز ان سے منسلک تمام آلات کے لیے ڈیفالٹ گیٹ وے ہیں۔ VLAN انٹرفیس سے مطابقت رکھنے والے IP پتے دونوں ڈسٹری بیوشن سوئچز کے لیے ایک جیسے ہیں۔ ٹریفک کو قریب ترین سوئچ کے ذریعے روٹ کیا جاتا ہے۔

اب آئیے کرنل سے ڈسٹری بیوشن سوئچز کو جوڑنے کو دیکھتے ہیں:
IS-IS پروٹوکول کا استعمال کرتے ہوئے نیٹ ورک کی سطح پر غلطی کی رواداری فراہم کی جاتی ہے۔ براہ کرم نوٹ کریں کہ سوئچز کے درمیان 3G کی رفتار سے ایک علیحدہ L100 کمیونیکیشن لائن فراہم کی گئی ہے۔ جسمانی طور پر، یہ مواصلاتی لائن ایک براہ راست رسائی کیبل ہے؛ اسے Huawei CE6870 سوئچز کی تصویر میں دائیں طرف دیکھا جا سکتا ہے۔

ایک متبادل یہ ہوگا کہ ایک "ایماندار" مکمل طور پر منسلک ڈبل اسٹار ٹوپولوجی کو منظم کیا جائے، لیکن جیسا کہ اوپر بتایا گیا ہے، ہمارے پاس تین عمارتوں میں 7 کراس کنیکٹ کمرے ہیں۔ اس کے مطابق، اگر ہم نے "ڈبل اسٹار" ٹوپولوجی کا انتخاب کیا ہوتا، تو ہمیں "لمبی رینج" 40G ٹرانسسیورز سے دگنی ضرورت ہوتی۔ یہاں کی بچتیں بہت اہم ہیں۔

VXLAN اور Anycast گیٹ وے ٹیکنالوجیز ایک ساتھ کیسے کام کرتی ہیں اس کے بارے میں چند الفاظ کہنے کی ضرورت ہے۔ VXLAN، تفصیلات میں جانے کے بغیر، UDP پیکٹ کے اندر ایتھرنیٹ فریموں کو لے جانے کے لیے ایک سرنگ ہے۔ ڈسٹری بیوشن سوئچز کے لوپ بیک انٹرفیس VXLAN ٹنل کے ڈیسٹینیشن IP ایڈریس کے طور پر استعمال ہوتے ہیں۔ ہر کراس کنکشن میں ایک ہی لوپ بیک انٹرفیس ایڈریس کے ساتھ دو سوئچ ہوتے ہیں، اس لیے ایک پیکٹ ان میں سے کسی پر بھی آ سکتا ہے، اور اس سے ایک ایتھرنیٹ فریم نکالا جا سکتا ہے۔

اگر سوئچ کو بازیافت شدہ فریم کی منزل MAC ایڈریس کے بارے میں معلوم ہے، تو فریم کو صحیح طریقے سے اس کی منزل تک پہنچا دیا جائے گا۔ اس بات کو یقینی بنانے کے لیے کہ ایک ہی کراس کنیکٹ میں نصب دونوں ڈسٹری بیوشن سوئچز کے پاس رسائی والے سوئچز سے "پہنچنے" والے تمام MAC پتوں کے بارے میں تازہ ترین معلومات ہیں، M-LAG میکانزم MAC ایڈریس ٹیبلز (نیز ARP) کو ہم آہنگ کرنے کا ذمہ دار ہے۔ میزیں) دونوں سوئچز پر M-LAG جوڑے۔

ڈسٹری بیوشن سوئچز کے لوپ بیک انٹرفیس تک کئی راستوں کے انڈرلے نیٹ ورک میں موجودگی کی وجہ سے ٹریفک کا توازن حاصل کیا جاتا ہے۔

اس کے بجائے کسی نتیجے کے

جیسا کہ اوپر ذکر کیا گیا ہے، جانچ اور آپریشن کے دوران نیٹ ورک نے اعلی وشوسنییتا دکھایا (عام ناکامیوں کے لیے ریکوری کا وقت سینکڑوں ملی سیکنڈز سے زیادہ نہیں ہوتا ہے) اور اچھی کارکردگی - ہر کراس کنیکٹ کور سے دو 40 Gbit/s چینلز کے ذریعے منسلک ہوتا ہے۔ ہمارے نیٹ ورک میں رسائی کے سوئچز 10 Gbit/s چینلز کے ساتھ LACP/M-LAG کے ذریعے تقسیم کے سوئچز سے جڑے ہوئے ہیں۔ ایک اسٹیک میں عام طور پر 5 سوئچ ہوتے ہیں جن میں سے ہر ایک میں 48 پورٹس ہوتے ہیں، اور ہر کراس کنیکٹ میں 10 تک رسائی کے اسٹیک ڈسٹری بیوشن سے منسلک ہوتے ہیں۔ اس طرح، ریڑھ کی ہڈی زیادہ سے زیادہ نظریاتی بوجھ پر بھی فی صارف تقریباً 30 Mbit/s فراہم کرتی ہے، جو کہ تحریر کے وقت ہماری تمام عملی ایپلی کیشنز کے لیے کافی ہے۔

نیٹ ورک آپ کو بغیر کسی رکاوٹ کے L2 اور L3 دونوں کے ذریعے کسی بھی صوابدیدی منسلک آلات کی جوڑی کو منظم کرنے کی اجازت دیتا ہے، ٹریفک کی مکمل تنہائی (جسے انفارمیشن سیکیورٹی سروس پسند کرتی ہے) اور فالٹ ڈومینز (جسے آپریشن ٹیم پسند کرتی ہے) فراہم کرتا ہے۔

اگلے حصے میں ہم آپ کو بتائیں گے کہ ہم نئے نیٹ ورک پر کیسے منتقل ہوئے۔ دیکھتے رہنا!

میکسم کلوچکوف
نیٹ ورک آڈٹ اور پیچیدہ پروجیکٹس گروپ کے سینئر کنسلٹنٹ
نیٹ ورک سولیوشن سینٹر
جیٹ انفو سسٹمز


ماخذ: www.habr.com

نیا تبصرہ شامل کریں