CodingBox Q&A Ask question

RB5009 SFP+ 케이지의 S-RJ01: auto-negotiation incomplete, 포트가 100Mbps에 고정

Asked Active Viewed 30 AI translation from English
10

집 랙이고, RB5009에는 SFP+ 케이지가 딱 하나 있습니다. 방을 가로질러 광케이블을 깔기보다는 여기서 구리 기가비트 업링크를 하나 더 뽑고 싶어서 구리 모듈을 꽂았습니다.

  • MikroTik RB5009UG+S+IN, RouterOS 7.1rc4
  • sfp-sfpplus1에 MikroTik S-RJ01 1000BASE-T 구리 SFP
  • 약 3미터 Cat6 패치 케이블로 기가비트 스위치에 연결
  • 같은 배치의 케이블로 연결된 그 스위치의 다른 포트는 전부 1G full로 링크됨

포트는 올라오는데 100으로만 올라옵니다:

/interface ethernet monitor sfp-sfpplus1
  Auto Negotiation: incomplete
  Rate: 100Mbps

부하가 걸리면 이 인터페이스에는 TX/RX 패킷 에러도 쌓이는데, 내장 포트에서는 전혀 없는 현상입니다.

시도한 것:

  • 인터페이스를 여러 번 disable/enable - 가끔 1G로 올라오지만 대부분은 안 됨
  • 다른 Cat6 패치 케이블과 반대쪽 스위치의 다른 포트로 시도
  • 반대쪽 스위치 포트를 1G full duplex로 고정, 이쪽은 아무것도 안 바뀜

이건 모듈 문제인가요, SFP+ 케이지에 1G 구리 모듈을 물린 구성 자체의 문제인가요, 아니면 RouterOS 릴리스 문제인가요? 그리고 포기하고 광케이블을 까는 것 말고 더 시도해 볼 만한 게 있을까요?

Comments 6

Accepted answer

협상을 멈추고 고정하세요. S-RJ01이 말썽 부린 MikroTik 장비마다 이렇게 하면 안정됐습니다:

/interface ethernet set sfp-sfpplus1 auto-negotiation=no speed=1Gbps full-duplex=yes

그다음 /interface ethernet monitor sfp-sfpplus1로 확인하세요.

출력이 헷갈리는 이유는 이렇습니다. 호스트 포트와 1G 구리 SFP 사이의 레인은 항상 SGMII의 1G 비트레이트로 동작하고, 100Mbit는 바이트마다 열 번씩 반복해서 이 위에 실립니다. 그러니 호스트가 찍는 rate가 모듈 내부의 구리 PHY가 스위치와 협상한 값과 반드시 같지는 않습니다 - 모듈의 두 절반이 서로 다른 값을 가질 수 있고, "incomplete"는 호스트 쪽이 자기 몫의 협상을 포기했다는 뜻입니다.

주의할 점 두 가지. 이쪽에서 auto-negotiation을 끄면 반대쪽도 1Gbps full duplex로 고정해야 합니다. 안 그러면 half duplex로 떨어지는데, 그러면 속도 문제를 진단하기 더 까다로운 듀플렉스 문제로 바꾼 셈이 됩니다. 그리고 이건 어디까지나 우회책이라는 걸 분명히 해두세요 - 벤더 쪽 수정은 없으니, 그 포트가 중요한 트래픽을 나른다면 같은 케이지에 다른 제조사의 구리 모듈을 시도해 볼 가치가 있습니다.

8 United Stateslinkeng21US Show original (English) AI translation

저도 7.1rc4라서 그 부분은 이미 같은 조건이고요 - 오히려 궁금한 건 이쪽에서 incomplete라고 나올 때 반대쪽은 뭐라고 보고하느냐입니다. 반대쪽도 100으로 보이나요, 아니면 자기는 기가비트 링크라고 생각하나요?

이걸 여쭤보는 이유는 제 RB4011iGS+의 S-RJ01도 아주 비슷하게 움직이기 때문입니다. 가끔씩만 1G에 도달하고, 그것도 포트를 disable/enable한 다음에만 그렇습니다. 시도할 때마다 뭐가 다른 건지 끝내 알아내지 못했고, 그 순간에 반대쪽 스위치를 같이 읽어볼 생각도 못 했네요.

3 RussianetadminRU Show original (English) AI translation

반대쪽 스위치도 제 쪽과 똑같습니다 - 거기도 100Mbit 링크로 나와서, 적어도 양쪽이 서로 다른 방향으로 거짓말을 하고 있진 않네요.

disable/enable이 여기서도 도움이 되긴 하는데 일정하지는 않습니다. 대략 네 번 중 한 번 정도 1G로 돌아오고 나머지는 똑같은 Auto Negotiation: incomplete 줄과 함께 100Mbps에 머뭅니다. 100에 머물 때는 부하 걸리면 에러 카운터가 올라가고, 어쩌다 1G로 올라올 때는 그대로 0입니다.

4 United Kingdomcoaxpilot98GB Show original (English) AI translation

그걸 일반적인 해법으로 받아들이기엔 조심스러운 게, 이 구리 모듈에 대한 벤더 자체 문서는 정반대로 말하고 있습니다. S-RJ01과 S+RJ10은 속도와 듀플렉스가 협상되어야만 동작한다고 되어 있고, 그 문서대로라면 rate를 수동으로 고정한 포트는 아예 링크가 올라오면 안 됩니다. 그런데 RB5009와 RB4011 계열에서의 실제 현장 사례는 그와 자주 어긋나니, 둘 중 어느 쪽 설명도 그대로 믿기보다는 둘 다 시도해서 본인 하드웨어에서 되는 쪽을 쓰는 게 낫습니다.

관련은 없지만 같은 릴리스에서 겪은 일인데: CRS318-16P-2S+에 꽂은 S+85DLC03D가 하루에도 몇 번씩 링크가 끊겼습니다. 그러니 SFP 포트에서 이상한 일이 생긴다고 전부 구리 모듈 탓으로 돌리지는 않으려 합니다.

그리고 혹시 그 케이지에 S+RJ10을 고려하신다면 - 전력을 눈에 띄게 더 먹고 발열도 심해서, 추가 통풍 없는 팬리스 장비에는 반갑지 않은 선택입니다.

0 Indiawaverunner21IN Show original (English) AI translation

더 오래된 장비인데 같은 계열의 고생을 겪었습니다. 6.45.1의 CCR1016-12S-1S에 Finisar FCLF-8521-3 구리 모듈 열두 개를 꽂았는데, 라우터는 굳이 이걸 FCMJ-8521-3이라고 불렀습니다. 열두 개 전부 모듈 목록에는 인식됐지만 단 하나도 링크가 붙지 않았습니다. Huawei 스위치로도, 직결한 노트북으로도 마찬가지였고요.

모든 포트를 올린 방법:

/interface ethernet set [find] auto-negotiation=no speed=1Gbps full-duplex=yes tx-flow-control=off rx-flow-control=off
/interface ethernet disable [find]
/interface ethernet enable [find]

양방향 flow control을 끈 것도 중요했고, disable/enable 사이클도 중요했습니다 - 모듈은 그걸 거쳐야만 새 설정으로 다시 초기화됐습니다. 반대쪽도 1Gbps full duplex로 고정해야 한다는 주의사항은 똑같습니다. 안 그러면 half로 떨어집니다.

2 IndiagigengIN Show original (English) AI translation

절반의 성공이라 그렇게 보고합니다. auto-negotiation을 끄고 양쪽 다 1Gbps full-duplex로 강제하니 포트가 1G를 유지하고, 에러 카운터도 더 이상 안 올라가고, disable/enable 복불복도 끝났습니다.

아직 안 되는 건: 모듈에 직결한 오래된 100Mbit 장비가 이제는 어느 쪽으로 설정해도 아예 링크가 안 붙습니다. 그 구간은 모듈과 장비 사이에 작은 기가비트 스위치를 끼워 넣는 걸로 더 씨름하지 않기로 했습니다. 그러니 업링크는 쓸 수 있게 됐지만, 모듈이 고쳐졌다고는 못 하겠습니다.

0 United Kingdomcoaxpilot98GB Show original (English) AI translation
Log in to comment. Log in