--
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | a() { KNode node = new KNode(new HetiSocketBuilderChrome(), verbose: true); String localIp = "0.0.0.0"; int localPort = 28080; // // node.start(ip: localIp, port: localPort).then((_) { node.onGetPeerValue.listen((KGetPeerValue v) { print("---onGetPeerValue ${v.ipAsString} ${v.port} ${v.infoHashAsString} "); }); }); // // initial node String initailNodeIp = "0.0.0.0"; int initailNodePort = 38080; node.addBootringNode(initailNodeIp, initailNodePort); // // search target List<int> infoHash = new List.filled(20, 4); node.startSearchValue(new KId(infoHash), 18080, getPeerOnly: true); new Future.delayed(new Duration(minutes:30)).then((_){ print(node.rootingtable.toInfo()); return node.stop(); }); } |
hetimatorrent は名前の通り、torrentプロトコルでまデータの共有ができます。
pure dartlang で書かれています。
今は、chrome application のみサポートしていますが、今後拡張予定です。`
What is DHT?
すでにP2Pネットワークに参加しているNodeを紹介してもらうと、それを元に、P2Pネットワークへ参加します。数10秒後には、数十回の問い合わせで。P2Pネットワークからデータを発見できるようになります。Source
- hetimatorrenthttps://github.com/kyorohiro/dart_hetimatorrent
- heitnanet
https://github.com/kyorohiro/dart_hetimanet
- dht sample
https://github.com/kyorohiro/dart_hetimatorrent/tree/master/example/TorrentDHT
- bep5
http://www.bittorrent.org/beps/bep_0005.html
- Kademlia; A Peer-to-peer Information System Based on the XOR Metric.
http://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf
-------
Kyorohiro work
0 件のコメント:
コメントを投稿