Windows पर netem और Network Link Conditioner
Linux में tc netem है और Mac में Network Link Conditioner। Windows में देरी और पैकेट-हानि जोड़ने वाला कोई अंतर्निहित टूल नहीं है। यह पेज आपके जाने-पहचाने विकल्पों को Bean Network Tester से जोड़ता है और बताता है कि कहाँ संख्याएँ सीधे लागू नहीं होतीं।
netem के विकल्प, एक-एक करके
यहाँ हर कमांड में --target और --duration जोड़ें, वरना वह पूरे कंप्यूटर पर असर डालेगा।
| netem | विंडो में सेटिंग | फ़्लैग |
|---|---|---|
delay 100ms | Latency | --latency 100 |
delay 100ms 20ms | Latency, Jitter | --latency 100 --jitter 20 |
loss 5% | Loss | --loss 5 |
loss 5% 25% | Loss, Losses in a row (burst) | --loss 5 --loss-burst 4 |
duplicate 1% | Duplication | --dup 1 |
corrupt 0.1% | Corruption | --corrupt 0.1 |
reorder 25% | Spike chance, Spike size | --spike-prob 5 --spike-ms 200 |
rate 1mbit | Download, Upload | --down 122 --up 122 |
limit 1000 | Buffer | --buffer 1000 |
- बर्स्ट हानि। netem का correlation मान बर्स्ट की लंबाई नहीं है। Losses in a row (burst) लगातार खोए पैकेटों की औसत संख्या है, जो सबसे नज़दीकी बराबरी है।
- क्रम बदलना। क्रम बदलने का कोई प्रतिशत नहीं है। एक स्पाइक एक अकेले पैकेट को देर कराता है ताकि उसके बाद भेजे गए पैकेट उससे आगे निकल जाएँ, और Statistics पेज पर क्रम बदले पैकेटों की गिनती बताती है कि ऐसा सचमुच हुआ या नहीं।
- कतार का आकार। netem का limit पैकेट गिनता है। Buffer मिलीसेकंड में एक समय है।
तीन अंतर जो जानना ज़रूरी है
दिशा। netem उसे देर कराता है जो इंटरफ़ेस से बाहर जाता है, और जवाब बिना छुए लौटता है। यह टूल दोनों दिशाएँ पकड़ता है, इसलिए --latency 100 पिंग में लगभग 200 ms जोड़ता है: जाते समय 100 और लौटते समय 100। netem जैसा व्यवहार पाने के लिए सिर्फ़ बाहर जाने वाला ट्रैफ़िक पकड़ें:
BeanNetworkTester.exe --filter out --latency 100 --jitter 20 --target myapp.exe --duration 120
इकाइयाँ। netem की दर बिट प्रति सेकंड में होती है। गति सीमा के खाने KB/s में हैं, जहाँ K = 1024। मेगाबिट का रूपांतरण:
| netem दर | गति सीमा का खाना, KB/s में |
|---|---|
1mbit | 122 |
5mbit | 610 |
10mbit | 1221 |
50mbit | 6104 |
100mbit | 12207 |
दायरा। tc पूरे नेटवर्क इंटरफ़ेस को आकार देता है और root माँगता है। यह टूल --target से एक प्रोग्राम को निशाना बनाता है और एडमिनिस्ट्रेटर अधिकार माँगता है।
अगर आप Network Link Conditioner जानते हैं
Apple का टूल नामित प्रोफ़ाइलों से चलता है। यहाँ सबसे नज़दीकी:
| Network Link Conditioner | यहाँ सबसे नज़दीकी |
|---|---|
| 100% Loss | Loss को 100 पर सेट करें |
| 3G | 3G network |
| DSL | Home DSL (VDSL) |
| LTE | LTE / 4G |
| WiFi | Good WiFi |
| Very Bad Network | Terrible network |
| Edge | इसके लिए कोई प्रोफ़ाइल नहीं है। गति सीमा और विलंबता खुद लिखें, फिर Save... बटन से उन्हें अपनी प्रोफ़ाइल के रूप में सहेजें। |
ये संख्याएँ Apple की नहीं हैं, इसलिए प्रोफ़ाइल को शुरुआती बिंदु मानें। प्रोफ़ाइल जो भी मान सेट करती है, वह संदर्भ पेज पर सूचीबद्ध है।
Windows पर आपको क्या मिलता है
- एक प्रोग्राम, पूरा कंप्यूटर नहीं। गड़बड़ी को एक ही ऐप पर साधें, जबकि मशीन का बाकी हिस्सा सामान्य रहता है।
- शेल स्क्रिप्ट की जगह टाइमलाइन। समयबद्ध परिदृश्य तय सेकंडों पर सेटिंग बदलते हैं, जो Linux में
tcऔरsleepकी स्क्रिप्ट करती है। - पाइपलाइन इसे चला सकती है। वही एक्ज़ीक्यूटेबल CI में चलता है और एग्ज़िट कोड से नतीजा बताता है।
Linux या macOS पर मूल टूल इस्तेमाल करें। यह टूल सिर्फ़ Windows पर चलता है।