Параллельное выполнение операций подразумевает поддержку полного дуплекса, т.е. полную независимость передающей и приемной части, а также возможность одновременного приема кадра в буфер, передачи другого кадра и обмена данными между буферной памятью адаптера и системной памятью компьютера.
Распределение обязанностей между сетевым адаптером и его драйвером стандартами не определяется, поэтому каждый производитель решает этот вопрос самостоятельно. В адаптерах для клиентских компьютеров значительная часть работы перекладывается на драйвер, тем самым адаптер становится проще и дешевле, но это, в то же время, приводит к лишней загрузке центрального процессора. Адаптеры, предназначенные для серверов, обычно снабжаются собственными процессорами, которые самостоятельно выполняют большую часть работы по передаче кадров из оперативной памяти компьютера в сеть.
Сетевой адаптер перед установкой в компьютер необходимо конфигурировать. При конфигурации адаптера обычно задаются номер прерывания IRQ, используемого адаптером, номер канала прямого доступа к памяти DMA (если адаптер поддерживает режим DMA) и базовый адрес портов ВВ. Если сетевой адаптер поддерживает технологию PnP, то конфигурирование адаптера и его драйвера осуществляется автоматически.
В зависимости от того, какой протокол реализует адаптер, адаптеры делятся на Ethernet-адаптеры, Token Ring – адаптеры, FDDI – адаптеры и т.д. Так как Fast Ethernet позволяет за счет процедуры автопереговоров автоматически выбрать скорость работы сетевого адаптера, то многие современные адаптеры Ethernet поддерживают две скорости работы – 100/10 Мбит/с.
Сетевые адаптеры Ethernet в своем развитии прошли три поколения.
Адаптеры первого поколения были выполнены на дискретных логических элементах. Они имели буферную память только на один кадр, что приводило к низкой производительности адаптера, т.к. все кадры передавались из компьютера в сеть и обратно последовательно. Конфигурирование адаптеров первого поколения производилось вручную, с помощью перемычек. Для каждого типа адаптера использовался свой драйвер, причем интерфейс между драйвером и сетевой ОС не был стандартизован.
В сетевых адаптерах второго поколения стал применяться метод многокадровой буферизации. При этом следующий кадр загружается из памяти компьютера одновременно с передачей предыдущего кадра в сеть. В режиме приема, после того как адаптер полностью принял один кадр, он может начать передавать этот кадр из буфера в память компьютера одновременно с приемом другого кадра из сети. В адаптерах 2-го поколения широко использовались микросхемы БИС. Драйверы этих адаптеров основаны на стандартных спецификациях: адаптеры этого поколения обычно поставляются с драйверами, работающими как в стандарте NDIS (спецификация интерфейса сетевого драйвера), так и в стандарте ODI (Open Driver Interface - интерфейс открытого драйвера), разработанном фирмой Novell.
В сетевых адаптерах 3-го поколения осуществляется конвейерная схема обработки кадров. Она заключается в том, что процессы приема кадра из оперативной памяти и передачи его в сеть совмещаются во времени, т.е. после приема нескольких первых байт кадра начинается их передача в память. Это на 25-55% повышает производительность цепочки оперативная память – адаптер – физический канал – адаптер – оперативная память. Адаптеры 3-го поколения базируются на специализированных микросхемах ASIC.
Выпускаемые в настоящее время сетевые адаптеры можно отнести к 4-му поколению. В эти адаптеры обязательно входит специализированная микросхема ASIC, выполняющая функции MAC-уровня. Кроме того, они выполняют ряд высокоуровневых функций, таких как поддержка агента удаленного мониторинга RMON, приоритезацию кадров и др.
Практически во всех современных технологиях ЛВС используются устройства, имеющие равноправные названия – концентратор, повторитель, хаб. В зависимости от области применения функции концентраторов разнятся. Неизменной остается только их основная функция – повторение кадра либо на всех портах повторителя (как в стандарте Ethernet), либо только на отдельных портах, в соответствии с алгоритмом, определенным соответствующим стандартом.
Концентратор обычно имеет несколько портов, к которым с помощью отдельных сегментов кабеля подключаются конечные узлы сети. Концентратор объединяет отдельные физические сегменты сети в единую разделяемую среду, доступ к которой осуществляется в соответствии с протоколом Ethernet, Token Ring и т.д. Так как логика доступа к разделяемой среде существенно зависит от технологии, то для каждого типа технологии выпускаются свои концентраторы - Ethernet, Token Ring, FDDI, 100VG-AnyLAN. Для конкретного протокола иногда используют свое, узко специализированное название концентратора, например, для концентраторов Token Ring характерно название MSAU.
В сетях Ethernet на основе коаксиального кабеля обычными вначале были двухпортовые повторители, соединяющие между собой два сегмента кабеля, поэтому термин "концентратор" к ним не применялся. С появлением спецификации 10Base-T повторитель стал неотъемлемой частью сети Ethernet, т.к. без него связь можно организовать только между двумя узлами сети. Многопортовые повторители Ethernet на витой паре стали называться концентраторами или хабами, т.к. в одном таком устройстве действительно концентрируются связи между большим количеством узлов сети.
Каждый порт концентратора Ethernet имеет собственный трансивер – приемник, передатчик и детектор коллизий. При обнаружении несущей на одном из портов он синхронизируется по преамбуле и принятую последовательность сигналов транслирует во все другие порты с номинальной амплитудой импульсов. Если во время трансляции сигнала в каком-либо из портов обнаруживается коллизия, концентратор во все порты посылает jam-последовательность. Если трансивер одного из портов обнаруживает коллизию 60 раз подряд, то этот порт изолируется – сигналы с этого порта перестают транслироваться в остальные. Поводом для изоляции являются также длинная «болтливость» и частые ошибки на уровне кадра (неверная контрольная сумма, неверная длина кадра, неоформленный заголовок). Однако, в изолированный порт кадры продолжают транслироваться. Если трансиверу удается передать пакет в сегментированный порт без коллизии, то сегментация снимается и порт переходит в нормальный режим работы. Для концентраторов Fast Ethernet правила изоляции и «реабилитации» портов несколько сложнее.
Концентратор работает на уровне физических сигналов - закодированных битовых последовательностей. Никакого анализа кадров они не выполняют. Все узлы, подключенные к портам одного повторителя, находятся в одном домене коллизий. В общем случае сеть Ethernet, построенная на одних повторителях, всегда образует один домен коллизий. На несколько доменов коллизий сеть делят мосты, коммутаторы и маршрутизаторы.
Концентратор Ethernet обычно имеет от 8 до 72 портов, причем основная часть портов предназначена для подключения кабелей на витой паре. Чаще всего используются концентраторы Ethernet на 16 портов стандарта 10Base-T с разъемами RJ-45 с одним портомBNC или AUI (для подключения внешнего трансивера). Обычно к порту AUI подключается трансивер, работающий на коаксиальный или оптоволоконнный кабель.
Для соединения концентраторов технологии Ethernet между собой коаксиальный или оптоволоконный кабель не обязателен, можно применять те же порты, что и для подключения конечных станций, но с учетом одного обстоятельства. Дело в том, что обычный порт RJ-45 концентратора, предназначенный для подключения сетевого адаптера и называемый MDI-X, имеет внутреннюю инвертированную разводку контактов разъема, чтобы сетевой адаптер можно было подключить к концентратору с помощью стандартного некроссированного соединительного кабеля. Поэтому в случае соединения между собой концентраторов через стандартный порт MDI-X приходится использовать нестандартный кабель с перекрестным соединением пар. Некоторые производители снабжают концентратор выделенным портом MDI, в котором нет внутреннего кроссирования пар с передатчика и приемника. В таком случае два концентратора можно соединить обычным некроссированным кабелем, если это делать через порт MDI-X одного концентратора и порт MDI другого. Часто один из портов концентратора может работать и как порт MDI-X, и как порт MDI, в зависимости от положения кнопочного переключателя.
Кроме основной функции концентратор может выполнять некоторые дополнительные функции, которые в стандарте либо вообще не определены, либо являются факультативными. Например, многие концентраторы могут выполнять функцию отключения некорректно работающих портов - функцию автосегментации. Для концентратора FDDI эта функция для многих ошибочных ситуация является основной, т.е. определена в протоколе. В то же время в сетях Ethernet и Token Ring функция автосегментации для многих ситуаций является дополнительной.
Другой полезной дополнительной функцией является поддержка резервных связей. Использование резервных связей определено только в концентраторах FDDI. Концентраторы Ethernet/Fast Ethernet согласно стандарту могут образовывать только иерархические связи без петель. Поэтому резервные связи в них всегда должны соединять отключенные порты, чтобы не нарушать логику работы сети. Обычно при конфигурировании сети администратор сам определяет, какие порты являются основными, а какие по отношению к ним – резервными. Если по какой-либо причине порт отключается (срабатывает механизм автосегментации), концентратор делает активным его резервный порт.