Phase 1 — 링: 마스터 없는 파이프라인 추론
모든 기기는 자기 레이어 구간만 로드하고 작은 hidden-state 경계를 이웃에 넘긴다. 어떤 노드도 모델 전체를 가질 필요가 없고, 링에는 중앙 마스터가 없다.
왜 스타형이 아닌가
RPC 마스터는 병목이자 관문지기
고전적인 RPC 토폴로지에서는 마스터 하나가 전체 GGUF를 열고 모든 워커에게 접속한다. 이 형태는 열린 네트워크에서 세 가지로 깨진다: 마스터가 전체 체크포인트를 보유·서빙해야 하고, 모든 워커가 접속 가능해야 하며 — 캐리어 NAT 뒤의 폰은 불가능 — 마스터는 소유자가 없어야 할 네트워크의 단일 소유자가 된다.
링
레이어 구간 + 경계 전달
- 모든 기기는 같은 모델을 저장하되 연속된 자기 레이어 구간만 로드하고, 선행자와 후행자에게 정확히 두 개의 링크를 연다.
- 요청이 링에 들어오면 각 노드는 자기 레이어를 실행하고 hidden-state 경계만 이웃에 넘긴다. 마지막 rank가 토큰을 샘플링해 되돌려보낸다 — 데이터 경로에 중앙 마스터 없음, 어떤 노드도 모델 전체를 갖지 않음.
- 배치는 플래너의 rank manifest에서 나온다 — Qwen3.5-122B라면 49개 레이어를, 나타나는 GPU·CPU·NPU·폰의 어떤 조합에든 분산.

약한 기기를 진짜 구성원으로
부분 샤드, 모바일 GPU, 443 릴레이
- 부분 샤드 다운로드: 링 스테이지에 필요한 것은 체크포인트가 아니라 자기 구간이다. 스테이지 mini-GGUF는 그 텐서들만 담고(77.6 GB 전체 모델 대비 26개 텐서 254 MB), 폰은 1-레이어 구간에 ~1.5 GB만 받으면 된다.
- 모바일 GPU 경로: 폰 GPU로의 RPC 경로는 불가능했지만(Adreno의 OpenCL 버퍼 레이아웃이 RPC 직렬화를 못 견딤), 링 스테이지는 Adreno GPU에서 직접 돈다 — 스테이지가 백엔드를 로컬로 소유하므로 회선을 건너는 것은 경계뿐이다.
- NAT 우회: 폰은 인바운드 연결을 못 받으므로 데이터 플레인이 443 릴레이를 지난다 — 1바이트 role preamble을 쓰는 엣지별 WebSocket 브리지로 양쪽이 아웃바운드 접속한다. 폰은 인바운드 포트를 하나도 열지 않는다.
- Self-enrollment 마켓: 스테이지는 배정되는 게 아니라 쟁취된다. 노드가 커버리지/수요 맵을 폴링해 최대 보상 미충족 구간을 고르고, 그 구간만 내려받아 참여한다 — NAT 뒤의 폰이 링 추론을 완주하고 기여 보상까지 받는 것으로 끝에서 끝까지 검증됐다.
링의 자리
저지연 경로
링은 Kvasir의 지연 경로다: 경계는 작고 홉은 적으며, 디코드는 아무것도 중앙에 모으지 않고 루프를 돈다. 한계는 알갱이 크기다 — 노드가 질 수 있는 최소 단위가 레이어(122B 기준 ~1.4 GB)다. 그 바닥을 없애는 것이 전문가 샤딩 스웜이고, 링은 스웜이 꽂히는 서빙 백본으로 남는다.