Hallo!
Ich möchte ein kleines Programm schreiben mit dem man Dateien zwischen mehreren Benutzern übers Internet übertragen kann. Bis jetzt benutze ich Winsock und das alles geht über einen Server. Das bedeutet die Daten gehen immer zuerst zum Server und werden dann an den entsprechenden Client weitergeleitet. Wenn hier nur 2 Clients sich gegenseitig Daten senden, wird das ganze schon enorm durch die Übertragungsrate des Servers ausgebremst. Um das zu verhindern würde ich die Daten gerne direkt von Client zu Client senden, also Peer-to-Peer. Das Problem ist, dass ich das bis jetzt nur so kenne, dass dazu die Clients Ports freigeben müssen. Das wiederum bedeutet, wenn jemand hinter einem Router sitzt muss er erst bei dem Router diesen Port freigeben. Und leider kriegt das nicht jeder hin und außerdem bin ich da selbst auch erstmal skeptisch, wenn ich für ein Programm als erstes einen Port freigeben muss. Deshalb frage ich mich, ob das auch irgendwie anders geht???
Kann ich Daten Peer-To-Peer versenden ohne vorher einen Port freizugeben? Von mir aus auch mit Portfreigabe aber irgendwie automatisiert, so dass der Benutzer nicht erst seinen Router einstellen muss. Gibt es da irgendeine Möglichkeit?
Ich frag mich auch wie das ganze denn beim normalen Surfen im Internet funktioniert. Da werden doch auch Daten von fremden Server empfangen und gesendet und dazu muss man doch auch nicht vorher einen Port freigeben...
Wie ihr seht kenn ich mich leider mit Netzwerken nicht besonders aus
Vielen Dank schonmal für eure Antworten!
Grüße
blablab