Сколько жестких дисков USB можно подключить к ноутбуку с помощью репликатора портов?
У меня есть ноутбук с 2 портами USB 2.0 и 1 портом USB 3.0, и я хотел бы знать, сколько жестких дисков USB можно подключить к нему. Есть ли жесткое ограничение в ядре Linux?
Что касается производительности, то какая скорость распределяется между дисками, подключенными к порту?
3 ответа
Теоретически вы можете иметь до 127 устройств, подключенных к одному хост-компьютеру, но есть практические ограничения по мощности и пропускной способности, которые могут это предотвратить. Эти 127 устройств могут быть расположены в многоуровневой сети концентраторов до семи уровней, считая хост ПК как уровень 1, а самое дальнее устройство - уровень 7. ПК подает 5 единиц энергии на концентратор. Каждая единица составляет 100 мА, и для каждого порта требуется минимум 1 единица. Сам концентратор потребляет один, оставляя 4 устройства на срок до 4 портов. Таким образом, вы никогда не найдете концентратор с питанием от шины с более чем четырьмя портами.
Концентраторы с питанием от шины имеют еще одно ограничение. Поскольку каждый порт имеет только одну единицу питания, они могут подключаться только к одному устройству. Вы не можете подключить их к другому концентратору для расширения, потому что этот концентратор требует дополнительных 5 единиц. И не все устройства могут работать от одного устройства. Будет работать устройство с низким энергопотреблением, такое как мышь, но устройство с высоким энергопотреблением может потребовать до 5 устройств. USB-устройства высокой мощности будут работать только при подключении непосредственно к ПК или к концентратору с автономным питанием, который может подключить к порту 5 устройств.
При подключении устройства ПК запрашивает устройство о его возможностях и требованиях. Так, например, ПК знает, что он подключен к 4-портовому концентратору с питанием от шины, что означает, что каждый порт может управлять только одним устройством. Если вы попытаетесь подключить устройство высокой мощности к этому концентратору, ОС выдаст сообщение об ошибке и откажется включить устройство.
Концентраторы с питанием от шины, как правило, являются плохой идеей из-за этих ограничений и предназначены в основном для мобильных устройств, а не для настольных компьютеров.
С другой стороны, если устройства, подключенные к порту, сами запитаны, то им может не потребоваться более одного устройства от концентратора. Например, внешние накопители имеют собственный источник питания, поэтому они должны нормально работать на концентраторе с питанием от шины.
Концентратор с автономным питанием сможет подавать по 5 устройств на каждый порт, что позволяет использовать устройства большой мощности и другие уровни концентраторов. Таким образом, вы можете подключить один 7-портовый концентратор с автономным питанием, а затем еще семь 7-портовых концентраторов, что даст вам 49 доступных портов только на четвертом уровне.
Некоторые концентраторы с автономным питанием позволят вам использовать их также в режиме с питанием от шины, но если вы попытаетесь подключить слишком много устройств, ОС выдаст вам сообщение об ошибке.
Большинство чипов контроллеров концентраторов имеют 4 порта, поэтому вы обычно видите концентраторы с 4 портами. Когда они хотят построить больший концентратор, они просто используют два 4-портовых чипа. Но они должны последовательно соединить их с первым чипом, подключенным к хосту, а вторым - с одним из нижестоящих портов на первом чипе. Это оставляет только семь портов, оставленных пользователю, три на первом чипе и четыре на втором - следовательно, общий концентратор с 7 портами.
USB подключи и играй в том смысле, что вам не нужно ничего знать об этом, когда вы подключаете вещи. Операционная система отслеживает баланс мощности каждого концентратора и устройства, сообщит вам, если соединение не будет работать, и что вам нужно использовать порт с автономным питанием.
редактировать: USB-пакеты выглядят так:
Знак: Идентификатор пакета: 8 бит Адрес: 7 бит Конечная точка: 4 бита CRC: 5 бит Начало кадра: Идентификатор пакета: 8 бит Номер кадра: 11 бит CRC: 5 бит Пакет данных: Идентификатор пакета: 8 бит Данные: 0-1023 байта CRC: 16 бит Рукопожатие: Идентификатор пакета: 8 бит
Поскольку адрес всего 7 бит, вы можете иметь только 128 устройств на всей шине (с 7 битами, каждое из которых может быть включено и выключено, возможно всего 128 различных комбинаций битов). Это включает в себя ваш компьютер, так что остается 127 других вещей, которые вы можете прикрепить к нему.
Итак, вы обнаружите, что с набором микросхем USB3 вы фактически достигнете предела в 30 устройств или около того, из-за жесткого ограничения в 32 устройства (в действительности, 96 оконечных точек) для наборов микросхем USB3.
Я тоже занимался этой проблемой, и мне потребовалось некоторое время, чтобы найти реальную проблему и пути ее решения. Это длинная страница, поэтому вы можете прочитать ее там http://marc.merlins.org/perso/linux/post_2018-12-20_Getting-Around-USB3-xhci-32-Device-Limit-_Max-number-of-devices-this-xHCI-host-supports-is-32_.html
В основном это сводится к этим вещам
1) существует ограничение 96 оконечных точек с USB3 (что означает только 32 устройства)
2) вы теряете дополнительные конечные точки из-за концентраторов, использование кабеля USB2 к концентратору USB3 дает вам несколько слотов назад
3) в более общем случае вам следует отключить USB3, если вы можете обойтись без него (удалите драйвер ядра USB3 или, если проще, отключите USB3 в своем BIOS). Использование чипа USB3 в режиме USB2 не помогает, вы должны отключить USB3, чтобы ваша материнская плата перенаправила порт на контроллер USB2, у которого нет этого предела 4), если вы не можете отключить USB3, получите карту USBe только с USB2 и тот действительно даст вам 120 устройств или около того.
Дополнительные ресурсы: https://www.spinics.net/lists/linux-usb/msg175224.html
https://forums.intel.com/s/question/0D50P00004905stSAA/hardware-limitations-on-usb-endpoints-xhci?language=en_US
Исходя из личного опыта, моя веб-камера будет работать только при подключении напрямую к USB-портам моего компьютера. Это не будет работать, подключенный к концентратору с питанием. Это означало бы, что вы столкнетесь с ограничениями пропускной способности, прежде чем столкнетесь с ограничением количества устройств.