PS : Open source solutions would be prefered
Thanks
Paul
What Operating System My Friend?!?!?!
Thanks,
Travis
"Paul Morriss" <paul.m...@tokenbay.co.uk> wrote in message
news:3f8dc4f1$0$108$65c6...@mercury.nildram.net...
Will the 'endian' issue come into the equation mxing Linux and Win32 ?
Paul
"Travis" <Travis@NASPA!M.com> wrote in message
news:3f8eb855$0$112$65c6...@mercury.nildram.net...
Will the 'endian' issue come into the equation mxing Linux and Win32 ?
Paul
PS: Sorry if this gets posted more then once our mail server is on the
blink!
"Travis" <Travis@NASPA!M.com> wrote in message
news:3f8eb855$0$112$65c6...@mercury.nildram.net...
The stability issue isnt an issue anymore - and people will be able to run
their own server to play over a lan or with a few friends over the internet.
"Paul Morriss" <paul.m...@tokenbay.co.uk> wrote in message
news:3f8fe42b$0$117$65c6...@mercury.nildram.net...
I don't hate you for it, though I strongly disagree. Win2K doesn't crash
(often) but OTOH it doesn't work either. That means that your sevice will
sometimes fail to function yet the server doesn't crash or blue-screen. The
end result is the same though: you'll have to reboot to get it to work
again. I have it all the time with my Win2K machines and I therefore
question whether Windows reliabillity has really improved.
I have started to look at networking code, what is quicker select() or
going through each connection one by one ?
Paul
"Dr. O" <dr.o@xxxxx> wrote in message
news:3f906803$0$433$1b62...@news.wanadoo.nl...
Paul Morriss wrote:
> I am in the situation where Linux has been designated by our company, I am a
> Linux programmer by trade, my role is 'server-side' thus I don't really get
> involved in Windows stuff.
>
> I have started to look at networking code, what is quicker select() or
> going through each connection one by one ?
>
#1 UDP is the way to go for constant update (replaces previous data) type info
TCP/IP could still be used for lobby connections / 'reliable' message delivery
#2 with UDP you can have all inbound/outbound traffic handled by 1 port each at
the server
(have the packets contain a connection number AND THEN confirm that conns
address to
foil the imposters-- index into conn look up array and no linear search...)
#3 Neat idea Ive seen used -- due to high packet loss (especially thru
internet) send the
previous packets data appended on the new packet (if the per transmission data
is fairly small)
it will greatly decrease resends
#4 encoding/compressing messages content to minimize byte counts
(deltas-send only what changes)
#5 You can do it with TCP first and then retrofit UDP later when you find you
need
more control over the resend mechanism (bottlenecks very fast when connections
get dicey)
Creating your own simple UDP protocol isnt too hard, but will take time.
#6 definitely have UDP process on seperate thread (only 1 thread not 1 per
connection)
with critical sections to protect data access between Network thread and
game app.
#7 if all else fails you could use microsofts DirectPlay (if its all windoze)
just to get something
working fast -- examples of several Client/Server programs are in the DirectX
SDK
Translation: there is a REASON why the network byte order macros are
available in C/C++. USE THEM, *ALWAYS*, and you will never have to worry
about endian-ness problems.
"Paul Morriss" <paul.m...@tokenbay.co.uk> wrote in message
news:3f8fe42b$0$117$65c6...@mercury.nildram.net...