On 2009.01.09 23:06:46 -0500, V S P wrote: > What is ZeroConf? Can you please point me to the project page > (I searched for some but did not find something twisted/python > specific).
ZeroConf is the generic protocol name, not a particular project. The most popular implementations are Bonjour and Avahi. Both are portable and open source. Macs ship with Bonjour. Avahi seems more popular on Linux. In theory, it's pretty easy to use Avahi from Python. Avahi is a C daemon that always runs and does all the network stuff. It shares information with other programs via DBus. Your Python program can interact with the information using dbus-python. dbus-python features an asynchronous interface that should work great with Twisted. In practice, it all ends in tears because dbus-python is one big Heisenbug. After about 18 months with mostly-working service discovery, we finally gave up on it and wrote our own custom service discovery protocol. (Which works well, but doesn't help you because it's proprietary and IPv6.) Bonjour appears to have Python bindings; maybe you can try those. Or maybe a newer version of dbus-python actually works reliably. But if not, it's not hard to write your own simple service discovery protocol. Create a common multicast group that all your clients listen to, and that all your servers send a packet of service information to every few seconds. Most of the complexity in ZeroConf is about minimizing the combination of latency and network traffic, so if you don't need low latency or don't mind a bit more traffic then a simpler protocol will work fine. -- David Ripton drip...@ripton.net _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python