LINUX.ORG.RU

предельный случай usb в linux


0

0

Интересует вот какой вопрос - как ведёт себя ядро linux при загрузке шины usb выше 50% (2.6 и 2.4).

Вопрос возник в связи с тем, что при передаче больших объёмов данных (high speed, USB 2.0) - скажем 4 видеокамеры - 4x(1280x1024x7 fps/sec)=36.7M/sec - но не работают :-( В USB 2.0 Spec написано что 10% это служ инф-ия (bulk, 55байт на 512 пакета) те реально 480Мбит/сек*90%=54M/sec - теор-ки

Плюс в ядре 10% резервируется для передачи служ инф-ии - те я так понимаю остаётся 49M/sec

Но тут вопрос о retransmissions - насколько они увеличивают трафик?

Кто с этими предельными случаями сталкивался - как вы решали проблему подключения usb-устройств и что думаете по этому поводу?

anonymous

480 Мбит/с - это теоретический максимум. Реальные чипы обеспечивают меньше. Я _слышал_, что первые контроллеры USB 2.0, появившиеся на рынке (NEC, кажется) выдавали максимум 20-30 МБайт/с.

Если есть свободный PCI-разъем, можно поставить еще один USB-контроллер, чтобы убедиться, что проблема именно в USB, а не в PCI.

tailgunner ★★★★★
()

я понимаю что здесь кривое железо и дрова на первом месте будут в плане как источник граблей.

а если честно я с такими нагрузками не работал.

cvv ★★★★★
()
Ответ на: комментарий от cvv

при малых объёмах передачи по usb - всё ок вероятность того что кривизна вылазит при нагрузках - мала (тестировалось и в винде)

anonymous
()
Ответ на: комментарий от anonymous

вероятность того что кривизна вылазит при нагрузках - мала

это сказки. именно здесь все глюки и лезут

cvv ★★★★★
()

Поиграйтесь с настройками USB в ядре, а вообще исходя из моей практики вешать больше 2-х устройств на 1 USB-хаб как то не хорошо.

Так и непонятно в Windows всё работает?

saper ★★★★★
()

usb -- half-duplex. Кроме того, он host-driven. Иными словами, _одновременная_ прокачка более чем одного объёмного потока данных -- не гшарантируется.

P.S. На моей памяти никто ещё не выжал из усб2 более 35-36 Мбайт/с (суммарных при >1 устройства).

Obidos ★★★★★
()
Ответ на: комментарий от Obidos

>P.S. На моей памяти никто ещё не выжал из усб2 более 35-36 Мбайт/с (суммарных при >1 устройства).

Я давно говорил, что USB - гавно. Лучше бы сделали быстрый ком-порт (физический уровень как в sata/sas) но с описаным протоколом PnP, классы устроств/стандартные протоколы и т.д.

Всё равно мультиточечность USB мало кто использует. вместо этого пихают в материнки по 4 котроллера/8 портов.

Да у меня в ком-порты устройств подключено больше, чем в USB ;)

smartly ★★★
()
Ответ на: комментарий от Deleted

Вопрос не о том что лучше - дано usb и всё тут.

35 Мбайт/сек - у меня примерно похоже - но интересно сильно ли тут возрастает процент retransmission (если это от 2-3 источников)?

Графики (и исследования) какие-нибудь есть на тему как деградирует usb при загрузке скажем выше 50%?

anonymous
()
Ответ на: комментарий от anonymous

даже я тут посмотрел - примерно с 25 Мбайт/сек начинаются проблемы. (linux, 2.6.13)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.