토렌트 (5) 썸네일형 리스트형 Elasticsearch - 검색 결과 향상을 위한 삽질기 개요 메타 데이터가 어느정도 쌓이자(현재 기준 100만건) 검색을 할 필요가 생겼다. DHT 네트워크로 공유되는 메타 데이터 특성 상 검색의 대상이 되는 값은 토렌트 이름과 파일 이름뿐이다. 그외에는 있어봐야 파일 크기랑 JPG, MP4와 같은 파일 포맷에 대한 정보 정도이다. 검색 시 이름과 파일 이름을 기준으로 검색할 수 있도록 할 필요가 있고 이를 위해 다양한 시도를 해보았다. 데이터의 유형 기본 및 언어 DHT 네트워크를 통해 가져오는 데이터인만큼 대부분의 데이터는 모두 문자열 데이터로 구성되어있다. 간혹 특수문자나 바이트 유형의 데이터도 들어오기는 하는데 이는 모두 그대로 저장되지만 표시는 제대로되지 않는다. 언어 또한 다양하게 구성되어 있다. 당연하다면 당연하지만 영어가 가장 많고 한국어, 러.. 토렌트 수집 아키텍처 설계 및 구축 - 0 개요 토렌트는 유명해지기 전부터 이미 어느정도 알고 있었으나 실제 내부에서 어떻게 돌아가는지에 대해서는 별다른 관심이 없었다. 그러다가 어느순간 회사에서 토렌트 관련 프로젝트를 진행하게 되어 수집을 해볼 기회가 있었고 생각보다 많고(정말 많다...) 다양한(?) 데이터를 얻을 수 있었다. (물론 토렌트 특징 상 실제 데이터 다운로드는 하지 않고 오직 메타 데이터로만 분석했다..) 한동안 관심이 없다가 얼마전부터 다시 토렌트에 관심이 생겼고 다시 한번 아키텍처를 설계해보기로 마음먹었다. 물론 이번건은 회사로써가 아니라 개인으로써 진행하는 프로젝트이고 최근에 다른데 지출이 많아서 극단적으로 제한적인 예산으로만 아키텍처를 설계하고 구축해보았다. 요구사항 아키텍쳐를 설계하기전에 미니 프로젝트를 진행하기 위해 필.. Extension Protocol (BEP-0010) bep_0010.rst_post (bittorrent.org) bep_0010.rst_post The intention of this protocol is to provide a simple and thin transport for extensions to the bittorrent protocol. Supporting this protocol makes it easy to add new extensions without interfering with the standard bittorrent protocol or clients that don't www.bittorrent.org 개요 확장 프로토콜은 비트토렌트 프로토콜에서 간단하고(simple) 가볍게?(thin) 확장 기능을 제공하기 위해 구현된 프.. Extension for Peers to Send Metadata Files (BEP-0009) bep_0009.rst_post (bittorrent.org) bep_0009.rst_post Post-History:14-Oct-2012: point out that unrecognized message types should be ignored 16-May-2016: added peer source parameter to magnets www.bittorrent.org 개요 비트토렌트의 확장(Extension)으로 토렌트 파일을 없이도 네트워크 군(swarm)에 들어가고 다른 피어로부터 메타데이터를 다운로드할 수 있는 기능을 제공한다. 메타데이터는 토렌트 파일이 제공하는 데이터를 의미한다. 메타데이터 DHT를 통해서 피어간에 공유되는 메타데이터는 토렌트 파일의 "info-dictionary" 부분이다.. Mainline DHT Protocol (BEP-0005) bep_0005.rst_post (bittorrent.org) bep_0005.rst_post Post-History:22-March-2013: Add "implied_port" to announce_peer message, to improve NAT support www.bittorrent.org 개요 비트토렌트에서는 DHT, PeX를 통해 트래커를 사용하지 않는(trackerless) 토렌트에서 노드를 찾는 방법을 제공하고 있다. 그 중 Kademlia DHT를 수정한 Mainline DHT를 사용해 노드들을 검색한다. BEP-5에서는 노드와 피어를 다음과 같이 구분하고 있다. " Please note the terminology used in this document to avoid confusio.. 이전 1 다음