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

 
 
> Стеки TCP/IP с примерами на STR912, OpenTCP, lwIP, тесты производительности
Pechka
сообщение Mar 25 2010, 17:24
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 25-03-10
Из: Москва
Пользователь №: 56 210



Здравствуйте! Понадобилось реализовать "быстрый" канал по Ethernet на str912. Нашёл много упоминаний о openTCP, lwIP, даже какие-то тестовые результаты скорости по TCP. Однако нигде не нашёл исходников используемых портов. (общий C код есть, однако хочется с примерами на конкретном железе). Кто может поделиться такими реализациями? (обязательное условие - без операционки).
Заранее благодарю.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Pechka
сообщение Mar 25 2010, 21:04
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 25-03-10
Из: Москва
Пользователь №: 56 210



Свой протокол поверх UDP не хочется городить т.к. тогда понадобится писать драйвер для этого сетевого устройства, иначе программисты PC будут ругаться, плеваться и т.д. Хочется что-то стандартное, возможно упрощенное. Да и в целом TCP достаточно удобно сделан для соединений с гарантированой доставкой: вроде бы ничего лишнего. Однако в моем случае можно будет ещё упростить его тем, что пакеты будут приходить в верном порядке.
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 25 2010, 21:22
Сообщение #3


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(Pechka @ Mar 26 2010, 00:04) *
Да и в целом TCP достаточно удобно сделан для соединений с гарантированой доставкой: вроде бы ничего лишнего.

Конечно! Если у вас пакет проходит по разнородным каналам с разной скоростью и MTU, через маршрутизаторы...
То да - ничего лишнего там нет smile.gif
Go to the top of the page
 
+Quote Post
Pechka
сообщение Mar 25 2010, 21:30
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 25-03-10
Из: Москва
Пользователь №: 56 210



Цитата(KRS @ Mar 26 2010, 00:22) *
Конечно! Если у вас пакет проходит по разнородным каналам с разной скоростью и MTU, через маршрутизаторы...
То да - ничего лишнего там нет smile.gif

А какими средствами достигается контроль такой сложной системы? просто номер пакета и ACK. Звучит круто, а реальных накладных расходов на это не так уж и много... Сложно следить сразу за кучей соединений и процессов, которые хотят достучаться до сети, а когда нужно соединение типа точка-точка (но, правда, через некоторое количество коммутаторов), то большинство проблем и накладных расходов не требуется...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 25 2010, 21:40
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Pechka @ Mar 26 2010, 00:30) *
Звучит круто, а реальных накладных расходов на это не так уж и много...

... особенно, когда, например, через многие десятки секунд программисты на PC узнают, что все,что они посылали никуда не дошло.
Ну а на контроллере обратный канал будет забиваться ACK а неподтвержденные придется буферизировать и перепередавать, не забывая о том, что новые сыпятся. Для сколь-нибудь реального времени TCP это хреновое решение и даже не из-за стороны контролера (где можно поработать, хотя Вы хотите готовую халяву sad.gif ), а из-за стека на PC (хоть Win, хоть Lin) и обработки ошибок на низком уровне, на которую все, начиная с разработчиков драйверов, забили - пусть TCP все разгребает, как может.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Pechka
сообщение Mar 26 2010, 08:06
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 25-03-10
Из: Москва
Пользователь №: 56 210



Цитата(zltigo @ Mar 26 2010, 00:40) *
Вы хотите готовую халяву sad.gif


Я хочу не найти готовую халяву, а взять "стартовую точку" повыше... Естественно придётся всё самому дорабатывать и корректировать, онако с чего-то начинать нужно.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 26 2010, 08:23
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Pechka @ Mar 26 2010, 11:06) *
Я хочу не найти готовую халяву, а взять "стартовую точку" повыше...

Тут, эээ...., дело такое, чем выше точку возьмете, тем в большем количестве мусора придется разбираться, сносить, выносить сор....
Вам хочется быстрее устроить "праздник первого пинга"? Ну так возьмите первое попавшееся под руку.
А для приличного, по любому начинать придется медленно и печально с того-же железа, ибо, не знаю, правда, какая ситуация с STR9xx, но по ~20летнему опыту работы с разнообразнейшии MACами, 99:1, что ничего приличного для высокопризводительных решений, даже для уровня драйвера в интернете нет sad.gif.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Pechka
сообщение Mar 26 2010, 18:51
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 25-03-10
Из: Москва
Пользователь №: 56 210



Цитата(zltigo @ Mar 26 2010, 11:23) *
Тут, эээ...., дело такое, чем выше точку возьмете, тем в большем количестве мусора придется разбираться, сносить, выносить сор....
Вам хочется быстрее устроить "праздник первого пинга"? Ну так возьмите первое попавшееся под руку.
А для приличного, по любому начинать придется медленно и печально с того-же железа, ибо, не знаю, правда, какая ситуация с STR9xx, но по ~20летнему опыту работы с разнообразнейшии MACами, 99:1, что ничего приличного для высокопризводительных решений, даже для уровня драйвера в интернете нет sad.gif.


Я себе всё примерно так и представляю, однако, ввиду малого опыта конфигурирования STR912 (а на мой взгляд конфигурирование у него до жути корявое), мне нужно что-то на чём всё править. Т.е. собираюсь взять готовый драйвер, готовый стек (хоть сколько нибудь пригодный для правок), запихнуть в уже существующую программу. Далее первый этап оптимизации - изменение драйвера на свой толк: DMA, прерывания по фрэймам и т.д.
Если при этом у меня не будет стека будут трудности с проверкой этого дела. Снифер конечно поможет, но всё-таки могут выясниться попутно какие-то ограничения на переделку драйвера. Вобщем хотелось бы править "на живую", чтобы не пришлось потом всё переделывать, когда в конце пути выяснится, что изначально в концепции была ошибка где-то...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Pechka   Стеки TCP/IP с примерами на STR912   Mar 25 2010, 17:24
- - blackfin   NicheLite, на ST не сгодится?   Mar 25 2010, 17:36
|- - Pechka   Цитата(blackfin @ Mar 25 2010, 20:36) Nic...   Mar 25 2010, 18:03
|- - scifi   Цитата(Pechka @ Mar 25 2010, 21:03) Как у...   Mar 25 2010, 18:30
- - MALLOY2   Порты относятся к опарационкам, вы же хотите без н...   Mar 25 2010, 19:39
|- - Pechka   Цитата(MALLOY2 @ Mar 25 2010, 22:39) Порт...   Mar 25 2010, 20:13
|- - aaarrr   Цитата(Pechka @ Mar 25 2010, 23:13) ...хо...   Mar 25 2010, 20:22
|- - Pechka   Цитата(aaarrr @ Mar 25 2010, 23:22) Это, ...   Mar 25 2010, 20:30
- - aaarrr   А смысл какой открывать до 64K соединений?   Mar 25 2010, 20:34
|- - Pechka   Цитата(aaarrr @ Mar 25 2010, 23:34) А смы...   Mar 25 2010, 20:47
|- - aaarrr   Цитата(Pechka @ Mar 25 2010, 23:47) Никто...   Mar 25 2010, 20:55
|- - KRS   Цитата(aaarrr @ Mar 25 2010, 23:55) Так м...   Mar 25 2010, 21:08
|- - aaarrr   Цитата(Pechka @ Mar 26 2010, 00:04) Свой ...   Mar 25 2010, 21:16
||- - zltigo   Цитата(aaarrr @ Mar 26 2010, 00:16) Если ...   Mar 25 2010, 21:29
||- - aaarrr   Цитата(zltigo @ Mar 26 2010, 00:40) ...из...   Mar 25 2010, 21:50
|- - KRS   Цитата(Pechka @ Mar 26 2010, 00:30) А как...   Mar 26 2010, 19:25
|- - Pechka   Цитата(KRS @ Mar 26 2010, 22:25) Так это ...   Mar 26 2010, 22:19
- - Pechka   Нет, я имел ввиду не UDP непонятный, а надстройка ...   Mar 25 2010, 21:19


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

 


RSS Текстовая версия Сейчас: 28th June 2025 - 20:59
Рейтинг@Mail.ru


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