मैनपेज से, एकमात्र बाधा burst
यह है कि आपके कॉन्फ़िगर किए गए दर को अनुमति देने के लिए यह पर्याप्त उच्च होना चाहिए: यह कम से कम दर / HZ होना चाहिए। HZ एक कर्नेल कॉन्फ़िगरेशन पैरामीटर है; आप यह पता लगा सकते हैं कि यह आपके कर्नेल कॉन्फिग की जाँच करके आपके सिस्टम पर क्या है। जैसे, डेबियन पर, आप कर सकते हैं:
$ egrep '^CONFIG_HZ_[0-9]+' /boot/config-`uname -r`
CONFIG_HZ_250=y
इसलिए मेरे सिस्टम पर HZ 250 है। 10mbps की दर से हिट करने के लिए, मुझे इस प्रकार burst
कम से कम 10,000,000 बिट्स / सेकंड / 250 Hz = 40,000 बिट्स = 5000 बाइट्स की आवश्यकता होगी। (नोट करें कि मानपृष्ठ में उच्च मान उस समय से है जब HZ = 100 डिफ़ॉल्ट था)।
लेकिन इससे परे, burst
एक नीति उपकरण भी है। यह उस सीमा को कॉन्फ़िगर करता है जिससे आप भविष्य के उपयोग के लिए इसे "बचाने" के लिए अब कम बैंडविड्थ का उपयोग कर सकते हैं। यहां एक सामान्य बात यह है कि आप बड़े डाउनलोड को थ्रॉटलिंग करते हुए छोटे डाउनलोड (कहना, एक वेब पेज) को बहुत तेजी से जाने देना चाहते हैं। आप burst
एक छोटे से डाउनलोड पर विचार के आकार में वृद्धि करके ऐसा करते हैं । (हालांकि, आप अक्सर htb की तरह एक क्लासिफाइड क्यूडिस्क पर स्विच करेंगे, ताकि आप अलग-अलग ट्रैफ़िक प्रकारों को विभाजित कर सकें।)
तो: आप वांछित प्राप्त करने के लिए कम से कम बड़े होने के लिए फट को कॉन्फ़िगर करते हैं rate
। इसके अलावा, आप इसे और बढ़ा सकते हैं, इस पर निर्भर करता है कि आप क्या हासिल करना चाहते हैं।
एक टोकन बाल्टी फ़िल्टर का अवधारणात्मक मॉडल
एक "बाल्टी" एक रूपक वस्तु है। इसके प्रमुख गुण यह हैं कि यह टोकन को पकड़ सकता है, और यह कि इसे धारण करने वाले टोकन की संख्या सीमित है - यदि आप अधिक जोड़ने का प्रयास करते हैं, तो यह "ओवरफ्लो" और अतिरिक्त टोकन खो जाता है (जैसे एक पानी में बहुत अधिक पानी डालने की कोशिश करना वास्तविक बाल्टी)। बाल्टी के आकार को कहा जाता है burst
।
वास्तव में नेटवर्क पर एक पैकेट प्रसारित करने के लिए, उस पैकेट को बाइट्स में अपने आकार के बराबर टोकन प्राप्त करना चाहिए mpu
(जो भी बड़ा हो)।
टोकन की प्रतीक्षा में पैकेटों की एक पंक्ति (या हो सकती है) है। यह तब होता है जब बाल्टी खाली होती है, या वैकल्पिक रूप से पैकेट के आकार की तुलना में कम टोकन होते हैं। बाल्टी के सामने फुटपाथ पर केवल इतना ही कमरा है, और कमरे की मात्रा (बाइट्स में) सीधे सेट है limit
। वैकल्पिक रूप से, इसे अप्रत्यक्ष रूप से latency
(एक आदर्श दुनिया में, गणना rate
× होगी latency
) के साथ सेट किया जा सकता है ।
जब कर्नेल फ़िल्टर किए गए इंटरफ़ेस से एक पैकेट भेजना चाहता है, तो वह पैकेट को पंक्ति के अंत में रखने का प्रयास करता है। यदि फुटपाथ पर कोई कमरा नहीं है, तो यह पैकेट के लिए दुर्भाग्यपूर्ण है, क्योंकि फुटपाथ के अंत में एक अथाह गड्ढा है, और कर्नेल पैकेट को गिरा देता है।
अंतिम टुकड़ा एक टोकन बनाने वाली मशीन है जो हर टिक को बाल्टी में जोड़ rate
/ HZ
टोकन देती है। (यही कारण है कि आपकी बाल्टी को कम से कम इतना बड़ा होना चाहिए, अन्यथा कुछ नए ढके हुए टोकन तुरंत छोड़ दिए जाएंगे)।
tbf
लिनक्स ट्रैफिक कंट्रोल ढांचे का हिस्सा है।man tbf
याman tc-tbf
प्रलेखन लाने के लिए चाहिए।