ΠŸΡƒΡΠΊΠ°Π½Π΅ Π½Π° libtorrent 2.0 с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° BitTorrent 2

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ΠΎ Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° libtorrent 2.0 (извСстна ΡΡŠΡ‰ΠΎ ΠΊΠ°Ρ‚ΠΎ libtorrent-rasterbar), ΠΊΠΎΠ΅Ρ‚ΠΎ осигурява Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ внСдряванС Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° BitTorrent Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ процСсора. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ‚ Ρ‚ΠΎΡ€Π΅Π½Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ Deluge, qBittorrent, Folx, Lince, Miro ΠΈ Flush (Π΄Π° Π½Π΅ сС Π±ΡŠΡ€ΠΊΠ° с Π΄Ρ€ΡƒΠ³Π°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libtorrent, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΡ‚ rTorrent). ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° libtorrent Π΅ написан Π½Π° C++ ΠΈ сС разпространява ΠΏΠΎΠ΄ BSD Π»ΠΈΡ†Π΅Π½Π·.

Π˜Π·Π΄Π°Π½ΠΈΠ΅Ρ‚ΠΎ сС ΠΎΡ‚Π»ΠΈΡ‡Π°Π²Π° с добавянСто Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° BitTorrent v2, ΠΊΠΎΠΉΡ‚ΠΎ сС ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡ΠΈ ΠΎΡ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΠ° SHA-1, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с ΠΈΠ·Π±ΠΎΡ€Π° Π½Π° ΡΠ±Π»ΡŠΡΡŠΡ†ΠΈ, Π² ΠΏΠΎΠ»Π·Π° Π½Π° SHA2-256. SHA2-256 сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΠΊΡ‚ΠΎ Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° цСлостта Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ Π·Π° записи Π² индСкси (ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π΅Π½ Ρ€Π΅Ρ‡Π½ΠΈΠΊ), ΠΊΠΎΠ΅Ρ‚ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π²Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° с DHT ΠΈ Ρ‚Ρ€Π°ΠΊΠ΅Ρ€ΠΈΡ‚Π΅. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² прСфикс β€žurn:btmh:β€œ Π·Π° ΠΌΠ°Π³Π½ΠΈΡ‚Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ към Ρ‚ΠΎΡ€Π΅Π½Ρ‚ΠΈ с Ρ…Π΅ΡˆΠΎΠ²Π΅ SHA2-256 (Π·Π° SHA-1 ΠΈ Ρ…ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΈ Ρ‚ΠΎΡ€Π΅Π½Ρ‚ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° β€žurn:btih:β€œ).

Въй ΠΊΠ°Ρ‚ΠΎ промяната Π² Ρ…Π΅Ρˆ функцията Π½Π°Ρ€ΡƒΡˆΠ°Π²Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° (ΠΏΠΎΠ»Π΅ с Ρ…Π΅Ρˆ ΠΎΡ‚ 32 Π±Π°ΠΉΡ‚Π° вмСсто 20 Π±Π°ΠΉΡ‚Π°), Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° спСцификацията BitTorrent v2 ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ бСшС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ Π±Π΅Π· ΠΎΠ³Π»Π΅Π΄ Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π°Ρ‚Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ ΠΈ бяха ΠΏΡ€ΠΈΠ΅Ρ‚ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ…Π΅Ρˆ Π΄ΡŠΡ€Π²ΠΎ Π½Π° Merkle Π² индСкситС Π·Π° намаляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° Ρ‚ΠΎΡ€Π΅Π½Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΈΠ·Ρ‚Π΅Π³Π»Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π° Π½ΠΈΠ²ΠΎ Π±Π»ΠΎΠΊ.

Π”Ρ€ΡƒΠ³ΠΈ Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π² BitTorrent v2 ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Ρ‚ към асоцииранС Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ…Π΅Ρˆ Π΄ΡŠΡ€Π²Π΅Ρ‚Π° Π·Π° всСки Ρ„Π°ΠΉΠ» ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° подравняванС Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° части (Π±Π΅Π· добавянС Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° ΠΏΠΎΠ΄Π»ΠΎΠΆΠΊΠ° слСд всСки Ρ„Π°ΠΉΠ»), ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π° Π΄ΡƒΠ±Π»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΈΠΌΠ° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ улСснява ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ Π·Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° СфСктивност Π½Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° структурата Π½Π° дирСкторията Π½Π° Ρ‚ΠΎΡ€Π΅Π½Ρ‚ ΠΈ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с голям Π±Ρ€ΠΎΠΉ ΠΌΠ°Π»ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

Π—Π° Π΄Π° сС улСсни ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎΡ‚ΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Π½Π΅ Π½Π° BitTorrent v1 ΠΈ BitTorrent v2, Π΅ Π²Π½Π΅Π΄Ρ€Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° създаванС Π½Π° Ρ…ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΈ Ρ‚ΠΎΡ€Π΅Π½Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚, Π² допълнСниС към структури с SHA-1 Ρ…Π΅ΡˆΠΎΠ²Π΅, индСкси с SHA2-256. Π’Π΅Π·ΠΈ Ρ…ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΈ Ρ‚ΠΎΡ€Π΅Π½Ρ‚ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ с ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ само ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° BitTorrent v1. ΠŸΠΎΡ€Π°Π΄ΠΈ Π½Π΅Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ със стабилността, ΠΎΡ‡Π°ΠΊΠ²Π°Π½Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° WebTorrent Π² libtorrent 2.0 бСшС ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π° Π΄ΠΎ слСдващото голямо ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‰Π΅ бъдС пуснато Π½Π΅ ΠΏΠΎ-Ρ€Π°Π½ΠΎ ΠΎΡ‚ края Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°Ρ‚Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru