Fibre Channel
Материал из Википедии — Ñвободной Ñнциклопедии
Fibre Channel — выÑокоÑкороÑтной Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸ данных, иÑпользуемый Ð´Ð»Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð²Ð¼ÐµÑте рабочих Ñтанций, мейнфреймов, Ñуперкомпьютеров и уÑтройÑтв Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ….
Порты уÑтройÑтв могут быть подключены напрÑмую друг к другу (point-to-point), быть включены в управлÑемую петлю (arbitrated loop) или в коммутируемую Ñеть, называемую фабрикой (fabric).
ПоддерживаетÑÑ ÐºÐ°Ðº оптичеÑкаÑ, так и ÑлектричеÑÐºÐ°Ñ Ñреда, Ñо ÑкороÑтью передачи данных от 133 мегабит/Ñ Ð´Ð¾ 8 гигабит/Ñ Ð½Ð° раÑÑтоÑÐ½Ð¸Ñ Ð´Ð¾ 10 километров.
Ð’ большинÑтве Ñлучаев иÑпользуетÑÑ ÐºÐ°Ðº неÑущий Ð´Ð»Ñ SCSI-3. (Может иÑпользоватьÑÑ ÐºÐ°Ðº неÑущий и Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… протоколов — например, ATM, IP, HIPPI и других.
[править] Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»ÑŒ
Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»ÑŒ Fiber Channel ÑоÑтоит из пÑти уровней:
[править] FC-0
ОпиÑывает Ñреду передачи, транÑиверы/реÑиверы, коннекторы и типы иÑпользуемых кабелей. Включает определение ÑлектричеÑких и оптичеÑких характериÑтик, ÑкороÑтей передачи данных и других физичеÑких компонентов.
[править] FC-1
ОпиÑывает процеÑÑ 8b/10b ÐšÐ¾Ð´Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ (каждые 8 бит данных кодируютÑÑ Ð² 10-битовый Ñимвол (Transmission Character)), Ñпециальные Ñимволы и контроль ошибок.
[править] FC-2
ОпиÑывает Ñигнальные протоколы. Ðа Ñтом уровне проиÑходит разбиение потока данных на кадры и Ñборка кадров. ОпределÑет правила передачи данных между Ð´Ð²ÑƒÐ¼Ñ Ð¿Ð¾Ñ€Ñ‚Ð°Ð¼Ð¸, клаÑÑÑ‹ обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ (Ñм. КлаÑÑÑ‹ ОбÑлуживаниÑ).
(Ñм. ЛогичеÑкие Ñлементы потока данных).
[править] FC-3
ОпределÑет такие оÑобенноÑти, как: раÑщепление потока данных (striping) (ВозможноÑÑ‚ÑŒ передачи потока данных через неÑколько Ñоединений, отображение множеÑтва портов на одно уÑтройÑтво.
[править] FC-4
ПредоÑтавлÑет возможноÑÑ‚ÑŒ переноÑа других протоколов (SCSI, ATM, IP, HIPPI и.Ñ‚.д.)
[править] ЛогичеÑкие Ñлементы потока данных
При передаче данных выделÑÑŽÑ‚ Ñледующие логичеÑкие поÑледовательноÑти:
[править] УпорÑдоченные наборы (Ordered Sets)
Четырёхбайтные Ñлова (Transmission Words), Ñодержащие данные и Ñпециальные Ñимволы. Разбиение потока данных на упорÑдоченные наборы позволÑет ÑохранÑÑ‚ÑŒ Ñинхронизацию между передатчиком и реÑивером на уровне битов и Ñлов. УпорÑдоченные наборы вÑегда начинаютÑÑ Ñ Ñимвола K28.5. ОÑновные типы наборов определÑÑŽÑ‚ÑÑ Ñигнальным протоколом.
[править] Разделители кадров
Разделители кадров иÑпользуютÑÑ Ð´Ð»Ñ Ð¾Ñ‚Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кадра от другого. СущеÑтвует два таких набора:
- Ðачало кадра (Start Of Frame, SOF)
- Конец кадра (End Of Frame, EOF)
[править] Базовые Ñигналы
- Сигнал бездейÑÑ‚Ð²Ð¸Ñ (Idle). ПередаётÑÑ Ð´Ð»Ñ Ð¾Ð±Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð³Ð¾Ñ‚Ð¾Ð²Ð½Ð¾Ñти принимать и отправлÑÑ‚ÑŒ кадры.
- Сигнал готовноÑти реÑивера (Receiver Ready, R_RDY). ИÑпользуетÑÑ Ð¿Ñ€Ð¸ управлении потоком данных (Ñм. КлаÑÑÑ‹ ОбÑлуживаниÑ) Ð´Ð»Ñ Ð¸Ð½Ð´Ð¸ÐºÐ°Ñ†Ð¸Ð¸ Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¼ÐµÑта в буфере реÑивера.
- Базовые поÑледовательноÑти. ПередаютÑÑ Ð´Ð»Ñ Ð¾Ð¿Ð¾Ð²ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¾ неÑтандартном ÑоÑтоÑнии порта. При получении такой поÑледовательноÑти в ответ поÑылаетÑÑ ÑоответÑÑ‚Ð²ÑƒÑŽÑ‰Ð°Ñ Ð¿Ð¾ÑледовательноÑти или Ñигнал бездейÑтвиÑ. Стандарт поддерживает четыре поÑледовательноÑти:
- Offline (OLS)
- Not Operational (NOS)
- Link Reset (LR)
- Link Reset Response (LRR)
Служат "транÑпортными контейнерами" Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑылок между отдельными узлами решетки. Ðачало кадра определÑетÑÑ Ñлужебным Ñловом SOF (Start Of Frame), Ñтруктуру которого мы раÑÑматривали ранее. ÐепоÑредÑтвенно за SOF раÑполагаютÑÑ ÑˆÐµÑÑ‚ÑŒ Ñлов заголовка и от 0 до 528 ÑмыÑловых Ñлов. Кадр завершаетÑÑ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ñ‹Ð¼ Ñловом CRC (Cyclic Redundancy Check) и EOF (End Of Frame). Другими Ñловами, размер каждого кадра может варьировать от 9 до 537 Ñлов, что позволÑет его гибко подÑтраивать под объем передаваемой информации.
Следующее Ñразу за SOF первое Ñлово заголовка (header word 0) Ñодержит Ð°Ð´Ñ€ÐµÑ Ð¼Ð°Ñ€ÑˆÑ€ÑƒÑ‚Ð¸Ð·Ð°Ñ†Ð¸Ð¸ по решетке Fibre Channel. ОÑтальные пÑÑ‚ÑŒ Ñлов заголовка Ñодержат уникальные идентификаторы поÑледовательноÑтей (header word 1), обменов (header word 2), определÑÑŽÑ‚ номер кадра в Ñтих конÑтрукциÑÑ… (header word 3), отноÑительное Ñмещение в оперативной памÑти (header word 4) и тип Ñообщений (header word 5) — SCSI, IP, AV, VI etc.
Далее размещаютÑÑ ÑмыÑловые Ñлова, ради которых вÑе Ñто и затевалоÑÑŒ. Их количеÑтво в кадре может варьировать от 0 до 528 и определÑетÑÑ Ð¿ÐµÑ€ÐµÐ´Ð°ÑŽÑ‰Ð¸Ð¼ портом Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ ÑобÑтвенных возможноÑтей и возможноÑтей оÑтальных портов, информацию о чем он получает во Ð²Ñ€ÐµÐ¼Ñ Ð¿Ñ€Ð¾Ñ†ÐµÐ´ÑƒÑ€Ñ‹ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ (log-in).
Служебное Ñлово CRC ÑвлÑетÑÑ Ð²Ñегда предпоÑледним в кадре и Ñлужит Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ правильноÑти передачи заголовка и ÑмыÑловых Ñлов на оÑнове ÑодержащихÑÑ Ð² нем контрольных 4 байт (32 бит).
Кадр закрываетÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñлова EOF. И только поÑле Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ EOF порт опознает предыдущее Ñлово, как CRC, ведь в нем вÑе 4 байта ÑвлÑÑŽÑ‚ÑÑ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ñ‹Ð¼Ð¸ и Ñлужебному Ñимволу K28.5 попроÑту не хватило меÑта.
ПоÑле Ñтоль детального разбора Ñтруктуры кадра пришло Ð²Ñ€ÐµÐ¼Ñ Ñ€Ð°ÑÑказать про одну маленькую деталь, о которой обычно умалчивают разработчики Fibre Channel в публикациÑÑ…, раÑÑчитанных на маÑÑовую аудиторию потенциальных пользователей. Ее Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑкандальноÑÑ‚ÑŒ заключаетÑÑ Ð² том, что поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÐºÐ°Ð´Ñ€Ð° N_порт обÑзан также передать не меньше 6 Ñлов IDLE.
Ð’ оÑнове Ñ‚Ñ€ÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸ шеÑти Ñлов IDLE между кадрами заложена та же ÑÐ°Ð¼Ð°Ñ Ð¸Ð´ÐµÑ, что и при выборе кодировки 8b/10b - пожертвовать некоторой чаÑтью полоÑÑ‹ канала Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ñтого, недорогого и вмеÑте Ñ Ñ‚ÐµÐ¼ надежного механизма передачи. Кодировка 8b/10b "Ñъедает" 20% пропуÑкной ÑпоÑобноÑти канала в обмен на проÑтой и надежный механизм раÑÐ¿Ð¾Ð·Ð½Ð°Ð²Ð°Ð½Ð¸Ñ Ñлов. ШеÑÑ‚ÑŒ Ñлов IDLE между кадрами делают примерно то же Ñамое Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸ Ñамих кадров. Дело в том, что в процеÑÑе Ð¿ÐµÑ€ÐµÐ´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ ÐºÐ°Ð´Ñ€Ð° по решетке вÑе вÑтречающиеÑÑ ÐµÐ¼Ñƒ на пути узлы имеют Ñлегка отличающиеÑÑ ÑобÑтвенные опорные чаÑтоты. Ð’ итоге, узел Ñ Ð½ÐµÑколько меньшей ÑобÑтвенной чаÑтотой поÑылает кадры неÑколько медленнее, чем принимает, поÑтому во избежание "наползаниÑ" кадров друг на друга он проÑто Ð²Ñ€ÐµÐ¼Ñ Ð¾Ñ‚ времени выкидывает Ñлова IDLE между ними. C той же целью более "быÑтрый" узел также Ð²Ñ€ÐµÐ¼Ñ Ð¾Ñ‚ времени может вÑтавлÑÑ‚ÑŒ недоÑтающие IDLE, чтобы "не наÑтупать на пÑтки" Ñвоему ÑоÑеду.
ÐадеемÑÑ, что читатели Ñпециализированного Ð¸Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð¹Ð¼ÑƒÑ‚ вÑÑŽ краÑоту такого подхода, когда можно не предъÑвлÑÑ‚ÑŒ выÑокие Ñ‚Ñ€ÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ðº кварцевым резонаторам разных производителей, к тому же работающим в разных температурных уÑловиÑÑ….
ЗдеÑÑŒ Ñразу умеÑтен Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¾ реальной пропуÑкной ÑпоÑобноÑти Fibre Channel. Уже на ранних Ñтапах разработки Ñтандарта Ñтало очевидным, что производители и пользователи вкладывают в Ñто определение различный ÑмыÑл, поÑтому во избежание путаницы было принÑто Ñоломоново решение. Ð’ наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»Ð¸ Ð¾Ð±Ð¾Ñ€ÑƒÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ‹ указывать аппаратную ÑкороÑÑ‚ÑŒ компонентов в мегабитах или гигабитах в Ñекунду, в то Ð²Ñ€ÐµÐ¼Ñ ÐºÐ°Ðº пользователи должны руководÑтвоватьÑÑ Ñ€ÐµÐ°Ð»ÑŒÐ½Ð¾Ð¹ ÑкороÑтью передачи данных, измерÑемой мегабайтами в Ñекунду.
ЕÑли вÑпомнить о 20% избыточноÑти 8b/10b, то в данном Ñлучае 1Gbit/s = 100MBytes/s. Рчтобы иметь возможноÑÑ‚ÑŒ обеÑпечить поток пользовательÑких данных 100MBytes/s Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ избыточноÑти CRC, адреÑных заголовков и других Ñлужебных Ñлов, ÑÐµÐ¹Ñ‡Ð°Ñ Ð½Ð° уровне FC-0 иÑпользуетÑÑ ÑкороÑÑ‚ÑŒ аппаратной передачи 1.0625Gbit/s.
Таким образом, ÑƒÑ‡Ð¸Ñ‚Ñ‹Ð²Ð°Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð´ÑƒÐ¿Ð»ÐµÐºÑную реализацию Fibre Channel, можно говорить о предÑтавлении пользователю 200MBytes/s в Ñлучае ÑимметичноÑти потоков данных, Ñ‚.е. в контекÑте технологии FC-AL 1.0625Gbit/s = 200MBytes/s.
[править] ПоÑледовательноÑти (Sequences)
[править] Обмены (Exchanges)
Каждое взаимодейÑтвие между приложениÑми через Fibre Channel проиÑходит в контекÑте обмена. Каждый обмен имеет инициатора (originator) и ответчика (responder). Ð”Ð»Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° обмена инциатор поÑылает первый кадр первого пакета обмена ответчику. Содержимое кадра может ÑоÑтавлÑÑ‚ÑŒ, к примеру, SCSI команду. Ð’ заголовке Ñтого кадра инициатор приÑваивает значение OX_ID (exchange originator identification). ПоÑле Ñтого вÑе кадры данного обмена будут возвращатьÑÑ Ð¾Ñ‚ ответчика Ñ Ñтим же OX_ID, что позволит инициатору получать контекÑтную информацию о приложениÑÑ… и протоколах более выÑокого ÑƒÑ€Ð¾Ð²Ð½Ñ Ð¸Ð· ÑобÑтвенной таблицы ÑоответÑтвий. Одновременно Ñ Ñтим ответчик приваивает ÑобÑтвенное значение RX_ID (exchange responder identification) в первом кадре Ñвоего первого пакета в пределах данного обмена. ПоÑле Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñтого кадра инициатором вÑе дальнейшие кадры Ñодержат уникальные идентификаторы Ñторон в контекÑте данного обмена, что позволÑет точно уÑтановить принадлежноÑÑ‚ÑŒ кадров при неÑкольких одновременных обменах. К примеру, кадры пакетов обмена SCSI командами могут приходить вперемешку Ñ ÐºÐ°Ð´Ñ€Ð°Ð¼Ð¸ пакетов обмена IP, но порт Ñможет раÑÑортировать их "на лету", отделив мух от котлет. Когда обмен завершен, ÑоответÑтвующие Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ OX_ID и RX_ID оÑвобождаютÑÑ Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð² будущих обменах. Таким образом N_порт FC-AL может раÑÑматриватьÑÑ, как многопротокольный маршрутизатор.
Каждый порт ÑпоÑобен начать и поддерживать до 64 Ñ‚Ñ‹Ñ. конкурентных обменов. Одновременно Ñ Ñтим он ÑпоÑобен отвечать еще на 64 Ñ‚Ñ‹Ñ. обменов Ñ Ð¸Ñ… поддержкой.
ОригинальноÑÑ‚ÑŒ ÑинтакÑичеÑкой Ñтруктуры Fiber Channel, Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ñловами 1-5 заголовка, разительно отличает его от оÑтальных протоколов передачи. Во-первых, порт имеет возможноÑÑ‚ÑŒ конкурентной поддержки различных протоколов выÑокого уровнÑ. Во-вторых, управление типами передачи выполнÑетÑÑ Ð½Ð° аппаратном уровне Ñ Ð¼Ð¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼Ð¸ микроÑекундными задержками. И, Ñамое главное, вÑе Ñто проиÑходит без учаÑÑ‚Ð¸Ñ ÑиÑтемной шины, центрального процеÑÑора и операционной ÑиÑтемы, Ñ‚.е. не ÑÐ¾Ð·Ð´Ð°Ð²Ð°Ñ Ð¿Ð¾Ñ‚ÐµÐ½Ñ†Ð¸Ð°Ð»ÑŒÐ½Ð¾ узкие меÑта.
[править] Протоколы (Protocols)
[править] ÐдреÑациÑ
[править] Уникальный Ð°Ð´Ñ€ÐµÑ ÑƒÑтройÑтва
Каждое уÑтройÑтво имеет уникальный 8-байтовый адреÑ, называемый NWWN (Node World Wide Name), ÑоÑтоÑщий из неÑкольких компонент:
A0:00:BB:BB:BB:CC:CC:CC || | | || | ±------ ÐазначаютÑÑ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÐµÐ¼ уÑтройÑтва. || ±--------------- ÐазначаютÑÑ IEEE Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ производителÑ. |±-------------------- Ð’Ñегда 0:00 (Зарезервировано Ñтандартом) ±--------------------- ЧиÑло произвольно выбираетÑÑ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÐµÐ¼.
[править] Уникальный Ð°Ð´Ñ€ÐµÑ Ð¿Ð¾Ñ€Ñ‚Ð° уÑтройÑтва
Каждый порт уÑтройÑтва имеет уникальный 8-байтовый адреÑ, называемый PWWN (Port World Wide Name), ÑоÑтоÑщий из неÑкольких компонент:
A0:00:BB:BB:BB:CC:CC:CC || | | || | ±------ ÐазначаютÑÑ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÐµÐ¼ уÑтройÑтва. || ±--------------- ÐазначаютÑÑ IEEE Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ производителÑ. |±-------------------- Уникально идентифицируют порт уÑтройÑтва или коммутатора. ±--------------------- ЧиÑло произвольно выбираетÑÑ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÐµÐ¼.
[править] Топологии
- Точка-Точка (Point-to-Point)
ИÑпользуетÑÑ Ð´Ð»Ñ ÑвÑзи между Ð´Ð²ÑƒÐ¼Ñ ÑƒÑтройÑтвами — передатчик первого Ñоединён Ñ Ñ€ÐµÑивером второго и наоборот. Ð’Ñе отправленные кадры предназначены Ð´Ð»Ñ Ð²Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ уÑтройÑтва — то еÑÑ‚ÑŒ отÑутÑтвует адреÑациÑ.
- УправлÑÐµÐ¼Ð°Ñ Ð¿ÐµÑ‚Ð»Ñ (Arbitrated Loop)
УÑтройÑтва объединены в петлю — передатчик каждого уÑтройÑтва Ñоединён Ñ Ñ€ÐµÑивером Ñледующего. Каждое уÑтройÑтво имеет уникальный Ð´Ð»Ñ Ð¿ÐµÑ‚Ð»Ð¸ ФизичеÑкий ÐÐ´Ñ€ÐµÑ Ð£Ð¿Ñ€Ð°Ð²Ð»Ñемой Петли (Arbitrated Loop Physical Address, AL_PA). ЕÑтеÑтвенно такое подключение не ÑвлÑетÑÑ Ð½Ð°Ð´Ñ‘Ð¶Ð½Ñ‹Ð¼ — при Ñбое любого члена петли нарушаетÑÑ ÐµÑ‘ работа, поÑтому чаÑто иÑпользуютÑÑ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð¸Ñ‚ÐµÐ»Ð¸ (Hub), предÑтавлÑющие из ÑÐµÐ±Ñ Ð¼Ð½Ð¾Ð³Ð¾Ð¿Ð¾Ñ€Ñ‚Ð¾Ð²Ñ‹Ðµ уÑтройÑтва и замыкающие FC-AL цепь при Ñбое компонента.
- ÐšÐ¾Ð¼Ð¼ÑƒÑ‚Ð¸Ñ€ÑƒÐµÐ¼Ð°Ñ Ð¤Ð°Ð±Ñ€Ð¸ÐºÐ° (Fabric)
ОÑнована на применении коммутаторов. ПозволÑет подключать огромное количеÑтво уÑтройÑтв, легко раÑширÑетÑÑ (очень похожа на Ethernet).
[править] ЛогичеÑкие типы портов
Ð’ завиÑимоÑти от поддерживаемой топологии и типа уÑтройÑтва порты разделÑÑŽÑ‚ÑÑ Ð½Ð° неÑколько типов:
- E_Port (Expansion port, Порт раÑширениÑ)
ИÑпользуетÑÑ Ð´Ð»Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð¼ÑƒÑ‚Ð°Ñ‚Ð¾Ñ€Ð¾Ð². Может быть Ñоединён только Ñ Ð¿Ð¾Ñ€Ñ‚Ð¾Ð¼ типа E_Port.
- F_Port (Fabric port)
Порт фабрики. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ñ‚Ð¾Ð² типа N_Port к коммутатору.
- FL_Port
Порт фабрики Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ петли. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ñ‚Ð¾Ð² типа NL_Port к коммутатору.
- L_Port (Loop port)
Порт уÑтройÑтва Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ топологии «ПетлÑ».
- N_Port
Порт уÑтройÑтва Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ топологии «Точка-Точка».
- NL_Port
Порт уÑтройÑтва Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ топологии «Фабрика».
[править] ФизичеÑкие типы портов
Тип волокна | СкороÑÑ‚ÑŒ (MB/s) | Transmitter | Тип интерфейÑа | РаÑÑтоÑние |
---|---|---|---|---|
Single-Mode Fiber | 400 | 1300nm Longwave Laser | 400-SM-LL-I | 2m - 2km |
200 | 1550nm Longwave Laser | 200-SM-LL-V | 2m - >50km | |
1300nm Longwave Laser | 200-SM-LL-I | 2m - 2km | ||
100 | 1550nm Longwave Laser | 100-SM-LL-V | 2m - >50km | |
1300nm Longwave Laser | 100-SM-LL-L | 2m - 10km | ||
1300nm Longwave Laser | 100-SM-LL-I | 2m - 2km | ||
Multimode Fiber (50µm) | 400 | 850nm Shortwave Laser | 400-M5-SN-I | 0.5m - 150m |
200 | 200-M5-SN-I | 0.5m - 300m | ||
100 | 100-M5-SN-I | 0.5m - 500m | ||
100-M5-SL-I | 2m - 500m | |||
Multimode Fiber (62.5µm) | 400 | 850nm Shortwave Laser | 400-M6-SN-I | 0.5m - 70m |
200 | 200-M6-SN-I | 0.5m - 150m | ||
100 | 100-M6-SN-I | 0.5m - 300m | ||
100-M6-SL-I | 2m - 175m |
[править] КлаÑÑÑ‹ обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ (CoS)
Fiber Channel поддерживает Ñледующие клаÑÑÑ‹ обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ (Classes of service, CoS).
Стандарт FC-PH определÑет КлаÑÑÑ‹ 1-3, КлаÑÑ 4 определён в Ñтандарте FC-PH-2, КлаÑÑ 5 предложен Ð´Ð»Ñ Ð¸Ð·Ð¾Ñ…Ñ€Ð¾Ð½Ð½Ð¾Ð³Ð¾ режима, но недоÑтаточно Ñтандартизирован, КлаÑÑ 6 определён в Ñтандарте FC-PH-3, КлаÑÑ F - в Ñтандартах FC-SW и FC-SW2.
- КлаÑÑ 1 — Acknowledged Connection Service (выделенные каналы Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸ÐµÐ¼). Между Ð´Ð²ÑƒÐ¼Ñ ÑƒÑтройÑтвами через коммутатор или фабрику уÑтанавливаетÑÑ Ð²Ñ‹Ð´ÐµÐ»ÐµÐ½Ð½Ð¾Ðµ Ñоединение. Принимающее уÑтройÑтво отправлÑет на передающее уÑтройÑтво Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ñ‘Ð¼Ð° каждого кадра. Соединение оÑтаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ñ‹Ð¼ до тех пор, пока передача данных не будет завершена. Ð’Ñ€ÐµÐ¼Ñ ÑƒÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÑоÑтавлÑет неÑколько микроÑекунд. ПредоÑтавлÑемый канал обычно дуплекÑный, Ñ…Ð¾Ñ‚Ñ Ð¿Ð¾ необходимоÑти возможна Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ ÑимплекÑного (например, еÑли необходимо одновременно передавать данные одному узлу и принимать от другого). УÑтройÑтвам доÑтупна вÑÑ ÐµÐ³Ð¾ пропуÑÐºÐ½Ð°Ñ ÑпоÑобноÑÑ‚ÑŒ. ИÑпользуетÑÑ Ñквозное управление потоком. ГарантируетÑÑ Ð²Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ обмена и правильный порÑдок приема кадров. Идеально подходит Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ð¹, работающих Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼Ð¸ объемами данных — например, ÑиÑтемы Ð¼Ð¾Ð´ÐµÐ»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð»Ð¸ обработки видео. ЕÑли пропуÑÐºÐ½Ð°Ñ ÑпоÑобноÑÑ‚ÑŒ не иÑпользуетÑÑ Ð¿Ð¾Ð»Ð½Ð¾Ñтью данным приложением, она вÑе равно недоÑтупна Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… приложений, пока Ñоединение не будет закрыто, так как попытки ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ Ñ‚Ð°ÐºÐ¸Ð¼ портом будут отвергатьÑÑ Ñ Ð²Ñ‹Ð´Ð°Ñ‡ÐµÐ¹ Ñигнала "занÑто". Ðерациональное иÑпользование пропуÑкной ÑпоÑобноÑти может быть обуÑловлено не только малым потоком данных, генерируемых приложением, но и разной ÑкороÑтью работы портов (при иÑпользовании предоÑтавлÑемой первым клаÑÑом возможноÑти обмена через буфер). Ð’ Ñтой ÑвÑзи интереÑна возможноÑÑ‚ÑŒ коммутатора отÑлеживать занÑтый порт и Ñтавить его в очередь на Ñоединение: как только порт оÑвободитÑÑ, коммутатор Ñразу же уÑтановит Ñ Ð½Ð¸Ð¼ Ñледующее Ñоединение (Camp on).
- КлаÑÑ 2 — Acknowledged Connectionless Service (передачи без организации ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸ÐµÐ¼). Каждый кадр коммутируетÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸Ñимо от оÑтальных, конечный порт может одновременно передавать и принимать данные от неÑкольких узлов, при Ñтом канал между Ð´Ð²ÑƒÐ¼Ñ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹Ñтвующими не выделÑетÑÑ (по Ñути, проиÑходит мультиплекÑирование коммутатором трафика). Каждый кадр подтверждаетÑÑ Ð¿Ñ€Ð¸Ð½Ð¸Ð¼Ð°ÑŽÑ‰Ð¸Ð¼ уÑтройÑтвом. Кадры могут доÑтавлÑÑ‚ÑŒÑÑ Ð¿Ð¾ различным маршрутам, то еÑÑ‚ÑŒ упорÑÐ´Ð¾Ñ‡ÐµÐ½Ð½Ð°Ñ Ð´Ð¾Ñтавка кадров в данном клаÑÑе не гарантирована, упорÑдочивание поÑледовательноÑти кадров оÑущеÑтвлÑетÑÑ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ð°Ð¼Ð¸ вышележащих уровней. Ð£Ñ‚Ð¸Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð´Ð¾Ñтупной полоÑÑ‹ пропуÑÐºÐ°Ð½Ð¸Ñ Ð·Ð½Ð°Ñ‡Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾ выше, чем в КлаÑÑе 1, что полезно Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸ неравномерного (bursty) трафика.
- КлаÑÑ 3 — Unacknowledged Connectionless Service, иногда называетÑÑ Datagram Сonnectionless Service (передачи без организации ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¸ без подтверждениÑ). Ðналогичен клаÑÑу 2 за иÑключением того, что иÑпользуетÑÑ Ð¼ÐµÐ¶Ð±ÑƒÑ„ÐµÑ€Ð½Ð¾Ðµ (BB Credit) управление потоком, а Ñледовательно, нет наÑтоÑщего Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð´Ð¾Ñтавки. За Ñчет Ñтого удаетÑÑ Ð´Ð¾Ñтичь более выÑокой пропуÑкной ÑпоÑобноÑти, но гарантий доÑтавки нет, упорÑÐ´Ð¾Ñ‡ÐµÐ½Ð½Ð°Ñ Ð´Ð¾Ñтавка кадров не гарантирована. УпорÑдочивание поÑледовательноÑти кадров и Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° повторную передачу потерÑнных кадров оÑущеÑтвлÑетÑÑ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ð°Ð¼Ð¸ вышележащих уровней. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð°Ñ†Ð¸Ð¸ многоадреÑных и широковещательных раÑÑылок, применÑетÑÑ Ñ‚Ð°ÐºÐ¶Ðµ в ÑиÑтемах маÑÑовой памÑти. Ðаиболее раÑпоÑтранённый клаÑÑ ÐºÐ¾Ð¼Ð¼ÑƒÑ‚Ð¸Ñ€ÑƒÐµÐ¼Ñ‹Ñ… FC-Ñетей.
- КлаÑÑ 4 — Fractional Bandwidth Connection-oriented Service (Ñоединение Ñ Ð´Ñ€Ð¾Ð±Ð½Ð¾Ð¹ полоÑой пропуÑканиÑ) между N_Ports. Сходен Ñ ÐšÐ»Ð°ÑÑом 1, так как тоже предполагает уÑтановление ÑоединениÑ, подтверждение доÑтавки, фикÑированную задержку, Ñоблюдение порÑдка кадров. Соединение между портами уÑтанавливаетÑÑ Ð² виде виртуального канала Ñ Ð¿Ð¾Ð»Ð¾Ñой пропуÑканиÑ, доÑтаточной Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑƒÑлуг Ñ Ð¿Ñ€ÐµÐ´Ñказуемым качеÑтвом (QoS, включающий гарантированные полоÑу пропуÑÐºÐ°Ð½Ð¸Ñ Ð¸ макÑимальную задержку). Такой виртуальный двунаправленный канал ÑоÑтоит двух однонаправленных виртуальных Ñоединений (Virtual Circuit, VC), причём на каждом VC могут обеÑпечиватьÑÑ Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð½Ñ‹Ðµ QoS. Каждый N_port может уÑтанавливать неÑколько таких Ñоединений (до 254). ИÑпользуетÑÑ Ð´Ð»Ñ ÐºÑ€Ð¸Ñ‚Ð¸Ñ‡Ð½Ñ‹Ñ… ко времени доÑтавки данных — например, видео- и аудиопотоков.
- КлаÑÑ 5 - Isochronous Service (изохронное Ñоединение). Ðе Ñтандартизован. Предназначен Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ð¹, требующих немедленной доÑтавки данных без промежуточной буферизации.
- КлаÑÑ 6 — Unidirectional Connection Service (однонаправленное Ñоединение). Ðналогичен КлаÑÑу 1, но ÑвлÑетÑÑ Ð¸Ñключительно однонаправленным. ИÑпользуетÑÑ Ð´Ð»Ñ ÑˆÐ¸Ñ€Ð¾ÐºÐ¾Ð²ÐµÑ‰Ð°Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… и многоадреÑных раÑÑылок через ÑоответÑтвующий Ñервер. N_port может затребовать ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÐšÐ»Ð°ÑÑа 6 на одно или неÑколько уÑтройÑтв (портов). УÑтановленное Ñоединение ÑущеÑтвует, пока инициатор в Ñвном виде не закроет его. Разработан Ð´Ð»Ñ Ð´Ð¾Ñтавки трафика реального времени (например, аудио и видео).
- Смешанный клаÑÑ â€” Intermix — ÑвлÑетÑÑ Ð¿Ð¾Ð´Ð²Ð¸Ð´Ð¾Ð¼ клаÑÑа 1. ПозволÑет передавать кадры клаÑÑа 2 или 3 в те моменты, когда приложение первого клаÑÑа не занимает канал, причем кадры клаÑÑов 2 или 3 необÑзательно должны быть адреÑованы тому же получателю, что и у клаÑÑа 1. Был Ñпециально разработан Ñ Ñ†ÐµÐ»ÑŒÑŽ чаÑтично уÑтранить блокировку фабрики передачами первого клаÑÑа.
- КлаÑÑ F - иÑпользуетÑÑ ÐºÐ¾Ð¼Ð¼ÑƒÑ‚Ð°Ñ‚Ð¾Ñ€Ð°Ð¼Ð¸ Ð´Ð»Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ передачи Ñлужебной информации, передача идёт без уÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾ Inter Switch Links (ISL) между E_ports.
[править] Сферы Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Fiber Channel
Fiber Channel широко применÑетÑÑ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¡ÐµÑ‚ÐµÐ¹ Ð¥Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð”Ð°Ð½Ð½Ñ‹Ñ… (Storage Area Networks). Ð‘Ð»Ð°Ð³Ð¾Ð´Ð°Ñ€Ñ Ð²Ñ‹Ñокой ÑкороÑти передачи данных, малой задержке и раÑширÑемоÑти практичеÑки не имеет аналогов в Ñтой облаÑти.