<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://devhrxoobm.itwiki.kr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dcn</id>
	<title>IT 위키 - 사용자 기여 [ko]</title>
	<link rel="self" type="application/atom+xml" href="https://devhrxoobm.itwiki.kr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dcn"/>
	<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/w/%ED%8A%B9%EC%88%98:%EA%B8%B0%EC%97%AC/Dcn"/>
	<updated>2026-09-16T06:28:18Z</updated>
	<subtitle>사용자 기여</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=Kademlia&amp;diff=41678</id>
		<title>Kademlia</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=Kademlia&amp;diff=41678"/>
		<updated>2025-10-30T04:20:46Z</updated>

		<summary type="html">&lt;p&gt;Dcn: 새 문서: Kademlia는 분산 해시 테이블(DHT, Distributed Hash Table)을 기반으로 하는 피어 투 피어(P2P) 네트워크 프로토콜이다.  800x800픽셀 ==개요== Kademlia는 2002년 Petar Maymounkov과 David Mazières가 제안한 P2P 시스템 설계로, 중앙 서버 없이 자율적인 노드 간의 검색 및 데이터 저장을 가능하게 한다. 주로 파일 공유 시스템, 블록체인, IPFS, BitTorrent 등에서 사용된다. Kademlia...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kademlia는 분산 해시 테이블(DHT, Distributed Hash Table)을 기반으로 하는 피어 투 피어(P2P) 네트워크 프로토콜이다.&lt;br /&gt;
&lt;br /&gt;
[[파일:Kademlia.png|800x800픽셀]]&lt;br /&gt;
==개요==&lt;br /&gt;
Kademlia는 2002년 Petar Maymounkov과 David Mazières가 제안한 P2P 시스템 설계로, 중앙 서버 없이 자율적인 노드 간의 검색 및 데이터 저장을 가능하게 한다. 주로 파일 공유 시스템, 블록체인, IPFS, BitTorrent 등에서 사용된다. Kademlia의 주요 특징은 XOR 거리 기반 라우팅, k-버킷 기반 라우팅 테이블, 병렬 검색 등이다.&lt;br /&gt;
==주요 구성 요소==&lt;br /&gt;
===노드 ID와 키 공간===&lt;br /&gt;
각 노드와 데이터 키는 동일한 비트 길이(예: 160비트)의 식별자 공간을 가진다. 노드 간 거리 측정은 XOR 연산으로 계산되며, 이 값이 작을수록 두 노드는 더 가깝다고 판단된다.&lt;br /&gt;
===라우팅 테이블 (k-버킷)===&lt;br /&gt;
각 노드는 자신을 기준으로 거리 범위에 따라 k-버킷이라 불리는 여러 개의 버킷을 유지한다. 각 버킷은 해당 거리 범위에 속하는 최대 k개의 노드 정보를 저장하며, 오래된 노드를 우선 유지하는 방식으로 관리된다.&lt;br /&gt;
===메시지 유형===&lt;br /&gt;
Kademlia는 다음의 기본 RPC 메시지를 정의한다.&lt;br /&gt;
*PING: 노드 생존 여부 확인&lt;br /&gt;
*STORE: (키, 값) 쌍 저장 요청&lt;br /&gt;
*FIND_NODE: 주어진 ID에 가까운 노드 검색&lt;br /&gt;
*FIND_VALUE: 주어진 키의 값을 검색하거나, 없다면 관련 노드 반환&lt;br /&gt;
==검색 및 저장==&lt;br /&gt;
===노드 탐색===&lt;br /&gt;
&lt;br /&gt;
* 1. 검색자는 타겟 ID에 가까운 α개의 노드에게 FIND_NODE 요청을 보낸다. &lt;br /&gt;
* 2. 응답 노드로부터 더 가까운 노드들을 받고, 이들을 대상으로 반복 요청한다. &lt;br /&gt;
* 3. 더 이상 가까운 노드가 없을 때 탐색 종료된다.&lt;br /&gt;
&lt;br /&gt;
이 탐색 알고리즘의 평균 시간 복잡도는 O(log n)이다.&lt;br /&gt;
===값 저장===&lt;br /&gt;
데이터는 키를 기준으로 가장 가까운 k개의 노드에 저장된다. 복제와 캐싱을 통해 내구성과 접근성이 향상된다.&lt;br /&gt;
===네트워크 참여===&lt;br /&gt;
새 노드는 부트스트랩 노드를 통해 네트워크에 접속하며, 자기 자신의 ID로 self-lookup을 수행하여 라우팅 테이블을 채운다.&lt;br /&gt;
==장점==&lt;br /&gt;
*O(log n)의 빠른 탐색 속도&lt;br /&gt;
*중앙 서버 없는 완전 분산 구조&lt;br /&gt;
*XOR 기반 거리 계산으로 간결한 구조&lt;br /&gt;
*장애 허용력 및 자가 복구 메커니즘&lt;br /&gt;
==한계==&lt;br /&gt;
*XOR 거리와 실제 네트워크 지연 간 불일치&lt;br /&gt;
*Sybil 공격 등 보안 취약점 가능성&lt;br /&gt;
*노드 ID 분포 불균형 시 부하 집중 가능성&lt;br /&gt;
==응용==&lt;br /&gt;
*[[IPFS]]&lt;br /&gt;
*[[BitTorrent]]&lt;br /&gt;
*[[Ethereum]]의 노드 검색 프로토콜&lt;br /&gt;
*[[libp2p]] 기반 DHT&lt;br /&gt;
==개념 비교==&lt;br /&gt;
다른 DHT들과 비교했을 때 Kademlia는 다음과 같은 차이점이 있다.&lt;br /&gt;
*XOR 거리 사용으로 대칭적 라우팅 가능&lt;br /&gt;
*α개의 노드에 병렬 요청을 통해 탐색 성능 향상&lt;br /&gt;
*오래된 노드 우선 보존 정책을 통한 안정성 확보&lt;br /&gt;
==같이 보기==&lt;br /&gt;
*[[분산 해시 테이블]]&lt;br /&gt;
*[[피어 투 피어 네트워크]]&lt;br /&gt;
*[[XOR 메트릭]]&lt;br /&gt;
*[[Chord 프로토콜]]&lt;br /&gt;
*[[블록체인 노드 탐색]]&lt;br /&gt;
==참고 문헌==&lt;br /&gt;
*Petar Maymounkov, David Mazières. &#039;&#039;Kademlia: A Peer-to-peer Information System Based on the XOR Metric&#039;&#039;. 2002.&lt;br /&gt;
*Carolina Monteiro et al. &#039;&#039;Enriching Kademlia by Partitioning&#039;&#039;. Protocol Labs Research. 2022.&lt;br /&gt;
==각주==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[분류:네트워크]]&lt;/div&gt;</summary>
		<author><name>Dcn</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%ED%8C%8C%EC%9D%BC:Kademlia.png&amp;diff=41677</id>
		<title>파일:Kademlia.png</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%ED%8C%8C%EC%9D%BC:Kademlia.png&amp;diff=41677"/>
		<updated>2025-10-30T04:02:33Z</updated>

		<summary type="html">&lt;p&gt;Dcn: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;출처: https://codethechange.stanford.edu/guides/guide_kademlia.html&lt;/div&gt;</summary>
		<author><name>Dcn</name></author>
	</entry>
</feed>