CodingBox 문서

적합성 코드: 바이트 3–10, 36과 확장 테이블

호스트는 모듈의 벤더 이름이 아니라 컴플라이언스 코드로 그것이 무엇인지 압니다 — “나는 10GBASE-LR이다” 또는 "나는 1000BASE-T 구리 SFP다"라고 말하는 비트 필드와, 비트 필드 공간이 바닥난 뒤 발명된 모든 것을 위한 단일 확장 코드입니다. 호스트는 이를 이용해 모듈 유형의 이름을 정하고, 어떤 속도를 제공할지 정하고, FEC와 브레이크아웃을 선택하며 — 엄격한 플랫폼에서는 — 코드가 포트와 맞지 않는 모듈을 거부합니다. 이를 올바르게 하는 것이 모듈을 코딩할 때 가장 중요한 단 하나의 일입니다.

코딩의 두 세대

메커니즘위치동작 방식
기존 비트 필드SFF-8472 바이트 3–10; SFF-8636 바이트 131–138과 164표준마다 비트 1개; 여러 개를 세팅할 수 있음(듀얼레이트, 멀티프로토콜)
확장 규격 컴플라이언스SFF-8472 바이트 36; SFF-8636 바이트 192SFF-8024 Table 4-4의 값 1개: 25G, 100G, 200G, 400G, MSA PMD
애플리케이션CMIS 디스크립터호스트 인터페이스 ID + 미디어 인터페이스 ID + 레인 수, 모듈당 여러 개 — CMIS 참고

25G나 100G 모듈은 기존 비트 대부분을 비워 두고 바이트 36이나 192에 식별 정보를 담습니다; 10G/1G 모듈은 그 반대입니다. 10G/25G 듀얼레이트 모듈은 둘 다 사용합니다.

SFF-8472 바이트 3–10(SFP 계열)

바이트비트 7비트 6비트 5비트 4비트 3비트 2비트 1비트 0
3 — 10G 이더넷 / 인피니밴드10GBASE-ER10GBASE-LRM10GBASE-LR10GBASE-SRIB 1X SXIB 1X LXIB 1X copper activeIB 1X copper passive
4 — ESCON / SONETESCON MMF 1310 LEDESCON SMF 1310 레이저OC-192 단거리SONET 전송 거리 비트 1SONET 전송 거리 비트 2OC-48 긺OC-48 중간OC-48 짧음
5 — SONET예약됨OC-12 SM 긺OC-12 SM 중간OC-12 짧음예약됨OC-3 SM 긺OC-3 SM 중간OC-3 짧음
6 — 이더넷BASE-PXBASE-BX10100BASE-FX100BASE-LX/LX101000BASE-T1000BASE-CX1000BASE-LX1000BASE-SX
7 — FC 링크 길이 / 기술매우 긺(V)짧음(S)중간(I)긺(L)미디엄(M)예약됨단파장 레이저, 선형 Rx(SA)장파장 레이저(LC)
8 — FC 기술 / 케이블인클로저 간 전기 연결(EL)OFC 미포함 단파장 레이저(SN)OFC 포함 단파장 레이저(SL)장파장 레이저(LL)액티브 케이블패시브 케이블예약됨예약됨
9 — FC 미디어트윈 액시얼(TW)트위스티드 페어(TP)미니어처 동축(MI)비디오 동축(TV)멀티모드 62.5 µm(M6)멀티모드 50 µm(M5/M5E)예약됨싱글모드(SM)
10 — FC 속도1200 MB/s800 MB/s1600 MB/s400 MB/s3200 MB/s200 MB/s바이트 62 참고100 MB/s

바이트 62(Fibre Channel speed 2)는 64GFC 이상의 속도 목록을 이어갑니다. 바이트 36에는 확장 코드가 들어갑니다. 바이트 12는 공칭 레이트를 ×100 Mb/s 단위로 나타내고(FFh → 바이트 66에서 ×250 Mb/s 단위), 바이트 11은 인코딩을, 바이트 13은 레이트 셀렉트용 레이트 식별자를 나타냅니다.

일반적인 SFP 코딩

모듈바이트 3바이트 6바이트 8바이트 36바이트 12바이트 11파장
1000BASE-SX00h01h00h00h0Dh(1.3 Gb/s)01h 8B/10B850 nm
1000BASE-LX00h02h00h00h0Dh01h1310 nm
1000BASE-T 구리00h08h00h00h0Dh01h0(해당 없음)
10GBASE-SR10h00h00h00h67h(10.3 Gb/s)06h 64B/66B850 nm
10GBASE-LR20h00h00h00h67h06h1310 nm
10G 패시브 DAC00h00h04h00h67h06h0, 바이트 60 = 케이블 컴플라이언스
25GBASE-SR00h00h00h02hFFh(바이트 66 = 67h → 25.75 Gb/s)06h850 nm
25GBASE-LR00h00h00h03hFFh / 67h06h1310 nm
25G 패시브 DAC CA-25G-N00h00h04h0DhFFh / 67h06h0
10G/25G 듀얼레이트 SR10h00h00h02hFFh / 67h06h850 nm

길이 바이트 14–19는 서로 일치해야 합니다: SR 모듈은 OM3/OM4 전송 거리를 선언하고, LR 모듈은 킬로미터를, DAC는 바이트 18에 미터를 선언합니다.

SFF-8636 바이트 131–138, 164(QSFP 계열)

바이트내용
131 — 10/40G 이더넷비트 7 확장(바이트 192 사용), 6 10GBASE-LRM, 5 10GBASE-LR, 4 10GBASE-SR, 3 40GBASE-CR4, 2 40GBASE-SR4, 1 40GBASE-LR4, 0 40G 액티브 케이블(XLPPI)
132 — SONETOC-48 장거리/중거리/단거리, 40G OTN
133 — SAS/SATASAS 6 / 12 / 24 Gb/s
134 — 기가비트 이더넷비트 3 1000BASE-T, 2 1000BASE-CX, 1 1000BASE-LX, 0 1000BASE-SX
135 — FC 링크 길이와 기술SFP 바이트 7과 비트 의미 동일
136 — FC 송신기 기술SFP 바이트 8과 동일한 EL, SN, SL, LL 비트
137 — FC 미디어TW, TP, MI, TV, M6, M5, OM3, SM
138 — FC 속도100 … 3200 MB/s, 확장 플래그
164 — 확장 모듈인피니밴드 레이트: SDR, DDR, QDR, FDR, EDR
192 — 확장 컴플라이언스Table 4-4 값

일반적인 예: 40GBASE-SR4 → 바이트 131 = 04h, 바이트 192 = 00h; 100GBASE-SR4 → 바이트 131 = 80h(확장), 바이트 192 = 02h; 100G CWDM4 → 80h / 06h; 100GBASE-CR4 DAC → 80h / 0Bh, 커넥터 23h.

CMIS — 비트 대신 애플리케이션

CMIS 모듈은 최대 15개의 애플리케이션을 나열하며, 각각 호스트 전기 인터페이스와 미디어 인터페이스(SFF-8024 코드 둘 다)를 짝짓고 레인 수를 명시합니다. 400G DR4 모듈은 400GAUI-8 ↔ 400GBASE-DR4(8:4)와 100GAUI-2 ↔ 100GBASE-DR(2:1, 4×100G 브레이크아웃용)를 광고할 수 있습니다. 호스트는 데이터 경로마다 하나를 선택합니다; 광고되지 않은 것은 구성할 수 없습니다. 자세한 내용과 선택 흐름: CMIS.

호스트가 코드를 사용하는 방법

  • 이름 지정 — CLI의 유형 문자열(10GBASE-LR, QSFP-100G-SR4)은 이 바이트에서 유도되며, 흔히 정해진 순서로 처음 세팅된 비트를 사용합니다.
  • 속도 제공 — 호스트는 코드가 있는 레이트만 나열합니다; 바이트 36 = 02h이지만 바이트 3 비트가 없는 25G 모듈에는 10G가 제공되지 않습니다(속도와 레이트).
  • FEC 선택 — 확장 코드는 FEC 가정을 담고 있으며(CA-25G-L/S/N; RS-FEC 유무에 따른 CAUI-4), 일부 호스트는 여기서 FEC를 설정합니다(FEC와 링크 트레이닝).
  • 구리 대 광 — 바이트 8 비트 2–3, 커넥터 23h, 바이트 147의 구리 기술은 호스트를 DAC 처리 방식(자동 협상, 링크 트레이닝)으로 전환시킵니다.
  • 정책 — 엄격한 플랫폼은 코드를 포트의 모드 및 자체 호환성 데이터베이스와 비교합니다; 벤더 블록이 승인되었더라도 일치하지 않으면 unsupported 또는 speed and type not supported가 발생합니다(벤더 락).

코딩 규칙

  1. 하드웨어가 실제로 충족하는 비트만 세팅하십시오; SR 모듈에 10GBASE-LR을 선언하면 "링크 없음"이 "오류 있는 링크"로 바뀔 뿐입니다.
  2. 식별 정보 전체를 일관되게 유지하십시오: 컴플라이언스 ↔ 파장 ↔ 길이 ↔ 인코딩 ↔ 공칭 레이트 ↔ 커넥터 ↔ 송신기 기술.
  3. 25G 이상은 바이트 36/192를 채우고, 바이트 12/140을 FFh로 설정하며 바이트 66/222에 ×250 Mb/s 레이트를 넣으십시오.
  4. DAC는 파장 대신 케이블 기술 비트, 미터 단위 길이, 커넥터 23h, 감쇠/컴플라이언스 바이트를 코딩하십시오.
  5. 이후 체크섬을 다시 계산하십시오(체크섬).

CodingBox에서

Check transceiver 화면은 위의 모든 비트를 일반 이름으로 디코딩하고 CMIS 애플리케이션을 나열합니다; EEPROM editor는 코드 바이트를 필드별로 편집하고, 결과 유형 문자열을 보여주며, 쓸 때 CC_BASE와 CC_EXT를 고칩니다.

바이트 맥락에서 본 전체 비트 표: SFF-8472 A0h 맵(바이트 3–10, 36, 62), SFF-8636 상위 페이지 맵(131–138, 164, 192), XFP 맵(131–138).


이 문서에서 부정확한 내용이나 오류를 발견하면 해당 부분을 선택하고 Ctrl+Enter를 눌러 해 주세요.