The client server paradigm is the main networking approach to the modern internet. In this model, the internet is dominated by clients and servers. A client is a computing device (software or hardware) that accesses a service provided by a server. The server meanwhile provides services to client devices. This system is generally centralized with servers localized in massive server farms. The centralization of the servers creates ample opportunity for surveillance and data mining of the connected clients.