아하 로고
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
대단한멧새102
대단한멧새10219.02.20
IPFS 란 무엇인가요?

이오스와 관련된 기사를 찾아보다가 'EOS 기반 IPFS 스토리지 서비스' 를 한다고하는데
IPFS는 무엇인가요? 이오스랑 어떤 연관이 있는것인지 알려주세요.

  • IPFS를 이용해서 개발한적이 있어서...그과정에 정리했던것을 조금 적어보겠습니다.

    IPFS ( InterPlanetary File System )

    IPFS는 모든 컴퓨터를 연결해서 운영되는 분산 P2P 파일 시스템입니다.

    기존 HTTP Web의 문제를 해결하고자 나온 것으로 HTTP의 불안정, 고도의 중앙화, 비효율적, 느린속도를 개선하고자 등장하였습니다.

    중앙회 된 서버는 따로 없으며 연결된 노드들이 P2P 통신으로 데이터를 주고 받습니다.

    IPFS 네트워크 내에 있는 노드들이 연결이 끊겨도 네트워크는 유지가 되며 A 노드에서 파일을 업로드하고나서 다른 사용자가 이와 관련된 내용을 요청했을때 다른 노드가 이 파일을 가지고 있는 노드를 찾아서 요청을 합니다. 그러면 A 노드가 가지고있다는 것을 확인한다음 A노드에게 요청해서 A노드로부터 데이터를 가져오게 됩니다.

    IPFS 망에서는 파일 중복을 체크해서 저장소를 효율적으로 관리를 할 수 있습니다.

    작동방법으로는 아래와 같습니다.

    •각 파일은 여러 개의 블록으로 이뤄지며, 각 블록은 Hash로 표현된 고유의 이름이 존재

    •모든 파일의 이름을 DB 속에 저장하고 동일 파일의 중복을 배제하며, 각 파일의 버전 정보를 트래킹 함

    •각 노드에는 이용자가 관심있는 파일만 보관 가능하고 해당 파일은 다른 노드에서 찾는경우 제공

    관련 된 기술은 계층별로 나눌수 있는데요. 아래와 같습니다.

    Application : Web

    Naming : SFS (Naming Shared File System)

    Merkedag : Git

    Exchange : BitTorrent

    Routing : DHT (Distributed Hash Tables)

    기본적으로 부트노드가 적용되어 있는데 토렌트의 트래커사이트목록과 유사합니다.

    이 부트노드 데이터를 config에서 지운 다음 직접 프라이빗 네트워크로 별도로 셋팅한 IPFS 노드끼리만 연결시켜서 운영 할 수도 있습니다.

    https://ipfs.io/

    상세 내용을 알 수 없어서 확인은 어렵지만 추측으로는 EOS에서 사용할 데이터들을 IPFS를 이용해서 분산스토리지에 저장한다 정도로 보입니다.

    아, 그리고 IPFS에는 사진/텍스트/동영상 등 가리는 것 없이 업로드가 가능합니다.