BitTorrent - Leírás
A BitTorrent informatikai protokoll, valamint e protokollt használó p2p alapú fájlcserélő rendszer. A szoftvert Bram Cohen írta Python nyelven, és a BitTorrent Open Source licenc alatt tette közzé.
A kliensek a fájlokat szeletekben (darabokban) töltik le. Minden csomópont megkeresi a hiányzó részhez a lehető leggyorsabb kapcsolatot, miközben ő is letöltésre kínálja fel a már letöltött fájldarabokat. A módszer nagyon jól beválik nagyméretű fájloknál, például videók és nagyobb szoftverek esetében. Ennek az az oka, hogy az ilyen letöltéseknél a szűk keresztmetszetet általában a szerver sávszélessége jelenti. A BitTorrent esetében minél keresettebb egy fájl, annál többen vesznek részt az elosztásában, ezáltal az elosztása gyorsabban megtörténik, mintha mindenki egy központi helyről (szerverről) töltötte volna le. A fájlok darabolásából adódik, hogy a megszakadt letöltések könnyen folytathatóak.
Tartalomjegyzék[elrejtés] |
Fájl megosztásához létre kell hozni egy torrent típusú (kiterjesztésű) fájlt, amely az alábbiakat tartalmazza:
A .torrent fájl nagy előnye, hogy könnyű másokkal megosztani, mert kicsi a mérete (10-200 kB között), ezért könnyedén felhelyezhető egy honlapra, vagy elküldhető e-mail mellékleteként.
Miután a .torrent fájl generálása megtörtént, a seed fogadja a kéréseket, és kiszolgál más klienseket, amelyek a .torrent fájl alapján felkeresik, többnyire a tracker segítségével. Ez pontos információval rendelkezik arról, hogy mely fájldarabok kinél találhatók meg. A kliens ez alapján felméri, hogy mely darabka a legritkább, és megpróbálja azt letölteni, majd ha az megvan, a következő darabot keresi meg. Így a csomópontok rá vannak kényszerítve a megszerzett darabok cserélgetésére, ezzel tehermentesítik az eredeti forrást. Miután a kliens megszerzett egy darabot, az ellenőrzőösszeg alapján ellenőrzi integritását, ezzel elkerülhető, hogy hibás fájldarabok keringjenek a hálózaton. Ez bekövetkezhet véletlen hibával, de történnek szándékos mérgezések bizonyos zene- és filmkiadók, illetve szerzői jogvédő hivatalok részéről.[1] Ha a kliens teljesen letölti a fájl(oka)t, seeddé válik.
Hátránya a módszernek, hogy ha a seedek nem szolgáltatják tovább a torrentet, akkor az esetleg már nem elérhető a publikált .torrent fájlok ellenére. Esetleg csak fájldarabok keringenek a hálózaton, anélkül, hogy egésszé lehetne azokat összeállítani. Emiatt a BitTorrent inkább csak a népszerű fájlok megosztására alkalmas.
A letöltések optimalizációja érdekében azoknak kéne elsőként letöltési lehetőséget kapni, akik megelőzőleg sokat töltöttek fel. Ehhez minden felhasználóhoz számon kell tartani a letöltés/feltöltés arányt. A protokoll jelenleg ilyen szempontból még nem tökéletes, hiszen a tracker csak a klienstől tudja, hogy mennyit töltött fel, illetve le – a kliens pedig elvileg akár hamis adatokat is küldhet.
A seed szerver használata manapság egy lehetőség a torrentezők körében: ugyanolyan torrent kliens üzemel a szolgáltató szerverén (ezt nevezzük seed szervernek), mint amilyet a felhasználók otthoni gépeiken futtatnak, ugyanakkor számos előnye van.[forrás?]
A seed szerver gyenge feltöltési sebességű internetkapcsolat esetén hasznos.
Szolgáltatás két fő részből áll: tárhelyet és internet-sávszélességet biztosítanak, amit az alap internetböngészővel könnyen kezelhető, saját bejáratú távoli asztalt és torrent-klienst használhatunk. A böngészőből előre megadott felhasználónév és jelszó megadása után érhetjük el a lehetőségeket.
Ehhez jár korlátozott mennyiségű szabad fel-, illetve letöltési szál (ezt nevezzük "slot"-oknak). A tárhelyhez sebességkorlátozás nélküli FTP hozzáférést adnak, aminek segítségével a seed szerverre letöltött állományok mozgathatók, törölhetők vagy letölthetők a saját gépre (pl. Total Commanderrel). Ez előnyös a hálózat számára is, hiszen felgyorsul az adatforgalom, ebből kifolyólag több aktív torrentet tudnak kiszolgálni, amikhez több felhasználó csatlakozhat.
A kliensprogramok nehezebben működnek tűzfal vagy router mögött, de könnyű ezen segíteni, ha a tűzfal vagy a router NAT beállításai között megnyitunk egy külön port-ot a kliens számára. A kliensprogramokban lehet korlátozni a leech/seed sebességet, ami egyébként teljes mértében az internetsebességtől függ. Otthoni p2p használathoz ezért ajánlott a széles sávú internetelérés.
Forrás: Wikipedia