La trama completa debe tener al menos 64 bytes. Esto no es solo la carga útil, esto incluye los encabezados y la secuencia de verificación de trama. El FCS ocupa 4 bytes al final. Un encabezado Ethernet consta de dos direcciones MAC de 6 bytes más un campo de tipo de 2 bytes, 14 bytes en total. 64-4-14 = 46. Los paquetes IPv4 tienen un encabezado adicional de al menos 20 bytes en la parte superior del encabezado de Ethernet, lo que hace que el tamaño mínimo de carga útil sea de 26 bytes. TCP y UDP agregan más encabezados además de eso.
Otra cosa a tener en cuenta es que el tamaño de una trama de longitud mínima en el cable es en realidad mayor que 64 bytes: hay un preámbulo / inicio delimitador de trama de 8 bytes y un espacio entre tramas de 12 bytes que se adjunta a cada paquete, lo que hace un 64 el paquete de bytes ocupa 64 + 8 + 12 = 84 bytes en el cable.
La respuesta de 41 bytes en la otra pregunta solo está considerando los encabezados TCP e IP. Si envía un paquete TCP con 0 bytes de datos, tendrá 40 bytes de encabezados; No es posible hacer un paquete TCP válido más pequeño que este. Pero si intenta enviar este paquete, se rellenará con cero a 46 bytes antes de conectar el FCS de Ethernet.
La razón por la que esto se hizo originalmente con Ethernet fue para garantizar una longitud mínima de trama en el cable, de modo que todos los dispositivos pudieran detectar de manera confiable las colisiones por encima de la longitud máxima especificada del cable. Esto es necesario porque las primeras encarnaciones de 10M Ethernet usaban un medio coaxial compartido y los dispositivos conectados tenían que poder detectar cuándo dos de ellos intentaban transmitir en el medio compartido al mismo tiempo. Las redes Ethernet un poco menos antiguas de 10M y 100M sobre par trenzado que se construyeron con concentradores en lugar de conmutadores también necesitaban poder detectar colisiones. Sin embargo, la mayoría de las redes Ethernet modernas están conmutadas y no utilizan un medio compartido, por lo que esto ya no es estrictamente necesario, pero sigue siendo parte de la especificación por razones de compatibilidad. Los cuadros de menos de 64 bytes se llaman cuadros de ejecución,
En la especificación original de Ethernet, 64 bytes llenarían el cable de extremo a extremo, permitiendo que todos los hosts detecten colisiones. El estándar original de Ethernet también especificó 14 bytes para el encabezado y 4 bytes para la secuencia de verificación de trama. Eso es 18 bytes. resta 18 de 64, y obtienes 46 como carga mínima. Desde entonces, puede agregar una etiqueta VLAN de cuatro bytes. Entonces, con la etiqueta VLAN, el tamaño mínimo de carga útil es 42. Sin la etiqueta VLAN, el tamaño mínimo de carga útil sigue siendo 46.
fuente
El tamaño mínimo de trama de Ethernet se definió para las variantes semidúplex originales. Con half duplex, debe detectar y propagar de manera confiable las colisiones mientras ocurren. Una señal necesita propagarse en la distancia más larga entre dos estaciones en un segmento, permitir la detección de colisiones y propagar la señal de interferencia al remitente mientras aún está transmitiendo. Poniendo todo junto, terminas con 512 bits o 64 bytes en un marco.
Para Fast Ethernet (100 Mbit / s), el cable coaxial semidúplex inherentemente se abandonó y solo se utilizan medios compatibles con dúplex completo (= medios con rutas de señal dedicadas por dirección). Esto acelera considerablemente la detección de colisiones y permite utilizar el mismo tamaño mínimo de trama, aunque una trama a través de Fast Ethernet es mucho más corta en el tiempo.
Gigabit Ethernet inicialmente incluía un modo semidúplex, que requería relleno para aumentar el tamaño mínimo de paquete Ethernet (no el tamaño de trama ). El GbE semidúplex en realidad no se usó en ningún lado y ahora está obsoleto.
La conmutación de Ethernet full-duplex hace que estas consideraciones sean obsoletas. Sin embargo, Ethernet se basa en la compatibilidad: todas las variantes de capa física pueden coexistir e interactuar entre sí. Por lo tanto, el tamaño mínimo de trama nunca se cambió y un antiguo nodo semidúplex de 10 Mbit / s todavía puede funcionar en una red moderna de varios gigabits sin mucha dificultad.
Sin embargo, hay mucha confusión sobre estos detalles y se cita mucho mal. La referencia es IEEE 802.3 Cláusula 4.4.2 Parámetros MAC .
fuente