wiz750sr 연결 실패 connection failed

wiz750sr 모듈로 테스트 중입니다.

이더넷을 통해 TCP 연결과 연결해제를 반복하다보면 Ping 은 통신이 되는데 Connection 이 실패 합니다.
(Wizconfig Tool 의 Device Search 에도 잡히지 않습니다.)

전원을 해제 후 다시 연결 하면 정상 동작하지만 같은 현상이 계속 발생합니다.
와이어 샤크 패킷 캡처로 확인하면 RST 패킷을 받습니다.

테스트에 사용된 간단한 의사 코드는 다음과 같습니다.
while(true)
{
새로운 Socket 생성
소켓비동기 연결
소켓 연결상태 확인
소켓 종료
}

아래는 테스트 중인 코드로 C#코드상에 문제인지 확인하기 위해 계속 변경하면서 테스트 하고있습니다.

static public void Test()
{
int port = 5000;

        Socket soc = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
        IPEndPoint endPoint = new IPEndPoint(IPAddress.Parse("192.168.0.2"), port);

        try
        {
            soc.LingerState = new LingerOption(true, 0);
            IAsyncResult result = soc.BeginConnect(endPoint, null, null);
            result.AsyncWaitHandle.WaitOne(50, false);

            if (soc.Connected)
            {
                if(count % 100 == 0)
                    Console.WriteLine(count + " Success");
            }
            else
            {
                Console.WriteLine(count + " Fail");
            }

            //soc.EndConnect(result);
        }
        catch (Exception ex)
        {
            Console.WriteLine(count + " " + ex.Message);
        }
        finally
        {
            if (soc != null)
            {
                //soc.Shutdown(SocketShutdown.Both);
                if(soc.Connected)
                    soc.Disconnect(true);
                soc.Close();
                soc.Dispose();
                soc = null;
            }
        }
        count++;
    }
}

RST를 module이 전송하는건가요?
연결/해제를 반복하는과정에서 WIZ750SR을 이전연결이 해제되지 않았을 경우 RST 패킷을 전송할 수 있습니다.
이러한 경우가 발생하지 않도록 해주시거나, Keep Alive기능을 사용하여 WIZ750SR이 상대방으로부터 응답이 오지않을경우 연결을 끊도록 해주시기 바랍니다.

답변감사합니다.

Keep alive 값을 낮추니 연결과 해제가 반복되어도
이전과는 다르게 연결실패가 계속 되지 않고
반복문이 계속 되면 연결이 성공합니다.

연결최대 허용치가 다쌓이고 다시 사용 가능 할때까지 연결이 실패하는것 같습니다.

  1. client pc 와 wiznet 사이에 4 hand shake 가 제대로 되지않는 이유를 알 수 있을까요?

  2. wiznet S2E configration Tool 1.1.0 에서
    keep alive initial 와 retry 의 차이를 알려주실수 있을까요?