BT 다운로드란 무엇인가요?
BT의 운영원리와 인트라넷 속도 향상 방안을 분석합니다.
인트라넷 사용자는 외부 포트를 제공할 수 없기 때문에 서버로 사용할 수 없습니다. 하지만 BT를 사용하면 인트라넷 사용자가 보내기를 할 수 있다는 것을 알게 되었기 때문에 프로그래머로서 다운로드를 하지 않을 수 없었습니다. (그걸 보려고 Python도 썼어요:})
다른 P2P 소프트웨어에 비해 BT는 중간 웹 서버라는 독특한 특징을 가지고 있습니다. 이 서버는 매우 불안정한 개인 서버를 찾아 돌아다니는 다른 P2P 소프트웨어와는 달리, 이 웹사이트의 더 큰 기능을 제공합니다. 서버는 인트라넷 사용자가 다른 소프트웨어가 할 수 없는 보내기(원칙은 아래에 설명됨)를 할 수 있다는 점을 의미합니다. 그러나 단점은 알림이 충돌할 때 다운로드할 수 없다는 것입니다. P2P 다운로드의 핵심은 다음과 같습니다. 인기가 높으면 발표가 중단되면 인기가 사라질 것입니다.
.torrent의 역할
BT를 사용하여 다운로드하려면 다운로드해야 한다는 것은 누구나 알고 있습니다. 첫 번째 .torrent 파일, 이 파일에는 정확히 무엇이 포함되어 있나요?
첫 번째, 발표는 게시 서버의 위치를 기록하여 이를 게시한 웹 서버를 BT에 알립니다.
그런 다음 일부 파일 정보, 파일 이름, 디렉터리 이름, 길이 등
마지막은 조각의 길이이며 조각의 Sha1 검사 코드입니다
(BT는 파일은 여러 조각으로 나뉩니다)
워드패드를 사용하여 토렌트 파일을 읽어 대략적인 아이디어를 얻을 수 있습니다. 뒤에 있는 왜곡된 코드는 조각 Sha1 검사 코드입니다.
시작 - 업로드 재개 SHA 검증 구현
BT 토렌트 파일을 연 후 먼저 파일을 저장할 위치를 선택해야 합니다. 그런 다음 해당 파일이 없다고 판단되면 새 파일이 생성됩니다. , Sha1 인증 코드를 사용하여 파일을 인증하게 됩니다. ---아직 다운로드가 되지 않았다는 오류가 있어 전송을 재개할 수 있지만, 128비트 인증은 원해도 느리지 않습니다. /p>
동료 받기
이제 다운로드해야 한다는 것을 알았습니다. 무엇을 다운로드할 수 있습니까? 여기서 BT는 먼저 웹 서버를 통해 구현됩니다. , BT는 토렌트를 분석하여
완전 또는 중지된(또는 비어 있는, 실행되지 않는 것과 동일한) URL 목록을 가져옵니다. 실행 중이 아닌 경우 이 명령문은 정기적으로 실행됩니다. 다운로드가 시작되면 시작 값이 내보내지고, 다운로드가 완료되면 완료 값이 내보내집니다. 파일이 완료되면 다시 시작됩니다. 완료가 발행되지 않은 경우 다운로더가 다운로드를 중지하면 중지됩니다.
Tracker의 응답도 B로 인코딩된 사전입니다. Tracker 응답에 키값 실패 이유가 있는 경우 챌린지 실패 이유를 설명하는 사람이 읽을 수 있는 문자열 정보에 해당하며, 다른 키값은 필요하지 않습니다. 그렇지 않은 경우 응답에는 두 가지 주요 값이 있어야 합니다. 간격(간격)은 다운로더가 발행한 일반 요청 사이의 초 수에 해당하고, 피어는 피어, 피어, 피어 자체 선택 ID, IP와 통신하는 사전 목록에 해당합니다. 주소 또는 DNS 호스트 이름 문자열과 포트 번호 중 하나입니다. 다운로더에 이벤트가 있거나 더 많은 피어를 원하는 경우 정확히 예약된 간격으로 요청을 보내지 않는다는 점을 기억하세요.
메타정보 파일이나 추적기 챌린지를 확장하려면 Bram Cohen과 협력하여 모든 확장이 호환되는지 확인하세요.
BitTorrent 피어 프로토콜은 TCP 프로토콜을 통해 작동합니다. 소켓 옵션을 조정하지 않고도 원활하게 실행됩니다.
동료 간의 연결은 대칭입니다. 양방향으로 전송되는 정보는 조정되어야 하며 데이터는 어느 쪽으로든 흐를 수 있습니다.
피어 프로토콜은 메타정보 파일에 설명된 인덱스 파일 블록을 기반으로 하며 0부터 시작합니다.
피어가 완료되면