Hard: Davicom DM9601 based USB 1.1 10/100 ethernet devices.
Обнаружил в развалах мелкого барахлишка магазина "Модерн Компьютер" (РК, Павлодар, Академика Сатпаева, 27-12; +7 (7182) 78-10-31) USB-свисток традиционного для китайцев синевато-зеленоватого пластика. На одном конце свиристелки - USB, а на другом - Ethernet разъёмы. Надо полагать, устройство предназначено для применения в качестве внешней сетевой карты. И правда, если воткнуть его в компьютер с достаточно современной операционной системой на борту, то, без каких либо каверзных вопросов (а точнее - вообще без вопросов), нашим услугам представится вполне себе функциональный сетевой интерфейс.
1280x960 • Davicom DM9601: Общий вид устройства.
Посмотрим, каким это устройство видится системе:
# dmesg
....
usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: New USB device found, idVendor=0fe6, idProduct=8101
....
usb 3-2: Product: USB Network Controller
....
eth1: register 'dm9601' at usb-0000:00:1d.1-2, Davicom DM9601 USB Ethernet, MAC
usbcore: registered new interface driver dm9601
....
usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: New USB device found, idVendor=0fe6, idProduct=8101
....
usb 3-2: Product: USB Network Controller
....
eth1: register 'dm9601' at usb-0000:00:1d.1-2, Davicom DM9601 USB Ethernet, MAC
usbcore: registered new interface driver dm9601
....
Что-то обнаружилось и не вызвало возмущения. Поподробнее:
# lsusb -v
....
Fast Ethernet Adapter
Device Descriptor:
....
# Явно не USB 2.0
bcdUSB 1.10
....
idVendor 0x0fe6 Kontron (Industrial Computer Source / ICS Advent)
idProduct 0x8101 DM9601 Fast Ethernet Adapter
....
iProduct 2 USB Network Controller
....
Fast Ethernet Adapter
Device Descriptor:
....
# Явно не USB 2.0
bcdUSB 1.10
....
idVendor 0x0fe6 Kontron (Industrial Computer Source / ICS Advent)
idProduct 0x8101 DM9601 Fast Ethernet Adapter
....
iProduct 2 USB Network Controller
....
Раз уж устройство заявлено, как сетевой адаптер, посмотрим, на что оно способно:
# lshw -C network
....
*-network
description: Ethernet interface
....
# Больше 10 Mbs не дадим
size: 10MB/s
# Хотя чип может и до 100 Mbs
capacity: 100MB/s
capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=dm9601 driverversion=22-Aug-2005 duplex=full firmware=Davicom DM9601 USB Ethernet ip=192.168.1.1 link=yes multicast=yes port=MII speed=10MB/s
....
*-network
description: Ethernet interface
....
# Больше 10 Mbs не дадим
size: 10MB/s
# Хотя чип может и до 100 Mbs
capacity: 100MB/s
capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=dm9601 driverversion=22-Aug-2005 duplex=full firmware=Davicom DM9601 USB Ethernet ip=192.168.1.1 link=yes multicast=yes port=MII speed=10MB/s
....
Так, видим вполне себе полноценный простенький сетевой USB-Ethernet адаптер. Чипсет-преобразователь может работать со скоростями до 100 Mbs, но использование устаревшего USB 1.1 не позволит ему разогнаться быстрее 12 Mbs на "полу-дуплексе" и 6-9 Mbs на "полном дуплексе" (насколько я понимаю, протокол USB 1.1 передаёт данные в "полудуплексном" синхронном режиме и попытка эмулировать для устройства за USB "полно-дуплексную" передачу повлечёт сильное итоговое падение скорости) и производитель решил ограничить заявленную скорость в 10 Mbs.
Проверим теорию практикой. Устанавливаем утилиты мониторинга и смены режима интерфейса:
# aptitude install iperf ethtool
Соединяем два компьютера напрямую через тестируемый USB-интерфейс. Запускаем на одном из них сервер мониторинга:
# iperf -s -t 3600
Где:
"-s" - операнд запуска сервера;
"-t 3600" - время работы утилиты в секундах.
"-t 3600" - время работы утилиты в секундах.
На стороне условного клиента, непосредственно генерирующего трафик:
# iperf -c 192.168.1.1 -t 3600 -i 10
Где:
"-c ip.address" - операнд запуска с клиента с указанием IP сервера;
"-t 3600" - время работы утилиты в секундах;
"-i 10" - период вывода в консоль статистической информации о работе утилиты.
"-t 3600" - время работы утилиты в секундах;
"-i 10" - период вывода в консоль статистической информации о работе утилиты.
Во время передачи данный ярко красный индикатор на плате увлечённо изображает очень активную работу. Устройство нагревается чуть выше сорока градусов и стабильно пребывает в таком состоянии вне зависимости от того, передаются данные или нет. Полчаса тестов со следующими предсказуемыми результатами:
....
------------------------------------------------------------
[ 3] local 192.168.1.1 port 33383 connected with 192.168.1.2 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 9.98 MBytes 8.38 Mbits/sec
[ 3] 10.0-20.0 sec 10.6 MBytes 8.91 Mbits/sec
....
[ 3] 840.0-850.0 sec 7.90 MBytes 6.63 Mbits/sec
[ 3] 850.0-860.0 sec 9.22 MBytes 7.73 Mbits/sec
....
------------------------------------------------------------
[ 3] local 192.168.1.1 port 33383 connected with 192.168.1.2 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 9.98 MBytes 8.38 Mbits/sec
[ 3] 10.0-20.0 sec 10.6 MBytes 8.91 Mbits/sec
....
[ 3] 840.0-850.0 sec 7.90 MBytes 6.63 Mbits/sec
[ 3] 850.0-860.0 sec 9.22 MBytes 7.73 Mbits/sec
....
Устройство работает в "полно-дуплексном" режиме. Перевести интерфейс в режим "полу-дуплекса" у меня не вышло, возможно просто не хватило терпения дальше с ним ковыряться. Ситуация с автонастройкой на "полный дуплекс" и невозможностью перевода в "полудуплексный" режим побудила присмотреться к производителю устройства. Смотрим на компоненты:
Трансформатор гальванической развязки: TAIMAG HA-103 (10/100 BASE-T SMT TRANSFORMER);
Чип-преобразователь: Davicom DM9601 USB to Ethernet MAC Controller with Integrated 10/100 PHY.
Чип-преобразователь: Davicom DM9601 USB to Ethernet MAC Controller with Integrated 10/100 PHY.
Интересные особенности чипа (http://www.davicom.com.tw/):
10/100M PHY (Physical layer);
USB Specification revision 1.1 compliant;
Supports automatically load vendor ID and product ID from EEPROM.
USB Specification revision 1.1 compliant;
Supports automatically load vendor ID and product ID from EEPROM.
Драйвер для операционных систем Microsoft Windows 2000/XP/Vista/Seven:
Всё нормально, дешёвенькое устройство, ничего лишнего, всё на вполне себя хорошо зарекомендовавших компонентах. А вот производитель Kontron (Industrial Computer Source ICS Advent) ничего о своей продукции такого рода не знает. Кому интересно, может пройти на сайт http://www.kontron.com/ и прикинуть, будет ли холдинг уровня промышленных решений клеить две половинки прозрачного пластика. Что-то внутри мне подсказывает, что опция "ID from EEPROM" чипа использовалась производителем для записи не совсем своего идентификатора.
Как бы то ни было, считаю, что в "джентльменском наборе" специалиста по обслуживанию сетевых клиентов такое устройство просто обязательно должно быть (как отвёртка). Пусть оно и не даст ни 100 Mbs, ни 10 Mbs (как более совершенные и дорогие), но по быстрому получить сетевой доступ к компьютеру поможет. И потерять его не жалко, тем более, что у него даже серийного номера нет.
30 марта 2012 в 13:39
30 марта 2012 в 14:32