Find the answer to your Linux question:
Results 1 to 2 of 2
Hi, I am currently working on a Server/Client application on a cluster I am running about 100 clients in parallel and one server (32 clients per node with 8 processor ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Dec 2010
    Posts
    1

    SocketException : Connection Reset


    Hi,

    I am currently working on a Server/Client application on a cluster

    I am running about 100 clients in parallel and one server (32 clients per node with 8 processor => 4 clients per processor) . The server is linked to all the clients via Sockets.

    After about 55 iteration (about 20 mins), i have a client dying and i receive the following error:

    Client 126 java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream. java:16
    at java.net.SocketInputStream.read(SocketInputStream. java:182)
    at java.io.ObjectInputStream$PeekInputStream.peek(Obj ectInputStream.java:2249)
    at java.io.ObjectInputStream$BlockDataInputStream.pee k(ObjectInputStream.java:2542)
    at java.io.ObjectInputStream$BlockDataInputStream.pee kByte(ObjectInputStream.java:2552)
    at java.io.ObjectInputStream.readObject0(ObjectInputS tream.java:1297)
    at java.io.ObjectInputStream.readObject(ObjectInputSt ream.java:351)
    at ServerClient.Server$TcpThread.run(Server.java:789)
    Connection reset


    the Server.java.789 is : ServerThread.sockIn.readObject();


    Do you have any idea what could create the connection reset ? The other clients are still running. It seems that the client socket is creating an exception when we try to read a file which actually does not exist.

    My main question is what are the method to identify the problem related to this specific socket (note that I am working on a cluster, hence accessing the node via ssh connection and without having admin access).

    I dont understand why suddenly one client would die. It was working well during 20 minutes and suddenly one die ? Do you have any idea and any advice on how to identify the reset of this Socket disconnection ?

    I though about using wireshark but the fact that the application is running on a cluster make it difficult to analyze,sniff the packets remotely. I dont know if i can do it remotely.

    Do you have any idea how I could debug this problem?

    Thanks

  2. #2
    Just Joined!
    Join Date
    Nov 2006
    Location
    Harrisburg, PA, USA
    Posts
    56
    Well first of all, I am not Java expert. But looking at the scenario, I suspect the dying client is not sending KEEP ALIVE TCP packets to server indicating server to keep the connection active. After certain amount of time (This is preconfigured timeout in TCP IP stack), server will reset the connection by sending RST TCP packets.

    I hope this will help you.

    ---Sumit

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •