Understanding clients and servers