Se qualche termine non ti è noto (penso ad overhead) ci sono tanti dizionari ma, ad ogni modo, le cose non possono essere rese semplici oltre un certo limite (oltretutto questo thread non è la sede per imparare certe cose, o almeno, non come lo sono la scuola, i libri, whitepaper, wikipedia, i documenti degli standard etc.).
La "classica" linea FTTH 1Gb/s ha un modem, che si chiama ONT (ora che sia esterno o mini/SFP non cambia), che ha da una parte una porta ottica GPON e verso di te una porta Gigabit Ethernet (GbE).
La tua connessione quanto sarà veloce? Al massimo potrà essere veloce fino al punto di saturare (occupare) tutta la larghezza di banda della tua porta GbE.
Di una porta GbE, il prefisso "Giga" ci dice che può trasmettere in teoria 1 miliardo di bit al secondo di informazioni (1Gb/s = 1000Mb/s).
Poiché i protocolli che nomineremo parlano di byte e non di bit, facciamo subito la conversione: 1 byte è formato da 8 bit, per cui una GbE può trasmettere teoricamente 125 milioni di byte al secondo ( x 8 fa 1 miliardo) di informazioni (125MB/s).
Però non tutti i 125 milioni di byte possono "trasportare" traffico utile, il throughput che lo speedtest va a misurare, in questo caso.
Il protocollo ethernet divide la banda disponibile (125 milioni di byte) in "pacchettini" chiamati frame (o trama in italiano): il frame "standard" è lungo 1518 byte (le virgolette dicono che lo standard ammette alcune eccezioni, a cui normalmente ci si riferisce con i termini "jumbo frame", "mini jumbo", etc., che su Internet ci interessano relativamente)
Ora, poiché una GbE è full duplex - trasmette e riceve nello stesso momento - tra un frame e l'altro il protocollo "spreca" (non sono traffico, dati utili) complessivamente 20 byte tra due frame, per cui in realtà dobbiamo considerare un frame "lordo" lungo 1518 + 20 byte per sapere quanto è veloce una GbE in termini di frame/s (invece che di byte o bit al secondo).
Per cui in 125 milioni di byte avrai (calcolatrice alla mano) 81274 frame ethernet (arrotondati all'unità).
Vedremo tra un attimo a cosa ci serve questo numero.
In ciascuno di questi frame ethernet avrai all'inizio un header, che conterrà alcune informazioni (MAC address dei terminali, eventuali tag VLAN, il tipo di protocollo superiore trasmesso col frame ethernet, etc.) di 14 byte, ed alla fine un checksum di 4 byte per calcolare eventuali errori in trasmissione.
Questi 18 byte è l'overhead del protocollo ethernet, la banda "sprecata" solo per funzionare (e non per trasferire informazioni, dati utili) di un singolo frame.
Quello che resta, l'avrai sentito forse nominare, è lo MTU (Max Transmission Unit), che vale dunque 1500 byte rispetto alla lunghezza "standard" delle trame.
Se siamo su Internet verosimilmente dopo l'header ethernet avrai gli header dello stack TCP / IP (lo stack di protocolli di Internet).
Se parliamo di IPv4 a memoria mi pare che siano 20 byte per l'header IP ed altrettanti per l'header TCP, tot. 40 byte.
Quello che resta dello MTU puoi averlo pure sentito nominare come MSS, Max Segment Size, che vale 1460 byte.
In definitiva, su un frame ethernet "lordo" di 1538 byte hai 78 byte di overhead (roba che non porta traffico utile) ed un carico massimo di 1460 byte.
Ora, tornando al calcolo di prima, avevamo 81274 frame ethernet, ed ora vediamo che ciascuno di questi può portare 1460 byte di traffico pagante (payload): fai la moltilplicazione ed il risultato è che il traffico, il throughput che pure lo speedtest va a misurare, è poco meno di 119 milioni di byte al secondo.
Se moltiplichi questi scarsi 119 milioni per 8 (visto che sono byte) ottieni una velocità o banda non di 1 miliardo di bit al secondo ma di 949 milioni di bit (aka 949Mb/s) per una GbE.
E visto che il max teorico in byte era di 125 milioni, e che il traffico utilizzabile è meno di 119 milioni, se fai il rapporto tra reale e teorico viene fuori 0,94928032, cioè il 94,9% e spicci di efficienza.
Spero ti sia sufficiente, perché come premesso siamo molto OT rispetto al thread ed io sono tutto fuorché un insegnante di networking, e soprattutto perché mi sono stancato non poco cercando di essere corretto, semplice e non pedante (e non so nemmeno se ci sono riuscito).