Infinit alpha

Roadmap

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

In addition, do not hesitate to vote for the functionalities you would like to see integrated.


2018

Notifications

Provide a complete notification system in order for one to automatically react to changes in the underlying storage infrastructure: too many I/Os, a server failure, a new node joining etc.


Byzantine fault tolerance

Allow for the creation of untrustworthy networks (in which data is stored on silos that users may not trust) while ensuring reliability and security.


Heterogeneous storage contributions

Balance the data while taking into account that some silos have more capacity than others.


Storage reliability level

Allow the administrator to define the reliability of silos/providers. For instance, S3 already replicates data internally while a standalone server does not.


On-premise Hub

Allow the Hub to be deployed on premise to allow it to act as a gateway for mobility, to support both LDAP-based and standalone accounts (for external collaborators), to manage keys and more.


LDAP

Integrate with LDAP to retrieve the users, groups and permissions in an existing organization.


Openstack Swift interface

Provide an Openstack Swift object/block interface.


File locking

Allow applications to lock file system objects to prevent other user/applications to use them.


Erasure coding policy

Provide erasure coding as an alternative to bare replication to halve the storage capacity required to ensure data durability.


Compression policy

Allow compression to be activated to reduce storage consumption depending on the nature of the data to be stored.


Deduplication policy

Provide a policy to activate deduplication in order to reduce storage consumption when storing identical pieces of data.


Windows SMB interface

Provide an SMB integration server to easily integrate in existing production environments.


Versioning policy

Allow users to explore and roll-back to a previous version of a file.


iSCSI interface

Allow the underlying block device logic to be accessed through the iSCSI interface.


Data placement policy

Control the placement of the redundant pieces of data through data placement policies: rack-aware, region-aware etc.


Kubernetes integration

Provide an integration for Kubernetes to use Infinit as a resilient and scalable storage backend.


Snapshots

Provide the ability to snapshot an Infinit volume at a point in time in order to both clone an existing volume or ultimately restore such a snapshot to act as a backup. The process of snapshotting is crash-consistent, allowing one to backup a volume still in use by potentially delaying writings for the duration of the snapshot.


NFS gateway interface

Allow volumes to be mounted through the NFS protocol, via a specific gateway.


Residence policy

Allow for one to specify the type of storage (SSD, HD etc.) to use for specific data types e.g metadata.


Consistency policy

Provide a way to customize the consistency policy for the administrator to pick the one that best fits its use cases e.g strong, eventual etc.

Q4
2017

Encryption policy

Provide encryption policies that can be activated/deactivated and customized.


Block device logic

Provide a storage logic that allows for storing data through an elastic block device.


NBD interface

Provide an network block device interface for accessing a block device storage logic.

Q3
2017

Object storage logic

A logic to store blobs of unstructured data in the same way made popular by the Amazon S3 cloud service.


Amazon S3 interface

Provide an AWS S3-compatible interface for accessing the object storage logic.


infinit cluster

Provide a cluster mode to ease the process of setting up common infrastructure-like storage deployments.


Key-value store performance optimization

Optimize the underlying key-value store (ovelay network and distributed hash table).

Q2
2017

Key-value store API

Provide an gRPC-based API for accessing the underlying key-value store directly without instantiating a storage logic/interface.


Docker Swarm Service

Offer an easy way for Infinit's key-value store to be deployed in a Docker Swarm through a service.


Elasticity

Improve the key-value store's stability, in particular its resilience and scalability.


Prometheus integration

Integrate with Prometheus in order to simplify accessibility to monitoring information.

Feb
2017

Block size policy

Allow for the block size to be customize at the storage logic level e.g file system.

Dec
2016

Monitoring

Provide a binary and API to retrieve information from an Infinit storage platform: number of nodes, health, I/Os etc.


Alpine Linux Build

Provide a build for the Alpine Linux distribution.

Nov
2016

Kouncil overlay network

The Kouncil overlay network offers better performance for medium-sized networks.

Sep
2016

Windows Dokan interface

0.7.0 release » read more

Provide a native interface for Windows operating systems to mount Infinit file systems through the Dokan (FUSE-like) kernel module.


Koordinate overlay network

Offer the possibility to run multiple overlay networks in parallel to ease debugging when introducing a new type of overlay network.

Jul
2016

Performance optimizations

0.7.0 release

Integrate low-level networking and overlay network optimizations.


Docker volume plugin

0.6.2 release » read more

Allow Infinit volumes to be accessed directly from within Docker containers through the Docker volume plugin API and the new infinit-daemon binary.

May
2016

IPv6

0.7.0 release

Add support for IPv6-based network interfaces.


infinit-doctor

0.6.1 release » read more

Provide a binary to allow one to easily check the health of its local configuration, network capability and more.

Apr
2016

Scale out/in

0.6.0 release

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

0.6.0 release

Allow to attach additional/detach silos and/or increase/decrease the storage capacity contributions from a device to an existing network, without incurring any interruption of service.


infinit-journal

0.5.5 release » read more

Provide a binary to consult the state of the asynchronous cache, also known as journal.

Mar
2016

Dynamic rebalancing

0.6.0 release

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 silo

0.5.2 release » read more

Allow Google Cloud Storage to be used as a block silo.


Amazon S3 silo

0.3.5 release » read more

Allow Amazon S3 to be used as a block silo.

Jan
2016

Storage contribution limit

0.3.0 release » read more

Allow one to specify the storage capacity to allocate when creating a storage.


Group-based access control

0.4.0 release » read more

Allow users to organize themselves into groups and control access to files/directories to those groups.


Fine-grained passports

0.3.0 release

Allow the administrator to issue passport for a user to act either as a client and/or server (preventing a user from attaching additional silos) but also to control whether a user can put and/or get blocks in the network.


Storage load network-wide balancing

0.3.0 release

Support distributing the blocks across several storage nodes that contribute storage capacity through one or more silos.

Dec
2015

NAT traversal

0.3.0 release

Improve the probability of connection by relying on NAT traversal if directly connection and uPnP failed.


UPnP

0.3.0 release

Offer nodes to configure, if available, their router to open a port to connect to other nodes in peer-to-peer.


Fault tolerance

0.3.0 release

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

0.3.0 release

Provide users ways to transfer their user identities to another device.

Nov
2015

Paxos consensus

0.3.0 release

Introduce Paxos to reach consensus among the storage nodes responsible for the replicas of a specific piece of data.


Replication policy

0.3.0 release

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 policy

0.3.0 release

Introduce a caching mechanism to speed up operations.


Asynchronous policy

0.3.0 release

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

0.3.0 release

Support for high-throughput data transmission through UDP-based network protocols.


Import SSH RSA key

0.3.0 release » read more

Allow users to import their existing SSH RSA key to work with Infinit.


Cloud storage services management

0.3.0 release » read more

Offer an easy way to manage credentials to cloud storage services by relying on the Infinit Hub.


Hub

0.3.0 release » read more

Introduce the Hub to ease the process of connecting cloud storage services, share networks/volumes/etc. with friends etc.


Passports

0.3.0 release

Allow the network administrator to authorize other users to connect and possibly contribute additional storage capacity.


Access control list

0.3.0 release

Allow users to control the permissions on their file system objects: files, directories etc.

Sept
2015

Kelips overlay network

0.3.0 release

Introduce the Kelips gossip-based overlay network.


macOS FUSE interface

0.3.0 release

Support for a native integration through the FUSE kernel module on macOS.

Aug
2015

Command-line tools

0.3.0 release

Provide basic command-line tools to create users, storages, networks and volumes.


Linux FUSE interface

0.3.0 release

Support for a native integration through the FUSE Linux kernel module.


Multiple silos per server

0.3.0 release

Allow nodes to attach several storage nodes and distribute blocks among those storages.


Block encryption

0.3.0 release

Encrypt the data blocks, in transit and at rest, with a key unique to the block.


File system logic

0.3.0 release

Represent files into a collection of mutable/immutable blocks and hierarchical organization.


Local silo

0.3.0 release

Allow a local file system to act as a silo by storing blocks of encrypted data as local files.