Community networks (CNs) have gained momentum in the last few years in response to the growing demand for network connectivity in rural and urban areas. These networks, owned and managed by volunteers, offer various services to their members. While Internet access is the most popular service offered to their members, the provision of services of local interest within the network is enabled by the emerging technology of CN micro-clouds. By putting services closer to users, CN micro-clouds pursue not only an improved service performance, but also a low entry barrier for the deployment of alternatives to mainstream Internet services within the CN. Unfortunately, the provisioning of the services is not so simple. Due to the large and irregular topology, high software and hardware diversity and different service requirements in CNs, a "careful" placement of micro-cloud services over the network is required. First, in order to understand the micro-cloud service requirements for a successful operation in CNs, we perform deployment, feasibility analysis and in-depth performance assessment of popular CN micro-cloud services such as distributed storage, live video-streaming and service discovery. We characterize and define workload upper bounds for successful operations of such services and perform cross-layer analysis and optimizations to improve the service performance. This deployment experience supports the feasibility of CN micro-clouds and our measurements contribute to understand the performance of services and applications in this challenging environment. Then, in order to improve the performance of the services on the network level over which a service host provides a service to client nodes, it is necessary to adapt the logical network topology to both external (e.g., wireless connectivity, node availability) and internal (e.g., service copies, service demand) factors. To achieve this, we propose to leverage state information about the network to inform service placement decisions, and to do so through an i) exploratory algorithm PASP (Policy-aware Service Placement) that minimizes the service overlay diameter, while fulfilling service specific criteria and ii) through a fast and low-complexity service placement heuristic BASP (Bandwidth and Availability-aware Service Placement), which maximizes bandwidth between nodes and improves user QoS. Our results show that PASP and BASP consistently outperform the existing in-place strategies in the Guifi.net CN, with respect to bandwidth, availability and latency when used with real CN micro-cloud services. Since this improvement translates in the QoE (Quality of Experience) perceived by the user, our results are relevant for contributing to higher QoE, a crucial parameter for using services from volunteer-based systems., Las redes comunitarias (Community Networks - CNs) han cobrado impulso en los últimos años en respuesta a la creciente demanda de conectividad de red en zonas rurales y urbanas. Estas redes, desplegadas y gestionadas por voluntarios, ofrecen diversos servicios a sus miembros. Si bien el acceso a Internet es el servicio más popular ofrecido a sus participantes, la provisión de servicios de interés local dentro de la red está siendo possible gracias a la tecnología emergente de micro-clouds en CNs. Al acercar los servicios a los usuarios, los micro-clouds persiguen no sólo una mejor experiencia de uso del servicio, sino también bajar la barrera de entrada para el despliegue de alternativas a los servicios de Internet convencionales dentro de la CN. Lamentablemente, la provisión de servicios no es tan simple. Debido a una topología grande e irregular, a la alta diversidad de software y hardware y a los diferentes requisitos de servicio en las CNs, es necesaria una colocación ”cuidadosa” de los servicios de micro-cloud a través de la red. Primero, para comprender los requisitos del micro-cloud para su operación exitosa en CNs, se realiza el despliegue, el análisis de factibilidad y la evaluación en profundidad del rendimiento de servicios populares de micro-cloud tales como almacenamiento distribuido, retransmisión de vídeo y descubrimiento de servicios. Se caracterizan y definen los límites superiores de la carga de trabajo para una operación exitosa de tales servicios y se realizan análisis y optimizaciones entre capas para mejorar el rendimiento del servicio. Esta experiencia de implementación apoya la factibilidad de los micro-clouds comunitarios, y las mediciones mediciones obtenidas contribuyen a comprender el rendimiento de los servicios y aplicaciones en este desafiante entorno. A continuación, con el fin de mejorar el rendimiento de los servicios a nivel de red sobre la que un servidor de servicios proporciona un recurso a los nodos cliente es necesario adaptar la topología de red lógica tanto a factores externos (por ejemplo, conectividad inalámbrica, disponibilidad de nodo) como internos (por ejemplo, copias de servicio, demanda de servicios). Para lograr esto, se propone aprovechar la información de estado de la red para informar de las decisiones de colocación de servicios, y hacerlo a través de un i) algoritmo exploratorio PASP (Policy-aware Service Placement) que minimiza el diámetro del overlay de servicio, cumpliendo Y ii) a través de una heurística de colocación de servicios rápida y de baja complejidad BASP (Bandwidth and Availability-aware Service Placement) que maximiza el ancho de banda entre nodos y mejora la QoS del usuario. Los resultados obtenidos muestran que PASP y BASP consistentemente superan las estrategias existentes en la CN Guifi.net, respecto al ancho de banda, disponibilidad y latencia cuando se usan con servicios de micro-cloud. Dado que esta mejora se traduce en la QoE (calidad de experiencia) percibida por el usuario, los resultados hallados son relevantes para contribuir a una mejor QoE, un parámetro crucial para el uso de servicios de sistemas basados en voluntarios., As redes comunitárias (Community Networks - CNs) têm ganho popularidade nos últimos anos em resposta à crescente procura por conectividade de rede em áreas rurais e urbanas. Estas redes, propriedade de e geridas por voluntários, oferecem diversos serviços aos seus membros. Apesar do acesso à Internet ser o serviço mais popular, a provisão de serviços de interesse local dentro da própria rede é habilitada pela tecnologia emergente de micro-clouds em CNs. Ao colocar os serviços mais perto dos seus utilizadores, as micro-clouds não procuram apenas melhorar o desempenho dos serviços, mas também uma redução da barreira no que toca à implantação de outros serviços convencionais de Internet dentro da CN. Infelizmente, o provisionamento de serviços não é simples. Devido à grande e irregular topologia, à grande diversidade tanto de software como de hardware, bem como à diversidade de requisitos em CNs, é necessária uma colocação ”cuidada” de serviços em micro-clouds na rede. Primeiro, de forma a compreender os requisitos dos serviços em micro-clouds para que funcionem corretamente em CNs, analisamos a viabilidade, implementamos e avaliamos o desempenho de alguns serviços populares em micro-clouds tais como armazenamento distribuído, streaming de vídeo em direto, e serviços de descoberta de recursos e de outros serviços. Caracterizamos e definimos limites de carga para que as operações de tais serviços seja bem sucedida, e analisamos e optimizamos em várias camadas de forma a melhorar o desempenho do serviço. Esta experiência de implementação suporta a viabilidade das micro-clouds comunitárias, e as nossas experiências contribuem para o discernimento do desempenho de serviços e aplicações neste ambiente desafiante. Depois, de forma a melhorar o desempenho dos serviços ao nível da rede sobre o qual um fornecedor disponibiliza um serviço a clientes, é necessário adaptar a topologia lógica da rede a factores tanto externos (e.g. conectividade sem fios, disponibilidade de nós) como internos (e.g. réplicas de serviço, procura). Para isso, propomos basear as decisões de colocação de serviços em informação sobre o estado da rede, e fazê-lo através de i) um algorítmo exploratório PASP (Policy-aware Service Placement) que minimiza o diâmetro do overlay do serviço, cumprindo critérios específicos do serviço e ii) uma heurística de colocação de serviços rápida e de reduzida complexidade BASP (Bandwidth and Availability-aware Service Placement), a qual maximiza a largura de banda entre os nós e melhora a qualidade de serviço (QoS) dos utilizadores. Os nossos resultados mostram que o PASP e a BASP superam consistentemente as estratégias já em uso na rede comunitária Guifi.net, em relação à largura de banda, disponibilidade e latência quando usadas com serviços micro-cloud reais. Como esta melhoria traduz-se numa melhoria da qualidade de experiência (QoE) para o utilizador, os nossos resultados são relevantes para contribuir para uma melhoria da QoE, um parâmetro crucial para utilizar serviços baseados em recursos fornecidos por voluntários