Longitud UDP mala Longitud de carga útil IP

1

He desarrollado un software de capa de aplicación que transmite 2560 bytes utilizando UDP a través de Ethernet. Me doy cuenta de que la MTU de Ethernet es de 1500 bytes, por lo tanto, he reconfigurado ambas MTU de envío / recepción final a 5102 como se muestra en la siguiente imagen: LosdatossetransmitendesdeunFPGAalaPC.Sinembargo,estoesloquecapturoatravésdeWireshark: Recibo los datos correctos que estoy enviando, pero me da el error de que: BAD UDP LONGITUD 2568 > LONGITUD DE PAGO DE IP Len = 2560. Los datos que estoy enviando desde el FPGA son 2560bytes.

¿Puedo saber cómo puedo reconfigurar la LONGITUD DE PAGO DE IP?

    
pregunta user9870

2 respuestas

1

Hay varios problemas potenciales con esto. Primero, aunque su aplicación puede estar configurada para una MTU supuesta, no es posible decir de su descripción si eso realmente afecta a los bytes en el cable. Por ejemplo, bajo Linux, la MTU puede estar limitada a 1500 (o algún otro número) por el controlador o por el hardware.

Segundo, con IPv4, cualquier dispositivo intermedio puede fragmentar un paquete y enviar dos (o más) piezas si el tamaño excede la MTU de un enlace. Probablemente ese no sea el problema aquí, ya que ambos dispositivos parecen estar en la misma subred con direcciones no enrutables, pero podrían limitar sus opciones en el futuro.

Lo que estás buscando es soporte para Jumbo Frames , así que verifica que el chipset y el controlador en el otro extremo los maneja.

    
respondido por el Edward
0

Creo que es un problema de Wireshark que no comprende la longitud del datagrama más grande de lo que está configurado.

Si la comunicación funciona bien, no tome en serio la información de este experto.

Si la comunicación no funciona, es posible que otros dispositivos en la red no comprendan el tamaño de datagramas no estándar (por ejemplo, un enrutador). ¿Consideraste jugar seguro usando dos datagramas?

    
respondido por el Anonymous

Lea otras preguntas en las etiquetas