Olhando para a entrada Ethernet na Wikipedia, não consigo descobrir como é indicado quanto tempo o quadro Ethernet tem. O campo de cabeçalho EtherType / Length aparentemente pode indicar um tipo de quadro ou um comprimento explícito, e suponho que, no caso de um tipo de quadro, ele tenha que fazer alguma outra lógica para descobrir quanto tempo o pacote é. Por exemplo, se o campo EtherType for 0x0800, isso indica uma carga útil IPv4 e, portanto, a NIC receptora precisaria examinar os primeiros 32 bits da carga útil para encontrar o comprimento do pacote IP e, portanto, descobrir o comprimento total de o quadro Ethernet e saiba quando procurar a soma de verificação de fim de quadro e o intervalo entre quadros.
Este som está correto? Eu também olhei para a especificação IEEE 802.3 para Ethernet (parte 1, de qualquer maneira) que parece corroborar isso, mas é bastante opaca.