17 research outputs found

    Contributions à la réplication de données dans les systèmes distribués à grande échelle

    Get PDF
    Data replication is a key mechanism for building a reliable and efficient data management system. Indeed, by keeping several replicas for each piece of data, it is possible to improve durability. Furthermore, well-placed copies reduce data accesstime. However, having multiple copies for a single piece of data creates consistency problems when the data is updated. Over the last years, I made contributions related to these three aspects: data durability, data access performance and data consistency. RelaxDHT and SPLAD enhance data durability by placing data copies smartly. Caju, AREN and POPS reduce access time by improving data locality and by taking popularity into account. To enhance data lookup performance, DONUT creates efficient shortcuts taking data distribution into account. Finally, in the replicated database context, Gargamel parallelizes independent transactions only, improving database performance and avoiding aborting transactions. My research has been carried out in collaboration with height PhD students, four of which have defended. In my future work, I plan to extend these contributions by (i) designing a storage system tailored for MMOGs, which are very demanding, and (ii) designing a data management system that is able to re-distribute data automatically in order to scale the number of servers up and down according to the changing workload, leading to a greener data management.La réplication de données est une technique clé pour permettre aux systèmes de gestion de données distribués à grande échelle d'offrir un stockage fiable et performant. Comme il gère un nombre suffisant de copies de chaque donnée, le système peut améliorer la pérennité. De plus, la présence de copies bien placées réduit les temps d'accès. Cependant, cette même existence de plusieurs copies pose des problèmes de cohérence en cas de modification. Ces dernières années, mes contributions ont porté sur ces trois aspects liés à la réplication de données: la pérennité des données, la performance desaccès et la gestion de la cohérence. RelaxDHT et SPLAD permettent d'améliorer la pérennité des données en jouant sur le placement des copies. Caju, AREN et POPS permettent de réduire les temps d'accès aux données en améliorant la localité et en prenant en compte la popularité. Pour accélérer la localisation des copies, DONUT crée des raccourcis efficaces prenant en compte la distribution des données. Enfin, dans le contexte des bases de données répliquées,Gargamel permet de ne paralléliser que les transactions qui sont indépendantes, améliorant ainsi les performances et évitant tout abandon de transaction pour cause de conflit. Ces travaux ont été réalisés avec huit étudiants en thèse dont quatre ont soutenu. Pour l'avenir, je me propose d'étendre ces travaux, d'une part en concevant un système de gestion de données pour les MMOGs, une classe d'application particulièrement exigeante; et, d'autre part, en concevant des mécanismes de gestion de données permettant de n'utiliser que la quantité strictement nécessaire de ressources, en redistribuant dynamiquement les données en fonction des besoins, un pas vers une gestion plus écologique des données

    Développement de méthodes d'intégration de données biologiques à l'aide d'Elasticsearch

    Get PDF
    En biologie, les données apparaissent à toutes les étapes des projets, de la préparation des études à la publication des résultats. Toutefois, de nombreux aspects limitent leur utilisation. Le volume, la vitesse de production ainsi que la variété des données produites ont fait entrer la biologie dans une ère dominée par le phénomène des données massives. Depuis 1980 et afin d'organiser les données générées, la communauté scientifique a produit de nombreux dépôts de données. Ces dépôts peuvent contenir des données de divers éléments biologiques par exemple les gènes, les transcrits, les protéines et les métabolites, mais aussi d'autres concepts comme les toxines, le vocabulaire biologique et les publications scientifiques. Stocker l'ensemble de ces données nécessite des infrastructures matérielles et logicielles robustes et pérennes. À ce jour, de par la diversité biologique et les architectures informatiques présentes, il n'existe encore aucun dépôt centralisé contenant toutes les bases de données publiques en biologie. Les nombreux dépôts existants sont dispersés et généralement autogérés par des équipes de recherche les ayant publiées. Avec l'évolution rapide des technologies de l'information, les interfaces de partage de données ont, elles aussi, évolué, passant de protocoles de transfert de fichiers à des interfaces de requêtes de données. En conséquence, l'accès à l'ensemble des données dispersées sur les nombreux dépôts est disparate. Cette diversité d'accès nécessite l'appui d'outils d'automatisation pour la récupération de données. Lorsque plusieurs sources de données sont requises dans une étude, le cheminement des données suit différentes étapes. La première est l'intégration de données, notamment en combinant de multiples sources de données sous une interface d'accès unifiée. Viennent ensuite des exploitations diverses comme l'exploration au travers de scripts ou de visualisations, les transformations et les analyses. La littérature a montré de nombreuses initiatives de systèmes informatiques de partage et d'uniformisation de données. Toutefois, la complexité induite par ces multiples systèmes continue de contraindre la diffusion des données biologiques. En effet, la production toujours plus forte de données, leur gestion et les multiples aspects techniques font obstacle aux chercheurs qui veulent exploiter ces données et les mettre à disposition. L'hypothèse testée pour cette thèse est que l'exploitation large des données pouvait être actualisée avec des outils et méthodes récents, notamment un outil nommé Elasticsearch. Cet outil devait permettre de combler les besoins déjà identifiés dans la littérature, mais également devait permettre d'ajouter des considérations plus récentes comme le partage facilité des données. La construction d'une architecture basée sur cet outil de gestion de données permet de les partager selon des standards d'interopérabilité. La diffusion des données selon ces standards peut être autant appliquée à des opérations de fouille de données biologiques que pour de la transformation et de l'analyse de données. Les résultats présentés dans le cadre de ma thèse se basent sur des outils pouvant être utilisés par l'ensemble des chercheurs, en biologie mais aussi dans d'autres domaines. Il restera cependant à les appliquer et à les tester dans les divers autres domaines afin d'en identifier précisément les limites.In biology, data appear at all stages of projects, from study preparation to publication of results. However, many aspects limit their use. The volume, the speed of production and the variety of data produced have brought biology into an era dominated by the phenomenon of "Big Data" (or massive data). Since 1980 and in order to organize the generated data, the scientific community has produced numerous data repositories. These repositories can contain data of various biological elements such as genes, transcripts, proteins and metabolites, but also other concepts such as toxins, biological vocabulary and scientific publications. Storing all of this data requires robust and durable hardware and software infrastructures. To date, due to the diversity of biology and computer architectures present, there is no centralized repository containing all the public databases in biology. Many existing repositories are scattered and generally self-managed by research teams that have published them. With the rapid evolution of information technology, data sharing interfaces have also evolved from file transfer protocols to data query interfaces. As a result, access to data set dispersed across the many repositories is disparate. This diversity of access requires the support of automation tools for data retrieval. When multiple data sources are required in a study, the data flow follows several steps, first of which is data integration, combining multiple data sources under a unified access interface. It is followed by various exploitations such as exploration through scripts or visualizations, transformations and analyses. The literature has shown numerous initiatives of computerized systems for sharing and standardizing data. However, the complexity induced by these multiple systems continues to constrain the dissemination of biological data. Indeed, the ever-increasing production of data, its management and multiple technical aspects hinder researchers who want to exploit these data and make them available. The hypothesis tested for this thesis is that the wide exploitation of data can be updated with recent tools and methods, in particular a tool named Elasticsearch. This tool should fill the needs already identified in the literature, but also should allow adding more recent considerations, such as easy data sharing. The construction of an architecture based on this data management tool allows sharing data according to interoperability standards. Data dissemination according to these standards can be applied to biological data mining operations as well as to data transformation and analysis. The results presented in my thesis are based on tools that can be used by all researchers, in biology but also in other fields. However, applying and testing them in various other fields remains to be studied in order to identify more precisely their limits

    Kevoree (Model@Runtime pour le développement continu de systèmes adaptatifs distribués hétérogènes)

    Get PDF
    La complexité croissante des systèmes d'information modernes a motivé l'apparition de nouveaux paradigmes (objets, composants, services, etc), permettant de mieux appréhender et maîtriser la masse critique de leurs fonctionnalités. Ces systèmes sont construits de façon modulaire et adaptable afin de minimiser les temps d'arrêts dus aux évolutions ou à la maintenance de ceux-ci. Afin de garantir des propriétés non fonctionnelles (par ex. maintien du temps de réponse malgré un nombre croissant de requêtes), ces systèmes sont également amenés à être distribués sur différentes ressources de calcul (grilles). Outre l'apport en puissance de calcul, la distribution peut également intervenir pour distribuer une tâche sur des nœuds aux propriétés spécifiques. C'est le cas dans le cas des terminaux mobiles proches des utilisateurs ou encore des objets et capteurs connectés proches physiquement du contexte de mesure. L'adaptation d'un système et de ses ressources nécessite cependant une connaissance de son état courant afin d'adapter son architecture et sa topologie aux nouveaux besoins. Un nouvel état doit ensuite être propagé à l'ensemble des nœuds de calcul. Le maintien de la cohérence et le partage de cet état est rendu particulièrement difficile à cause des connexions sporadiques inhérentes à la distribution, pouvant amener des sous-systèmes à diverger. En réponse à ces défi scientifiques, cette thèse propose une abstraction de conception et de déploiement pour systèmes distribués dynamiquement adaptables, grâce au principe du Model@Runtime. Cette approche propose la construction d'une couche de réflexion distribuée qui permet la manipulation abstraite de systèmes répartis sur des nœuds hétérogènes. En outre, cette contribution introduit dans la modélisation des systèmes adaptables la notion de cohérence variable, permettant ainsi de capturer la divergence des nœuds de calcul dans leur propre conception. Cette couche de réflexion, désormais cohérente "à terme", permet d'envisager la construction de systèmes adaptatifs hétérogènes, regroupant des nœuds mobiles et embarqués dont la connectivité peut être intermittente. Cette contribution a été concrétisée par un projet nommé ''Kevoree'' dont la validation démontre l'applicabilité de l'approche proposée pour des cas d'usages aussi hétérogènes qu'un réseau de capteurs ou une flotte de terminaux mobiles.The growing complexity of modern IT systems has motivated the development of new paradigms (objects, components, services,...) to better cope with the critical size of their functionalities. Such systems are then built as a modular and dynamically adaptable compositions, allowing them to minimise their down-times while performing evolutions or fixes. In order to ensure non-functional properties (i.e. request latency) such systems are distributed across different computation nodes. Besides the added value in term of computational power (cloud), this distribution can also target nodes with dedicated properties such as mobile nodes and sensors (internet of things), physically close to users for interactions. Adapting a system requires knowledge about its current state in order to adapt its architecture to its evolving needs. A new state must be then disseminated to other nodes to synchronise them. Maintaining its consistency and sharing this state is a difficult task especially in case of sporadic connexions which lead to divergent state between sub-systems. To tackle these scientific problems, this thesis proposes an abstraction to design and deploy distributed adaptive systems following the Model@Runtime paradigm. From this abstraction, the proposed approach allows defining a distributed reflexive layer to manipulate heterogeneous distributed nodes. In particular, this contribution introduces variable consistencies in model definition and divergence in system conception. This reflexive layer, eventually consistent allows the construction of distributed adapted systems even on mobile nodes with intermittent connectivity. This work has been realized in an open source project named Kevoree, and validated on various distributed systems ranging from sensor networks to cloud computing.RENNES1-Bibl. électronique (352382106) / SudocSudocFranceF

    Gestion autonomique de performance, d'énergie et de qualité de service. Application aux réseaux filaires, réseaux de capteurs et grilles de calcul

    Get PDF
    La motivation principale de cette thèse est de faire face à l'accroissement de la complexité des systèmes informatiques, qui, dans un futur proche ( de l'ordre de quelques années) risque fort d'être le principal frein à leur évolution et à leur développement. Aujourd'hui la tendance s'inverse et le coût de gestion humaine dépasse le coût des infrastructures matérielles et logicielles. De plus, l'administration manuelle de grands systèmes (applications distribuées, réseaux de capteurs, équipements réseaux) est non seulement lente mais aussi sujette à de nombreuses erreurs humaines. Un des domaines de recherche émergent est celui de l'informatique autonomique qui a pour but de rendre ces systèmes auto-gérés. Nous proposons une approche qui permet de décrire des politiques de gestion autonomiques de haut niveau. Ces politiques permettent au système d'assurer quatre propriétés fondamentales de l'auto-gestion: l'auto-guérison, l'auto-configuration, l'auto-protection et l'auto-optimisation. Nos contributions portent sur la spécification de diagrammes de description de politiques de gestion autonomiques appelés (S)PDD "(Sensor) Policy Description Diagrams". Ces diagrammes sont implémentés dans le gestionnaire autonomique TUNe et l'approche a été validée sur de nombreux systèmes: simulation électromagnétique répartie sur grille de calcul, réseaux de capteurs SunSPOT, répartiteur de calcul DIET. Une deuxième partie présente une modélisation mathématique de l’auto-optimisation pour un « datacenter ». Nous introduisons un problème de minimisation d’un critère intégrant d’une part la consommation électrique des équipements du réseau du « datacenter » et d’autre part la qualité de service des applications déployées sur le « datacenter ». Une heuristique permet de prendre en compte les contraintes dues aux fonctions de routage utilisées. ABSTRACT : The main challenge of this thesis is to cope with the growing complexity of IT systems. In a near future (mainly the next few years) this complexity will prevent new developments and system evolutions. Today the trend is reversing and the managing costs are overtaking the hardware and software costs. Moreover, the manual administration of large systems (distributed applications, sensor networks, and network equipment) is not only slow but error-prone. An emerging research field called autonomic computing tries to bring up self-managed systems. We introduce an approach that enable the description of high level autonomic management policies. These policies allow the system to ensure four fundamental properties for self-management: self-healing, self-self-configuring, self-protecting and self-optimizing. We specify autonomic management Policy Description Diagrams (PDD) and implement them in Toulouse University Network (TUNe). We validated our approach on many systems: electromagnetic simulations distributed on computer grids (grid’5000), wireless sensor networks with SunSPOTs and the computing scheduler DIET. A second part of this thesis presents a mathematical modeling for self-optimizing datacenters. We introduce a minimization problem with a criterion integrating both the electrical consumption of the datacenter networking equipment and the quality of service of the deployed applications. A heuristic takes into account the routing functions used on the network

    Conception d'un modèle architectural collaboratif pour l'informatique omniprésente à la périphérie des réseaux mobiles

    Get PDF
    Le progrès des technologies de communication pair-à-pair et sans fil a de plus en plus permis l’intégration de dispositifs portables et omniprésents dans des systèmes distribués et des architectures informatiques de calcul dans le paradigme de l’internet des objets. De même, ces dispositifs font l'objet d'un développement technologique continu. Ainsi, ils ont toujours tendance à se miniaturiser, génération après génération durant lesquelles ils sont considérés comme des dispositifs de facto. Le fruit de ces progrès est l'émergence de l'informatique mobile collaborative et omniprésente, notamment intégrée dans les modèles architecturaux de l'Internet des Objets. L’avantage le plus important de cette évolution de l'informatique est la facilité de connecter un grand nombre d'appareils omniprésents et portables lorsqu'ils sont en déplacement avec différents réseaux disponibles. Malgré les progrès continuels, les systèmes intelligents mobiles et omniprésents (réseaux, dispositifs, logiciels et technologies de connexion) souffrent encore de diverses limitations à plusieurs niveaux tels que le maintien de la connectivité, la puissance de calcul, la capacité de stockage de données, le débit de communications, la durée de vie des sources d’énergie, l'efficacité du traitement de grosses tâches en termes de partitionnement, d'ordonnancement et de répartition de charge. Le développement technologique accéléré des équipements et dispositifs de ces modèles mobiles s'accompagne toujours de leur utilisation intensive. Compte tenu de cette réalité, plus d'efforts sont nécessaires à la fois dans la conception structurelle tant au matériel et logiciel que dans la manière dont il est géré. Il s'agit d'améliorer, d'une part, l'architecture de ces modèles et leurs technologies de communication et, d'autre part, les algorithmes d'ordonnancement et d'équilibrage de charges pour effectuer leurs travaux efficacement sur leurs dispositifs. Notre objectif est de rendre ces modèles omniprésents plus autonomes, intelligents et collaboratifs pour renforcer les capacités de leurs dispositifs, leurs technologies de connectivité et les applications qui effectuent leurs tâches. Ainsi, nous avons établi un modèle architectural autonome, omniprésent et collaboratif pour la périphérie des réseaux. Ce modèle s'appuie sur diverses technologies de connexion modernes telles que le sans-fil, la radiocommunication pair-à-pair, et les technologies offertes par LoPy4 de Pycom telles que LoRa, BLE, Wi-Fi, Radio Wi-Fi et Bluetooth. L'intégration de ces technologies permet de maintenir la continuité de la communication dans les divers environnements, même les plus sévères. De plus, ce modèle conçoit et évalue un algorithme d'équilibrage de charge et d'ordonnancement permettant ainsi de renforcer et améliorer son efficacité et sa qualité de service (QoS) dans différents environnements. L’évaluation de ce modèle architectural montre des avantages tels que l’amélioration de la connectivité et l’efficacité d’exécution des tâches. Advances in peer-to-peer and wireless communication technologies have increasingly enabled the integration of mobile and pervasive devices into distributed systems and computing architectures in the Internet of Things paradigm. Likewise, these devices are subject to continuous technological development. Thus, they always tend to be miniaturized, generation after generation during which they are considered as de facto devices. The success of this progress is the emergence of collaborative mobiles and pervasive computing, particularly integrated into the architectural models of the Internet of Things. The most important benefit of this form of computing is the ease of connecting a large number of pervasive and portable devices when they are on the move with different networks available. Despite the continual advancements that support this field, mobile and pervasive intelligent systems (networks, devices, software and connection technologies) still suffer from various limitations at several levels such as maintaining connectivity, computing power, ability to data storage, communication speeds, the lifetime of power sources, the efficiency of processing large tasks in terms of partitioning, scheduling and load balancing. The accelerated technological development of the equipment and devices of these mobile models is always accompanied by their intensive use. Given this reality, it requires more efforts both in their structural design and management. This involves improving on the one hand, the architecture of these models and their communication technologies, and, on the other hand, the scheduling and load balancing algorithms for the work efficiency. The goal is to make these models more autonomous, intelligent, and collaborative by strengthening the different capabilities of their devices, their connectivity technologies and the applications that perform their tasks. Thus, we have established a collaborative autonomous and pervasive architectural model deployed at the periphery of networks. This model is based on various modern connection technologies such as wireless, peer-to-peer radio communication, and technologies offered by Pycom's LoPy4 such as LoRa, BLE, Wi-Fi, Radio Wi-Fi and Bluetooth. The integration of these technologies makes it possible to maintain the continuity of communication in the various environments, even the most severe ones. Within this model, we designed and evaluated a load balancing and scheduling algorithm to strengthen and improve its efficiency and quality of service (QoS) in different environments. The evaluation of this architectural model shows payoffs such as improvement of connectivity and efficiency of task executions

    Modèle à Composant pour Plate-forme Autonomique

    Get PDF
    In the last decades, computing environments have been getting more and more complex, filled with miniaturized and sophisticated devices that can handle mobility and wireless communications. Ubiquitous computing, as envisioned by Mark Weiser in 1991, promote the seamless integration of those computing environments with the real world in order to offer new kinds of applications. However, writing software for ubiquitous environments raises numerous challenges, mainly the problem of how to make an application adapt itself in an ever changing context. From another perspective, as classical softwares were growing in size and complexity, IBM proposed the concept of autonomic computing to help to contain the burden of administering massive and numerous systems. This PhD thesis is based on an approach where applications are designed in terms of components using and providing services. A development model based on a reference architecture for the conception of ubiquitous applications is proposed, greatly inspired by researches in the autonomic computing field. In this model, the application is managed by a hierarchy of autonomic managers, that base their decisions on a central representation of the system. The fulfilment of this contribution requires to make the underlying middleware more reflexive, in order to support new kinds of runtime adaptations. We also provide a model that depicts the running system and its dynamics in a uniform way, based on REST principles. Applications relying on this reflexive middleware and represented by this model are what we called Autonomic-Ready. Implementations of our proposals have been integrated in the Apache Felix iPOJO service-oriented component model. The system representation, named Everest, is provided as a OW2 Chameleon subproject. Validation is based on the iCASA pervasive environment development and simulation environment.Ces dernières décennies, les environnements informatiques sont devenus de plus en plus complexes, parsemés de dispositifs miniatures et sophistiqués gérant la mobilité et communiquant sans fil. L'informatique ubiquitaire, telle qu'imaginée par Mark Weiser en 1991, favorise l'intégration transparente de ces environnements avec le monde réel pour offrir de nouveaux types d'applications. La conception de programmes pour environnements ubiquitaires soulève cependant de nombreux défis, en particulier le problème de rendre une application auto-adaptable dans un contexte en constante évolution. Parallèlement, alors que la taille et la complexité de systèmes plus classiques ont explosé, IBM a proposé le concept d'informatique autonomique afin de réduire le fardeau de l'administration de systèmes imposants et largement disséminés. Cette thèse se base sur une approche où les applications sont conçues sous la forme de composants utilisant et fournissant des services. Un modèle de développement fondé sur une architecture de référence pour la conception d'applications ubiquitaires est proposée, fortement inspiré des recherches dans le domaine de l'informatique autonomique. Dans ce modèle, les applications sont prises en charge par une hiérarchie de gestionnaires autonomiques, qui appuient leurs décisions sur une représentation centrale du système. La mise en œuvre de cette contribution requiert de rendre la couche d'exécution sous-jacente plus réflexive, en vue de supporter de nouveaux types d'adaptations à l'exécution. Nous proposons également un modèle qui décrit le système à l'exécution et reflète sa dynamique de manière uniforme, suivant les principes du style d'architecture REST. Les applications reposant sur ce cette couche d'exécution réflexive et représentées par ce modèle sont qualifiées d'Autonomic-Ready. L'implantation de nos propositions ont été intégrées dans le modèle à composant orienté service Apache Felix iPOJO. Le modèle de représentation du système, nommé Everest, est publié en tant que sous-projet d'OW2 Chameleon. Ces propositions ont été évaluées et validées par la conception et l'exécution d'une application ubiquitaire sur iCASA, un environnement de développement et de simulation

    Allocation et réallocation de services pour les économies d'énergie dans les clusters et les clouds

    Get PDF
    L'informatique dans les nuages (cloud computing) est devenu durant les dernières années un paradigme dominant dans le paysage informatique. Son principe est de fournir des services décentralisés à la demande. La demande croissante pour ce type de service amène les fournisseurs de clouds à augmenter la taille de leurs infrastructures à tel point que les consommations d'énergie ainsi que les coûts associés deviennent très importants. Chaque fournisseur de service cloud doit répondre à des demandes différentes. C'est pourquoi au cours de cette thèse, nous nous sommes intéressés à la gestion des ressources efficace en énergie dans les clouds. Nous avons tout d'abord modélisé et étudié le problème de l'allocation de ressources initiale en fonction des services, en calculant des solutions approchées via des heuristiques, puis en les comparant à la solution optimale. Nous avons ensuite étendu notre modèle de ressources pour nous permettre d'avoir une solution plus globale, en y intégrant de l'hétérogénéité entre les machines et des infrastructures de refroidissement. Nous avons enfin validé notre modèle par simulation. Les services doivent faire face à différentes phases de charge, ainsi qu'à des pics d'utilisation. C'est pourquoi, nous avons étendu le modèle d'allocation de ressources pour y intégrer la dynamicité des requêtes et de l'utilisation des ressources. Nous avons mis en œuvre une infrastructure de cloud simulée, visant à contrôler l'exécution des différents services ainsi que le placement de ceux-ci. Ainsi notre approche permet de réduire la consommation d'énergie globale de l'infrastructure, ainsi que de limiter autant que possible les dégradations de performance.Cloud computing has become over the last years an important paradigm in the computing landscape. Its principle is to provide decentralized services and allows client to consume resources on a pay-as-you-go model. The increasing need for this type of service brings the service providers to increase the size of their infrastructures, to the extent that energy consumptions as well as operating costs are becoming important. Each cloud service provider has to provide for different types of requests. Infrastructure manager then have to host all the types of services together. That's why during this thesis, we tackled energy efficient resource management in the clouds. In order to do so, we first modeled and studied the initial service allocation problem, by computing approximated solutions given by heuristics, then comparing it to the optimal solution computed with a linear program solver. We then extended the model of resources to allow us to have a more global approach, by integrating the inherent heterogeneity of clusters and the cooling infrastructures. We then validated our model via simulation. Usually, the services must face different stages of workload, as well as utilization spikes. That's why we extended the model to include dynamicity of requests and resource usage, as well as the concept of powering on or off servers, or the cost of migrating a service from one host to another. We implemented a simulated cloud infrastructure, aiming at controlling the execution of the services as well as their placement. Thus, our approach enables the reduction of the global energy consumption of the infrastructure, and limits as much as possible degrading the performances

    Le code à effacement Mojette : Applications dans les réseaux et dans le Cloud

    Get PDF
    Dans ce travail, je présente l'intérêt du code correcteur à effacement Mojette pour des architectures de stockage distribuées tolérantes aux pannes. De manière générale, l'approche par code permet de réduire d'un facteur 2 le volume de données stockées par rapport à l'approche standard par réplication qui consiste à copier la donnée en autant de fois que l'on suppose de pannes. De manière spécifique, le code à effacement Mojette présente les performances requises pour la lecture et l'écriture de données chaudes i.e très régulièrement sollicitées. Ces performances en entrées/sorties permettent par exemple l'exécution de machines virtuelles sur des données distribuées par le système de fichier RozoFS. En outre, j'effectue un rappel de mes contributions dans le domaine des réseaux auto-organisés de type P2P et ad hoc mobile en présentant respectivement les protocoles P2PWeb et MP-OLSR. L'ensemble de ce travail est le fruit de 5 encadrements doctoraux et de 3 projets collaboratifs majeurs

    Analyse et amélioration de la qualité de services WEB multimédia et leurs mises en oeuvre sur ordinateur et sur FPGA

    Get PDF
    Résumé : Les services Web, issus de l’avancée technologique dans le domaine des réseaux informatiques et des dispositifs de télécommunications portables et fixes, occupent une place primordiale dans la vie quotidienne des gens. La demande croissante sur des services Web multimédia (SWM), en particulier, augmente la charge sur les réseaux d’Internet, les fournisseurs de services et les serveurs Web. Cette charge est essentiellement due au fait que les SWM de haute qualité nécessitent des débits de transfert et des tailles de paquets importants. La qualité de service (par définition, telle que vue par l’utilisateur) est influencée par plusieurs facteurs de performance, comme le temps de traitement, le délai de propagation, le temps de réponse, la résolution d’images et l’efficacité de compression. Le travail décrit dans cette thèse est motivé par la demande continuellement croissante de nouveaux SWM et le besoin de maintenir et d’améliorer la qualité de ces services. Nous nous intéressons tout d’abord à la qualité de services (QdS) des SWM lorsqu’ils sont mis en œuvre sur des ordinateurs, tels que les ordinateurs de bureau ou les portables. Nous commençons par étudier les aspects de compatibilité afin d’obtenir des SWM fonctionnant de manière satisfaisante sur différentes plate-formes. Nous étudions ensuite la QdS des SWM lorsqu’ils sont mis en œuvre selon deux approches différentes, soit le protocole SOAP et le style RESTful. Nous étudions plus particulièrement le taux de compression qui est un des facteurs influençant la QdS. Après avoir considéré sous différents angles les SWM avec mise en œuvre sur des ordinateurs, nous nous intéressons à la QdS des SWM lorsqu’ils sont mis en œuvre sur FPGA. Nous effectuons alors une étude et une mise en œuvre qui permet d’identifier les avantages à mettre en œuvre des SWM sur FPGA. Les contributions se définissent en cinq volets comme suit : 1. Nous introduisons des méthodes de création, c’est-à-dire conception et mise en œuvre, de SWM sur des plate-formes logicielles hétérogènes dans différents environnements tels que Windows, OS X et Solaris. Un objectif que nous visons est de proposer une approche permettant d’ajouter de nouveaux SWM tout en garantissant la compatibilité entre les plate-formes, dans le sens où nous identifions les options nous permettant d’offrir un ensemble riche et varié de SWM pouvant fonctionner sur les différentes plate-formes. 2. Nous identifions une liste de paramètres pertinents influençant la QdS des SWM mis en œuvre selon le protocole SOAP et selon le style REST. 3. Nous développons un environnement d’analyse pour quantifier les impacts de chaque paramètre identifié sur la QdS de SWM. Pour cela, nous considérons les SWM mis en œuvre selon le protocole SOAP et aussi selon style REST. Les QdS obtenues avec SOAP et REST sont comparées objectivement. Pour faciliter la comparaison, la même gamme d’images (dans l’analyse de SWM SOAP) a été réutilisée et les mêmes plate-formes logicielles. 4. Nous développons une procédure d’analyse qui permet de déterminer une corrélation entre la dimension d’une image et le taux de compression adéquat. Les résultats obtenus confirment cette contribution propre à cette thèse qui confirme que le taux de compression peut être optimisé lorsque les dimensions de l’image ont la propriété suivante : le rapport entre la longueur et la largeur est égal au nombre d’or connu dans la nature. Trois libraires ont été utilisées à savoir JPEG, JPEG2000 et DjVu. 5. Dans un volet complémentaire aux quatre volets précédents, qui concernent les SWM sur ordinateurs, nous étudions ainsi la conception et la mise en œuvre de SWM sur FPGA. Nous justifions l’option de FPGA en identifiant ses avantages par rapport à deux autres options : ordinateurs et ASICs. Afin de confirmer plusieurs avantages identifiés, un SWM de QdS élevée et de haute performance est créé sur FPGA, en utilisant des outils de conception gratuits, du code ouvert (open-source) et une méthode fondée uniquement sur HDL. Notre approche facilitera l’ajout d’autres modules de gestions et d’orchestration de SWM. 6. La mise à jour et l’adaptation du code open-source et de la documentation du module Ethernet IP Core pour la communication entre le FPGA et le port Ethernet sur la carte Nexys3. Ceci a pour effet de faciliter la mise en œuvre de SWM sur la carte Nexys3. // Abstract : Web services, which are the outcome of the technological advancements in IT networks and hand-held mobile devices for telecommunications, occupy an important role in our daily life. The increasing demand on multimedia Web services (MWS), in particular, augments the load on the Internet, on service providers and Web servers. This load is mainly due to the fact that the high-quality multimedia Web services necessitate high data transfer rates and considerable payload sizes. The quality of service (QoS, by definition as it is perceived by the user) is influenced by several factors, such as processing time, propagation delay, response time, image resolution and compression efficacy. The research work in this thesis is motivated by the persistent demand on new MWS, and the need to maintain and improve the QoS. Firstly, we focus on the QoS of MWS when they are implemented on desktop and laptop computers. We start with studying the compatibility aspects in order to obtain MWS functioning satisfactorily on different platforms. Secondly, we study the QoS for MWS implemented according to the SOAP protocol and the RESTful style. In particular, we study the compression rate, which is one of the pertinent factors influencing the QoS. Thirdly, after the study of MWS when implemented on computers, we proceed with the study of QoS of MWS when implemented on hardware, in particular on FPGAs. We achieved thus comprehensive study and implementations that show and compare the advantages of MWS on FPGAs. The contributions of this thesis can be resumed as follows: 1. We introduce methods of design and implementation of MWS on heterogeneous platforms, such as Windows, OS X and Solaris. One of our objectives is to propose an approach that facilitates the integration of new MWS while assuring the compatibility amongst involved platforms. This means that we identify the options that enable offering a set of rich and various MWS that can run on different platforms. 2. We determine a list of relevant parameters that influence the QoS of MWS. 3. We build an analysis environment that quantifies the impact of each parameter on the QoS of MWS implemented on both SOAP protocol and RESTful style. Both QoS for SOAP and REST are objectively compared. The analysis has been held on a large scale of different images, which produces a realistic point of view describing the behaviour of real MWS. 4. We develop an analysis procedure to determine the correlation between the aspect ratio of an image and its compression ratio. Our results confirm that the compression ratio can be improved and optimised when the aspect ratio of iiiiv an image is close to the golden ratio, which exists in nature. Three libraries of compression schemes have been used, namely: JPEG, JPEG2000 and DjVu. 5. Complementary to the four contributions mentioned above, which concern the MWS on computers, we study also the design and implementation of MWS on FPGA. This is justified by the numerous advantages that are offered by FPGAs, compared to the other technologies such as computers and ASICs. In order to highlight the advantages of implementing MWS on FPGA, we developed on FPGA a MWS of high performance and high level of QoS. To achieve our goal, we utilised freely available design utilities, open-source code and a method based only on HDL. This approach is adequate for future extensions and add-on modules for MWS orchestration

    Adaptive Modeling and Distribution of Large Natural Scenes

    Get PDF
    This thesis deals with the modeling and the interactive streaming of large natural 3D scenes. We aim at providing techniques to allow the remote walkthrough of users in a natural 3D scene ensuring botanical coherency and interactivity.First, we provide a compact and progressive representation for botanically realistic plant models. The topological structure and the geometry of the plants are represented by generalized cylinders. We provide a multi-resolution compression scheme, based on standardization and instantiation, on difference-based decorrelation, and on entropy coding. Then, we study efficient transmission of these 3D objects. The proposed packetization scheme works for any multi-resolution 3D representation. We validate our packetization schemes with extensive experiments over a WAN (Wide Area Network), with and without congestion control (Datagram Congestion Control Protocol). Finally, we address issues on streaming at the scene-level. We optimize the viewpoint culling requests on server-side by providing an adapted datastructure and we prepare the ground for our further work on scalability and deployment of distributed 3D streaming systems
    corecore