WIZ107SR 네트웍-UDP Link 관련 문의

#1
  1. UDP로 사용할 때 Connect / Disconnect 정보를 알 수 있는 방법이 있나요?
    없다면 가능하도록 변경이 가능한지요?

[적용모델정보]

  1. WIZ107SR-TTL.
  2. HW Ver : 1.4
  3. Firmware Ver : 4.03
#2

TCP의 경우, Connection-Oriented protocol 이기 때문에 protocol 자체에 3-way handshake의 connection 과정이 포함되어 있어 상대방 peer의 connect / disconnect 여부를 판별하는 것이 가능합니다.

하지만 UDP는 Connectionless protocol로써 상대방 peer와의 ‘연결’ 없이 데이터를 전송합니다.
때문에 이러한 connection 정보 또한 없음을 알려드립니다.

만약 데이터 전송 시 상대방의 연결 여부를 확인하고 싶은 경우 다음과 같이 구현할 수 있습니다.

  1. UDP를 사용하되, 양 측 응용에서 데이터를 정상 send / receive 한 경우 응답을 회신하고 이를 수신해야 정상 처리되도록 구현
  2. TCP 사용, WIZ107SR의 TCP Connection status 핀 이용하여 connection status 확인

p.s
참고로 TCP의 경우, WIZ107SR의 H/W trigger 핀이 모듈 initialization 과정 이후 TCP Connection status 핀으로 바뀌어 TCP connection 여부를 확인할 수 있게 구현되어 있습니다.

다만 논리적인 TCP 연결 상태의 여부를 알려주는 핀이기 때문에 keep-alive 기능이 활성화 되어 있고 WIZ107SR을 통해 data send가 한 번 이상 발생하여야 정상적으로 TCP socket status를 확인할 수 있습니다.

만약 keep-alive 기능이 활성화되어 있지 않거나 활성화 되어 있어도 한 번 이상 data send가 수행되지 않으면 전체 네크워크 장비 중 일부의 PHY link 결손, LAN 케이블 단선 등의 이유로 link가 끊어진 상황을 감지하지 못할 수 있습니다.