GNU SIP Witch

What is GNU SIP Witch?

GNU SIP Witch is a secure peer-to-peer VoIP server that uses the SIP
protocol. Calls can be made peer-to-peer behind NAT firewalls, and
without needing a service provider. GNU SIP Witch does not perform codec
operations and thereby enables SIP endpoints to directly peer negotiate
call setting and process peer to peer media streaming even when when multiple
SIP Witch call nodes at multiple locations are involved. This means GNU SIP
Witch operates without introducing additional media latency or offering a
central point for media intercept or capture. GNU SIP Witch can be used to
build secure and intercept-free telephone systems that can operate over
the public Internet.

GNU SIP Witch is designed to support network scaling of telephony services,
rather than the heavily compute-bound solutions we find in use today. This
means a call node has a local authentication/registration database, and this
will be mirrored, so that any active call node in a cluster will be able to
accept and service a call. This allows for the possibility of live failover
support in the future as well.

GNU SIP Witch is not a SIP "router", and does not try to address the same
things as a project like iptel "Ser". GNU SIP Witch is being designed to create
on-premise SIP telephone systems, telecenter servers, and Internet hosted SIP
telephone systems. One important feature will include use of URI routing to
support direct peer to peer calls between service domains over the public
internet without needing mediation of an intermediary "service provider" so
that people can publish and call sip: uri's unconstrained. GNU SIP Witch is
about freedom to communicate and the removal of artifical barriers and
constraints whether imposed by monopoly service providers or by
governments.

GNU SIP Witch can also be used to construct embedded telephony services as part
of GNU
Telephony Open Embedded. GNU SIP Witch is built from GNU uCommon, which
optionally offers a complete runtime C++ library environment for developing
deeply embedded targets without requiring the use of the ANSI C++ standard
library, rtti, exception handling, or STL templates. GNU SIP Witch will
also build on all versions of GCC from 2.95 through 4.4, and with many
other C++ compilers as well as on most platforms including GNU/Linux,
xBSD systems, Mac OS/X, and Microsoft Windows.

Get the Software

GNU SIP Witch may be found at ftp.gnu.org or downloaded directly from our Download
Site. GNU SIP Witch requires GNU Common C++/uCommon, the GNU oSIP library,
and the eXosip extension library for GNU oSIP. GNU SIP Witch may optionally
use libgcrypt for alternate authentication digest algorithms, as well as either
openssl or GNU TLS for tls support over SIP. GNU SIP Witch is licensed using
the GNU General Public License Version 3 or later.

Support and Other Resources

To simplify management and bug tracking for the different packages I
currently maintain, I have consolidated management of GNU SIP Witch, related
GNU Common C++ packages, and GNU Telephony projects including GNU Bayonne. These
are being managed on subversion through the GNU Telephone subsystem on
Savannah. This may soon be migrated to
our own bugzilla host on the GNU Telephony website.