Veröffentlichung des offenen P2P-Filesynchronisierungssystems Syncthing 1.2.0

Vorstellung Veröffentlichung des Systems zur automatischen Dateisynchronisation Syncthing 1.2.0, bei dem die synchronisierten Daten nicht in Cloud-Speicher hochgeladen werden, sondern direkt zwischen den Systemen der Benutzer repliziert werden, wenn sie gleichzeitig online verfĂŒgbar sind, unter Verwendung des vom Projekt entwickelten Protokolls BEP (Block Exchange Protocol). Der Code von Syncthing ist in Go geschrieben und wird verbreitet unter der freien Lizenz MPL. Fertige Builds wurden vorbereitet fĂŒr Linux, Android, Windows, macOS, FreeBSD, Dragonfly BSD, NetBSD, OpenBSD und Solaris.

Neben der Lösung von Aufgaben zur Datensynchronisation zwischen mehreren GerĂ€ten eines Benutzers ermöglicht es Syncthing, große dezentrale Netzwerke zur Speicherung gemeinsam genutzter Daten zu erstellen, die auf die Systeme der Teilnehmer verteilt sind. Flexible Zugriffskontroll- und SynchronisationseinschrĂ€nkungswerkzeuge stehen zur VerfĂŒgung. Es ist möglich, Hosts zu definieren, die nur Daten empfangen, d. h. Änderungen an den Daten auf diesen Hosts wirken sich nicht auf die DatensĂ€tze aus, die auf anderen Systemen gespeichert sind. Es werden mehrere Modi zur Versionierung von Dateien unterstĂŒtzt, bei denen frĂŒhere Versionen geĂ€nderter Daten gespeichert werden.

Bei der Synchronisation wird die Datei logisch in Blöcke zerlegt, die bei der DatenĂŒbertragung zwischen den BenutzergerĂ€ten eine unteilbare Einheit darstellen. Beim Synchronisieren auf ein neues GerĂ€t, falls identische Blöcke auf mehreren GerĂ€ten vorhanden sind, erfolgt die Kopierung der Blöcke von verschiedenen Knoten, analog zur Funktionsweise des BitTorrent-Systems.
Je mehr GerĂ€te an der Synchronisation teilnehmen, desto schneller erfolgt die Replikation neuer Daten durch Parallelisierung. Bei der Synchronisation geĂ€nderter Dateien werden nur die geĂ€nderten Datenblöcke ĂŒber das Netzwerk ĂŒbertragen, und bei Umbenennungen oder Änderungen der Zugriffsrechte werden nur die Metadaten synchronisiert.

Die DatenĂŒbertragungskanĂ€le werden mittels TLS gebildet, alle Knoten authentifizieren sich gegenseitig anhand von Zertifikaten und GerĂ€tenummern, zur IntegritĂ€tskontrolle wird SHA-256 verwendet. Zur Ermittlung der Synchronisationsknoten im lokalen Netzwerk kann das UPnP-Protokoll verwendet werden, bei dem keine manuelle Eingabe der IP-Adressen der zu synchronisierenden GerĂ€te erforderlich ist. FĂŒr die Systemkonfiguration und -ĂŒberwachung ist eine integrierte WeboberflĂ€che vorgesehen, CLI-Client und GUI Syncthing-GTK, in dem zusĂ€tzliche Tools zur Verwaltung von Synchronisierungsknoten und Repositories bereitgestellt werden. Zur Vereinfachung der Suche nach Syncthing-Knoten entwickelt sich ein Koordinierungsserver zur Entdeckung von Knoten, dessen Start
vorbereitet ein fertiges Docker-Image.

Veröffentlichung des offenen P2P-Filesynchronisierungssystems Syncthing 1.2.0

In der neuen Version:

  • Vorstellung ein neues Transportprotokoll, das auf QUIC (Quick UDP Internet Connections) mit ErgĂ€nzungen fĂŒr das Durchleiten durch AdressĂŒbersetzer (NAT). TCP wird nach wie vor als das bevorzugte Protokoll fĂŒr die Verbindungsempfang empfohlen;
  • Die Verarbeitung von fatale Fehler wurde verbessert und Mittel eingefĂŒhrt, um Entwicklern automatisch Fehlerberichte zu senden. Das Versenden von Berichten ist standardmĂ€ĂŸig aktiviert, um es zu deaktivieren, gibt es in den Einstellungen hinzugefĂŒgt eine spezielle Option. Es wird darauf hingewiesen, dass die Daten im Absturzbericht keine Dateinamen, Protokolldaten, GerĂ€teidentifikatoren, Statistiken und andere persönliche Daten enthalten;
  • Die Verwendung kleiner und fester Blöcke (128 KiB) wurde als veraltet erklĂ€rt; beim Indizieren und Übertragen von Dateiinhalten werden jetzt fĂŒhrt nicht mehr dazu, nur große Blöcke variabler GrĂ¶ĂŸe verwendet;
  • Im Interface wird der letzte Fehler fĂŒr jede der definierten Adressen angezeigt;
  • Das Layout der Tabellenspalten im WebUI wurde optimiert, um eine korrekte Darstellung auf schmalen Bildschirmen zu gewĂ€hrleisten;
  • Es wurden inkompatible Änderungen vorgenommen. Die neue Version ist nicht kompatibel mit Hosts, die auf Syncthing 0.14.45 und Ă€lteren Versionen basieren.

Quelle: opennet.ru

60GB SSD 8Gb DDR4