Skip to content

ตารางแฮชแบบกระจาย (DHT)

วิธีที่โหนด IPFS ค้นหากันและค้นพบว่าใครมีเนื้อหาที่คุณกำลังมองหา

DHT คืออะไร?

ตารางแฮชแบบกระจายคือระบบค้นหาแบบกระจายศูนย์ คิดว่ามันเป็นสมุดโทรศัพท์ที่ไม่มีใครคนเดียวถือ — แทนที่จะเป็นแบบนั้น ผู้เข้าร่วมแต่ละคนถือบางหน้า และพวกเขารู้ว่าจะถามใครสำหรับหน้าที่พวกเขาไม่มี

ใน IPFS DHT จับคู่ CID กับที่อยู่เครือข่ายของโหนดที่มีเนื้อหาที่สอดคล้อง เมื่อคุณร้องขอไฟล์ด้วย CID DHT จะช่วยคุณค้นหาว่าโหนดใดสามารถให้บริการได้

วิธีทำงานใน IPFS

IPFS ใช้ Kademlia DHT แบบดัดแปลง แต่ละโหนดรักษาตารางเส้นทางของโหนดใกล้เคียง (ในแง่ระยะทาง XOR ระหว่าง node ID) เมื่อโหนดต้องการค้นหาเนื้อหา:

  1. คำนวณระยะทาง XOR ระหว่าง CID และ node ID ที่รู้จัก
  2. ถามโหนดที่ใกล้ที่สุดที่รู้จัก: "ใครมี CID นี้?"
  3. โหนดเหล่านั้นอาจมีเนื้อหาหรือชี้ไปยังโหนดที่ใกล้กว่า
  4. การค้นหาบรรจบ — แต่ละ hop เข้าใกล้โหนดที่มีไฟล์มากขึ้น
  5. เนื้อหาถูกดึงโดยตรงจากโหนดที่ให้บริการ

TIP

การค้นหานี้มักใช้เพียงไม่กี่ hop — แม้ในเครือข่ายที่มีโหนดหลายล้าน ไฟล์สามารถค้นพบได้ภายใน 20-30 ขั้นตอน

Provider records

เมื่อโหนดปักหมุดเนื้อหา มันเผยแพร่ provider record ไปยัง DHT ประกาศว่า: "ฉันมี CID X และที่อยู่ของฉันคือ Y" บันทึกเหล่านี้หมดอายุหลังจากประมาณ 24 ชั่วโมงและต้องรีเฟรชเป็นระยะ นี่คือเหตุผลที่การปักหมุดแบบ active สำคัญ — หากไม่มี provider record จะหมดอายุและเนื้อหาจะค้นไม่พบ

ทำไมคุณไม่ต้องคิดเกี่ยวกับ DHT

IPFS.NINJA จัดการการโต้ตอบ DHT ทั้งหมดให้คุณ เมื่อคุณอัปโหลดไฟล์:

  • คลัสเตอร์ของเราปักหมุดไฟล์และเผยแพร่ provider record อัตโนมัติ
  • Provider record ถูกรีเฟรชอย่างต่อเนื่อง — เนื้อหาของคุณยังคงค้นพบได้
  • Gateway ของเราแก้ไข CID ผ่าน DHT เมื่อให้บริการคำขอ
  • คุณแค่ใช้ CID และ URL gateway — DHT มองไม่เห็น