14

Nov

BitTorrent egy picit közelebbről 1.

Posted by tacsko as hálózat, p2p, tech

Ugyancsak több bejegyzést igénylő sorozatba kezdek, elsőként álljon itt egy bevezető a BitTorrent protokollról.

A BitTorrent napjaink egyik legelterjedtebb fájlcserélő protokollja. Amikor azt írom fájlcserélő, ne gondoljon senki a jogvédett tartalmak illetéktelen megosztására. Sajnos bizonyos szervezetek sikeresen félrevezették a hozzá nem értő internet felhasználókat. A BitTorrent egy csodás technológia, mely segítségével kis sávszélességgel rendelkező szerverek is megoszthatják fájljaikat anélkül, hogy elfogyasztanák amúgy is szűkös erőforrásukat. Mindezt oly módon, hogy a letölteni kívánt fájlokat nem a szervertől kapják a felhasználók, hanem egymás között osztják azt meg.

torrent

Hogy működik a BitTorrent?

A megosztani kívánt fájlt mindig azonos méretű kis darabokra osztjuk fel, mely darabok mérete 64KB és 1MB közé esik. Minden kis darabhoz egy ellenörző összeget rendelünk, melyet SHA1 hash algoritmussal generálunk. A későbbiekben ha egy felhasználó egy darabkát letölt más felhasználótól, ezen ellenörző összegek segítségével ellenőrizheti azok hitelességét.

Minden torrent-hez generálnunk kell egy meta info fájlt, melynek kiterjesztése általában .torrent és a következő adatokat tartalmazza: a tracker szerver URL-t, a megosztani kívánt fájlok nevét, méretét, elérési útvonalát és a darabkákhoz tartozó már korábban generált SHA1 ellenörző összegeket.

A letöltés megkezdéséhez ezen torrent fájlra van szükség, mely minden szükséges információt tartalmaz. Ne tévesszük össze a torrent fájlok keresésére szolgáló webes felületet szolgáltató szervereket a tracker szerverekkel, azok csupán segítséget nyújtanak a torrent fájlok közötti kereséshez, és a fájlok beszerzéséhez.

Amikor elkezdünk egy BitTorrent letöltést kliensünkkel, az először a tracker szerverrel veszi fel a kapcsolatot HTTP protokoll segítségével. A tracker szerver minden torrent-hez tárolja azon felhasználók címét, akik már részt vesznek a megosztásban. Ha új letöltő jelentkezik be, a tracker elküldi neki a már bejelentkezett felhasználók listáját, majd az új letöltő is felkerül rá.

Miután kliensünk rendelkezik minden szükséges információval, megpróbálja felvenni a kapcsolatot a tracker-től megszerzett felhasználókkal.

Az egyes felhasználókkal TCP kapcsolatot épít ki, ezeken keresztül fog megtörténni a tényleges adatátvitel. A letöltő és feltöltő felek ezen csatornákon keresztül nem csak a fájlokat cserélik, hanem a jelzésinformációk is itt kerülnek továbbításra. Hirdetik, hogy mely darabkákat tudják feltölteni, melyekre van még szükségük és egyéb állapotinformációkat is közölnek egymással.

Folytatása következik, hagyd futni a torrent kliensed.

Források: