Roadmap

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.

JUL
2016

Optimizations

Integrate many low-level networking, overlay network, distributed hash table and file system optimizations for various scenarios.

JUN
2016

Windows native file system integration

Provide a native interface for Windows operating systems to mount Infinit file systems.

MAY
2016

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.

APR
2016

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.

MAR
2016

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.

FEB
2016

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.

JAN
2016

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.

DEC
2015

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.

NOV
2015

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.

OCT
2015

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.

SEPT
2015

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.

AUG
2015

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