diff options
author | Jan Huwald <jh@sotun.de> | 2012-04-04 16:45:16 (GMT) |
---|---|---|
committer | Jan Huwald <jh@sotun.de> | 2012-04-04 16:45:16 (GMT) |
commit | 1e9bd1f86f6f1a575abeb9a09dc03bccad57d228 (patch) | |
tree | 2020e5415f79e5bd1f68b56f8e91673bdb8faad3 | |
parent | ed72d266b3bf9ad6332ce56dfb304a6507b0f2c9 (diff) |
doc: add services.org (proposal)
-rw-r--r-- | doc/services.org | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/doc/services.org b/doc/services.org new file mode 100644 index 0000000..e5e6d7d --- /dev/null +++ b/doc/services.org @@ -0,0 +1,49 @@ +Services offered by users are to be discovered automatically and +offered to all users of the mesh. For vendor independence several +means of discovery and announcement are required. They are connected +by the unified information storage. + +* Service information storage + Every mesh node holds a p2ptl (see overview.org) of all currently + available services. It is synchronized over the mesh interface. + + It has the following columns (in-order): + * location (unique primary key) :: protocol-specific identifier + how to reach the resource (e.g. "1.2.3.4:22" for SSH, + "https://1.2.3.4/pron" for HTTP, "//lame/os" for SMB, ...) + * expiry time :: unix time after which the entry shall be deleted + * source :: how the service has been discovered: manual, portscan, + dnssd, ssdp + * class :: one of storage, internet, game, stream, search, ... to + be extended and refined + * description :: a human-readable (and typically human-written) + description of the service, e.g. "Toms pr0n archive" + + Additional class-specific columns may follow that give + machine-readable information about the service: +** storage + * capacity :: no. of bytes or empty if unknown + * used_capacity :: no. of bytes or empty if unknown + * writable :: true|false +** internet + * external ip :: + * upstream :: no. of bytes/second or empty if unknown + * downstream :: no. of bytes/second or empty if unknown +** game + * active players :: no. of players or empty if unknown +** stream + none +** search + none + +* Service discovery +** manual Webif entry +** Port scanning +** DNS-SD (Zeroconf) +** SSDP (UPNP) +* Service announcement +** Web interface +** DNS + Zeroconf uses the domain advertised via DHCP to lookup local + services via DNS in the same way it uses mDNS (see [[http://www.dns-sd.org/ServerStaticSetup.html][HowTo]]). Our + service database could thus be announced via DNS for these clients. |