Capacity Allocation
Last updated
Last updated
In the Impossible Cloud Network (ICN), Builders can request and allocate storage capacity across the network, allowing them to access decentralised cloud services efficiently. The allocation of capacity is handled automatically by the ICN protocol, ensuring that the best-suited Hardware Providers (HPs) within a cluster are selected to meet the Builder’s needs.
This flowchart illustrates the capacity allocation process in the ICN. Builders submit a request for capacity, which the protocol automatically evaluates and assigns based on several criteria such as reservation price, commitment period, and availability. The assignment proceeds through hierarchical levels, starting with clusters and then individual ScalerNodes (HNs). The entire process is automated through smart contracts, ensuring efficient and reliable capacity allocation without manual intervention.
ScalerNodes within the Impossible Cloud Network are grouped based on a multi-layer hierarchical structure, providing efficiency and flexibility when assigning resources. These layers are structured to ensure that Builders receive the necessary resources, with assignment decisions being based on established rules within the smart contract.
Region: The broadest geographical classification, such as Europe West (EUW).
Cluster: Each zone is divided into clusters, which group together several hardware nodes (HNs). Clusters, such as FRA-1 or FRA-3, are responsible for handling capacity assignments.
Each hierarchical level serves a specific purpose in the ICN's infrastructure, enabling optimized allocation, pricing, and performance. From a protocol perspective, nodes within each cluster are treated as interchangeable. The protocol handles both reward/fee logic and assignment logic at the cluster level.
The ICN protocol assigns capacity from an HN that meets the requested criteria. The assignment is based on several factors:
Reservation Price: Each HP sets the reservation price for their ScalerNodes
Cluster-Level Pricing: If multiple HPs meet the criteria, the protocol compares their prices and assigns the booking to the HP with the most favourable price
Cluster-Level Assignment: Capacity is always assigned at the cluster level, meaning the protocol selects the best-suited ScalerNode within the same cluster.
At no point can a Builder select a specific HP or hardware node directly; all selections are made by the ICN protocol based on performance, pricing, and availability.
Capacity can always be secured for up to 6 months in advance with a minimum time duration of 3 months. However, each Builder can extend this period to secure capacity requests that are farther in the future if the HP is willing to take on the additional price risk.
As Builders provide ICNT for reserved capacity upfront, the access fee is fixed at the time of booking. This means that for longer request periods and times farther in the future, the price risk shifts increasingly towards the protocol and ultimately to the HP that fulfills the capacity request.
Builders can query the protocol to read available capacity and current prices for various clusters
Based on the query results, Builders can decide which capacity they want to book at the listed price.
Once the Builder has identified the desired capacity, they submit a booking transaction directly to the protocol. This transaction includes:
The selected capacity details (e.g., Cluster ID, desired size in PB).
The total ICNT cost based on the listed price of the capacity at the time of booking.
The protocol, via smart contract, will:
Validate that the specified capacity is still available.
Confirm that all transaction fields, including price, are correct.
If all criteria are met, the booking is confirmed, and the ScalerNode is allocated to the Builder.
The smart contract handles all resource allocation based on the specified booking. It will:
Assign the resources automatically based on the Builder’s selection.
Make any necessary decisions about resource assignment where multiple nodes within a cluster may fulfill the request.
Once assigned, the ScalerNode is reserved for the Builder, and the transaction is completed.
The entire process is automated by the smart contract, without the need for protocol-level checks or intermediate confirmations. After the transaction is accepted, the capacity is immediately booked, and no further steps are required from the Builder.