Transmission problems on 64 bit AMD processors but not 32 bit AMD processors

Tech-Archive recommends: Fix windows errors by optimizing your registry



Hi. I have this strange problem. I have made a small testserver in C++ that
accept an incomming connection and try to send data on the socket in
standard blocking mode.

Now, I have narrowed down the problem a bit .This is what i do (and yes, I
do take care of the returnvalue in my code :-)
The steps. First I accept an incoming connection on port 1365.

Then I send 4 bytes on that socket:
send(ClientSocket, (char*)SendBuffer, 4, NULL);

Then 5 bytes.
send(ClientSocket, (char*)SendBuffer, 5, NULL);

After that I send 45 bytes 189 times
for (int i=0;i<189;i++)
{
send(ClientSocket, (char*)SendBuffer, 45, NULL);
}

If i run the server on my computer and use for example telnet to connect to
my server program, all of the data ther server send is recieved in the
telnet window. I've tried to connect over the internet too and it always
works on 32 bit computers.
The problem apperars when i run the server on a computer with an AMD64
processor that runs 32 bit windows XP.
Now if I try to connect, I only recieve the first 4 bytes of all data the
server is trying to send. After a while the server recieve a socket timeout.
I have no idea why this is happening, but it only happen on 64 bit
processors. Is there a new SDK or patch I should download? I'm using Visual
Studio 2003.

Thankful for any help :-)
// Fredrik L


.



Relevant Pages

  • Re: receiving data over socket
    ... I want to print the data the server received. ... anyone can recommend a good VB2005 book that deals with socket programming I ... if your server needs to support multiple connections ... You aren't guarenteed to recieve all your data ...
    (microsoft.public.dotnet.languages.vb)
  • Re: How to terminate a socket in CLOSE_WAIT state
    ... FTP Server fixed for certain FTP clients who use both passive ... This was causing a PASSIVE opened socket to be left ... but instead expect the "half close" from the receiver. ... this sends a TCP/IP FIN packet to the ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Socket switch delay
    ... both at the client and at the server (and why ... would you set the send buffer size to zero on a non-overlapped ... One glaring error is your client does ... So when you use a single socket, ...
    (microsoft.public.win32.programmer.networks)
  • Re: Applet Hangs when submitting data to servlet
    ... to put a time limit on my socket connections and socket reads. ... public void setTimeoutthrows UnknownHostException, ... on our web server. ... private JButton theSubmitButton_, theClearButton_; ...
    (comp.lang.java.programmer)
  • Re: Problem with writing fast UDP server
    ... UDP packets per second. ... socket and threads. ... I wrote a simple case test: client and server. ... The maximum theoretical limit is 14,880 frames per ...
    (comp.lang.python)