Change discovery socket from PUB to PUSH

To prevent to slow joiner problems, use PUSH sockets to make sure no
messages are lost when starting service discovery.