رایجترین ابزار برای نظارت و عیبیابی شبکه امروزه، Switch Port Analyzer (SPAN) است که با نام Port Mirroring نیز شناخته میشود. این ابزار به ما امکان میدهد ترافیک شبکه را در حالت Bypass خارج از باند و بدون تداخل با سرویسهای موجود در شبکهی فعال، نظارت کنیم و یک کپی از ترافیک نظارت شده را به دستگاههای محلی یا راه دور، از جمله Sniffer، IDS یا سایر انواع ابزارهای تحلیل شبکه ارسال میکند.
برخی از کاربردهای معمول عبارتند از:
• عیبیابی مشکلات شبکه با ردیابی فریمهای کنترل/داده؛
• با نظارت بر بستههای VoIP، تأخیر و لرزش را تجزیه و تحلیل کنید.
• تجزیه و تحلیل تأخیر با نظارت بر تعاملات شبکه؛
• با نظارت بر ترافیک شبکه، ناهنجاریها را تشخیص دهید.
ترافیک SPAN میتواند به صورت محلی به پورتهای دیگر در همان دستگاه مبدا منعکس شود، یا از راه دور به سایر دستگاههای شبکه مجاور لایه ۲ دستگاه مبدا (RSPAN) منعکس شود.
امروز قصد داریم در مورد فناوری نظارت از راه دور ترافیک اینترنت به نام ERSPAN (Encapsulated Remote Switch Port Analyzer) صحبت کنیم که میتواند از طریق سه لایه IP منتقل شود. این فناوری، توسعه یافته SPAN به Encapsulated Remote است.
اصول عملیاتی پایه ERSPAN
ابتدا، نگاهی به ویژگیهای ERSPAN میاندازیم:
• یک کپی از بسته از پورت مبدا به سرور مقصد ارسال میشود تا از طریق Generic Routing Encapsulation (GRE) تجزیه شود. مکان فیزیکی سرور محدود نشده است.
• با کمک ویژگی فیلد تعریفشده توسط کاربر (UDF) تراشه، هرگونه آفست ۱ تا ۱۲۶ بایتی بر اساس دامنه پایه از طریق لیست توسعهیافته سطح متخصص انجام میشود و کلمات کلیدی جلسه برای تحقق تجسم جلسه، مانند دستدهی سهطرفه TCP و جلسه RDMA، تطبیق داده میشوند.
• پشتیبانی از تنظیم نرخ نمونهبرداری؛
• پشتیبانی از طول رهگیری بسته (Packet Slicing)، که فشار روی سرور هدف را کاهش میدهد.
با این ویژگیها، میتوانید ببینید که چرا ERSPAN ابزاری ضروری برای نظارت بر شبکههای درون مراکز داده امروزی است.
وظایف اصلی ERSPAN را میتوان در دو جنبه خلاصه کرد:
• قابلیت مشاهدهی جلسه: از ERSPAN برای جمعآوری تمام جلسات جدید ایجاد شدهی TCP و Remote Direct Memory Access (RDMA) به سرور back-end برای نمایش استفاده کنید.
• عیبیابی شبکه: هنگام بروز مشکل در شبکه، ترافیک شبکه را برای تجزیه و تحلیل خطا ضبط میکند.
برای انجام این کار، دستگاه شبکه منبع باید ترافیک مورد نظر کاربر را از جریان عظیم دادهها فیلتر کند، یک کپی تهیه کند و هر فریم کپی را در یک "کانتینر سوپرفریم" ویژه که اطلاعات اضافی کافی را حمل میکند تا بتوان آن را به درستی به دستگاه گیرنده هدایت کرد، کپسوله کند. علاوه بر این، دستگاه گیرنده را قادر سازد تا ترافیک اصلی نظارت شده را استخراج و به طور کامل بازیابی کند.
دستگاه گیرنده میتواند سرور دیگری باشد که از کپسولهسازی بستههای ERSPAN پشتیبانی میکند.
تحلیل نوع و قالب بستهبندی ERSPAN
بستههای ERSPAN با استفاده از GRE کپسولهسازی شده و از طریق اترنت به هر مقصد قابل آدرسدهی IP ارسال میشوند. ERSPAN در حال حاضر عمدتاً در شبکههای IPv4 استفاده میشود و پشتیبانی از IPv6 در آینده یک الزام خواهد بود.
برای ساختار کلی کپسولهسازی ERSAPN، در زیر یک ضبط بسته آینهای از بستههای ICMP آمده است:
علاوه بر این، فیلد نوع پروتکل در سرآیند GRE، نوع ERSPAN داخلی را نیز نشان میدهد. فیلد نوع پروتکل 0x88BE نشان دهنده ERSPAN نوع II و 0x22EB نشان دهنده ERSPAN نوع III است.
۱. نوع اول
فریم ERSPAN نوع اول، IP و GRE را مستقیماً روی هدر فریم آینهای اصلی کپسوله میکند. این کپسولهسازی ۳۸ بایت به فریم اصلی اضافه میکند: ۱۴(MAC) + ۲۰ (IP) + ۴(GRE). مزیت این فرمت این است که اندازه هدر آن جمع و جور است و هزینه انتقال را کاهش میدهد. با این حال، از آنجا که فیلدهای GRE Flag و Version را روی ۰ تنظیم میکند، هیچ فیلد توسعهیافتهای را حمل نمیکند و نوع اول به طور گسترده استفاده نمیشود، بنابراین نیازی به گسترش بیشتر نیست.
قالب هدر GRE نوع اول به شرح زیر است:
۲. نوع دوم
در نوع دوم، فیلدهای C، R، K، S، S، Recur، Flags و Version در هدر GRE همگی 0 هستند به جز فیلد S. بنابراین، فیلد Sequence Number در هدر GRE نوع دوم نمایش داده میشود. یعنی نوع دوم میتواند ترتیب دریافت بستههای GRE را تضمین کند، به طوری که تعداد زیادی از بستههای GRE خارج از ترتیب به دلیل خطای شبکه قابل مرتبسازی نیستند.
قالب هدر GRE نوع دوم به شرح زیر است:
علاوه بر این، فرمت فریم ERSPAN نوع II یک سرآیند ERSPAN هشت بایتی بین سرآیند GRE و فریم آینهای اصلی اضافه میکند.
قالب سرآیند ERSPAN برای نوع دوم به شرح زیر است:
در نهایت، بلافاصله پس از فریم تصویر اصلی، کد استاندارد بررسی افزونگی چرخهای (CRC) اترنت ۴ بایتی قرار دارد.
شایان ذکر است که در پیادهسازی، قاب آینهای حاوی فیلد FCS قاب اصلی نیست، در عوض یک مقدار CRC جدید بر اساس کل ERSPAN دوباره محاسبه میشود. این بدان معناست که دستگاه گیرنده نمیتواند صحت CRC قاب اصلی را تأیید کند و ما فقط میتوانیم فرض کنیم که فقط قابهای سالم آینهای میشوند.
۳. نوع سوم
نوع سوم، یک هدر ترکیبی بزرگتر و انعطافپذیرتر را معرفی میکند تا سناریوهای نظارت بر شبکه که به طور فزایندهای پیچیده و متنوع هستند، از جمله مدیریت شبکه، تشخیص نفوذ، تجزیه و تحلیل عملکرد و تأخیر و موارد دیگر را پوشش دهد. این صحنهها باید تمام پارامترهای اصلی قاب آینه را بدانند و شامل مواردی باشند که در خود قاب اصلی وجود ندارند.
هدر ترکیبی ERSPAN نوع III شامل یک هدر اجباری ۱۲ بایتی و یک زیر هدر اختیاری ۸ بایتی مخصوص پلتفرم است.
قالب سرآیند ERSPAN برای نوع III به شرح زیر است:
دوباره، بعد از قاب آینه اصلی، یک CRC 4 بایتی قرار دارد.
همانطور که از قالب هدر نوع III مشاهده میشود، علاوه بر حفظ فیلدهای Ver، VLAN، COS، T و Session ID بر اساس نوع II، فیلدهای ویژه بسیاری نیز اضافه شدهاند، مانند:
• BSO: برای نشان دادن یکپارچگی بار فریمهای دادهای که از طریق ERSPAN حمل میشوند، استفاده میشود. ۰۰ فریم خوب، ۱۱ فریم بد، ۰۱ فریم کوتاه و ۱۱ فریم بزرگ است؛
• مهر زمان: از ساعت سختافزاری همگامسازی شده با زمان سیستم صادر میشود. این فیلد ۳۲ بیتی حداقل ۱۰۰ میکروثانیه از جزئیات مهر زمان را پشتیبانی میکند؛
• نوع فریم (P) و نوع فریم (FT): اولی برای مشخص کردن اینکه آیا ERSPAN فریمهای پروتکل اترنت (فریمهای PDU) را حمل میکند یا خیر، و دومی برای مشخص کردن اینکه آیا ERSPAN فریمهای اترنت یا بستههای IP را حمل میکند، استفاده میشود.
• شناسه HW: شناسه منحصر به فرد موتور ERSPAN در سیستم؛
• Gra (دانهبندی مهر زمان): دانهبندی مهر زمان را مشخص میکند. برای مثال، 00B نشان دهنده دانهبندی 100 میکروثانیه، 01B نشان دهنده دانهبندی 100 نانوثانیه، 10B نشان دهنده دانهبندی IEEE 1588 و 11B برای دستیابی به دانهبندی بالاتر به زیرعنوانهای مخصوص پلتفرم نیاز دارد.
• شناسه پلتفرم (Platf ID) در مقابل اطلاعات خاص پلتفرم (Platf Specific Info): فیلدهای اطلاعات خاص پلتفرم بسته به مقدار شناسه پلتفرم، قالبها و محتوای متفاوتی دارند.
لازم به ذکر است که فیلدهای هدر مختلف پشتیبانی شده در بالا میتوانند در برنامههای معمولی ERSPAN، حتی در آینهسازی فریمهای خطا یا فریمهای BPDU، با حفظ بسته اصلی Trunk و شناسه VLAN، مورد استفاده قرار گیرند. علاوه بر این، اطلاعات برچسب زمانی کلید و سایر فیلدهای اطلاعاتی را میتوان در طول آینهسازی به هر فریم ERSPAN اضافه کرد.
با استفاده از هدرهای ویژگی خود ERSPAN، میتوانیم به تحلیل دقیقتری از ترافیک شبکه دست یابیم و سپس به سادگی ACL مربوطه را در فرآیند ERSPAN نصب کنیم تا با ترافیک شبکه مورد نظر ما مطابقت داشته باشد.
ERSPAN قابلیت مشاهده جلسه RDMA را پیادهسازی میکند
بیایید مثالی از استفاده از فناوری ERSPAN برای دستیابی به تجسم جلسه RDMA در یک سناریوی RDMA بزنیم:
آر دی ام ایدسترسی مستقیم از راه دور به حافظه، آداپتور شبکه سرور A را قادر میسازد تا با استفاده از کارتهای رابط شبکه هوشمند (inics) و سوئیچها، حافظه سرور B را بخواند و بنویسد و به پهنای باند بالا، تأخیر کم و استفاده کم از منابع دست یابد. این فناوری به طور گسترده در سناریوهای کلان داده و ذخیرهسازی توزیعشده با کارایی بالا استفاده میشود.
RoCEv2: RDMA روی اترنت همگرا نسخه ۲. دادههای RDMA در هدر UDP کپسوله میشوند. شماره پورت مقصد ۴۷۹۱ است.
بهرهبرداری و نگهداری روزانه از RDMA نیازمند جمعآوری دادههای زیادی است که برای جمعآوری خطوط مرجع سطح آب روزانه و هشدارهای غیرعادی و همچنین مبنایی برای یافتن مشکلات غیرعادی استفاده میشود. با ترکیب ERSPAN، میتوان دادههای عظیمی را به سرعت جمعآوری کرد تا دادههای کیفیت ارسال در میکروثانیه و وضعیت تعامل پروتکل تراشه سوئیچینگ به دست آید. از طریق آمار و تجزیه و تحلیل دادهها، میتوان ارزیابی و پیشبینی کیفیت ارسال در RDMA را به صورت سرتاسری انجام داد.
برای دستیابی به تجسم جلسه RDAM، به ERSPAN نیاز داریم تا کلمات کلیدی را برای جلسات تعامل RDMA هنگام آینهسازی ترافیک مطابقت دهد و باید از لیست توسعهیافته متخصص استفاده کنیم.
تعریف فیلد تطبیق لیست توسعهیافته در سطح متخصص:
UDF از پنج فیلد تشکیل شده است: کلمه کلیدی UDF، فیلد پایه، فیلد آفست، فیلد مقدار و فیلد ماسک. با توجه به ظرفیت ورودیهای سختافزاری، در مجموع میتوان از هشت UDF استفاده کرد. یک UDF میتواند حداکثر دو بایت را تطبیق دهد.
• کلمه کلیدی UDF: UDF1... UDF8 شامل هشت کلمه کلیدی از دامنه منطبق UDF است
• فیلد پایه: موقعیت شروع فیلد تطبیق UDF را مشخص میکند. موارد زیر
هدر L4 (قابل استفاده برای RG-S6520-64CQ)
هدر L5 (برای RG-S6510-48VS8Cq)
• آفست: نشان دهندهی آفست بر اساس فیلد پایه است. مقدار آن از 0 تا 126 متغیر است.
• فیلد مقدار: مقدار تطبیقی. میتوان از آن به همراه فیلد ماسک برای پیکربندی مقدار خاصی که باید تطبیق داده شود، استفاده کرد. بیت معتبر دو بایت است.
• فیلد ماسک: ماسک، بیت معتبر دو بایت است
(اضافه کنید: اگر چندین ورودی در یک فیلد تطبیق UDF استفاده شوند، فیلدهای پایه و افست باید یکسان باشند.)
دو بسته کلیدی مرتبط با وضعیت جلسه RDMA عبارتند از بسته اعلان ازدحام (CNP) و بسته تأیید منفی (NAK):
اولی توسط گیرنده RDMA پس از دریافت پیام ECN ارسال شده توسط سوئیچ (هنگامی که بافر خروجی به آستانه میرسد) تولید میشود، که شامل اطلاعاتی در مورد جریان یا QP است که باعث ازدحام میشود. دومی برای نشان دادن اینکه انتقال RDMA دارای پیام پاسخ از دست دادن بسته است، استفاده میشود.
بیایید نگاهی به نحوه تطبیق این دو پیام با استفاده از لیست توسعهیافته در سطح متخصص بیندازیم:
لیست دسترسی متخصص، توسعهیافته توسط RDMA
مجوز udp هر هر هر هر هر eq 4791udf 1 l4_header 8 0x8100 0xFF00(مطابق با RG-S6520-64CQ)
مجوز udp هر هر هر هر هر eq 4791udf 1 l5_header 0 0x8100 0xFF00(مطابق با RG-S6510-48VS8CQ)
لیست دسترسی متخصص، توسعهیافته توسط RDMA
مجوز udp هر هر هر هر هر eq 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(مطابق با RG-S6520-64CQ)
مجوز udp هر هر هر هر هر eq 4791udf 1 l5_header 0 0x1100 0xFF00 udf 2 l5_header 12 0x6000 0xFF00(مطابق با RG-S6510-48VS8CQ)
به عنوان مرحله آخر، میتوانید جلسه RDMA را با نصب لیست افزونههای تخصصی در فرآیند ERSPAN مناسب، تجسم کنید.
در آخر بنویسید
ERSPAN یکی از ابزارهای ضروری در شبکههای مراکز داده امروزی است که به طور فزایندهای بزرگ میشوند، ترافیک شبکه به طور فزایندهای پیچیده میشود و الزامات بهرهبرداری و نگهداری شبکه به طور فزایندهای پیچیده میشوند.
با افزایش درجه اتوماسیون عملیات و نگهداری (O&M)، فناوریهایی مانند Netconf، RESTconf و gRPC در بین دانشجویان عملیات و نگهداری در عملیات و نگهداری خودکار شبکه محبوب هستند. استفاده از gRPC به عنوان پروتکل اساسی برای ارسال ترافیک آینهای (mirror) نیز مزایای زیادی دارد. به عنوان مثال، بر اساس پروتکل HTTP/2، میتواند از مکانیسم ارسال جریان (streaming push) تحت همان اتصال پشتیبانی کند. با رمزگذاری ProtoBuf، اندازه اطلاعات در مقایسه با فرمت JSON به نصف کاهش مییابد و انتقال دادهها را سریعتر و کارآمدتر میکند. فقط تصور کنید، اگر از ERSPAN برای آینهسازی جریانهای مورد نظر و سپس ارسال آنها به سرور تجزیه و تحلیل در gRPC استفاده کنید، آیا این امر توانایی و کارایی عملیات و نگهداری خودکار شبکه را تا حد زیادی بهبود میبخشد؟
زمان ارسال: ۱۰ مه ۲۰۲۲