dsmv 0 October 17, 2018 Posted October 17, 2018 · Report post Может поможет проект 1G Ethernet DPI: https://opencores.org/project/1g_ethernet_dpi Там реализовано сквозное моделирование при помощи DPI. Quote Share this post Link to post Share on other sites More sharing options...
Flood 14 October 17, 2018 Posted October 17, 2018 · Report post 3 часа назад, RobFPGA сказал: Приветствую! Нет не путаю - 4 штуки 10G по UDP льют из FPGA общий поток параллельно. На приемной стороне все собирается опять в один поток. Успехов! Rob. Если приемная сторона это процессор, то как справляется с этим потоком? Не секрет, какой размер ethernet фрейма и UDP сообщения? Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 17, 2018 Posted October 17, 2018 · Report post Приветствую! 42 minutes ago, Flood said: Если приемная сторона это процессор, то как справляется с этим потоком? Не секрет, какой размер ethernet фрейма и UDP сообщения? Да нормально справляется, 2x 4-ядерных Хeon принимают и синхронизирует потоки, пишут на SSD raid, да еще и кой-какую обработку и статистику по потоку считают - для нынешнего железа это не проблема. По UDP бегают jumbo с payload 4-8K. Но это уже старая система - медленная ;) Удачи! Rob. Quote Share this post Link to post Share on other sites More sharing options...
TRILLER 0 October 17, 2018 Posted October 17, 2018 · Report post 1 hour ago, RobFPGA said: Приветствую! Да нормально справляется, 2x 4-ядерных Хeon принимают и синхронизирует потоки, пишут на SSD raid, да еще и кой-какую обработку и статистику по потоку считают - для нынешнего железа это не проблема. По UDP бегают jumbo с payload 4-8K. Но это уже старая система - медленная ;) Удачи! Rob. А не подскажете, как с потерями данных? Вот прямо сейчас пытаемся по 10Г на сетевую карту предать данные, так даже на скорости 100мбит/c пакеты куда-то деваются(ОС W7). Раньше как-то не приходилось передавать данные на сетевую карту, всё больше на ПЛИС+PCI, потому и подвоха не ждал. А тут..( Quote Share this post Link to post Share on other sites More sharing options...
Flood 14 October 17, 2018 Posted October 17, 2018 · Report post 1 час назад, RobFPGA сказал: Да нормально справляется, 2x 4-ядерных Хeon принимают и синхронизирует потоки, пишут на SSD raid, да еще и кой-какую обработку и статистику по потоку считают - для нынешнего железа это не проблема. По UDP бегают jumbo с payload 4-8K. Но это уже старая система - медленная ;) Я бы не сказал, что даже для современного железа это простенькая задачка. Проблема не столько в потоке, сколько в приеме большого числа пакетов, которые не могут быть больше нескольких килобайт (и то это уже jumbo). Один поток 10GE еще ладно, а вот 4 - не поверю что оно просто работает само собой. Тут потребуется объединение прерываний, раскидывание их на разные процессоры, привязка потоков к процессорам и, возможно, маппинг памяти с учетом NUMA. А вот что оно просто так без дополнительной настройки берет и работает с 4-я потоками 10GE пусть даже и джамбо фреймов - как-то не верится. Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 17, 2018 Posted October 17, 2018 · Report post Приветствую! 1 hour ago, TRILLER said: А не подскажете, как с потерями данных? Вот прямо сейчас пытаемся по 10Г на сетевую карту предать данные, так даже на скорости 100мбит/c пакеты куда-то деваются(ОС W7). Раньше как-то не приходилось передавать данные на сетевую карту, всё больше на ПЛИС+PCI, потому и подвоха не ждал. А тут..( Конечно тут все зависит от конфигурации сети. Если точка - точка или через хороший коммутатор и сетевые карты - то для радикального уменьшения потерь надо настраивать сетевухи для работа в режиме lostless - это типа xon|xoff - когда сетевуха видит что место в приемном буфере заканчивается то тормозит удаленный передатчик и тот ждет разрешения . Пакеты не теряются но естественно и скорость падает. Соответственно и на стороне FPGA это надо поддерживать. Отлаживалась кстати это сначала как раз на Win7. Если же сеть на noname мыльницах - то тут увы ничего не поможет. 1 hour ago, Flood said: ... А вот что оно просто так без дополнительной настройки берет и работает с 4-я потоками 10GE пусть даже и джамбо фреймов - как-то не верится. Так я и не говорил что без настройки - естественно пошаманили и с настройками стека и c прерываниями. Но все крутилось на стандартном стеке linux без новомодных DPDK и тому подобного. Даже 6 потоков в 10g принимали с трех 2-портовых 10G сетевух. Делалось это уже лет 5 назад. С тех времен это все еще проще стало. Успехов! Rob. Quote Share this post Link to post Share on other sites More sharing options...
Flood 14 October 18, 2018 Posted October 18, 2018 · Report post 17 часов назад, RobFPGA сказал: Так я и не говорил что без настройки - естественно пошаманили и с настройками стека и c прерываниями. Просто вы часто пишете так, будто все тривиально и для решения задачи не потребовалось ничего делать. Отчего со стороны создается (частенько ложное) впечатление, что достаточно воткнуть кабель и все само заработает :) Примерно как в ответ на вопрос, как полететь в космос, сказать - "А какие проблемы? Сделали ракету из металла, летает нормально." Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 18, 2018 Posted October 18, 2018 · Report post Приветствую! 2 hours ago, Flood said: Просто вы часто пишете так, будто все тривиально и для решения задачи не потребовалось ничего делать. Отчего со стороны создается (частенько ложное) впечатление, что достаточно воткнуть кабель и все само заработает :) Примерно как в ответ на вопрос, как полететь в космос, сказать - "А какие проблемы? Сделали ракету из металла, летает нормально." А смысл вас пугать " ... что это ужасно сложно.. что ничего у вас не получиться (без меня ;) )" Конечно когда этот проект свалился мне пришлось поломать голову как вывести из FPGA эти 4 GByte/s. На чем систему записи построить. Увидеть много удивленных лиц когда говорил что мне нужна система для записи гарантированно 4 GByte/s непрерывно как минимум в течении часа. И делать еще более удивленное лицо когда мне выкатывали возможный состав железа и прайс на него. 8-() . А сейчас конечно все тривиально :) Вот новая система - в комп fiber-optic PCIe extender x8 gen3 , в FPGA PCIe подключенный к модулю FireFly - и по одному 100 m кабелю у вас по 6GByte/s в обе стороны. Что тут сложного? :) Успехов! Rob. Quote Share this post Link to post Share on other sites More sharing options...
Flood 14 October 18, 2018 Posted October 18, 2018 · Report post 11 минут назад, RobFPGA сказал: Вот новая система - в комп fiber-optic PCIe extender x8 gen3 , в FPGA PCIe подключенный к модулю FireFly - и по одному 100 m кабелю у вас по 6Gbyte/s в обе стороны. Что тут сложного? :) Тут разве что сложно понять, почему отказались от решения на Ethernet. Из-за цены? 16 минут назад, RobFPGA сказал: А смысл вас пугать " ... что это ужасно сложно.. что ничего у вас не получиться (без меня ;) )" При ответе "воткнули - все работает" у вопрошающего возникает ложное ощущение, что задача не стоит и выеденного яйца. Ничего ужасно сложного, конечно, нет. Но и потрудиться, чтобы все заработало, все равно придется. И не только плисоводу (вывести поток), но программисту и системщику тоже (конечно, все это может быть и один человек). Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 18, 2018 Posted October 18, 2018 · Report post Приветствую! 31 minutes ago, Flood said: Тут разве что сложно понять, почему отказались от решения на Ethernet. Из-за цены? Нет не отказались - это просто другая система - но по сравнению с 4-6 параллельными 10G потоками она еще и проще в реализации (в части передачи данных на комп). Успехов! Rob. Quote Share this post Link to post Share on other sites More sharing options...
fguy 7 October 18, 2018 Posted October 18, 2018 · Report post 4 hours ago, RobFPGA said: А сейчас конечно все тривиально :) Вот новая система - в комп fiber-optic PCIe extender x8 gen3 , в FPGA PCIe подключенный к модулю FireFly - и по одному 100 m кабелю у вас по 6GByte/s в обе стороны. Что тут сложного? :) а зачем на плис вешать "сетевуху" по PCIe? по фэншую xilinx предлагается QSFP на GTY - проще и конструктивно и в плис, тем более что поток в плис сами формируете без всяких линуксов (насколько я понял) Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 19, 2018 Posted October 19, 2018 · Report post Приветствую! 8 hours ago, fguy said: а зачем на плис вешать "сетевуху" по PCIe? по фэншую xilinx предлагается QSFP на GTY - проще и конструктивно и в плис, тем более что поток в плис сами формируете без всяких линуксов (насколько я понял) Фэншуй маловат :( и не позволяет сделать на одной плате размером 3U и слот для FMC модуля ADC/DAC и поставить пару штук QSFP+ туда же. Удачи! Rob. Quote Share this post Link to post Share on other sites More sharing options...
FatRobot 5 October 19, 2018 Posted October 19, 2018 · Report post Проверить то, что передатчик правильно формирует пакеты, а приемник их принимает - это, как вы правильно заметили, задача весьма простая. Сложное - правильно реализовать и проверить машины состояний, реагирующие на нештатные ситуации. Вот пример решения такой задачи, в котором без выхода за рамки TCP исследуется подключенное к сети устройство. https://www.bobbriscoe.net/projects/2020comms/tcp-test/draft-moncaster-tcpm-rcv-cheat-03.html А вот что пишет нам автор стека lwIP: http://lists.nongnu.org/archive/html/lwip-users/2016-05/msg00125.html Quote Share this post Link to post Share on other sites More sharing options...
:-) 0 October 25, 2018 Posted October 25, 2018 · Report post On 10/18/2018 at 8:30 PM, RobFPGA said: Приветствую! А смысл вас пугать " ... что это ужасно сложно.. что ничего у вас не получиться (без меня ;) )" Конечно когда этот проект свалился мне пришлось поломать голову как вывести из FPGA эти 4 GByte/s. На чем систему записи построить. Увидеть много удивленных лиц когда говорил что мне нужна система для записи гарантированно 4 GByte/s непрерывно как минимум в течении часа. И делать еще более удивленное лицо когда мне выкатывали возможный состав железа и прайс на него. 8-() . А сейчас конечно все тривиально :) Вот новая система - в комп fiber-optic PCIe extender x8 gen3 , в FPGA PCIe подключенный к модулю FireFly - и по одному 100 m кабелю у вас по 6GByte/s в обе стороны. Что тут сложного? :) Успехов! Rob. Подскажите, пожалуйста, а как можно реализовать запись потока 4GByte/s и сколько это может стоить?.. Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 58 October 25, 2018 Posted October 25, 2018 · Report post Приветствую! 17 minutes ago, :-) said: Подскажите, пожалуйста, а как можно реализовать запись потока 4GByte/s и сколько это может стоить?.. Вопрос слишком общий - в старой системе 2x Xeon, 64GByte, cсервер, 2x 2x10G Ethernet, 2x raid контроллера- 36x 256GB SSD диска. Сейчас можно было все на PCIe SSD сделать было бы проще. Это если делать все на "коммерческом" железе. Сколько это стоит можно прикинуть по прайсам в инете. Удачи! Rob. Quote Share this post Link to post Share on other sites More sharing options...