Part of any protocol specifies how it interrelates to other protocols. All of these services can work together in ways that are invisible to the user because of the hooks that Internet protocols have to each other. Of course, if you're going to have protocols, you have to have computers. The protocols are implemented in computer programs. Servers host the programs that distribute information to clients.
Clients host the programs that use the information.
These sub-networks are arranged in a hierarchy, with very local networks at the lowest level. Also, thanks to very sophisticated routing protocols, a network at any level may be interconnected to any other network. Functionally this means the Internet is not only a hierarchy of networks, but also a mesh. Through this mesh information may flow over literally billions of different routes as it moves from one host to another. The ability to reroute information around bottlenecks and roadblocks is built into the very nature of the Internet.