چرا CPU میکروتیک ناگهان بالا می‌رود؟ راهنمای کامل بررسی و رفع مشکل

چرا CPU میکروتیک ناگهان بالا می‌رود؟

اگر با کند شدن شبکه، افزایش تأخیر یا قطع و وصل شدن ارتباط کاربران مواجه شده‌اید، یکی از اولین مواردی که باید بررسی کنید، بالا رفتن CPU میکروتیک است. زمانی که پردازنده روتر به‌صورت غیرعادی درگیر می‌شود، عملکرد بسیاری از سرویس‌های شبکه تحت تأثیر قرار می‌گیرد و حتی ممکن است روتر از دسترس خارج شود. در بسیاری از موارد، کاربران تصور می‌کنند مشکل از سخت‌افزار است؛ در حالی که علت اصلی می‌تواند تنظیمات اشتباه، حملات شبکه، ترافیک غیرعادی یا حتی یک Rule نامناسب در Firewall باشد. در این مقاله دلایل اصلی بالا رفتن CPU میکروتیک، روش‌های تشخیص و راهکارهای رفع آن را بررسی می‌کنیم.

زمانی که مصرف CPU به ۸۰ تا ۱۰۰ درصد می‌رسد، ممکن است با مشکلات زیر روبه‌رو شوید:

  • کاهش سرعت اینترنت
  • افزایش Ping و Latency
  • کاهش سرعت Routing
  • اختلال در Queueها
  • تأخیر در پاسخ RouterOS
  • ریست شدن برخی سرویس‌ها
  • از کار افتادن Winbox یا WebFig

اگر این وضعیت برای مدت طولانی ادامه داشته باشد، پایداری کل شبکه کاهش پیدا می‌کند.

برای مشاهده میزان مصرف پردازنده می‌توانید از مسیر زیر استفاده کنید:

System → Resources

یا در ترمینال دستور زیر را اجرا کنید:

/system resource print

برای مشاهده پردازش‌هایی که بیشترین مصرف CPU را دارند نیز از دستور زیر استفاده کنید:

/tool profile

این دستور دقیقاً مشخص می‌کند که کدام سرویس بیشترین بار را روی پردازنده ایجاد کرده است.

نتایج بالا رفتن CPU میکروتیک

1. حملات شبکه (DDoS یا Flood)

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

حملاتی مانند:

  • SYN Flood
  • UDP Flood
  • ICMP Flood
  • Port Scan
  • Connection Flood

باعث می‌شوند روتر مجبور شود هزاران یا میلیون‌ها Packet را در هر ثانیه پردازش کند.

راهکار

  • محدود کردن Connectionها
  • استفاده از Firewall Filter
  • فعال کردن Address List
  • استفاده از Raw Table
  • مسدود کردن IPهای مخرب

2. تعداد بسیار زیاد Connection

اگر تعداد Connectionهای فعال بسیار زیاد باشد، CPU به شدت درگیر خواهد شد.

برای بررسی:

/ip firewall connection print count-only

اگر تعداد Connectionها غیرعادی باشد باید علت آن بررسی شود.

ممکن است:

  • کاربران دانلود سنگین انجام دهند.
  • یک ویروس در شبکه وجود داشته باشد.
  • حمله خارجی در حال انجام باشد.

3. Ruleهای زیاد در Firewall

هر Packet باید تمام Ruleهای Firewall را بررسی کند. اگر:

  • صدها Rule داشته باشید
  • ترتیب Ruleها مناسب نباشد
  • Ruleهای غیرضروری وجود داشته باشند

مصرف CPU افزایش پیدا می‌کند.

پیشنهاد

  • Ruleهای بلااستفاده را حذف کنید.
  • Ruleهای پرتکرار را در ابتدای لیست قرار دهید.
  • از Address List استفاده کنید.
  • تا جای ممکن از Raw Firewall بهره ببرید.

Queueها مخصوصاً در ISPها یا شبکه‌های بزرگ می‌توانند بار پردازشی زیادی ایجاد کنند. خصوصاً:

  • Simple Queue زیاد
  • Queue Tree پیچیده
  • PCQ با کاربران زیاد

اگر صدها Queue فعال باشد، پردازنده دائماً درگیر مدیریت پهنای باند خواهد بود.

راهکار

  • کاهش تعداد Queueها
  • استفاده از Queue Tree به‌صورت اصولی
  • حذف Queueهای قدیمی

اگر روتر تعداد زیادی Route را پردازش کند، CPU نیز بیشتر درگیر می‌شود. نمونه‌ها:

  • تعداد زیاد Static Route
  • OSPF بزرگ
  • BGP
  • MPLS
  • VRFهای متعدد

در شبکه‌های Enterprise طبیعی است که مصرف CPU بیشتر از شبکه‌های کوچک باشد.

وجود تعداد زیاد Ruleهای NAT باعث افزایش پردازش Packetها می‌شود. بهتر است:

  • Ruleهای اضافی حذف شوند.
  • Ruleهای مشابه ادغام شوند.
  • ترتیب Ruleها بهینه شود.

یکی از مهم‌ترین قابلیت‌های RouterOS، FastTrack است. در صورت فعال بودن FastTrack، بسیاری از Packetها بدون عبور از تمام مراحل Firewall پردازش می‌شوند. در نتیجه:

  • مصرف CPU کاهش پیدا می‌کند.
  • سرعت شبکه افزایش می‌یابد.

البته اگر از برخی قابلیت‌ها مانند Queueهای خاص، IPsec یا سیاست‌های پیچیده Firewall استفاده می‌کنید، باید قبل از فعال‌سازی FastTrack سازگاری آن را بررسی کنید.

پروتکل‌های تانل به دلیل رمزنگاری، فشار قابل توجهی روی CPU وارد می‌کنند. اگر تعداد کاربران تانل زیاد باشد، بالا رفتن CPU میکروتیک کاملاً طبیعی است. در چنین شرایطی استفاده از روترهای قدرتمندتر یا پروتکل‌های بهینه‌تر می‌تواند عملکرد را بهبود دهد.

گاهی مشکل اصلاً از خود روتر نیست. وجود Loop در شبکه باعث ایجاد حجم بسیار زیادی از Broadcast می‌شود. نتیجه آن:

  • مصرف بالای CPU
  • افزایش مصرف Interface
  • کند شدن کل شبکه

برای جلوگیری از این مشکل بهتر است:

  • STP یا RSTP فعال باشد.
  • کابل‌های Loop حذف شوند.
  • سوئیچ‌ها به‌درستی پیکربندی شوند.

بسیاری از سرویس‌های RouterOS ممکن است بدون استفاده فعال باشند. مانند:

  • FTP
  • Telnet
  • WWW
  • API
  • Socks
  • Proxy

اگر به آن‌ها نیاز ندارید، غیرفعال کردنشان هم امنیت را افزایش می‌دهد و هم بار پردازشی را کاهش می‌دهد.

دلایل بالا رفتن CPU میکروتیک

در برخی نسخه‌های قدیمی RouterOS باگ‌هایی وجود دارد که باعث مصرف غیرعادی CPU می‌شوند. همیشه بهتر است:

  • RouterOS را به نسخه پایدار به‌روزرسانی کنید.
  • Firmware دستگاه نیز آپدیت شود.

البته قبل از هر به‌روزرسانی، حتماً از تنظیمات Backup تهیه کنید.

بهترین ابزار برای یافتن علت، دستور زیر است:

/tool profile

خروجی این دستور مشخص می‌کند مصرف CPU مربوط به کدام بخش است. برای مثال:

  • Firewall
  • Routing
  • Management
  • Bridging
  • Queues
  • Encryption
  • Networking

با این اطلاعات می‌توانید دقیقاً روی همان بخش تمرکز کنید و زمان عیب‌یابی را به‌طور قابل توجهی کاهش دهید.

بله. گاهی هیچ مشکلی در تنظیمات وجود ندارد و تنها دلیل، انتخاب روتر نامناسب است. برای مثال اگر:

  • هزار کاربر دارید،
  • Queueهای متعدد استفاده می‌کنید،
  • Routing سنگین انجام می‌دهید،

استفاده از یک روتر اقتصادی منطقی نیست. در چنین شرایطی باید از مدل‌هایی با CPU قوی‌تر، تعداد هسته بیشتر و حافظه RAM بالاتر استفاده کنید.

برای کاهش مصرف پردازنده، این اقدامات معمولاً بیشترین تأثیر را دارند:

  • بررسی خروجی /tool profile
  • حذف Ruleهای اضافی Firewall
  • فعال کردن FastTrack در صورت امکان
  • کاهش تعداد Queueها
  • بررسی حملات DDoS
  • حذف Loopهای شبکه
  • غیرفعال کردن سرویس‌های بلااستفاده
  • به‌روزرسانی RouterOS
  • بررسی تعداد Connectionها
  • ارتقای سخت‌افزار در صورت نیاز

اجرای این موارد معمولاً باعث کاهش چشمگیر مصرف CPU و افزایش پایداری شبکه می‌شود.

بالا رفتن CPU میکروتیک همیشه به معنای خرابی دستگاه نیست. در بیشتر موارد، این مشکل به دلیل حجم بالای ترافیک، حملات شبکه، قوانین غیربهینه Firewall، Queueهای سنگین یا تنظیمات نامناسب RouterOS ایجاد می‌شود.

اولین قدم برای عیب‌یابی، بررسی مصرف پردازنده با ابزارهایی مانند /tool profile و System Resources است. سپس با شناسایی بخشی که بیشترین مصرف را دارد، می‌توان تنظیمات را بهینه کرد یا در صورت نیاز سخت‌افزار را ارتقا داد. با مانیتورینگ منظم و پیاده‌سازی اصول صحیح طراحی شبکه، می‌توان از تکرار بالا رفتن CPU میکروتیک جلوگیری کرد و عملکردی پایدار و سریع برای کاربران فراهم ساخت.

محصول با موفقیت به سبد خرید اضافه شد.
تماس با ما