Ethernet ( от «эфир» + «сеть, цепь») — семейство технологий пакетной передачи данных между устройствами для компьютерных и промышленных сетей. Это самый распространенный протокол в мире, используемый для построения локальных сетей (LAN) и городских сетей (MAN). Протоколы Ethernet работают на канальном и физическом уровне модели OSI, предоставляя средства для передачи данных между устройствами. Блок данных протокола Ethernet называется кадр.
Существует несколько версий протокола Ethernet, но все они работают по одному принципу. Ethernet использует кабельное соединение для передачи данных и использует адресацию MAC (Media Access Control) для идентификации отправителя и получателя данных.
Технология Ethernet работает следующим образом:
Устройство, которое хочет отправить данные, создает кадр данных, содержащий информацию для отправки. Кадр данных отправляется на сетевой адаптер устройства, который преобразует его в электрический или оптический сигнал, подходящий для передачи по кабелю. Сетевой адаптер отправляет сигнал по кабелю в коммутатор или маршрутизатор, который находится в той же локальной сети, что и устройство. Коммутатор или маршрутизатор получает сигнал, проверяет адрес MAC получателя и направляет кадр данных к соответствующему устройству. Устройство-получатель получает кадр данных, проверяет чексумму (FCS) и обрабатывает его.
Стандарты Ethernet определяют проводные соединения и электрические сигналы на физическом уровне, формат кадров и протоколы управления доступом к среде — на канальном уровне модели OSI. Ethernet в основном описывается стандартами IEEE группы 802.3. Ethernet стал одной из самых распространённых технологий ЛВС в середине 1990-х годов, вытеснив такие устаревшие технологии, как Token Ring, FDDI и ARCNET.
Название «Ethernet» (буквально «эфирная сеть») отражает первоначальный принцип работы этой технологии: всё, передаваемое одним узлом, одновременно принимается всеми остальными (то есть имеется некое сходство с радиовещанием). В настоящее время практически всегда подключение происходит через коммутаторы (switch), так что кадры, отправляемые одним узлом, доходят лишь до адресата (исключение составляют передачи на широковещательный адрес) — это повышает скорость работы и безопасность сети.
История Технология Ethernet была разработана вместе со многими первыми проектами корпорации Xerox PARC. Общепринято считать, что Ethernet был изобретён 22 мая 1973 года, когда Роберт Меткалф (Robert Metcalfe) составил докладную записку для главы PARC о потенциале технологии Ethernet. Но законное право на технологию Меткалф получил через несколько лет. В 1976 году он и его ассистент Дэвид Боггс (David Boggs) издали брошюру под названием «Ethernet: Distributed Packet-Switching For Local Computer Networks».
Меткалф ушёл из Xerox в 1979 году и основал компанию 3Com для продвижения компьютеров и локальных вычислительных сетей (ЛВС). Ему удалось убедить DEC, Intel и Xerox работать совместно и разработать стандарт Ethernet (DIX). Впервые этот стандарт был опубликован 30 сентября 1980 года. Он начал соперничество с двумя крупными запатентованными технологиями: Token ring и ARCNET, — которые вскоре были раздавлены под накатывающимися волнами продукции Ethernet. В процессе борьбы 3Com стала основной компанией в этой отрасли.
Технология В стандарте первых версий (Ethernet v1.0 и Ethernet v2.0) указано, что в качестве передающей среды используется коаксиальный кабель, в дальнейшем появилась возможность использовать витую пару и оптический кабель.
Преимущества использования витой пары по сравнению с коаксиальным кабелем: возможность работы в дуплексном режиме; низкая стоимость кабеля витой пары; более высокая надёжность сетей: при использовании витой пары сеть строится по топологии «звезда», поэтому обрыв кабеля приводит лишь к нарушению связи между двумя объектами сети, соединёнными этим кабелем (при использовании коаксиального кабеля сеть строится по топологии «общая шина», для которой требуется наличие терминальных резисторов на концах кабеля, поэтому обрыв кабеля приводит к неисправности сегмента сети); уменьшен минимально допустимый радиус изгиба кабеля; большая помехоустойчивость из-за использования дифференциального сигнала; возможность питания по кабелю маломощных узлов, например, IP-телефонов (стандарт Power over Ethernet, PoE); гальваническая развязка трансформаторного типа. В условиях СНГ, где, как правило, отсутствует заземление компьютеров, применение коаксиального кабеля часто приводило к выходу из строя сетевых карт в результате электрического пробоя.
Причиной перехода на оптический кабель была необходимость увеличить длину сегмента без повторителей.
Метод управления доступом (для сети на коаксиальном кабеле) — множественный доступ с контролем несущей и обнаружением коллизий (CSMA/CD, Carrier Sense Multiple Access with Collision Detection), скорость передачи данных 10 Мбит/с, размер кадра от 64 до 1518 байтRFC 2544, § 9.1, описаны методы кодирования данных. Режим работы полудуплексный, то есть узел не может одновременно передавать и принимать информацию. Количество узлов в одном разделяемом сегменте сети ограничено предельным значением в 1024 рабочих станции (спецификации физического уровня могут устанавливать более жёсткие ограничения, например, к сегменту тонкого коаксиала может подключаться не более 30 рабочих станций, а к сегменту толстого коаксиала — не более 100). Однако сеть, построенная на одном разделяемом сегменте, становится неэффективной задолго до достижения предельного значения количества узлов, в основном по причине полудуплексного режима работы.
В 1995 году принят стандарт IEEE 802.3u Fast Ethernet со скоростью 100 Мбит/с и появилась возможность работы в режиме полный дуплекс. В 1997 году был принят стандарт IEEE 802.3z Gigabit Ethernet со скоростью 1000 Мбит/с для передачи по оптическому волокну и ещё через два года - для передачи по витой паре.
Формат кадра Существует несколько форматов Ethernet-кадра. Первоначальный Version I (больше не применяется). Для синхронизации в начале кадра отправлялся синхронизирующий бит. В заголовке содержалось аппаратные адреса отправителя и получателя длиной 8 бит каждый. В конце кадра добавлялась CRC Check Sequence длиной в 16 бит. Ethernet Version 2 или Ethernet-кадр II, ещё называемый DIX (аббревиатура первых букв фирм-разработчиков DEC, Intel, Xerox) — наиболее распространена и используется по сей день. EtherType должен принимать значение не меньше чем 1536 (0x0600). Это позволяет отличать данный формат кадра от других, указывающих в заголовке размер передаваемых данных, который не может быть больше 1500. Часто используется непосредственно протоколом Интернета.
Novell — внутренняя модификация IEEE 802.3 без LLC (Logical Link Control). Соответствует Ethernet II, но вместо EtherType указывается размер данных в кадре в байтах. Кадр IEEE 802.3 LLC. Кадр IEEE 802.3 LLC/SNAP. Некоторые сетевые карты Ethernet, производившиеся компанией Hewlett-Packard, использовали при работе кадр формата IEEE 802.12, соответствующий стандарту 100VG-AnyLAN.
В качестве дополнения Ethernet-кадр может содержать тег IEEE 802.1Q для идентификации VLAN, к которой он адресован, а в нём IEEE 802.1p для указания приоритетности.
Разные типы кадра имеют различный формат и значение MTU.
Кадры Ethernet, размер которых меньше 64 байт, называются карликами. Такие кадры почти всегда возникают из-за коллизий, также они могут появляться из-за проблем с программным обеспечением.
MAC-адреса При проектировании стандарта Ethernet было предусмотрено, что каждая сетевая карта (равно как и встроенный сетевой интерфейс) должна иметь уникальный шестибайтный номер (MAC-адрес), прошитый в ней при изготовлении. Этот номер используется для идентификации отправителя и получателя кадра, и предполагается, что при появлении в сети нового компьютера (или другого устройства, способного работать в сети) сетевому администратору не придётся настраивать MAC-адрес.
Уникальность MAC-адресов достигается тем, что каждый производитель получает в координирующем комитете IEEE Registration Authority диапазон из шестнадцати миллионов (224) адресов, и по мере исчерпания выделенных адресов может запросить новый диапазон. Поэтому по трём старшим байтам MAC-адреса можно определить производителя. Существуют таблицы, позволяющие определить производителя по MAC-адресу; в частности, они включены в программы типа arpalert.
MAC-адрес считывается один раз из ПЗУ при инициализации сетевой карты, в дальнейшем все кадры генерируются операционной системой. Все современные операционные системы позволяют поменять его. Для Windows, начиная, как минимум, с Windows 98, он менялся в реестре. Некоторые драйверы сетевых карт давали возможность изменить его в настройках, но смена работает абсолютно для любых карт.
Некоторое время назад, когда драйверы сетевых карт не давали возможность изменить свой MAC-адрес, а альтернативные возможности не были слишком известны, некоторые провайдеры Internet использовали его для идентификации машины в сети при учёте трафика. Программы из Microsoft Office, начиная с версии Office 97, записывали MAC-адрес сетевой платы в редактируемый документ в качестве составляющей уникального GUID-идентификатора.
Разновидности Ethernet В зависимости от скорости передачи данных и передающей среды существует несколько вариантов технологии. Независимо от способа передачи, стек сетевого протокола и программы работают одинаково практически во всех нижеперечисленных вариантах.
В этом разделе дано краткое описание всех официально существующих разновидностей. По некоторым причинам, в дополнение к основному стандарту многие производители рекомендуют пользоваться другими запатентованными носителями — например, для увеличения расстояния между точками сети используется волоконно-оптический кабель.
Большинство Ethernet-карт и других устройств имеет поддержку нескольких скоростей передачи данных, используя автоопределение (autonegotiation) скорости и дуплексности для достижения наилучшего соединения между двумя устройствами. Если автоопределение не срабатывает, скорость подстраивается под партнёра и включается режим полудуплексной передачи. Например, наличие в устройстве порта Ethernet 10/100 говорит о том, что через него можно работать по технологиям 10BASE-T и 100BASE-TX, а порт Ethernet 10/100/1000 — поддерживает стандарты 10BASE-T, 100BASE-TX и 1000BASE-T.
Ранние модификации Ethernet Xerox Ethernet — оригинальная технология, скорость 3 Мбит/с, существовала в двух вариантах Version 1 и Version 2, формат кадра последней версии до сих пор имеет широкое применение. Это исторически самая ранняя проводная локальная сеть. Его идея заключалась в том, чтобы передавать информацию в едином носителе, который представлял собой коаксиальный кабель максимальной длиной 2500 м. Через каждые 500 метров располагались регенерирующие устройства. 1BROAD36 — широкого распространения не получил. Один из первых стандартов, позволяющий работать на больших расстояниях. Использовал технологию широкополосной модуляции, похожей на ту, что используется в кабельных модемах. В качестве среды передачи данных использовался коаксиальный кабель. 1BASE5 — StarLAN был первым стандартом IEEE 802.3 для Ethernet по витой паре. Он был стандартизирован ассоциацией стандартов Института инженеров по электротехнике и электронике (IEEE) 802.3e в 1986 году как версия Ethernet 1BASE5. Работал на скорости 1 Мбит/с, но не нашёл коммерческого применения.
10 Мбит/с Ethernet 10BASE5, IEEE 802.3 (называемый также «Толстый Ethernet») — первоначальная разработка технологии со скоростью передачи данных 10 Мбит/с. Следуя раннему стандарту, IEEE использует коаксиальный кабель с волновым сопротивлением 50 Ом (RG-8), с максимальной длиной сегмента 500 метров.