Neden bir dosyanın rastgele parçalarını sürekli aktarımdan daha hızlı dağıtıyor?


17

Neden BitTorrent'in kısmen daha hızlı olduğu söyleniyor, çünkü bir dosyanın rastgele parçalarını bitişik / doğrusal bir şekilde baştan sona transfer etmek yerine aktarıyor.


EDIT: Ama neden 'rastgele' olmak zorundalar ? Neden bir akran size ilk yarıyı, ikinci akranı diğer yarısını veren daha öngörülebilir bir “yarı-bitişik” transfer değil? Bu teorik olarak ek yükü azaltacaktır.

Yanıtlar:


6

Düzenlemeyle ilgili olarak neden rastgele olmaları gerektiğini sormak: Diyelim ki indiricilerin henüz sahip olmadığı ilk bloğu indirecek şekilde değiştirildi, böylece sürekli bir aktarım garanti edildi.

Daha sonra 100 MB'lık bir dosyayı paylaşıyorum. Çevrimdışı olmadan önce 10 kişi bağlanıyor ve her biri 50 MB indiriliyor.

Bu insanlar daha sonra batırıldı, çünkü hepsinde dosyanın ilk yarısı var, sadece ikinci yarısı var. Yeniden kullanıma sunana kadar indirmeyi tamamlayamazlar.

Bunun yerine, bloklar gerçekte olduğu gibi rastgele bir sırayla aktarılırken, bu 10 kişiden her birinin farklı bir blok dizisi vardır, bu yüzden indirme işlemlerini çevremde olmamasına gerek kalmadan tamamlamak için kendi aralarında ticaret yapabilirler.

Bunların her biri blokların farklı bir dizi olduğu için, daha iyi olsa, bunların her birinden indirebilirsiniz bütünDiğerlerinin kopyalarındaki boşlukları doldurmaları için. Düzenlemeniz dosyadaki rastgele bir noktadan başlayarak ve bu noktadan bitişik olarak indirerek indirme fikrine itiraz etti, ancak bu bir indiricinin kopyasından diğerine örtüşme miktarını artıracaktır (Alice dosyanın başında başlar ve Bob başlarsa % 10, o zaman ikisinin de% 40'ı var ve geri kalanı kullanılabilir kılmak için yeniden bağlanmadan benden işlem yapabilecekleri% 10'una sahipler. Rastgele bir sırada indirme, indirilen her bir blokanın blok setinin benzersizliğini en üst düzeye çıkarır, böylece indiricilerin kendi aralarında işlem yapmaya başlayabilmelerini ve tohum yoksa, tam bir kopyasını birleştirmelerinin mümkün olma olasılığını en üst seviyeye çıkarır.

Tek bir bitişik indirme (koşullara bağlı olarak) sizin için daha iyi olabilir , ancak rastgele bir sırada indirmek ağın tamamı için daha iyidir.


"rastgele bir sıra, her bir kümenin benzersizliğini en üst düzeye çıkarır" - tam olarak.
eternalmatt

30

Önemli olan, dosyayı aynı anda birden fazla kaynaktan (eş) bir kaynaktan almaktır.

10 bölüme ayrılmış ve 1 sunucudan indirilmesi 100 saniye süren bir dosyanız varsa, teorik olarak dosyayı 10 saniyeden 10 saniyede (artı bazı genel giderler) 10 saniyede teslim edebilirsiniz. Uygulamada her bir eş mükemmel olmayacağından daha uzun sürecektir ve muhtemelen bant genişliği sınırınıza ulaşacaksınız (ancak bu fikre sahip olacaksınız).

Yine de dosyayı yeniden birleştirmeniz gerektiğinden, parçaları sırayla almak zorunda değilsiniz. Bu nedenle, her biri 2 parça sağlayan yalnızca 5 eşiniz varsa, bunlar dosyanın rasgele parçaları olabilir.


Basit. Açık. +1
Xavierjazz

5
"6 erkek 6 dakikada 6 delik kazabiliyorsa, 10 erkek 10 delik kazmak ne kadar sürer?"
Martin

4
@martin, deliklerin boyutuna (yığın boyutu) ve mevcut ekipmana (bant genişliği) bağlıdır :)
cırcır ucube

14

Bunun tamamen söz konusu dosyaya, eşlerin miktarına ve acı olmayan kaynağın hızına bağlı olduğu söylenmelidir.

Asla bağlantınızın maksimum indirme bant genişliğinden daha hızlı indiremezsiniz ve yeterli bant genişliğine sahip bir yerden indirme yapıyorsanız, Bittorrent kullanmaktan daha hızlı olacaktır.

Ancak, internet hızları daha hızlı ve daha hızlı arttıkça, (daha küçük) web sitelerinin ve ev sahiplerinin yetişemediği noktaya geliyoruz.

Örneğin, birkaç ay önce Londra’da bulunan kollokasyon fiyatlarına baktığımda, 5Mb'lik bir bağlantı için kesinlikle korkunç fiyatlar almıştım. Bunu alacak olsaydım, insanların çoğuna iyi hizmet ederdi.

Bununla birlikte, aynı satırda, birkaç 500 MB dosya barındıracak olsaydım ve herkesin Kablo (50 MB) veya hızlı ADSL2 + (24 MB) hatları varsa, sunucumun size bu kadar hızlı hizmet veremeyeceğini fark edersiniz. ...

... ancak, size aynı dosyayı Bittorrent aracılığıyla sunacak olsaydım ve her biri sadece 30Kb / s veren 200 kişi vardı, bu da 5.8Mb / s'ye eşit olurdu (ve çoğu insan bundan daha hızlı yükleme hızına sahip!) .... ve eğer sunucumda Bittorrent'i çalıştırıp aynı dosyayı teklif etseydim, indirilebilir bir toplam 10.8Mb / sn olduğu anlamına gelirdi - bu 5Mb / sn'lik boru üzerinden sağlayabileceğimden çok daha fazlası benim

Bittorrent, çok sayıdaki bir oyundur, yeterli bant genişliğine sahip yeterli sayıda insan yüklemeniz gerekir ... Bütünlük kontrolü (ve geri yüklemeniz gerektiği gibi) gibi ilave adımlar nedeniyle, doğrudan mücadele etmek zor yeterli bant genişliğine sahip iyi bir siteden indirme, ancak birçok küçük site için - bant genişliği faturalarından tasarruf etmek isteyen parlak ve hatta daha büyük siteler.


standart kablo bağlantılarında yükleme ve indirme bant genişliğinin aynı olmadığını
söyleme (ADSL'deki

Garip colo bant genişliği kuralı, bana benziyor. Burada Colorado'da çoğu colos 100 Mbps bağlantı sunuyor ve sizi her ay kullanımla şarj ediyor gibi gözüküyor ve maliyeti düşürmeniz gerekirse kendi bağlantı hızınızı yönetmek ve sınırlamak size kalmış.
Zan Lynx,

Başka bir yorum: Bütünlük kontrolü nedeniyle mümkün olduğunda Bittorrent'ten indirmeyi tercih ediyorum. SHA1 uyuşmadığı için tüm bir DVD ISO'yu yeniden indirmeye zorlamak inanılmaz derecede acı verici. Bittorrent her bloğu kontrol eder, böylece değiştirilecek sadece küçük bir yığın bulunur.
Zan Lynx,

@Zan Lynx - Ouch! Bu sorun sadece son beş yılda, bir kez yaşadım ... ve ondan önce, temelde sessizce şeyleri bozan kötü bir hafızam vardı, anlayabiliyorum, ama uzun yıllar görmedim .... Her neyse, bir süredir yurtdışına çıkmayı ve yurtdışında ev sahipliği yapmayı kastediyordum - İngiltere hemen hemen her şey için çok pahalı :(
William Hilsum 4:11

4

Çoğu yanıt sorunuzu yanıtlıyor gibi görünmüyor.

BitTorrent daha hızlı değil.

Birden çok kaynağa bağlanma yükü nedeniyle aslında daha yavaştır .

Ancak uygulamadaki asıl fark, bir web sitesinin size verebileceğinden daha hızlı olması için potansiyel olarak ilave olabilecek birçok kaynaktan indirme yapıyor olmanızdır. Çoğu web sunucusu ağır yük altındadır veya hız sınırlaması yoktur, bu nedenle bunları kuru şekilde emmezsiniz.

BitTorrent'in dosyayı rastgele görünen bir düzende aktarması, hızını doğrudan etkilemez.

Düzenlemenize gelince, parçalar rastgele değildir! Nadirliklerine göre önceliklendirilirler: Nadir bir eserin olabildiğince çabuk daha az nadir hale gelmesi gerekir, bu nedenle kaynak aniden ayrılırsa kaybolmaz. Kullanılabilirliği ile yapmak zorunda, hız ile değil.


3

Bu bir uygunluk sorunu. Sürekli indirmeniz gerekiyorsa, o zaman dosyayı sizden daha çok barındıran kişilere bağımlı olursunuz. Dosya sizden daha az olan her kişi size veri gönderemez.

Parçalar rastgele dağıtılırsa, indirebileceğiniz ana bilgisayar sayısı daha yüksek olacaktır, bu nedenle dosyayı daha hızlı indireceksiniz.


1

Torrentler her zaman daha hızlı değildir, ancak oldukları zaman bir neden ağ entropisidir. Herhangi bir sürenin bağlantısı (büyük bir dosyanın indirilmesi), zaman zaman bozulabilir, çünkü rastgele, kontrol edilemeyen faktörler, yönlendiricinin aşırı yüklenmesi ve siz ve sunucu arasındaki diğer sorunlar gibi paketlerin iletimini etkiler. Daha fazla hata, paketlerin daha fazla yeniden gönderilmesi anlamına gelir ve bu durum zaman içinde daha da kötüleşir. Torrentler, birçok rota yolunda birçok küçük bağlantı yapar; doğru koşullar altında hataları azaltabilir veya paketleri ya da zarar görmüş paketleri azaltabilir ve özellikle tohum ve akran sayısı arttıkça daha hızlı gibi görünür.


1

Diyelim ki eşyaların listesini almak için markete iki kişi gönderiyorsunuz. Her birine aynı listeyi ver. Bununla birlikte, bunlardan birisinin, listede göründükleri sırayla eşyaları alması gerekir. Diğer, eşyaları istedikleri sırayla alabilir. Sence önce hangisi bitecek?


Ya tüm öğeler sırayla düzenlenmişse? (Birleştirilmiş?)
Mateen Ulhaq

Hangi sıraya göre dizildi? Alfabetik sıraya göre mi? Sadece süpermarketin düzenlenme şekliyle düzenlenmemişlerse, yardımı olmaz. Analojide, "süpermarket" çeşitli yükleyicilerin blok listeleridir. (. Herkesin başından itibaren başlayan, onlar tam olarak aynı blokları olurdu, çünkü o zaman her dosyanın% 33 olan iki kişi Yuck, birbirlerine yardımcı olamazdı.)
David Schwartz
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.