Programm für Netzwerkübertragung von Dateien



  • Hi folks,

    ich bin gerade dabei, mit Sockets das genannte zu programmieren.
    Bisher erscheint mir das ganze ziemlich umständlich.
    Wenn ich eine Datei verschicken will muss ich
    -die IP des Emfängers wissen
    -warten, bis der Empfänger bereit ist, zu empfangen

    Wie kann ich das besser lösen, wie funktioniert konkret P2P Software.
    Ich könnte natürlich ein Serverprogramm schreiben, das alle nutzer
    dieses Systems kennt und erkennt, wann wer online ist und was zu ver-
    schicken hat. Geht das auch ohne Serverprogramm?

    tHx and good night!



  • bei p2p software solltest du dir am besten mal in der wikipedia die einträge zu edonkey2000/emule/ed2k-protokoll, kademlia, gnutella2 und bittorrent durchlesen. sind sehr inspirierend.

    ohne serverprogramm gehts auch.
    nur brauchst du dann eine art discovery, die wohl am besten mit udp broadcasts geht. da schickst du ein paket an alle rechner (broadcast adresse), das ne antwort von jedem laufenden client erzeugt. so werden auch manche lan chats gemacht.

    das könntest du mit einem impliziten server kombinieren. soll heißen, der erste client ist automatisch ein server und sagt das beim antworten auf ein discovery packet auch. ein server kann manches einfacher machen, aber in so kleinen netzen wie einem LAN ist das sicher nicht nötig.



  • c.rackwitz schrieb:

    nur brauchst du dann eine art discovery, die wohl am besten mit udp broadcasts geht. da schickst du ein paket an alle rechner (broadcast adresse), das ne antwort von jedem laufenden client erzeugt. so werden auch manche lan chats gemacht.

    geht aber nicht im internet



  • net schrieb:

    geht aber nicht im internet

    hab ich auch nicht gesagt. broadcasts werden von den providern gleich rausgefiltert.



  • Was wäre denn für Interneteinsatz die sinnvollste Lösung?



  • ohne server? du brauchst die ip von mindestens einem im netz, um zum netz ne verbindung zu bekommen.

    mit server? brauchste server ip.



  • im internet braucht man 'ne zentrale anlaufstelle, das kann z.b. auch ein irc-raum sein. vielleicht kann man auch was mit igmp ausrichten?


Anmelden zum Antworten