일반적인 데이터센터 프로브에는 식별 문제가 있습니다. 응답이 없으면 경로에서 패킷이 버려졌을 수 있지만, 응답 프로세스가 CPU 부하 때문에 늦었을 수도 있습니다. 운영자가 나중에 traceroute를 실행하면 적응형 라우팅이 새 패킷을 다른 경로로 보낼 수 있습니다. 경고와 진단이 서로 다른 사건을 설명하는 셈입니다.

ByteDance와 대학 연구진이 SIGCOMM 2025에서 발표한 ByteTracker는 두 모호성을 함께 없앱니다[1]. 소수의 중앙 장비가 통제된 프로브를 보냅니다. 목적지 운영체제는 커널에서 응답하므로 모든 서버에 사용자 공간 에이전트를 설치하고 정상 상태로 유지할 필요가 없습니다. 스위치는 지나가는 프로브와 응답을 복제합니다. 분석기는 나중에 비슷한 경로를 추정하지 않고 원래 교환이 실제로 지난 경로를 재구성합니다.

ByteDance는 모든 데이터센터에서 6개월 넘게 시스템을 운영했습니다. 논문의 평가 부지는 서버 수십만 대 규모입니다. 보고 기간에 네트워크 이상 276건을 찾았고 관측한 모든 사건의 원인 스위치를 5초 안에 정확히 식별했습니다. 100%는 해당 운영 기간의 사건 집합에 대한 값입니다. 가능한 모든 네트워크·호스트 장애를 탐지한다는 증명은 아닙니다.

Pingmesh는 서버 지연과 네트워크 손실을 섞습니다

Pingmesh 계열 시스템은 호스트에서 에이전트를 실행하며 왕복 지연시간과 시간 초과를 계속 측정합니다[2]. 초대형 장비군에 중요한 가시성을 제공했지만 논문은 서버가 수백만 대에 가까워질수록 커지는 네 가지 한계를 확인합니다.

첫째, 사용자 공간 응답기는 운영 프로세스와 CPU를 놓고 경쟁합니다. 대상 CPU가 포화에 가까우면 네트워크가 정상이어도 늦게 응답합니다. 이 잡음을 줄이려고 경고 임계값을 높이면 고장 난 스위칭 칩이 패킷의 0.01% 미만을 버리는 미세 장애를 숨길 수 있습니다. 엔드포인트가 바쁘다는 이유로 모니터의 감도가 떨어집니다.

둘째, 위치 식별이 늦습니다. 일반 파이프라인은 실패한 5-튜플을 모은 뒤 traceroute나 텔레메트리 질의를 실행하고 공통 구성요소에 투표합니다. 몇 분이 걸릴 수 있습니다. 패킷·플로릿 단위 부하 분산 때문에 진단 프로브가 실패한 경로와 다르게 갈 수도 있습니다.

셋째, 엔드포인트 에이전트만으로 네트워크 시간 초과와 호스트 시간 초과를 구분하기 어렵습니다. 서버 재부팅, NIC 장애, CPU 급증, 에이전트 중단, 패브릭 패킷 손실이 모두 응답 없음으로 보입니다. 외부 호스트 이벤트를 전부 모으면 비용이 커지고 밀리초 단위 빈틈은 남습니다.

넷째, 프로브 장비군도 갱신하고 제어해야 하는 소프트웨어입니다. 잘못된 릴리스가 수많은 호스트의 트래픽을 동시에 늘릴 수 있습니다. 중앙 프로버 몇 대를 멈추는 편이 서버 수백만 대의 에이전트에 긴급 조치를 배포하는 것보다 단순합니다.

ByteTracker가 엔드포인트 동작을 없앤 것은 아닙니다. 스케줄링 변동이 적은 응답 경로를 고릅니다. 예약한 잘못된 TCP 포트로 프로브를 보내면 운영체제 커널이 사용자 공간 서비스 없이 리셋 패킷을 반환합니다. 커널 처리는 일반 에이전트보다 우선순위가 높아 저자들이 시험한 CPU 과부하에서도 응답을 유지했습니다.

한 번만 보내는 TCP 프로브가 측정의 의미를 지킵니다

프로버는 raw socket으로 TCP SYN을 만들고 한 번만 보냅니다. 자동 재전송이 결과의 의미를 바꾸는 일을 막습니다. 커널이 관리하는 연결은 떨어진 SYN을 다시 보낼 수 있습니다. 나중에 응답이 오면 시간 초과가 숨고 측정 지연에는 재전송 대기까지 들어갑니다. ByteTracker는 첫 결과를 그대로 기록합니다.

호스트가 값싸게 응답하는 ICMP도 검토했지만 TCP를 선택했습니다. TCP에는 완전한 5-튜플이 있으므로 출발지 포트를 바꿔 ECMP 경로를 시험할 수 있습니다. ICMP echo에는 같은 경로 선택을 덮을 포트 필드가 없습니다. 잘못된 목적지 포트는 어떤 애플리케이션도 실수로 요청을 받지 않도록 미리 예약합니다.

SYN에는 512바이트 페이로드를 넣습니다. 스위치는 큰 패킷을 내부 셀로 나눴다가 다시 합칩니다. 작은 프로브는 분할이나 재조립에서만 생기는 결함을 지나칠 수 있습니다. 선택한 크기는 평가 네트워크의 셀 크기보다 크며, 작은 프로브로는 검사하지 못할 대형 패킷 손실 사건 다섯 건을 찾았습니다.

RST 응답에는 페이로드가 없지만 양방향을 모두 봐야 합니다. 운영 경험에서 대부분의 손실은 한 방향에만 나타났습니다. 포트의 광 송신기와 수신기는 독립적으로 실패할 수 있고, 광섬유의 다른 코어가 송신과 수신을 맡을 수 있습니다. 나가는 프로브가 성공했다고 돌아오는 경로까지 정상인 것은 아닙니다.

남북·동서 프로브가 서로 다른 스위치 로직을 검사합니다

하위 스위치는 보통 스위칭 칩 하나를 사용합니다. 링크와 포트를 덮으면 대부분의 전달 경로를 검사할 수 있습니다. 상위 섀시는 여러 칩과 내부 패브릭을 사용할 수 있습니다. 한 칩 안의 포트 두 개 사이 트래픽과 칩 사이를 건너는 트래픽은 다른 하드웨어를 지납니다.

ByteTracker는 두 패턴을 사용합니다. 남북 프로브는 네트워크 상단의 프로버에서 서버로 내려갔다가 돌아오며 계층의 물리 링크와 스위치 포트를 덮습니다. 동서 프로브는 SYN을 IP-in-IP로 감싸 외부 패킷을 특정 ToR 스위치로 보냅니다. ToR이 외부 헤더를 벗기면 내부 프로브가 상위 다중 칩 섀시를 지나 목적지로 이동해 서버 간 경로를 재현합니다.

둘째 패턴은 보조이지만 다중 칩 커버리지에 필요합니다. 섀시는 남북 검사를 모두 통과해도 내부 칩 사이 경로에서만 실패할 수 있습니다. 논문은 동서 프로빙으로 발견한 조용한 패킷 손실 여덟 건을 보고합니다. 단일 칩 대역폭이 높아질수록 다중 칩 스위치를 줄이는 것이 장애 노출과 모니터링 복잡도를 함께 낮춘다고도 평가합니다.

프로브 패턴은 실제 서비스 트래픽과 비슷해야 합니다. 스위치 관리 서브넷을 직접 겨냥한 IP-in-IP 프로브는 서버 프리픽스에만 나타나는 전달 결함을 놓칠 수 있었습니다. 최종 설계는 캡슐화 해제 뒤 실제 규칙을 따르도록 내부 패킷의 목적지를 서버 주소로 둡니다.

AI 패브릭의 세 관찰·제어 계층. ByteTracker는 가운데 패널입니다. 중앙 프로버가 트래픽을 보내고, 스위치 미러링이 실제 홉 순서를 기록하며, 목적지 커널이 설치된 에이전트 없이 응답합니다. 다른 패널은 전체 네트워크 운영 문맥을 보여 줍니다. 이 글을 위해 새로 만든 도판.

미러링이 프로브 하나를 경로 기록으로 바꿉니다

스위치는 전용 DSCP 값으로 프로브를 식별하고 ERSPAN으로 일치하는 패킷을 복제합니다. 사본은 관리 네트워크로 이동해 시험 중인 서비스 경로의 대역폭을 쓰지 않습니다. 분석기는 복제된 SYN과 RST를 홉 순서로 연결하고, 패킷 내용을 비교하며, 결과를 분류합니다.

실시간 미러링은 검사 시점의 차이를 없앱니다. 흐름이 적응형 경로를 사용해도 경로 기록은 시간 초과나 내용 변화를 일으킨 바로 그 패킷에 속합니다. 고장 난 스위칭 칩이 원래 패킷과 미러 사본을 모두 버리는 경우에는 과거 5-튜플 경로도 사용할 수 있습니다. 다음 홉에서 미러 사본 수가 갑자기 줄면 앞 장비의 장애를 가리키는 근거가 됩니다.

분석기는 홉마다 페이로드를 비교합니다. 내용의 비트가 바뀌었지만 서비스 경로에 도달한 사건 두 건을 이 방법으로 찾았습니다. 터널이나 게이트웨이가 처리 시간을 줄이려고 일부 검증을 생략하면 보통 버려질 손상 패킷이 계속 전달될 수 있습니다. 응답이 올 수 있으므로 단순 시간 초과 모니터는 찾지 못합니다.

시간 초과 분류에는 동시 프로브를 사용합니다. 대상 호스트가 응답할 수 없으면 주의 깊게 묶은 여러 프로브가 같은 엔드포인트 패턴을 보입니다. 한 네트워크 경로가 고장 나면 실패가 미러링한 경로와 정렬됩니다. 이 방식은 랙의 활성 NIC가 적을 때 정확도가 낮아지고 100밀리초 간격으로는 짧은 호스트 사건을 찾기 어려운 조밀한 ToR 메시 검사에만 의존하지 않습니다.

최종 위치 식별기는 네트워크 시간 초과로 분류한 여러 프로브가 지나간 스위치를 표시합니다. 포트에 대해서는 보수적입니다. 평가한 ERSPAN 버전은 스위치 경로를 보여 주지만 모든 입출력 포트 식별자를 제공하지 않았습니다. 운영자는 장비 로그와 카운터로 나쁜 포트를 찾아야 합니다. 새 미러링 메타데이터가 이 범위를 좁힐 수 있습니다.

운영 결과에는 여러 분모가 있습니다

ByteTracker는 NIC 하나당 초당 약 세 개의 프로브를 보냅니다. 중앙 출발점에서 프로브 약 600 Mb/s와 응답 약 100 Mb/s가 데이터센터 전체에 분산됐습니다. 한 프로브 라운드는 약 3초 안에 끝납니다. 미러 사본은 관리 패브릭을 사용합니다. 평가한 토폴로지에서는 낮은 전체 비용을 뒷받침하지만 다른 부지는 경로 수, 스위치 미러 용량, 관리망 여유에 맞춰 다시 계산해야 합니다.

6개월 동안 ByteTracker는 네트워크 이상 276건을 보고했고 기존 Pingmesh 파이프라인은 262건을 보고했습니다. 추가 사건은 주로 엔드포인트 잡음에 묻히던 미세 손실이었습니다. 다중 칩 내부의 조용한 손실 여덟 건, 대형 패킷 전용 결함 다섯 건, 비트 변형 두 건도 포함됩니다. 설계 메커니즘마다 잡은 범주가 다르므로 전체 패킷 수만 맞추는 시험으로는 부족합니다.

프로버가 네트워크 시간 초과를 본 뒤 위치를 찾는 데 5초가 걸렸습니다. 평가 기간에 관측한 276건 모두 올바른 실패 스위치에 연결됐습니다. 논문은 낮은 엔드포인트 잡음, 호스트·네트워크 분류, 같은 패킷의 경로 기록, 여러 관측을 요구하는 장비 표시 규칙을 근거로 듭니다.

장애 사례는 증거가 필요한 이유를 보여 줍니다. 고장 난 칩이 자신의 미러 사본까지 막으면 여러 하위 스위치가 문제처럼 보이지만 다음 홉의 사본 수 단절로 원인을 찾습니다. 잘못된 소프트웨어 패치가 여러 스위치에서 동시에 손실을 만들면 낮은 잡음 덕분에 모순된 경고로 버리지 않고 실제 다중 장애로 받아들입니다. 2계층 루프는 IP TTL이 없어도 반복되는 미러 경로에서 식별할 수 있습니다.

네트워크 운영 근거 원장. ByteTracker의 가운데 열은 ByteDance 데이터센터 전체에서 6개월 넘게 운영한 결과, 5초 이내 위치 식별, 관측한 276건에 대한 정확도 100%를 보여 줍니다. SkeletonHunter와 SGLB는 근거 범위가 다른 별도 연구입니다. 이 글을 위해 새로 만든 도판.

프로브가 보지 못하는 것

TCP 연결성이 정상이라고 RoCE도 정상인 것은 아닙니다. RDMA NIC가 TCP도 처리하므로 ByteTracker가 RoCE 네트워크를 지날 수 있지만 운영 패브릭은 보통 TCP와 RoCE를 서로 다른 큐에 둡니다. PFC 교착, 잘못된 PFC 설정, RoCE 클래스에만 생기는 손실은 TCP 프로브를 통과할 수 있습니다. 논문은 RoCE 큐 전용 프로브를 후속 과제로 둡니다.

호스트 시간 초과 근거도 아직 충분히 활용하지 않습니다. 스위치 위치 식별을 방해하지 않도록 호스트 사건을 구분하지만 완전한 서버·NIC 진단으로 바꾸지는 않습니다. CPU 포화, 재부팅, NIC 플래핑, 라우팅 오류를 구분할 추가 근거가 있어야 안전하게 엔드포인트를 격리할 수 있습니다.

미러링 자체도 의존성입니다. 스위치가 필요한 속도로 ERSPAN을 지원하고, 관리망이 사본을 운반하며, 분석기는 미러 패킷 누락을 견뎌야 합니다. 전달과 미러링을 함께 손상시키는 장애에는 과거 경로와 인접 장비의 사본 수가 필요합니다. 모든 데이터면 장애에서도 관찰 기능이 정상이라고 가정하지 말고 이 경우를 시험해야 합니다.

커버리지는 프로브 분포에 따라 달라집니다. 초당 세 개는 평균입니다. 특정 5-튜플, 패킷 크기, 큐, 칩 사이 전환에서만 나타나는 희소 결함은 빠져나갈 수 있습니다. 장애 표면과 프로브 종류의 매핑을 공개하고 검사하지 못한 영역을 밝혀야 합니다.

도입 시험은 경로 근거를 검증해야 합니다

옮겨 쓸 핵심은 능동 모니터링의 근거 계약입니다. 시간 초과마다 프로브 식별자, 5-튜플, 패킷 크기, 방향, 송신 시각, 커널 응답, 미러 홉 순서, 미러 사본이 끊긴 경계, 분류 신뢰도를 남겨야 합니다. 위치 식별기는 어떤 관측이 해당 스위치를 표시했는지 설명할 수 있어야 합니다.

한 방향 손실, 낮은 비율의 무작위 손실, 대형 패킷 전용 손실, 섀시 내부 장애, 페이로드 손상, 동시 다중 장비 장애, 트래픽 루프, 호스트 CPU 과부하, 프로버 장애, RoCE 전용 큐 장애를 주입해 계약을 검증할 수 있습니다. 하나의 메커니즘이 모두 잡을 것이라고 기대하지 않습니다. 각 사건이 올바른 근거 상태로 들어가고 시스템이 커버리지 부재를 분명히 표시해야 합니다.

서비스 지표는 5초를 애플리케이션 손실과 연결해야 합니다. 분산 학습 플랫폼은 늦어진 집합 통신, 중단된 작업, 장애 구성요소를 새 배치에서 제외하기까지 걸린 시간을 측정할 수 있습니다. 격리, 우회, 수리가 결과를 사용할 때만 빠른 위치 식별이 가치가 됩니다.

ByteTracker의 핵심은 단순하지만 중요합니다. 나중에 보낸 패킷에 앞선 패킷의 경로를 묻지 않습니다. 증거를 운반한 프로브의 경로를 기록하고 호스트 응답을 사용자 공간 에이전트의 스케줄링 잡음에서 분리합니다. 능동 프로빙을 통계적 힌트에서 경로를 가진 사건 기록으로 바꾸는 변화입니다.

출처와 저작권 안내

이 글은 Silicon & Systems가 작성한 편집 요약입니다. 논문의 설계, 운영 측정값, 한계를 우리 표현으로 다시 썼습니다. 원문 문장, 표, 출판사 도판은 재사용하지 않았으며, 본문의 두 도판은 다중 논문 네트워크 운영 리뷰를 위해 Silicon & Systems가 직접 만든 자산입니다. 정식 논문은 ACM이 출판했습니다. 저작권 (c) 2025 원저자, publication rights licensed to ACM. ACM eReader의 무료 전문은 DOI 페이지에서 열람할 수 있습니다.