क्या विंडोज में कोई ऐसी तकनीक है जो चुनिंदा तौर पर चल रही प्रक्रिया की बैंडविड्थ को सीमित कर सकती है?
क्या विंडोज में कोई ऐसी तकनीक है जो चुनिंदा तौर पर चल रही प्रक्रिया की बैंडविड्थ को सीमित कर सकती है?
जवाबों:
मैं नेट सीमक का उपयोग करता हूं , जिसका एक नि: शुल्क संस्करण है, लेकिन दुर्भाग्य से आपको सीमा सुविधा के लिए भुगतान करना होगा ।
NetLimiter विंडोज के लिए डिज़ाइन किया गया एक परम इंटरनेट ट्रैफ़िक कंट्रोल और मॉनिटरिंग टूल है। आप नेटलीमिटर का उपयोग अनुप्रयोगों या एकल कनेक्शन के लिए डाउनलोड / अपलोड अंतरण सीमा निर्धारित करने और उनके इंटरनेट ट्रैफ़िक की निगरानी के लिए कर सकते हैं।
इस अनूठी विशेषता के साथ, नेटलिमिटर इंटरनेट सांख्यिकीय उपकरणों का व्यापक सेट प्रदान करता है। इसमें रीयल-टाइम ट्रैफ़िक माप और दीर्घकालिक प्रति-एप्लिकेशन इंटरनेट ट्रैफ़िक आँकड़े शामिल हैं
पूरे नेटवर्क के रूप में नेटवर्क के प्रबंधन के लिए "इंटरनेट फेसिंग राउटर" दृष्टिकोण को देखने के लिए अच्छे कारण हैं - हालांकि मूल प्रश्न विशिष्ट था और उपयोगकर्ता नेटवर्क पर एकमात्र कंप्यूटर बहुत अच्छी तरह से हो सकता है, यह एक माध्यमिक चिंता का विषय है।
अन्य शीर्ष उत्तरों में से एक के लिए, थोड़ी देर के लिए मैंने नेटबालक का परीक्षण किया । यह वास्तव में अच्छी तरह से काम करता है - और कॉन्फ़िगर करना आसान है।
NetBalancer उनके वेब पेज पर लगभग 50 डॉलर में खरीदने के लिए उपलब्ध है। परीक्षण / नि: शुल्क संस्करण आपको कनेक्शन की निगरानी करने की अनुमति देता है - लेकिन थ्रॉटलिंग की अनुमति नहीं देता है।
विकल्प नेटलिमर है । इसकी नि: शुल्क परीक्षण अवधि है - लेकिन लाइट संस्करण के लिए ~ $ 20 या प्रो संस्करण के लिए ~ $ 30 से शुरू होता है। NetLimiter कई SysAdmins के लिए आजमाया हुआ और परीक्षण किया हुआ अनुप्रयोग है।
जब नेटलीमिटर का परीक्षण समाप्त होता है, जब तक आप लाइसेंस नहीं खरीदते हैं, यह एक निगरानी-मात्र उपकरण बन जाता है - और अब थ्रॉटलिंग का समर्थन नहीं करता है। यह अभी भी उपयोगी हो सकता है - लेकिन इस उपयोग के मामले के लिए नहीं।
यद्यपि स्मार्ट / अत्यधिक-विन्यास वाले राउटर का उपयोग करना आमतौर पर व्होलिस्टिक नेटवर्क प्रबंधन के लिए बेहतर दृष्टिकोण है , इस बीच और उस मूल प्रश्न के बारे में डिस्कनेक्ट @ जेबी के उत्तर में नहीं बताया गया है। मूल प्रश्न विशेष रूप से एक प्रक्रिया के बारे में पूछ रहा है - जिसमें एक राउटर को पहचानने के लिए मज़बूती से कोई रास्ता नहीं है।
इस छोर पर उपयोगी के करीब एक भिन्नता है यदि कोई एप्लिकेशन केवल एक विशिष्ट चैनल या यातायात के प्रकार पर संचार करता है जिसे आसानी से राउटर द्वारा पहचाना जा सकता है। एक उदाहरण ईए के मूल डाउनलोड से नीचे है:
मूल वर्तमान में अकामाई का उपयोग करता है। आमतौर पर मैं किसी भी समय चलने के लिए स्वचालित डाउनलोड / अपडेट सेट करता हूं - लेकिन मैं यह पसंद करूंगा कि मैं अन्य महत्वपूर्ण चीजों को करने में व्यस्त रहते हुए सभी लाइन क्षमता का उपयोग न करूं। उत्पत्ति इस प्रकार की चीज़ से बहुत बुरी होती है , इस प्रकार यह डाउनलोड शेड्यूल या थ्रॉटलिंग डाउनलोड करने का समर्थन नहीं करता है। वर्तमान में मेरा डेस्कटॉप सर्वर "a1750.d.akamai.net" का उपयोग करके एक गेम डाउनलोड कर रहा है। एक मिक्रोटिक राउटर (एक स्मार्ट राउटर का एक उदाहरण) नोट कर सकता है कि इस DNS नाम का उपयोग किया गया था (यह एक आईपी पते के साथ DNS कैश में होगा) और गंतव्य सर्वर के आईपी पते को "पता सूची में जोड़ने के लिए अस्थायी रूप से कॉन्फ़िगर किया जा सकता है" "। पते की सूची से / तक सभी ट्रैफ़िक को थ्रॉटल की गई कतार में जोड़ा जा सकता है, तकनीकी रूप से, एकल एप्लिकेशन को थ्रॉटलिंग करके।
हालांकि ऊपर का दृष्टिकोण भोला है। ईए किसी भी समय सर्वर का नाम बदल सकता है , इस्तेमाल किया जाने वाला प्रोटोकॉल, या अकामाई इंफ्रास्ट्रक्चर का उपयोग करने वाली अन्य असंबंधित सेवा अनजाने में थ्रोटल हो सकती है। अब मेरा चमकदार नया नियम बेकार और टूट गया है।
यहाँ मेरा गरीब आदमी गला घोंट रहा है:
यह वास्तव में बैंडविथ को सीमित नहीं करता है, बल्कि यह बैंडविड्थ खाने की प्रक्रिया को निलंबित / फिर से शुरू करता है और इस प्रकार अन्य अनुप्रयोगों के लिए कुछ बैंडविड्थ को मुक्त करता है। और यह मुफ़्त है!
आपको PsSuspend.exe चाहिए (मैंने इस फ़ाइल को C: \ tools \ sysinternals) और एक बैच फ़ाइल (जैसे) slow.bat में डाला:
@echo off
:START
c:\tools\sysinternals\pssuspend.exe %1 >NUL: 2>&1
timeout /T 1 /NOBREAK >NUL:
c:\tools\sysinternals\pssuspend.exe -r %1 >NUL: 2>&1
timeout /T 1 /NOBREAK >NUL:
goto START
अब प्रशासक के रूप में एक कमांड लाइन खोलें और पैरामीटर के रूप में थ्रॉटल प्रोग्राम के साथ बैच फ़ाइल चलाएं
slow.bat filetransfer.exe
(अपने कार्यक्रम के नाम के साथ filetransfer.exe बदलें)
यदि आप कर रहे हैं, CTRL-C मारा और बैच रद्द करें।
यदि प्रोग्राम तब भी प्रोग्राम को फिर से शुरू करने पर विचार कर रहा है, जब आपने प्रोग्राम को निलंबित कर दिया था, तो आपने बैच को बाधित कर दिया था:
c:\tools\sysinternals\pssuspend.exe -r filetransfer.exe
(अपने कार्यक्रम के नाम के साथ filetransfer.exe बदलें)
आप किसी भी प्रक्रिया की बैंडविड्थ को थ्रॉटल करने के लिए विंडोज ग्रुप पॉलिसी का उपयोग कर सकते हैं। के लिए जाओ:
यहां आप वर्तमान नीतियों को देख सकते हैं और निम्न के अनुसार नए बना सकते हैं:
विज़ार्ड आपको या तो बैंडविड्थ को कम करने की नीति बनाने की अनुमति देता है:
और फिर आपकी नीतियों को फ़िल्टर किया जा सकता है:
आप इन नीतियों को चलाकर Powershell में भी बना सकते हैं :
New-NetQosPolicy -Name "FTP" -AppPathNameMatchCondition "ftp.exe" -ThrottleRateActionBitsPerSecond 1MB
हालाँकि इसके लिए प्रशासक के अधिकारों की आवश्यकता हो सकती है, और ऐसा प्रतीत होता है कि एक बग बना हुआ है जहाँ इस तरह की नीतियाँ जीयूआई में नहीं दिखाई देंगी।