Skip to content

Research KO

elecbug edited this page Sep 24, 2026 · 3 revisions

연구 설계와 결과 보고

Wiki home › 한국어 문서 · 영어 원문

프로젝트 소개 · 개념 · 연구 · 출판·인용 · 문서 기준

연구 주제

토폴로지와 연결성. 피어 연결이 형성되고 변화하는 방식과 오버레이 구조가 통신 동작에 미치는 관계를 연구합니다.

브로드캐스트 성능. 다양한 설정에서 메시지 도달률, 전파 지연, 중복 수신과 프로토콜 오버헤드를 평가합니다.

네트워크 다이나믹스. 피어의 참가와 이탈, 통신 지연, 패킷 손실 및 기타 네트워크 조건이 연결성과 메시지 전파에 미치는 영향을 분석합니다.

이 항목들은 연구 질문이며, 모든 버전이 구현한 지표나 프로토콜의 목록은 아닙니다. 현재 구현에서 지원하는 수단은 v3 아키텍처 가이드와 시나리오 레퍼런스에서 확인하십시오.

실험 주기

실험은 연구 질문을 증거와 연결합니다. 아래 주기는 연구 작업 흐름이며, 실행 가능한 시나리오 스키마나 모든 단계의 자동화를 뜻하지 않습니다.

flowchart LR
    Question["연구 질문과 기준 설정"]
    Design["피어 집합, 워크로드, 조건, 측정 규칙 선택"]
    Prepare["실행 자원 준비와 설정 기록"]
    Run["피어 활동 실행과 증거 수집"]
    Assess["완료 여부, 관측 누락, 비교 가능성 점검"]
    Compare["반복 실행 비교와 결과 보고"]

    Question --> Design --> Prepare --> Run --> Assess --> Compare
    Assess -->|"기록한 설정으로 반복"| Prepare
    Compare -->|"연구 질문 보완"| Question
Loading

계획한 입력과 관측된 결과를 따로 기록하십시오. 같은 설정이나 난수 시드를 사용하면 실험 설정을 재현하는 데 도움이 되지만, 실행 시간, 토폴로지 또는 메시지 전달까지 같아지는 것은 아닙니다. 비교 기준은 연구 결과 보고 원칙에서, 지원 동작의 표현 방법은 v3 시나리오 가이드에서 확인하십시오.

연구 질문에서 실험으로

차원 결정하고 기록할 내용
비교 기준 실험, 변경할 변수, 검증할 가설입니다. 프로토콜 변경과 워크로드 또는 가용 자원 변경을 구분합니다.
피어 집합과 참여 상태 발행·구독·참가·이탈하는 피어를 정의하고, 최초 집합을 대상으로 하는지 관측 중 계속 자격을 유지한 세션을 대상으로 하는지 명시합니다.
워크로드와 조건 메시지 크기와 시간, 피어 활동, 부여한 네트워크 조건, 호스트 배치, 공유 자원의 제약입니다.
실행 자원과 배치 호스트 구성과 식별자, 설정한 용량과 예외, 배치 정책, 관측한 점유·준비 상태와 실행 중 설정 변경 시점.
관측 그래프 간선이나 이벤트의 의미, 수집 간격, 전달 마감 시점, 시계 불확실성과 보고 누락이 해석에 미치는 영향입니다.
반복과 출처 각 반복의 소프트웨어 리비전, 입력 설정, 무작위화 입력, 실행 환경, 실행 식별자, 보존한 증거입니다.
실패와 복구 완료·실패·취소·중단된 회차, 이어하기 방식, 원래 시도와 재시도의 관계, 비교에 포함·제외한 결과와 그 이유입니다.

오버레이는 피어 사이의 프로토콜 관계를, 호스트 배치는 피어의 실행 위치를 나타내며, 물리 네트워크는 그 기반 연결성을 제공합니다. 이 관점들은 서로 다른 질문에 답합니다. 배치 그림이 프로토콜 토폴로지를 입증하지 않으며, 보고된 프로토콜 관계만으로 애플리케이션 전달을 입증할 수도 없습니다.

실험 결과 보고 원칙

  • churn 상황의 도달률을 보고할 때 수신 대상이 되는 피어 집합과 관측 시간 구간을 정의합니다.
  • 전달 성공 여부와 독립적으로 수신 자격을 정합니다. 생존한 피어만의 결과를 최초 피어 집합에 대한 도달률로 오해하지 않도록 이탈과 집합 커버리지를 함께 보고합니다.
  • 도달률, 지연, 중복 수신과 프로토콜 오버헤드를 하나의 효율 값으로 합치지 않고 구분합니다.
  • 메시지, 수신자, 수신자-메시지 쌍, RPC, 식별자 참조, 바이트 등 집계 단위와 규칙을 명시합니다. 지연이 성공한 전달만을 포함하는지도 밝힙니다.
  • 직접 측정한 값, 메타정보에서 추정한 값, 모델 예측과 고정 참고자료를 구분하십시오. 추정에는 사용한 근거·가정·미분류 비율을 함께 보고하고, 상관이나 기준 실험과의 차이만으로 전파 원인이나 인과 효과를 단정하지 마십시오.
  • 설정한 전송률 제한, 관측한 바이트·전송률, 물리 회선의 용량을 구분하십시오. 측정 계층과 방향을 명시하고 같은 전송의 양쪽 끝을 중복 합산하지 않도록 하십시오.
  • 텔레메트리 누락을 프로토콜 실패로 해석하지 않도록 누락되거나 불확실한 관측을 명시합니다.
  • 실험을 재현하는 데 필요한 구현 버전 또는 커밋, 시나리오, 설정과 무작위화 입력을 기록합니다.
  • 관측 결과와 설정 목표를 구분하고, 과거 검증 기록과 현재 리비전에서 수행한 검사를 구분합니다. 입력을 반복해도 분산 실행이 같아지는 것은 아닙니다.

위 항목은 프로젝트 수준의 원칙입니다. 정확한 이벤트 스키마, 공식, 기본값과 내보내기 동작은 버전별 구현 계약입니다.

현재 v3에서 수집·추정하는 지표의 정확한 정의는 실험 지표와 대역폭 측정에 있습니다. 저장 결과 시각화는 반복 비교와 이미지·자료 내보내기 방법을, API는 분석 작업과 로그 필드를 설명합니다. 비교에는 지표 이름뿐 아니라 정의 버전·모집단·단위·집계 규칙이 같은지 확인하십시오.

배치·시간·복구가 결과에 미치는 영향

호스트별 용량은 Peer 개수의 한도이며 자원 사용량의 측정값은 아닙니다. 용량을 100:50으로 설정해 Peer를 50:25로 배치하더라도 CPU나 메모리 사용량이 같은 비율이라는 결론은 얻을 수 없습니다. 호스트별 점유량, Peer 역할, 자원 부하를 함께 기록하고 실행 중 용량을 조정했다면 변경 전후를 구분해 해석하십시오. 설정값만 같아도 다른 실험의 점유나 정리 중인 컨테이너에 따라 실제 배치와 대기 시간이 달라질 수 있습니다.

요청한 join 간격과 관측한 생성·준비 시각을 구분하십시오. 가용 슬롯 대기, 컨테이너 시작, 작업 지연과 관측 누락이 실제 피어 집합을 바꿀 수 있습니다. 목표 집합 크기와 관측한 집합 크기의 차이를 함께 보고하면 스케줄링 지연을 프로토콜의 churn 효과와 구분하는 데 도움이 됩니다.

이어하기와 재시도는 시도 이력으로 기록하십시오. 완료된 회차를 보존한 채 남은 회차를 실행하는 것과, 실패한 회차를 새로 실행하는 것은 서로 다른 복구 방식입니다. 재시도 성공만 남기거나 여러 시도를 독립적인 반복 표본으로 계산하면 비교 집합과 실패율이 달라집니다. 포함한 회차·시도의 선택 규칙, 실패·중단 수, 복구 전후 설정을 함께 보고하십시오.

v3의 적용 기준과 복구 조건은 용량과 배치, 결과 보존, 실행과 복구에서 확인하십시오. 브라우저 재연결이나 대시보드의 관측 누락만으로 실험 실패를 판정하지 말고 저장된 실행 상태와 기록을 대조하십시오.

측정의 연구 배경

HyParView 기술 보고서의 §2.5와 §5.2는 활성 노드를 기준으로 메시지 전파를 평가하고 장애 이후 동작을 살펴봅니다. 이는 살아남은 참여자 사이의 전달을 묻는 연구 질문에 배경을 제공합니다. 이 문서에서는 그러한 질문의 대상 집합을 명시해야 한다고 해석하며, 수신하지 못하고 이탈한 피어만 제외하는 근거로 사용하지 않습니다.

Pongthawornkamol 외, ICAC 2013의 §2.2와 §3.2.2–3은 신뢰성을 이벤트 마감 전 전달과 연결하고, 발행자-구독자 흐름을 이벤트 발생률로 가중합니다. 이 모델은 브로커와 링크 장애를 다루므로 churn 상황에서 수신자의 구독 세션을 추적하는 문제와 다릅니다.

이 연구들은 측정의 배경 자료이며, K-P2PLab 논문이나 해당 프로토콜이 이곳에 구현되어 있다는 주장이 아닙니다. K-P2PLab의 구체적인 시간 구간, 세션 증거, 가중, 불확실성, 중복 집계 규칙은 구현 설계의 선택입니다. 정확한 정의와 한계는 v3 지표 가이드에서 관리합니다.

논문

플랫폼 논문과 활용 연구에서 출판 목록을 확인하십시오.

플랫폼 논문

플랫폼 논문으로 이동했습니다.

K-P2PLab을 사용한 연구

K-P2PLab을 사용한 연구로 이동했습니다.

K-P2PLab 인용

버전별 인용 지침을 따르고 사용한 구현체의 commit을 기록하십시오.

Clone this wiki locally