He estado tratando de averiguar por qué un programa en Java que utiliza UDP comunicación en Windows funciona 100% bien, pero parece regularmente colocar los paquetes en una macOS construir de la JVM (8.x).
Vi otro hilo en StackExchange que en realidad nunca fue contestada, pero parece que una de las personas se dieron cuenta de un problema similar en OSX.
No tengo el estándar firewall activado en preferencias ni tampoco creo que tengo especial configuración de red que pudiera interrumpir datagramas UDP. Así, si se me ejecuta el mismo programa en un equipo con Windows 7 VM a través de VirtualBox en el mismo hardware, el programa funciona bien.
Alguna idea de qué buscar o si este es 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 usando es ADTPro 2.0.2 como el de ethernet del servidor tratando de comunicarse con un viejo Apple //e que tiene un Uthernet II ejecutando el otro lado de ADTPro. Es un software para la transferencia de imágenes de disco a/de las máquinas.
El problema es que las transferencias de frecuencia tiempo de espera y abortar y parece que los paquetes se pierdan y que el código no está lo suficientemente sofisticados como para error de corregir y reenviar/reintentar. Mirando el código fuente, parece que todo está en UDP, que sin duda genera sospechas. De acuerdo con el mantenedor en GitHub, el hecho de que es el uso de UDP es histórico y nadie ha hecho el trabajo para convertir a TCP. Dado que el software funciona bien hablando con una máquina Windows con el mismo software y versiones de Java, supongo que es algo con macOS o el OSX Java build y preguntar si alguien sabe cómo determinar de seguro o de otra manera. ¿Eso ayuda?