बैंडविड्थ थ्रॉटलिंग क्या है? कारण, प्रभाव और सुधार
स्क्रेपलेस स्क्रैपिंग ब्राउज़र प्रबंधित क्लाउड ब्राउज़र सत्र प्रदान करता है ताकि जावास्क्रिप्ट-जनित सार्वजनिक वेब पृष्ठों से डेटा एकत्र किया जा सके।
TL;DR
- बैंडविड्थ थ्रॉटलिंग जानबूझकर डेटा ट्रांसफर की गति को सीमित करता है। सीमा एक उपयोगकर्ता, आवेदन, ट्रैफिक वर्ग, कनेक्शन, या समय की अवधि पर लागू हो सकती है।
- थ्रॉटलिंग, भीड़ भाड़ से भिन्न है। भीड़ भाड़ तब उत्पन्न होती है जब मांग उपलब्ध क्षमता से अधिक हो; थ्रॉटलिंग एक स्पष्ट नीति की छत लगाता है।
- थ्रूपुट, विलंबता, और अनुरोध दर विभिन्न बाधाओं को मापते हैं। धीमी ट्रांसफर अपने आप में यह नहीं बताती कि कौन सी बाधा सक्रिय है।
- दोहराए गए नियंत्रित परीक्षण एक से अधिक गति परीक्षण प्रकट करते हैं। एक कारण सौंपने से पहले समय, मार्ग, पेलोड आकार, प्रोटोकॉल, और गंतव्य की तुलना करें।
- जिम्मेदार ग्राहक अपने कार्यभार को अनुकूलित करते हैं। अनावश्यक बाइट्स को कम करें, बल्क कार्य का कार्यक्रम बनाएं, प्रकाशित सीमाओं का सम्मान करें, और आक्रामक समांतर ट्रैफिक से बचें।
बैंडविड्थ थ्रॉटलिंग की परिभाषा
बैंडविड्थ थ्रॉटलिंग वह जानबूझकर प्रतिबंध है जो डेटा को नेटवर्क पथ या सेवा के माध्यम से स्थानांतरित करने की दर पर लागू होता है। नीति को एक इंटरनेट प्रदाता, मोबाइल वाहक, एंटरप्राइज गेटवे, क्लाउड प्लेटफ़ॉर्म, सामग्री सेवा, ऑपरेटिंग सिस्टम, या एप्लिकेशन द्वारा लागू किया जा सकता है। एक सीमा डाउनलोड, अपलोड, एक विशेष प्रोटोकॉल, एक ग्राहक योजना, या उस ट्रैफिक को लक्षित कर सकती है जो एक परिभाषित अनुमति से अधिक है। दृश्यमान लक्षण तब भी कम बनाए रखा थ्रूपुट है जब भौतिक लिंक अधिक डेटा ले जा सकता है।
शब्द बैंडविड्थ अक्सर ढीले तरीके से उपयोग किया जाता है। नेटवर्क इंजीनियरिंग में, बैंडविड्थ उपलब्ध क्षमता का वर्णन करता है, जबकि थ्रूपुट उस समय के दौरान वितरित उपयोगी डेटा की मात्रा है। एक थ्रॉटलिंग नियम आमतौर पर पथ क्षमता के नीचे थ्रूपुट को सीमित करता है। नियम स्थिर हो सकता है, जैसे कि एक निश्चित छत, या सशर्त, जैसे कि एक कोटा का उपभोग करने के बाद एक निम्न छत। MDN वर्णन करता है नेटवर्क थ्रॉटलिंग को जानबूझकर धीमा करने के रूप में, एक उपयोगी विभेदन एक अधिक भार वाले पथ से है जो बिना किसी जानबूझकर नीति के धीमा होता है।
जहाँ एक थ्रॉटल पथ में प्रवेश करता है
बैंडविड्थ थ्रॉटलिंग क्या है को एक परतदार व्याख्या की आवश्यकता होती है क्योंकि इसके दृश्य परिणाम के कई कारण हो सकते हैं। नीचे के चरण प्रत्येक दावे को सिस्टम के एक अवलोकनीय भाग से जोड़ते हैं।
नीति वर्गीकरण
एक डिवाइस या सेवा सबसे पहले ट्रैफिक को ऐसी जानकारी का उपयोग करके वर्गीकृत करती है जिसे वह देख सकती है, जैसे खाता पहचान, गंतव्य, पोर्ट, प्रोटोकॉल, एप्लिकेशन लेबल, कनेक्शन इतिहास, या कुल स्थानांतरित बाइट्स। एन्क्रिप्टेड पेलोड सामग्री दृश्यता को कम कर देते हैं, लेकिन मेटाडेटा अभी भी नीति निर्धारण का समर्थन कर सकता है। वर्गीकरण व्यापक या संकीर्ण हो सकता है, यही कारण है कि एक गंतव्य दूसरी पर उसी एक्सेस लिंक पर धीमा दिखायी दे सकता है।
दर प्रवर्तन
एक शेपर पैकेट को कतार में डालता है और उन्हें एक कॉन्फ़िगर किए गए गति पर जारी करता है, जबकि एक पुलिसर उस ट्रैफिक को फेंक सकता है जो उसके अनुमति से अधिक है। कतारबद्धता आमतौर पर एक स्थिर छत और लोड के तहत अतिरिक्त देरी उत्पन्न करती है। फेंकने से परिवहन-परत पुनर्प्राप्ति को ट्रिगर किया जा सकता है और असमान ट्रांसफर गति उत्पन्न कर सकता है। दोनों तंत्र वितरित थ्रूपुट को बाधित करते हैं, लेकिन उनके समय-श्रृंखला पैटर्न भिन्न होते हैं।
एप्लिकेशन नियंत्रण
एक सेवा नेटवर्क परत के ऊपर समान परिणाम लागू कर सकती है, प्रतिक्रिया बैंडविड्थ, समाक्षण डाउनलोड, परिणाम आकार, या प्रति खाता पूरा कार्य सीमित करके। एप्लिकेशन दर सीमित करना आमतौर पर संचालन की गिनती करता है, जबकि बैंडविड्थ थ्रॉटलिंग समय के साथ बाइट्स को नियंत्रित करता है। दोनों सह-अस्तित्व में हो सकते हैं, इसलिए एक ग्राहक अनुरोध कोटा के नीचे रह सकता है और फिर भी एक ट्रांसफर छत तक पहुँच सकता है।
थ्रॉटलिंग, भीड़, दर सीमाएँ, और डेटा कैप
ये विभेदन बैंडविड्थ थ्रॉटलिंग क्या है को निकटवर्ती शर्तों से अलग करते हैं जो अक्सर पर्यायवाची के रूप में उपयोग की जाती हैं। वे यह भी उजागर करते हैं कि कार्यान्वयन के लिए क्या दस्तावेज़ करना होगा ताकि यह परीक्षण योग्य हो।
| धारणा | अर्थ | व्यावहारिक संकेत |
|---|---|---|
| बैंडविड्थ थ्रॉटलिंग | एक स्पष्ट नीति ट्रांसफर दर को सीमित करती है। | एक ही स्थितियों के तहत एक दोहराने योग्य थ्रूपुट छत। |
| भीड़ | प्रतिस्पर्धी ट्रैफिक एक सीमित लिंक या कतार को भरता है। | प्रदर्शन लोड के साथ भिन्न होता है और ऑफ-पीक में सुधार कर सकता है। |
| दर सीमित करना | एक सेवा एक समय विंडो में संचालन को सीमित करती है। | प्रतिक्रियाएँ धीमी होती हैं, कतार में हो जाती हैं, या अनुरोधों की गिनती बढ़ने के बाद काम को अस्वीकृत करती हैं। |
| डेटा कैप | एक योजना बिलिंग या नीति अवधि के दौरान कुल स्थानांतरित डेटा को सीमित करती है। | परिणाम एक चार्ज, निलंबन, या बाद में थ्रॉटल हो सकता है। |
| ट्रैफिक शेपिंग | एक नियंत्रक नीति लक्ष्यों को पूरा करने के लिए कक्षाओं को अनुसूची करता है। | कुछ कक्षाएँ पूर्वानुमानित प्राथमिकता या छत प्राप्त करती हैं। |
क्यों नेटवर्क बैंडविड्थ सीमाएँ लागू करते हैं
बैंडविड्थ थ्रॉटलिंग क्या है, इसका एक स्थान डिज़ाइन में तब अर्जित होता है जब इसके गुण एक निर्दिष्ट कार्यप्रवाह बाधा को हल करते हैं। नीचे दी गई परिदृश्य इस अवधारणा को एक अवलोकनीय इंजीनियरिंग आवश्यकता से जोड़ते हैं।
क्षमता निष्पक्षता
साझा नेटवर्क एक निरंतर स्थानांतरण को रोक सकते हैं जो कई इंटरैक्टिव उपयोगकर्ताओं द्वारा आवश्यक क्षमता का उपभोग कर रहा है।
सेवा स्तर
प्रदाता विभिन्न योजनाओं, स्थानों, या उपकरण वर्गों के लिए दस्तावेज़ीकृत गति छतों का मानचित्र बना सकते हैं।
संचालन सुरक्षा
सेवाएं असामान्य रूप से बड़े स्थानांतरण को सीमित कर सकती हैं ताकि भंडारण, خروج, और डाउनस्ट्रीम सिस्टम उपलब्ध रहें।
परीक्षण अनुकरण
डेवलपर्स जानबूझकर एक परीक्षण कनेक्शन को थ्रॉटल करते हैं ताकि यह देख सकें कि एक आवेदन धीमे या परिवर्तनीय एक्सेस नेटवर्क पर कैसे व्यवहार करता है।
बैंडविड्थ थ्रॉटलिंग का ध्यानपूर्वक पता कैसे लगाएं
एक परिकल्पना के साथ शुरू करें जिसे अस्वीकार किया जा सके। वायर्ड या वायरलेस लिंक, स्थानीय सिग्नल गुणवत्ता, सक्रिय पृष्ठभूमि ट्रैफ़िक, गंतव्य, पेलोड आकार, और परीक्षण समय को रिकॉर्ड करें। केवल पृष्ठ-लोड समय पर निर्भर रहने के बजाय सतत थ्रूपुट को मापें। पृष्ठ रेंडरिंग में DNS लुकअप, कनेक्शन सेटअप, सर्वर प्रसंस्करण, स्क्रिप्ट निष्पादन, और संपत्ति अनुसूची भी शामिल है, इसलिए यह एक गरीब स्वतंत्र बैंडविड्थ माप है।
सSeveral गंतव्यों और समय परिवर्तनों में नियंत्रित स्थानांतरणों की तुलना करें। एक छत जो केवल एक सेवा के लिए प्रकट होती है, उस सेवा, इसके वितरण नेटवर्क, या एक अंतर्संबंध बिंदु पर बैठ सकती है। एक छत जो अप्रकाशित गंतव्यों में प्रकट होती है, वह क्लाइंट के करीब बैठ सकती है। IETF TCP थ्रूपुट परीक्षण ढांचा व्याख्या करता है कि खिड़की का आकार, हानि, विलंब, और पथ क्षमता सभी मापी गई स्थानांतरण प्रदर्शन को प्रभावित करते हैं; एक थ्रूपुट परिणाम प्रमाण है, नीति का स्वचालित प्रमाण नहीं।
मापन के आकार का निरीक्षण करें। पर्याप्त बड़े स्थानांतरनों के बीच एक सपाट पठार एक कॉन्फ़िगर की गई छत का संकेत देता है, इसके विपरीत एक छोटी सी वृद्धि के बाद यादृच्छिक भिन्नता। एक लिंक व्यस्त होने पर गोल-यात्रा समय बढ़ना कतारबद्ध चीजों की ओर इशारा करता है। पैकेट हानि, रेडियो परिवर्तन, सर्वर लोड, और वाई-फाई संघर्ष विभिन्न पैटर्न बनाते हैं। एक ही पेलोड और मार्ग अनुमानों के साथ परीक्षण को दोहराएँ इससे पहले कि एक दावा को बढ़ाएँ।
सामान्य निदान गलतियाँ
- धीमी वेबसाइट को धीमे लिंक के बराबर करना। क्लाइंट रेंडरिंग और सर्वर गणना तब भी हावी हो सकती है जब डाउनलोड क्षमता का उपयोग न हो।
- केवल एक छोटे फ़ाइल का परीक्षण करना। छोटे स्थानांतरण प्रारंभिक वृद्धि के दौरान समाप्त हो सकते हैं और कभी भी निर्धारित नीति दर तक नहीं पहुंच सकते।
- अपलोड ट्रैफ़िक की अनदेखी करना। एक संतृप्त अपस्ट्रीम कतार अनुमोदनों को विलंबित कर सकती है और डाउनस्ट्रीम स्थानांतरणों को सीमित करती है।
- एक बार में कई चर बदलना। उपकरण, नेटवर्क, गंतव्य, और समय का एक साथ स्विच करने से एक उपयोगी तुलना में बाधा आती है।
- अनुरोध कोटा को बैंडविड्थ कैप के रूप में मान लेना। ऑपरेशन की गिनती और बाइट दरों की आवश्यकता होती है अलग-अलग मापों और अलग-अलग ग्राहक नियंत्रणों की।
वेब डेटा कार्यप्रवाहों के लिए बैंडविड्थ योजना
एक वेब डेटा कार्यप्रवाह को बाइट्स को उतनी ही सावधानी से बजट करना चाहिए जितना कि अनुरोध। उस कार्य को संतुष्ट करने के लिए सबसे छोटी प्रतिनिधित्व प्राप्त करें, जब टेक्स्ट या संरचित आउटपुट पर्याप्त हो तो मीडिया डाउनलोड करने से बचें, अनुमत कैश परिणामों का पुनः प्रयोग करें, और डुप्लिकेट कच्चे पेलोड के बजाय सामान्यीकृत रिकॉर्ड संग्रहित करें। ये विकल्प स्थानांतरण समय को कम करते हैं और क्लाइंट और स्रोत सेवा दोनों पर दबाव को कम करते हैं।
ब्राउज़र-आधारित संग्रहण में ऐसे संसाधनों को शामिल किया गया है, JavaScript, और रेंडरिंग ओवरहेड जो एक प्रत्यक्ष HTTP प्रतिक्रिया की आवश्यकता नहीं हो सकती है। जब इंटरैक्शन या क्लाइंट-साइड रेंडरिंग आवश्यक हो, तो एक ब्राउज़र का उपयोग करें, फिर हर सत्र को उन पृष्ठों और संसाधनों तक सीमित रखें जिनकी आवश्यक है। निर्णय को पृष्ठ व्यवहार का पालन करना चाहिए, किसी भी लक्ष्य के लिए एक अधिग्रहण पथ की एक साथ धारण करने का सामान्य मान्यता नहीं।
यदि एक प्रकाशित सेवा सीमा लागू होती है, तो इसके चारों ओर डिज़ाइन करें, न कि ट्रैफ़िक को छुपाने का प्रयास करें। गैर-तत्काल कार्यों की कतार बनाएं, संगति को सीमित करें, प्रगति को प्रदर्शित करें, और जब सेवा संकेत देती है कि कार्यभार उसकी नीति से अधिक है, तो रुकें। एक पूर्वानुमानित, मापी गई पाइपलाइन को संचालित करना आसान है और साझा अवसंरचना के लिए अधिक दयालु है।
बैंडविड्थ थ्रॉटलिंग समीक्षा चेकलिस्ट क्या है
बैंडविड्थ थ्रॉटलिंग परिभाषा को निर्माण साक्ष्य में बदलने के लिए इन चेक का उपयोग करें जिसे एक डेवलपर, ऑपरेटर, या समीक्षक दोहरा सकता है।
- सीमा को फिर से स्थापित करें। बैंडविड्थ थ्रॉटलिंग के लिए, कॉलर, प्रदाता, पथ, और उस सटीक घटना की पहचान करें जो एक पूर्ण परिणाम को चिह्नित करती है।
- केंद्रीय दावा की पुष्टि करें। इस बयान की पुष्टि इस कार्यान्वयन और इसकी दस्तावेज़ीकरण के साथ करें: बैंडविड्थ थ्रॉटलिंग जानबूझकर डेटा स्थानांतरण गति को कैप करता है। यह सीमा एक उपयोगकर्ता, आवेदन, ट्रैफ़िक वर्ग, कनेक्शन, या समय की खिड़की पर लागू हो सकती है।
- यांत्रिकी का पता लगाएं। नीति वर्गीकरण, दर प्रवर्तन, अनुप्रयोग नियंत्रण पर निगरानी करें, और रिकॉर्ड करें कि प्रत्येक चरण का मालिक कौन सा घटक है।
- निकटतम अंतर का जाँच करें। दस्तावेज़ करें कि बैंडविड्थ थ्रॉटलिंग का अर्थ है 'एक स्पष्ट नीति स्थानांतरण दर को सीमित करती है।' इस प्रणाली में।
- एक प्रतिनिधि उपयोग मामले का परीक्षण करें। वास्तविक डेटा, स्थान, मात्रा, और अनुमति सीमाओं के साथ क्षमता निष्पक्षता का उपयोग करें।
- एक ज्ञात गलती के विरुद्ध गार्ड करें। ‘धीमी वेबसाइट को धीमे लिंक के बराबर करना।’ पर पुनरावलोकन करें और एक स्वीकृति जांच जोड़ें जो इसे पकड़ता है।
- कार्यभार को सीमित करें। क्या है बैंडविड्थ थ्रॉटलिंग के लिए विषय-संवेदनशील सीमाएँ निर्धारित करें, जिसमें पेलोड, समवर्तीता, निष्पादन समय, और संग्रहीत आउटपुट शामिल हैं जहाँ वे लागू होते हैं।
- निर्णय запис करें। व्याख्या करें कि बैंडविड्थ थ्रॉटलिंग इस सीमा में कैसे फिट बैठता है और उस साक्ष्य का नाम बताएं जो बाद में एक अलग दृष्टिकोण को सही ठहराएगा।
निष्कर्ष
बैंडविड्थ थ्रॉटलिंग को डिज़ाइन के एक परीक्षणीय भाग का वर्णन करना चाहिए, न कि पड़ोसी व्यवहार के लिए एक ढीला लेबल के रूप में कार्य करना चाहिए। समीक्षा को इस केंद्रीय निर्णय को बनाए रखना चाहिए: बैंडविड्थ थ्रॉटलिंग जानबूझकर डेटा ट्रांसफर गति को सीमित करता है। यह सीमा एक उपयोगकर्ता, अनुप्रयोग, ट्रैफ़िक वर्ग, कनेक्शन, या समय विंडो पर लागू हो सकती है। यह एक धीमी वेबसाइट को धीमी लिंक के समान रखने के खिलाफ भी रक्षा करनी चाहिए। और बैंडविड्थ थ्रॉटलिंग को इंटरफेस या नेटवर्क के लिए दस्तावेज़ित नीति के भीतर रखना चाहिए।
क्या आप अपने वेब डेटा वर्कफ़्लो को बनाने के लिए तैयार हैं?
एक मापी हुई बैंडविड्थ थ्रॉटलिंग अधिग्रहण या एकीकरण चरण को ऊपर वर्णित प्रमाणीकरण और संग्रहण प्रथाओं से जोड़ें।
आज ही साइन अप करें और प्राप्त करें $5 का मुफ्त क्रेडिट — कोई क्रेडिट कार्ड की आवश्यकता नहीं.
अपने $5 क्रेडिट का दावा करें →सामान्य प्रश्न
क्या बैंडविड्थ थ्रॉटलिंग और धीमी इंटरनेट कनेक्शन एक ही चीज़ हैं?
नहीं। बैंडविड्थ थ्रॉटलिंग एक जानबूझकर की गई दर प्रतिबंध है, जबकि एक धीमी कनेक्शन सीमित पहुंच प्रौद्योगिकी, भीड़, रेडियो स्थितियों, सर्वर देरी, पैकेट हानि, या उपकरण कार्यभार के कारण हो सकता है। एक जानबूझकर नीति का अनुमान लगाने से पहले नियंत्रित तुलना की आवश्यकता होती है।
क्या एक वीपीएन प्राप्त कर सकता है कि एक आईएसपी ट्रैफ़िक को थ्रॉटल कर रहा है?
नहीं। एक वीपीएन मार्ग परिवर्तन, एन्क्रिप्शन, पैकेट ओवरहेड, और कभी-कभी नीति वर्गीकरण द्वारा उपयोग किए जाने वाले गंतव्य को बदलता है। एक वीपीएन के माध्यम से बेहतर प्रदर्शन एक सुराग है जो अधिक परीक्षण का हकदार है, लेकिन यह अपने आप में प्रवर्तन करने वाली पार्टी का पहचान नहीं करता है।
क्या थ्रॉटलिंग हमेशा विलम्बता को बढ़ाता है?
नहीं। एक अच्छी आकार की शैपर थ्रूपुट को एक छत पर रख सकता है बिना बड़ी बेकार विलंबता वृद्धि के। जब कतारें बनती हैं, खासकर निरंतर लोड के दौरान, देरी बढ़ती है। थोड़ी और लोडेड राउंड-ट्रिप समय को ट्रांसफर स्पीड से अलग मापें।
एक स्क्रैपर को सीमित बैंडविड्थ का उत्तर कैसे देना चाहिए?
एक स्क्रैपर को अनावश्यक बाइट्स को कम करना चाहिए, सबसे सस्ती वैध अधिग्रहण विधि चुननी चाहिए, समवर्तीता को सीमित करना चाहिए, स्रोत नीतियों का सम्मान करना चाहिए, और थोक ट्रांसफर का कार्यक्रम बनाना चाहिए। समानांतरता को बढ़ाना कतार में और अधिक खराबी डाल सकता है और बोतलनेक को कहीं और स्थानांतरित कर सकता है।