토렌트 클라이언트는 조각을 어떻게 재 조립하고 저장합니까?


9

토런트 클라이언트가 다운로드 한 조각을 어떻게 저장하고 다시 조립하는지 궁금합니다. 그들은 메타 데이터를 사용합니까? 절반 형식의 파일 인 경우 재생할 수 있기 때문에 그렇지 않은 것 같습니다. 나는 이것이 어떻게 행해지는지 전혀 모른다? 기본적으로 다운로드 된 파일의 조각이 어떻게 구성되어 있는지 묻고 있습니다. 처음부터 끝까지입니까, 아니면 사이에 버퍼 공간이 있습니까?


다시 확인한 후 다운로드 한 조각의 절반을 다운로드하는 방법이 있습니까?. 연결은 전화 접속과 같습니다.

답변:


19

멋진 급류 세계에 오신 것을 환영합니다! Bittorrent 프로토콜을 구성하는 몇 가지 부분이 있습니다. 파일은 legalthing.iso이며 가능한 많은 사람들에게 배포하려고합니다. 따라서 legalthing.iso를 설명하는 "토렌트"파일을 만들고 웹 사이트 또는 원하는 다른 방법을 통해 토렌트 파일을 배포합니다. 토렌트 파일은 컴퓨터를 직접 가리 키거나 시드 역할을 할 것입니다. 파일)) 및 "피어"(파일을 적극적으로 다운로드하는 사용자).

지금 귀하의 질문에 더 가까워지고 있습니다. 파일 자체 인 legalthing.iso는 암호화 방식으로 해시되어 토렌트 파일을 읽고 legalthing.iso를 다운로드하는 각 사람이 해시와 비교하여 각 조각을 확인하고 원본에서 수정 된 조각을 다운로드하지 않도록 할 수 있습니다. 해시 확인에 실패한 조각은 삭제됩니다.

이제 Bittorrent를 사용하여 파일을 다운로드하는 컴퓨터 인 것처럼 가장하십시오. 프로토콜은 두 가지 방법 중 하나를 사용할 수 있습니다. 파일의 임의 부분을 다운로드하거나 가장 희귀 한 부분을 먼저 다운로드하는 것입니다. 후자의 접근 방식은 토렌트의 전반적인 "건강"(가용성)을 높이는 것입니다.

실제 토렌트 파일에는 무엇이 있습니까? 사용하는 클라이언트에 따라 다르지만 일반적으로 사용중인 추적기의 주소 인 "announce"섹션과 다운로드하려는 파일의 전체 목록이 포함되어 있습니다. 각 조각은 균일 한 크기 (32kb, 512kb, 4mb, 실제로 원하는 크기)이며 각 조각에는 해시가 있습니다. 피어는 조각을 얻을 때마다 해당 조각의 해시 (SHA-1 해시 코드 사용)를 토렌트 파일에 나열된 해시와 비교합니다. 그것이 조각이 좋은지 알아내는 방법입니다.

토렌트 파일은 다운로드중인 파일의 각 부분을 나열하므로 클라이언트가 조각을 성공적으로 다운로드하여 해시 할 때마다 파일 내 하드 디스크의 올바른 위치에 조각을 씁니다. 그렇기 때문에 1GB 파일을 다운로드하면 다운로드 할 토런트 조각을 수용하기 위해 클라이언트가 1GB 크기의 빈 공간 블록을 따로 보관합니다.

이제 일부 비디오 플레이어와 다른 파일 뷰어는 "손상된"파일을 처리 할 수 ​​있습니다. 물론, 반 다운로드 급류는 손상되지 않지만 조각이 누락되고 VLC와 같은 프로그램에는 손상 된 것처럼 보입니다. 따라서 VLC는 찾을 수있는 모든 데이터를 재생할 수 있도록 최선을 다하므로 부분적으로 다운로드하는 동안 재생할 수 있습니다.

더 복잡한 측면 (Google DHT, 토런트 쓰기 버퍼링, 재미있는 모든 것)이 있지만 Bittorrent의 기본 작동 방식입니다.


와우, 그것은 매우 완전한 대답입니다 ....하지만 실제로 1GB 파일을 따로 보관하는 것을 보지 못했습니까? 점차 증가하는 것 같습니까?
Cenoc

1
@Cenoc, 일부 클라이언트가 미리 할당, 일부는 일부는 미리 할당 할 수있는 기본 설정을 추가하지 않은 않는 토런트 클라이언트에 따라 달라집니다
Sathyajith 바트

흥미롭게도 처음에는 '0'으로 채워진 파일입니까? 일부 다운로드 파일을 처음 확인하면 해시와 비교됩니까?
Cenoc

1
최종 완성 파일의 빈 컨테이너이며 클라이언트가 각 조각을 다운로드 할 때 해시와 비교하여 검사 한 다음 전체 파일이 완료 될 때까지 컨테이너의 적절한 위치에 저장합니다.
geodave

1
Sathya가 언급했듯이 클라이언트에 따라 다릅니다. 일부는 전체 파일에 대해 하드 드라이브의 공간을 미리 할당합니다. 많은 공간을 확보하고 파일을 다운로드 할 때까지 다른 프로그램은 드라이브에서 해당 공간을 사용할 수 없습니다. 다른 비트 토렌트 클라이언트는 완성 된 조각을 임시 저장 위치에 놓고 드라이브 공간에 저장 한 다음 모든 조각이 다운로드되면 전체 파일을 어셈블합니다. 선택한 설정에 따라 다릅니다.
geodave
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.