| tcpaccept.bt(8) | System Manager's Manual | tcpaccept.bt(8) |
نام (NAME)
tcpaccept.bt - ردیابی اتصالات غیرفعال TCP (تابع accept()). استفاده از bpftrace/eBPF
خلاصه دستور (SYNOPSIS)
tcpaccept.bt
توضیحات (DESCRIPTION)
این ابزار اتصالات غیرفعال (passive) پروتکل TCP را ردیابی میکند (برای نمونه از طریق فراخوان سیستمی accept()؛ در حالی که connect() برای اتصالات فعال است). این ابزار میتواند برای عیبیابی عمومی جهت مشاهده اتصالات جدیدی که سرور محلی میپذیرد، مفید باشد.
این ابزار از ردیابی پویای تابع سوکت هسته inet_csk_accept() (برگرفته از tcp_prot.accept) استفاده میکند، و برای تطابق با تغییرات هسته نیاز به اصلاح خواهد داشت.
این ابزار تنها فراخوانیهای موفق accept() در پروتکل TCP را ردیابی میکند. تلاشها برای اتصال به درگاههای بسته نشان داده نخواهند شد (آنها را میتوان از طریق توابع دیگر ردیابی کرد).
از آنجا که این ابزار از BPF استفاده میکند، تنها کاربر ریشه (root) میتواند از آن استفاده کند.
پیشنیازها (REQUIREMENTS)
CONFIG_BPF و bpftrace.
مثالها (EXAMPLES)
- ردیابی تمام اتصالات غیرفعال TCP (فراخوانیهای accept()):
- # tcpaccept.bt
فیلدها (FIELDS)
بار پردازشی (OVERHEAD)
این ابزار تابع inet_csk_accept هسته را ردیابی کرده و برای هر رویداد یک خروجی چاپ میکند. نرخ این فراخوانیها به برنامه سرور شما بستگی دارد. اگر یک سرور وب یا پروکسی باشد که دهها هزار اتصال در ثانیه را میپذیرد، بار پردازشی این ابزار ممکن است قابل سنجش باشد (اگرچه همچنان بسیار کارآمدتر از ردیابی تکتک بستهها است). اگر نرخ اتصالات کمتر از هزار در ثانیه باشد، انتظار میرود بار پردازشی ناچیز باشد. پیش از استفاده، این بار پردازشی را آزمایش کرده و بسنجید.
منبع (SOURCE)
این ابزار برگرفته از bpftrace است.
همچنین در توزیع bpftrace به فایل همراه _examples.txt که شامل نمونه نحوه استفاده، خروجی و توضیحات این ابزار است مراجعه کنید.
این یک نسخه bpftrace از ابزار bcc با همین نام است. ابزار bcc ممکن است گزینهها و سفارشیسازیهای بیشتری ارائه دهد.
سیستمعامل (OS)
Linux
پایداری (STABILITY)
ناپایدار - در حال توسعه.
نویسنده (AUTHOR)
Brendan Gregg، سازگار شده برای bpftrace توسط Dale Hamel
همچنین ببینید (SEE ALSO)
tcpconnect.bt(8), funccount(8), tcpdump(8)
| 2018-10-24 | USER COMMANDS |