Уважаемые знатоки lwip стека. Подскажите пожалуйста как грамотно контролировать tcp соединение, как его перезапустить.
Насколько я понимаю для этой цели используется функция poll, она периодически вызовется, но в момент ее вызова я не наблюдаю отправки каких либо сообщений в сторону сервера. О закрытии соединения меня информирует флаг (es->pcb->state == CLOSE_WAIT) находящийся в функции обработки принятых сообщений, по нему, пытаюсь закрывать клиента, и потом пере запускать (где то пока подглючивает). А как быть если сервер просто завис в установленном соединении, а потом его перезапустили? Как определить его зависание на stm ? В таком случае мне нужно, определить сбой соединения и установить новое соединение, значит я должен периодически посылать запрос серверу (tcp_connect) до момента подключения?
Сообщение отредактировал TSURKOV - Jun 5 2013, 09:46
|