Computer >> 컴퓨터 >  >> 네트워킹 >> 인터넷

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

최신 밈을 다운로드하고 다운로드가 완료될 때까지 참을성 있게 기다렸다고 가정해 보겠습니다. 물론 밈은 불이므로 친구에게 링크를 보냅니다. 그들은 휴대전화에서 파일을 받은 다음 친구와 공유하기 시작합니다. 이 시점에서 밈은 수십 대의 기기에 존재하므로 새로운 사람이 링크를 받으면 실제로 다른 여러 사람과 연결되고 각 사람에게서 몇 개의 조각을 얻어 다운로드가 거의 즉시 이루어집니다.

행성간 파일 시스템(Interplanetary File System) 덕분에 매우 현실적이고 놀랍도록 사용하기 쉬운 시스템이 더 빠르고 민주적인 인터넷의 열쇠가 될 수 있습니다. 위에서 설명한 것처럼 기본 아이디어는 사용자 장치가 현재 중앙 집중식 서버에 있는 데이터를 저장, 색인 생성 및 제공한다는 것입니다. 그것이 암호화폐처럼 들리더라도 틀리지 않습니다. 프로젝트의 배후자인 Juan Benet은 IPFS를 "어떤 의미에서는 웹사이트에 ... 비트코인이 돈에 한 일"이라고 설명했습니다.

행성간 파일 시스템이란 무엇입니까?

BitTorrent 또는 기타 P2P(Peer-to-Peer) 기술이 작동하는 방식을 알고 있다면 IPFS가 무엇을 하는지 가장 잘 이해할 수 있습니다. 공개 도메인 음악을 완전히 합법적으로 토렌트하는 것처럼 사용자 장치 간에 파일(대부분의 웹사이트를 구성하는 HTML, CSS 및 JavaScript 파일 포함)과 파일 조각을 전송합니다.

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

즉, 사이트를 보기 위해 서버에 연결하는 대신 근처에 누군가가 페이지(또는 일부)를 저장하고 있는지 확인하고 대신 해당 페이지에 연결합니다. 페이지를 다운로드하면 다른 사람들이 페이지(또는 일부)를 얻을 수 있도록 기기도 잠시 동안 페이지를 저장합니다. 다소 복잡해 보이지만 실제로는 HTTP 프로토콜을 사용하여 단일 서버-클라이언트 파이프라인을 통해 데이터를 전송하는 현재 시스템보다 훨씬 더 효율적입니다.

멋진 이유는 무엇입니까?

IPFS는 기존 웹에 비해 몇 가지 큰 장점이 있습니다.

  • 더 빠르고 효율적인 콘텐츠 제공:지리적으로 가까운 소스에서 파일 조각을 다운로드하여 이동 시간과 대역폭을 최소화할 수 있습니다.
IPFS(Interplanetary File System)가 웹을 분산화하는 방법
  • 분권화:단일 소스가 데이터를 제어하거나 데이터에 액세스할 수 없습니다.
IPFS(Interplanetary File System)가 웹을 분산화하는 방법
  • 정보 보존:단일 서버가 모든 데이터를 저장하지 않기 때문에 이 서버가 사라지고 GeoCities 웹사이트와 같은 모든 웹사이트를 가져갈 수는 없습니다.
  • 연결이 잘 되지 않는 지역에서 더 빠르고 안정적인 연결:원하는 콘텐츠가 액세스할 수 있는 어딘가에 다운로드되어 있는 한 실제로 장거리 연결을 할 필요가 없습니다. 산발적이거나 손상된 연결이 있는 지역.
  • 검열 저항:완벽하지는 않지만 중앙 집중식 모델보다 낫습니다.

작동 방식:짧은 버전

IPFS 네트워크는 매우 사용자 친화적이기 때문에 지금 당장은 누구나 사용할 수 있습니다. 결과는 다음과 같습니다.

IPFS(Interplanetary File System)가 웹을 분산화하는 방법
  1. IPFS에 파일을 추가하면 파일이 블록으로 분할되고 각 블록은 알고리즘을 통해 실행되고 고유한 ID가 할당됩니다. 이러한 블록 ID를 포함한 전체 파일에도 ID가 할당됩니다. 처음에는 시스템이 사람들이 파일을 얻을 수 있는 유일한 장소가 되지만 다른 노드(시스템)도 파일을 선택하여 배포할 수 있습니다.
  2. 네트워크에서 귀하의 데이터 중 일부가 이미 저장된 콘텐츠와 동일하다는 사실을 알게 되면 복사본을 추가하는 대신 해당 데이터를 사용합니다. 녹음한 앨범의 "디럭스 에디션"을 호스팅한다고 가정해 보겠습니다. 10곡은 이미 녹음한 앨범과 동일하지만 2곡은 새 노래이므로 IPFS에 추가하면 시스템에서 중복 트랙을 인식하고 기존 ID를 사용하여 새 ID만 추가합니다. 두 곡의 신곡
IPFS(Interplanetary File System)가 웹을 분산화하는 방법
  1. 네트워크의 각 노드는 일부 데이터(아마도 노드가 배포하려는 데이터와 노드가 최근에 연 데이터)와 네트워크에서 콘텐츠를 찾을 수 있는 위치를 찾는 데 도움이 되는 색인의 일부를 저장합니다.
  2. 파일을 열려면 네트워크에 해당 ID를 찾아보고 해당 파일을 가지고 있는 사람에게 연결하도록 요청합니다. IPNS라는 이름 지정 시스템은 사람이 읽을 수 있는 이름을 시스템이 검색할 기계가 읽을 수 있는 ID로 변환하는 데 도움이 됩니다.

더 간단한 번역:IPFS는 모든 데이터 조각에 이름을 지정하고 해당 데이터가 주어진 시간에 어디에 있는지 목록을 만들고 장치가 서로 직접 데이터를 보낼 수 있도록 도와줍니다.

작동 방식:기술 버전

IPFS를 작동시키는 세 가지 주요 요소가 있습니다. 콘텐츠 주소 지정은 데이터에 ID를 제공하고 Merkle-DAG는 구조를 제공하며 분산 해시 테이블은 데이터를 찾을 수 있는 위치를 알려줍니다.

콘텐츠 주소 지정:위치가 아닌 무엇

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

현재 콘텐츠의 대부분에는 데이터를 찾기 위해 어디로 가야 하는지 알려주는 위치 기반 주소(C:/Users/Username/Documents, 192.124.249.3 등)가 있습니다. 콘텐츠는 거의 모든 곳에 저장할 수 있으므로 IPFS 및 BitTorrent와 같은 시스템은 대신 "콘텐츠 주소 지정"을 사용하기 때문에 분산 시스템에서는 실제로 작동하지 않습니다.

콘텐츠 주소 지정 시스템은 고유 ID 또는 해시를 할당하는 알고리즘을 통해 데이터를 실행하여 작동합니다. 파일의 동일한 사본은 모두 동일한 ID를 가지므로 IPFS가 파일을 찾을 때 네트워크에 저장된 모든 인스턴스를 찾을 수 있습니다.

Merkle-DAG:모든 것에는 CID가 있으며 모두 연결되어 있습니다.

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

독일 정당처럼 들리지만 Merkle-DAG(Directed Acyclic Graph)는 실제로 데이터를 구성하는 방법입니다. 이 시스템에서 모든 데이터 조각에는 폴더, 파일, 파일 내부의 데이터 블록 등 모든 것과 같은 고유한 콘텐츠 ID(CID)가 있습니다. 즉, 파일을 여러 부분으로 분할하고 인증하고 재조립할 수 있습니다.

IPFS 문서에서는 모든 것을 CID로 식별할 수 있는 데이터 모음으로 분류할 수 있기 때문에 이를 "거북이가 완전히 무너지는 시나리오"로 설명합니다. 폴더의 CID는 파일 및 폴더 CID 모음으로 안내하며, 해당 CID는 자체 CID와 함께 다른 콘텐츠를 나타내는 다른 CID로 안내합니다. 파일이 변경되면 해당 해시와 폴더의 해시도 변경됩니다.

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

데이터는 실제로 여기에 존재하지 않습니다. 데이터는 어디에서 모든 데이터를 찾을 수 있는지, 데이터가 있으면 모든 조각을 어떻게 조합해야 하는지 알려줄 뿐입니다. Merkle-DAG는 본질적으로 이러한 모든 ID에 컴퓨터의 파일 시스템과 같은 구조를 부여하는 것입니다.

분산 해시 테이블:IPFS가 콘텐츠를 찾는 방법

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

그렇다면 우리가 원하는 데이터를 가진 사람을 찾는 방법은 무엇일까요? 기본적으로 콘텐츠 ID를 해당 콘텐츠를 호스팅하는 컴퓨터의 위치와 일치시키는 큰 데이터베이스가 있으며 데이터베이스 자체는 네트워크의 모든 사람에게 분할됩니다. CID로 표시되는 콘텐츠를 요청하면 컴퓨터는 CID를 가진 사람의 목록을 찾을 때까지 CID를 검색합니다. 그런 다음 컴퓨터가 해당 사람들과 연결하여 필요한 항목을 다운로드하고 조합합니다. 이것이 분산 해시 테이블입니다. 본질적으로 누가 무엇을 가지고 있는지에 대한 큰 목록입니다.

IPFS는 멋지지만 이륙할까요?

IPFS(Interplanetary File System)가 웹을 분산화하는 방법

IPFS는 2015년에 시작되어 그 이후로 빠른 발전을 이루었습니다. 블록체인 파일 저장 시스템(Filecoin) 및 GeoCities 대체(Neocities)와 같은 수십 개의 앱과 사이트가 여기에 구축되었습니다. 탈중앙화와 사용자 친화성의 적절한 조합을 달성하는 데 성공했으며, 이것이 아마도 Sociall(탈중앙화 소셜 네트워크) 및 Brave와 같이 탈중앙화를 모색하는 프로젝트에 적합하게 된 이유일 것입니다.

Cloudflare의 IPFS 게이트웨이는 큰 성공을 거두었으며 네트워크 사용이 점점 더 쉬워지고 있습니다. 프로그램을 다운로드하고 브라우저 확장 프로그램을 설치하기만 하면 됩니다. 물론 이것이 정말 최고의 솔루션인지에 대한 논쟁이 있습니다. 동일한 비전을 가진 유일한 프로젝트와는 거리가 멀지만 속도가 느려질 기미는 보이지 않습니다. HTTP를 완전히 대체하지는 않더라도 다음 버전의 인터넷에 포함될 것 같습니다.