The socket program