removed untrue statements and made some small language changes
This commit is contained in:
parent
fd2e80ac9d
commit
400aa7608e
1 changed files with 31 additions and 53 deletions
84
report.lyx
84
report.lyx
|
@ -2173,7 +2173,7 @@ Find reference on how to benchmark distributed, multiprocess systems
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Section
|
\begin_layout Section
|
||||||
Choice of network protocol
|
Choosing a network protocol
|
||||||
\begin_inset CommandInset label
|
\begin_inset CommandInset label
|
||||||
LatexCommand label
|
LatexCommand label
|
||||||
name "sec:Choice-of-network"
|
name "sec:Choice-of-network"
|
||||||
|
@ -2184,14 +2184,15 @@ name "sec:Choice-of-network"
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
There are two main ways in which computer communication over the Internet
|
There are two main types of protocols with help of which computer communication
|
||||||
usually takes place; TCP, UDP are known network layer protocols and HTTP
|
over the Internet usually takes place; TCP and UDP which are known as the
|
||||||
is the most prominent application layer protocol.
|
network layer protocols and HTTP which is the most prominent application
|
||||||
|
layer protocol.
|
||||||
The transport layer protocols are commonly used to transport application
|
The transport layer protocols are commonly used to transport application
|
||||||
layer protocols, such as HTTP.
|
layer protocols such as HTTP.
|
||||||
TCP and UDP cannot be used on their own, without an application layer protocol
|
TCP and UDP cannot be used on their own without an application layer protocol
|
||||||
on top.
|
on top of them.
|
||||||
Application layer protocols such as HTTP on the other hand needs a transport
|
Application layer protocols such as HTTP on the other hand need a transport
|
||||||
layer protocol in order to work.
|
layer protocol in order to work.
|
||||||
|
|
||||||
\begin_inset ERT
|
\begin_inset ERT
|
||||||
|
@ -2221,26 +2222,11 @@ Many online games use UDP as the carrier for their application layer protocol.
|
||||||
UDP moves data across a network very quickly, however it does not ensure
|
UDP moves data across a network very quickly, however it does not ensure
|
||||||
that the data transferred arrives in consistent manner.
|
that the data transferred arrives in consistent manner.
|
||||||
Data sent via UDP may be repeated, lost or out of order.
|
Data sent via UDP may be repeated, lost or out of order.
|
||||||
To ensure the data transferred is in good shape, some sort of error checking
|
To ensure that the data is transferred is in good shape, some sort of error
|
||||||
mechanisms must be implemented.
|
checking mechanisms must be implemented.
|
||||||
UDP is a good choice for applications where it is more important that data
|
UDP is a good choice for applications where it is more important that data
|
||||||
arrives in a timely manner than that all data arrives undamaged, it is
|
arrives in a timely manner than that all data arrives undamaged, it is
|
||||||
thus very suitable for media streaming, for example.
|
thus very suitable for media streaming for example.
|
||||||
In the GGS reliability of transfer was chosen before the speed of the transfer,
|
|
||||||
ruling out UDP as the transport later protocol.
|
|
||||||
|
|
||||||
\begin_inset Note Note
|
|
||||||
status collapsed
|
|
||||||
|
|
||||||
\begin_layout Plain Layout
|
|
||||||
Perhaps we should only say that we chose TCP just for our GGS prototype
|
|
||||||
and why.
|
|
||||||
If we leave it like that it seems that we think it is not suitable.
|
|
||||||
\end_layout
|
|
||||||
|
|
||||||
\end_inset
|
|
||||||
|
|
||||||
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Subsection
|
\begin_layout Subsection
|
||||||
|
@ -2248,26 +2234,11 @@ TCP
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
For reliable transfers, TCP is often used on the Internet.
|
For reliable transfers TCP is often used on the Internet.
|
||||||
Built in to the protocol are the error checking and correction mechanisms
|
Built in to the protocol are the error checking and correction mechanisms
|
||||||
missing in UDP.
|
missing in UDP.
|
||||||
This ensures the consistency of data, but also makes the transfer slower
|
This ensures the consistency of data, but also makes the transfer slower
|
||||||
than if UDP had been used.
|
than if UDP had been used.
|
||||||
In the GGS, data consistency is more important than transfer speeds, and
|
|
||||||
thus TCP is a better alternative than UDP.
|
|
||||||
|
|
||||||
\begin_inset Note Note
|
|
||||||
status collapsed
|
|
||||||
|
|
||||||
\begin_layout Plain Layout
|
|
||||||
Same here it is simply not true for a generic server to chose one or the
|
|
||||||
other.
|
|
||||||
We should rephrase it so it is clear that we only state it about the GGS
|
|
||||||
prototype.
|
|
||||||
\end_layout
|
|
||||||
|
|
||||||
\end_inset
|
|
||||||
|
|
||||||
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
|
@ -2276,7 +2247,7 @@ HTTP
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
Since HTTP is so widely used on the Internet today in web servers, it is
|
Since HTTP is so widely used in web servers on the Internet today, it is
|
||||||
available on most Internet connected devices.
|
available on most Internet connected devices.
|
||||||
This means that if HTTP is used in the GGS, firewalls will not be a problem,
|
This means that if HTTP is used in the GGS, firewalls will not be a problem,
|
||||||
which is a great benefit.
|
which is a great benefit.
|
||||||
|
@ -2289,8 +2260,7 @@ Since HTTP is so widely used on the Internet today in web servers, it is
|
||||||
the GGS requires a state to be maintained throughout a session and also
|
the GGS requires a state to be maintained throughout a session and also
|
||||||
needs to push data from the server to clients without the clients requesting
|
needs to push data from the server to clients without the clients requesting
|
||||||
data.
|
data.
|
||||||
It should also be mentioned that HTTP uses the TCP protocol for transport,
|
It should also be mentioned that HTTP uses the TCP protocol for transport.
|
||||||
and what is said about TCP applies to HTTP.
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Subsection
|
\begin_layout Subsection
|
||||||
|
@ -2318,7 +2288,7 @@ reference "sub:The-protocol-parser"
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Section
|
\begin_layout Section
|
||||||
Generic Structure of the GGS
|
Generic structure of the GGS
|
||||||
\begin_inset CommandInset label
|
\begin_inset CommandInset label
|
||||||
LatexCommand label
|
LatexCommand label
|
||||||
name "sec:Generic"
|
name "sec:Generic"
|
||||||
|
@ -2331,14 +2301,15 @@ name "sec:Generic"
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
The GGS is a game server.
|
The GGS is a game server.
|
||||||
It was made with a desire to be suitable for any kind of game.
|
It was made with a desire to be suitable for any kind of game.
|
||||||
Any game with a client-server behavior should be perfectly suited for GGS.
|
Any game with a client-server behavior should be perfectly suited for the
|
||||||
|
GGS.
|
||||||
A game should not only be able to vary in terms of genre, graphics, gameplay
|
A game should not only be able to vary in terms of genre, graphics, gameplay
|
||||||
etc, but also in the way the game is implemented such as different programming
|
etc, but also in the way the game is implemented for example in different
|
||||||
languages.
|
programming languages.
|
||||||
The GGS should be OS independent and run on Windows, OSX and Linux.
|
The GGS should be OS independent and run on Windows, OSX and Linux.
|
||||||
The GGS can be run as a listen server on the players computer and host
|
The GGS can be run as a listen server on the players computer and host
|
||||||
games locally.
|
games locally.
|
||||||
It could also be a dedicated server running on independent hardware.
|
It could also be a dedicated server running on dedicated independent hardware.
|
||||||
It is meant to run any game in any environment in any way desired, therefore
|
It is meant to run any game in any environment in any way desired, therefore
|
||||||
being as generic as possible.
|
being as generic as possible.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
@ -2347,12 +2318,19 @@ The GGS is a game server.
|
||||||
Another aspect was the desire to let a client upload the source code of
|
Another aspect was the desire to let a client upload the source code of
|
||||||
the game it would like to play on the GGS.
|
the game it would like to play on the GGS.
|
||||||
This way every client could connect to the server and install the game
|
This way every client could connect to the server and install the game
|
||||||
through a API without the need of installation through the server provider
|
through a
|
||||||
or maintainer.
|
\begin_inset CommandInset nomenclature
|
||||||
|
LatexCommand nomenclature
|
||||||
|
symbol "API"
|
||||||
|
description "Application programming interface"
|
||||||
|
|
||||||
|
\end_inset
|
||||||
|
|
||||||
|
without the need of installation through the server provider or maintainer.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Section
|
\begin_layout Section
|
||||||
Fault Tolerance
|
Fault tolerance
|
||||||
\begin_inset CommandInset label
|
\begin_inset CommandInset label
|
||||||
LatexCommand label
|
LatexCommand label
|
||||||
name "sec:Fault-Tolerance"
|
name "sec:Fault-Tolerance"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue