W5100을 클라이언트모드 송신 지연 문제

#1

현재 w5100을 클라이언트 모드로 동작시키 반복적으로 10Kb에서 20Kb의 데이터를 전송하고 있습니다.
연속적인 데이터 송신시 비번한 전송시 많은 시간이 소요됨니다. 심하게는 데이터 송신을 시작후로부터 송신 완료되기까지 200ms 정도 시간이 소요 됨니다. 정상적인 경우 10ms미만이 소요 되구요. 10번 전송시 2-3회 정도 발생합니다. 네트워크 환경은 사설 유선망을 사용하고 컴표터와 w5100을 사용한 개발 보드가 전부입니다. 이러한 문제의 원인은 무었인지 어떻게 원인을 찾자가야 되는지 알려주시면 감사 하겠습니다.

#2

이런 문제의 경우 원인이 서버에 있을 수도 있습니다.
정확한 원인을 찾기위해서는 서버에서 WireShark프로그램(wireshark.org 에서 다운로드)으로 패킷을 잡아보면, 문제의 원인을 찾을 수 있습니다. 예를 들면 서버에서 ACK을 늦게 주거나, 아니면 클라이언트에서 패킷을 느리게 보내거나… 여러가지 원인이 있을 수 있습니다.
패킷을 잡아서 보내봐 주시면 확인해 보겠습니다. :smiley:

#3

안녕하세요.

ACK전송의 딜레이 때문에 문제가 발생할 가능성이 있습니다.

Socket mode register(Sn_MR)의 no delayed ACK 옵션을 enable시킨 후 테스트 부탁드립니다.

감사합니다.

#4

현재 TCP 통신을 사용중입니다. Sn_MR의 에 TCP 프로토콜로 세팅 되여 있습니다.
"Socket mode register(Sn_MR)의 no delayed ACK 옵션을 enable시킨 후 테스트 부탁드립니다."
TCP 통신을 사용중에도 no delayed ACK 를 enable 시킬수 있나요 ? 그러면 프로토콜 변경이 되지 안나요?
TCP 사용중에 위의 세팅을 어떻게 하나요? 참고할 수 있는 코드라도 있나요?