Con Ethernet a 100 Mbit/s, un file di grandi dimensioni viene trasferito a 94,1 Mbit/s.
Questo è il 6% di spese generali. Se contate anche gli ACK TCP che scorrono nella direzione opposta, è più vicino al 9%. Per Gigabit Ethernet l'overhead (in percentuale) rimane lo stesso. Presupposti: TCP/IPv4 e dimensione del file> 100kB. (A questa dimensione possiamo trascurare l'impostazione iniziale di HTTP e TCP.)
Quando si confrontano le velocità di download, fare attenzione al fattore 8 da bit a byte. Immagino che nessuno ti addebiterà per il preambolo Ethernet o il divario interframe, ma il "carico utile" non dovrebbe essere preso alla lettera.
Calcolo: payload/ft
payload = 1500 - 20 - 32 (Ethernet_MTU - IPv4 - TCP)
complessiva = 8 + 14 + 1500 + 4 + 12 (Preambolo + Ethernet_header + Ethernet_MTU + CRC + Interframe_gap)
Poiché Ethernet è sempre completamente full duplex in questi giorni, l'occasionale TCP ACK che scorre nell'altro modo non modifica la velocità di trasferimento. Se aggiungi un ACK per ogni due frame di dati al sovraccarico (questo è quello che ho osservato in Wireshark), ottieni un overhead totale dell'8,5%. E mentre la dimensione MTU è in genere di 1500 byte, può essere più piccola in alcune reti, o molto più grande se ogni pezzo di equipaggiamento nel percorso è configurato per esso.
Solo per i bit/byte del sovraccarico TCP/IP (quindi NON includendo l'overhead aggiuntivo di HTTP/S, né calcolando il sovraccarico in%), ho trovato la risposta https://stackoverflow.com/questions/8902583/minimal-tcp-ip-overhead-over-ethernet-frames/8902667 # answer-8902667 utile. –