This is the official webpage of the Free Next Steps In Signaling (FreeNSIS) framework implementation developed at the Georg-August University of Goettingen. FreeNSIS was formerly known as OpenNSIS, because of a naming conflict the name was changed to FreeNSIS. NSIS is standardised in the IETF and provides a framework for signaling for path-coupled and partially path-coupled state management. It "is envisioned to support various signaling applications that need to install and/or manipulate such state in the network." (RFC 4080)
The NSIS framework is split into two layers, namely the NSIS Transport Layer Protocol (NTLP) and a
variety of NSIS Signaling Layer Protocols (NSLPs). The NTLP protocol developed by the NSIS working group
is known as the General Internet Signaling Transport (GIST) protocol and forms the building block of the
framework. GIST provides all nessesary means to detect signaling nodes and transport messages between them.
Thereby, GIST provides a hop-by-hop transport fashion between the signaling nodes and re-uses well known transport
protocols (like TCP, TLS over TCP) between the nodes to address problems like reliability, ordering, congestion
control and security.
Based on the transport functionality offered by GIST, the NSLPs implement the real signaling logic. For example,
the Quality of Service (QoS) NSLP is capable of signaling QoS reservations (e.g. bandwidth, delay, etc.), while the
NAT/Firewall (NAT/FW) NSLP is capable of configuration of middleboxes like firewalls or NAT-routers.
Our implementation currently supports the most popular protocols of the NSIS protocol suite. Namely implementations
of GIST, QoS NSLP, NAT/FW NSLP and a Diagnostics NSLP for testing. Most parts of the implementation are released
under the open source GPL license. However, the API between GIST and the NSLPs is released under the more free
LGPL licence, allowing the implementation of proprietary NSLPs.
Go to the download page to download the latest version
of our FreeNSIS suite. To watch how NSIS messages traverse the network, check our ethereal
dissector. If you need help or want to get in touch with us, visit the FAQ,
Getting help and tutorial pages.
On the team page, you can learn more about the team behind the implementation.
Remember to check our NEWS page.