Гігабітна USB-мережа працює зі швидкістю 100 Мб / с


15

Я купив невеликий гігабітовий USB-адаптер Ethernet, який чудово працює OOTB в Raspberry Pi 3, але лише зі швидкістю 100 Мбіт / с. Як я можу змусити його працювати на повній швидкості?

ettool:

# ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes:   10baseT/Half 10baseT/Full
                        100baseT/Half 100baseT/Full
                        1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes:  10baseT/Half 10baseT/Full
                        100baseT/Half 100baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                     100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Symmetric
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 32
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00007fff (32767)
               drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol
Link detected: yes

lshw:

*-network:2
   description: Ethernet interface
   physical id: 4
   logical name: eth1
   serial: 💩💩💩💩
   size: 100Mbit/s
   capacity: 1Gbit/s
   capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
   configuration: autonegotiation=on broadcast=yes driver=r8152 driverversion=v1.08.8 duplex=full ip=192.168.1.5 link=yes multicast=yes port=MII speed=100Mbit/s

lsmod

Module                  Size  Used by
rpcsec_gss_krb5        23752  0
brcmfmac              222874  0
brcmutil                9092  1 brcmfmac
cfg80211              543027  1 brcmfmac
cdc_ether               6354  0
rfkill                 20851  1 cfg80211
r8152                  37460  0
bcm2835_gpiomem         3940  0
uio_pdrv_genirq         3923  0
uio                    10204  1 uio_pdrv_genirq
fixed                   3285  0
snd_bcm2835            24427  0
snd_pcm                98501  1 snd_bcm2835
snd_timer              23968  1 snd_pcm
snd                    70032  3 snd_timer,snd_bcm2835,snd_pcm
joydev                  9988  0
uinput                  9125  0
ipv6                  408971  32

По-перше, я помітив, що 1000 справді підтримується, але не рекламується. Може, тому, що резервна копія з USB 3 на USB 2 також скорочується до 100 Мбіт / с?

я намагався

# ethtool -s eth1 speed 1000 duplex full

Але не пощастило.

Марка адаптера - "ранкіе" (легко знайти в Amazon).

Також адаптер підключений до гігабітного комутатора. Мій NAS підключений до цього комутатора і працює при 1000mbits / s без проблем, тому я сумніваюся, що це проблема.

Нарешті, адаптер Ethernet - це єдиний USB-пристрій, підключений до PI, тому навіть якщо я не очікую повних 1000 Мбіт / с, я очікував десь досягти швидкості USB2.0


1
Безумовно, Pi3, як і всі моделі Pi, - це USB2 (Ethernet відвисає від шини Pi USB)
Joan

Звичайно, я не сподіваюся отримати повну гігабітну швидкість Ethernet, але я бачив орієнтири, що показують принаймні 200 Мбіт / с на адаптерах USB Ethernet. netbeez.net/blog/raspberry-pi-3-iperf
santiagozky

3
Переконайтесь, що перемикач, до якого ви підключаєтесь, розпізнає адаптер. Автоматичні переговори можуть бути невдалими. Я робив подібне тестування (на жаль, не ведучи приміток) і нагадую, що мені довелося фізично відключити і знову підключити порт після налаштування швидкості порту за допомогою ethtool. Цікаво, що навіть без налаштування швидкості використання USB3 адаптерів збільшував пропускну здатність RPI з ~ 94 Мбіт / с до ~ 113 Мбіт / с. Я читав про те, що люди наближаються до 300 Мбіт / с за допомогою правильно налаштованих адаптерів USB3. Шина USB2 підтримує набагато більшу пропускну здатність, ніж 100 Мбіт / с, хоча ви не отримаєте 1 Гбіт / с.
bobstro

Pi 3 USB 2.0, але адаптер Rankie рекламується як сумісний з 3.0. Я підозрюю, що швидкість мережі знижується при приєднанні до порту 2.0.
BobT

3
Хочете просвітити мене на lshwвиході?
Ghanima

Відповіді:


29

Відповідаючи на власне запитання, проблема була простішою, ніж я думав.

Виявляється, я використовував дешевий кабель, який я проклав вдома. Він навіть не має звичайних 8 проводів, лише 4 з них, що робить його нездатним використовувати для підключення Gigabit Ethernet (для швидкої Ethernet потрібні лише 4 дроти, тоді як для Gigabit потрібні всі 8).

Я перейшов на належний кабель Cat 5e, і це вирішило проблему. Тепер ethtool звітує 1000mbps, а за допомогою iperf я отримую понад 300mbps!


Якщо ви подивитеся на конектор дешевого кабелю, чи має він 4-х або 8-контактний кабель, підключений до кабелю? Якщо у нього всього 4, на що слід дивитися, купуючи новий кабель у майбутньому.
Феррібіг

Так, у ньому всього 4 дроти. Мені ніколи не спадає на думку, що може бракувати половини проводів. Я не думаю, що я купив цей провід, я майже впевнений, що він прийшов з якимось іншим гаджетом, який я придбав у якийсь момент. У будь-якому разі я буду більш пильним наступного разу!
santiagozky

Я відредагував свою відповідь, щоб додати більше деталей
santiagozky

Ось чому кабелі позначені 5е і т. Д.
Thorbjørn Ravn Andersen

2
@santiagozky Кабель, який ви описуєте, технічно CAT3. Пройшов певний проміжок часу, коли Gigbit Ethernet став повсюдним, що телефонні кабелі були розірвані RJ-45 для заміни Ethernet-кабелів, оскільки будинки вже були підключені телефонними лініями. Це також іноді використовувалося для доставки з'єднань DSL без встановлення нового обладнання. Ваш CAT3 може залишитися від старого пристрою 10/100 або від старого DSL-модему тощо. Зверніть увагу, що двопарні кабелі також були оновленням від старих телефонних ліній, оскільки вони могли підтримувати дві окремі телефонні лінії (для кожної потрібна лише одна пара ).
подяка

8

Швидкість підтримки шини USB2 набагато перевищує 100 Мбіт / с, тож дійсно слід очікувати кращої швидкості. Мережеві адаптери USB2 обмежуються зі швидкістю 100 Мбіт / с (IME), але сумісні з відсталими гігабітними адаптерами USB3 USB3 можуть використовувати можливості шини USB2 для досягнення більше 100 Мбіт / с.

Я робив аналогічні тестування, використовуючи подвійні USB-адаптери на RPi 3B. Ваш мережевий комутатор може не розпізнавати перемикач швидкості, зроблений за допомогою ethtool. Спробуйте фізично відключити та підключити кабель, щоб змусити повторну узгодження можливості з комутатором після зміни швидкості порту на RPi. Якщо це працює, вам потрібно з’ясувати, як змусити перемикач швидкості при початковому підключенні.

На жаль, я викрутився при тестуванні і нехтував зміною швидкості порту на RPi. Я маю намір повторити тестування після перенастроювання швидкостей використання ethtoolв майбутньому. Як точку даних, я провів те саме тестування на Asus Tinkerboard, який також забезпечує тільки порти USB2 поряд з порту GBE. За допомогою адаптера USB3 GBE, підключеного до порту USB2 та підключення до третього пристрою через порт GBE, я зміг отримати пропускну здатність 308 Мбіт / с у маршрутизованій конфігурації. Якщо нічого іншого, це показує, що шина USB2 може підтримувати> 100 Мбіт / с.

Навіть не встановлюючи швидкості порту вручну, моя швидкість пропускної здатності за допомогою 2 адаптерів USB3 GBE на RPi 3B покращилася від ~ 94 Мбіт до ~ 113 Мбіт / с, приблизно 20%.


1
"Спробуйте фізично відключити та підключити кабель". жах !! жартуючи вбік. Знайшли проблему і почуваєтесь погано. Я використовував кабель Cat5. знайшов 5e десь вдома і отримав 305 Мбіт / сек (з iperf)!
santiagozky

Га! Я теж покусав, забув про це. Я ненавиджу це, коли я не записую подібні речі.
bobstro

1
Існує різниця між досягнутою пропускною здатністю та рекламованим посиланням. Теоретично ви можете створити пристрій USB 1.1 з порту Ethernet 10 ГБ, і посилання має повідомляти про 10 Гбіт, просто перенести дані з такою швидкістю буде неможливо.
ПлазмаHH

Так, є різниця, але це не означає, що ви не можете отримати більше 100 Мбіт / с через RPi. Ми вже з’ясували, що шина USB2 не підтримуватиме 1 Гбіт / с, але 300 Мбіт / с реалістично.
bobstro
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.