To understand the Internet Computer, you have to understand the concept of subnets, which are the fundamental building block of the overall network.
The purpose of a subnet is to host canisters. Canisters run within dedicated hypervisors and interact with each other via a publicly specified API. Inside a canister is WebAssembly bytecode that can run on a WebAssembly virtual machine and the pages of memory that it runs within.
When canisters are uploaded to the Internet Computer, they have to target a specific subnet type, such as ‘data’, ‘system’, or ‘fiduciary’.
As the Canistore model includes governance canisters, it must be hosted on a fiduciary subnet, in order to hold balances of ICP tokens and send cycles to other canisters.