A Java implementation of the ICE protocol
Switch branches/tags
Clone or download
mstyura and bbaldino Stun client transaction re-transmission based on `ScheduledThreadPool…
…Executor` (#153)

* Hide Runnable interface in StunClientTransaction class.

* Use CustomizableThreadFactory to give custom names to threads.

* Extracted retransmission logic into separate class.

* Re-implement Retransmitter with ScheduledThreadPoolExecutor.

* Fixed retransmissionCounter increment.

* Directly call logger fine methods instead overload with Level.
Latest commit 513fb58 Oct 31, 2018



The Interactive Connectivity Establishment (ICE) protocol combines various NAT traversal utilities such as the STUN and TURN protocols in order to offer a powerful mechanism that allows Offer/Answer based protocols such as SIP and XMPP to traverse NATs.

This project provides a Java implementation of the ICE protocol that would be usable by both SIP and XMPP applications. The project also provides features such as socket sharing and support for Pseudo TCP.

ice4j is maintained by the Jitsi community. Use Jitsi's dev mailing list for questions and discussions.


Work on this project was graciously funded by the NLnet Foundation. Thank you!