.\" netsniff-ng - the packet sniffing beast .\" Copyright 2013 Daniel Borkmann. .\" Subject to the GPL, version 2. .TH IFPPS 8 "03 March 2013" "Linux" "netsniff-ng toolkit" .SH "نام (NAME)" ifpps \- آمار شبکه و سیستم به سبک ابزار top .PP .SH "خلاصه دستور (SYNOPSIS)" .PP \fBifpps\fR { [\fIoptions\fR] | [\fIdevice\fR] } .PP .SH "توضیحات (DESCRIPTION)" .PP ابزار \fBifpps\fR ابزار کمکی کوچکی است که به صورت دوره‌ای آمار شبکه و سیستم را به سبک برنامه top از کرنل استخراج و ارائه می‌کند. ifpps داده‌های خود را مستقیماً از فایل‌های procfs جمع‌آوری می‌کند و از هیچ کتابخانه پایش در فضای کاربری (user space) که ممکن است آمار را تحت بار ترافیکی سنگین تحریف کنند، استفاده نمی‌نماید. .PP برای نمونه، سناریوی زیر را در نظر بگیرید: دو رایانه لینوکسی که مستقیماً به یکدیگر متصل شده‌اند با پردازنده‌های Intel Core 2 Quad Q6600 2.40GHz، ۴ گیگابایت حافظه رم و یک کارت شبکه اترنت گیگابیتی Intel 82566DC-2 برای ارزیابی عملکرد به کار گرفته می‌شوند. یک ماشین بسته‌های شبکه ۶۴ بایتی را با استفاده از مولد بسته در فضای کرنل (pktgen) با حداکثر نرخ بسته ممکن تولید می‌کند. ماشین دیگر آمار بسته‌های شبکه ورودی را با استفاده از ۱) .BR iptraf (8) و ۲) ifpps نمایش می‌دهد. .PP ابزار iptraf که بر پایه .BR pcap (3) است، میانگین نرخ بسته ۲۴۶٬۰۰۰ بسته بر ثانیه (pps) را نشان می‌دهد در حالی که ifpps میانگین نرخ ۱٬۳۷۸٬۰۰۰ بسته بر ثانیه را نشان می‌دهد. بنابراین، به دلیل کپی‌های بسته و واگذاری محاسبه آمار به فضای کاربر، خطای اندازه‌گیری تقریباً ۴۶۰ درصدی رخ می‌دهد. ابزارهایی مانند iptraf ممکن است اطلاعات بیشتری مانند آمار TCP به ازای هر جریان (flow) نمایش دهند (علت استفاده از کتابخانه pcap). این قابلیت در ifpps امکان‌پذیر نیست زیرا تمرکز آن بر آمار کلی شبکه است؛ آماری که حتی تحت بار بسته بسیار سنگین نیز کاملاً قابل اتکا باشد. .PP ابزار ifpps همچنین به طور دوره‌ای بار پردازنده (CPU load)، وقفه‌ها و داده‌های وقفه نرم‌افزاری را به ازای هر بازه نمونه‌برداری و همچنین وقفه‌های کل را برای هر پردازنده نمایش می‌دهد. در صورتی که تعداد CPUها از ۵ بیشتر باشد یا بیشتر از تعداد مشخص‌شده توسط کاربر با گزینه خط فرمان \fB-n\fP باشد، ifpps تنها این تعداد از پربارترین پردازنده‌ها (top heavy hitters) را نشان می‌دهد. پرمصرف‌ترین CPU با علامت «+» مشخص می‌شود. کم‌مصرف‌ترین پردازنده همیشه نمایش داده می‌شود و با علامت «-» علامت‌گذاری می‌گردد. علاوه بر این، میانگین همه داده‌های فوق به ازای هر CPU نشان داده می‌شود. به صورت اختیاری می‌توان مقادیر میانه (median) را با استفاده از گزینه \fB-m\fP خط فرمان مشاهده کرد. .PP ابزار ifpps همچنین مستقیماً از قالب نمونه داده .BR gnuplot (1) پشتیبانی می‌کند. این ویژگی رسم نمودارهای gnuplot از سری‌های زمانی ifpps را بسیار ساده می‌سازد. .PP .SH "گزینه‌ها (OPTIONS)" .TP .B -d , --dev دستگاه شبکه جهت دریافت آمار از آن، برای مثال eth0، wlan0. .TP .B -n, --num-cpus تنظیم حداکثر تعداد پردازنده‌های پربار (از نظر زمان صرف‌شده در حالت سیستم/کاربر) برای نمایش در حالت ncurses؛ پیش‌فرض 10 است. .TP .B -t