ActivityPub (and OStatus before it) doesn’t have the concept of a server being “connected” to another server. Instead, users follow other users, and messages are sent from your server to all of your follower’s servers. We call this a follower-based network, and it’s very much an evolution of feed-based technology, like RSS readers with real-time notifications.
I don’t think anyone has succeeded in mapping this out completely, although there are some graph-based visualizations out there. The most up-to-date list of all ActivityPub enabled servers (that I know of) is https://fediverse.network/
Servers can be run by many different people. For example, I could run a server just for my friends, or a server for model airplane enthusiasts, or a server only for people from Portland (this one actually exists). Costs can be paid by the admin or split by the users using a crowdfunding system like Patreon or OpenCollective (many instances use Patreon).
Currently, if a server goes down, you lose your account, but we’re looking for ways to improve that. And of course Mastodon supports data export, so you can export a copy of your data at any time. You can also migrate servers by sending your followers a “Move” notification that automatically subscribes them to your new account, but right now that requires the original server you’re moving from to still be up.