소켓 연결 상태 불일치 관련
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: 소켓 연결 상태 불일치 관련
by becky ·
안녕하세요
우선 W5500에서 연결이 끊어졌는데 connect 명령없이 자동연결이 되는 경우는 없습니다.
TCP 통신 자체가 connection이 이루어진 이후에만 통신이 가능하기때문에
W5500입장에서는 연결이 끊긴적이 없거나, 서버로부터 Connect 명령에 대한 응답을 받은 경우 뿐입니다.
말씀하신 상황은 서버에서 연결을 끊기위한 메세지를 보냈으나,
W5500이 이를 받지 못해 통신을 지속하는것으로 추측됩니다.
RE: RE: 소켓 연결 상태 불일치 관련
by aryunmir ·
답변 감사합니다.
답변에 대한 추가 문의 사항이 있습니다
1.전자의 경우
서버에서 접속이 끊겼다고 판단이 되었으나,
별도의 connect 과정 없이 데이터 송수신이 진행 되었다면
서버의 오동작으로 판단하여도 될까요?
RE: 소켓 연결 상태 불일치 관련
by Eugeny ·
What value Sn_SR is being checked against in your application?
It can be easily seen in the Wireshark log.
RE: 소켓 연결 상태 불일치 관련
by becky ·
접속이 끊겼다고 판단 후에 별도의 connect 과정 없이도 데이터 송수신이 진행된다면 오동작으로 판단하셔도 됩니다.
서버에서 접속이 끊긴 후 클라이언트에서 통신을 지속할 때 서버의 응답은 어떤가요? 정상 동작의 경우 서버에서만 접속이 끊었고, 클라이언트에서는 데이터 송수신을 지속할 경우 서버에서 다시 접속을 끊는 메시지를 보내서 결국 끊기게 되어있습니다. 하지만 서버 설정에 따라 메시지를 보내지 않을 수도 있습니다. 상황을 정확히 판단하기 위해 wireshark를 통해 패킷을 확인하는 것이 좋을 것 같습니다.
RE: 소켓 연결 상태 불일치 관련
by irina WIZnet ·
위와 같은 경우는…
서버에서 클라이언트(W5500)에게 FIN pakcet을 보냄으로써 연결끊기를 시도했지만,
W5500에서는 FIN pakcet을 받은 후 MCU부터 Sn_CR의 disconnect 명령을 받지 못한경우 연결이 끊기지 않아 데이터 전송을 계속하게 됩니다.
위글을 wireshark 프로그램을 이용하여 확인하실부분은 다음과 같습니다.
RE: 소켓 연결 상태 불일치 관련
by aryunmir ·
현재 오동작 현상에 대하여 설명드리자면
서버와 통신이 단절되어 재 접속을 하게 되면
인증정보 요청 데이터를 전송하여 인증을 받도록 되어있으나
서버에서 연결해제 판단후에 인증정보 요청 데이터 전송없이
정기보고나 다른 평상시 동작에 포함되는 데이터를 전송하여 서버에서 오류가 나는 상황이라고 합니다.
특정 조건에서 발생하는 문제라고 하면 wireshark를 통한 캡쳐가 수월하겠지만
언제 발생할지 모르는 오동작이다 보니 캡쳐를 진행하지 못하고 있습니다.
또한 서버쪽에서 disconnect 동작을 수행한것이 아니라,
동작 중에 어떠한 원인으로 인해 클라이언트와 연결이 끊어졌다 라고 판단이 되어
오동작이 발생하는 듯 싶습니다.
지금 상황에서는 오동작 조건을 파악하여야 임의로 조건을 만들어서 캡쳐가 수월할듯 싶습니다.
혹시나 이러한 현상이 발생할만한 조건에 대하여 짐작이 되는 내용이 있으시면 조언좀 부탁드리겠습니다.