NM7010B+ Network Module을 사용하고 있습니다
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: NM7010B+ Network Module을 사용하고 있습니다
by justinkim ·
안녕하세요
Close는 Socket을 close 하는 것이며 Disconnect는 상대편과 연결을 끊는 것입니다.
Disconnect는 연결된 상대와의 Connection을 끊는 것이므로 close와는 확실한 차이가 있습니다.
Disconnect는 플러그를 뽑는것이고 Close는 플러그를 제거하는 것이라 생각하시면 될 것 같습니다.
이는 TCP Socket 통신의 과정을 보시면 자세히 이해가 가능하실 겁니다.
Send_keep은 Connection을 확인하기위해 데이터를 1byte를 보내는 것입니다. TCP 통신 특성상 보낸 데이터의 ack이 오지않으면 지정된 time이 지난후 연결을 끊게 되어 있습니다. 따라서 지정한 RTR RCR값을 확인하시고 Timeout값이 얼마인지 몇번 재전송하는지에 따라 계산하시면 됩니다.
Timeout이 RCR만큼 발생하기전에 다시 물리적 연결이 되어 통신이 성공한다면 Connection은 유지 될것이며 Timeout이 RCR만큼 발생한 후에 물리적인 연결이 되더라도 통신은 되지않습니다. 이경우 다시 connection을 맺으셔야합니다. 모든 통신에 적당한 주기는 존재하지 않으며 어떤 어플리케이션을 사용하느냐에 따라 다릅니다. 단 최소한의 통신으로 연결을 유지하면 효율적이 겠지요.
Socket의 State가 0x01이라면 ARP 과정 중인 상태입니다. 이 경우 상대방의 Mac 주소를 알아내기위한 과정이며 ARP 과정이 되지 않으면 TCP 통신이 되지않습니다. ARP 응답을 못받는 경우는 다음과 같습니다.
PHY 링크가 아직 잡히지 않은 경우(패킷이 이미 나갔고 응답도 왔는데 Link가 잡히지않아 응답오지 않은 것으로 인식함)
네트워크 연결이 되지 않은 경우(없는 IP 혹은 물리적인 연결이 되지 않음)
MAC 충돌의 경우 (MAC address가 충돌나는 경우 MAC은 네트워크상에 유일해야함)
이외에도 원인이 있을 수 있습니다.
확인 해보시기 바랍니다.
감사합니다.