glob2-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [glob2-devel] Finalized Design Idea for YOG


From: Bradley Arsenault
Subject: Re: [glob2-devel] Finalized Design Idea for YOG
Date: Sat, 28 Apr 2007 23:43:43 -0400

On 4/28/07, Bradley Arsenault <address@hidden> wrote:
The whole design of the system is centralized around the shared
architecture of hosting between a client and the server. This means
that if a person is capable of hosting a game, they can.

This shared architecture also means that if the YOG routing system
does become a problem, it would be trivial to convert it to a system
where a game redirects to the user hosting. This is in my design as it
stands now, the only change would be to force it on every game, not
just on games where the user allowed it.

Because of this, lets take a try-and-see approach. I'm trying to make
Glob2 as flexible as I can. The NetConnection class fully encapsulates
the socket, and it would be possible to modify just NetConnection and
NetListener to use UDP sockets and implement TCP on top of them. This
could be done without modifying anywhere else in the code. And
NetConnection could, just as easily, be made with implicit encryption
and/or compression facilities, without changing much else. And the use
of boost::shared_ptr, and the bound checked arrays, will all do there
part for security.

The current YOG proposal is just the current, and even if we change
it, I'm going to design the code to be flexible enough to handle
change.

And Steph, your right. The widget interface is fairly well designed
and encapsulated, being flexible to change (and it has more than the
usual amount of documentation). Its those other systems that aren't.
They need to be remade.

Online networking was one of the ones that has been talked about for a
long time. Once upon a time, both you and nuage and a whole pile of
other people all agreed that it needs to be rewritten, from scratch.
And now, I am.

The system will tolerate change, so if what I try turns out to be bad
in practice, then I will change it. We should experiment, attain
actual numbers and statistics, find out how much our server will
really be routing. Find out how easy it is to configure a NAT. With a
one -YOG-does-all system, only one TCP port needs to be configured,
making Glob2 NAT friendly (it is already fairly NAT friendly but
anyhow).

--
Really. I'm not lieing. Bradley Arsenault.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]