टर्मिनल के माध्यम से इंटरनेट स्पीड कैसे जांचें?


466

स्पीडटेस्ट.नेट जैसी साइटों पर जाने के बजाय , मैं उबंटू के टर्मिनल से अपनी वर्तमान इंटरनेट स्पीड की जांच करना चाहता हूं। मैं यह कैसे कर सकता हूं?


4
स्पीडटेस्ट-क्लि के साथ मुझे जो परिणाम मिल रहे हैं, वे काफी हद तक हैं जो मुझे स्पीडटेस्ट.नेट स्पीडटेस्ट-क्लि से प्राप्त होते हैं। स्पीडटेस्ट-क्ली को किसी भी तरह से नेटवर्क स्पीड का वैध परीक्षण मानें।

2
@ user375058: स्पीडटेस्ट.नेट speedtest-cliके समान सर्वर (आदि) का उपयोग करता है। आपको एक अलग फ्रंट-एंड के साथ speedtest-cliऔर www.speedtest.netसमतुल्य होने पर विचार करना चाहिए । मैं अगर तुम मिल आश्चर्य होगा काफी अलग परिणाम लगातार अगर वे दोनों एक ही सर्वर का उपयोग करें। यदि वे एक ही सर्वर का उपयोग नहीं कर रहे हैं, तो आपके पास तुलना के लिए कोई आधार नहीं है। अंत में, दोनों उपयोगिताओं के लिए मेरे परिणाम रन-टू-रन के 2-4 के कारक से भिन्न होते हैं। मेरा सुझाव है कि आप 2-4 सर्वरों का परीक्षण करें, और प्रत्येक सर्वर के लिए 3-4 रन करें और उपकरणों की तुलना करें।
jvriesem

@ user375058: मैंने वास्तव में सिर्फ वही किया जो मैंने सुझाया था। मेरे परिणामों के लिए नीचे मेरी टिप्पणी में लिंक देखें।
jvriesem

1
sudo apt install speedtest-cli
ColdCold

जवाबों:


753

मैं इसके लिए स्पीडटेस्ट-क्ली टूल की सलाह देता हूं । मैंने एक ब्लॉग पोस्ट ( लिनक्स कमांड लाइन से इंटरनेट कनेक्शन की गति को मापें ) बनाया जो इसे डाउनलोड करने, इंस्टॉल करने और इसके उपयोग के बारे में विस्तार से बताता है।

लघु संस्करण यह है: (कोई जड़ की आवश्यकता)

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -

आउटपुट:

Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Comcast Cable (x.x.x.x)...
Selecting best server based on ping...
Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 ms
Testing download speed........................................
Download: 32.29 Mbit/s
Testing upload speed..................................................
Upload: 5.18 Mbit/s

2018 में अपडेट करें:

उपयोग करने pip install --user speedtest-cliसे आपको एक ऐसा संस्करण मिलता है जो संभवतः आपके वितरण के रिपॉजिटरी से उपलब्ध एक से नया है।

2016 में अपडेट:

speedtest-cliअब उबंटू रिपॉजिटरी में है। Ubuntu 16.04 (Xenial) के लिए और बाद में उपयोग करें:

sudo apt install speedtest-cli
speedtest-cli

2
यह ठीक से काम नहीं करता है। मैं बीटी इन्फिनिटी 50 बीबिट नीचे और 20 मीटर ऊपर हूं। लेकिन परिणाम 0.53Mbit नीचे और 0.2Mbit ऊपर दिखाई देते हैं। है ना? गलत दशमलव रखना? Wget के उपयोग से मुझे 4.27M / s (34Mbit) (हालांकि कुछ अन्य सर्वर) मिलता है?
पायोटर कुला

34
जैसा कि यहां पहले ही बताया जा चुका है : चूँकि स्पीडटेस्ट-क्ली एक पायथन एप्लिकेशन है, इसे करने से स्थापित करना बहुत आसान है: pip install speedtest-cli या: easy_install speedtest-cli आपके सिस्टम पर पायथन कैसे स्थापित होता है, इसके आधार पर आपको उपरोक्त कार्य करने के लिए रूट होने की आवश्यकता हो सकती है।
CrandellWS

1
यह पुष्टि करते हुए कि स्पीडटेस्ट-क्ली टूटी हुई है । 1Mbps से ऊपर की गति नहीं दिखाता है। ऐसा करने का दावा करते समय किसी भी जानकारी को स्थानांतरित नहीं करता है।
int_ua

5
यह वास्तव में स्वीकृत उत्तर होना चाहिए ... स्पीडटेस्ट-क्ली मेरे लिए ठीक काम कर रहा है; लगता है कि @int_ua या तो संगतता समस्याओं या इंटरनेट समस्याओं था।
छिलका

2
यह सही उत्तर होना चाहिए। स्पीड टेस्ट का मतलब है डाउनलोड और अपलोड करना। पहले उत्तर केवल डाउनलोड गति को मापता है, जो आपके इंटरनेट कनेक्शन की गति की पूरी तस्वीर नहीं है। खासकर यदि आप उस मशीन पर कुछ होस्ट कर रहे हैं!
एमिल बोरकोनी

92

कमांड लाइन पर यह प्रयास करें

wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

इसे भी आजमाएं

sourceforge.net/projects/tespeed/

इसे ऊपर दिए गए लिंक से प्राप्त करें


2
क्या आप बता सकते हैं कि इसका /dev/nullमतलब क्या है?
नट्टी के बारे में अखरोट

12
यह speacial फ़ाइल है जो बस इसके लिए लिखे गए डेटा को
हटाती है

2
मेरे लिए उबंटू 14.10 पर अजगर 2.7.8 के साथ कमांड wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zipबहुत बेहतर काम करता है speedtset-cliक्योंकि बाद में फ्रीज करने के लिए लगता है और ^ C कमांड को बाधित करने में विफल रहता है।
Wget के

1
@mlissner, मेगाबाइट में पहली गति की तरह दिखता है, मेगाबाइट्स में दूसरा ..
vp_arth

1
@mlissner 1.5 x 8 = 12 एक केबीपीएस है और दूसरा केबीबी :-) है
टैचियन्स

55

यदि आपको iperf को स्थापित करने के लिए परेशान नहीं किया जा सकता है, तो आप किसी भी कमांड को पूर्ववर्ती कर सकते हैं जो timeकमांड के साथ ज्ञात मात्रा में बदलाव करता है और योग करता है।

iperf सरल और प्रयोग करने में आसान है।

इसके लिए क्लाइंट और सर्वर की जरूरत होती है।

(सर्वर पर)

 user@server$ iperf -s

(ग्राहक पर)

 user@client$ iperf -c server.domain
 ------------------------------------------------------------
 Client connecting to 192.168.1.1, TCP port 5001
 TCP window size: 16.0 KByte (default)
 ------------------------------------------------------------
 [  3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001
 [ ID] Interval       Transfer     Bandwidth
 [  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec

अधिक जानकारी


7
ईथरनेट और वाईफ़ाई गति को मान्य करने के लिए +1 ipff शानदार है
kfmfe04

1
iperfLAN के लिए बढ़िया है लेकिन उपयोगकर्ता WAN के बारे में पूछ रहा है।
IMTheNachoMan

34

वैसे मैं wgetइसके लिए उपयोग करता हूं । वह छोटा उपकरण मुझे अच्छी तरह से बताता है कि मेरे पास क्या गति है।

इसका उपयोग करने के लिए बस इंटरनेट में एक फ़ाइल को इंगित करें जो अपेक्षाकृत बड़ा है ताकि आप इसके बारे में बेहतर अनुमान लगा सकें।

उदाहरण के लिए

टाइपिंग: wget http://hostve.com/neobuntu/pics/Ubu1.aviUbu1.avi फ़ाइल डाउनलोड करना शुरू कर देगा और यह दिखाएगा कि यह किस गति से डाउनलोड हो रहा है।

यहां छवि विवरण दर्ज करें

बेशक कई सिफारिशें हैं:

  1. अच्छे सर्वर के साथ स्पीड टेस्ट करें। मेरे लिंक के मामले में गति 200KB से कम है इसलिए यदि आपके पास उच्च गति है, तो सर्वर आपके लिए अड़चन होगा, न कि आपकी वास्तविक गति।

  2. उच्चतम गति जो आप देखेंगे वह अधिकतम गति है जो आपके कनेक्शन और सर्वर के कनेक्शन की पेशकश कर सकती है। यदि आपका कनेक्शन 512KB है और जिस स्थान पर आप डाउनलोड कर रहे हैं वह 400KB है, तो आपका अधिकतम कनेक्शन 400KB होगा क्योंकि यह उस सर्वर के लिए अधिकतम है जिसे आप डाउनलोड कर रहे हैं।

  3. आपको विश्वसनीय गति की जाँच के लिए कम से कम 5 बार परीक्षण करने की आवश्यकता है या कम से कम एक या दो मिनट के लिए इसे करने की आवश्यकता है। इससे आपको अधिक सटीक जाँच करने में मदद मिलेगी।

  4. अधिक सटीक गति के लिए आपको कम से कम 4 या 5 अलग-अलग परीक्षण स्रोतों की आवश्यकता होती है। कभी भी केवल उसी साइट से परीक्षण न करें क्योंकि इससे आपकी दूरी प्रभावित हो सकती है, सर्वर में कोई समस्या और उससे कनेक्शन, आदि हमेशा विभिन्न सर्वरों से परीक्षण करें।

ARIA2

यह एक विकल्प है wget। नकारात्मक पक्ष यह wgetहै कि समानांतर कनेक्शन की कमी है। Aria2 का उपयोग करने के लिए हमें इसे डाउनलोड करने की आवश्यकता है:

   sudo apt-get install aria2

इसका उपयोग करने के लिए सरल है:

यहां छवि विवरण दर्ज करें

छवि में, -x 4 हम कितने समानांतर कनेक्शन का उपयोग करना चाहते हैं। अगली पंक्ति में CN पैरामीटर दिखाता है कि उस साइट से कितने सक्रिय समानांतर कनेक्शन डाउनलोड करने की अनुमति दी गई थी। इस मामले में CN 4 है। लेकिन अगर हमने अधिक कनेक्शन लेने की कोशिश की तो हमें कुछ इस तरह मिलेगा:

यहां छवि विवरण दर्ज करें

हमने 8 समानांतर कनेक्शन सेट किए लेकिन साइट ने अधिकतम 5 की अनुमति दी जैसा कि CN: 5 द्वारा दिखाया गया है। यह -j विकल्प द्वारा हल किया जा सकता है जो aria2c को अधिकतम समवर्ती कनेक्शन जो हम चाहते हैं (जो डिफ़ॉल्ट रूप से 5 है) बताता है, लेकिन यदि सर्वर ने इसे सीमित कर दिया है, -j काम नहीं करेगा।


1
wget (अभी तक) खंडित डाउनलोड करने में सक्षम नहीं है, अर्थात एकाधिक (समानांतर) कनेक्शनों का उपयोग करके एक एकल फ़ाइल डाउनलोड करना है, इसलिए यदि आपका आईएसपी प्रति 1 कनेक्शन की गति को सीमित कर रहा है, तो आपको सटीक परिणाम नहीं मिलेगा ... यह कुछ अन्य टूल का उपयोग करने के लिए एक अधिक सटीक परीक्षण होगा, जो कम से कम सेग्मेंटेड डाउनलोड (aria2 की तरह) का उपयोग कर सकता है
Mladen B.

3
यह एक स्पीडटेस्ट नहीं है, यह केवल डाउनलोड स्पीड टेस्ट है! इंटरनेट स्पीड टेस्ट का मतलब है डाउन एंड अप लोड! दूसरा उत्तर, और स्पीडटेस्ट-क्ली का उल्लेख करने वाले अन्य सभी का सही दृष्टिकोण है।
एमिल बोरकोनी

1
@EmilBorconi आप सही हैं, लेकिन वास्तविक जीवन में, हम यहां इंटरनेट स्पीड बेंचमार्किंग नहीं कर रहे हैं, यह स्पीडस्टेस्ट जैसी साइटों की आवश्यकता के बिना किसी भी घर उपयोगकर्ता की आपकी औसत वर्तमान गति परीक्षण हैं। डाउनलोड गति (जो किसी के लिए यह देखने के लिए पर्याप्त है कि क्या वे अड़चन में हैं) एक अच्छा पर्याप्त परीक्षण है। एक पूर्ण डाउन / अप गति परीक्षण यह जाँच करेगा कि आपकी गति का पूरा दायरा आपके ISP पर आधारित है। तो हाँ, यह सबसे अच्छा समाधान होगा, लेकिन किसी भी तेज़ परीक्षण परिदृश्य के लिए, यहां तक ​​कि एक साधारण wget चाल भी करेगा क्योंकि आम तौर पर लोग अपलोड की तुलना में डाउनलोड गति के बारे में अधिक चिंता करते हैं।
लुइस अल्वारादो

1
@LuisAlvarado को खेद है अगर मैंने असभ्य आवाज़ की, तो मुझे लगता है कि लोगों को पूरी तरह से समझने में सक्षम होना चाहिए कि वे क्या पूछ रहे हैं / और स्वीकृत उत्तर क्या है। लॉट्स ऑफ़ न्यूबाय्स मंचों पर दिखेगा और वे स्वीकार किए गए उत्तर पर ग्रहण करेंगे / रोकेंगे, और उनके पास एक झूठी छवि बनाते हैं। और हाँ डाउनलोड अधिक महत्वपूर्ण है, तब तक अपलोड करें जब तक कि आप एक फेसबुक मैनिक नहीं हैं जो प्रत्येक 5 मिनट में सेल्फी पोस्ट करते हैं, फिर आपके साथ आईएसपी के साथ एक लड़ाई शुरू करें क्योंकि आपने डाउनलोड का परीक्षण किया है जो अच्छा है, लेकिन आपके पास एक भद्दा अपलोड है ... एक बार फिर क्षमा करें अगर मेरा लहजा असभ्य था, अपमान नहीं करना चाहता था ...
एमिल बोरकोनी

1
मुझे इसके लिए wgetबेहतर पसंद है curlक्योंकि wgetप्रदर्शित करता है MB/s(बहुत स्पष्ट है जो एमबीटी / एस है), जबकि curlबस प्रदर्शित करता है k(बहुत स्पष्ट नहीं है कि यह केबीटीएस / एस है)।
समझदार

19

चूंकि स्पीडटेस्ट-क्ली एक पायथन एप्लिकेशन है, इसलिए इसे करना बहुत आसान है:

pip install speedtest-cli

या:

easy_install speedtest-cli

आपके सिस्टम पर पायथन कैसे स्थापित किया गया है, इसके आधार पर, आपको ऊपर करने के लिए रूट होने की आवश्यकता हो सकती है।


7

मैं speedometerउबंटू सीएलआई को पसंद करता हूं ।

speedometer -r eth0

आने वाली डेटा स्पीड का लाइव ग्राफ देखने के लिए।


मैं वास्तव में कुछ समय के लिए क्या देख रहा था! धन्यवाद! लेकिन मुझे यह पसंद नहीं है कि यह
किब

3

बड़ी फ़ाइलों पर टाइमआउट कमांड के साथ wget के कई उदाहरण चलाएं:

#!/bin/bash

timeout 5 wget -q url_1/100MB.zip &
timeout 5 wget -q url_2/file.zip &
timeout 5 wget -q url_3/sample.mov &
timeout 5 wget -q url_4/speech.mp4 &

और फिर डाउनलोड की गई कुल बाइट्स की गणना करने के लिए एक स्क्रिप्ट लिखें और 5 सेकंड विभाजित करें आपको एक बाइट्स / सेकंड का आंकड़ा मिलेगा। काफी सटीक होना चाहिए और आप अपने बैंडविड्थ को अधिकतम करने के लिए अधिक उदाहरण जोड़ सकते हैं।

मुझे अभी तक पूरी स्क्रिप्ट का परीक्षण करना है लेकिन सिंगल लाइन कमांड "टाइमआउट 5 वेट यूआरएल" काम करता है, और आपको परिणामस्वरूप आंशिक रूप से डाउनलोड की गई फ़ाइल मिलती है (यदि डाउनलोड को पूरा करने के लिए 5 सेकंड पर्याप्त नहीं है)।


इसके लिए कुछ सर्वर की आवश्यकता होगी ...
Braiam

url_1,2,3,4 कुछ भी हो सकता है, जैसे सार्वजनिक सर्वर।
rexis

उदाहरण के लिए timeout 5 wget http://speedtest.netcologne.de/test_100mb.bin -O /tmp/temp5sec, फाइल का विश्लेषण करें और 5 से विभाजित करें: expr $(stat --printf="%s" /tmp/temp5sec) / 5 / 1024kbit / s
rubo77

3

आप उपयोग कर सकते हैं tespeed। यह एक टर्मिनल नेटवर्क स्पीड टेस्ट है जो सर्वर का उपयोग करता है Speedtest.net। यह निकटतम परीक्षण सर्वर का उपयोग करता है, लेकिन उपयोगकर्ता द्वारा निर्दिष्ट मैन्युअल रूप से भी उपयोग कर सकता है।

 git clone git://github.com/Janhouse/tespeed.git
 cd tespeed
 git submodule init
 git submodule update
 ./tespeed.py 

यहां छवि विवरण दर्ज करें

अधिक जानकारी के उपयोग के लिए:

 ./tespeed.py  -h

यह गति परीक्षण के लिए अधिक विकल्प प्रदान करेगा।


नोट: की आवश्यकता हैlxml
मैट

2

एक साधारण एक-लाइनर जो परीक्षण करता है कि 100 एमबी डाउनलोड करने में कितना समय लगता है ( /bin/shयह भी काम करता है ):

t=$(date +"%s"); wget http://speedtest.tele2.net/100MB.zip -O ->/dev/null ; echo -n "MBit/s: "; expr 8 \* 100 / $(($(date +"%s")-$t))

स्पष्टीकरण:

  1. $ t में टाइमस्टैम्प स्टोर करें
  2. 100mb डाउनलोड करें, लेकिन कुछ भी स्टोर न करें
  3. गणना 8 * 100mb / $t

यह एक महान काम कर रहा है क्योंकि मैं एक स्टेटलेस रीड-ओनली रूटएफएस से परीक्षण कर रहा हूं और wgetगति को आउटपुट नहीं कर रहा हूं ।
जोश हब्दास

2

@ ब्रेक्सिस उत्तर पर आधारित सरल बैश स्क्रिप्ट। आप linksसरणी में परीक्षण के लिए अपने स्वयं के लिंक डाल सकते हैं या उन्हें फ़ाइल से पढ़ सकते हैं

#!/bin/bash
export LC_ALL=C  #make output in English eg for later use with "du | grep"

TMP_PATH=/tmp/speedtest_data/
TEST_TIME=5

rm -rf $TMP_PATH && mkdir $TMP_PATH

links=("http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-2b.bin" "http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-1b.bin" "http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-1c.bin" "http://ftp.ntua.gr/pub/linux/ubuntu-releases-dvd/quantal/release/ubuntu-12.10-server-armhf+omap.img" "http://ftp.funet.fi/pub/Linux/INSTALL/Ubuntu/dvd-releases/releases/12.10/release/ubuntu-12.10-server-armhf+omap.img" "http://ftp.icm.edu.pl/pub/Linux/opensuse/distribution/13.2/iso/openSUSE-13.2-DVD-x86_64.iso")

echo "Testing download"

for link in ${links[*]}
do
    timeout $TEST_TIME wget -q -P $TMP_PATH $link &
done

wait

total_bytes=$(du -c -b $TMP_PATH | grep total | awk '{print $1}')

echo "Cleaning up"
rm -rf $TMP_PATH

speed=$(echo "scale=2; $total_bytes / $TEST_TIME / 128" |bc)

echo "Speed is $speed Mbit/s"

exit 0

एक माइनस - जब मैं अंग्रेजी के रूप में अन्य भाषा का उपयोग करता हूं तो क्या होगा? देखें: grep :) भाग
ceph3us

1

बिट्स-प्रति सेकंड में मेरी डाउनलोड गति को आसानी से प्राप्त करने के लिए, मैं अपने $ HOME / .bash_aliases फ़ाइल में निम्नलिखित को परिभाषित करता हूं:

speed-test='wget --output-document=/dev/null --report-speed=bits http://speedtest.wdc01.softlayer.com/downloads/test500.zip'

कहाँ पे:

--output-document=/dev/null प्रभावी ढंग से छूट उत्पादन को त्याग देता है

--report-speed=bits डिफ़ॉल्ट बाइट्स-प्रति-सेकंड (Bps) के बजाय बिट्स-प्रति-सेकंड (bps) में wget डाउनलोड गति औसत प्रदर्शित करता है


0

आप http://dl.getipaddr.net पर भी कोशिश कर सकते हैं

वे गति परीक्षण चलाने के लिए कर्ल (जो एक प्रसिद्ध कमांड लाइन उपयोगिता है) का उपयोग करते हैं।

संक्षेप में

wget https://raw.github.com/blackdotsh/curl-speedtest/master/speedtest.sh && chmod u + x speedtest.sh && bash speedtest.sh


0

मैं speedtest.net और विभिन्न समाधानों से अधिक उन्नत कुछ चाहता था जो केवल एक वेबसाइट पर निर्भर करते हैं। इसलिए मैंने वह काम किया जो मैं सामान्य रूप से करता हूं और अपना समाधान लिखता हूं:

https://github.com/cubiclesoft/network-speedtest-cli

सुविधाओं की सूची से:

  • एसएसएच / एसएफटीपी (पोर्ट 22) गति परीक्षण।
  • कॉमन टीसीपी पोर्ट्स 80, 443 और 8080 के साथ-साथ एक कस्टम टीसीपी / आईपी सर्वर का उपयोग कर यादृच्छिक टीसीपी पोर्ट स्पीड परीक्षण जो 2.2 जीबीपीएस तक की गति और 780 एमबीपीएस तक की गति का समर्थन करता है।
  • काफी बुनियादी नेटवर्क विलंबता परीक्षण।
  • डिजिटल महासागर की बूंदों और गति परीक्षण SSH / SFTP और विभिन्न टीसीपी बंदरगाहों को स्पिन करें।
  • Speedtest.net और कस्टम OoklaServer गति परीक्षण। Single.speedtest.net पर एकल कनेक्शन परीक्षणों के समान परिणाम प्रस्तुत करता है।
  • साइलेंट मोड (-s) में शुद्ध JSON आउटपुट।

यह एक अधिक सामान्य समाधान है जिसका उपयोग अन्य अनुप्रयोगों द्वारा किया जा सकता है। मैं इसके साथ एक आईएसपी नेटवर्क मुद्दे को इंगित करने में कामयाब रहा, जिसके परिणामस्वरूप मेरी एसएफटीपी डाउनस्ट्रीम गति दोगुनी हो गई, जिससे खुशी बढ़ गई।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.