Giter Site home page Giter Site logo

Comments (5)

oscartbeaumont avatar oscartbeaumont commented on July 19, 2024 1

I personally use Syncthing and their entire syncing and discovery protocol is very well designed & documented. We are definitely aware of them and might potentially integrate some of their protocols if it makes sense for our use case.

Our discovery system (https://docs.syncthing.net/specs/globaldisco-v3.html) is likely to work very similarly although it will most likely be incompatible due to our different product requirements.

from spacedrive.

oscartbeaumont avatar oscartbeaumont commented on July 19, 2024

My understanding of the current plan (feel free to correct me @jamiepine) is that the P2P system by default will only work over your local network.

For syncing over the internet the "easy-way" will be to pay for a Spacedrive account which will automatically, with zero configuration allow syncing over the internet to work through the use of a central Spacedrive server.

There will be the option to port forward a machine on your local network (or set up a dedicated Spacedrive server) if you would like to sync over the internet without paying for the service. The exact system for IP discovery that would be required by this feature is yet to be determined but I'm currently thinking about a system similar to the well-documented approach Syncthing take with a central discovery service.

In terms of security, it will be using public/private key for everything. We haven't built this out yet so I can say any specific details but I think we will use JWT in the auth layer and potentially some form of mutual TLS for the syncing layer.

from spacedrive.

jamiepine avatar jamiepine commented on July 19, 2024

I plan for p2p connections to be a priority, but fall back to proxied connections through a hosted network when remote, with e2e of course.

When accessing files remotely users should be able to use our network, others' networks or their own deployment.

The QR code is exactly the plan, or a numerical code.

I'm very glad you see potential in the project, happy to answer further questions.

from spacedrive.

TadiT7 avatar TadiT7 commented on July 19, 2024

I plan for p2p connections to be a priority, but fall back to proxied connections through a hosted network when remote, with e2e of course.

When accessing files remotely users should be able to use our network, others' networks or their own deployment.

Well, as long as the process of adding a new device out of local network would be as easy or easier than with Syncthing, I'll be totally happy. Some people just want to browse and transfer stuff between their devices without getting forced to use cloud storage. By now, there is and used to be a lot of implementations that aimed to tackle local file transfer efficiently, but they often failed by the assumption of being in local network that permits communication. WiFi Direct and so on. Ironically, transferring stuff over the internet became awfully easy, and bandwidth many people have access to contributes a lot to people going as far as to upload a file to random file hosting just to download it on another device, because it's convenient and always works. I think that such an always works solution deserves to exist as a multi platform program, solving the issue once and for all. When thinking of what could be done in total, I find this article (and the company) inspiring: https://tailscale.com/blog/how-nat-traversal-works/

from spacedrive.

CavalloneChen avatar CavalloneChen commented on July 19, 2024

@jamiepine Have you guys played with Syncthing (https://syncthing.net/)? It can handle distributed file sync between devices pretty decently, is there any chance spacedrive will integrate it in some way?

from spacedrive.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.