server and clinet