|
TCP/IP на Альтере (1Гбит/с), Кто-нибудь делал ? |
|
|
|
 |
Ответов
|
Mar 4 2009, 14:44
|
Участник

Группа: Участник
Сообщений: 61
Регистрация: 11-11-08
Пользователь №: 41 522

|
Цитата(Harbour @ Mar 4 2009, 13:28)  Linux + Nios - это непомерные накладные расходы - Nios и так тормоз ... А можно отсюда поподробнее - видимо есть опыт из личной жизни - пытались на Nios и такой то версией Linux сделать то-то - и получили вот такой результат Оч интересно
|
|
|
|
|
Mar 4 2009, 15:29
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
NIOS для этого мучать совсем не обязательно. Прописная истина, что синтезированные процы сильно медленнее хардварных. Если ни у кого не получилось на ARM-ах до 400 МГц! занять всю полосу даже 100Base-T вменяемым TCP трафиком, то NIOS может отдыхать. Тут только десяток или сотня NIOS-ов справится. Кстати, не ирония. Думаю реально запряч на задачу с десяток NIOS-ов, а TCP потоки поделить. Это будет самое реальное решение. Цитата(islavv @ Mar 4 2009, 16:44)  А можно отсюда поподробнее - видимо есть опыт из личной жизни - пытались на Nios и такой то версией Linux сделать то-то - и получили вот такой результат Оч интересно
|
|
|
|
|
Mar 4 2009, 16:22
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(AlexandrY @ Mar 4 2009, 17:29)  NIOS для этого мучать совсем не обязательно. Прописная истина, что синтезированные процы сильно медленнее хардварных. Если ни у кого не получилось на ARM-ах до 400 МГц! занять всю полосу даже 100Base-T вменяемым TCP трафиком, то NIOS может отдыхать. Тут только десяток или сотня NIOS-ов справится. Кстати, не ирония. Думаю реально запряч на задачу с десяток NIOS-ов, а TCP потоки поделить. Это будет самое реальное решение. Самое правильное, это будет сборку пакетов, подсчет CRC в плисину вынести. А НИОС пусть получает готовый, и собранный TCP или UDP пакет, с подсчитанной контрольной суммой итд.
|
|
|
|
|
Mar 4 2009, 16:34
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Не потянет все равно. В ARM-ах также используется аппаратных CRC на MAC уровне. Суммирование на IP уровне - даст мизер. При этом еще есть хитрый RISC управляющий отправкой составных IP пакетов на основе дескрипторов и DMA. По сути та самая сборка. Ниче не помогает. Масштабирование - единственный выход. Цитата(Methane @ Mar 4 2009, 18:22)  Самое правильное, это будет сборку пакетов, подсчет CRC в плисину вынести. А НИОС пусть получает готовый, и собранный TCP или UDP пакет, с подсчитанной контрольной суммой итд.
|
|
|
|
|
Mar 4 2009, 16:39
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(AlexandrY @ Mar 4 2009, 18:34)  Не потянет все равно. В ARM-ах также используется аппаратных CRC на MAC уровне. Суммирование на IP уровне - даст мизер. При этом еще есть хитрый RISC управляющий отправкой составных IP пакетов на основе дескрипторов и DMA. По сути та самая сборка. Ниче не помогает. Масштабирование - единственный выход. Недавно гонял UDP на AVR32, дофига даст. Нужно собрать IP пакеты, подсчитать им CRC, собрать UDP пакеты, им посчитать CRC, одновременно нужно выкидывать старые IP пакеты, проводить дефрагментацию IP пакетов итд. Тот CRC в маке - фигня. Еще много чего есть.
Сообщение отредактировал Methane - Mar 4 2009, 16:40
|
|
|
|
|
Mar 4 2009, 16:50
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Меньше 30% даст на коротких пакетах если умудритесь делать аппаратное суммирование всех заголовков, операции пересылки памяти все равно преобладают. Да , и называть простое суммирование как CRC немного неточно. Цитата(Methane @ Mar 4 2009, 18:39)  Недавно гонял UDP на AVR32, дофига даст. Нужно собрать IP пакеты, подсчитать им CRC, собрать UDP пакеты, им посчитать CRC, одновременно нужно выкидывать старые IP пакеты, проводить дефрагментацию IP пакетов итд.
Тот CRC в маке - фигня. Еще много чего есть.
|
|
|
|
|
Mar 4 2009, 17:09
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(AlexandrY @ Mar 4 2009, 18:50)  Меньше 30% даст на коротких пакетах если умудритесь делать аппаратное суммирование всех заголовков, операции пересылки памяти все равно преобладают. Да , и называть простое суммирование как CRC немного неточно. Вот операции с памятью тоже. Можно в общем сделать практически все в FPGA - получаем пакеты и сваливаем в большой циклический буфер это один автомат. Еще один автомат выгребает из буфера и дешает готовые IP пакеты, с дефрагментацией, подсчетом, суммы, выбраковкой старых и итд. Третий автомат - из IP собирает уже готовые UDP, тоже считает что нужно и отдает ниосу. В этом случае НИОС может и успеть, если UDP пакеты будут и они будут достаточно большие. К примеру по 60 килобайт.
|
|
|
|
|
Mar 4 2009, 18:04
|
Участник

Группа: Участник
Сообщений: 61
Регистрация: 11-11-08
Пользователь №: 41 522

|
Цитата(Methane @ Mar 4 2009, 20:09)  Вот операции с памятью тоже. Можно в общем сделать практически все в FPGA - получаем пакеты и сваливаем в большой циклический буфер это один автомат. Еще один автомат выгребает из буфера и дешает готовые IP пакеты, с дефрагментацией, подсчетом, суммы, выбраковкой старых и итд. Третий автомат - из IP собирает уже готовые UDP, тоже считает что нужно и отдает ниосу. В этом случае НИОС может и успеть, если UDP пакеты будут и они будут достаточно большие. К примеру по 60 килобайт. а кто нибудь пробовал NicheStack TCP/IP stack NIOS II edition? http://www.altera.com/literature/hb/nios2/n2sw_nii52013.pdf
|
|
|
|
|
Mar 5 2009, 13:29
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(islavv @ Mar 4 2009, 21:04)  а кто нибудь пробовал NicheStack TCP/IP stack NIOS II edition? http://www.altera.com/literature/hb/nios2/n2sw_nii52013.pdfСначала хотел, потом отказался: проблема с уже упоминавшейся здесь uCOSII. Сделал на NiosII свои драйвера для LAN91C111, потом написал под ARP, ICMP и UDP, более раскрывать стек пока не нужно. Но LAN91C111 работает на Ethernet-100, а требуется уже и Ethernet-1000. Для последнего у меня есть 88E1111, но проблемы с нормальным описанием: достать его не возможно, из-за политики Marwell. Может, у кого есть подробное описание 88E1111, то поделитесь или укажите, где все это добро есть. На фирму не ссылаться, там одни футболисты. Если кому-то интересно, то вычисление контрольных сумм для UDP делал аппаратно, по ходу работы внешней FSM, т.е. ресурс NiosII на это не тратил. А воообще, ускоряться там можно много, хватало бы идей.
Сообщение отредактировал Serhiy_UA - Mar 5 2009, 13:38
|
|
|
|
Сообщений в этой теме
murmel1 TCP/IP на Альтере (1Гбит/с) Feb 2 2009, 18:51 Methane Цитата(murmel1 @ Feb 2 2009, 20:51) Возни... Feb 2 2009, 19:31 murmel1 Физ уровень оптика (как его там - 1000BASE-X ?) Во... Feb 2 2009, 20:41 Methane Цитата(murmel1 @ Feb 2 2009, 22:41) Физ у... Feb 2 2009, 20:56 des00 Цитата(murmel1 @ Feb 2 2009, 12:51) Есть ... Feb 3 2009, 04:09 islavv Цитата(murmel1 @ Feb 2 2009, 21:51) Возни... Feb 26 2009, 05:28 Sefo Сколько Мб/с требуется и в чем именно трудность ап... Feb 27 2009, 19:21 murmel1 Цитата(Sefo @ Feb 27 2009, 22:21) и в чем... Feb 27 2009, 19:39  AlexandrY Для одного соединения по TCP это совершенно дикая ... Feb 27 2009, 20:32 Harbour Ну как-бы 100 Mb/sec легко дает любой задрыпаный L... Feb 28 2009, 07:12 AlexandrY iperf сервис роутинга линукса даже не пытается исп... Feb 28 2009, 08:30  islavv Цитата(AlexandrY @ Feb 28 2009, 11:30) ip... Mar 1 2009, 16:41 Harbour Цитатаiperf сервис роутинга линукса даже не пытает... Feb 28 2009, 12:25 AlexandrY Расскажите о реальном маршруте пакетов.
Они хоть... Feb 28 2009, 13:01 Harbour реальный маршрут :
eth0 первый комп -> китайск... Feb 28 2009, 13:49 AlexandrY Ну не верю я iperf.
Я сам компилировал прогу типа... Feb 28 2009, 14:24 Harbour Ваше дело верить или нет - убеждать мне кого-либо ... Feb 28 2009, 16:34 AlexandrY Я конечно дико извиняюсь, но вы что, прокачали 1 г... Feb 28 2009, 17:12 Harbour Не через, а от, 85.238.113.239 есть ip'шник мо... Mar 1 2009, 07:46 Sefo Господа! По-моему Линукс (так же как и Д-Линк)... Mar 1 2009, 22:23 Harbour Все очень зависит от задачи. При подаче, данной в ... Mar 2 2009, 07:42 islavv Цитата(Harbour @ Mar 2 2009, 10:42) Все о... Mar 4 2009, 03:51 AlexandrY Так к чему вы тогда пудрили всем этим iperf-ом? Li... Mar 4 2009, 09:59  Harbour Цитата(AlexandrY @ Mar 4 2009, 11:59) Так... Mar 5 2009, 04:00   AlexandrY Если бы не поленились и не ставили целью провоциро... Mar 5 2009, 06:15          islavv Цитата(Serhiy_UA @ Mar 5 2009, 17:29) Сна... Mar 5 2009, 14:12           Serhiy_UA Цитата(islavv @ Mar 5 2009, 17:12) Так uC... Mar 5 2009, 14:21            islavv Цитата(Serhiy_UA @ Mar 5 2009, 18:21) Ось... Mar 5 2009, 14:54             Serhiy_UA Цитата(islavv @ Mar 5 2009, 18:54) вам уд... Mar 5 2009, 19:06              islavv Цитата(Serhiy_UA @ Mar 5 2009, 23:06) Nic... Mar 5 2009, 19:56              AlexandrY Вообще, конечно, впечатляет
Взять Stratix II где-т... Mar 5 2009, 22:12               islavv Цитата(AlexandrY @ Mar 6 2009, 01:12) Воо... Mar 5 2009, 23:31                AlexandrY Это не смешно, от таких решений пахнет нафталином.... Mar 6 2009, 06:42               Serhiy_UA Цитата(AlexandrY @ Mar 6 2009, 01:12) Воо... Mar 6 2009, 06:26                VslavX Цитата(Serhiy_UA @ Mar 6 2009, 08:26) Но ... Mar 6 2009, 07:41                 Methane Цитата(VslavX @ Mar 6 2009, 09:41) Я тоже... Mar 12 2009, 18:29                  VslavX Цитата(Methane @ Mar 12 2009, 20:29) А эт... Mar 12 2009, 18:49                   Methane Цитата(VslavX @ Mar 12 2009, 20:49) Не зн... Mar 12 2009, 18:53                    cms добавлю в копилочку: у альтеры есть AN-440 “Accele... Jul 3 2009, 20:00              islavv Цитата(Serhiy_UA @ Mar 5 2009, 23:06) У м... Mar 12 2009, 17:49 jojo Зачем tcp вообще здесь.
Плис с синтезированным Gig... Mar 4 2009, 11:37 Methane Цитата(jojo @ Mar 4 2009, 13:37) Зачем tc... Mar 4 2009, 11:52 jojo Да, эт я загнул. Mar 4 2009, 12:42 Harbour Цитата:Если бы не поленились и не ставили целью пр... Mar 5 2009, 12:06 Koluchiy Здравствуйте, уважаемые гуру.
А кто-нибудь пробов... Oct 23 2013, 07:55 Koluchiy И еще в догонку.
Кто-нибудь пробовал убедить nich... Oct 23 2013, 12:25 Corner Мне для решения данной проблемы хватило EP4CE22+MA... Oct 29 2013, 19:05 Koluchiy UDP? Oct 30 2013, 11:56 Corner Цитата(Koluchiy @ Oct 30 2013, 15:56) UDP... Oct 30 2013, 16:27 Koluchiy UDP делали программно или аппаратно? Oct 31 2013, 05:16 Corner Цитата(Koluchiy @ Oct 31 2013, 09:16) UDP... Nov 6 2013, 17:33 Koluchiy А кто-нибудь пробовал работать с niche stack метод... Nov 1 2013, 05:50 BigBatya Я получил около 85 Мбайт/сек UDP без jumbo пакет... Nov 12 2013, 05:03 ilyge Очень давно для сканирующего приемника делалали ре... Nov 13 2013, 11:53 Koluchiy Кто-нибудь пробовал делать пакеты >1500 байт дл... Nov 13 2013, 17:37 krux Цитата(Koluchiy @ Nov 13 2013, 21:37) Кто... Nov 13 2013, 18:22 Koluchiy Правда работает?
Там просто можно передавать длин... Nov 14 2013, 12:57
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|