NE2000

NE2000 — линейка популярных сетевых карт для шины ISA, первоначально производилась фирмой Novell. Программный интерфейс NE2000 реализовывался в большом количестве карт-клонов, и стал стандартом де-факто.

История 
В конце 1980-х, фирма Novell решила прекратить заниматься аппаратурой для серверов и превратить свой основной продукт — NetWare — в сетевую операционную систему, работающую на PC-серверах, которые бы не зависели от реализации и топологии компьютерной сети. Для того, чтобы сделать это фирме Novell нужна была технология компьютерных сетей, и, в особенности сетевые контроллеры, поддерживающие эту технологию.

Ключевые части, необходимые для реализации замысла Novell были готовы: уже существовали сетевые технологии Ethernet и Token ring, которые были узаконены стандартом IEEE 802 (на тот момент это были черновые версии стандарта, которые были официально утверждены только в 1990, что, не помешало широкому распространению Ethernet и Token ring: на рынке имелись сетевые карты разных производителей, которые были совместимы между собой в рамках предварительной версии стандарта IEEE 802). Однако, производители сетевого аппаратного обеспечения, и особенно лидеры этой индустрии 3Com и IBM держали цены на оборудование на таком уровне, который препятствовал массовому распространению компьютерных сетей.

Для того, чтобы как-то исправить положение, фирма Novell решила разработать собственную линейку сетевых контроллеров. Для того, чтобы минимизировать связанные с производством нового продукта расходы (в частности расходы на исследования и разработку), Novell почти полностью скопировала готовую разработку — прототип сетевой карты на базе Ethernet-контроллера NS8390 фирмы National Semiconductor. National Semiconductor, со своей стороны, не выразила недовольства по этому поводу; использование Ethernet-контроллера DP8390 в данной разработке было выгодным для National Semiconductor. Однако, так как исходный проект сетевой карты был предварительным и был призван продемонстрировать всего лишь работоспособность решения, он поддерживал минимальную функциональность:
 использовался программный ввод-вывод (, PIO) вместо DMA, использовавшегося в более совершенных разработках;
 не применялась буферизация данных
 отсутствовала возможность использовать внешний трансивер.

Так появились сетевые карты NE1000 и NE2000. Первая подключалась к персональному компьютеру с помощью 8-разрядной шины ISA (поставки начались 1987 годук началу мая; под названием E-net  была анонсирована в феврале 1987 ), в то время как вторая использовала 16-разрядную шину ISA (появление в продаже - июль 1988 года). Стоимость карт в 1989 году составляла около 400-500 долларов США и постепенно снижалась. Обе карты поддерживали технологию Ethernet 10BASE2, в которой применялся тонкий коаксиальный кабель. Позднее, в моделях NE1000T и NE2000T была добавлена поддержка технологии 10BASE-T, которая использовала витую пару. Префикс «NE» означал «Novell Ethernet».

Novell распространяла свои сетевые карты через дочернюю компанию Eagle, продавая их с минимальной или даже нулевой прибылью. Хотя сетевые карты были раскритикованы из-за низкой производительности, однако, для организаций, которые развертывали сеть NetWare из сотен или даже тысяч узлов, экономия от применения сетевых карт Novell была значительной (стоимость карт Novell была на момент выпуска на 1/3 меньше чем карты 3com;, дополнительным стимулом при приобретении карт от Novell было то, что карты Novell обладали хорошей совместимостью. Со своей стороны, фирма Novell также была в выигрыше, так как её прибыль целиком зависела от количества проданных экземпляров NetWare (пользователи должны были вносить лицензионные отчисления за каждый узел сети, использовавший NetWare). Таким образом, Novell могла позволить себе продавать сетевые карты по себестоимости, зная, что вслед за покупкой каждой сетевой карты последует лицензионное отчисление за копию NetWare.

Успех сетевых карт NE1000/NE2000 способствовал развитию индустрии по производству карт-клонов, которые были программно совместимы с прототипами. Наиболее известные производители клонов: Realtek (RTL8019 и RTL8029), VIA Technologies, Winbond Electronics ("Compex").  Novell отделила Eagle — была создана компания Anthem Technologies, позднее купленная Artisoft, а ещё позже проданная Microdyne. Эти компании продолжили разработку усовершенствованных версий сетевых карт (были выпущены варианты с поддержкой DMA, буферизацией и Plug and Play), а также карт, которые были способны работать с другими сетевыми технологиями (например, с Token Ring или 100 Мбит Ethernet). Были выпущены карты, использовавшие более совершенные компьютерные шины: EISA, PCI и PCMCIA. Поддержка сетевых карт NE1000/NE2000 присутствует не только в NetWare, но и для ряда других операционных систем: DOS, Microsoft Windows, разных вариантов UNIX, и ОС на ядре Linux. Отмечалось, что поддержка NE2000 часто включается даже в бета версии ОС.

Линейка NE1000/NE2000 интересна с исторической точки зрения, частично благодаря её технологическому успеху, но особенно из-за того, что она великолепно решила поставленные перед ней задачи: компьютерные сети получили повсеместное распространение благодаря падению цен на сетевые контроллеры. Для того, чтобы конкурировать с очень дешевыми картами фирмы Novell, 3Com и другие производители сетевого оборудования были вынуждены снизить цены на сетевые карты начального уровня, что повлекло за собой сетевой бум в 1990-х годах. Можно утверждать, что успех сетевых карт NE1000/2000 помог технологии Ethernet (поддерживаемой 3Com) выйти победителем из противостояния с более совершенной технологией Token ring (поддерживаемой IBM).

Часто в системах виртуализации эмулируется сетевая карта NE2000 (или RTL8139), т.к. их поддержка присутствует во многих гостевых ОС.Fast Networking with Socket-Outsourcing in Hosted Virtual Machine Environments  // SAC’09, March 8-12, 2009, Honolulu, Hawaii. "2.1 Full Virtualization Through Device Emulation":  "network I/O with a device emulator to achieve  full virtualization. The guest OS includes a native device driver for a popular network device, e.g., NE2000 and RTL8139, since there are no standards such as SCSI and ATA for networking. underlying VMM provides an emulator for these popular network devices."

Примечания

Ссылки 
 http://wiki.osdev.org/Ne2000
 Краткое описание интерфейса контроллера DP8390, на базе которого построены карты.

Сетевое оборудование