Follow our development and see which features are coming next for the Infinit File System. You can also signup to our newsletter to get notified when we release our new features.

Byzantine fault tolerance Allow for the creation of untrustworthy networks (in which data is stored on storage resources that users may not trust) while ensuring reliability and security. Heterogeneous storage contributions Balance the data while taking into account that some storage resources have more capacity than others. Locking Allow applications to lock file system objects to prevent other user/applications to use them. Backblaze B2 storage resource Allow Backblaze B2 service to be used as a block storage resource. Windows SMB/NFS integrations Provide an NFS/SMB integration server to easily integrate in existing production environments. Storage reliability level Allow the administrator to define the reliability of storage resources/providers. For instance, S3 already replicates data internally while a standalone server does not. Erasure coding Provide erasure coding as an alternative to bare replication to halve the storage capacity required to ensure data durability. Dropbox storage resource Allow Dropbox to be used as a block storage resource. Google Drive storage resource Allow Google Drive to be used as a block storage resource. Versioning Allow users to explore and roll-back to a previous version of a file. Optimizations Integrate many low-level networking, overlay network, distributed hash table and file system optimizations for various scenarios. Windows native file system integration Provide a native interface for Windows operating systems to mount Infinit file systems. On-Premise Hub Integrate many low-level networking, overlay network, distributed hash table and file system optimizations for various scenarios. LDAP Integrate with LDAP to retrieve the users, groups and permissions in an existing organization. Scale out/in Allow to add/remove storage servers, manually or following a fault: the system adapts by possibly creating new replicas in order to maintain the redundancy policy e.g replication factor. Scale up/down Allow to attach additional/detach storage resources and/or increase/decrease the storage capacity contributions from a device to an existing network, without incurring any interruption of service. Dynamic rebalancing Dynamically rebalancing some blocks to another nodes following the fault of a storage node in order to maintain the replication factor defined by the network administrator. Google Cloud Storage storage resource Allow Google Cloud Storage to be used as a block storage resource. AWS S3 storage resource Allow AWS S3 to be used as a block storage resource. Storage contribution limit Allow one to specify the storage capacity to allocate when creating a storage. Group-based access control Allow users to organize themselves into groups and control access to files/directories to those groups. Fine-grained passports Allow the administrator to issue passport for a user to act either as a client and/or server (preventing a user from attaching additional storage resources) but also to control whether a user can put and/or get blocks in the network. Storage load network-wide balancing Support distributing the blocks across several storage nodes that contribute storage capacity through one or more storage resources. NAT traversal Improve the probability of connection by relying on NAT traversal if directly connection and uPnP failed. UPnP Offer nodes to configure, if available, their router to open a port to connect to other nodes in peer-to-peer. Fault tolerance Detect failures (crash, disconnection etc.) and rely on the other replicas for the service to operate as usual without the users noticing something went wrong. Multi-device user Provide users ways to transfer their user identities to another device. Paxos consensus Introduce Paxos to reach consensus among the storage nodes responsible for the replicas of a specific piece of data. Replication Define the replication factor for every block of every file system object (file, directory etc.) to be stored multiple times to ensure the durability and availability of the data. Caching Introduce a caching mechanism to speed up operations. Asynchronous operations Support operations being performed asynchronously meaning that system calls return once the operation is committed in the journal with the data modifications being later published throughout the storage network. uTP Support for high-throughput data transmission through UDP-based network protocols. Import SSH RSA key Allow users to import their existing SSH RSA key to work with Infinit. Cloud storage services management Offer an easy way to manage credentials to cloud storage services, possibly by relying on the Infinit Hub. Hub Introduce the Hub to ease the process of connecting cloud storage services, share networks/volumes/etc. with friends etc. Passport Allow the network administrator to authorize other users to connect and possibly contribute additional storage capacity. Access control list Allow users to control the permissions on their file system objects: files, directories etc. Kelips overlay network Introduce the Kelips gossip-based overlay network. OS X native file system integration Support for a native integration through the FUSE kernel module on OS X. Command-line tools Provide basic command-line tools to create users, storages, networks and volumes. Linux native file system integration Support for a native integration through the FUSE Linux kernel module. Multiple storage resources per server Allow nodes to attach several storage nodes and distribute blocks among those storages. Block encryption Encrypt the data blocks with a key unique to the block. File system logic Represent files into a collection of mutable and immutable blocks. Local storage resource Allow a local file system to act as a storage resource by storing blocks of encrypted data as local