Lieber Hein,
ich habe dir für mein Prinzip mal eine vereinfachte Grafik gebaut.
Einfach um den Irrglauben auch mal mathematisch zu beseitigen
Ganz Links = Zeit in Sekunden
Spalte A: Anzahl User mit komplettem Chunk
auf der linken seite befinde ich mich. ich bin die Buchstaben B-E.
Aufgabe ist es einen Chunk zu senden der eine Größe von 32 kilobyte hat.
es ist kein File sondern ein bereits ein Chunk.
Rot ist das Zeichen wenn ein Chunk fertig gesendet wurde.
links habe ich 8 Farben bedient ... damit du also sieht welche Farben ich bedient habe (Farbe = User) nach rechts hin siehst du wie diese nun anfangen Chunks zu senden.
Ich sende mit 32 kb/s und zwar maximalen Transer an einen User.
Sprich 1 User ist nach 1 Sekunde abgefertigt.
Die bedienten User haben alle Ihren Upload auf 8kb/s eingestellt. sind somit mit dem 32 kb/block nach genau 4 Sekunden fertiggestellt
ein viereck (zumindest links vom dünnen balken) = 1 x8 kb - block
In 33 Sekunden habe ich also selbst 33 User abgefertigt
Das wird auch so bleiben, wenn ich in 2k brocken an 16 user sende. dazu aber gleich mehr.
die von den jeweiligen Farben fertiggestellten Chunks an wieder andere werden rechts von dem grauen dünnen Senkrechtbalken dargestellt.
obendrüber die Kategorie hellgrau, grau , dunkelgrau... die wiederum die von diesen fertiggestellten sind.
das prinzip ist überproportional soviel ist dir klar.
die zahlen die links senkrecht verlaufen sind genau die user, die den chunk zum weiterverteilen haben.
jetzt dein beispiel hier in vereinfachter form
die anderen user werden immernoch den chunk in 8 sekunden fertigstellen
Links wieder Zeit in Sekunden
01-1
02-1
03-1
04-1
05-1
06-1
07-1
08-1
09-1
10-1
11-1
12-1
13-1
14-1
15-1
16-17 (+16 User fertiggestellt a 2 kb/s)
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 32+64 (+16 User fertiggestellt a 2 kb/s) +64 [16x4] User fertiggestellt)
wie du siehst HeinBloed, du hast nach 32 Sekunden 99 User ... auf deinem Prinzip
nach meinem Prinzip sind es 144 User also schon 45
beide Systeme werden sich sehr wohl überproportional entwickeln.
Mein Prinzip jedoch basierend auf seiner Zahl, dein Prinzip auf seiner.
wir sind nach 32 Sekunden schon im Unterschied von ca 30%
Nun sag mir , ob du immernoch sicher bist, das 16x2 kb besser ist ...als 1x32
das ist pure Mathematik... mehr nicht. Und ich weiß einfach, dass fast alle eine Philosophie verbreiten wie Du, die mathematisch einfach inkorrekt ist.
Schlussatz: wenn ich 32 kilobyte share, share ich 32 kilobyte. das wird nicht mehr oder weniger. WENN das Netzwerk überhaupt etwas davon hat, dass es sich schneller verteilt, dann NUR ... wenn die Chunks schneller komplettisiert sind.. .. . also möglichst so schnell wie möglich einen Chunk weitergegeben. und das geht nur, wenn der chunk also in KÜRZERER zeit zum weiterverteilen vorhanden ist ... SPRICH UPLOAD KOMPLETT AN EINE PERSON.
ich hoffe, dass das jetzt mal irgendwie klar wird.
und upload throttle ist deswegen der letzte mist, weil er einen Upload unterbricht. scheißegal auf welchem system, upload throtttle ist der letzte mist
prinzipiell eigentlich in meinen augen auch quellenaustausch, der nicht nur die CPU belastet ..sondern auch den netzwerktraffic... gottseidank befindet sich dieser Traffic aber im Bit/Byte Bereich und ist damit für alle Verbindungsarten unrelevant. Möglich, dass er tatsächlich mir schneller mitgeteilt hat wo welche Quellen sind als der Server... Preis/Leistung (CPU-Last / Effekt) finde ich in dem Zusammenhang aber nicht wirklich erwähnenswert...
ich hoffe ein Serverbetreiber belehrt mich hier eines besseren.
Ich habe erst noch überlegt ob ich ein praktisches Beispiel mit einer Feuerlöschkette projiziere, das wird aber zu kompliziert...
mfg
Max