FC 프로토콜 기초: 계층, 포트, 로그인, 조닝
Fibre Channel은 SFP 단계에서는 이더넷과 비슷해 보입니다 — 케이지도 같고 옵틱스도 비슷합니다 — 하지만 그 위층에서는 전혀 다르게 동작합니다. 스토리지를 위해 만들어진 무손실, 연결 지향 전송 기술로, 모든 프레임이 순서대로 도착할 것을 전제하며, 패브릭은 각 장치를 하드웨어에 새겨진 이름으로 식별합니다. 이 페이지는 프로토콜 계층, 포트 종류, 주소 지정, 로그인 시퀀스, 조닝을 다룹니다 — SAN 스위치를 읽고 왜 그 옵틱스가 그토록 엄격하게 통제되는지 이해하는 데 필요한 용어입니다.
계층
| 계층 | 이름 | 내용 | 옵틱스와의 관련성 |
|---|---|---|---|
| FC-0 | 물리 | 매체, 커넥터, 송신기, 수신기, 속도 | SFP: FC 옵틱스, 속도 |
| FC-1 | 전송 | 8GFC까지는 8B/10B 인코딩, 16GFC부터는 64B/66B; 순서 세트(ordered set); FEC는 16GFC에서 선택, 32GFC 이상에서 필수 | 인코딩 바이트, FEC 카운터 |
| FC-2 | 프레이밍과 흐름 제어 | 프레임(최대 2112바이트 페이로드), 시퀀스, 익스체인지, 서비스 등급, 버퍼 대 버퍼 크레딧 | 크레딧이 거리를 결정 — SAN 설계 |
| FC-3 | 공통 서비스 | 멀티캐스트, 헌트 그룹(거의 쓰이지 않음) | — |
| FC-4 | 프로토콜 매핑 | SCSI(FCP), NVMe(FC-NVMe), FICON, IP over FC | NVMe-oF |
포트 종류
| 포트 | 역할 |
|---|---|
| N_Port | 노드 포트 — HBA 또는 스토리지 어레이 포트 |
| F_Port | 스위치의 패브릭 포트, N_Port에 연결됨 |
| E_Port | 확장 포트 — 스위치 간의 인터스위치 링크(ISL) |
| NL_Port / FL_Port | 아비트레이티드 루프 변형(레거시) |
| G_Port / U_Port | 범용/유니버설 — 연결된 대상을 파악하면 F나 E로 바뀌는 스위치 포트 |
| TE_Port / EX_Port | 트렁킹 E_Port(Cisco VSAN 트렁크) / 패브릭 간 라우터 포트 |
| D_Port | 진단 포트 — 링크에서 광학·전기 루프백 테스트를 수행(Brocade) |
이름과 주소
| 식별자 | 크기 | 의미 |
|---|---|---|
| WWNN — World Wide Node Name | 64비트 | 장치(HBA, 어레이 컨트롤러) |
| WWPN — World Wide Port Name | 64비트 | 각 포트; 조닝과 마스킹에 사용되는 식별 정보 |
| FCID(N_Port ID) | 24비트 | 패브릭이 할당하는 주소: Domain(스위치) / Area / Port; 장치가 이동하면 바뀜 |
| 잘 알려진 주소 | FFFFFC 네임 서버, FFFFFD 패브릭 컨트롤러, FFFFFE 패브릭 로그인 서버, FFFFFA 관리 서버 | 패브릭 서비스 |
WWN은 HBA와 어레이 포트에 하드웨어로 새겨져 있으며, 배선이 바뀌어도 변하지 않습니다 — WWPN 기준 조닝은 재배선 후에도 유지되지만 포트 기준 조닝은 그렇지 않은 이유입니다.
로그인 시퀀스
- 링크 초기화 — 속도 협상(양쪽이 가장 높은 속도부터 차례로 시도; 불일치나 한계에 가까운 옵틱스가 여기서 드러남), 이후 양쪽이 동기화될 때까지 프리미티브 시퀀스를 주고받음.
- FLOGI(패브릭 로그인) — N_Port가 스위치에 FCID를 요청하고 버퍼 크레딧, 서비스 등급, 프레임 크기를 협상함.
- PLOGI(포트 로그인) — 세션을 맺기 위해 N_Port끼리(또는 네임 서버와) 주고받음.
- PRLI(프로세스 로그인) — FC-4 프로토콜(SCSI 또는 NVMe)과 그 파라미터를 협상함.
- 네임 서버 등록과 조회 — 장치가 자신의 WWPN/FCID를 등록하고 조닝된 대상이 무엇인지 파악함; 이후의 변경 사항은 RSCN 알림으로 통지됨.
FLOGI 이전에 멈춘 포트는 물리 계층 문제(옵틱스, 케이블, 속도)이고, FLOGI 이후에 멈췄다면 패브릭/조닝 문제입니다(포트 진단).
서비스 등급과 흐름 제어
| 등급 | 동작 | 용도 |
|---|---|---|
| Class 1 | 전용 연결 | 사용되지 않음 |
| Class 2 | 확인 응답이 있는 비연결형 | 드묾 |
| Class 3 | 확인 응답이 없는 비연결형 데이터그램 — 크레딧 덕분에 패브릭에서 폐기되지 않음 | 사실상 모든 스토리지 트래픽 |
| Class F | 스위치 간 제어 | 패브릭 서비스 |
버퍼 대 버퍼 크레딧(BB_Credit): 수신자가 프레임 버퍼 개수를 부여하며, 송신자는 R_RDY 확인 응답을 받기 전까지 그 개수만큼만 프레임을 전송할 수 있습니다. 아무것도 폐기되지 않으며, 크레딧이 바닥나면 송신자는 기다립니다 — 무손실 동작, 거리 제한, 슬로우 드레인 혼잡의 이면에 있는 메커니즘입니다(SAN 설계).
조닝과 마스킹
- 스위치의 조닝은 어떤 WWPN끼리 서로를 볼 수 있는지 제한합니다; 단일 이니시에이터 조닝(HBA 포트 하나와 그 대상들)이 일반적입니다. 포트가 아니라 WWPN 기준으로 조닝하십시오.
- 어레이의 LUN 마스킹은 어떤 WWPN이 어떤 볼륨에 접근할 수 있는지 제한합니다.
- VSAN(Cisco) / Virtual Fabrics(Brocade)는 스위치 하나를 독립된 여러 패브릭으로 분할합니다; NPIV는 N_Port 하나가 여러 WWPN을 제시하게 해줍니다(가상 머신, 블레이드 인클로저).
- 조닝 문제는 로그인이 정상적으로 이루어진 뒤에도 “장치 없음”처럼 보입니다 — 옵틱스를 건드리기 전에 네임 서버와 활성 존 세트를 확인하십시오.
속도 협상과 옵틱스
FC 포트는 공통으로 지원하는 가장 높은 속도를 자동으로 협상합니다(예: 32/16/8GFC). SFP는 협상된 레이트를 지원해야 합니다: 32G 포트에 16G SFP를 꽂으면 포트가 16G로 제한되고, 고정 속도 포트에 다른 세대의 옵틱스를 꽂으면 아예 링크되지 않습니다. FC SFP는 이더넷 코드가 아니라 FC 속도와 미디어 비트로 코딩되며(컴플라이언스 코드), SAN 스위치는 벤더 브랜딩을 엄격하게 강제합니다(FC 옵틱스).
CodingBox에서는
FC SFP의 경우 Check transceiver 화면이 FC 속도, 미디어, 거리 비트(바이트 7–10, 62)를 해독해 주므로, 모듈이 패브릭에 들어가 속도를 협상하기 전에 어떤 세대를 표방하는지 확인할 수 있습니다.