Network architectures
Regardless of socket types and protocols, games take different approaches in the architecture of the multiplayer mode.
We call the playable game application a client, network-wise, and this part of the book concerns how clients communicate with each other and who they communicate with.
There are at least two major approaches to a networked simulation.
Peer-to-peer
This architecture was and still is used in online games; however, it fits a very specific set of purposes and is used less widely than its counterpart client-server architecture.
Nevertheless, its importance should be noticed and mentioned every time networking is the topic. What defines this architecture is essentially the fact that every game client in the simulation connects to each other. You can see it in the following figure:
These inter-connections between all the clients, which somehow resemble a spider's web, mean that every client has a connection with every client. This way, they effectively communicate...