امروزه میبینیم که هر کسی که در دنیای IT و DevOps فعالیت میکند، به دنبال یادگیری مهارتهای جدید و مورد نیاز بازار هست، و این امری طبیعی و مورد ستایش است. در دنیایی که میتوان گفت هر مهارتی که میآموزیم، اگر تجربهای که به واسطه آن یادگیری کسب میشود را نادیده بگیریم، عمر مفید آن بیشتر از دو یا سه سال نیست، و میبایست دائما در پی بروز کردن دانش خود با ابزارهای جدید باشیم. در این بین، استارتاپها و شرکتهای کوچکی که در لبه تکنولوژی حرکت میکنند، حساسیت خاصی روی استفاده از آخرین ابزارها و فناوریهای روز دنیا دارند به طوری که هر موضوعی که آنها را از این امر به حاشیه براند، ناپسند میدانند.
اما در این بین، برخی مهارتها هستند که سالیان سال در این حوزه وجود داشتهاند و هم اکنون نیز اهمیت خود را از دست ندادهاند. از این مهارتها میشود به پیکربندی passive زیرساخت شبکه یک سازمان اشاره کرد. به بیان سادهتر، نظم و ترتیب در اتاق سرور و رک، کابل کشی به اتاقها، مستند سازی نقشه کابل کشیها از موضوعات مربوط به بخش passive شبکه است، که به نظر میرسد این بخش مورد توجه سازمانهای نوپا و شرکتهای کوچک قرار نمیگیرد و در اینجا قصد دارم در رابطه با همین موضوع صحبت کنم.
استاندارد طراحی شبکه
برای کسانی که با این حوزه کمتر آشنایی دارند، ابتدا با معرفی لایههای شبکه، کمی موضوع را ملموستر میکنم.
در استاندارد طراحی شبکه در دنیا، شبکه را به ۷ لایه تقسیم بندی کردهاند. این ۷ لایه به ترتیب به این صورت بیان میشود:
- Physical
- Data Link
- Network
- Transport
- Session
- Presentation
- Application
برای مدیریت صحیح یک شبکه، میبایست به شناخت هر کدام از این لایه ها اشراف کامل داشت. حال توضیح کامل هر کدام از این ها از حوصله این نوشتار خارج است. اما به صورت کلی، هر چه در لایههای شبکه عمیق تر میشویم، پارامترهای درگیر در مسئله بیشتر میشود. به طور مثال در لایه physical با کابلهای ارتباطی و تجهزات شبکه به صورت فیزیکی در ارتباط هستیم، در لایه network با پیکربندی نرم افزاری روترها سر و کله می زنیم، و در لایه application با برنامهای که کاربر با آن در ارتباط است با همه جزییات آن سر و کار داریم.
یکی از دلایل اصلی لایه بندی ساختار شبکه، امکان ترسیم نقشه راه برای پیدا کردن ایراد یا troubleshooting است، موضوعی که اگر بیشتر از راه اندازی یک شبکه اهمیت نداشته باشد، اهمیت کمتری ندارد. همانطور که ذکر شد، هر چه در لایههای شبکه عمیقتر میشویم، پارامترهای درگیر در مسئله بیشتر میشوند، فلذا حل مسئله احتمالا دشوارتر میشود.
بیایید یک سناریو را با هم بررسی کنیم:
تصور کنید در یک سازمان با چندین دفتر در سطح شهر که با یکدیگر ارتباط امنی را شکل دادهاند، ارتباط کاربران یکی از دفاتر با سرویسهای سازمان قطع میگردد. اگر ادمین شبکه به صورت سردرگم در بین همه پارامترهای ۷ لایه شبکه به دنبال پیدا کردن ایراد کار بگردد، احتمالا مدت زیادی طول خواهد کشید تا ایراد شبکه شناسایی و برطرف گردد، چرا که بررسی مدون و مشخصی شکل نگرفته و صرفا ادمین با استرس و عجله، دنبال سرنخ مشکل است. حال اگر بخواهیم از روش اصولی عیب یابی شبکه پیروی کنیم، میدانیم که باید از لایه اول (physical) شروع کنیم و چنانچه مشکلی در هر لایه پیدا نکردیم، به بررسی پارامترهای لایه بعدی بپردازیم. اگر فرض بگیریم که در سناریوی مطرح شده، صرفا کابل اتصال سوییچ به روتر سازمان قطع شده و باعث قطعی ارتباط کاربران دفتر از سرویسها شده است، مشکل در همان لایه اول شبکه شناسایی خواهد شد و در کمترین زمان حل می گردد، چرا که اگر تجهیزات سازمان مرتب و منظم باشد، شناسایی قطع بودن یکی از کابلها بسیار کار سادهای است و تنها با خاموش بودن چراغ سوییچ مشخص میشود. حال اگر سازمان به لایه اول شبکه اهمیتی نداده باشد، و رک پر از کابلهای بی نام و نشان و درهم باشد، ادمین شبکه نمیتواند بررسیها را در لایه اول شبکه کامل کند، و به ناچار باید ساعتها در بین همه پارامترهای بیپایان بقیه لایههای شبکه به دنبال ایراد بگردد، و دست آخر متوجه میشود که موضوع به اندازه قطع شدن یک کابل، ساده و در کمترین زمان قابل حل بوده است.
نتیجهگیری
ذکر این مثال از آنجایی مورد اهمیت است که گاهی با انگیزه اینکه میخواهیم کاری نو، به روز و خلاقانه داشته باشیم، از انجام اصولی باز میمانیم که بعضا حذف ناشدنی هستند، و با حذف آنها، شاید در ابتدای کار متوجه خلأ خاصی نشویم، ولی یقینا به زودی با مشکلی روبرو میشویم که برای حل آن، شاید هزینه زیادی را متحمل شویم. به یاد داشته باشیم که حرکت روی لبه تکنولوژی امری ستودنی است، ولی نباید از اصولی که شاید قدیمی باشند، ولی هنوز لازمه کار هستند، باز بمانیم.