Novel tools and techniques for implementing distributed infrastructure are provided. In some techniques, a plurality of user devices, each at a customer premises, can provide video calling services over a network. In some embodiments, each of one or more user devices might be established as a distributed infrastructure element for cloud computing, cloud-based application hosting, and / or cloud-based data storage. One or more software applications, customer data, and / or media content (collectively, “hosted content”) might be provided to the one or more user devices for hosting thereon. Resource usage information and / or network connectivity information might be collected for each user device, and suitability of a user device to host the hosted content might be determined based at least in part on the collected resource usage information and / or network connectivity information. One or more courses of action may be determined, and invoked, based on performance metrics of the user devices.