From: Jeremiah M. <jm...@bl...> - 2000-11-06 06:16:08
|
I don't know much about networking, TCP/IP, or winsock;all I know is that the change broke VC++. Apparently one of the libraries isn't implemented the same way in Windows. I'll try to find something similar, but I could easily skip something because of my lack of knowledge in that area. >It makes the socket non-blocking on write. Just look up the > Winsock API and check what options are there to cause the > same effect. > > Beware! This does not mean the a write always gets though, if > the TCP stack has no more space in its `outstanding acks` > buffers a write will return an error or block or do other funny > things depending on the implementation. This is in essence the > `black cap` problem of bzflag. > >There is a way to partially get around this, just disable the > TCP_NODELAY setting for the writing socket in bzfs. This > makes the game play somewhat more jerky but will greatly > diminish the problem of the black caps and will also bring down > the network load (since ack`s are now piggypacked) to a level > that allows multiplayer games over a ISDN line. In my > experimental server I have made this an option, and tests went > ok so far. See for yourself... > > - Frank |