No tocar demasiado mi propio claxon, pero podría recomendar IcedJava. (Forma parte del proyecto SipTools) Se está desarrollando activamente, tiene una versión estable versión 0.9 y admite casos de uso como RTP de manera inmediata.
En cuanto al soporte de TCP, está programado para una versión posterior, pero tendrá dificultades para soportar TCP sobre nat simétrico debido al bloqueo de tres vías. Incluso las extensiones TCP de la especificación ICE indican que las conexiones TCP tienen muchas menos probabilidades de tener éxito que las conexiones UDP entre pares nativas.
Dicho esto, puede solucionar esto enrutando paquetes TCP a través de un puente UDP, incluidas todas las funciones de corrección de errores y control de flujo. (Olvidé la RFC para esto, pero es una especificación final). Sin embargo, todas estas son especificaciones relativamente nuevas, y la especificación ICE-TCP aún no es definitiva. Incluso en el desarrollo activo, llevará tiempo implementarlos.
hmm el enlace está muerto ... – goh
Se corrigió el enlace. – SplinterReality
¿Este proyecto aún se mantiene? ¿O ha sido descontinuado? – mateuscb