lancement du système de synchronisation automatique de fichiers , dans lequel les données synchronisées ne sont pas stockées dans des services cloud, mais sont directement répliquées entre les systèmes de l'utilisateur lorsque ceux-ci apparaissent en ligne simultanément, utilisant le protocole BEP (Block Exchange Protocol) développé par le projet. Le code de Syncthing est écrit en Go et est sous licence libre MPL. Des versions prêtes à l'emploi sont disponibles pour Linux, Android, Windows, macOS, FreeBSD, Dragonfly BSD, NetBSD, OpenBSD et Solaris.
En plus de résoudre les problèmes de synchronisation des données entre plusieurs appareils d'un même utilisateur, Syncthing permet la création de grands réseaux décentralisés pour le stockage de données partagées, qui sont réparties sur les systèmes des participants. Des outils flexibles pour le contrôle d'accès et la création d'exceptions pour la synchronisation sont fournis. Il est possible de définir des hôtes qui ne recevront que des données, c'est-à-dire que les modifications sur ces hôtes ne seront pas reflétées sur les instances de données stockées sur d'autres systèmes. Plusieurs modes de Lors de la synchronisation, un fichier est logiquement divisé en blocs, qui constituent une partie indivisible lors du transfert de données entre les systèmes de l'utilisateur. Lors de la synchronisation sur un nouvel appareil, si des blocs identiques existent sur plusieurs appareils, la copie des blocs est effectuée depuis différents nœuds, de manière similaire au fonctionnement du système BitTorrent.
Plus il y a d'appareils participant à la synchronisation, plus la réplication de nouvelles données sera rapide grâce à la parallélisation. Lors de la synchronisation de fichiers modifiés, seuls les blocs de données modifiés sont transmis sur le réseau, et en cas de renommage ou de modification des droits d'accès, seules les métadonnées sont synchronisées.
Les canaux de transmission de données sont établis via TLS, tous les nœuds s'authentifient mutuellement par des certificats et des identifiants d'appareils, et l'intégrité est contrôlée par SHA-256. Pour identifier les nœuds de synchronisation au sein du réseau local, le protocole UPnP peut être utilisé, n'exigeant pas l'entrée manuelle des adresses IP des appareils synchronisés. Un interface web intégrée est prévue pour configurer le système et assurer le suivi,
un client CLI, Syncthing-GTK , qui fournit en outre des outils pour gérer les nœuds de synchronisation et les dépôts. Pour simplifier la recherche des nœuds Syncthing serveur de coordination pour la détection des nœuds, que l'on peut démarrer
image Docker prête à l'emploi.
Dans cette nouvelle version :
- nouveau protocole de transport basé sur (Quick UDP Internet Connections) avec des ajouts pour le contournement des traducteurs d'adresses (NAT). TCP reste recommandé comme protocole préféré pour établir des connexions ;
- Amélioration du traitement des erreurs fatales et ajout de pour envoyer automatiquement aux développeurs des rapports sur les problèmes. L'envoi de rapports est activé par défaut, une option spéciale dans les paramètres permet de le désactiver. Il est à noter que les données dans le rapport de crash n'incluent pas les noms de fichiers, les données du journal, les identifiants de dispositifs, les statistiques et autres données personnelles ;
- L'utilisation de petits et de blocs fixes (128 KiB) est déclarée obsolète, lors de l'indexation et du transfert de contenu de fichiers désormais uniquement des blocs de grande taille à taille variable ;
- L'interface assure l'affichage de la dernière erreur de connexion pour chacun des adresses spécifiées ;
- Dans la WebUI, la mise en page des colonnes des tableaux a été optimisée pour un affichage correct sur les écrans étroits ;
- Des changements ont été introduits, compromettant la compatibilité. Le nouveau lancement n'est pas compatible avec les hôtes basés sur Syncthing 0.14.45 et les versions antérieures.
Source : opennet.ru
