亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 對(duì)DHT文檔中的一些錯(cuò)誤的修正 [打印本頁]

作者: pagx    時(shí)間: 2009-09-05 22:55
標(biāo)題: 對(duì)DHT文檔中的一些錯(cuò)誤的修正

                                                                參照utorrent的行為,對(duì)比文檔中的區(qū)別有:
1、支持的請(qǐng)求是: ping get_peers find_node announce_peer
{ "d1:ad2:id20:abcdefghij0123456789e1:q4:ping1:t1:P1:y1:qe" };
{“d1:ad2:id20:abcdefghij01234567896:target20:abcdefghij0123456789e"
      "1:q9:find_node1:t4:FFFF1:y1:qe" }
{ "d1:ad2:id20:000000000000000000009:info_hash"
      "20:mnopqrstuvwxyz1234564:porti6882e5:token20:00000000000000000000e"
      "1:q13:announce_peer1:t3:xxl1:y1:qe"}
{  "d1:ad2:id20:000000000000000000009:info_hash"
        "20:mnopqrstuvwxyz123456e1:q9:get_peers1:t1:X1:y1:qe"}
2、響應(yīng)數(shù)據(jù)包格式為
ping 和 announce_peer 的響應(yīng)包:
{ "d1:rd2:id20:098765432112345567890e1:t3:xxl1:v4:UT=.1:y1:re" }
對(duì)于 find_node 的響應(yīng)包:
{ "d1:rd2:id20:0987654321123455678905:nodes208:.......e1:t3:xxl1:v4:UT=.1:y1:re" }
對(duì)于 get_peers 的響應(yīng)包:
{ "d1:rd2:id20:0987654321123455678905:nodes182:.......5:token20:xxxx...e"
      "1:t3:xxl1:v4:UT=.1:y1:re" }
或者:
{ "d1:rd2:id20:0987654321123455678905:nodes182:......."
      "6:valuesl6:xxxxxx6:yyyyyye5:token20:xxxx...e"
      "1:t3:xxl1:v4:UT=.1:y1:re" }
3、對(duì)于utorrent來說,token是20字節(jié)的類似SHA1數(shù)值的字符串。
4、可以看出即使能夠找到values,get_peers也會(huì)同時(shí)返回最近的nodes的。
5、utorrent不會(huì)對(duì)peer進(jìn)行合并操作,所以返回的數(shù)據(jù)的peer中存在重復(fù)的。
6、似乎router.utorrent.com:6881對(duì)于announce_peer只是簡(jiǎn)單的響應(yīng),并不會(huì)存儲(chǔ)peer信息,所以下次請(qǐng)求一樣會(huì)是空的。
7、很明顯 announce_peer 不是文檔例子中的 announce_peers了。
8、t是長(zhǎng)度>1的串。而不是文檔例子中的一個(gè)整數(shù)。
9、對(duì)于values的格式是 l6:xxxxxx6:yyyyyy6:zzzzzze這中方式。
               
               
               
               
               
               
               
               

本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u2/69656/showart_2046512.html




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2