W5500 RTR, RCR관련 질문입니다.

안녕하세요.

현제 저는 W5500사용하여서 개발하는 중인데요.
제품은 network이 연결되었을 때도 동작해야 하고, 연결 되지 않았을 때 또한 동작해야합니다.
현재 loopback.c의 tcp_client()를 참조하여 사용하고 있고, 제품 또한 Client만 사용합니다.
Main에서 동작하는 tcp_client는 연결이 끊어졌을 때 연결을 계속 재시도 하는데요.
현재 reference code는 connect가 끊어졌을 때, SOCK_INIT때 시도하는 connect()함수 내에서 while문
에 의해 설정된 RTR, RCR에 도달할 때 까지 무한반복을 하는데, 문제가 되고 있는 부분은 해당동작 시
다른 peripheral들이 동작을 못하고 있어서, 문제가 되고있습니다.

제가 궁금 한 것은

  1. Send()함수와 Connect()함수가 같은 RTR과 RCR을 사용하는 것이 맞는지요?

  2. 서버와의 연결이 끊어졌을 때, RCR과 RTR을 약 10ms, 3try정도로 세팅을 하면 프로그램이
    동작하는데 방해가 되진 않습니다만, 너무 짧은 timeout설정으로 인해 online시에 패킷을 받지 못하는 경
    우가 생기 지 않을까요? (실제로 한번 씩 못받을 때가 있음)

  3. 제가 원하는 대로 온라인 상태에서는 패킷 받는데에 이상 없을 정도의 timeout을 사용하고, 오프라인
    때는 프로그램이 돌 때 방해가 되지 않게 timeout을 사용하려고 하면, 온라인, 오프라인 때, 각각 다른 RCR, RTR을 설정하여 사용하는 것이 맞는지요?

  4. 3번이 맞다면, 오프라인 때 connect()함수가 너무 짧은 timeout때문에 문제가 되지 않는지요?