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

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

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

در این مطلب به معرفی و آموزش ۴ ابزار کاربردی و محبوب برای پایش مصرف پهنای باند شبکه در لینوکس می‌پردازیم و نحوه نصب و استفاده از آن‌ها را به صورت گام به گام بررسی می‌کنیم.

چرا شناسایی پردازش‌های پرمصرف پهنای باند اهمیت دارد؟

شبکه سرورهای لینوکس همواره در حال مبادله داده با کاربران و سایر سرویس‌ها است. برنامه‌های مختلفی مانند وب‌سرورها، دیتابیس‌ها، ابزارهای دانلود، سرویس‌های بکاپ و حتی بدافزارها می‌توانند حجم زیادی از پهنای باند شبکه را اشغال کنند. عدم آگاهی از میزان مصرف هر پردازش می‌تواند منجر به اختلال در ارائه خدمات شود.

با شناسایی پردازش‌های مصرف‌کننده ترافیک، مدیران شبکه می‌توانند برنامه‌های مخرب یا پرمصرف را تشخیص داده و نسبت به محدودسازی یا متوقف کردن آن‌ها اقدام کنند. همچنین این کار به بهینه‌سازی تخصیص منابع سیستم و افزایش پایداری سرور کمک شایانی می‌کند.

۱. ابزار nethogs پایش ترافیک شبکه به تفکیک پردازش

ابزار nethogs یکی از کاربردی‌ترین و محبوبترین ابزارهای خط فرمان در لینوکس برای مشاهده ترافیک شبکه به تفکیک هر پردازش است. بر خلاف ابزارهای سنتی که ترافیک را بر اساس پروتکل یا آدرس IP دسته‌بندی می‌کنند، nethogs پهنای باند را دقیقا بر اساس نام برنامه و شناسه پردازش (PID) گروه‌بندی می‌کند.

این ابزار به صورت زنده سرعت ارسال (TX) و دریافت (RX) داده را برای هر پردازش نشان می‌دهد، که این موضوع پیدا کردن برنامه‌های پرمصرف را بسیار ساده می‌سازد.

نصب ابزار nethogs در توزیع‌های مختلف لینوکس

برای نصب nethogs در توزیع‌های مبتنی بر دبیان و اوبونتو می‌توانید از مدیریت پکیج apt استفاده کنید:

sudo apt update
sudo apt install nethogs -y

در توزیع‌های مبتنی بر ردهت مانند RHEL، CentOS و Fedora ابتدا مخزن EPEL را فعال کرده و سپس برنامه را نصب کنید:

sudo dnf install epel-release -y
sudo dnf install nethogs -y

نحوه استفاده از nethogs

برای اجرای nethogs کافی است دستور را با دسترسی root و با مشخص کردن کارت شبکه مورد نظر اجرا کنید:

sudo nethogs eth0

اگر نام کارت شبکه را مشخص نکنید، nethogs به صورت خودکار کارت شبکه اصلی سیستم را پایش خواهد کرد.

۲. ابزار iftop تحلیل زنده اتصالات و ترافیک شبکه

ابزار iftop مشابه دستور top در لینوکس عمل می‌کند، با این تفاوت که به جای پردازش‌های CPU و رم، ترافیک شبکه را به صورت زنده نمایش می‌دهد. این ابزار لیستی از اتصالات فعال شبکه میان میزبان محلی و آدرس‌های مقصد را به همراه میزان پهنای باند مصرفی نشان می‌دهد.

اگرچه iftop ترافیک را مستقیم بر اساس نام پردازش دسته‌بندی نمی‌کند، اما به دلیل نمایش دقیق پورت‌ها و آدرس‌های IP ارتباطی، ابزاری عالی برای پیدا کردن منشا ترافیک و ترکیب آن با دستورهای مدیریت پردازش مانند lsof یا netstat است.

نصب ابزار iftop

برای نصب iftop در سیستم‌عامل اوبونتو و دبیان دستور زیر را وارد کنید:

sudo apt update
sudo apt install iftop -y

برای نصب در توزیع‌های CentOS و RHEL از دستور زیر استفاده کنید:

sudo dnf install iftop -y

نحوه اجرا و کلیدهای کاربردی iftop

برای اجرای برنامه روی یک کارت شبکه خاص از سوییچ i- استفاده می‌شود:

sudo iftop -i eth0

در محیط برنامه با فشردن کلید p می‌توانید شماره پورت‌ها را مشاهده کنید، که به شناسایی سرویس مربوطه کمک می‌کند.

۳. ابزار nload نمایش گرافیکی و لحظه‌ای مصرف پهنای باند

ابزار nload یک برنامه متنی و گرافیکی ساده در محیط ترمینال است که میزان ترافیک ورودی و خروجی را به صورت نمودارهای بصری ASCII نمایش می‌دهد. این ابزار کل پهنای باند مصرفی، حداقل، حداکثر و میزان متوسط انتقال داده را به طور شفاف در اختیار شما قرار می‌دهد.

کاربرد اصلی nload در سنجش کلی ترافیک کارت‌های شبکه و بررسی نوسانات مصرف پهنای باند در طول زمان است.

نصب ابزار nload

نصب nload در اوبونتو و دبیان به سادگی با دستور زیر انجام می‌شود:

sudo apt update
sudo apt install nload -y

نصب در توزیع‌های مبتنی بر RedHat از طریق مخزن EPEL انجام می‌پذیرد:

sudo dnf install nload -y

نحوه کار با nload

با اجرای ساده دستور nload در ترمینال، وضعیت کارت شبکه اصلی نمایش داده می‌شود:

nload

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

۴. ابزار netstat یا ss به همراه lsof شناسایی دقیق پردازش متصل به شبکه

علاوه بر ابزارهای پایش زنده، ترکیب ابزارهای بومی لینوکس مانند ss یا netstat با ابزار lsof یکی از دقیق‌ترین روش‌ها برای یافتن شناسه پردازش (PID) و نام دقیق برنامه‌ای است که از یک پورت یا اتصال شبکه‌ای خاص استفاده می‌کند.

این روش نیازی به نصب برنامه‌های جانبی پیچیده ندارد و در تمامی سیستم‌عامل‌های لینوکس به صورت پیش‌فرض یا با نصب پکیج‌های پایه در دسترس است.

یافتن پورت‌های فعال با دستور ss

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

sudo ss -tunlp

شناسایی برنامه با استفاده از lsof

اگر از طریق ابزارهایی مانند iftop یا ss متوجه شدید که یک پورت خاص ترافیک زیادی ایجاد کرده است، می‌توانید با دستور lsof نام دقیق برنامه متصل به آن پورت را پیدا کنید:

sudo lsof -i :80

خروجی این دستور نام دستور، شناسه پردازش (PID) و کاربری که آن را اجرا کرده است به طور کامل نشان می‌دهد.

جمع‌بندی

پایش پهنای باند و شناسایی پردازش‌های پرمصرف یکی از مهارت‌های کلیدی برای مدیریت بهینه سرورها و شبکه‌های لینوکسی است. ابزارهایی مانند nethogs و iftop به شما کمک می‌کنند تا در کوتاه‌ترین زمان ممکن برنامه‌های پرمصرف را شناسایی کنید، در حالی که nload دیدی کلی از نوسانات ترافیک ارائه می‌دهد و ترکیب ss با lsof جزئیات دقیق پردازش را روشن می‌سازد.

استفاده منظم از این ابزارها به شما امکان می‌دهد تا پایداری شبکه را حفظ کرده، امنیت سیستم را ارتقا داده و از مصرف بی‌رویه منابع سرور جلوگیری کنید.

نوشتن نظر

نوشتن دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *