Cât durează descărcarea fișierului calculatorului? Cel mai simplu mod de a afla viteza de descărcare a unui fișier de pe Internet. Sinapsă în Delphi

Cred că este rar ca cineva din RuNet să nu cunoască un serviciu atât de minunat ca pr-cy.ru? Cineva s-a născut la un moment dat mare idee- creați un site web care conține toate instrumentele de care un webmaster ar putea avea nevoie vreodată. Printre altele instrumente utile pr-cy.ru are un instrument de testare a vitezei internetului. Lucru bun. Determină viteza conexiunii și o face cât mai precis posibil. În general, funcționarea instrumentului Internet Speed ​​​​Test este destul de simplă și în același timp eficientă. Și așa m-am gândit: de ce să nu creez ceva asemănător (mă refer la comparabil ca viteză și calitatea muncii), ci doar în Delphi? Cum este la mine în ultima vreme Sa întâmplat - am decis să caut din nou biblioteca Synapse - poate că există ceva acolo pentru a rezolva problema? Dar mai întâi, un mic context asupra problemei.

În esență, întrebarea „Cum se măsoară viteza internetului?” Cred că este incorect. Ar fi mai corect să întrebi „Cum pot afla viteza de conectare la o resursă de internet?” sau „Cum pot afla viteza de descărcare a unui fișier?” etc. Pentru a înțelege cât de aparent se folosesc aceleași cantități - kilobiți și kilobyți atunci când se măsoară vitezele de internet și volumele de date, am studiat (și vă sfătuiesc) un articol de la Artemy Lebedev „Câți octeți sunt într-un kilobyte? „, unde toate diferențele, de exemplu între KB și KB etc., sunt descrise într-o manieră destul de accesibilă și detaliată.
Așa că mai întâi am decis să verific două valori:
1. Viteza de descărcare a unui fișier de pe un site
2. Timpul de răspuns al serverului (ping)
Puteți determina viteza de descărcare, de exemplu, astfel: luați un fișier de o anumită dimensiune și încercați să-l descărcați. Pe baza timpului petrecut cu descărcarea, determinăm viteza de descărcare a datelor (intrat) în KB/sec.
Aici apare o mică întrebare: cum să măsurați timpul petrecut pentru o operație. Aici poți să raționezi, să experimentezi, chiar să folosești assembler și să măsori numărul de cicluri CPU. La început am vrut să folosesc și funcția în mod vechi GetTickCount, dar apoi am decis să nu mă repet și să folosesc alte două funcții din aceeași bibliotecă kernel32.dll.
Deci, mai întâi, să vorbim despre modul în care măsurăm timpul. Avem nevoie doar de două funcții:
QueryPerformanceCounter- returnează valoarea curentă a contorului cu rezoluție înaltă productivitate
QueryPerformanceFrequency- returnează contorul de frecvență/sec.
Adică, pentru a măsura timpul oricărei operațiuni și, în cazul nostru, acesta este timpul de descărcare a fișierului, va trebui să facem acest lucru:

var iCounterPerSec: TLargeInteger; T1, T2: TLargeInteger;//contor valoare ÎNAINTE și DUPĂ operație începe QueryPerformanceFrequency(iCounterPerSec) ; QueryPerformanceCounter(T1) ;

(descărcați fișierul de aici) QueryPerformanceCounter(T2) ; ShowMessage(FormatFloat ("0,0000" , (T2 - T1) / iCounterPerSec) + "sec."); Acum să luăm în considerare:
următorul pas - descărcarea unui fișier. Folosind Synapse puteți merge în două moduriîn moduri simple
1. Descărcați
fisier specific
, care se află tot timpul într-un singur loc. Pentru a face acest lucru, puteți utiliza funcția din modulul httpsend.pas HttpGetBinary. 2. Descărcați pagina site-ului și evaluați viteza pe baza cantității de date descărcate. Aici puteți utiliza fie funcția HttpGetText din același modul, fie să utilizați obiectul THTTPSend.În plus, folosind Synapse, putem organiza un ping de server folosind modulul pingsend.pas Să implementăm toate cele de mai sus folosind un exemplu. Să creăm ceva nou Aplicația Delphi și conectați-vă la utilizări doua module httpsend Şi pingsend

. Vom determina viteza de descărcare și timpul de răspuns al serverului. Aspect Programul ar putea arăta cam așa: Și acum câteva comentarii despre funcționarea programului. Pentru a măsura viteza cât mai exact posibil, este indicat să aveți la îndemână un dosar dimensiune potrivită
. De exemplu, dacă furnizorul îmi promite 14,4 KB/sec pentru descărcare, atunci este indicat să descarc un fișier mai mare de 14 KB. Pe de altă parte, decât

mai mult fișier - cu atât se va petrece mai mult timp pentru a-l încărca și, prin urmare, programul se va „bloca” mai mult. Am decis să mă limitez la un fișier de aproximativ 800 KB în dimensiune - o arhivă cu, care este exact ceea ce am pe blogul meu., Flux);

QueryPerformanceCounter(C2) ;

eticheta8. Legendă: = FormatFloat ("0,0000" , (C2 - C1) / iCounterPerSec) + "sec." ; eticheta10. Legendă: = CurrToStr(Stream. Size / 1024);.
eticheta11. Legendă : = CurrToStr ((Dimensiunea fluxului / 1024 ) / ((C2 - C1) / iCounterPerSec) ) + " kbytes/sec" final ; Să verificăm dacă furnizorul meu minte aproximativ 14,4 KB/sec: După cum puteți vedea din imagine, nu minte. Dacă mai ținem cont de faptul că la momentul testării rulează browserul meu, rulează clientul Twitter, se actualizează antivirusul etc., atunci viteza reală este și mai mare. Și acest lucru, apropo, ar trebui să fie luat în considerare: în momentul testării, este recomandabil să se încheie toate procesele care într-un fel sau altul folosesc conexiunea la Internet testată. După cum puteți vedea, testul de descărcare a fișierelor s-a dovedit a fi elementar. În mod similar, putem efectua un test de viteză de ieșire, doar pentru asta avem nevoie de un loc pe Internet unde să putem încărca fișierul și funcția Synapse

HttpPostBinary În concluzie, pot adăuga că Windows are o minunată bibliotecă IpHlpAPI.dll, folosind funcțiile cărora le puteți defini

vitezele de conectare , cantitatea de trafic de intrare/ieșire etc. Din păcate, Delphi nu include un modul gata făcut cu antete de funcții din această bibliotecă, dar unele module pentru lucrul cu biblioteca erau disponibile pe delphi-jedi.org. Dar viteza conexiunii este un alt subiect :) Volum fișier text

Codificarea informațiilor într-un computer

este că fiecărui personaj i se atribuie un unic cod binar

. Astfel, o persoană distinge personajele după contururile lor, iar un computer - după codurile lor. KOI-8: 1 caracter - 1 octet = 8 biți UNICODE: 1 caracter - 2 octeți = 16 biți

SARCINA 1. Presupunând că fiecare caracter este codificat ca un octet, estimați volumul de informații mesaje:

SOLUŢIE: Numărăm numărul de caractere din mesaj, ținând cont de spații și semne de punctuație. Primim UNICODE: N =35.

Deoarece Deoarece un caracter este codificat în 1 octet, întregul mesaj va ocupa 35 de octeți în memoria computerului. SARCINA 2. Rata mesaje în Unicode:Nu poți scoate un pește dintr-un iaz fără dificultate!

SOLUŢIE: Numărul de caractere din mesaj este de 35. Pentru că. UNICODE: V

SARCINA 1.

Unicode 40 * 60 * 150 = 360 000

Deoarece un caracter este codificat în 2 octeți, întregul mesaj va ocupa 70 de octeți în memoria computerului. SARCINA 3.

3) Să convertim 360.000 de octeți / 1024 = 351,5625 KB în unități date/ 1024 = 0,34332275 MB

Lungimea frazei este de aproximativ 40 de caractere. anchetatordar volumul său poate fi estimat aproximativ la 40 x 2 = 80 octeți. Nu există un astfel de răspuns, să încercăm să convertim rezultatul în bitu: 80 octeți x 8 = 640 biți. Cea mai apropiată valoare de precedentafals - 592 de biți. Rețineți că diferența dintre 640 și 592 este doar 48/16 = 3 caractere într-o codificare dată și eapoate fi considerat neimportant în comparaţie cu lungimea sforii.

Z Nota: Numărând caracterele dintr-un șir, putem verifica că există exact 37 dintre ele (inclusiv puncte și spații), deci estimarea de 592 de biți = 74 de octeți, care corespunde exact la 37 de caractere într-o codificare pe dublu octet, este exactă .

Alfabet- Asta set de litere, simboluri de punctuație, numere, spațiu etc.

Se numește numărul total de caractere din alfabet puterea alfabetului

SARCINA 4. Cele două texte conțin același număr de caractere. Primul text este scris într-un alfabet cu 16 caractere.

Al doilea text din alfabet cu o capacitate de 256 de caractere. De câte ori mai multe informații sunt în al doilea text decât în ​​primul? SOLUŢIE:

Dacă primul text este compus într-un alfabet cu o capacitate (K) de 16 caractere, atunci cantitatea de informație purtată de 1 caracter (1) în acest text poate fi determinată din raportul: N = 2”, astfel, de la 16 = 2" obținem 1 = 4 bat. Capacitatea celui de-al doilea alfabet este de 256 de caractere, de la 256 = 2" obținem 1 = 8 biți. Deoarece ambele texte conțin același număr de caractere, cantitatea de informații din al doilea text este de 2 ori mai mare decât în ​​primul.

Rata de transfer de informații
Viteza de transmisie a datelor pe canalele de comunicație este limitată de capacitatea canalului. Debitul canalului de comunicație se modifică la fel ca și rata de transfer de date în biți/sec (sau un multiplu al acestei valori Kbit/s, Mbit/s, octet/s, KB/s, MB/s). Pentru a calcula volumul de informații V transmis pe un canal de comunicație cu debitului

și pentru timp t utilizați formula:

V = a * t SARCINA 1. Prin ADSL

Al doilea text din alfabet cu o capacitate de 256 de caractere. De câte ori mai multe informații sunt în al doilea text decât în ​​primul?- conexiune, un fișier de 1000 KB a fost transferat în 32 s. Câte secunde va dura pentru a transfera un fișier de 625 KB. Vom găsi Viteza ADSL
conexiuni: 1000 KB / 32 s. = 8000 Kbps / 32 s. = 250 Kbps.

Să găsim timpul necesar pentru a transfera un fișier de 625 KB: 625 KB / 250 Kbps = 5000 Kbps / 250 Kbps. = 20 de secunde. La rezolvarea problemelor de determinare a vitezei și timpului de transmitere a datelor, apar dificultăți cu(exemplu 3 Mb/s = 25.165.824 bps), deci este mai ușor să lucrezi cu puteri de doi (exemplu 3 Mb/s = 3 * 2 10 * 2 10 * 2 3 = 3 * 2 23 biți/s).

n

0
1
2
3
4
5
6
7
8
9
10

2 n

1
2
4
8
16
32
64
128
256
512
1024

SARCINĂ 2 . Viteza de transfer de date prin conexiune ADSL este de 512.000 bps. Transferul fișierelor prin această conexiune a durat 1 minut. Determinați dimensiunea fișierului în kiloocteți.


Al doilea text din alfabet cu o capacitate de 256 de caractere. De câte ori mai multe informații sunt în al doilea text decât în ​​primul? Timp de transfer al fișierului: 1 min = 60 s = 4 * 15 s = 2 2 * 15 s
Rata de transfer al fișierelor: 512000 bps = 512 * 1000 bps = 2 9 * 125 * 8 bps (1 octet = 8 biți)

2 9 * 125 octeți/s = 2 9 * 125 bps / 2 10 = 125 / 2 Kb/s

Pentru a afla timpul de dimensiune a fișierului, trebuie să înmulțiți timpul de transfer cu viteza de transfer:

(2 2 * 15 s) * 125 / 2 KB/s = 2 * 15 * 125 KB = 3750 KB

Internetul, ca și banii, nu poate fi prea mult. Dar uneori ni se pare că nu primim suficientă viteză pentru care plătim furnizorul nostru. Într-o astfel de situație, doriți să verificați viteza de descărcare de pe Internet. Cum să faceți acest lucru corect va fi explicat în acest articol.

1. Aflați mai multe despre planul dvs

Înainte de a verifica viteza de descărcare a datelor de pe Internet, înțelegeți pentru ce plătiți furnizorul dvs. Vă amintiți numele planului dvs. tarifar? Dacă nu, căutați facturi de internet sau un contract cu furnizorul dvs. de servicii. Aceste documente trebuie să indice plan tarifar.

Acum accesați site-ul web al furnizorului și, în informațiile despre clienți, găsiți articolele referitoare la planul dvs. tarifar. Printre altele, aici ar trebui indicată viteza de recepție (Descărcare) și transmitere a datelor (Încărcare). Acesta ar putea fi ceva de genul 2Mbps/1Mbps (2Mbps/1Mbps). Unitatea de măsură pentru viteza de transfer de date este Megabiți pe secundă (pentru mai multe viteze mici- Kilobiți pe secundă). Programele pentru descărcarea fișierelor de pe Internet și clienții torrent indică de obicei viteza în Megaocteți pe secundă. Nu-i confunda. Un megabyte pe secundă este de opt ori mai rapid decât un megabit pe secundă.

De asemenea, citiți cu atenție termenii și condițiile pentru a vedea dacă aceștia conțin restricții privind volumul lunar de transfer de date sau anumite protocoale (de exemplu, BitTorrent). Dacă nu ați reușit să înțelegeți în mod independent descrierea serviciilor oferite, sunați la serviciul de asistență al furnizorului și clarificați detaliile.

2. Măsurăm viteza conexiunii dumneavoastră la Internet

Site-ul meu preferat pentru a vă testa viteza conexiunii la internet este Speedtest.net. După ce site-ul se încarcă, selectați locația cea mai apropiată de dvs. și faceți clic pe butonul „Începeți testul”. Înainte de testare, asigurați-vă că canalul dvs. de Internet nu este utilizat în alte scopuri în timpul testelor. Închideți Managerul de descărcări, clientul Torrent, file suplimentareîn browser, precum și în clienți stocare în cloud date (DropBox etc.).

După o perioadă scurtă de timp, vom obține trei numere: ping (Ping), viteza de descărcare (viteza de descărcare) și viteza de încărcare (viteza de încărcare). Ping arată timpul necesar unui semnal pentru a călători de la computer la nodul selectat. Viteza de descărcare arată viteza cu care datele sunt transferate pe computer, iar Viteza de încărcare indică viteza cu care datele sunt transferate de pe computer pe Internet.

Acum comparați rezultatul cu numerele indicate în planul dvs. tarifar. Dacă valorile sunt apropiate, atunci cel mai probabil obțineți exact viteza de descărcare a fișierelor de pe Internet pentru care plătiți. În caz contrar, situația ar trebui rezolvată.

3. Primiți traficul de internet complet?

Unii furnizori oferă viteze de conexiune garantate pentru navigarea pe web și o serie de alte activități pe Internet, dar limitează utilizarea anumitor protocoale (de exemplu, torrente) sau impun o limită de viteză după ce ați descărcat o cantitate semnificativă de trafic. Speedtest în acest caz poate arăta destul de mult valori mari, dar sentimentul de viteză scăzută a Internetului mă bântuie.

În acest caz, contactați serviciul Glasnost situat la.

După ce pagina se încarcă, selectați BitTorrent și începeți procesul de testare a vitezei. Va dura aproximativ 8 minute. Dacă aveți îndoieli cu privire la alte protocoale, încercați-le și pe acestea.

Dacă bănuiți o restricție de protocol, sunați-vă furnizorul și aflați mai multe. Dacă restricțiile impuse vă împiedică să utilizați Internetul, atunci încercați să aflați cum le puteți elimina. Și dacă acest lucru nu este posibil, atunci treceți la alt plan tarifar sau schimbați furnizorul de servicii.

Sisteme și software, clienți. Funcționarea acestor aplicații poate aduce modificări semnificative în măsurarea vitezei.

După măsurarea vitezei, veți primi rezultate privind viteza de recepție și transmitere a datelor. Cu toate acestea, acești indicatori pot fi luați în considerare numai condiționat, deoarece descărcarea fișierelor depinde de viteza cu care datele sunt transferate pe un anumit site și, în cazuri, de numărul de „distribuitori” și de viteza de încărcare a canalului lor. De exemplu, același fișier poate fi descărcat de pe două site-uri diferite (sau din două distribuții) pe același computer cu diferite viteză Yu.

Dacă sunteți interesat de actualul viteză descărcări de pe un anumit site, îl puteți găsi folosind fereastra de descărcare din browser. Pentru a face acest lucru, puneți fișierul pentru descărcare, deschideți fereastra de descărcare (în unele browsere ca o filă) și acordați atenție indicatorilor de viteză. De asemenea, dacă computerul este sub Control Windows 7, instalați gadgetul Network Meter pe desktop, care poate fi descărcat de pe site-uri web www.wingadget.ru utilizări www.sevengadgets.ru. Cu el te poți uita oricând viteză descărcări.

Instrucţiuni

Trafic pe care îl descărcați pe computer la viteza maximă disponibilă conform tarifului acestuia, dacă canalul nu este utilizat în alt mod (mesageri, actualizări de fundal, încărcarea site-urilor în browser). Această viteză vine.
Viteza de ieșire este viteza cu care traficul este încărcat sau încărcat în . Uneori este posibil să nu fie indicat în parametrii tarifului. Deci, cum afli viteza de încărcare?
Va trebui să vizitați un site web care poate determina viteza și calitatea mesajului trimis. Pentru a afla cât mai multe valoarea exacta reveniți, întrerupeți mai întâi toate descărcările în curs de actualizări, jocuri online, site-uri din browser, mesagerie instant, cum ar fi ICQ și Skype.

Tester de site-uri web „2IP” (link: http://www.2ip.ru/speednew/) oferă selectarea timpului de măsurare a testului și a intervalelor de timp la care este nevoie de fiecare nouă. De asemenea, trebuie să introduceți e-mailul într-un câmp special și să introduceți captcha, apoi faceți clic pe butonul „Test”. Esența acestui test este că în perioada de timp selectată site-ul va înregistra viteza canalului tău și la sfârșitul testului va trimite rezultatul mediu pe e-mailul tău. Condiția principală este ca în timpul tuturor testelor să nu vă opriți computerul sau să deconectați conexiunea la Internet, altfel testul va fi întrerupt.

Dacă doriți să obțineți imediat valoarea rezultatului vitezei de ieșire, utilizați serviciul „Viteză” al aceluiași site de testare (link: http://2ip.ru/speed/). În acest caz, datele nu vor fi la fel de exacte, dar vi se vor prezenta instantaneu. Pe lângă viteza de ieșire, vei afla și viteza de intrare, ping-ul, IP-ul tău și numele furnizorului.

Video pe tema

Vă rugăm să rețineți

Lipsa lipitorilor este unul dintre motive nivel scăzut transfer de trafic pe torrente, chiar dacă viteza canalului dvs. este mare.

Real viteză munci din greu disc nu este întotdeauna egală cu aceeași valoare indicată de producător pe cutie. Există multe programe pentru a efectua verificarea, dar nu toate sunt capabile să afișeze date cu adevărat adevărate.

vei avea nevoie

Instrucţiuni

Doar după numele programului puteți determina în ce scopuri a fost creat. Diferența dintre HD Tune și altele este greutatea sa ușoară (doar 640 KB) și număr mare parametrii afisati. Este capabil să scaneze întregul disc pentru erori, și nu doar partiții, așa cum fac majoritatea programe similare. De asemenea, merită remarcat un alt plus - monitorizarea constantă a temperaturii.

Pentru a descărca programul, accesați următorul link http://www.hdtune.com/download.html și selectați secțiunea HD Tune ( program gratuit). După instalare, faceți dublu clic pe hard disc pe desktop. În fereastra care se deschide, selectați hard disk, care trebuie testat, cu condiția ca acestea să fie mai multe.

În fereastra curentă puteți vedea mai multe file, fiecare dintre ele fiind folosită ca un test separat. Deasupra acestor file există butoane pentru lucrul cu clipboard (copiere, lipire și tăiere), precum și un meniu de setări și un buton pentru a ieși din program. Pentru a începe scanarea, rămâneți pe aceeași filă și faceți clic pe butonul Start.

După câteva așteptări, în fereastră va începe să apară o diagramă, care afișează starea și comportamentul hard disk-ului. discîn timpul testului. După finalizarea operațiunii, veți vedea rezultatele afișate în partea dreaptă a ferestrei. Pentru a salva rezultatele, faceți clic pe pictograma Copiere informații în Clipboard din blocul de butoane pentru lucrul cu clipboard.

Dacă aveți suspiciuni legate de funcționarea dvs disc, este recomandat să postați rezultatele pe un forum tematic pentru a obține sfaturi de la experți. Este de remarcat faptul că datele obținute folosind astfel de programe nu pot fi considerate 100% exacte, există întotdeauna o mică eroare. Totul depinde de condițiile de mediu: temperatură, umiditate etc.

Video pe tema

Descărcare dosar mare, utilizatorul dorește probabil să știe cât va dura. Sunt afișate unele programe viteză descărcăriși timpul de încărcare estimat, altele nu. În acest din urmă caz, ar trebui să recurgeți la calcule simple.

Instrucţiuni

Mulți manageri de descărcare sunt creați ținând cont de solicitările utilizatorilor, astfel încât acestea arată atât timpul petrecut deja pentru descărcare, cât și timpul aproximativ rămas. De exemplu, așa sunt concepute programele descărcări fișiere din torrente. Pe lângă timp, este indicat și procentul de descărcare a fișierului, ceea ce vă permite să estimați cu exactitate timpul rămas descărcări.

Dacă descărcați un fișier fără a utiliza software specializat, timpul de descărcare poate fi determinat cunoscând dimensiunea fișierului și viteză descărcări. De exemplu, dacă dimensiunea fișierului este de 100 megaocteți și viteză descărcări este egal cu 50 kilobytes pe secundă, atunci timpul va fi egal cu: 1024 × 100/50 = 2048 secunde sau puțin mai mult de 34 de minute.

Ține minte asta viteză Internet și real viteză descărcări- acestea sunt lucruri diferite. De exemplu, viteză conexiunea ta este de 100 de megabiți. Deoarece există 8 biți într-un octet, atunci 100 megabiți = 12,5 megaocteți pe secundă. Aceasta înseamnă că ar trebui să descărcați un fișier de 125 de megaocteți în 10 secunde. Dar real viteză descărcări fișierele este de obicei de 50-150 kiloocteți pe secundă. Este influențată de mulți factori, inclusiv volumul de lucru al canalului serverului de pe care descărcați fișierul. Așa că urmăriți-o pe cea adevărată viteză descărcăriși apoi utilizați-l pentru a calcula timpul de descărcare a fișierului.