Docs: Delete '09-03-26_Networking' post
This commit is contained in:
@@ -1,60 +0,0 @@
|
||||
# Table of Contents
|
||||
- [Table of Contents](#table-of-contents)
|
||||
- [Introduction](#introduction)
|
||||
- [Formal concepts of networking](#formal-concepts-of-networking)
|
||||
- [The Language of the Network](#the-language-of-the-network)
|
||||
|
||||
|
||||
# Basics
|
||||
## Formal concepts of networking
|
||||
Whenever you want to access the same data on different devices without carrying it (the data) from device to device, with, let’s say, a thumb drive, you have multiple options for achieving this.
|
||||
|
||||

|
||||
|
||||
<!-- I tried to get this embeddet image to show up, but it just wouldnt
|
||||
<img src="/documents/images/docs/blog/09-03-26_Network/shared_ressouce_possible_approaches.svg" alt="Peer To Peer Versus Client-Server Architecture" width="200"/>
|
||||
-->
|
||||
|
||||
**Peer to Peer** enables users to share content (files, messages, ...).
|
||||
While it does not rely on a central server, it comes with the big trade-of that the device storing the data you want to access has to be reachable and online.
|
||||
Today Peer to Peer is still widely used with VoIP and decentralized networks for censorship-resistant transactions formaly known as the blockchain.
|
||||
|
||||
The **Client-Server** model evolved into the sophisticated "web-services" we know and use daily.
|
||||
One central powerful computer (the server) stores data and allows external devices (clients) to access it.
|
||||
|
||||
For our course "Programmierprojekt" we are required to use the Client-Server model.
|
||||
|
||||
## The Language of the Network
|
||||
To communicate over the network, we first need to establish a few rules.
|
||||
|
||||
If we look at the real world, language also follows certain rules:
|
||||
|
||||
* Grammar
|
||||
* Meaning of Words
|
||||
|
||||
In computer science, these rules are known as a "protocol." Everyone must follow these rules, because if not, the program we want to communicate with wouldn’t understand us, or in the worst case, misunderstand us.
|
||||
|
||||
For our network, we’ve decided to build upon the Post Office Protocol (POP) version 3. It follows the request-response model, is synchronous, and meets our requirements.
|
||||
|
||||
An example of a request and response (for our game) might look like this:
|
||||
|
||||
1. Request
|
||||
```text
|
||||
GET_DELTA 42
|
||||
```
|
||||
|
||||
2. Response
|
||||
```text
|
||||
+OK
|
||||
PLAYER_FOLDED playerId=3
|
||||
POT 240
|
||||
NEXT_TURN playerId=1
|
||||
WHISPER from=player2 msg="hey"
|
||||
CHAT_LOBBY player3="hello"
|
||||
.
|
||||
```
|
||||
|
||||
The client requests the occurred actions since the 42nd state.
|
||||
|
||||
The server responds with all the actions other players have made and the messages the client has received.
|
||||
|
||||
Reference in New Issue
Block a user