2009-06-13 22 views
55

Estoy buscando una publicación de tutorial/blog sobre cómo implementar el protocolo bittorrent paso a paso. ¿Cómo funciona? ¿Cómo haces solicitudes a tus compañeros? y hablar con los rastreadores.Implementación del protocolo Bittorrent

no me importa el lenguaje de programación (Java, Ruby, Perl, C#)

+1

Tengo interés en esto y sienten que no tiene que ser algo de conocimiento mejor por ahí por lo que poner una recompensa para arriba. Estoy buscando tutoriales/tutoriales del protocolo, pero cualquier puntero de inicio sería agradable de ver también. – Louis

Respuesta

7

Sugiero que busque at the spec y las fuentes de algunos clientes de OSS. Tendrás que hacer un trabajo, pero así es como funciona la programación.

8

Actualmente estoy implementando un cliente BitTorrent en Java utilizando la especificación this.

21

la descripción completa de protocolo bittorrent:

http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html

+0

jonas.nitro.dk/bittorrent/bittorrent-rfc.html es una fuente terrible sobre el protocolo BitTorrent. Algunas partes son muy intrincadas y otras partes están completamente equivocadas. Una mejor fuente es la especificación oficial aquí: https://wiki.theory.org/BitTorrentSpecification o el funcionario aquí: http://bittorrent.org/beps/bep_0003.html – Encombe

3

Esta es una implementación del protocolo bittorrent hecho en .NET. Su código fuente está disponible en GitHub y tiene la documentación

Monotorrent

4

Qt es muy fácil de leer para que pueda leer la Qt Torrent Example (C++)

+0

El enlace se rompió. – MasterMastic

+0

http://doc.qt.io/qt-5/qtnetwork-torrent-example.html –

2

la implementación del protocolo no es tan difícil siguiendo las especificaciones . Sin embargo, hay muchas cosas internas como almacenamiento, servidor escalable, algoritmo de selección de igual/pieza, etc.

Implementación anterior de BitTorrent o BitTornado python utilizado, que es fácil de leer. Personalmente los encontré útiles para comprender los aspectos internos.

Cuestiones relacionadas