Sto lavorando in una società di ISP. Stiamo sviluppando un tester di velocità per i nostri clienti, ma stiamo riscontrando alcuni problemi con i test di velocità TCP.Algoritmo del tester di velocità TCP domanda
Un client aveva una durata totale di 102 secondi con trasferimento di 100 MB con una dimensione del pacchetto di 8192. 100.000.000/8192 = 12.202 pacchetti. Se il client invia un ACK ad ogni altro pacchetto che sembra un sacco di tempo, basta trasmettere gli ACK. Supponiamo che il client invii 6000 ACK e che l'RTT sia 15ms - questo è 6000 * 7.5 = 45.000ms = 45 secondi solo per gli ACK?
Se io uso questo calcolo per Mbit/s:
(((sizeof_download_in_bytes/durationinseconds) /1000) /1000) * 8 = Mbp/s
mi metterò il risultato in Mbp/s, ma poi il più alto è il TTL è tra il mittente e il cliente più basso il Mbp/s la velocità diventerà.
Per simulare che l'utente sia più vicino al server, sarebbe "legale" rimuovere il tempo di risposta ACK nel risultato finale su Mbp/s? Sarebbe come simulare l'utente finale vicino al server?
quindi vorrei mostrare questo calcolo per l'utente finale:
(((sizeof_download_in_bytes/(durationinseconds - 45sec)) /1000)/1000) * 8 = Mbp/s
Che è valida?
Qual è la dimensione della tua finestra? –