W5100 TCP Socket does not reconnect
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: W5100 TCP Socket does not reconnect
by Eugeny ·
Для того, чтобы микрокод чипа W5100 определил, что есть разрыв связи, он должен что-то послать, и не получить ACK на это что-то. Я очень опасаюсь, что в W5100 на уровне “внутренностей чипа” такое невозможно, то есть только приложение может инициировать такой обмен - послать, скажем, байт, и другая сторона ответить на него.
В W5500 есть фишка keep-alive packet, в W5100 её нет.
В протоколе HTTP просто так байт как keep-alive не пошлешь, на том конце может случиться заворот кишок.
Однако мы на выдумки хитры - можно, по другому сокету, пробовать посылать пакеты PING на клиента, и если, он не отвечает, скажем, в течение 10 секунд, считать связь поретянной. Однако это не будет работать в случае, если ICMP блокируется по пути к клиенту.
Или не делать постоянные TCP соединения - послал, принял, закрыл.
Или использовать режим RAW у сокета 0 - тут вообще возможнойстей уйма (но будет страдать производительность).
Однако есть и положительная сторона этого безобразия с W5100. Если вы выдернете кабель на несколько секунд, а потом его обратно воткнете, все будет продолжать работать! Правда я делал это только с чипом будучи клиентом, а не сервером.
RE: RE: W5100 TCP Socket does not reconnect
by juvf ·
Большое спасибо за ответ.