[ca] El recent desenvolupament d'aplicacions IoT ha comportat l'aparició del paradigma de fog computing. Dins d'aquest paradigma, els nodes de càlcul presents a la vora de la xarxa poden actuar com a "fog nodes'' (FN) capaços de processar les tasques dels usuaris, produint així reduccions de latència en comparació amb el model d'execució basat en núvol. Per assolir tot el potencial del fog computing, han sorgit noves qüestions de recerca, principalment a causa del context dinàmic i heterogeni de fog computing. Aquesta tesi se centra especialment en les qüestions següents: Com pot un usuari detectar la presència d'un FN? Com hauria d'adaptar un usuari en moviment la seva estratègia de descobriment de FN, segons el seu context? Com s'ha de seleccionar un FN, en el cas de la mobilitat dels usuaris i la mobilitat FN? Aquestes preguntes s'abordaran al llarg de les diferents aportacions d'aquesta tesi. La primera contribució consisteix a proposar una solució de descobriment que permeti a l'usuari detectar l'existència d'un FN proper. Mitjançant la nostra solució, un FN anuncia la seva presència mitjançant beacons Wi-Fi personalitzats, que seran detectats per l'usuari mitjançant un procés d'exploració. S'ha desenvolupat una implementació d'aquest enfocament i els seus resultats d'avaluació han demostrat que resulta en un consum d'energia menyspreable donat el seu ús del Wi-Fi. Això ha suposat la nostra segona contribució, que té com a objectiu millorar l'exploració Wi-Fi, especialment en el cas de la mobilitat dels usuaris. En una primera fase, aquesta millora va consistir a incorporar informació sobre la topologia dels FN en les beacons que rep l'usuari dels FN anteriors. Hem demostrat que mitjançant l'adaptació del comportament d'escaneig basat en aquesta informació es pot aconseguir un estalvi considerable d'energia, alhora que es garanteix un índex elevat de descobriment. Tanmateix, com aquest enfocament s'associa a una estructura de topologia FN restrictiva, vam proposar una alternativa diferent, en una segona etapa. Aquesta alternativa aprofita la història de la informació del context cel·lular com a indicador que permet a l'usuari deduir si un FN pot estar present en la seva ubicació. En cas afirmatiu, l'exploració estarà habilitada. Els resultats de la simulació comparant diferents algoritmes de classificació han demostrat que un model basat en seqüències, com un model HMM, és capaç de predir eficaçment la presència de FNs a la ubicació actual de l'usuari. Si bé els enfocaments anteriors s'han centrat en un desplegament escàs de FNs, la nostra tercera contribució considera una alta densitat d'FNs. En conseqüència, com que hi ha múltiples FNs propers que poden processar les tasques de l'usuari, és important derivar una estratègia de selecció de FN adequada. Aquesta estratègia hauria de tenir en compte el conjunt variable de temps causat per la mobilitat de l'usuari. A més, hauria de minimitzar el nombre de canvis d'un FN a un altre, per mantenir una bona qualitat del servei. Tenint en compte aquestes consideracions, hem demostrat que un enfocament codiciós adaptatiu, que selecciona un FN amb una estimació de retard suficient, aconsegueix els millors resultats. Finalment, a diferència de l'aportació anterior, on l'atenció s'ha fixat en la selecció d'FN quan l'usuari és mòbil, la nostra contribució final tracta sobre les FNs per a vehicles mòbils (VFNs). Tenint en compte la mobilitat d'aquests VFNs, és important aprofitar al màxim els seus recursos, ja que només estan disponibles per a un temps curt. Així doncs, proposem que, per seleccionar un VFN adequat per a una tasca, una unitat RSU responsable de l'assignació de tasques pot utilitzar consells d'un RSU veí. Aquest consell consisteix en escollir el VFN que suposarà el menor retard de la tasca actual, en funció de l'experiència del RSU veí. Els resultats han demostrat que ...

[en] The recent development of delay-sensitive applications has led to the emergence of the fog computing paradigm. Within this paradigm, computation nodes present at the edge of the network can act as fog nodes (FNs) capable of processing users' tasks, thus resulting in latency reductions compared to the existing cloud-based execution model. In order to realize the full potential of fog computing, new research questions have arised, mainly due to the dynamic and heterogeneous fog computing context. This thesis focuses on the following questions in particular: How can a user detect the presence of a nearby FN? How should a user on the move adapt its FN discovery strategy, according to its changing context? How should an FN be selected , in the case of user mobility and FN mobility? These questions will be addressed throughout the different contributions of this thesis. The first contribution consists in proposing a discovery solution allowing a user to become aware of the existence of a nearby FN. Using our solution, the FN advertizes its presence using custom WiFi beacons, which will be detected by the user via a scan process. An implementation of this approach has been developed and its evaluation results have shown that it results in a non-negligible energy consumption given its use of WiFi. This has led to our second contribution, which aims at improving the WiFi scan performed in our discovery approach, especially in the case of user mobility. At a first stage, this improvement consisted in embedding information about the topology of the FNs in the beacons the user receives from previous FNs. We have shown that by adapting the scan behavior based on this information, considerable energy savings can be achieved, while guaranteeing a high discovery rate. However, as this approach is associated with a restrictive FN topology structure, we proposed a different alternative, at a second stage. This alternative leverages the history of cellular context information as an indicator allowing the user to infer whether an FN may be present in its current location. If so, the scan will be enabled. Otherwise, it is disabled. The simulation results comparing different classification algorithms have shown that a sequence-based model, such as a hidden-Markov model is able to effectively predict the FN presence in the current user location. While the previous approaches have focused on a sparse FN deployment, our third contribution considers a high density of FNs. Consequently, as there are multiple nearby FNs that can process the user's tasks, it is important to derive a suitable FN selection strategy. This strategy should consider the time-varying set of FNs caused by the user's mobility. Besides, it should minimize the number of switches from one FN to another, in order to maintain a good quality of service. With these considerations in mind, we have shown that an adaptive greedy approach, that selects an FN having a good-enough delay estimate, achieves the best results. Finally, unlike the previous contribution, where the focus has been on FN selection when the user is mobile, our final contribution deals with mobile vehicular FNs (VFNs). Given the mobility of such VFNs, it is important to make the most of their resources, since they are only available for a short time at a given area. So, we propose that, in order to select an appropriate VFN for a given task, a reference roadside unit (RSU) responsible for task assignment can use advice from a neighbor RSU. This advice consists in the VFN that will result in the lowest delay for the current task, based on the experience of the neighbor RSU. The results have shown that, using the provided advice, the reference RSU can observe significant delay reductions. All in all, the proposed contributions have addressed various problems that may arise in a fog computing context and the obtained results can be used to guide the development of the building blocks of future fog computing solutions.