Всё, что вы хотели знать о МАС адресе
Всем известно, что это шесть байт, обычно отображаемых в шестнадцатеричном формате, присвоены сетевой карте на заводе, и на первый взгляд случайны. Некоторые знают, что первые три байта адреса – это идентификатор производителя, а остальные три байта им назначаются. Известно также, что можно поставить себе произвольный адрес. Многие слышали и про «рандомные адреса» в Wi-Fi.
Разберемся, что это такое.
МАС адрес (media access control address) – уникальный идентификатор, назначенный сетевому адаптеру, применяется в сетях стандартов IEEE 802, в основном Ethernet, Wi-Fi и Bluetooth. Официально он называется «идентификатором типа EUI-48». Из названия очевидно, что адрес имеет длину в 48 бит, т.е. 6 байт. Общепринятого стандарта на написание адреса нет (в противоположность IPv4 адресу, где октеты всегда разделяют точками).Обычно он записывается как шесть шестнадцатеричных чисел, разделенных двоеточием: 00:AB:CD:EF:11:22, хотя некоторые производители оборудования предпочитают запись вида 00-AB-CD-EF-11-22 и даже 00ab.cdef.1122.
Исторически адреса прошивались в ПЗУ чипсета сетевой карты без возможности их модификации без флеш-программатора, но в настоящее время адрес может быть изменен программно, из операционной системы. Задать вручную МАС адрес сетевой карте можно в Linux и MacOS (всегда), Windows (почти всегда, если позволит драйвер), Android (только рутованный); с iOS (без рута) подобный трюк невозможен.
Структура адреса
Адрес состоит из части идентификатора производителя, OUI, и идентификатора, присваиваемого производителем. Назначением идентификаторов OUI (Organizationally Unique Identifier) занимается организация IEEE. На самом деле его длина может быть не только 3 байта (24 бита), а 28 или 36 бит, из которых формируются блоки (MAC Address Block, МА) адресов типов Large (MA-L), Medium (MA-M) и Small (MA-S) соответственно. Размер выдаваемого блока, в таком случае, составит 24, 20, 12 бит или 16 млн, 1 млн, 4 тыс. штук адресов. В настоящий момент распределено порядка 38 тысяч блоков, их можно посмотреть многочисленными онлайн-инструментами, например у IEEE или Wireshark.
Кому принадлежат адреса
Несложная обработка публично доступной базы данных выгрузки IEEE даёт довольно много информации. Например, некоторые организации забрали себе много OUI блоков. Вот наши герои:
| Вендор | Число блоков/записей | Число адресов, млн. |
|---|---|---|
| Cisco Systems Inc | 888 | 14208 |
| Apple | 772 | 12352 |
| Samsung | 636 | 10144 |
| Huawei Technologies Co.Ltd | 606 | 9696 |
| Intel Corporation | 375 | 5776 |
| ARRIS Group Inc. | 319 | 5104 |
| Nokia Corporation | 241 | 3856 |
| Private | 232 | 2704 |
| Texas Instruments | 212 | 3392 |
| zte corporation | 198 | 3168 |
| IEEE Registration Authority | 194 | 3072 |
| Hewlett Packard | 149 | 2384 |
| Hon Hai Precision | 136 | 2176 |
| TP-LINK | 134 | 2144 |
| Dell Inc. | 123 | 1968 |
| Juniper Networks | 110 | 1760 |
| Sagemcom Broadband SAS | 97 | 1552 |
| Fiberhome Telecommunication Technologies Co. LTD | 97 | 1552 |
| Xiaomi Communications Co Ltd | 88 | 1408 |
| Guangdong Oppo Mobile Telecommunications Corp.Ltd | 82 | 1312 |
У Google их всего 40, и это не удивительно: они сами производят не так много сетевых устройств.
Блоки МА не предоставляются бесплатно, их можно приобрести за разумные деньги (без абонентской платы) за $3000, $1800 или $755 соответственно. Интересно, что за дополнительные деньги (в год) можно приобрести «сокрытие» публичной информации о выделенном блоке. Таких сейчас, как видно выше, 232.
Когда закончатся МАС-адреса
Мы все порядком устали от не прекращающихся уже лет 10 историй о том, что «IPv4 адреса вот-вот кончатся». Да, новые блоки IPv4 получить уже непросто. При этом известно, что IP адреса распределены крайне неравномерно; существуют гигантские и мало использованные блоки, принадлежащие крупным корпорациям и государственным учреждением США, впрочем, без особой надежды на их перераспределение в пользу нуждающихся. Распространение NAT, CG-NAT и IPv6 сделало проблему нехватки публичных адресов не такой острой.
В МАС адресе 48 бит, из которых «полезными» можно считать 46 (почему? читай дальше), что даёт 2 46 или 10 14 адресов, что в 2 14 раз больше IPv4 адресного пространства.
В настоящий момент распределено примерно полтриллиона адресов, или лишь 0.73% от всего объёма. До исчерпания MAC адресов ещё очень, очень далеко.
Случайность бит
Можно предположить, что OUI распределены случайно, а вендор затем также случайно назначает адреса индивидуальным сетевым устройствам. Так ли это? Посмотрим на распределение бит в имеющихся в моём распоряжении базах МАС адресов 802.11-устройств, собранных работающими системами авторизации в беспроводных сетях WNAM. Адреса принадлежат реальным устройствам, подключавшихся к Wi-Fi на протяжении нескольких лет в трех странах. В дополнение идет маленькая база 802.3-устройств проводной ЛВС.
Разобьем каждый МАС-адрес (шесть байт) каждой из выборок на биты побайтово, и посмотрим на частоту появления бита «1» в каждой из 48 позиций. Если бит выставлен совершенно произвольным образом, то вероятность получить «1» должна быть 50%.
| Выборка Wi-Fi №1 (РФ) | Выборка Wi-Fi №2 (Беларусь) | Выборка Wi-Fi №3 (Узбекистан) | Выборка LAN (РФ) | |
|---|---|---|---|---|
| Число записей в базе | 5929000 | 1274000 | 366000 | 1000 |
| Номер бита: | % бит «1» | % бит «1» | % бит «1» | % бит «1» |
| 1 | 48.6% | 49.2% | 50.7% | 28.7% |
| 2 | 44.8% | 49.1% | 47.7% | 30.7% |
| 3 | 46.7% | 48.3% | 46.8% | 35.8% |
| 4 | 48.0% | 48.6% | 49.8% | 37.1% |
| 5 | 45.7% | 46.9% | 47.0% | 32.3% |
| 6 | 46.6% | 46.7% | 47.8% | 27.1% |
| 7 | 0.3% | 0.3% | 0.2% | 0.7% |
| 8 | 0.0% | 0.0% | 0.0% | 0.0% |
| 9 | 48.1% | 50.6% | 49.4% | 38.1% |
| 10 | 49.1% | 50.2% | 47.4% | 42.7% |
| 11 | 50.8% | 50.0% | 50.6% | 42.9% |
| 12 | 49.0% | 48.4% | 48.2% | 53.7% |
| 13 | 47.6% | 47.0% | 46.3% | 48.5% |
| 14 | 47.5% | 47.4% | 51.7% | 46.8% |
| 15 | 48.3% | 47.5% | 48.7% | 46.1% |
| 16 | 50.6% | 50.4% | 51.2% | 45.3% |
| 17 | 49.4% | 50.4% | 54.3% | 38.2% |
| 18 | 49.8% | 50.5% | 51.5% | 51.9% |
| 19 | 51.6% | 53.3% | 53.9% | 42.6% |
| 20 | 46.6% | 46.1% | 45.5% | 48.4% |
| 21 | 51.7% | 52.9% | 47.7% | 48.9% |
| 22 | 49.2% | 49.6% | 41.6% | 49.8% |
| 23 | 51.2% | 50.9% | 47.0% | 41.9% |
| 24 | 49.5% | 50.2% | 50.1% | 47.5% |
| 25 | 47.1% | 47.3% | 47.7% | 44.2% |
| 26 | 48.6% | 48.6% | 49.2% | 43.9% |
| 27 | 49.8% | 49.0% | 49.7% | 48.9% |
| 28 | 49.3% | 49.3% | 49.7% | 55.1% |
| 29 | 49.5% | 49.4% | 49.8% | 49.8% |
| 30 | 49.8% | 49.8% | 49.7% | 52.1% |
| 31 | 49.5% | 49.7% | 49.6% | 46.6% |
| 32 | 49.4% | 49.7% | 49.5% | 47.5% |
| 33 | 49.4% | 49.8% | 49.7% | 48.3% |
| 34 | 49.7% | 50.0% | 49.6% | 44.9% |
| 35 | 49.9% | 50.0% | 50.0% | 50.6% |
| 36 | 49.9% | 49.9% | 49.8% | 49.1% |
| 37 | 49.8% | 50.0% | 49.9% | 51.4% |
| 38 | 50.0% | 50.0% | 49.8% | 51.8% |
| 39 | 49.9% | 50.0% | 49.9% | 55.7% |
| 40 | 50.0% | 50.0% | 50.0% | 49.5% |
| 41 | 49.9% | 50.0% | 49.9% | 52.2% |
| 42 | 50.0% | 50.0% | 50.0% | 53.9% |
| 43 | 50.1% | 50.0% | 50.3% | 56.1% |
| 44 | 50.1% | 50.0% | 50.1% | 45.8% |
| 45 | 50.0% | 50.0% | 50.1% | 50.1% |
| 46 | 50.0% | 50.0% | 50.1% | 49.5% |
| 47 | 49.2% | 49.4% | 49.7% | 45.2% |
| 48 | 49.9% | 50.1% | 50.7% | 54.6% |
Откуда такая несправедливость в 7 и 8 битах? Там почти всегда нули.

Действительно, стандарт определяет эти биты как специальные (Википедия):
Восьмой (с начала) бит первого байта МАС адреса называется Unicast/Multicast битом и определяет, какого типа кадр (фрейм) передается с этим адресом, обычный (0) или широковещательный (1) (мультикаст или броадкаст). Для обычного, unicast взаимодействия сетевого адаптера, этот бит выставлен в «0» во всех пакетах, им отправляемых.
Седьмой (с начала) бит первого байта МАС адреса называется U/L (Universal/Local) битом и определяет, является ли адрес глобально уникальным (0), или локально уникальным (1). По умолчанию, все «прошитые изготовителем» адреса глобально уникальны, поэтому подавляющее число собранных МАС адресов содержат седьмой бит выставленным в «0». В таблице присвоенных идентификаторов OUI только порядка 130 записей имеет U/L бит «1», и по всей видимости это блоки МАС адресов для специальных нужд.
С шестого по первый биты первого байта, биты второго и третьего байта в OUI идентификаторах, и тем более биты в 4-6 байтах адреса, назначаемые производителем, распределены более-менее равномерно.
Таким образом, в реальном МАС-адресе сетевого адаптера биты фактически равноценны и не несут технологического смысла, за исключением двух служебных бит старшего байта.
Распространенность
Интересно, какие производители беспроводного оборудования наиболее популярны? Объединим поиск по базе OUI с данными выборки №1.
| Вендор | Доля устройств, % |
|---|---|
| Apple | 26,09 |
| Samsung | 19,79 |
| Huawei Technologies Co. Ltd | 7,80 |
| Xiaomi Communications Co Ltd | 6,83 |
| Sony Mobile Communications Inc | 3,29 |
| LG Electronics (Mobile Communications) | 2,76 |
| ASUSTek COMPUTER INC. | 2,58 |
| TCT mobile ltd | 2,13 |
| zte corporation | 2,00 |
| не найден в базе IEEE | 1,92 |
| Lenovo Mobile Communication Technology Ltd. | 1,71 |
| HTC Corporation | 1,68 |
| Murata Manufactuaring | 1,31 |
| InPro Comm | 1,26 |
| Microsoft Corporation | 1,11 |
| Shenzhen TINNO Mobile Technology Corp. | 1,02 |
| Motorola (Wuhan) Mobility Technologies Communication Co. Ltd. | 0,93 |
| Nokia Corporation | 0,88 |
| Shanghai Wind Technologies Co. Ltd | 0,74 |
| Lenovo Mobile Communication (Wuhan) Company Limited | 0,71 |
Практика показывает, что чем зажиточнее контингент абонентов беспроводной сети в данном месте, тем больше доля устройств Apple.
Уникальность
Уникальны ли МАС адреса? В теории да, поскольку каждый из производителей устройств (владельцев блока МА) обязан обеспечивать уникальный адрес для каждого из выпускаемых им сетевых адаптеров. Однако некоторые производители чипов, а именно:
- 00:0A:F5 Airgo Networks, Inc. (сейчас Qualcomm)
- 00:08:22 InPro Comm (сейчас MediaTek)
выставляют последние три байта МАС адреса в случайное число, по всей видимости, после каждой перезагрузки устройства. Таких адресов в моей выборке №1 нашлось 82 тысячи.
Поставить себе чужой, не уникальный адрес можно, конечно, путем целенаправленной его установки «как у соседа», определив его сниффером, или выбрав наугад. Также возможно случайно поставить себе не уникальный адрес, выполнив, например, восстановление бэкапа конфигурации какого-нибудь маршрутизатора вроде Mikrotik или OpenWrt.
Что будет, если в сети будет присутствовать два устройства с одним МАС адресом? Все зависит от логики сетевого оборудования (проводного роутера, контроллера беспроводной сети). Скорее всего, оба устройства или не будут работать, или будут работать с перебоями. С точки зрения стандартов IEEE, защиту от подделки МАС адресов предлагается решать при помощи, например, MACsec или 802.1Х.
Что, если поставить себе МАС с выставленным в «1» седьмым или восьмым битом, т.е. local или multicast-адрес? Скорее всего, ваша сеть на это не обратит внимания, но формально такой адрес не будет соответствует стандарту, и лучше так не делать.
Как работает рандомизация
Мы знаем, что с целью предотвратить отслеживание перемещения людей путем сканирования эфира и сбора МАС-операционные системы смартфонов уже несколько лет применяют технологию рандомизации. Теоретически, при сканировании эфира в поиске известных сетей смартфон отправляет пакет (группу пакетов) типа 802.11 probe request с МАС-адресом в качестве источника:
Включенная рандомизация позволяет указывать не «прошитый», а какой-то другой адрес источника пакета, меняющийся при каждом цикле сканирования, во времени или ещё как-то. Работает ли это? Посмотрим на статистику собранных МАС-адресов из эфира так называемым «Wi-Fi Радаром»:
| Вся выборка | Выборка только с нулевым 7м битом | |
|---|---|---|
| Число записей в базе | 3920000 | 305000 |
| Номер бита: | % бит «1» | % бит «1» |
| 1 | 66.1% | 43.3% |
| 2 | 66.5% | 43.4% |
| 3 | 31.7% | 43.8% |
| 4 | 66.6% | 46.4% |
| 5 | 66.7% | 45.7% |
| 6 | 31.9% | 46.4% |
| 7 | 92.2% | 0.0% |
| 8 | 0.0% | 0.0% |
| 9 | 67.2% | 47.5% |
| 10 | 32.3% | 45.6% |
| 11 | 66.9% | 45.3% |
| 12 | 32.3% | 46.8% |
| 13 | 32.6% | 50.1% |
| 14 | 33.0% | 56.1% |
| 15 | 32.5% | 45.0% |
| 16 | 67.2% | 48.3% |
| 17 | 33.2% | 56.9% |
| 18 | 33.3% | 56.8% |
| 19 | 33.3% | 56.3% |
| 20 | 66.8% | 43.2% |
| 21 | 67.0% | 46.4% |
| 22 | 32.6% | 50.1% |
| 23 | 32.9% | 51.2% |
| 24 | 67.6% | 52.2% |
| 25 | 49.8% | 47.8% |
| 26 | 50.0% | 50.0% |
| 27 | 50.0% | 50.2% |
| 28 | 50.0% | 49.8% |
| 29 | 50.0% | 49.4% |
| 30 | 50.0% | 50.0% |
| 31 | 50.0% | 49.7% |
| 32 | 50.0% | 49.9% |
| 33 | 50.0% | 49.7% |
| 34 | 50.0% | 49.6% |
| 35 | 50.0% | 50.1% |
| 36 | 50.0% | 49.5% |
| 37 | 50.0% | 49.9% |
| 38 | 50.0% | 49.8% |
| 39 | 50.0% | 49.9% |
| 40 | 50.0% | 50.1% |
| 41 | 50.0% | 50.2% |
| 42 | 50.0% | 50.2% |
| 43 | 50.0% | 50.1% |
| 44 | 50.0% | 50.1% |
| 45 | 50.0% | 50.0% |
| 46 | 50.0% | 49.8% |
| 47 | 50.0% | 49.8% |
| 48 | 50.1% | 50.9% |
Картина совсем другая.
8й бит первого байта МАС адреса по-прежнему соответствует Unicast-природе SRC-адреса в probe request пакете.
7й бит в 92.2% случаев установлен в Local, т.е. с достаточной долей уверенности можно считать, что именно столько собранных адресов относится к рандомизированным, а менее 8% — к реальным. При этом распределение бит в OUI для таких реальных адресов примерно совпадает с данными предыдущей таблицы.
Какому производителю, по OUI, принадлежат рандомизированные адреса (т.е. с 7м битом в «1»)?
| Производитель по OUI | Доля среди всех адресов |
|---|---|
| не найден в базе IEEE | 62.45% |
| Google Inc. | 37.54% |
| остальные | 0.01% |
При этом все рандомизированные адреса, отнесенные к Google, принадлежат одному OUI c префиксом DA:A1:19. Что это за префикс? Давайте посмотрим в исходники Android.
private static final MacAddress BASE_GOOGLE_MAC = MacAddress.fromString("da:a1:19:0:0:0");
Стоковый андроид в поиске беспроводных сетей использует специальный, зарегистрированный OUI, один из немногих с установленным седьмым битом.
Вычислить реальный МАС из рандомного
Посмотрим там же:
private static final long VALID_LONG_MASK = (1L else < addr = (base.mAddr & OUI_MASK) | (NIC_MASK & r.nextLong()); >addr |= LOCALLY_ASSIGNED_MASK; addr &= ~MULTICAST_MASK; MacAddress mac = new MacAddress(addr); if (mac.equals(DEFAULT_MAC_ADDRESS)) < return createRandomUnicastAddress(base, r); >return mac; >
Адрес целиком, либо его младшие три байта, это чистый Random.nextLong(). «Патентованное восстановление реального МАС» — надувательство. С большой долей уверенности можно ожидать, что производители Android-телефонов применяют и другие, не зарегистрированные OUI. Исходников iOS у нас нет, но скорее всего там применен схожий алгоритм.
Вышесказанное не отменяет работу других механизмов деанонимизации Wi-Fi абонентов, основанных на анализе других полей probe request фрейма, или корреляции относительной частоты посылаемых устройством запросов. Однако достоверно отследить абонента внешними средствами крайне проблематично. Собираемые данные больше подойдут для анализа средней/пиковой нагрузки по местоположению и времени, на основе больших чисел, без привязки к конкретным устройствам и людям. Точные данные есть только у тех, кто «внутри», у самих производителей мобильных ОС, у установленных приложений.
Что может быть опасного в том, что кто-то другой узнает МАС-адрес вашего устройства? Для проводных и беспроводных сетей можно организовать атаку «отказ в обслуживании». Для беспроводного устройства, к тому же, с некоторой вероятностью можно зафиксировать момент появления в месте, где установлен сенсор. Подменой адреса можно попробовать «представиться» вашим устройством, что может сработать, только если не применяется дополнительных средств защиты (авторизация и/или шифрование). 99.9% людей здесь не о чем волноваться.
МАС-адрес сложнее, чем кажется, но проще, чем мог бы быть.
Data link layer — MAC — Aloha, CSMA
Стандарты IEEE определяют 48-разрядный MAC-адрес, который разделен на 4 части.
- Первые 24 бита содержат уникальный идентификатор организации или код производителя, который производитель получает в IEEE Registration Authority.
- Из них первый бит указывает, для одиночного или группового адресата (например, для передачи всем узлам сети) предназначен кадр.
- Второй бит указывает, является MAC-адрес локально или глобально администрируемым. Глобально администрируемый MAC-адрес является глобально уникальным и обычно зашит в аппаратуру, в то время как локально администрируемый MAC-адрес выбирается администратором сети и является локально уникальным в данной сети.
MAC-адрес используется для идентификации отправителя и получателя сообщения. В частности, MAC-адрес позволяет позволяет уникально идентифицировать каждый узел сети и доставлять данные только этому узлу.
NIC
Определение: Сетевая карта (англ. NIC — Network Interface Controller) — Компонент компьютера, отвечающий за подключение компьютера к сети. У каждой сетевой карты есть MAC-адрес, который ей присваивается изготовителем и является уникальным. Пакеты на канальном уровне всегда отправляются с указанием MAC-адреса отправителя и MAC-адреса получателя. Когда сетевая карта получает пакет, сравнивает MAC-адрес получателя пакета со своим MAC-адресом. Если они совпадают, то пакет обрабатывается, иначе — нет.
Пример работы канального уровня с более высокими уровнями
Пусть хотим отправить пакет на какой-то IP-адрес. Тогда:
- Если получатель находится в той же сети, то можем ему отправить. Иначе надо отправить пакет конфигурирующему роутеру.
- Роутер воспользуется протоколом ARP, чтобы определить MAC-адрес получателя и скажет отправителю этот адрес. Отправитель запомнит его и отправит на него пакет.
- Роутер отправляет на групповой MAC-адрес пакет с вопросом: «У кого IP x.x.x.x?»
- Этот пакет получают все узлы, но только один из них ответит, что у него, и пришлет роутеру ответ, указав в нем свой MAC-адрес.
Функции MAC
- MAC-адреса используются для контроля доступа. Узел настраивается так, чтобы принимать пакеты только от некоторого набора MAC-адресов. Так как MAC-адрес уникален, не получится заставить узел принять пакет от злоумышленника. Заметим, что нельзя сказать то же самое про IP-адрес, который можно без особых проблем подделать.
- DHCP сервера используют MAC-адрес, чтобы распознавать устройства и выдавать им фиксированный IP-адрес. То есть компьютер пришел на сервер, чтобы тот дал ему IP-адрес. Сервер смотрит на его MAC-адрес (в данный момент у узла нет другого адреса), выдает ему IP-адрес и запоминает, что такому IP-адресу соответствует такой MAC-адрес.
Алгоритмы управления доступом к среде
Каналы связи, являются ли они беспроводными или проводными, стоят достаточно дорого. Для получения выгоды поставщику услуг связи необходимо объединить множество пользователей при помощи достаточно ограниченных ресурсов. Для подобных задач и существуют следующие алгоритмы, которые переставляют собой некие методы мультиплексирования, с помощью которых услуги связи в рамках одной полосы пропускания предоставляются нескольким пользователям. При помощи этих алгоритмов достигается необходимая экономия масштаба.
Aloha
Алгоритм, разработанный в 1971 году. Был один вычислительный центр и много компьютеров, которые должны были взаимодействовать, отправляя сообщения вычислительному центру и получая сообщения от него. Компьютер отправлял данные по первому каналу. Если в этот момент никто больше не отправлял данные, то коллизии не произошло и вычислительный центр отправлял оповещение всем компьютерам, используя второй канал. Если же в этот момент еще один компьютер отправлял данные вычислительному центру, то произошла коллизия, и вычислительный центр получил испорченное сообщение (так как несколько сообщений были отправлены одновременно на одной частоте) и не отправлял оповещения. Если компьютер отправил сообщение и не получил оповещения в течение некоторого времени, то он отправлял сообщение еще раз по прошествии случайного промежутка времени. Важным фактом является то, что использовалась разделяемая среда для отправки данных с компьютеров на вычислительный центр.
Pure Aloha
Первая версия данного протокола. Компьютеры действовали следующем образом:
- Если есть данные для отправки, то отправь данные
- Если во время отправки данных были получены данные от другого компьютера, то произошла коллизия, и все отправлявшие в этот момент компьютеры должны отправить сообщения еще раз позже
Заметим, что данный протокол не проверяет занятость канала перед отправкой данных. Также довольно очевидным является тот факт, что среда передачи не используется с максимальной эффективностью, потому что коллизии могут происходить довольно часто, и каждая коллизия заканчивается повторной отправкой данных всеми участниками коллизии.
Slotted Aloha

Модификация протокола Aloha. Ось времени разбивалась на дискретные интервалы, названные слотами. Каждый компьютер последовательно отмерял границы слотов. Для синхронизации использовался специальный сигнал, передаваемый с широковещательной антенны всем компьютерам. При появлении данных для передачи компьютер задерживал передачу до начала следующего слота. Длительность слотов подбиралась таким образом, чтобы за один слот компьютер успевал отправить свои данные вычислительному центру и получить оповещение о получении данных от вычислительного центра.
CSMA
Определение: CSMA протокол (англ. Carrier Sense Multiple Access) — протокол MAC-уровня, в котором узел, желающий передать пакет данных, проверяет чистоту канала , то есть слушает шумы в передающей среде в течение заранее заданного периода времени. Узел может передать пакет, если передающая среда оценивается, как чистая. Виды CSMA
- CSMA/CD — CSMA with collision detection

Узел слушает передающую среду. Если кто-то другой передает, то ждем случайный промежуток времени. Если же среда свободна, то узел отправляет сообщение. Если во время передачи кадра компьютер обнаруживает другой сигнал, занимающий передающую среду (то есть произошла коллизия), то он отправляет сигнал преднамеренной помехи, чтобы другие узлы быстрее заметили, что произошла коллизия и прекратили передачу, и ждет в течение случайного промежутка времени прежде чем повторить отправку сигнала. Можно заметить, что тот факт, что передающая среда свободна до начала передачи, совсем не значит, что не произойдет коллизии в момент передачи, потому что другой узел тоже может посмотреть на состояние передающей среды в тот же момент времени, увидеть, что она свободна и тоже начать отправку. Но при этом на практике вероятность таких ситуаций ниже, и количество коллизий будет меньше. Также можно заметить, что для применения данного алгоритма нужно, чтобы каждый узел видел любой другой узел. Ниже описывается случай, в котором это не так. Именно поэтому данный алгоритм не работает с Wi-Fi.
- CSMA/CA — CSMA with collision avoidance
CSMA/CA Применяется для решения Hidden Node Problem. Протокол:
- Узел слушает передающую среду. Если кто-то другой передает, то ждет случайный промежуток времени.
- Узел отправляет RTS (Request To Send) сигнал управляющему узлу. Если он получает в ответ CTS (Clear To Send) сигнал, то отправляет данные. Иначе- ждет случайный промежуток времени.

В данном случае количество коллизий уменьшается, потому что сигнал CTS выдается узлом, который принимает сообщение. Помимо уменьшения числа коллизий, решается и проблема скрытого узла, поскольку отправляющему узлу достаточно видеть только принимающий узел, от которого он получит CTS. А видеть другой узел, который будет отправлять данные, уже нужно только принимающему узлу, чтобы отправлять CTS.
Ответы на экзаменационные вопросы интернет-курсов интуит (intuit): 267. Основы локальных сетей Вкаких топологиях применяется метод управления csma/CD?
Ответы на экзаменационные вопросы интернет—курсов ИНТУИТ (INTUIT): 333. Работа в современном офисе ABBYY .
Ответы на экзаменационные вопросы интернет-курсов интуит (intuit): 085. Администрирование web-серверов в iis
Экзаменационные вопросы
Ответы на экзаменационные вопросы интернет—курсов ИНТУИТ (INTUIT): 085. Администрирование web-серверов в IIS » .
Ответы на экзаменационные вопросы интернет-курсов интуит (intuit): 259. Алгоритмы и протоколы каналов и сетей передачи данных
Экзаменационные вопросы
Ответы на экзаменационные вопросы интернет—курсов ИНТУИТ (INTUIT): 259. Алгоритмы и протоколы каналов и сетей .
Ответы на экзаменационные вопросы интернет-курсов интуит (intuit): Вопросы безопасности в Lotus Notes и Domino 7
Экзаменационные вопросы
Ответы на экзаменационные вопросы интернет—курсов ИНТУИТ (INTUIT): Вопросы безопасности в Lotus Notes и Domino 7 Cookie .
Ответы на экзаменационные вопросы интернет-курсов интуит (intuit): 319. Основы работы с инструментами Яндекс
Экзаменационные вопросы
Ответы на экзаменационные вопросы интернет—курсов ИНТУИТ (INTUIT): 319. Основы работы с инструментами Яндекс .
Технические параметры коммутаторов
Менеджеры компании ответят на ваши вопросы, произведут расчет стоимости товаров и подготовят индивидуальное коммерческое предложение.
Задать вопрос
Технические параметры коммутаторов.
К основным техническим параметрам, которыми можно оценить коммутатор, построенный с использованием любой архитектуры, является скорость фильтрации (filtering) и скорость продвижения (forwarding).
Скорость фильтрации определяет количество кадров в секунду, с которыми коммутатор успевает проделать следующие операции:
- прием кадра в свой буфер;
- нахождения порта для адреса назначения кадра в адресной таблице;
- уничтожение кадра (порт назначения совпадает с портом-источником).
Скорость продвижения, по аналогии с предыдущим пунктом, определяет количество кадров в секунду, которые могут быть обработаны по следующему алгоритму:
- прием кадра в свой буфер,
- нахождения порта для адреса назначения кадра;
- передача кадра в сеть через найденный (по адресной таблице соответствия) порт назначения.
По умолчанию считается, что эти показатели измеряются на протоколе Ethernet для кадров минимального размера (длиной 64 байта). Так как основное время занимает анализ заголовка, то чем короче передаваемые кадры, тем более серьезную нагрузку они создают на процессор и шину коммутатора.
Следующими по значимости техническими параметрами коммутатора будут:
- пропускная способность (throughput);
- задержка передачи кадра.
- размер внутренней адресной таблицы.
- размер буфера (буферов) кадров;
- производительность коммутатора;
Пропускная способность измеряется количеством данных, переданных через порты в единицу времени. Естественно, что чем больше длина кадра (больше данных прикреплено к одному заголовку), тем больше должна быть пропускная способность. Так, при типичной для таких устройств «паспортной» скорости продвижения в 14880 кадров в секунду, пропускная способность составит 5.48 Мб/с на пакетах по 64 байта, и ограничение скорости передачи данных будет наложено коммутатором.
В то же время, при передаче кадров максимальной длины (1500 байт), скорость продвижения составит 812 кадров в секунду, а пропускная способность — 9,74 Мб/c. Фактически, ограничение на передачу данных будет определяться скоростью протокола Ethernet.
Задержка передачи кадра означает время, прошедшее с момента начала записи кадра в буфер входного порта коммутатора, до появления на его выходном порту. Можно сказать, что это время продвижения единичного кадра (буферизация, просмотр таблицы, принятие решения о фильтрации или продвижении, и получение доступа к среде выходного порта).
Величина задержки очень сильно зависит от способа продвижения кадров. Если применяется метод коммутации «на лету», то задержки невелики и составляют от 10 мкс до 40 мкс, в то время как при полной буферизации — от 50 мкс до 200 мкс (в зависимости от длины кадров).
В случае большой загруженности коммутатора (или даже одного из его портов), получается, что даже при коммутации «на лету» большая часть входящих кадров вынужденно буферизируется. Поэтому, наиболее сложные и дорогие модели имеют возможность автоматической смены механизма работы коммутатора (адаптацию) в зависимости от нагрузки и характера трафика.
Размер адресной таблицы (САМ-таблицы). Определяет максимальное количество MAC-адресов, которые содержатся в таблице соответствия портов и МАС-адресов. В технической документации обычно приводится на один порт, как число адресов, но иногда бывает, что указывается размер памяти под таблицу в килобайтах (одна запись занимает не менее 8 кб, и «подменить» число весьма выгодно недобросовестному производителю).
Для каждого порта САМ-таблица соответствия может быть разной, и при ее переполнении наиболее старая запись стирается, а новая — заносится в таблицу. Поэтому при превышении количества адресов сеть может продолжить работу, но при этом сильно замедлиться работа самого коммутатора, а подключенные к нему сегменты будут загружены избыточным трафиком.
Раньше встречались модели (например, 3com SuperStack II 1000 Desktop), в которых размер таблицы позволял хранить один или несколько адресов, из-за чего приходилось относиться очень внимательно к дизайну сети. Однако, сейчас даже самые дешевые настольные коммутаторы имеют таблицу из 2-3К адресов (а магистральные еще больше), и этот параметр перестал быть узким местом технологии.
Объем буфера. Он необходим коммутатору для временного хранения кадров данных в тех случаях, когда нет возможности сразу их передать на порт назначения. Понятно, что трафик неравномерен, всегда есть пульсации, которые нужно сглаживать. И чем больше объем буфера, тем большую нагрузку он может «принять на себя».
Простые модели коммутаторов имеют буферную память в несколько сотен килобайт на порт, в более дорогих моделях это значение достигает нескольких мегабайт.
Производительность коммутаторов. Прежде всего, надо отметить, что коммутатор — сложное многопортовое устройство, и просто так, по каждому параметру в отдельности, нельзя оценить его пригодность к решению поставленной задачи. Существует большое количество вариантов трафика, с разной интенсивностью, размерами кадров, распределением по портам, и т.п. Общей методики оценки (эталонного трафика) до сих пор нет, и используются разнообразные «корпоративные тесты». Они достаточно сложны, и в данной книге придется ограничиться только общими рекомендациями.
Идеальный коммутатор должен передавать кадры между портами с той же самой скоростью, с которой их генерируют подключенный узлы, без потерь, и не вносить дополнительных задержек. Для этого внутренние элементы коммутатора (процессоры портов, межмодульная шина, центральный процессор и т.п.) должны справляться с обработкой поступающего трафика.
В то же время, на практике есть много вполне объективных ограничений на возможности свитчей. Классический случай, когда несколько узлов сети интенсивно взаимодействуют с одним сервером, неизбежно вызовет уменьшение реальной производительности из-за фиксированной скорости протокола.
На сегодня производители вполне освоили производство коммутаторов (10/100baseT), даже очень дешевые модели имеют достаточную пропускную способность, и достаточно быстрые процессоры. Проблемы начинаются, когда нужно применять более сложные методы ограничений скорости подключенных узлов (обратного давления), фильтрации, и других протоколов, рассмотренных ниже.
В заключение, нужно сказать, что лучшим критерием по-прежнему остается практика, когда коммутатор показывает свои возможности в реальной сети.
Дополнительные возможности коммутаторов.
Как уже говорилось выше, современные коммутаторы имеют настолько много возможностей, что обычная коммутация (казавшаяся технологическим чудом десять лет назад) уходит на второй план. Действительно, быстро, и относительно качественно, коммутировать кадры умеют модели стоимостью от $50 до $5000. Различие идет именно по дополнительным возможностям.
Понятно, что наибольшее количество дополнительных возможностей имеют управляемые коммутаторы. Далее в описании будут специально выделены опции, которые обычно нельзя корректно реализовать на настраиваемых коммутаторах.
Соединение коммутаторов в стек. Эта дополнительная опция одна из наиболее простых, и широко используемых в больших сетях. Ее смысл — соединить несколько устройств скоростной общей шиной для повышения производительности узла связи. При этом иногда могут быть использованы опции единого управления, мониторинга и диагностики.
Надо заметить, что не все вендоры используют технологию соединения коммутаторов при помощи специальных портов (стекирование). В этой области все большее распространение получают линии Gigabit Ethernet, или при помощи группировки нескольких (до 8) портов в один канал связи.
Протокол покрывающего дерева (Spanning Tree Protocol, STP). Для простых ЛВС соблюдать в процессе эксплуатации правильную топологию Ethernet (иерархическая звезда) не сложно. Но при большой инфраструктуре это становится серьезной проблемой — неправильная кроссировка (замыкание сегмента в кольцо) может привести к остановке функционирования всей сети или ее части. Причем найти место аварии может быть совсем не просто.
С другой стороны, подобные избыточные связи часто удобны (многие транспортные сети передачи данных построены именно по кольцевой архитектуре), и могут сильно повысить надежность — при наличии корректного механизма обработки петель.
Для решения этой задачи используется Spanning Tree Protocol (STP), при котором коммутаторы автоматически создают активную древовидную конфигурацию связей, находя ее с помощью обмена служебными пакетами (Bridge Protocol Data Unit, BPDU), которые помещаются в поле данных кадра Ethernet. В результате, порты, на которых замыкаются петли, блокируются, но могут быть автоматически включены в случае разрыва основного канала.
Таким образом, технология STA обеспечивает поддержку резервных связей в сети сложной топологии, и возможность ее автоматическую изменения без участия администратора. Такая возможность более чем полезна в больших (или распределенных) сетях, но в силу своей сложности редко используется в настраиваемых коммутаторах.
Способы управления входящим потоком. Как уже отмечалось выше, при неравномерной загрузке коммутатора он просто физически не сможет пропустить через себя поток данных на полной скорости. Но просто отбрасывать лишние кадры по понятным причинам (например разрыв TCP сессий) крайне не желательно. Поэтому приходится использовать механизм ограничения интенсивности передаваемого узлом трафика.
Возможно два способа — агрессивный захват среды передачи (например, коммутатор может не соблюдать стандартные временные интервалы). Но этот способ годится только для «общей» среды передачи, редко используемой в коммутируемом Ethernet. Этим же недостатком обладает метод обратного давления (backpressure), при котором узлу передаются фиктивные кадры.
Поэтому на практике востребована технология Advanced Flow Control (описанна в стандарте IEEE 802.3х), смысл которой в передаче коммутатором узлу специальных кадров «пауза».
Фильтрация трафика. Часто бывает очень полезно задавать на портах коммутатора дополнительных условий фильтрации кадров входящих или исходящих кадров. Таким образом можно ограничивать доступ определенных групп пользователей к определенным сервисам сети, используя МАС-адрес, или тэг виртуальной сети.
Как правило, условия фильтрации записываются в виде булевских выражений, формируемых с помощью логических операций AND и OR.
Сложная фильтрация требует от коммутатора дополнительной вычислительной мощности, и при ее нехватке может существенно снизить производительность устройства.
Возможность фильтрации очень важна для сетей, в которых конечными пользователями выступают «коммерческие» абоненты, поведение которых невозможно регулировать административными мерами. Так как они могут предпринимать несанкционированные деструктивные действия (например, подделывать IP или MAC адрес своего компютера), желательно предоставить для этого минимум возможностей.
Коммутация третьего уровня (Layer 3). Из-за быстрого роста скоростей, и широкого применения коммутаторов, на сегодня образовался видимый разрыв между возможностями коммутации и классической маршрутизацией при помощи универсальных компьютеров. Наиболее логично в этой ситуации дать управляемому коммутатору возможность анализировать кадры на третьем уровне (по 7-ми уровневой модели OSI). Такая упрощенная маршрутизация дает возможность значительно поднять скорость, более гибко управлять трафиком большой ЛВС.
Однако в транспортных сетях передачи данных применение коммутаторов пока очень ограничено, хотя тенденция к стиранию их отличий от маршрутизаторов по возможностям прослеживается достаточно явно.
Управление и возможности мониторинга. Обширные дополнительные возможности подразумевают развитые и удобные средства управления. Ранее простые устройства могли управляться несколькими кнопками через небольшой цифровой индикатор, или через консольный порт. Но это уже в прошлом — последнее время выпускаются коммутаторы с управлением через обычный порт 10/100baseT при помощи Telnet’а, Веб-браузера, или по протоколу SNMP. Если первые два способа по большому счету являются лишь удобным продолжением обычных стартовых настроек, то SNMP позволяет использовать коммутатор как поистине универсальный инструмент.
Для Etherenet интересны только его расширения — RMON и SMON. Ниже описан RMON-I, кроме него существует RMON-II (затрагивающий более высокие уровни OSI). Более того, в свитчах «среднего уровня» как правило, реализованы только группы RMON 1-4 и 9.
Принцип работы следующий: RMON-агенты на свитчах шлют информацию на центральный сервер, где специальное программное обеспечение (например, HP OpenView) обрабатывает информацию, представляя ее в удобном для администрирования виде.
Причем процессом можно управлять — удаленным изменением настроек привести работу сети в норму. Кроме мониторинга и управления, при помощи SNMP можно строить систему биллинга. Пока это выглядит несколько экзотично, но примеры реального использования данного механизма уже есть.
Стандарт RMON-I MIB описывает 9 групп объектов:
- Statistics — текущие накопленные статистические данные о характеристиках кадров, количестве коллизий, ошибочных кадров (с детализацией по типам ошибок) и т.п.
- History — статистические данные, сохраненные через определенные промежутки времени для последующего анализа тенденций их изменений.
- Alarms — пороговые значения статистических показателей, при превышении которых агент RMON генерирует определенное событие. Реализация этой группы требует реализации группы Events — события.
- Host — данные о хостах сети, обнаруженных в результате анализа MAC-адресов кадров, циркулирующих в сети.
- Host TopN — таблица N хостов сети, имеющих наивысшие значения заданных статистических параметров.
- Traffic Matrix — статистика о интенсивности трафика между каждой парой хостов сети, упорядоченная в виде матрицы.
- Filter — условия фильтрации пакетов; пакеты, удовлетворяющие заданному условию, могут быть либо захвачены, либо могут генерировать события.
- Packet Capture — группа пакетов, захваченных по заданным условиям фильтрации.
- Event — условия регистрации событий и оповещения о событиях.
Более подробное рассмотрение возможностей SNMP потребует не меньшего объема, чем данная книга, поэтому будет целесообразно остановиться на этом, весьма общем описании этого сложного, но мощного инструмента .
Виртуальные сети (Virtual Local-Area Network, VLAN). Пожалуй, это наиболее важная (особенно для домашних сетей), и широко используемая возможность современных коммутаторов. Надо отметить, что существует несколько принципиально отличных способов построения виртуальных сетей с помощью коммутаторов. В связи с большим значением для Ethernet-провайдинга, ее развернутое описание технологии будет сделано в одной из следующих глав.
Краткий же смысл — средствами коммутаторов (2 уровня модели OSI) сделать несколько виртуальных (независимых друг от друга сетей) на одной физической ЛВС Ethernet, предоставив возможность центральному маршрутизатору управлять портами (или группами портов) на отдаленных коммутаторах. Что собственно и делает VLAN очень удобным средством для оказания услуг передачи данных (провайдинга).
