Возможности современных коммутаторов по организации виртуальных сетей. Виртуальные локальные сети (VLAN)

Если задуматься о том, как же работают виртуальные сети, то в голову приходит Мысль, что все дело не в отправляющей машине, а в самом кадре ВЛВС. Если бы был какой-нибудь способ идентифицировать ВЛВС по заголовку кадра, отпала бы необходимость просмотра его содержимого. По крайней мере, в новых сетях tHna 802.11 или 802.16 вполне можно было бы просто добавить специальное поле заголовка. Вообще-то Идентификатор кадра в стандарте 802.16 -- это как раз нечто в этом духе. Но что делать с Ethernet -- доминирующей сетью, у которой нет никаких «запасных» полей, которые можно было бы отдать под идентификатор виртуальной сети? Комитет IEEE 802 озаботился этим вопросом в 1995 году. После долгих дискуссий было сделано невозможное -- изменен формат заголовка кадра Ethernet!? Новый формат было опубликован под именем 802.1Q, в 1998 году. В заголовок кадра был вставлен флаг ВЛВС, который мы сейчас вкратце рассмотрим. Понятно, что внесение изменений в нечто уже устоявшееся, такое как Ethernet, должно быть произведено каким-то нетривиальным образом. Встают, например, следующие вопросы:

  • 1. И что, теперь надо будет выбросить на помойку несколько миллионов уже существующих сетевых карт Ethernet?
  • 2. Если нет, то кто будет заниматься генерированием новых полей кадров?
  • 3. Что произойдет с кадрами, которые уже имеют максимальный размер?

Конечно, комитет 802 тоже был озабочен этими вопросами, и решение, несмотря ни на что, было найдено.

Идея состоит в том, что на самом деле поля ВЛВС реально используются только мостами да коммутаторами, а не машинами пользователей. Так, скажем, сеть не очень-то волнует их наличие в каналах, идущих от оконечных станций, до тех пор, пока кадры не доходят до мостов или коммутаторов. Таким образом, чтобы была возможна работа с виртуальными сетями, про их существование должны знать мосты и коммутаторы, но это требование и так понятно. Теперь же мы выставляем еще одно требование: они должны знать про существование 802.1Q. Уже выпускается соответствующее оборудование. Что касается старых сетевых, карт Ethernet, то выкидывать их не приходится. Комитет 802.3 никак не мог заставить людей изменить поле Тип на поле Длина. Вы можете себе представить, какова была бы реакция на заявление о том, что все существующие карты Ethernet можно выбросить? Тем не менее, на рынке появляются новые модели, и есть надежда, что они теперь будут 802.1Ј)-совместимыми и смогут корректно заполнять поля идентификации виртуальных сетей.

Если отправитель не генерирует поле признака виртуальной сети, то кто же этим занимается? Ответ таков: первый встретившийся на пути мост или коммутатор, обрабатывающий кадры виртуальных сетей, вставляет это поле, а последний -- вырезает его. Но как он узнает, в какую из виртуальных сетей передать? локальная сеть маршрутизатор трафик

Для этого первое устройство, которое вставляет поле ВЛВС, может присвоить номер виртуальной сети порту, проанализировать МАС-адрес или (не дай Бог, конечно) подсмотреть содержимое поля данных. Пока все не перейдут на Ethernet-карты, совместимые со стандартом 802.1Q, все именно так и будет. Остается надеяться на то, что все сетевые платы гигабитного Ethernet будут придерживаться стандарта 802.1Q, с самого начала их производства, и таким образом всем пользователям гигабитного Ethernet этой технологии автоматически станут доступны возможности 802.1Q. Что касается проблемы кадров, длина которых превышает 1518 байт, то в стандарте 802.1Q она решается путем повышения лимита до 1522 байт. При передаче данных в системе могут встречаться как устройства, которым сокращение ВЛВС не говорит ровным счетом ни о чем (например, классический или быстрый Ethernet), так и совместимая с виртуальными сетями аппаратура (например, гигабитный Ethernet). Здесь затененные символы означают ВЛВС-совместимые устройства, а пустые квадратики -- все остальные. Для простоты мы предполагаем, что все коммутаторы ВЛВС-совместимы. Если же это не так, то первый такой ВЛВС-совместимый коммутатор добавит в кадр признак виртуальной сети, основываясь на информации, взятой из MAC- или IP-адреса.

ВЛВС-совместимые сетевые платы Ethernet генерируют кадры с флагами (то есть кадры стандарта 802.1Q), и дальнейшая маршрутизация производится уже с использованием этих флагов. Для осуществления маршрутизации коммутатор, как и раньше, должен знать, какие виртуальные сети доступны на всех портах. Информация о том, что кадр принадлежит серой виртуальной сети, еще, по большому счету, ни о чем не говорит, поскольку коммутатору еще нужно знать, какие порты соединены с машинами серой виртуальной сети. Таким образом, коммутатору нужна таблица соответствия портов виртуальным сетям, из которой также можно было бы узнать, являются ли порты ВЛВС совместимыми. Когда обычный, ничего не подозревающий о существовании виртуальных сетей компьютер посылает кадр на коммутатор виртуальной сети, последний генерирует новый кадр, вставляя в него флаг ВЛВС. Информацию для этого флага он получает с виртуальной сети отправителя (для ее определения используется номер порта, MAC- или IP-адрес.) Начиная с этого момента никто больше не переживает из-за того, что отправитель является машиной, не поддерживающей стандарт 802.1Q, Таким же образом коммутатор, желающий доставить кадр с флагом на такую машину, должен привести его к соответствующему формату. Теперь рассмотрим собственно формат 802.1Q. Единственное изменение -- это пара 2-байтовых полей. Первое называется Идентификатор протокола ВЛВС. Оно всегда имеет значение 0x8100. Поскольку это число превышает 1500, то все сетевые карты Ethernet интерпретируют его как «тип», а не как «длину». Неизвестно, что будет делать карта, несовместимая с 802.1Q, поэтому такие кадры, по идее, не должны к ней никоим образом попадать.

Во втором двухбайтовом поле есть три вложенных поля. Главным из них является идентификатор ВЛВС, который занимает 12 младших битов. Он содержит ту информацию, из-за которой все эти преобразования форматов, собственно, и были затеяны: в нем указано, какой виртуальной сети принадлежит кадр. Трехбитовое поле Приоритет не имеет совершенно ничего общего с виртуальными сетями. Просто изменение формата Ethernet-кадра -- это такой ежедекадный ритуал, который занимает три года и исполняется какой-то сотней людей. Почему бы не оставить память о себе в виде трех дополнительных бит, да еще и с таким привлекательным назначением. Поле Приоритет позволяет различать трафик с жесткими требованиями к реальности масштаба времени, трафик со средними требованиями и трафик, для которого время передачи не критично. Это позволяет обеспечить более высокое качество обслуживания в Ethernet. Оно используется также при передаче голоса по Ethernet (хотя вот уже четверть века в IP имеется подобное поле, и никому никогда не требовалось его использовать). Последний бит, CFI (Canonical Format Indicator -- индикатор классического формата), следовало бы назвать Индикатором эгоизма компании. Изначально он предназначался для того, чтобы показывать, что применяется формат МАС-адреса с прямым порядком байтов (или, соответственно, с обратным порядком), однако в пылу дискуссий об этом как-то забыли. Его присутствие сейчас означает, что поле данных содержит усохший кадр 802.5, который ищет еще одну сеть формата 802.5 и в Ethernet попал совершенно случайно. То есть на самом деле он просто использует Ethernet в качестве средства передвижения. Все это, конечно, практически никак не связано с обсуждаемыми в данном разделе виртуальными сетями. Но политика комитета стандартизации не сильно отличается от обычной политики: если ты проголосуешь за введение в формат моего бита, то я проголосую за твой бит. Как уже упоминалось ранее, когда кадр с флагом виртуальной сети приходит на ВЛВС-совместимый коммутатор, последний использует идентификатор виртуальной сети в качестве индекса таблицы, в которой он ищет, на какой бы порт послать кадр. Но откуда берется эта таблица? Если она разрабатывается вручную, это означает возврат в исходную точку: ручное конфигурирование коммутаторов. Вся прелесть прозрачности мостов состоит в том, что они настраиваются автоматически и не требуют для этого никакого вмешательства извне. Было бы очень стыдно потерять это свойство. К счастью, мосты для виртуальных сетей также являются самонастраивающимися. Настройка производится на основе информации, содержащейся во флагах приходящих кадров. Если кадр, помеченный как ВЛВС 4, приходит на порт 3, значит, несомненно, одна из машин, подключенных к этому порту, находится в виртуальной сети 4. Стандарт 802.1Q вполне четко поясняет, как строятся динамические таблицы. При этом делаются ссылки на соответствующие части алгоритма Перлмана (Perlman), который вошел в стандарт 802.ID. Прежде чем завершить разговор о маршрутизации в виртуальных сетях, необходимо сделать еще одно замечание. Многие пользователи сетей Интернет и Ethernet фанатично привязаны к сетям без установления соединения и неистово противопоставляют их любым системам, в которых есть хотя бы намек на соединение на сетевом уровне или уровне передачи данных. Однако в виртуальных сетях один технический момент как-раз-таки очень сильно напоминает установку соединения. Речь идет о том, что работа виртуальной сети невозможна без того, чтобы в каждом кадре был идентификатор, использующийся в качестве индекса таблицы, встроенной в коммутатор. По этой таблице определяется дальнейший вполне определенный маршрут кадра. Именно это и происходит в сетях, ориентированных на соединение. В системах без установления соединения маршрут определяется по адресу назначения, и там отсутствуют какие-либо идентификаторы конкретных линий, через которые должен пройти кадр.

В 1980 году в институте IEEE был организован "Комитет 802 по стандартизации локальных сетей", в результате работы которого было принято семейство стандартов IEEE 802.х, которые содержат рекомендации для проектирования нижних уровней локальных сетей. Позже результаты его работы легли в основу комплекса международных стандартов ISO 8802-1...5. Эти стандарты были созданы на основе очень распространенных фирменных стандартов сетей Ethernet, ArcNet и Token Ring.

(Помимо IEEE в работе по стандартизации протоколов локальных сетей принимали участие и другие организации. Так для сетей, работающих на оптоволокне, американским институтом по стандартизации ANSI был разработан стандарт FDDI, обеспечивающий скорость передачи данных 100 Мб/с. Работы по стандартизации протоколов ведутся также ассоциацией ECMA (European Computer Manufacturers Association), которой приняты стандарты ECMA-80, 81, 82 для локальной сети типа Ethernet и впоследствии стандарты ECMA-89, 90 по методу передачи маркера.)

Стандарты семейства IEEE 802.x охватывают только два нижних уровня семиуровней модели OSI - физический и канальный. Это связано с тем, что именно эти уровни в наибольшей степени отражают специфику локальных сетей. Старшие же уровни, начиная с сетевого, в значительной степени имеют общие черты как для локальных, так и для глобальных сетей.

Специфика локальных сетей нашла также свое отражение в разделении канального уровня на два подуровня:

подуровень управления доступом к среде (Media Access Control, MAC)

подуровень логической передачи данных (Logical Link Control, LLC).

MAC-уровень появился из-за существования в локальных сетях разделяемой среды передачи данных. Именно этот уровень обеспечивает корректное совместное использование общей среды, предоставляя ее в соответствии с определенным алгоритмом в распоряжение той или иной станции сети. После того, как доступ к среде получен, ею может пользоваться следующий подуровень, организующий надежную передачу логических единиц данных - кадров информации. В современных локальных сетях получили распространение несколько протоколов MAC-уровня, реализующих различные алгоритмы доступа к разделяемой среде. Эти протоколы полностью определяют специфику таких технологий как Ethernet, Token Ring, FDDI, 100VG-AnyLAN.

Уровень LLC отвечает за достоверную передачу кадров данных между узлами, а также реализует функции интерфейса с прилегающим к нему сетевым уровнем. Для уровня LLC также существует несколько вариантов протоколов, отличающихся наличием или отсутствием на этом уровне процедур восстановления кадров в случае их потери или искажения, то есть отличающихся качеством транспортных услуг этого уровня.

Протоколы уровней MAC и LLC взаимно независимы - каждый протокол MAC-уровня может применяться с любым типом протокола LLC-уровня и наоборот.

Стандарт IEEE 802 содержит несколько разделов:

В разделе 802.1 приводятся основные понятия и определения, общие характеристики и требования к локальным сетям.

Раздел 802.2 определяет подуровень управления логическим каналом llc.

Разделы 802.3 - 802.5 регламентируют спецификации различных протоколов подуровня доступа к среде MAC и их связь с уровнем LLC:

стандарт 802.3 описывает коллективный доступ с опознаванием несущей и обнаружением конфликтов (Carrier sense multiple access with collision detection - CSMA/CD), прототипом которого является метод доступа стандарта Ethernet;

стандарт 802.4 определяет метод доступа к шине с передачей маркера (Token bus network), прототип - ArcNet;

стандарт 802.5 описывает метод доступа к кольцу с передачей маркера (Token ring network), прототип - Token Ring.

Для каждого из этих стандартов определены спецификации физического уровня, определяющие среду передачи данных (коаксиальный кабель, витая пара или оптоволоконный кабель), ее параметры, а также методы кодирования информации для передачи по данной среде.

Все методы доступа используют протоколы уровня управления логическим каналом LLC, описанным в стандарте 802.2.

Описанные два подхода основаны только на добавлении дополнительной информации к адресным таблицам коммутатора и не используют возможности встраивания информации о принадлежности кадра к виртуальной сети в передаваемый кадр. Метод организации VLAN на основе меток – тэгов, использует дополнительные поля кадра для хранения информации о принадлежности кадра при его перемещениях между коммутаторами сети.

Стандарт IEEE 802.1q определяет изменения в структуре кадра Ethernet, позволяющие передавать информацию о VLAN по сети.

С точки зрения удобства и гибкости настроек, VLAN на основе меток является лучшим решением, по сравнению с ранее описанными подходами. Его основные преимущества:

· Гибкость и удобство в настройке и изменении – можно создавать необходимые комбинации VLAN как в пределах одного коммутатора, так и во всей сети, построенной на коммутаторах с поддержкой стандарта 802.1q. Способность добавления меток позволяет VLAN распространяться через множество 802.1q-совместимых коммутаторов по одному физическому соединению.

· Позволяет активизировать алгоритм покрывающего дерева (Spanning Tree) на всех портах и работать в обычном режиме. Протокол Spanning Tree оказывается весьма полезным для применения в крупных сетях, построенных на нескольких коммутаторах, и позволяет коммутаторам автоматически определять древовидную конфигурацию связей в сети при произвольном соединении портов между собой. Для нормальной работы коммутатора требуется отсутствие замкнутых маршрутов в сети. Эти маршруты могут создаваться администратором специально для образования резервных связей или же возникать случайным образом, что вполне возможно, если сеть имеет многочисленные связи, а кабельная система плохо структурирована или документирована. С помощью протокола Spanning Tree коммутаторы после построения схемы сети блокируют избыточные маршруты, таким образом, автоматически предотвращается возникновение петель в сети.

· Способность VLAN 802.1q добавлять и извлекать метки из заголовков пакетов позволяет VLAN работать с коммутаторами и сетевыми адаптерами серверов и рабочих станций, которые не распознают метки.

· Устройства разных производителей, поддерживающие стандарт могут работать вместе, не зависимо от какого-либо фирменного решения.

· Не нужно применять маршрутизаторы. Чтобы связать подсети на сетевом уровне, достаточно включить нужные порты в несколько VLAN, что обеспечит возможность обмена трафиком. Например, для организации доступа к серверу из различных VLAN, нужно включить порт коммутатора, к которому подключен сервер, во все подсети. Единственное ограничение – сетевой адаптер сервера должен поддерживать стандарт IEEE 802.1q.

В силу указанных свойств, VLAN на базе тэгов используются на практике гораздо чаще других типов VLAN.

5.6. Алгоритм покрывающего дерева Spanning Tree

Один из методов, использующийся для повышения отказоустойчивости компьютерной сети, это Spanning Tree Protocol (STP) – протокол связующего дерева (IEEE 802.1d). Разработанный достаточно давно, в 1983 г., он до сих пор остается актуальным. В сетях Ethernet, коммутаторы поддерживают только древовидные связи, т.е. которые не содержат петель. Это означает, что для организации альтернативных каналов требуются особые протоколы и технологии, выходящие за рамки базовых, к которым относится Ethernet.

Если для обеспечения избыточности между коммутаторами создается несколько соединений, то могут возникнуть петли. Петля предполагает существование нескольких маршрутов по промежуточным сетям, а сеть с несколькими маршрутами между источником и приемником отличается повышенной устойчивостью к нарушениям. Хотя наличие избыточных каналов связи очень полезно, петли, тем не менее, создают проблемы, самые актуальные из которых:

· Широковещательные штормы – широковещательные кадры будут бесконечно передаваться по сетям с петлями, используя всю доступную полосу пропускания сети и блокируя передачу других кадров во всех сегментах.

· Множественные копии кадров - коммутатор может получить несколько копий одного кадра, одновременно приходящих из нескольких участков сети. В этом случае таблица коммутации не сможет определить расположение устройства, потому что коммутатор будет получать кадр на несколько портов. Может случиться так, что коммутатор вообще не сможет переслать кадр, т.к. будет постоянно обновлять таблицу коммутации.

Для решения этих проблем и был разработан протокол связующего дерева.

Алгоритм Spanning Tree (STA) позволяет коммутаторам автоматически определять древовидную конфигурацию связей в сети при произвольном соединении портов между собой.

Коммутаторы, поддерживающие протокол STP автоматически создают древовидную конфигурацию связей без петель в компьютерной сети. Такая конфигурация называется покрывающим деревом - Spanning Tree (иногда ее называют остовым деревом). Конфигурация покрывающего дерева строится коммутаторами автоматически с использованием обмена служебными пакетами.

Вычисление связующего дерева происходит при включении коммутатора и при изменении топологии. Эти вычисления требуют периодического обмена информацией между коммутаторами связующего дерева, что достигается при помощи специальных пакетов, называемых блоками данных протокола моста – BPDU (Bridge Protocol Data Unit).

Пакеты BPDU содержат основную информацию, необходимую для построения топологии сети без петель:

· Идентификатор коммутатора, на основании которого выбирается корневой коммутатор

· Расстояние от коммутатора-источника до корневого коммутатора (стоимость корневого маршрута)

· Идентификатор порта

Пакеты BPDU помещаются в поле данных кадров канального уровня, например, кадров Ethernet. Коммутаторы обмениваются BPDU через равные интервалы времени (обычно 1-4с). В случае отказа коммутатора (что приводит к изменению топологии) соседние коммутаторы, не получив пакет BPDU в течение заданного времени, начинают пересчет связующего дерева.

Современные коммутаторы также поддерживают протокол Rapid STP (IEEE 802.1w), который обладает лучшим временем сходимости по сравнению с STP (меньше 1 секунды). 802.1w обратно совместим с 802.1d.

Сравнение протоколов STP 802.1d и RSTP 802.1w.

5.7. Агрегирование портов и создание высокоскоростных сетевых магистралей

Агрегирование портов (Port Trunking) - это объединение нескольких физических каналов (Link Aggregation) в одну логическую магистраль. Используется для объединения вместе нескольких физических портов с целью образования высокоскоростного канала передачи данных и позволяет активно задействовать избыточные альтернативные связи в локальных сетях.

В отличие от протокола STP (Spanning Tree – протокол покрывающего дерева), при агрегировании физических каналов все избыточные связи остаются в рабочем состоянии, а имеющийся трафик распределяется между ними для достижения баланса нагрузки. При отказе одной из линий, входящих в такой логический канал, трафик распределяется между оставшимися линиями.

Включенные в агрегированный канал порты называются членами группы. Один из портов в группе выступает в качестве «связывающего». Поскольку все члены группы в агрегированном канале должны быть настроены для работы в одинаковом режиме, все изменения настроек, произведенные по отношению к «связывающему» порту, относятся ко всем членам группы. Таким образом, для настройки портов в группе необходимо только настроить «связывающий» порт.

Важным моментом при реализации объединения портов в агрегированный канал является распределение трафика по ним. Если пакеты одного сеанса будут передаваться по разным портам агрегированного канала, то может возникнуть проблема на более высоком уровне протокола OSI. Например, если два или более смежных кадров одного сеанса станут передаваться через разные порты агрегированного канала, то из-за неодинаковой длины очередей в их буферах может возникнуть ситуация, когда из-за неравномерной задержки передачи кадра, более поздний кадр обгонит своего предшественника. Поэтому в большинстве реализаций механизмов агрегирования используются методы статического, а не динамического распределения кадров по портам, т.е. закрепление за определенным портом агрегированного канала потока кадров определенного сеанса между двумя узлами. В этом случае все кадры будут проходить через одну и ту же очередь и их последовательность не изменится. Обычно при статическом распределении выбор порта для конкретного сеанса выполняется на основе выбранного алгоритма агрегирования портов, т.е. на основании некоторых признаков поступающих пакетов. В зависимости от используемой для идентификации сеанса информации существуют 6 алгоритмов агрегирования портов:

1. МАС-адрес источника;

2. МАС-адрес назначения;

3. МАС-адрес источника и назначения;

4. IP-адрес источника;

5. IP-адрес назначения;

6. IP-адрес источника и назначения.

Агрегированные линии связи можно организовать с любым другим коммутатором, поддерживающим потоки данных точка-точка по одному порту агрегированного канала.

Объединение каналов следует рассматривать как вариант настройки сети, используемый преимущественно для соединений «коммутатор-коммутатор» или «коммутатор – файл-сервер», требующих более высоких скорости передачи, чем может обеспечить одиночная линия связи. Также эту функцию можно применять для повышения надежности важных линий. В случае повреждения линии связи объединенный канал быстро перенастраивается (не более чем за 1 с), а риск дублирования и изменения порядка кадров незначителен.

Программное обеспечение современных коммутаторов поддерживает два типа агрегирования каналов связи: статическое и динамическое. При статическом агрегировании каналов все настройки на коммутаторах выполняются вручную. Динамическое агрегирование каналов основано на спецификации IEEE 802.3ad, которая использует протокол контроля агрегированных линий связи LACP (Link Aggregation Control Protocol) для того, чтобы проверять конфигурацию каналов и направлять пакеты в каждую из физических линий. Кроме этого, протокол LACP описывает механизм добавления и изъятия каналов из единой линии связи. Для этого, при настройке на коммутаторах агрегированного канала связи, соответствующие порты одного коммутатора должны быть сконфигурированы как «активные», а другого коммутатора как «пассивные». «Активные» порты LACP выполняют обработку и рассылку его управляющих кадров. Это позволяет устройствам, поддерживающим LACP, договориться о настройках агрегированного канала и иметь возможность динамически изменять группу портов, т.е. добавлять или исключать из нее порты. «Пассивные» порты обработки управляющих кадров LACP не выполняют.

Стандарт IEEE 802.3ad применим для всех типов Ethernet-каналов, и с его помощью можно строить даже мультигигабитные линии связи, состоящие из нескольких каналов Gigabit Ethernet.

5.8. Обеспечение качества обслуживания (QoS)

Приоритетная обработка кадров (802.1р)

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


Коммутатор обычно ведет для каждого входного и выходного порта не одну, а несколько очередей, причем каждая очередь имеет свой приоритет обработки. При этом коммутатор может быть сконфигурирован, например, так, чтобы передавать один низкоприоритетный пакет на каждые 10 высокоприоритетных пакетов.

Поддержка приоритетной обработки может особенно пригодиться для приложений, предъявляющих различные требования к допустимым задержкам кадров и к пропускной способности сети для потока кадров.

Способность сети обеспечивать различные уровни обслуживания, запрашиваемые теми или иными сетевыми приложениями, может быть классифицирована по трем различным категориям:

· Негарантированная доставка данных (best effort service). Обеспечение связности узлов сети без гарантии времени и самого факта доставки пакетов в точку назначения. На самом деле негарантированная доставка не является частью QoS, поскольку отсутствует гарантия качества обслуживания и гарантия доставки пакетов.

· Дифференцированное обслуживание (differentiated service). Дифференцированное обслуживание предполагает разделение трафика на классы на основе требований к качеству обслуживания. Каждый класс трафика дифференцируется и обрабатывается сетью в соответствии с заданными для этого класса механизмами QoS (быстрее обрабатывается, выше средняя полоса пропускания, ниже средний уровень потерь). Подобная схема обеспечения качества обслуживания часто называется схемой CoS (Class of Service). Дифференцированное обслуживание само по себе не предполагает обеспечение гарантий предоставляемых услуг. В соответствии с этой схемой трафик распределяется по классам, каждый из которых имеет собственный приоритет. Этот тип обслуживания удобно применять в сетях с интенсивным трафиком. В этом случае важно обеспечить отделение административного трафика сети от всего остального и назначить ему приоритет, позволяющий в любой момент времени быть уверенным в связности узлов сети.

· Гарантированное обслуживание (guaranteed service). Гарантированное обслуживание предполагает резервирование сетевых ресурсов с целью удовлетворения специфических требований к обслуживанию со стороны потоков трафика. В соответствии с гарантированным обслуживанием выполняется предварительное резервирование сетевых ресурсов по всей траектории движения трафика. Например, такие схемы используются в технологиях глобальных сетей Frame Relay и ATM или в протоколе RSVP для сетей TCP/IP. Однако для коммутаторов такого рода протоколов нет, так что гарантий качества обслуживания они пока дать не могут.

Основным вопросом при приоритетной обработке кадров коммутаторами является вопрос назначения кадру приоритета. Так как не все протоколы канального уровня поддерживают поле приоритета кадра, например, у кадров Ethernet оно отсутствует, то коммутатор должен использовать какой-либо дополнительный механизм для связывания кадра с его приоритетом. Наиболее распространенный способ - приписывание приоритета портам коммутатора. При этом способе коммутатор помещает кадр в очередь кадров соответствующего приоритета в зависимости от того, через какой порт поступил кадр в коммутатор. Способ несложный, но недостаточно гибкий - если к порту коммутатора подключен не отдельный узел, а сегмент, то все узлы сегмента получают одинаковый приоритет.

Более гибким является назначение приоритетов кадрам в соответствии со стандартом IEEE 802.1р. Этот стандарт разрабатывался совместно со стандартом 802.1q. В обоих стандартах предусмотрен общий дополнительный заголовок для кадров Ethernet, состоящий из двух байт. В этом дополнительном заголовке, который вставляется перед полем данных кадра, 3 бита используются для указания приоритета кадра. Существует протокол, по которому конечный узел может запросить у коммутатора один из восьми уровней приоритета кадра. Если сетевой адаптер не поддерживает стандарт 802.1p, то коммутатор может назначать приоритеты кадрам на основе порта поступления кадра. Такие помеченные кадры будут обслуживаться в соответствии с их приоритетом всеми коммутаторами сети, а не только тем коммутатором, который непосредственно принял кадр от конечного узла. При передаче кадра сетевому адаптеру, не поддерживающему стандарт 802.1p, дополнительный заголовок должен быть удален.

Коммутаторы обеспечивают дифференцированное обслуживание, поэтому необходима идентификация пакетов, которая позволит отнести их к соответствующему классу трафика CoS, включающему, как правило, пакеты из разных потоков. Указанная задача выполняется путем классификации.

Классификация пакетов (packet classification) представляет собой средство, позволяющее отнести пакет к тому или иному классу трафика в зависимости от значений одного или нескольких полей пакета.

В управляемых коммутаторах используются различные способы классификации пакетов. Ниже перечислены параметры, на основании которых пакет идентифицируется:

· Биты класса приоритета 802.1p;

· Поля байта TOS, расположенного в заголовке IP-пакета и поле кода дифференцированной услуги (DSCP);

· Адрес назначения и источника IP-пакета;

· Номера портов TCP/UDP.

Поскольку высокоприоритетные пакеты должны обрабатываться раньше низкоприоритетных, в коммутаторах поддерживается несколько очередей приоритетов CoS. Кадры, в соответствии со своим приоритетом, могут быть помещены в разные очереди. Для обработки очередей приоритетов могут использоваться различные механизмы обслуживания:

· строгая очередь приоритетов (Strict Priority Queuing, SPQ);

· взвешенный циклический алгоритм (Weighted Round Robin, WRR).

В первом случае (алгоритм SPQ), пакеты, находящиеся в самой приоритетной очереди начинают передаваться первыми. При этом пока более приоритетная очередь не опустеет, пакеты из менее приоритетных очередей передаваться не будут. Второй алгоритм (WRR) устраняет это ограничение, а также исключает нехватку полосы пропускания для очередей с низким приоритетом. В этом случае для каждой очереди приоритетов задается максимальное количество пакетов, которое может быть передано за один раз и максимальное время ожидания, через которое очередь снова сможет передавать пакеты. Диапазон передаваемых пакетов: от 0 до 255. Диапазон времени оживания: от 0 до 255.

5.9. Ограничение доступа к сети

При использовании VLAN на базе портов, каждый порт назначается в определенную VLAN, независимо от того, какой пользователь или компьютер подключен к этому порту. Это означает, что все пользователи, подключенные к этому порту, будут членами одной VLAN.

Конфигурация портов статическая и может быть изменена только вручную.

VLAN на базе портов.

Vlan на базе mac-адресов.

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

VLAN на базе МАС-адресов.

Vlan на базе меток – стандарт 802.1q.

Первые два подхода основаны только на добавлении дополнительной информации к адресным таблицам моста и не используют возможности встраивания информации о принадлежности кадра к виртуальной сети в передаваемый кадр. Метод организации VLAN на основе меток – тэгов , использует дополнительные поля кадра для хранения информации о принадлежности кадра при его перемещениях между коммутаторами сети. К кадру Ethernet добавляется метка (Tag) длиной 4 байта:

Добавляемая метка кадра включает в себя двухбайтовое поле TPID (Tag Protocol Identifier) и двухбайтовое поле TCI (Tag Control Information). Первые 2 байта с фиксированным значением 0х8100 определяют, что кадр содержит тег протокола 802.1q/802.1p. Поле TCI состоит из полей Priority, CFI и VID. Поле Priotity длиной 3 бита задает восемь возможных уровней приоритета кадра. Поле VID (VLAN ID) длиной 12 бит является идентификатором виртуальной сети. Эти 12 бит позволяют определить 4096 различных виртуальных сетей, однако идентификаторы 0 и 4095 зарезервированы для специального использования, поэтому всего в стандарте 802.1Q возможно определить 4094 виртуальные сети. Поле CFI (Canonical Format Indicator) длиной 1 бит зарезервировано для обозначения кадров сетей других типов (Token Ring, FDDI), для кадров же Ethernet оно равно 0.

После того, как кадр принят входным портом коммутатора, решение об его дальнейшей обработке принимается на основании правил входного порта (Ingress rules). Возможны следующие варианты:

    прием только кадров типа Tagged;

    прием только кадров типа Untagged;

    по умолчанию для всех коммутаторов прием кадров обоих типов.

После обработки кадра принимается решение об его передаче к выходному порту на основании предопределенных правил продвижения кадров. Правило продвижения кадров внутри коммутатора заключается в том, что они могут передаваться только между портами, ассоциированными с одной виртуальной сетью.

1000Base Ethernet

1000Base Ethernet или Gigabit Ethernet, как и технология Fast Ethernet, использует тот же формат кадра, метод доступа CSMA/CD, топологию звезда и управление соединением (LLC – подуровень), что и стандарт IEEE 802.3 и 10Base-T Ethernet. Принципиальная разница технологий опять заключается в реализации физического уровня ЭМВОС – реализации устройств PHY. Для реализации трансиверов PHY, подключаемых к оптоволокну, использовались разработки IEEE 802.3 и ANSI X3T11 Fibre Channel. В 1998 году был опубликован стандарт 802.3z для оптоволокна и 802.3ab для витой пары.

Если отличия между Ethernet и Fast Ethernet минимальны и не затрагивают MAC-уровня, то при разработке стандарта Gigabit Ethernet 1000Base-T разработчикам пришлось не только внести изменения в физический уровень, но и затронуть MAC-подуровень.

Физический уровень Gigabit Ethernet использует несколько интерфейсов, включая традиционную витую пару категории 5, а также многомодовое и одномодовое волокно. Всего определяются 4 различных типа физических интерфейсов среды, которые отражены в спецификациях стандарта 802.3z (1000Base-X) и 802.3ab (1000Base-T).

Поддерживаемые расстояния для стандартов 1000Base-X приведены в таблице ниже.

Стандарт

Тип волокна

Максимальное расстояние*, м

(лазерный диод 1300 нм)

Одномодовое волокно (9 мкм)

Многомодовое волокно (50 мкм)***

Стандарт

Тип волокна/витой пары

Максимальное расстояние*, м

(лазерный диод 850 нм)

Многомодовое волокно (50 мкм)

Многомодовое волокно (62,5 мкм)

Многомодовое волокно (62,5 мкм)

Экранированная витая пара: STP

Характеристики оптических приемопередатчиков могут быть значительно выше, указанных в таблице. Например, компания NBase выпускает коммутаторы с портами Gigabit Ethernet, обеспечивающими передачу на расстояния до 40 км по одномодовому волокну без ретрансляций (используются узкоспектральные DFB лазеры, работающие на длине волны 1550 нм).

Интерфейс 1000Base-T

1000Base-T - это стандартный интерфейс Gigabit Ethernet передачи по неэкранированной витой паре категории 5e и выше на расстояния до 100 метров. Для передачи используются все четыре пары медного кабеля, скорость передачи по одной паре 250 Мбит/c.

Подуровень MAC

Подуровень MAC стандарта Gigabit Ethernet использует тот же самый метод доступа к среде передачи CSMA/CD что и его предшественники Ethernet и Fast Ethernet. Основные ограничения на максимальную длину сегмента (или коллизионного домена) определяются именно этим протоколом.

Одной из проблем реализации скорости 1 Гбит/с стало обеспечение приемлемого диаметра сети при работе в полудуплексном режиме работы. Как известно, минимальный размер кадра в сетях Ethernet и Fast Ethernet составляет 64 байта. При скорости передачи 1 Гбит/с и размере кадра 64 байта для надежного распознавания коллизий необходимо, чтобы расстояние между двумя наиболее удаленными компьютерами составляло не более 25 метров. Напомним, что успешное распознавание коллизий возможно, если время передачи кадра минимальной длины больше, чем двойное время распространения сигнала между двумя максимально удаленными узлами в сети. Поэтому, чтобы обеспечить максимальный диаметр сети в 200 м (два кабеля по 100 м и коммутатор), минимальная длина кадра в стандарте Gigabit Ethernet была увеличена до 512 байт. Чтобы увеличить длину кадра до требуемого значения, сетевой адаптер дополняет поле данных до длины 448 байт так называемым расширением (carrier extention). Поле расширения - это поле, заполненное запрещенными символами, которые невозможно принять за коды данных. При этом поле контрольной суммы вычисляется только для оригинального кадра и не распространяется на поле расширения. При приеме кадра поле расширения отбрасывается. Поэтому уровень LLC даже и не знает о наличии поля расширения. Если размер кадра равен или превосходит 512 байт, то поле расширения носителя отсутствует.

Кадр Gigabit Ethernet с полем расширения носителя

2.1.3 Структура кадра 802.1 Q

Спецификация 802.1 Q определяет 12 возможных форматов инкапсуляции долнительного поля в кадры МАС-уровня. Эти форматы определяются в зависимости от трех типов кадров (Ethernet II, LLC в нормальном формате, LLC в формате Token Ring), двух типов сетей (802.3/Ethernet или Token Ring/FDDI) и двух типов меток VLAN (неявных или явных). Имеются также определенные правила трансляции исходных кадров Ethernet или Token Ring в помеченные кадры и обратной трансляции помеченных кадров в исходные.

Поле идентификатора протокола меток (Tag Protocol Identifier,TPI) заменило поле EtherType кадра Ethernet, которое заняло место после двухбайтного поля метки VLAN.

В поле метки VLAN имеется три подполя.

Подполе Priority предназначено для хранения трех бит приоритета кадра, что позволяет определить до 8 уровней приоритетов. Однобитный признак TR- Encapsulation показывает, содержат ли данные, переносимые кадром, инкапсулированный кадр формата IEEE (признак равен 1) 802.5 или же они соответствуют типу внешнего кадра (признак равен 0).

С помощью этого признака можно туннелировать трафик сетей Token Ring на коммутируемых магистралях Ethernet.

12-битный идентификатор VLAN (VID) уникально идентифицирует VLAN, к которой относится данный кадр.

Максимальный размер кадра Ethernet увеличивается при применении спецификации IEEE 802.1 Q не 4 байта- с 1518 байт до 1522 байт.


Рис.2.1.3 Структура кадра Ethernet с полем IEEE 802.1 Q

2.1.4 Обеспечение качества обслуживания в сетях на основе коммутаторов.

Коммутаторы второго и третьего уровней могут очень быстро продвигать пакеты, но это не единственное свойство сетевого оборудования, которое требуется для создания современной сети.

Сетью нужно управлять, и одним из аспектов управления является обеспечение нужного качества обслуживания (QoS).

Поддержка QoS дает администратору возможность предвидеть и контролировать поведение сети за счет приоритезации приложений, подсетей и конечных станций, или предоставлении им гарантированной пропускной способности.

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

Сегодня рабочей группой IEEE 802.1 разработаны стандарты 802.1 p/Q (названные позже 802.1D-1998), наводящие порядок в схемах приоритезации трафика и способе переноса данных о классах трафика в кадрах локальных сетей. Идеи приоритезации трафика, заложенные в стандарты 802.1 p/Q, в основном соответствуют рассмотренной в главе схеме дифференцированных сервисов IP. Схема QoS на основе стандартов 802.1 p/Q предусматривает

возможность задания класса обслуживания (приоритета) как конечным узлом за счет помешения в стандартный кадр 802 идентификатора виртуальной сети VID, содержащего три бита уровня приоритета, так и классификации трафика коммутаторами на основе некоторого набора признаков. Качество обслуживания может также дифференцироваться между различными виртуальными локальными сетями. В этом случае поле приоритета играет роль дифференциатора второго уровня внутри различных потоков каждой виртуальной сети.



Нормальный трафик, доставляемый с “max. усилиями”

Чувствительный к задержкам трафик

Рис.2.1.4 Классы обслуживания внутри виртуальных сетей.

Точная интерпретация потребностей каждого класса трафика, помеченного значением приоритета и, возможно, номером виртуальной сети, оставляется, как и в случае дифференцированных сервисов IP, на усмотрение администратора сети. В общем случае предполагается наличие в коммутаторе правил политики, в соответствии с которыми выполняется обслуживание каждого класса трафика, то есть наличия профиля трафика.

Производители коммутаторов обычно встраивают в свои устройства более широкие способы классификация трафика, чем те, которые предусмотрены в стандарте 802.1 p/Q. Классы трафика могут отличаться МАС-адресами, физическими портами, метками 802.1 p/Q, а в коммутаторах третьего и четвертого уровней - IP-адресами и хорошо известными номерами портов TCP/UDP.

Как только пакет поступает в коммутатор, значения его полей сравниваются с признаками, содержащимися в правилах, которые назначены для групп трафика, а затем помещаются в соответствующую очередь. Правила, связанные с каждой очередью, могут гарантировать пакетам определенное количество пропускной способности и приоритет, влияющий на величину задержки пакетов. Классификация трафика коммутатором и встраивание информации о требуемом качестве обслуживания в пакеты позволяет администраторам устанавливать политику QoS во всей корпоративной сети. Существуют следующие способы классификации трафика:

На основе портов. При назначении приоритетов индивидуальным входным портам для распространения информации о требуемом качестве обслуживания по всей коммутируемой сети используются метки приоритетов стандарта 802.1 p/Q.

На основе меток VLAN. Это достаточно простой и весьма обобщенный способ поддержания QoS. Назначая профиль QoS виртуальным локальным сетям, можно достаточно просто управлять потоками при их объединении в магистральной линии.

На основании номеров сетей. Виртуальные сети, основанные на протоколах, могут использовать привязку профилей QoS к определенным подсетям IP, IPX и Apple Talk. Это позволяет легко отделить определенную группу пользователей и обеспечить их нужным качеством обслуживания.

По приложениям (порты ТСР/UDP). Позволяет выделить классы приложений, которым затем предоставляется дифференцированное обслуживание независимо от адресов конечных узлов и пользователей.

Необходимым условием поддержки качества обслуживания на основе номеров сетей является возможность просмотра пакетов на третьем уровне, а дифференциация по приложениям требует просмотра пакетов на четвертом уровне.


Рис.2.1.5 Обслуживание различных классов трафика.

После разделения трафика на классы коммутаторы могут обеспечивать каждому классу гарантированный минимум и максимум пропускной способности, а также приоритет, определяющий обработку очереди при наличии свободной пропускной способности коммутатора. На рисунке показан пример обслуживания четырех классов трафика. Каждому из них отведен определенный минимум пропускной способности, а высокоприоритетному трафику также и максимум, чтобы этот класс трафика не мог полностью подавить менее приоритетные.





Top