реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> FreeRTOS + lwip
DeadSilence
сообщение Jul 4 2017, 14:57
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 1-03-14
Пользователь №: 80 775



Добрый день, пришёл с просьбой о помощи.
Моя ситуация: использую FreeRTOS V8.2.3 и lwip 2.0.2, в lwip применяется pppos и сокеты, устанавливаю соединение с сервером, но через 0,5 - 4 часа lwip перестает слать сообщения. Сообщения шлю по таймеру, раз в секунду, доходит даже до того, что таймер перестает срабатывать. Но через какое-то время (20-30 мин) все опять оживает, но поскольку реконнект к серверу я не реализовывал просто сообщает что не удалось отправить сообщение, функция send() вернула ошибку. В структуре lwip_stats никаких ошибок нет.
Буду рад хотя бы идеям в какую сторону копать, что искать. Спасибо.
Go to the top of the page
 
+Quote Post
DeadSilence
сообщение Jul 19 2017, 12:25
Сообщение #2





Группа: Участник
Сообщений: 7
Регистрация: 1-03-14
Пользователь №: 80 775



TCP ведет себя вот так:
============================LOG============================
tcp_out.c:1046) tcp_output: nothing to send (0)
(tcp_out.c:1054) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, seg == NULL, ack 15221
(pppos.c:474) pppos_input[0]: got 1 bytes
(pppos.c:474) pppos_input[0]: got 37 bytes
(pppos.c:474) pppos_input[0]: got 12 bytes
(ppp.c:874) ppp_input[0]: ip in pbuf len=45
(tcp_in.c:329) +-+-+-+-+-+-+-+-+-+-+-+-+-+- tcp_input: flags
(tcp_in.c:331) -+-+-+-+-+-+-+-+-+-+-+-+-+-+
(tcp_out.c:1046) tcp_output: nothing to send (0)
(tcp_out.c:1054) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, seg == NULL, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:650) tcp_write: queueing 15221:15252
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, effwnd 31, seq 15221, ack 15221
(tcp_out.c:1105) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, effwnd 31, seq 15221, ack 15221, i 0
(tcp_out.c:1266) tcp_output_segment: 15221:15252
(pppos.c:294) pppos_netif_output[0]: proto=0x21, len = 71
(pppos.c:474) pppos_input[0]: got 2 bytes
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:650) tcp_write: queueing 15252:15283
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, effwnd 62, seq 15252, ack 15221
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, effwnd 62, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 30612, wnd 14600, effwnd 93, seq 15252, ack 15221
(tcp.c:1053) tcp_slowtmr: cwnd 1360 ssthresh 7300
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 31, seq 15221, ack 15221
(tcp_out.c:1105) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 31, seq 15221, ack 15221, i 0
(tcp_out.c:1266) tcp_output_segment: 15221:15252
(pppos.c:294) pppos_netif_output[0]: proto=0x21, len = 71
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 93, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 124, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 155, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 186, seq 15252, ack 15221
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 186, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 217, seq 15252, ack 15221
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 217, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 248, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 279, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 310, seq 15252, ack 15221
(tcp.c:1053) tcp_slowtmr: cwnd 1360 ssthresh 2720
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 31, seq 15221, ack 15221
(tcp_out.c:1105) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 31, seq 15221, ack 15221, i 0
(tcp_out.c:1266) tcp_output_segment: 15221:15252
(pppos.c:294) pppos_netif_output[0]: proto=0x21, len = 71
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 310, seq 15252, ack 15221
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 310, seq 15252, ack 15221
(tcp_out.c:397) tcp_write(pcb=0x2001d290, data=0x2000810e, len=31, apiflags=1)
(tcp_out.c:1061) tcp_output: snd_wnd 14600, cwnd 1360, wnd 1360, effwnd 341, seq 15252, ack 15221
============================LOG============================

Полный лог прикреплен в файле.

Прикрепленные файлы
Прикрепленный файл  log.txt ( 468.26 килобайт ) Кол-во скачиваний: 29
 
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th April 2024 - 20:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016