Ethernet


Ethernet является наиболее популярным носителем в корпоративных и домашних сетях и является наиболее типичным носителем для систем FreeBSD. Ethernet — это общая сеть; самые разные компьютеры могут подключаться к одной и той же сети Ethernet и напрямую взаимодействовать друг с другом. Это одно из преимуществ Ethernet перед другими сетевыми протоколами. Однако Ethernet налагает ограничения на физические расстояния между системами, поэтому этот протокол подходит только для офисов, внутренних сетей хостинг-провайдеров (co-location facilities) и других сравнительно небольших сетей.

На протяжении многих лет для реализации Ethernet применялось много различных физических носителей. Было время, когда большинство кабелей Ethernet представляли собой толстый коаксиальный кабель, а сегодня в большинстве сетей Ethernet задействованы сравнительно тонкие кабели категории 5 (САТ5) с восемью тонкими проводами внутри. Ethernet можно реализовать по оптоволокну или через радиоэфир. В рамках нашего разговора предположим, что Ethernet в данном случае реализована по кабелю САТ5 — сегодня это наиболее распространенный носитель. Независимо от того, какой физический носитель используется, теория Ethernet от этого не меняется — не забывайте, что физический уровень для нас лишь абстракция.

Протоколы и аппаратное обеспечение

Ethernet — это широковещательный (broadcast) протокол — каждый пакет, посылаемый по сети, может доставляться на каждую рабочую станцию. (Обратите внимание на оговорку «может» — некоторые устройства Ethernet ограничивают возможность приема таких широковещательных посылок.) Драйвер сетевой платы на той или иной рабочей станции отделяет данные, предназначенные для этого компьютера, от всех остальных передаваемых пакетов. Побочный эффект широковещательной сущности Ethernet — возможность подслушивать трафик, предназначенный для других компьютеров сети. Хотя такая возможность очень полезна при диагностировании неполадок, она добавляет хлопот с точки зрения безопасности: перехват пароля — тривиальная операция в старых сетях Ethernet. Часть сети Ethernet, где все хосты могут напрямую взаимодействовать друг с другом, не прибегая к услугам маршрутизатора, называется доменом коллизий (collision domain), или сегментом.

Сегменты Ethernet соединяются между собой с помощью сетевых коммутаторов или концентраторов. Концентратор (hub) Ethernet — это центральная часть аппаратного обеспечения, обеспечивающего физическое соединение устройств Ethernet. Он просто осуществляет переадресацию и пересылку информации уровня Ethernet между устройствами, которые к нему подключены. Весь поступающий трафик Ethernet концентраторы переадресуют каждому присоединенному хосту и другим концентраторам. А каждый хост отвечает за фильтрацию нежелательного трафика. Это традиционный Ethernet.

Коммутаторы в значительной степени вытеснили концентраторы. Коммутатор предоставляет усовершенствованный способ соединения устройств Ethernet, при котором скорость передачи данных в сети Ethernet улучшается за счет отслеживания IP и МАС-адресов всех подсоединенных устройств и перенаправления пакетов тому устройству, для которого они предназначены. Поскольку каждый хост Ethernet имеет ограниченную пропускную способность, коммутация снижает нагрузку на отдельные системы за счет ограничения объема данных, передаваемых каждому устройству.

Отказы коммутаторов

Случается так, что несмотря на надежность устройств, выпускаемых компанией Cisco, коммутаторы иногда выходят из строя. Некоторые поломки видны сразу, как, например, когда из-под крышки прибора валит таинственный черный дым. Дым перестает идти, а прибор прекращает работать. Другие поломки не так очевидны, и на первый взгляд создается ощущение, что коммутатор в порядке.

Каждый производитель коммутаторов сам решает, как устройство должно реагировать на всевозможные отказы. Либо коммутатор прекращает передачу данных, пока к нему не будет проявлено должное внимание, либо он пытается предупредить администратора и продолжает передачу пакетов, хоть как-нибудь. Если вы производитель, ваш выбор вполне очевиден — прибор должен работать, пусть хоть кое-как, благодаря этому у покупателя даже не появляется мысли, что ваши коммутаторы никуда не годятся. Это означает, что коммутатор начинает действовать как концентратор и никто может даже не подозревать об этом. Плохо здесь то, что если вы рассчитываете на коммутатор, как на одно из средств, предотвращающих утечку секретной информации, вас ждет разочарование. В моей практике не раз случались поломки коммутаторов, поэтому особо не удивляйтесь, если это произойдет и с вами.

Установка и использование сервера syslog (глава 19) поможет уменьшить этот риск. Этот сервер не сможет предотвратить поломки коммутаторов, зато он поможет прислушиваться к их жалобам.

Скорость и двунаправленная передача данных в Ethernet

Первоначально Ethernet поддерживал скорость передачи всего в несколько мегабит в секунду, но со временем он стал поддерживать скорости в десятки гигабит. В большинстве случаев используются скорости 10/100 мегабит в секунду (Mbps). Если на сетевой карте имеется наклейка с надписью 10/100 Mbps, это совсем не значит, что она в действительности способна пропускать данные с такой скоростью, — мне приходилось видеть сетевые карты с пометкой 100 Mbps, которые едва дотягивали до скорости 10 Mbps, и гигабитные карты, которые начинали «задыхаться» на скорости 100 Mbps. Большое значение имеет качество сетевой карты, если вам нужна высокая скорость, и не менее важно качество самого компьютера, когда речь идет о высоких скоростях.

Такая характеристика, как duplex (дуплекс, двунаправленная передача), определяет — может ли сетевая карта выполнять прием и передачу данных одновременно. Соединение типа half-duplex (полудуплекс, односторонняя передача) означает, что в каждый конкретный момент времени сетевая карта может выполнять либо только прием, либо только передачу данных — она не в состоянии выполнять обе операции одновременно. В случае соединения fullduplex (полный дуплекс) прием и передача данных могут осуществляться одновременно.

МАС-адреса

Каждая сетевая карта Ethernet имеет уникальный идентификатор, или МАС-адрес (Media Access Control — управление доступом к среде передачи данных). МАС-адрес — это 48-битное число, которое иногда называют адресом Ethernet. Когда одна система хочет передать данные другой через Ethernet, она сначала посылает широковещательный запрос, суть которого можно выразить так: «Какой МАС-адрес отвечает за этот IP-адрес?» Если хост отвечает, отправляемые данные помечаются в соответствии с его МАС-адресом. Этот процесс известен как протокол разрешения адресов (Address Resolution Protocol, ARP).

Получить данные из таблицы ARP в системе FreeBSD можно с помощью команды arp(8). Обычно ее запускают как arp -a, что позволяет увидеть МАС-адреса и имена всех хостов в сети:

# arp -a
gw.blackhelicopters.org (192.168.3.1) at 00:00:93:34:4е:78 on fxp0
[ethernet]
sipura.blackhelicopters.org (192.168.3.5) at 00:00:93:c2:0f:8c on fxp0
[ethernet]

Этот листинг информации ARP называется таблицей ARP или таблицей MAC. (Термины MAC и ARP часто используются как взаимозаменяемые, поэтому не нужно беспокоиться по этому поводу.) В этом примере хост gw.blockhelicopters.org имеет IP-адрес 192.168.3.1 и МАС-адрес 00:00:93:34:4е:78, а подключиться к этому хосту можно через интерфейс fxp0.

Если МАС-адрес показан как incomplete (неполный), установить соединение с хостом не удастся. В этом случае необходимо проверить физический уровень (провод), удаленную систему и конфигурацию системы.

Комментарии запрещены.