Краткий общий обзор технологии Fibre Channel.
Если говорить кратко, Fibre Channel представляет собой сверхвысокоскоростную (до 1 Гбит/с и выше) схему полнодуплексной передачи данных с малой задержкой (10—30 мкс) на расстояния до 10 км. Она в равной мере может использоваться и как технология ввода/вывода, и как технология локальной сети.
В названии технологии («волоконный канал», как можно было бы перевести Fibre Channel на русский язык) оба слова не вполне соответствуют действительности. Физической средой передачи может быть не только оптическое волокно, но и коаксиал, и витая пара, а архитектура представляет собой смесь канальной и сетевой топологии!
УРОВНЕВАЯ МОДЕЛЬ
Рисунок 1. Cтек протоколов Fibre Channel. |
Уровень FC-0 описывает физические характеристики и возможные типы интерфейсов и среды передачи, в том числе кабели, соединители, излучатели, передатчики и приемники. FC-1 определяет схему кодирования и декодирования сигнала 8B/10B. FC-2 выполняет основные функции Fibre Channel, в том числе сигнализацию, т. е. установление соединения между отправителем и получателем; сегментацию, сборку и упорядочивание передаваемых кадров; контроль потоков с помощью схемы скользящего окна, обнаружение и исправление ошибок; реализацию сервисных классов. Все вместе эти три уровня образуют так называемый физический уровень Fibre Channel (Fibre Channel Physical, FC-PH).
FC-3 описывает общие процедуры (хотя, наверно, их было бы правильнее назвать специальными) для таких особых ситуаций, как запись данных с чередованием на дисковый массив или многоадресная рассылка через видеосервер. FC-4 обеспечивает преобразование различных сетевых протоколов и приложений для их реализации поверх Fibre Channel. Как можно видеть из Рисунка 1, Fibre Channel способен поддерживать самые разные по своей природе сетевые протоколы, интерфейсы ввода/вывода и приложения.
ТОПОЛОГИЯ
Риcунок 2. Топология Fibre Channel. |
Простейшей топологией является, очевидно, «точка-точка». Она состоит из двух устройств Fibre Channel и прямого соединения между ними. Одно волокно связывает приемник на одном устройстве с передатчиком на другом устройстве, а второе — передатчик с приемником. (В этой статье под волокном мы будем подразумевать как оптическое волокно, так и отдельную витую пару и жилу коаксиального кабеля.) Оба устройства могут, естественно, использовать всю пропускную способность соединения, но при этом они должны работать на одной скорости.
Наиболее распространенной и вместе с тем наиболее сложной топологией является арбитражная петля. Она позволяет подключить по кольцу до 127 портов без использования коммутатора. Однако, в отличие от двух других топологий, пропускная способность является разделяемой, т. е. в один конкретный момент времени только два устройства могут взаимодействовать друг с другом. В случае конкуренции за доступ к среде передачи между несколькими устройствами арбитраж выигрывает устройство с наименьшим адресом. Все устройства в петле должны функционировать на одной скорости. Петля может подключаться к порту коммутатора, но только к одному.
За неимением лучшего русскоязычного термина мы будем называть топологию Fabric коммутирующей структурой. Коммутируемая топология предусматривает использование коммутатора(-ов), но позволяет за счет этого подключить свыше 16 млн устройств. К коммутатору могут подключаться устройства с разными скоростями передачи и по разным физическим средам.
ТИПЫ ПОРТОВ
В зависимости от типа устройства, своего назначения и поддерживаемой топологии порты делятся на несколько типов. Порт Fibre Channel на конечном устройстве (сервере, дисковом массиве, принтере и т. п.) называется «узловой порт» (Node Port, N_Port). Порт на коммутаторе, к которому подключается узловой порт, называется «коммутирующий порт» (Fabric Port, F_Port). Если же эти порты могут подключаться к арбитражной петле, то они маркируются дополнительно буквой L от английского loop, т. е. «петля». Таким образом, соответствующие порты на узле и коммутаторе будут обозначаться как NL_Port и FL_Port.
Помимо F_Port коммутатор может иметь еще и порт расширения (Expansion Port, E_Port). Этот порт предназначен для подключения одного коммутатора к другому. Если к порту расширения может быть подключен не только другой коммутатор, но и узел, то такой порт именуется универсальным портом (Generic Port, G_Port). При условии, что он поддерживает арбитражную петлю, универсальный порт может маркироваться как GL_Port.
РАЗНОВИДНОСТИ ОБОРУДОВАНИЯ
Помимо разделения пропускной способности арбитражная петля имеет и другие недостатки. В частности, при отказе адаптера на каком-либо устройстве или разрыве в соединяющем кабеле петля оказывается полностью неработоспособной. Кроме того, при добавлении нового устройства вся петля должна быть инициализирована заново (чтобы подключенное устройство могло получить адрес), причем эта процедура может занимать достаточно много времени.
Эти проблемы можно решить за счет использования концентраторов Fibre Channel. Кроме того, физическая топология «звезда» (хотя логически это по-прежнему кольцо), как правило, гораздо удобнее с точки зрения подключения узлов, чем кольцо. Обычно концентраторы имеют не более 10 портов. Однако это ограничение легко преодолеть за счет каскадного подключения концентраторов. Правда, как показывает практика, оптимально арбитражная петля функционирует, когда число узлов не превышает 30.
Отказоустойчивость концентраторов к разрывам петли достигается за счет применения схемы обхода портов (Port Bypass Circuit, PBC). PBC позволяет автоматически обнаружить наличие узла и включить его в петлю. Аналогично PBC обнаруживает отказ узла и исключает его из петли (PBC также может быть реализована на уровне внутренней шины дискового массива). Наиболее продвинутые концентраторы поддерживают удаленное управление и другие развитые функции.
Как и в случае других сетевых технологий, коммутаторы Fibre Channel являются существенно более дорогими устройствами, чем концентраторы Fibre Channel. В отличие от концентраторов, они позволяют предоставить узлу выделенную пропускную способность и, как уже упоминалось, создавать топологии с несравнимо большим числом узлов (224). Кроме того, коммутаторы могут иметь порты с поддержкой разных скоростей и сред передачи.
Коммутатор Fibre Channel, по сути, объединяет два типа коммутаторов в одном устройстве, так как поддерживает коммутацию как с установлением соединения, так и без оного (условно говоря, он обладает чертами как телефонного коммутатора каналов, так и локально-сетевого коммутатора кадров). Некоторые производимые коммутаторы осуществляют только коммутацию каналов (как первый появившийся на рынке коммутатор компании Ancor Communications), другие же — только коммутацию кадров.
Коммутаторы Fibre Channel просты в установке и использовании благодаря самоконфигурации и самоуправлению. При подключении узла к коммутатору он регистрируется на коммутаторе и согласует с ним взаимоприемлемые параметры. При подключении коммутатора к коммутатору они определяют конфигурацию и адреса. Все операции осуществляются автоматически. В случае универсального порта (GL_Port) коммутатор также сам устанавливает, к чему он подключен — к другому коммутатору, к петле или к узлу.
Однако для организации взаимодействия между устройствами в нескольких петлях дешевле использовать не коммутатор, а коммутирующий (или гибридный) концентратор. Наиболее редко встречающимся устройством является маршрутизатор Fibre Channel (хотя, возможно, более правильно было бы называть его мостом). Он позволяет подключить сеть Fibre Channel к другой среде передачи, например к SCSI или Ethernet.
До сих пор мы говорили о, так сказать, структурообразующих устройствах Fibre Channel. Однако самыми распространенными устройствами являются, естественно, адаптеры Fibre Channel. Без них никакой узел не смог бы взаимодействовать с коммутирующей структурой Fibre Channel. Одни и те же адаптеры могут служить для соединения как с локальной сетью (другими узлами), так и с периферией. Это позволяет, в частности, сократить число необходимых слотов ввода/вывода. Большинство адаптеров выпускается для шины PCI. Часто вместе с адаптерами используются «гигабитные переходники» (GigaBit Interface Converter). Они служат для преобразования оптических сигналов в электрические и обратно.
КЛАССЫ СЕРВИСА
Коммутаторы и узлы могут поддерживать один или более видов сервиса. Никакой ручной настройки не требуется, так как общие поддерживаемые коммутаторами и узлами сервисы определяются во время процедуры регистрации. Благодаря сервисам Fibre Channel может поддерживать множество различных приложений. Сервисы делятся на классы. Основными являются Классы 1, 2 и 3. Всего же Fibre Channel имеет 6 или 7 разных видов сервиса (такая неопределенность связана с тем, что Класс 5, видимо, так и не будет определен, а Класс Intermix не имеет собственного номера и часто не рассматривается как отдельный вид сервиса).
Класс 1 соответствует сервису с установлением соединения и гарантированной доставкой. Соединение через коммутирующую структуру (совокупность коммутаторов) устанавливается за несколько микросекунд. Соединение является выделенным, так что никакое иное устройство не может связаться с портами получателя и отправителя, пока соединение не будет закрыто. Гарантированная доставка обеспечивается за счет подтверждения получения. Наилучшим образом этот класс сервиса подходит для обмена большими объемами данных, в частности для резервного копирования, графических приложений и взаимодействия между суперкомпьютерами.
Класс 2 представляет сервис без установления соединения, но с гарантированной доставкой (как и в предыдущем случае, с помощью подтверждений). Каждый поступающий кадр коммутируется независимо от остальных, а конечные порты могут передавать или получать кадры от нескольких других узлов. По сути, коммутатор мультиплексирует трафик от узловых портов, поэтому этот класс сервиса иногда называют мультиплексным. Кадры могут доставляться не в том порядке, в каком они были отправлены. Наилучшим образом этот класс сервиса подходит для передачи нерегулярного (пакетного) или интерактивного трафика по типу трафика локальных сетей.
Класс 3 аналогичен Классу 2, за исключением того, что он не гарантирует доставку кадров (подтверждения получения). Он позволяет добиться несколько большей реальной пропускной способности за счет отсутствия подтверждений. По сути, он является аналогом передачи дейтаграмм. Наилучшим образом этот класс сервиса подходит для многоадресной и широковещательной рассылки.
Остальные классы часто не выделяются в самостоятельные, а считаются подвидами перечисленных. Класс Intermix представляет собой комбинацию Класса 1 и Класса 2 (3). Он позволяет передавать кадры Класса 2 или 3, когда кадры Класса 1 не передаются, причем кадры Классов 2 или 3 вовсе не обязательно должны быть адресованы тому же получателю, что и кадры Класса 1.
Как и Класс 1, Класс 4 предполагает установление соединения, гарантию доставки, фиксированную задержку, соблюдение исходного порядка кадров. Однако он требует резервирования лишь части пропускной способности, т. е. узловой порт может иметь и другие соединения. Узел может зарезервировать до 256 соединений Класса 4 одновременно, причем каждое из них может иметь свои параметры QoS. Иногда этот класс сервиса называется изохронным. Наилучшим образом он подходит для передачи цифрового видео и аудио.
Как Intermix и Класс 4, Класс 6 представляет собой разновидность Класса 1. Он используется, когда узлу необходимо передать кадры сразу нескольким узлам одновременно, т. е. в случае многоадресной рассылки. Для этого узел устанавливает выделенное соединение с сервером многоадресной рассылки, адрес которого фиксирован (FFFFF5 в шестнадцатеричном формате), а тот уже берет на себя задачу тиражирования и пересылки кадров всем получателям в многоадресной группе.
ХАРАКТЕРИСТИКИ FIBRE CHANNEL
Завершая описание Fibre Channel, нельзя не упомянуть основные характеристики этой технологии. Fibre Channel позволяет поддерживать самые разные скорости — от 133 Кбит/с до 4,252 Мбит/с и даже более. Одна из целей разработки Fibre Channel состояла, в частности, в поддержке HIPPI на 100 Мбайт/с. Поэтому основной скоростью передачи данных — так называемой полной скоростью — является 100 Мбайт/с (остальные скорости указываются часто в долях от основной скорости — одна восьмая, четвертая, вторая, двойная, учетверенная). Однако, с учетом накладных расходов на кодирование 8B/10B, заголовки кадров и т. д., скорость передачи собственно битов составляет 1,063 Мбит/с. Таким образом, производители приводят, как правило, две скорости — «полезную», в байтах за секунду, и «чистую», в битах за секунду.
Поддерживаемые расстояния и скорости передачи зависят от типа используемой среды передачи и генераторов сигнала. Как уже упоминалось, Fibre Channel может функционировать как по оптической, так и по медной среде передачи, при этом одно волокно предназначено для передачи сигнала, а другое — для приема. В случае оптики это может быть многомодовое волокно 50/125 мкм и 62,5/125 мкм и одномодовое волокно с соединителями SC. В случае меди это может быть коаксиальный кабель, в частности видеокабель с соединителями TNC (приемник) и BNC (передатчик), а также экранированная витая пара с соединителями DB-9.
Наибольшие скорости (до 4 Гбит/с) и расстояния (до 10 км) достигаются в случае применения одномодового оптического волокна и низкочастотных лазеров. Многомодовое волокно способно поддерживать такие же скорости, но на гораздо меньших расстояниях, в частности 100 Мбайт/с на расстояниях до 500 м в случае многомодового волокна 50/125 мкм с высокочастотным лазером. Медная среда передачи позволяет поддерживать скорости не выше основной на небольших расстояниях (100 м и менее).
ПРОМЕЖУТОЧНЫЙ ФИНИШ
Хотя и не настолько сложная как ATM, технология Fibre Channel описывается несколькими стандартами (некоторые даже считают, что расширение ее возможностей и, как следствие, ее усложнение — может отрицательно сказаться на ее перспективах). Очевидно, что в одной небольшой ознакомительной статье можно дать только общее описание технологии, что мы и постарались сделать. Однако многие важные подробности пришлось опустить, в частности, как осуществляется арбитраж и управление потоками, что собой представляют кадры Fibre Channel и кодирование 8B/10B и т. д. Поэтому мы намерены продолжить рассмотрение этой темы в следующем номере.
Дмитрий Ганьжа — ответственный редактор LAN. С ним можно связаться по адресу: diga@lanmag.ru.