Paglabas ng libtorrent 2.0 na may suporta para sa BitTorrent 2 protocol

Ang isang pangunahing pagpapalabas ng libtorrent 2.0 (kilala rin bilang libtorrent-rasterbar) ay ipinakilala, na nag-aalok ng isang memory- at CPU-efficient na pagpapatupad ng BitTorrent protocol. Ginagamit ang library sa mga torrent client gaya ng Deluge, qBittorrent, Folx, Lince, Miro at Flush (hindi dapat ipagkamali sa ibang libtorrent library, na ginagamit sa rTorrent). Ang libtorrent code ay nakasulat sa C++ at ipinamahagi sa ilalim ng lisensya ng BSD.

Ang paglabas ay kapansin-pansin para sa pagdaragdag ng suporta para sa BitTorrent v2 protocol, na lumalayo sa paggamit ng SHA-1 algorithm, na may mga problema sa pagpili ng banggaan, pabor sa SHA2-256. Ang SHA2-256 ay ginagamit kapwa upang kontrolin ang integridad ng mga bloke ng data at para sa mga entry sa mga index (impormasyon-diksyonaryo), na lumalabag sa pagiging tugma sa DHT at mga tracker. Para sa mga magnetic link sa mga torrent na may SHA2-256 na mga hash, isang bagong prefix na "urn:btmh:" ay iminungkahi (para sa SHA-1 at hybrid torrents, "urn:btih:" ang ginagamit).

Dahil ang pagpapalit sa hash function ay sumisira sa protocol compatibility (ang hash field ay 32 bytes sa halip na 20 bytes), ang BitTorrent v2 specification ay unang binuo nang walang backward compatibility sa isip at iba pang makabuluhang pagbabago ay pinagtibay, tulad ng paggamit ng Merkle hash trees sa mga index upang bawasan ang laki ng mga torrent file at suriin ang na-download na data sa antas ng block.

Kasama rin sa mga pagbabago sa BitTorrent v2 ang paglipat sa pagtatalaga ng hiwalay na mga hash tree sa bawat file at ang paggamit ng pag-align ng file sa mga bahagi (nang hindi nagdaragdag ng karagdagang padding pagkatapos ng bawat file), na nag-aalis ng pagdoble ng data kapag may magkaparehong mga file at ginagawang mas madaling makilala iba't ibang mga mapagkukunan para sa mga file. Pinahusay na kahusayan ng torrent directory structure encoding at nagdagdag ng mga optimization para sa paghawak ng malaking bilang ng maliliit na file.

Upang maayos ang magkakasamang buhay ng BitTorrent v1 at BitTorrent v2, ang kakayahang lumikha ng mga hybrid na torrent file ay ipinatupad, na kinabibilangan, bilang karagdagan sa mga istrukturang may SHA-1 na mga hash, mga index na may SHA2-256. Ang mga hybrid torrent na ito ay maaaring gamitin sa mga kliyente na sumusuporta lamang sa BitTorrent v1 protocol. Dahil sa hindi nalutas na mga isyu sa katatagan, ang inaasahang suporta para sa WebTorrent protocol sa libtorrent 2.0 ay naantala hanggang sa susunod na pangunahing release, na hindi ilalabas hanggang sa katapusan ng taon.

Pinagmulan: linux.org.ru