removed untrue statements and made some small language changes

This commit is contained in:
Jeena Paradies 2011-05-11 20:25:48 +02:00
parent fd2e80ac9d
commit 400aa7608e

View file

@ -2173,7 +2173,7 @@ Find reference on how to benchmark distributed, multiprocess systems
\end_layout
\begin_layout Section
Choice of network protocol
Choosing a network protocol
\begin_inset CommandInset label
LatexCommand label
name "sec:Choice-of-network"
@ -2184,14 +2184,15 @@ name "sec:Choice-of-network"
\end_layout
\begin_layout Standard
There are two main ways in which computer communication over the Internet
usually takes place; TCP, UDP are known network layer protocols and HTTP
is the most prominent application layer protocol.
There are two main types of protocols with help of which computer communication
over the Internet usually takes place; TCP and UDP which are known as the
network layer protocols and HTTP which is the most prominent application
layer protocol.
The transport layer protocols are commonly used to transport application
layer protocols, such as HTTP.
TCP and UDP cannot be used on their own, without an application layer protocol
on top.
Application layer protocols such as HTTP on the other hand needs a transport
layer protocols such as HTTP.
TCP and UDP cannot be used on their own without an application layer protocol
on top of them.
Application layer protocols such as HTTP on the other hand need a transport
layer protocol in order to work.
\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
that the data transferred arrives in consistent manner.
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
mechanisms must be implemented.
To ensure that the data is transferred is in good shape, some sort of error
checking mechanisms must be implemented.
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
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
thus very suitable for media streaming for example.
\end_layout
\begin_layout Subsection
@ -2248,27 +2234,12 @@ TCP
\end_layout
\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
missing in UDP.
This ensures the consistency of data, but also makes the transfer slower
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
\begin_layout Subsection
@ -2276,7 +2247,7 @@ HTTP
\end_layout
\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.
This means that if HTTP is used in the GGS, firewalls will not be a problem,
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
needs to push data from the server to clients without the clients requesting
data.
It should also be mentioned that HTTP uses the TCP protocol for transport,
and what is said about TCP applies to HTTP.
It should also be mentioned that HTTP uses the TCP protocol for transport.
\end_layout
\begin_layout Subsection
@ -2318,7 +2288,7 @@ reference "sub:The-protocol-parser"
\end_layout
\begin_layout Section
Generic Structure of the GGS
Generic structure of the GGS
\begin_inset CommandInset label
LatexCommand label
name "sec:Generic"
@ -2331,14 +2301,15 @@ name "sec:Generic"
\begin_layout Standard
The GGS is a game server.
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
etc, but also in the way the game is implemented such as different programming
languages.
etc, but also in the way the game is implemented for example in different
programming languages.
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
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
being as generic as possible.
\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
the game it would like to play on the GGS.
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
or maintainer.
through a
\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
\begin_layout Section
Fault Tolerance
Fault tolerance
\begin_inset CommandInset label
LatexCommand label
name "sec:Fault-Tolerance"