Übertragung Übertragen

445
Shan-Desai

Ich bin neugierig, gibt es Implementierungen, bei denen man eine Datei über eine Broadcast-Adresse wie bei IPv4-Adressen an mehrere End-Hosts senden kann?

Zum Beispiel kann scpeine Datei an mehrere Hosts gesendet werden

scp myFile.txt host@192.168.50.255:/home/hostname 

Ein offensichtlicher Weg, um sofort scpüber zwei oder mehr Hosts hinweg zu arbeiten, ist die Verwendung des &&Operators. Was passiert, wenn die Hostnummer mehr als 20 ist

0
Ich denke, was Sie suchen, ist technisch gesehen ein Multicast, kein Broadcast. Richie086 vor 8 Jahren 0
Multicasting ist definitiv eine gute Option, dank @MariusMatutiae Shan-Desai vor 8 Jahren 0

2 Antworten auf die Frage

1
MariusMatutiae

Ja, es kann gemacht werden. Jakuje hat recht, dass dies nicht in TCP möglich ist. Seine Antwort bezieht sich jedoch nicht auf UDP, das stattdessen genau dafür verwendet wird.

Ich habe dieses Java-Programm einige Zeit dafür verwendet, aber dann habe ich entdeckt, dass Clonezilla es kann,

Multicast wird in Clonezilla SE unterstützt, das sich für massive Klone eignet

und das gab mir die Motivation, zu prüfen, wie sie es getan haben: die Autoren von Clonezilla selbst sie verwenden udpcast angeben, für das, und das ist alles: udpcast der Webseite Staaten

UDPcast ist ein Dateiübertragungswerkzeug, das Daten gleichzeitig an viele Ziele in einem LAN senden kann. So können beispielsweise ganze Klassenräume von PCs gleichzeitig installiert werden. Der Vorteil von UDPcast gegenüber anderen Methoden (nfs, ftp, was auch immer) ist, dass UDPcast die Multicast-Fähigkeiten von UDP verwendet: Die Installation von 15 Maschinen dauert nicht länger als die Installation von nur 2.

Es ist in den Repos für die von mir verwendeten Distributionen enthalten (Debian, Kubuntu, Arch Linux), also gehe ich davon aus, dass es in fast allen Repos sein wird.

0
Jakuje

Nein, so funktioniert es nicht. scpFunktioniert über ein sshProtokoll, das verbindungsbasiert (TCP) ist und daher nicht gesendet werden kann. Es sendet Daten und erhält die Bestätigung, dass die Daten von der anderen Seite korrekt empfangen wurden.

Sie könnten dies mit einer signifikanten Änderung des Clients tun, wodurch die Verbindung zu mehr Servern geöffnet und Daten an alle Server gesendet werden könnten. Dies ist jedoch keine echte Übertragung.