add socket listen, and client