https://github.com/noracodes/snsp
The Site-local Network Service Protocol
https://github.com/noracodes/snsp
Last synced: over 1 year ago
JSON representation
The Site-local Network Service Protocol
- Host: GitHub
- URL: https://github.com/noracodes/snsp
- Owner: NoraCodes
- Created: 2015-08-16T23:12:29.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-08-22T18:03:17.000Z (almost 11 years ago)
- Last Synced: 2025-02-05T01:42:12.556Z (over 1 year ago)
- Language: Python
- Size: 117 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
SNSP
----
The Site-local Network Service Protocol - example scripts and definitions
SNSP is a way to advertise network services over IPv4 broadcast and (WIP) IPv6 multicast.
An SNSP "packet" is just some JSON in a UDP broadcast (or in IPv6, multicast). It contains:
Service name and specifications (host, port)
Timestamp
Importance (a value from 0 to 7, explained below)
A message (arbitrary text, for, e.g., announcing captive portals in a import. 6 message to be shown to the user.)
If service name is "__user__" and both port and host are 0, the message should be shown to the user if it is of sufficient importance.
Importance values:
IMPORTANCE_ROUTINE (0): Messages for network testing, timed updates, etc. Should never be shown to the user.
IMPORTANCE_UTILITY (1): Messages for utility purpouses, e.g., SNSP ping
IMPORTANCE_CONFIG (2): Messages that might result in network or application configuration changes, but that do not announce a new service
IMPORTANCE_DEFAULT (3): Default. For messages announcing services.
IMPORTANCE_NETANNOUNCE (4): Messages about how the network is configured that do NOT require user intervention (i.e., inform devices about optional use of OSPF)
IMPORTANCE_SERVICESTOP (5): Messages about cessation of network services - both temporarily and permanently.
IMPORTANCE_USERACTION (6): Messages that require user interaction - i.e., revealing captive portal, NETWORK DOWN IN..., etc.
IMPORTANCE_VITAL (7): Messages that absolutely positively must arrive and be shown to the user, if there is one. Possibly place in syslog too.