bzx 0 January 12, 2018 Posted January 12, 2018 · Report post Прошу совета. Есть проект на STM32F107RCT6 c DP83848IVV, без ОС, работает корректно и стабильно (до -20C), подняты и работают dhcp, dns, ntp, icmp, web + крутятся свои задачи. Вопрос к web. Долго загружается страница, до 2-3 секунд. Проверено на разных браузерах. По логам видно, что браузер делает паузы до 50-200мс и их много. Лог шарка привожу. Самая большая задержка в этом логе от девайса к компу ~7мс. Короткий css файл стилей быcтро передается, за ~210мс. Лог q.rar Quote Share this post Link to post Share on other sites More sharing options...
AlanDrakes 0 January 13, 2018 Posted January 13, 2018 · Report post Паузы, судя по дампу, делает не компьютер, а контроллер отдаёт пакеты со скоростью 5 пакетов в секунду. Ищите, почему у Вас так редко происходит отправка пакетов. Возможно большие накладные расходы. Возможно редко вызывается поллер сети. Возможно ещё до чёртиков вариантов. Если есть свободные пины - выводите на них сигнал при отправке данных, например. Начало отправки - пин поднимается. Конец отправки - опускается. Наблюдайте за сигналом. Когда поднимается, что долго держит контекст исполнения. И так далее. Задержки - стабильны - 200мс. Значит, явно дело в коде. На том же кристалле (разве что без других задач) можно гнать трафик более 50МБит/с (проверял на UDP). Quote Share this post Link to post Share on other sites More sharing options...
bzx 0 January 13, 2018 Posted January 13, 2018 · Report post Паузы, судя по дампу, делает не компьютер, а контроллер отдаёт пакеты со скоростью 5 пакетов в секунду. Ищите, почему у Вас так редко происходит отправка пакетов. ... Задержки - стабильны - 200мс. Значит, явно дело в коде. Нет. Из лога: пакет №27, сформирован и отправлен устройством (ip: ...100, mac 00:80:e1...) через ~0,539мс, размер данных 536. Пакет №28, ответ от компа (ip: ...99) сформирован и отправлен через ~203.572мс, размер данных 0. Т.е. устройство достаточно быстро отвечает. Самая большая задержка от устройства ~6.592мс (пакет №5), длина 536. Минимальная задержка от устройства ~0.009мс (пакет №11), длина 536. Увеличение window size поможет? Quote Share this post Link to post Share on other sites More sharing options...
prottoss 0 January 13, 2018 Posted January 13, 2018 · Report post Увеличение window size поможет?А сейчас какой максимальный? Quote Share this post Link to post Share on other sites More sharing options...
bzx 0 January 13, 2018 Posted January 13, 2018 · Report post А сейчас какой максимальный? 2144 Quote Share this post Link to post Share on other sites More sharing options...
prottoss 0 January 13, 2018 Posted January 13, 2018 · Report post 2144 Я, честно скажу, не смотрел лог - не знаю чем открыть. Почему нельзя сделать размер окна максимальным? Возможно носитель данных тупит? Quote Share this post Link to post Share on other sites More sharing options...
bzx 0 January 13, 2018 Posted January 13, 2018 · Report post Я, честно скажу, не смотрел лог - не знаю чем открыть... Wireshark ...Почему нельзя сделать размер окна максимальным? Возможно носитель данных тупит? Нельзя. Точнее, физически не возможно. Максимальный размер окна 2^16-1 (65535). Размер ram у STM32F107RCT6 64к, поэтому и невозможно окно сделать на максимальный размер - есть ограничения в памяти. Quote Share this post Link to post Share on other sites More sharing options...
Rst7 5 January 13, 2018 Posted January 13, 2018 · Report post Эххх, ну миллион же тем на форуме (а в остальных интернетах - еще больше). Ключевое слово - "Delayed ACK". Quote Share this post Link to post Share on other sites More sharing options...
bzx 0 January 13, 2018 Posted January 13, 2018 · Report post ...Ключевое слово - "Delayed ACK". Агась, опять на те же грабли наступил... Спасибо за правильный пинок. Quote Share this post Link to post Share on other sites More sharing options...
bzx 0 January 13, 2018 Posted January 13, 2018 · Report post Вся сессия (от syn до fin) по загрузке страниц, в том числе динамических проходит до ~70мс. Браузер быстро открывает. Плюс увеличен win size до 5840 и размер передаваемого сообщения до максимума 1460. Вопрос закрыт. Quote Share this post Link to post Share on other sites More sharing options...