bt中peer和peer之間互動的資料報的格式除了握手包之外都是:包長度(int)+包體。
當兩個peer連線後,要首先向對方傳送握手包,如果握手失敗,連線將關閉。握手包的格式是:
字串長度+字串+保留字段+info_hash+peer_id
字串長度:後面的字串長度,1個byte
字串:標識協議的字串。在1.0的bt協議中為"bittorrent protocol"
保留字段:8個位元組,用於協議擴充套件,無擴充套件的時候全為0,使用的時候從後向前開始使用。
info_hash:20個位元組,就是用於向tracker請求的那個info_hash
peer_id:20個位元組,各個bt軟體對peer_id的命名方法不一樣,大致有幾種型別,這個以後再說。
當本地節點主動連線到遠端節點後,就應當立即向遠端節點傳送握手包,遠端節點接收連線後等等握手包的到來,當握手包接收後立即回應握手包。當遠端節點接收 到握手包後,它會首先看info_hash欄位所代表的任務是否存在,若不存在,那就應該關閉連線。當遠端節點回應握手包後,本地節點應當判斷該節點的 peer_id,如果它有從tracker那裡得知遠端節點的peer_id,若發現pere_id不符合,本地節點應當關閉連線。
無線的協議標準
802.11a 802.11a使用了ofdm技術,採用了bpsk qpsk 16 qam和64 qam調製方式,其最大資料速率為54mbit s,而實際的淨吞吐量在20mbit s左右。根據不同的接收電平值,資料速率可自適應調整為48 36 24 18 12 9或者6mbit s。802.11a工作...
BitTorrent協議小結
1.bittorrent協議 2.bittorrent協議中的幾個概念 1 tracker伺服器 2 眾多客戶端 3 種子檔案 3.bittorrent協議在實際中運作的過程 1 要分享的資訊的某個bt客戶端,拿本機中的某個檔案或者目錄做種,生成種子檔案 torrent.然後,它會該告訴tracke...
一 AMQP協議標準簡單介紹
四 amqp的幾個核心概念 生產者 producer 將訊息寫入到交換的乙個程式。要做到這一點,該程式建立乙個訊息,用內容填充訊息,給訊息乙個路由鍵,並將訊息傳送到乙個交換。訊息主題 routing key 乙個字串,可以用以確定其訊息內容傳送到指定的佇列中 交換機 exchange 接收生產者訊息...