소개
이 문서에서는 Cisco MDS(Multilayer Data Switch) 9000 Series FC(Fibre Channel) 포트에서 발생하는 문제를 설명하고 그 해결책을 제공합니다.
문제
이 링크 이벤트 로그는 다음과 같이 표시됩니다.
*************** Port Config Link Events Log ***************
---- ------ ----- ----- ------
Time PortNo Speed Event Reason
---- ------ ----- ----- ------
...
Jul 28 00:46:39 2012 00670297 fc11/25 --- DOWN LR Rcvd B2B
LR Rcvd B2B(또는 Link Failure Link Reset failed nonempty recv queue) 메시지는 포트에 연결된 디바이스가 MDS에 LR(Link Reset)을 전송하지만, MDS는 포트의 내부 정체로 인해 LRR(Link Reset Response)로 응답하지 않음을 나타냅니다. 포트에는 연결된 디바이스에서 받은 패킷이 대기열에 있지만 MDS에서 해당 패킷을 적절한 이그레스 포트에 전달할 수 없습니다. 인그레스 포트에서 여전히 대기하므로 MDS에서 LRR을 다시 보낼 수 없으며 링크가 실패합니다.
이러한 오류 메시지는 이전 이벤트 로그와 함께 제공됩니다.
%PORT-2-IF_DOWN_LINK_FAILURE: %$VSAN 93%$
Interface fc11/25 is down (Link failure)
%PORT-5-IF_DOWN_LINK_FAILURE: %$VSAN 100%$
Interface fc5/32 is down (Link failure Link Reset
failed nonempty recv queue)
참고: 이 시나리오는 MDS가 FC 디바이스에 부여하는 버퍼 크레딧 수가 3개이며 FC 디바이스의 패킷이 이그레스 FC 포트로 스위칭된다는 가정 하에 제공됩니다.
MDS
FC Port FC Port
(Egress) Arbiter (Ingress) FC device
-------- ------- --------- ---------
1) <------- FC packet 1
2) <--- Grant Request
3) Grant------------>
4) <---------------FC packet 1
5) R_Rdy--------> Tx B2B=3
6) <------- FC packet 2 Tx B2B=2
7) <---- Grant Request
8) <------- FC packet 3 Tx B2B=1
9) <---- Grant Request
10) <------- FC packet 4 Tx B2B=0
11) <---- Grant Request
12) Time lapses - Variable depending on attached HBA type
13) <--------Link Reset(LR)
14) Start 90ms "LR Rcvd B2B" timer
15) "LR Rcvd B2B" timer expires
16) <--------NOS-------->
설명
이 섹션에서는 이전 출력에 대해 설명합니다.
- FC 디바이스는 FC 패킷에서 인그레스 포트로 전송하며, 이그레스 포트로 연결됩니다.
- MDS LC(인그레스 라인 카드) 포트는 DI(Destination Index)를 결정하고 활성 수퍼바이저의 중재자(Bellagio2)에게 승인 요청을 전송합니다.
- 중재자는 XBAR를 통해 이그레스 포트에 FC 패킷 1을 전송할 수 있는 권한을 부여하는 Grant를 인그레스 포트에 다시 전송합니다.
- 인그레스 LC는 XBAR를 통해 FC 패킷 1을 이그레스 포트로 전송합니다. 그러면 인그레스 버퍼를 사용할 수 있습니다.
- 인그레스 포트는 R_RDY를 다시 FC 디바이스로 전송하며, 이는 크레딧을 보충합니다.
참고: 혼잡이 없는 경우 처음 5단계가 일반적입니다. 이 시점에서 이그레스 포트 대기열이 꽉 차서 더 이상 패킷을 수신할 수 없다고 가정합니다.
- FC 디바이스는 FC 패킷 2를 이그레스 포트로 향하는 인그레스 포트로 전송합니다.
- MDS 인그레스 LC 포트가 DI를 결정하고 Active Supervisor의 중재자(Bellagio2)에게 Grant Request를 전송합니다.
- FC 디바이스는 FC 패킷 3을 이그레스 포트로 향하는 인그레스 포트로 전송합니다.
- MDS 인그레스 LC 포트가 DI를 결정하고 Active Supervisor의 중재자(Bellagio2)에게 Grant Request를 전송합니다.
- FC 디바이스는 FC 패킷 4를 이그레스 포트로 향하는 인그레스 포트로 전송합니다.
- MDS 인그레스 LC 포트가 DI를 결정하고 Active Supervisor의 중재자(Bellagio2)에게 Grant Request를 전송합니다.
- 시간 경과 - 연결된 HBA 유형에 따라 달라집니다.
- Tx B2B=0에서 일정 시간 후, FC 디바이스는 크레딧 손실 복구를 시작하고 링크 재설정(LR)을 전송한다.
- 인그레스 포트가 LR을 수신하면 인그레스 버퍼를 확인하고 대기열에 있는 패킷이 하나 이상 있는지 확인합니다. 그런 다음 90ms LR Rcvd B2B 타이머를 시작합니다.
- Grants가 수신되고 3개의 FC 패킷이 이그레스 포트로 전송되는 경우 LR Rcvd B2B 타이머가 취소되고 LRR(Link Reset Response)이 FC 디바이스로 다시 전송됩니다. 그러나 이 경우 이그레스 포트는 혼잡한 상태로 유지되며 3개의 FC 패킷은 인그레스 포트에서 대기된 상태로 유지됩니다. LR Rcvd B2B 타이머가 만료되고 LRR은 FC 디바이스로 다시 전송되지 않습니다.
- 인그레스 포트와 FC 디바이스 모두 Not Operational Sequence 전송을 통해 링크 장애를 시작합니다.
솔루션
LR Rcvd B2B 또는 Link failure Link Reset failed nonempty recv queue 메시지로 링크가 실패한 경우, 실패한 포트는 슬로우-드레인의 원인이 아니며 슬로우/스턱 포트의 영향만 받았습니다. 링크 실패의 원인이 된 저속/고착 포트를 확인하려면 다음 단계를 완료하십시오.
- 앞서 언급한 문제로 인해 실패한 링크가 두 개 이상 있는지 확인합니다. 둘 이상의 링크가 거의 동시에 실패할 경우 모든 포트가 패킷을 일반 이그레스 포트에 전송하려고 하기 때문에 문제가 발생할 수 있습니다.
- 인접 FC 디바이스가 어떤 디바이스에 조닝(zoning)되었는지 확인하기 위해 VSAN 조닝 데이터베이스를 확인합니다. 이러한 포트를 이그레스 E 또는 로컬 F 포트에 매핑합니다. 이그레스 E에 매핑하기 위해 포트는 show fspf internal route vsan <vsan> domain <dom> 명령을 사용합니다. 로컬 F 포트에 매핑하려면 show flogi database vsan <vsan> 명령을 사용합니다. LR Rcvd B2B 메시지와 함께 실패하는 링크가 둘 이상인 경우, 이그레스 E 또는 발견된 로컬 F 포트를 결합하고 중복을 확인합니다. 중복은 저속/고착 포트의 원인일 수 있습니다.
- 2단계에서 찾은 포트에 슬로우 드레인 표시가 있는지 확인합니다. 예:
- 신용 손실(AK_FCP_CNTR_CREDIT_LOSS / FCP_SW_CNTR_CREDIT_LOSS)
- 100ms Tx B2B 제로(AK_FCP_CNTR_TX_WT_AVG_B2B_ZERO / FCP_SW_CNTR_TX_WT_AVG_B2B_ZERO)
- 시간 초과 폐기(AK_FCP_CNTR_LAF_TOTAL_TIMEOUT_FRAMES / THB_TMM_TOLB_TIMEOUT_DROP_CNT / F16_TMM_TOLB_TIMEOUT_DROP_CNT)
- 저속 포트가 이그레스 E 포트임을 확인하는 경우 FSPF next-hop 인터페이스에서 표시된 인접 스위치에서 슬로우 드레인 트러블슈팅을 계속합니다.
- 저속/무응답 포트가 FCIP 링크 또는 포트 채널인 것으로 판단되면 FCIP 링크에서 IP 재전송의 징후나 링크 장애와 같은 기타 문제가 있는지 확인합니다. show ips stats all 명령을 입력하여 문제를 확인합니다.
컨피그레이션 옵션
다음은 두 가지 가능한 시스템 컨피그레이션 옵션입니다.
관련 정보