HNHacker News
TopNewBestAskShowJobs

weihan

105 karma · joined February 2, 2010

founder of AeroFS http://aerofs.com
submissionscomments
weihan··on AeroFS is now free up to 30 users
No longer :)
weihan··on AeroFS/S3: Private syncing to Amazon's Cloud made easy
I'm a cofounder at AeroFS. The main advantage of AeroFS is P2P file syncing without using servers. S3 support is a nice addition to the basic functionality, allowing users to use S3 as a "super" peer.
weihan··on AeroFS (YC S10): It’s Like Dropbox, But It Runs Inside Your Firewall
Co-founder of AeroFS here :-)

1. Symbolic link support is currently planned, I'd go to http://ae.ro/qc9Ey5 and upvote it. It'll allow us to notify you when it's done.

2. Bigger plans are in the works, stay tuned!

3. Headless support has been actually available for a while for most linux distributions, check out the "aerofs-cli" and "aerofs-sh" commands.

weihan··on AeroFS - File Sync Without Servers
Update: AeroFS now preserves modification times across devices :)
weihan··on AeroFS - Unlimited P2P File Sync
we're working on it right now :)
weihan··on AeroFS - Unlimited P2P File Sync
Just fixed. It's now https://www.aerofs.com/signup instead :)
weihan··on AeroFS - Unlimited P2P File Sync
To echo your update on the original question: while AeroFS is a distributed filesystem with quite complicated mechanisms underneath, we work very hard to make AeroFS dead simple to use. Following this philosophy, we've implemented the features that you mentioned but they're currently disabled/hidden for the sake of simplicity.

Regarding offline computers: if the only computers that host a file are offline, the file data will be unavailable. Currently, offline files are invisible in Finder/Explorer/etc. Because the current system only supports full replication, having offline files should be a rare case.

Regarding performance: it's crucial to us. Lots of efforts has been made (and even more to be made) to ensure the filesystem has comparable performance to local storage; sync performance is another area that we invest a lot of time in.

weihan··on AeroFS - Unlimited P2P File Sync
actually all of them are on our todo list--three of the four are already implemented but yet to be exposed to the user :)
weihan··on AeroFS - Unlimited P2P File Sync
thanks for pointing this out! we'll investigate this further and may increase the key length as necessary.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
Actually in theory AeroFS can run multiple instances on one device, and we are actually thinking it as the workaround :)
weihan··on Tell HN: AeroFS - File Syncing Without Servers
We have implemented full-fledge access control including file ownership, read/write permissions on data/metadata, list/add/remove permissions on directories, etc. But we disabled it from the interface to keep user experience as simple as possible.

Later on we may enable them based on use cases and user feedback. Our API will include ACL management as well. Currently files are read/write accessible once shared.

weihan··on Tell HN: AeroFS - File Syncing Without Servers
I see. There are two categories of conflicts to resolve: meta conflicts (like when you rename a file to "foo" on device A and meanwhile rename it to "bar" on B) and data conflicts (i.e. the example you gave).

We will formally describe meta conflict resolution in a separate post. Because resolution for data conflicts is very application specific, we will publish an API to allow application developers to write their own conflict resolvers. Meanwhile, we will try to provide resolvers for popular file types by default.

From the end user's view, in most cases conflicts are automatically resolved without being noticed. User intervention is required if automatic resolution fails or the user wants to manually merge.

weihan··on Tell HN: AeroFS - File Syncing Without Servers
In short, AeroFS is a decentralized data management system running on top of p2p overlay networking.

The overlay network layer presents to the data management layer a transport-agnostic view of the Internet, and addresses peers using network-independent identifiers. In this way, data management can talk to any peer regardless of network topologies and firewall restrictions, as if the world is flat :)

The data management layer controls data versioning and update propagation in a fully decentralized way. As I described in another comment, we use version-vector-like data structures to track versions and mange conflicts. We use modified epidemic algorithms (http://portal.acm.org/citation.cfm?id=41841) for fast update propagation. AeroFS distinguish between peers and super peers. Super peers can help update propagation and peer communication in many ways.

weihan··on Tell HN: AeroFS - File Syncing Without Servers
1) we ICE/STUN as well as relay for firewall penetration. 2) we use a modified version of version vectors (http://en.wikipedia.org/wiki/Version_vector) and accompanying algorithms to detect and resolve conflicts. In a decentralized system, conflict management boils down to managing causal relationship between distributed updates, and version vector was invented just for that :)
weihan··on Tell HN: AeroFS - File Syncing Without Servers
It uses p2p syncing: Any device that was invited and has sufficient privileges on a file can serve the file to peers.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
Exactly. In addition, because cloud servers to us are merely a "super peer", AeroFS offers a superset of what a cloud-based solution can provide.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
yeah rsync is the de-facto standard for delta sync I think :) Open API and/or open source part of AeroFS are in our plans.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
We developed a lot of the protocols and technologies ourselves, and could talk about them for hours :) Let me know if you have a specific area you want me to discuss.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
There are a few (Google "fuse windows"). In particular, Dokan (http://dokan-dev.net/en/) seems to be a good one. The project is quite active recently.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
We generate a temporary password for the user being invited and encode it in the invitation code sent to the user's email address. We use this temp pass to verify the user when he/she signs up and destroy the pass immediately after. During initial setup, the user's device generates its own public key pair and sends a CSR (certify signing request) to us for certification.
weihan··on Tell HN: AeroFS - File Syncing Without Servers
Yes. We use CBFS (http://www.eldos.com/cbfs/) for Windows.
weihan··on ZumoDrive rolls a hard six
Nice! I like your post Colin and will try to attend the conf and shoot the video for those who can't make it, if the conf doesn't make the video for you (hope there isn't copyright infringement though)