AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi [Frage] Dateien runterladen??? P2P???
Thema durchsuchen
Ansicht
Themen-Optionen

[Frage] Dateien runterladen??? P2P???

Offene Frage von "Sillium"
Ein Thema von Sillium · begonnen am 14. Aug 2005 · letzter Beitrag vom 14. Aug 2005
Antwort Antwort
Sillium

Registriert seit: 9. Jul 2005
24 Beiträge
 
#1

[Frage] Dateien runterladen??? P2P???

  Alt 14. Aug 2005, 14:20
Hallo,

ich will eine kleines Programm schreiben, mit dem man im Netzwerk Dateien runterladen kann.
Und zwar würde ich das gerne so realisieren, dass es ähnlich wie bei den meisten P2P-Programmen ist, dass man von mehreren Quellen eine Datei runterlädt.

Oder so wie bei Bittorrent:

Zitat:
BitTorrent reduziert sehr stark die Last auf einzelnen Peers mit kompletten Quellen, da sich normalerweise Peers mit unvollständigen Dateien untereinander austauschen. Wie die farbigen Balken unter jedem Client zeigen, wird die Datei stückweise in zufälliger Reihenfolge untereinander ausgetauscht, anstatt sie „am Stück” zu laden.
Gibt es vieleicht ne P2P-Komponente oder so.
  Mit Zitat antworten Zitat
prinz_inzide

Registriert seit: 24. Jan 2005
64 Beiträge
 
#2

Re: [Frage] Dateien runterladen??? P2P???

  Alt 14. Aug 2005, 14:32
hab auch mal was in der art (p2p) gecodet, allerdings net fertig gestellt.

ich hab alles selbst gemacht mit den indys (v9).

und zwar nach dem prinzip: es wir eine liste angefordert mit allen, die die datei haben (die ips).
dann wird bei einer nach der anderen ip angefragt ob dort gerade zu viel geladen wird oder ob man von dort laden kann.
wenn überhaupt keine antwort kommt ist der server down, wenn kommt, dass zu viele schon laden, dann wird der server auch aussortiert.
alle die positiv reagieren werdenn in ein array geschrieben und es werden dyn. indy tcp clients für jede ip im array erstellt. alle connecten zu den jeweiligen ips.
jetzt werden immer 10/100 (wieviel auhc immer) kb von den einzelnen ips angefordert, dafür musst du mit critical sections arbeiten, weil sonst datei teile doppelt angefordert werden /übersprungen werden und am ende nur datenmüll dabei raus kommt.
wenn die jeweiligen server ´die angeforderten bytes dann schicken, werden sie in einen stream an die richtige stelle geschriben.

hoffe ich konnt helfen.

mfg
tim

//edit:
//so hab ichs jedenfalls gemacht, geht bestimmt auch anders. aber meins hat funktioniert.
//ich hab dann am schluss um noch mehr speed rauszuholen, die einzelnen teile komprimiert und beim empfänger wieder dekomprimiert
//
//jaja die gute alte zeit
  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#3

Re: [Frage] Dateien runterladen??? P2P???

  Alt 14. Aug 2005, 14:40
Zitat:
hab auch mal was in der art (p2p) gecodet, allerdings net fertig gestellt.
Hast du vielleicht noch die Sourcen ?
  Mit Zitat antworten Zitat
Sillium

Registriert seit: 9. Jul 2005
24 Beiträge
 
#4

Re: [Frage] Dateien runterladen??? P2P???

  Alt 14. Aug 2005, 16:33
Ungefähr so hab ich mir das auch vorgestellt, bloß ohne die abfrage, wieviel von dem Server schon verschickt wird.

In der Theorie ist das ja auch verständlich, aber wie kann ich denn meine Daten aufteilen und dann wieder richtig zusammenfügen und doppelte oder fehlende Teile abfragen.

Wenn es den Source noch gibt, währe mir betsimmt sehr geholfen!!

Danke soweit!

Was waren denn die größten Hürden??
  Mit Zitat antworten Zitat
prinz_inzide

Registriert seit: 24. Jan 2005
64 Beiträge
 
#5

Re: [Frage] Dateien runterladen??? P2P???

  Alt 14. Aug 2005, 19:17
ne der source is leider nimmer da, is bei ner formatierung drauf gegangen, weil ich gedacht hab, ich hätt n backuhp gemacht - echt schlau...

also ich hatte ein paar tausend zeilen, aber das geht auch einfacher (is dann halt net so komfortabel).

also du musst dichn bissel mit criticalsections, threads, indys und halt allgemein netzwerkkram auskennen und solltest halt delphi schon ganz gut beherschen^^

aber dann isses relativ einfach. denk mal drüber nach, mach dir skizzen/notizen und du wirst merken, dass das so schwer net wird!

is halt VIEL aber net extrem schwer.

tut mir leid, dass ich mit dem source net dienen kann, aber hät mir selbst am liebsten in de arsch gebissen, als ich gemerkt hab, dass der source nimmer da is!


mfg
tim
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz