Könnte man beim Freenet Projekt die Downloadrate erhöhen wenn man Dateien in Teilen ähnlich wie beim OffSystem aufteilt?
-
Beim OffSystem werden die Dateien ja in Blöcke zerhackselt und dann mit was anderem ge-XOR-ed,
dabei kann es dann passieren, das sich ein oder mehrere Dateien diese Blöcke teilen.Beispiel, jeder Buchstabe bedeutet hier 1 Block:
Datei 1 besteht aus den Blöcken:
ABCD
Datei 2 besteht aus den Blöcken:
FJUAFGA
Datei 3 besteht aus den Blöcken:
HJOPCDaraus folgt:
- Datei 1, 2 und 3 teilen sich jeweils den Block A mindestens einmal.
Bei Datei 2 wird Block A sogar zweimal benutzt.- Datei 1 und 2 teilen sich den Block C.
- Und Datei 2 und 3 teilen sich den Block J.
D.h. bestimme Blöcke werden von verschiedenen Dateien mehrmals benutzt und
da das Freenet Projekt ja aus einem dezentralen anonymen Datenspeicher besteht
würde eine Aufteilung der Dateien in Blöcke doch dazu führen, das die Blöcke
A, C und J viel öfters und stärker verbreitet wären und der Download dieser Blöcke somit schneller erfolgen könnte, da die Wahrscheinlichkeit ja auch zunimmt, daß den Block eine Freenet Node schon hat und somit weniger Rückfragen und Node Hops durchgeführt werden müßten.Das ganze müßte man dann nur noch in das Verschlüsselte Freenet einbinden.
Und wenn jemand die Daten anfordert, dann bräuchte er nur, wie beim Offsystem auch, nur eine Art Link mit dem man die eigentliche Ursprungsdatei wieder aus den Blöcken zusammensetzen kann.Meine eigentliche Frage zu dem Problem ist jetzt nur, wie indexiert man jetzt die Blöcke, ohne das man für den Link der die Blöcke ja zusammensetzen muß, eine so große Blockangabe hat, das man den Block auch gleich so downloaden könnte.
D.h. die downzuladene Datenmenge sollte nicht ansteigen, sondern allenfalls gleich bleiben.
Hat jemand Lösungen?
-
Die Datenmende kann worst case nicht gleich bleiben da du irgendwas zusätzlich übertragen musst.
Für die Blocknummer müsste man dann einen Hashcode nehmen. Dabei kann es theoretisch zu Kollisionen kommen, was man dann in Kauf nehmen muss. Die Chancen sind aber, vorausgesetzt man nimmt jetzt nicht gerade einen echt miesen Hashcode, unglaublich gering.
-
Diese Frage gehört eigentlich nach "Rund um die Programmierung" verschoben, immerhin geht es hier um Algorithmen.
Das ist schon etwas spezielles und hier im "Themen rund um den PC" hängen eh meist nur die Newbs rum die keine Ahnung zu deiner Frage haben.
Da mußt du schon die Progger im anderen Unterforum fragen.