Open dangowrt opened 9 years ago
The essential idea is zeroconf UDP peering, which I vote for. Besides multicasting UDP beacons, these can be used for peer discovery:
The advantage of low-level UDP multicast is simplicity and independence from optional APIs. The advantage of higher level protocols is reuse of system's existing components.
The idea can be first implemented outside cjdroute then possibly included in the core.
Implementing mDNS/DNS-SD and/or uPNP/SSDP imho only makes sense outside of cjdroute -- it can easily be achieved using avahi or other existing service announcement/discovery toolkits. Implementing the functionality now possible with ETHInterface beacons for UDPInterface mostly makes sense inside of cjdroute
Similar to beacons on ETHInterface we could do the exact same thing on UDPInterface via ff02::1 i.e. link-local multicast. Not to replace ETHInterface, but to allow peering via beacons on build targets which make it impossible or at least infeasible to use ETHInterface (e.g. Android, OS X, Windows).