Цитата(elektronshik @ Oct 20 2008, 07:56)

Здравствуйте. Подскажите пожалуйста как настроить LwIP на максимальную скорость передачи по TCP.
Месяц уже ковыряю, а скорость всего 180 Кбайт/с. Исходящие пакеты идут размером ~128...512 байт.
Вырезать что-то из стека не хотелось бы. 1 МБайта/с по ТСП вполне достаточно. скорей всего дело в каких-то опциях... но каких?
За основу брался порт ARM9_STR91X_IAR.
Система: AT91SAM9260 + FreeRTOS v5.0.3 + LwIP v1.3 + EWARM5.10
1. Увеличьте значение параметра MEM_SIZE. Если памяти у вас мегабайты, можно ставить 64-256 КБайт
2. Увеличьте значение TCP_SND_BUF. В случае достаточности памяти - 64 Кбайт
3. Также имеют значения размеры буферов драйвера.
У меня на SAM7X256:
MEM_SIZE =24000
TCP_SND_BUF=4500
FreeRTOS v5.0.3 + LwIP v1.3
на TCP достигает скорости 6,5 МбИт/сек, это, правда, при "холостой" отправке.
В задаче с реальными данными - 4 Мбит/сек, предел с реальными данными (для моей задачи) - ок. 5 МБит/сек
Да, и еще важный момент: Если используете NETCONN, обязательно устанавливайте опцию TCP_NODELAY для TCP. Собственно, при использовании сокетов это тоже нужно