Tracker => Kimin bilgisayarinda hangi dosya var, inceler ve indexler.
Kullanicilar => Bilgisayarlarinda torrent client' i kurar ve belirlenen disk alanlarini tracker icin kullanima acar.
Torrent Search Engine => Tracker'larla baglanti kurar, kimde ne var ne yok seceresini tutar.
Aradigi dosyaya ulasan kullanici tracker'dan hangi kullanicilarda ne var bunun bilgisini alir ve download'a baslar.
Veri aktarimi paralel, asenkron ve P2P calisir. Yani torrent sitesinden degil direkt kullanicidan download edersin.
Ayrica veri chunklara bolunur ( bunu client yapar ) , hangi chunk hangi kullanicida var bunu tracker kontrol eder.
Henuz bir dosyayi indirmen tamamlanmasa dahi indirdigin chunk'lari senden bir baskasi alabilir.
Bir dosyayi tamamen indiren , yani tum chunk'lara sahip olan kullanici kiymetlidir. Seeder budur.
Kismi sahip oldugun chunklari paylastigin icin, ancak bazi chunklara ihtiyac duydugun icin bu kullanici Leech olur.
Teorik olarak sadece Leecher'lardan olusan bir network basarili dosya kopyalayabilir. Ali'de 1-50 arasi chunklar varsa, Veli-de 51-100 arasi varsa Mehmet gelip ikisinden de download edip 1-100 e ulasir ve Seeder olabilir.
Hic bir leecher'da olmayan en az 1 chunk varsa kimse o dosyayi basarili download edemez, ebediyen seeder bekler : )
Edit:
Iyi cevap secilmis, ekstra bilgiler de yazayim madem, merakli birilerinin isine yarar belki, kuru kuru tesekkur olmasin.
- Torrent, bittorrent protokoluyle calisir, yani spesifikasyonlari bellidir. Fakat bu spesifikasyonlarin nasil uygulanacagi client'tan client'a degisiklik gosterir. Cunku sistemin bazi problematik yonleri vardir. Ancak torrent dosyasini her client okuyup anlar. Cunku protokol aynidir. Browser gibi, hepsi ayni isi biraz farkli yapar.
- Ben "Muhtesem Sinema Filmi 1. Bolum" diye bir dosya paylasabilirim, ancak bu isim altinda farkli bir dosyayi torrent'e koyabilirim. En az 1 kisi download etmeden bu durumu kimse anlayamaz.
- Torrent web siteleri genelde bu problemin onune gecmek icin arama ekraninda puanlama vs koyar ama teknik olarak download etmeden icerige bakamazsin, bu da virusseverler icin bulunmaz firsattir.
- Bazi torrent client'lari indirilen her chunk icin md5 kontrolu yapar, bazisi yapmaz. Bu da guvenlik riski olusturur. 100 parcadan olusan bir verinin 33. parcasini download ettikten sonra bozup yeniden torrent network e yayabilirim.
- Torrent anonimite saglar, cunku trackerlar bir dosya kimde var kimde yok, hangi chunk nerede, kim online kim offline vs kontrolu saglar. X dosyasini ilk defa kim network'e yuklemis gibi anonimiteyi bozan seylerin pesinde kosmaz. Bu da ozgurluk saglar. Fakat tahmin edilebilecegi gibi illegal data transferinin de bir numarali adresidir.
- Hic bir zaman yok edilemez cunku, tracker'lari ve torrent search engine'leri yok etseniz dahi dosyalar kullanicilarda kalir. Birinin tek yapmasi gereken sistemi yeniden acmaktir ve kisa surede tum indexleme islemi yeniden tamamlanir ve her sey kaldigi yerden devam eder.
- Benzer P2P protokoluyle calisan ve dosyanin tamamini sisteminize indirmenize gerek kalmadan calisan video / muzik calistirma programlarinca da kullanilir. Filmin ilk 5 dakikasini once Ali izler, sonra o 5 dakikalik kismi Veli'ye gonderir o izler, o da Mehmet'e gonderir vs. Bu sekilde sadece bilgisayarinda 5 dakikalik buffer kismi tutarak gigabytelarca veri network'de tasinabilir. Tek dezavantaji canli bir sey izleniyorsa veri tum networku dolasip geldigi icin gecikmeli gelir : )
- Bilgisayar muhendisligi okuyanlara tavsiye ederim, en az bir tane torrent programi yazsinlar, client/tracker/server hepsi icinde. Network programlama ile ilgili bilmeniz gereken her seyi ogretir baslangic icin.