| PBFIFO(8) | Linux | PBFIFO(8) |
نام (NAME)
tc-bfifo - صف خروج به ترتیب ورود (FIFO) با محدودیت بایت یا بسته در کنترل ترافیک
pfifo - صف خروج به ترتیب ورود با محدودیت بسته
bfifo - صف خروج به ترتیب ورود با محدودیت بایت
خلاصه دستور (SYNOPSIS)
tc qdisc ... add pfifo [ limit بستهها ]
tc qdisc ... add bfifo [ limit بایتها ]
توضیحات (DESCRIPTION)
انضباطهای صف (qdiscهای) pfifo و bfifo صفهای ساده خروج به ترتیب ورود (First In, First Out یا FIFO) و بدون آرایشهای اضافی هستند. آنها سادهترین صفهای ممکن بوده و در نتیجه هیچ بار پردازشی اضافی (overhead) ندارند. pfifo اندازه صف را بر حسب بسته محدود میکند و bfifo این کار را بر حسب بایت انجام میدهد.
مانند تمام qdiscهای غیرپیشفرض، این صفها نیز آمار و اطلاعات مربوط به عملکرد را نگهداری میکنند. این ویژگی میتواند دلیلی برای ترجیح دادن pfifo یا bfifo نسبت به گزینه پیشفرض باشد.
الگوریتم (ALGORITHM)
فهرستی از بستهها نگهداری میشود؛ هنگامی که بستهای وارد صف (enqueue) میشود، به انتهای فهرست اضافه میگردد. زمانی که لازم است بستهای به شبکه ارسال شود، از ابتدای فهرست برداشته میشود.
اگر طول فهرست بیش از حد مجاز شود، بسته جدیدی پذیرفته نخواهد شد. به این عمل «دور انداختن از انتهای صف» (tail drop) گفته میشود.
پارامترها (PARAMETERS)
- limit
- حداکثر اندازه صف. برای bfifo بر حسب بایت و برای pfifo بر حسب بسته تعیین میشود. مقدار پیشفرض برای pfifo برابر با txqueuelen رابط شبکه است، همانطور که با دستور ip(8) مشخص میشود. محدوده مجاز برای این پارامتر [0, UINT32_MAX] است.
- برای bfifo، مقدار پیشفرض حاصلضرب txqueuelen در مقدار MTU رابط شبکه است. محدوده مجاز برای این پارامتر [0, UINT32_MAX] بایت است.
نکته: هنگام شمارش طول بستهها، هدر لایه پیوند داده (link layer header) نیز محاسبه میشود.
خروجی (OUTPUT)
خروجی دستور tc -s qdisc ls شامل مقدار محدودیت (limit)، چه بر حسب بسته و چه بر حسب بایت، و تعداد بایتها و بستههایی است که عملاً ارسال شدهاند. بستههای ارسالنشده و دور ریختهشده (dropped) تنها در بین ابروها (کروشهها/پرانتزها) نمایش داده میشوند و جزو «ارسالشده» (Sent) شمرده نمیشوند.
در این مثال، طول صف ۱۰۰ بسته است، تعداد ۴۵۸۹۴ بایت در قالب ۶۸۱ بسته ارسال شده است. هیچ بستهای دور ریخته نشده و از آنجا که صف pfifo مانع جریان سریع بستهها نمیشود، هیچ فراتر از حدی (overlimit) نیز وجود نداشته است:
# tc -s qdisc ls dev eth0 qdisc pfifo 8001: dev eth0 limit 100p Sent 45894 bytes 681 pkts (dropped 0, overlimits 0)
اگر انباشتگی (backlog) رخ دهد، آن نیز نمایش داده خواهد شد.
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
Alexey N. Kuznetsov, <kuznet@ms2.inr.ac.ru>
نگهداری این صفحه راهنما توسط bert hubert <ahu@ds9a.nl> انجام شده است.
| 10 January 2002 | iproute2 |