Datei via UDP

  • Themenstarter Themenstarter UDPler
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
U

UDPler

Gast
Hi, wie würdet ihr ne Datei über UDP übertragen ?
UDp ist ja nicht sicher was die Ankunft und so angeht....
Ich kann leider kein TCP nutzen...

Gruß
 
tjo wenn du sicher sein willst dass die datei auch wirklich ankommt musst du wohl oder übel tcp nachbauen. Sprich immer eine antwort Acknowledge oder so senden (Paketempfang bestätigen). Für sowas verwendet man aber normalerweise TCP, weil es genau für sowas gemacht wurde. Ich versteh nicht wieso du kein tcp nutzen kannst
 
Problem ist, ich möchte UDP Hole Punching nutzen ..... !
Ich könnte natürlich TCP Hole Punching nutzen... aber das ist extrem kompliziert im Vergleich
zu UDP Hole Punching... Leider habe ihc mich auch noch nicht 100% mit TCP Hole Punching
beschäftigt... Ich weiß nur, dass ich z.b. die TTL bei einem Connect möglichst weit runter schrauben muss
usw... Und ich hatte mir gedacht, dass ne Dateiübertragung über UDP ansich einfacher zu realisieren sein müsste odeR ?

MAn könnte ja einfach die Pakete nummerieren, und wenn man eins eher ankommt als ein anderes, dann schreibt man dieses einfach mit einer RandomAccessFile an die bestimmte Stelle schreiben .... Ich wollte nämlich nicht nach jedem send ein recv auf der server seite durchführen... Andererseits, wäre dann wenigstens sichergestellt, dass alles übertragen wurde. Ich bin mir halt nicht so sicher, was da schneller ginge...

Gruß UDPler
 
Moin,

UDPler hat gesagt.:
Problem ist, ich möchte UDP Hole Punching nutzen ..... !
Ich könnte natürlich TCP Hole Punching nutzen... aber das ist extrem kompliziert im Vergleich
wo ist es kompliziert zu einem externen Server eine TCP-Verbindung aufzubauen? ... kann auch sein das wir von 2 verschiedenen Methoden für Hole Punching reden

hand, mogel
 
Problem: P2P

Ich möchte gerne P2P realiesieren... Das geht am Besten mit Hole Punching. Diese MEthode ist sowohl mit TCP als auch mit UDP möglich.... Natürlich mit UDP sehr einfach... Mit TCP is es echt kompliziert... Dafür muss man sich dann bei der Übertragung keine Gedanken mehr machen... Ich dachte, dass es einfacher sein sollte, über udp eine datei zu übertragen, als TCP Hole Punching... Ich möchte, dass mein Programm ohne Portfreigabe funktioniert... Natürlich habe cih einen externen Vermittlungsserver...

Gruß UDPler
 
Vlt liegt hier das Problem:

Ich brauche (habe) natürlich einen externen TCP Server, der eine feste IP hat, aber über diesen sollen eben keine Dateien geschickt werden, eben nur die IP und Ports der Clienten. Hole Punching ist ja sowohl mit UDP als auch mit TCP möglich. Bei TCP muss man aber diese ganze "ACK/SEC/SYN" Geschichte "faken" (verändern) und vorallem die TTL beim Connecten verändern. Hast du evt. schon Erfahrungen was TCP Hole Punching angeht ? Ich wäre (wenn das einer schonmal gemacht hat) über jeden tipp dankbar!

Gruß UDPler
 
Moin,

nein ... jetzt habe ich aber den gesammten Kram verstanden ... der externe Server dient nur zum IP-Austausch ... danach kommt es so wie ich das kannte - NAT "austricksen"

hand, mogel
 
Tja, wird glaub ich Zeit dass jemand für MINA einen Filter schreibt der TCP nachbildet ... In der MINA Mailingliste kam das Thema auch schon auf. Wenn man sowas hätte, wäre das doch recht hilfreich und würde den UDP Einsatz in einem "eigentlichen TCP Anwendungsbereich" doch erheblich vereinfachen.

Hatte für mein SIMON ja auch vor UDP zu unterstützen. Vielleicht setz ich mich doch mal hin und bau da nen Filter für... Mal sehen.

- Alex
 
Jo, sowas wäre super... Es ist zwar möglich, dies auch direkt mit TCP umzusetzen, aber ich denke, das Ergebnis steht in keinem Verhältnis zum Aufwand, vorallem weil so ein Filter einfacher wäre...
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben