megajohn 3 19 июля, 2013 Опубликовано 19 июля, 2013 · Жалоба запустил на LPC1778 MAC-уровень. По крайней мере пакеты из сетки вылавливает. Стоит вопрос выбора TCP/UDP стека. Ни того, и ни другого не применял. И интересует кто применял оба стека и на каком в итоге варианте остановился и почему. В качестве RTOS применяю TnKernel, и вот думаю править ли древний TNNET написанный в 2009ом под LPC23xx или же прикрутить lwIP. У последнего и обновления возможны, однако первый более заточен под Ось и поэтому ожидаем более высокий DataRate Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 19 июля, 2013 Опубликовано 19 июля, 2013 · Жалоба Коллега на этот проц ставил ЛвИП и Какой то стэк от каила. Сказал что стэк от кеила лучше, быстрее и стабильнее работает... Но без операционки. Может эта информация вам пригодится.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 19 июля, 2013 Опубликовано 19 июля, 2013 · Жалоба берите TNNet это все таки порт BSD стека, тем более раз используете TNKernel. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 20 июля, 2013 Опубликовано 20 июля, 2013 · Жалоба а еще на документацию надо обратить внимания. Для ЛВиП ее нет просто... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 20 июля, 2013 Опубликовано 20 июля, 2013 · Жалоба а еще на документацию надо обратить внимания. Для ЛВиП ее нет просто... Это как нету? Все есть! К тому же еще код под doxygen есть еще статья автора Design and Implementation of the lwIP TCP/IP Stack Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 20 июля, 2013 Опубликовано 20 июля, 2013 · Жалоба Коллега на этот проц ставил ЛвИП и Какой то стэк от каила. Сказал что стэк от кеила лучше, быстрее и стабильнее работает... Но без операционки. Может эта информация вам пригодится.. У кейла стек поддерживает только один неподтверждённый TCP сегмент (а-ля uIP), поэтому "DataRate", упомянутый топикстартером, будет так себе, особенно если пинг медленный. Зато lwip - более полноценный стек, там такого ограничения нет. Но его нужно довольно тщательно настраивать, а в условиях скудности документации это непросто. Так что предполагаю, что ваш коллега просто не смог или не захотел его допилить. Сам использую lwip без RTOS (http, telnet, SNMP, SNTP). Полёт нормальный. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 20 июля, 2013 Опубликовано 20 июля, 2013 · Жалоба Это как нету? Все есть! К тому же еще код под doxygen есть еще статья автора Design and Implementation of the lwIP TCP/IP Stack может я чего-то не понял. Я пользовался только лвип.вики где были какие то ущербные статьи, примерами и все что я нашел.... А хорошего описания что зачем и какие функции что делают я не нашел. Приходилось читать текст кода и понимать что как работает... У кейла стек поддерживает только один неподтверждённый TCP сегмент (а-ля uIP), поэтому "DataRate", упомянутый топикстартером, будет так себе, особенно если пинг медленный. Зато lwip - более полноценный стек, там такого ограничения нет. Но его нужно довольно тщательно настраивать, а в условиях скудности документации это непросто. Так что предполагаю, что ваш коллега просто не смог или не захотел его допилить. Сам использую lwip без RTOS (http, telnet, SNMP, SNTP). Полёт нормальный. Все может быть. Я кейловский не использовал, но коллега сказал что сначала он работал медленно, потом он включил режим без подветрждения каждого сегмента ( я так понимаю стандартный оконный режим на более 1 сегмента) и все заработало. На ЛвИП я получил примерно те же скорости что и он. У меня ЛвИП на первый взгляд тоже работает, но иногда бывают сбои. Проскакивают запросы на ретрансмит пакетов. 1 пакет на 5 минут плотного трафика. Причины я так и не нашел, но там могло и железо быть виновато, у меня все это на ПЛИС крутилось в их процессоре. Так что чувство от ЛвИП двоякое... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stoker 0 24 июля, 2013 Опубликовано 24 июля, 2013 · Жалоба Вставлю свои коментарии, ибо я тот самый колега. Поскольку не являюсь большим фанатом ковыряния стеков, ибо не программист вовсе, да и на это уходит большое кол-во драгоценного времени. Однако оба стека удалось прикрутить к lpc1768. TNnet заработал практически сразу, благо есть тема где уже его поритили на данный камень. с LwIP пришлось изрядно помучится, но запустить все же удалось, однако я так и не смог нормально реализовать на нем DHCP и еще что то, уже не помню, разбираться не было времени и я его бросил. После этого перешел на Rl-tcpnet, до сих пор на нем сижу, благо в кейл оно встроено да и есть возможность работать с ихней же RTos, кстати вот фичи: http://www.keil.com/rl-arm/rl-tcpnet_specs.asp. Правда топикстартер уже работет с TNkernel, тада видимо прощще ставить TNnet. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lotor 0 25 июля, 2013 Опубликовано 25 июля, 2013 · Жалоба После этого перешел на Rl-tcpnet, до сих пор на нем сижу, благо в кейл оно встроено да и есть возможность работать с ихней же RTos И какую скорость на кейловском стеке получили? У меня вышло в максимуме 18 Mb (на lpc2478). Для проекта этого хватило, но на будущее думал смотреть в другую сторону. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stoker 0 25 июля, 2013 Опубликовано 25 июля, 2013 · Жалоба И какую скорость на кейловском стеке получили? У меня вышло в максимуме 18 Mb (на lpc2478). Для проекта этого хватило, но на будущее думал смотреть в другую сторону. Порядка 3,5 Мбайт в сек. плюс минус. LPC1768 на прием, TCP. Меня вполне устроило. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Grape 0 25 июля, 2013 Опубликовано 25 июля, 2013 · Жалоба На lpc1778 работает и TNnet и LwIP. С dhcp в LwIP проблем не было, все завелось сразу. По ресурсам процессора - примерно одинаково. на Lwip максимальная скорость отдачи по http файла (100мб) из памяти порядка 6 Mb/s. у TNnet точно больше 3 Mb/s. оба стека использовались вместе с TNkernel. некоторый плюс у LwIP - есть обсуждение на сайте разработчиков, есть ipv6 и ppp минус - настройки требуют некоторого шаманства. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lotor 0 25 июля, 2013 Опубликовано 25 июля, 2013 · Жалоба Порядка 3,5 Мбайт в сек. плюс минус. LPC1768 на прием, TCP. Меня вполне устроило. Думаю разница в скорости объясняется отличием тактовых частот наших процессоров. Если производительность устраивает, то работать с кейловским стеком одно удовольствие. Если нет - тут на форуме выкладывали самописный стек с производительностью в несколько раз лучше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 29 июля, 2020 Опубликовано 29 июля, 2020 · Жалоба некропост, но все же. Коллеги обнаружили косячок в TN-NET, адрес ххх.ххх.ххх.224 определяется как мультикаст. фикс diff -ruN a/tn_tcp_input.c b/tn_tcp_input.c--- a/tn_tcp_input.c 2020-07-29 13:31:06.307938051 +0300+++ b/tn_tcp_input.c 2020-07-29 13:32:15.195940638 +0300 @@ -316,7 +316,7 @@ th = (struct tcphdr *)(((unsigned char *)m->m_data) + iphlen); tlen = m->m_tlen - iphlen; //-- TCP header + data - if(IN_MULTICAST(ip->ip_dst.s__addr) || in_broadcast(ip->ip_dst, ni))+ if(IN_MULTICAST(ntohl(ip->ip_dst.s__addr)) || in_broadcast(ip->ip_dst, ni)) goto drop; if(in4_cksum(m, IPPROTO_TCP, iphlen, tlen)) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 60 29 июля, 2020 Опубликовано 29 июля, 2020 · Жалоба 8 minutes ago, megajohn said: Коллеги обнаружили косячок в TN-NET Зашёл на сайт, а там последние обновления от ноября 2017 года что по стэку, что по оси. ИМХО, проект не развивается... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться