He estado tratando de averiguar por qué un programa Java que utiliza la comunicación UDP en Windows funciona bien al 100%, pero parece soltar paquetes en una versión macOS de la JVM (8.x).
Vi otro hilo en StackExchange que Nunca se respondió realmente, pero parece que una de las personas también notó un problema similar en OSX.
No tengo el firewall estándar habilitado en las preferencias ni creo que tenga una configuración de red especial que pueda interrumpir los datagramas UDP. Además, si ejecuto el mismo programa en una máquina virtual Windows 7 a través de VirtualBox en el mismo hardware, el programa funciona bien.
¿Alguna idea sobre qué buscar o si se trata de un problema conocido?
ACTUALIZACIÓN 2018-11-24: más detalles. Estoy ejecutando Java 1.8.0_92-b14 de Oracle en un MacPro3,1 y macOS 10.13.6. El programa que estoy ejecutando es ADTPro 2.0.2 como un servidor Ethernet que intenta comunicarse con una antigua Apple // e que tiene una Uthernet II ejecutando el otro lado de ADTPro. Es un software para transferir imágenes de disco a / desde las máquinas.
El problema es que las transferencias a menudo se agotan y se cancelan, y parece que los paquetes se están perdiendo y que el código no es lo suficientemente sofisticado como para corregir errores y reenviarse / reintentar. En cuanto al código fuente, parece que todo está en UDP, lo que definitivamente genera sospechas. Según el mantenedor en GitHub, el hecho de que esté utilizando UDP es histórico y nadie ha hecho el trabajo de conversión a TCP. Dado que el software funciona bien hablando con una máquina Windows con el mismo software y las versiones de Java, supongo que es algo con macOS o OSX Java build y preguntando si alguien sabe cómo determinarlo o no. ¿Eso ayuda?