Hi there all,
- Could someone explain me what TCP_NODELAY & O_NONBLOCK mean and imply?
What’s the difference?
What I’d like to do is to send my packets and be sure they arrive, or at
least know if they didn’t, without having to send an acknoledgment packet. I
thought the TCP protocol permitted to do that… For now, if I send 10
packets in a row using SDLNet_TCP_Send in a for loop, I only receive some of
them (usually 2 or 3) although the function return values suggest all of my
packets have been sent correctly (returns the packet size for all packets).
I’m kinda confused since I feel like this would be a valid behavior if the
TCP_NODELAY or/and O_NONBLOCK defines were set but they are not, or are
they???
- It seems like the TCP_NODELAY is not used by default although the
changelog suggests it:
1.1.0:
Andreas Umbach - Sat May 27 14:44:06 PDT 2000
- […]
- Suggested setting TCP_NODELAY by default
- One more thing: the doc site referenced on the SDL_net page
(http://jcatki.no-ip.org/SDL_net/) seems to be down… is it just temporary?
If not the link should be updated/removed…
Thanks,
Ga?tan.
Ga?tan de Menten wrote:
Hi there all,
- Could someone explain me what TCP_NODELAY & O_NONBLOCK mean and imply?
What’s the difference?
What I’d like to do is to send my packets and be sure they arrive, or at
least know if they didn’t, without having to send an acknoledgment packet. I
thought the TCP protocol permitted to do that… For now, if I send 10
packets in a row using SDLNet_TCP_Send in a for loop, I only receive some of
them (usually 2 or 3) although the function return values suggest all of my
packets have been sent correctly (returns the packet size for all packets).
I’m kinda confused since I feel like this would be a valid behavior if the
TCP_NODELAY or/and O_NONBLOCK defines were set but they are not, or are
they???
- It seems like the TCP_NODELAY is not used by default although the
changelog suggests it:
SDL_net uses blocking I/O, meaning if a packet fails to make it, you should know…
what OS and version of SDL_net are you using?
I’d suggest using the latest release of SDL_net if you aren’t already.
1.1.0:
Andreas Umbach - Sat May 27 14:44:06 PDT 2000
- […]
- Suggested setting TCP_NODELAY by default
- One more thing: the doc site referenced on the SDL_net page
(http://jcatki.no-ip.org/SDL_net/) seems to be down… is it just temporary?
If not the link should be updated/removed…
that site is back up…blame comcast.–
-==-
Jon Atkins
http://jonatkins.org/
Ga?tan de Menten wrote:
- Could someone explain me what TCP_NODELAY & O_NONBLOCK mean and imply?
What’s the difference?
What I’d like to do is to send my packets and be sure they arrive, or at
least know if they didn’t, without having to send an acknoledgment
packet. I
thought the TCP protocol permitted to do that… For now, if I send 10
packets in a row using SDLNet_TCP_Send in a for loop, I only receive
some of
them (usually 2 or 3) although the function return values suggest all of
my
packets have been sent correctly (returns the packet size for all
packets).
I’m kinda confused since I feel like this would be a valid behavior if
the
TCP_NODELAY or/and O_NONBLOCK defines were set but they are not, or are
they???
- It seems like the TCP_NODELAY is not used by default although the
changelog suggests it:
SDL_net uses blocking I/O, meaning if a packet fails to make it, you
should know…
what OS and version of SDL_net are you using?
I’d suggest using the latest release of SDL_net if you aren’t already.
Oh sorry, forgot to mention that, since I didn’t think it was a bug… I’m
using the latest SDL_net… even checked the CVS version to see if there was
something new since the lastest release… And I’m under Win 2K…
See you,
Ga?tan.