2016-10-14 2 views
0

오늘 비트 토 런트 프로토콜을 이해하려고합니다.토런트 트래커 응답이 제대로 형식화되지 않은 것 같습니다.

토렌트 파일의 내용을 "해독하는"방법을 이미 잘 알고 있으며 추출한 데이터가 포함 된 트래커에 요청을 보냈습니다.

그러나이 응답은 하나의 예상되지 않습니다 The wiki about the Bittorent Tracker Protocol는 응답이 "동료"List of dictionaries corresponding to peers.

내가 현장에있는 C# 프로그램 유일한 것으로, 응답을 읽고있다에 포함해야한다고 말한다 제가

BitConverter.ToString((byte[])peers) 

추적기 원래 응답 문자열로 변환하면 50-0B-3F-3F-00-00-50-0B-3F-3F-3F-3F 포함 된 바이트 배열 (byte [])이된다 :

d8:completei0e10:downloadedi2e10:incompletei2e8:intervali1970e12:min intervali985e5:peers12:P?? P????e

그리고 내 HTTP 요청했다 :

http://bt1.archive.org:6969/announce?info_hash=%ac%c3%b2%e43%d7%c7GZ%bbYA%b5h%1c%b7%a1%ea%26%e2&peer_id=ABCDEFGHIJKLMNOPQRST&ip=xxx.xxx.xxx.xxx&port=6881&downloaded=0&left=970

그래서, 왜 이해하지?

+0

실제로 해당 위키의 첫 번째 줄을 읽었습니까? 추적기는 두 종류의 응답 중 하나를 [BEncoded] (https://en.wikipedia.org/wiki/Bencode) 사전 –

+0

으로 보낼 수 있습니다. 내 잘못,이 부분을 놓쳤습니다 ... 응답을 잘 이해하면 추적기가 2 IP를 보냈습니까? 012-0203-B-3F-3F-3F-3F-> 80.11.63.63:0000 및 80.11.63.63 : 6363? – LeCintas

답변