1 |
Equité d'accès aux ressources dans les systèmes partagés best-effort / Resources access fairness in best-effort shared systemsGoichon, François 16 December 2013 (has links)
Au cours de la dernière décennie, l'industrie du service informatique s'est métamorphosée afin de répondre à des besoins client croissants en termes de disponibilité, de performance ou de capacité de stockage des systèmes informatisés. Afin de faire face à ces demandes, les hébergeurs d'infrastructures ont naturellement adopté le partage de systèmes où les charges de travail de différents clients sont exécutées simultanément. Cette technique, mutualisant les ressources à disposition d'un système entre les utilisateurs, permet aux hébergeurs de réduire le coût de maintenance de leurs infrastructures, mais pose des problèmes d'interférence de performance et d'équité d'accès aux ressources. Nous désignons par le terme systèmes partagés best-effort les systèmes dont la gestion de ressources est centrée autour d'une maximisation de l'usage des ressources à disposition, tout en garantissant une répartition équitable entre les différents utilisateurs. Dans ce travail, nous soulignons la possibilité pour un utilisateur abusif d'attaquer les ressources d'une plateforme partagée afin de réduire de manière significative la qualité de service fournie aux autres utilisateurs concurrents. Le manque de métriques génériques aux différentes ressources, ainsi que le compromis naturel entre équité et optimisation des performances forment les causes principales des problèmes rencontrés dans ces systèmes. Nous introduisons le temps d'utilisation comme métrique générique de consommation des ressources, métrique s'adaptant aux différentes ressources gérées par les systèmes partagés best-effort. Ceci nous amène à la spécification de couches de contrôles génériques, transparentes et automatisées d'application de politiques d'équité garantissant une utilisation maximisée des ressources régulées. Notre prototype, implémenté au sein du noyau Linux, nous permet d'évaluer l'apport de notre approche pour la régulation des surcharges d'utilisation mémoire. Nous observons une amélioration significative de la performance d'applications typiques des systèmes partagés best-effort en temps de contention mémoire. De plus, notre technique borne l'impact d'applications abusives sur d'autres applications légitimes concurrentes, puisque l'incertitude sur les durées d'exécution est naturellement amoindrie. / Over the last ten years, the IT services industry has gone through major transformations, to comply with customers ever-growing needs in terms of availability, performance or storage capabilities of IT infrastructures. In order to cope with this demand, IT service providers tend to use shared systems, executing mutiple workloads from distinct customers simultaneously on the same system. This technique allows service providers to reduce the maintenance cost of their infrastructure, by sharing the resources at their disposal and therefore maximizing their utilization. However, this assumes that the system is able to prevent arbitrary workloads from having significant impact on other workloads' performance. In this scenario, the operating system's resource multiplexing layer tries to maximize resource consumption, as well as enforcing a fair distribution among users. We refer to those systems as best-effort shared systems. In this work, we show that malicious users may attack a shared system's resources, to significantly reduce the quality of service provided to other concurrent users. This issue of resource control layers in shared systems can be linked to the lack of generic accounting metrics, as well as the natural trade-off that such systems have to make between fairness and performance optimization. We introduce the utilization time as a generic accounting metric, which can be applied to the different resources typically managed by best-effort shared systems. This metric allows us to design a generic, transparent and automated resource control layer, which enables the specification of simple resource management policies centered around fairness and resource consumption maximization. We applied this approach to the swap subsystem, a traditional operating system bottleneck, and implemented a prototype within the Linux kernel. Our results show significative performance enhancements under high memory pressure, for typical workloads of best-effort shared systems. Moreover, our technique bounds the impact of abusive applications on other legit applications, as it naturally reduces uncertainties over execution duration.
|
2 |
Radio access and core functionalities in self-deployable mobile networks / Accès radio et fonctionnalités de base dans les réseaux mobiles auto-déployablesOueis, Jad 27 November 2018 (has links)
Les réseaux mobiles auto-déployables sont des réseaux qui peuvent être rapidement déployés, facilement installés, sur demande, n’importe où, et n’importe quand. Ils visent divers cas d’utilisation pour fournir des services aux utilisateurs lorsque le réseau classique ne peut pas être utilisé, ou n’existe pas : lors d’événements publics, lors des situations critiques, ou dans les zones isolées. Ces réseaux font évoluer l’architecture d’un réseau classique, en éliminant la séparation physique qui existe entre le réseau d’accès et le cœur de réseau. Cette séparation est désormais uniquement fonctionnelle, vu qu’une station de base est colocalisée avec les fonctionnalités du réseau de cœur, telles que la gestion de session et le routage, en plus des serveurs d’applications. Une station de base, toute seule, sans connexion à un réseau externe, fournit des services aux utilisateurs dans sa zone de couverture. Lorsque plusieurs stations de base sont interconnectées, les liens entre elles forment un réseau d’interconnexion, qui risque d’avoir une capacité limitée. Dans ce travail, nous nous appuyons sur les propriétés distinguant les réseaux auto-déployables pour revisiter des problèmes classiques du réseau d’accès dans ce nouvel contexte, mais aussi pour aborder de nouveaux défis créés par l’architecture du réseau. Tout d’abord, nous proposons un algorithme qui retourne un schéma d’allocation de fréquences et de puissances pour les stations de base. Celui-ci augmente considérablement les débits des utilisateurs par rapport aux schémas classiques de réutilisation de fréquences. Ensuite, nous traitons le problème de placement des fonctionnalités du cœur du réseau. Pour le placement centralisé, nous proposons une nouvelle métrique de centralité qui permet de placer les fonctions de façon à maximiser le trafic pouvant être échangé dans le réseau. Pour le placement distribué, nous évaluons le nombre de fonctions nécessaires et leur placement optimal, en tenant compte de l’impact sur la capacité du réseau d’interconnexion. Nous démontrons aussi les avantages du placement distribué par rapport au centralisé en terme de consommation de ressources sur le réseau d’interconnexion. Dans le même contexte, nous abordons le problème d’attachement des utilisateurs, lorsque les fonctionnalités du cœur de réseau sont distribuées, pour déterminer par laquelle de ces fonctionnalités un utilisateur est-il servi. Enfin, avec le réseau d’accès configuré et le cœur de réseau organisé, les utilisateurs commencent à arriver. Alors, nous abordons le problème de l’association des utilisateurs. Nous proposons une nouvelle politique d’association adaptée aux propriétés des réseaux auto-déployables. Cette politique réduit la probabilité de blocage par rapport aux politiques classiques basées uniquement sur la qualité de la voie descendante, en tenant compte à la fois des ressources du réseau d’accès, des ressources sur le réseau d’interconnexion, et des demandes des utilisateurs. / Self-deployable mobile networks are a novel family of cellular networks, that can be rapidly deployed, easily installed, and operated on demand, anywhere, anytime. They target diverse use cases and provide network services when the classical network fails, is not suitable, or simply does not exist: when the network saturates during crowded events, when first responders need private broadband communication in disaster-relief and mission-critical situations, or when there is no infrastructure in areas with low population density. These networks are challenging a long-standing vision of cellular networks by eliminating the physical separation between the radio access network (RAN) and the core network (CN). In addition to providing RAN functionalities, such as radio signal processing and radio resource management, a base station can also provide those of the CN, such as session management and routing, in addition to housing application servers. As a result, a base station with no backhaul connection to a traditional CN can provide local services to users in its vicinity. To cover larger areas, several base stations must interconnect. With the CN functions co-located with the RAN, the links interconnecting the BSs form the backhaul network. Being setup by the BSs, potentially in an ad hoc manner, the latter may have a limited bandwidth. In this thesis, we build on the properties distinguishing self-deployable networks to revisit classical RAN problems but in the self-deployable context, and address the novel challenges created by the core network architecture. Starting with the RAN configuration, we propose an algorithm that sets a frequency and power allocation scheme. The latter outperforms conventional frequency reuse schemes in terms of the achieved user throughput and is robust facing variations in the number of users and their distribution in the network. Once the RAN is configured, we move to the CN organization, and address both centralized and distributed CN functions placements. For the centralized placement, building on the shortages of state of the art metrics, we propose a novel centrality metric that places the functions in a way that maximizes the traffic that can be exchanged in the network. For the distributed placement, we evaluate the number of needed instances of the CN functions and their optimal placement, considering the impact on the backhaul bandwidth. We further highlight the advantages of distributing CN functions, from a backhaul point of view. Accordingly, we tackle the user attachment problem to determine the CN instances serving each user when the former are distributed. Finally, with the network ready to operate, and users starting to arrive, we tackle the user association problem. We propose a novel network-aware association policy adapted to self-deployable networks, that outperforms a traditional RAN-based policy. It jointly accounts for the downlink, the uplink, the backhaul and the user throughput request.
|
3 |
Business as a service multi-layer governance architecture / Les entreprises comme des architectures de gouvernance multi-couchesLi, Juan 17 March 2014 (has links)
Pour faire face aux enjeux d’une économie mondialisée, aux fluctuations du marché et aux changements de la demande (personnalisation massive, qualité…), les entreprises recourent de plus en plus aux stratégies de collaboration et d’organisation en réseau et adoptent des stratégies orientées « produit/service ». Cette tendance est renforcée par le développement des applications du Web 2.0 (voire 3.0?) et l’adoption d’architectures orientées services permettant d’augmenter l’interopérabilité et l’agilité des systèmes d’information. En outre, les possibilités offertes par le Cloud Computing permet de rendre le déploiement plus flexible. En parallèle, le développement de stratégies industrielles comme le « lean manufacturing » et le 6-Sigmas permet d’améliorer les procédés, l’organisation industrielle elle-même et la qualité des produits. L’objectif de ce travail de recherche est de coupler la vision « industrielle » à la vision « système d’information » traditionnelle pour permettre de mettre en place un modèle de services industriels composables, orchestrables et « gouvernables ». Pour cela, nous proposons de mettre en place une architecxture de gouvernance globale « connectant » les différentes couches du système (métier/industriel, service, plateforme et infrastructure), permettant d’améliorer la gouvernance du système globale (en évitant les incohérences liées à une prise en compte et une optimisation « isolée » des différents facteurs de performance) tant au niveau organisationnel que technologique. Ceci pourrait permettre d’améliorer les performances tant au niveau « métier » que « technologique », augmenter l’agilité du système et supporter plus efficacement les stratégies de collaboration en développant une approche basée sur la sélection / composition / orchestration de services métier industriels. / Due to the renewed globalised economical environment and the market evolution (mass customization, sustainability requirements…) the call for developing product-service strategy becomes a major stake, leading industrial companies to set collaborative business organizations and develop business services. This trend has been favored by the large-scale IT environment provided by the web 2.0 and by the development of interoperable and rather agile IT technologies based on services leading to SOA-based information systems reorganization. At the same time, lean and six sigma theories have also been used in industries to improve the industrial process itself so that profitability, quality and reputation are increased. As a new economical and technical model, Cloud Computing has generated a tremendous amount of interest and excitement in recent years as it gives a new and useful way to address IT challenges To achieve the primary goals of these technologies, concepts and models, an efficient industrial organization governance method is necessary. We propose a flexible, efficient, low cost monitoring strategy, it can couple the different layers of economic ecosystem (including business strategies, business/industrial/IT services, execution platforms and infrastructure means) it can overcome existing industrial governance architectures’ limits (most of them are rather “fixed” and lack agility, overall perspective governance as they have unilateral perspective), and it could drive the industry towards better practices, improve ability of enterprises to cope with changes from both a technical and an organizational point of view, as well as reinforce external and internal collaborative work of enterprises.
|
4 |
Towards a resilient service oriented computing based on ad-hoc web service compositions in dynamic environments / Vers un paradigme service résilient basé sur ad-hoc compositions des services web dans des environnements dynamiquesLi, Wenbin 27 March 2014 (has links)
Le processus de composition des services Web joue un rôle important dans la réalisation des architectures orientées services (SOA). Dans les environnements dynamiques dans lesquels des informations con-textuelles changent souvent, le processus de composition est souvent affec-té pendant les phases de conception et d’exécution. Ce processus devrait par conséquence être en mesure de s'adapter aux changements en temps de conception et exécution. A présent, les architectures orientées services et les mécanismes automatiques de composition de services Web ne parviennent pas à faire face aux changements continus et imprévisibles. Construire des architectures orientées services qui s'adaptent aux changements dans des environnements dynamiques révèle un défi pour les processus de com-position de services Web. En outre, les processus de composition actuelles offrent un support limité pour les utilisateurs professionnels de spécifier leurs exigences métier afin générer automatiquement les processus métiers (services Web composites). Par cela, l'écart entre les exigences fonction-nelles et non-fonctionnelles au niveau métier et les exigences techniques liées aux mécanismes de composition de services Web augmentent la com-plexité du développement d'applications ou de processus métier adaptés aux environnements dynamiques. Pour remédier à ces défis, nous introduisons le concept de rési-lience appliqué à l'informatique orientée services (nommé SOC résilient) afin de construire des applications et processus métier dynamiques en res-pectant les exigences métier dans des environnements dynamiques. La SOA résilient est conçue comme un ensemble de modèles qui affectent, et sont affectées par, d’autres modèles. Dans cette thèse, nos contributions, qui se concentrent en particulier sur le modèle d’exigence de composition et le modèle de composition des services Web, composent trois parties princi-pales: tout d'abord le modèle de d’exigence est modélisé aux trois niveaux, i.e., métier, capacité, et règle. Particulièrement, le modèle de d’exigence métier offre aux utilisateurs un langage structuré à base de langage naturelle pour spécifier les processus métier; d'autre part, un processus de trans-formation dérive par transformation un modèle d’exigence de composition à base de règles. Chaque règle représente un ensemble de contraintes multi-objectives concernant différentes variables liées au processus de composi-tion et à son environnement dynamique. Troisièmement, une approche ad-hoc de composition des services Web a été développée pour construire de services composites sans plans de composition prédéfinis dans des environ-nements dynamiques. L’approche de transformation de modèle-à-modèle génère les règles qui sont récursivement utilisées pour modifier ces modèles et ensuite replanifiés une composition ad-hoc de services Web. / Due to the distributed and asynchronous nature of Web services, the Web service composition process plays an important role in achieving SOC. In dynamic environments by which contextual information such as Web service properties and composition requirements often change, the composition process is thus affected and, consequently, should be able to adapt composite applications to changes at design time and runtime. Un-fortunately, current Service-Oriented Architecture (SOA) and Web service composition approaches lack of the ability to deal with continuous and un-predictable changes. Building resilient service-oriented architectures that are adaptable to endogenous and exogenous changes in dynamic environments reveal a drastic challenge to current composition processes. In addition, current composition processes provide a limited support for business users to specify their requirements in business languages to automatically compose business processes (i.e., composite services). By such, the gap be-tween business requirements and composition requirements related to Web services increases the complexity of developing adaptable SOA-based ap-plications and processes in dynamic environments. To overcome these challenges, we introduce the concept of Resili-ent Service-Oriented Computing (rSOC) to construct resilient SOA-based applications driven by business requirements in dynamic environments. To this end, the resilient SOA is defined as a set of models that affect and are affected by each other, and relies on a model-to-model transformation ap-proach to ensure SOA adaptability and evolution. In this thesis, we particu-larly focus on two models: a three-level composition requirement model and a Web service composition model, to establish the foundation for a re-silient SOA as follows: firstly, composition requirements are modeled in three levels, i.e., business-centric, capability-focused and rule-driven. Par-ticularly the business-centric requirement model provides business users with a structured natural language to specify requirements; secondly, a two-phase requirement transformation process builds the rule-driven Web ser-vice composition requirement model from the business-centric requirement model as set of composition rules, expressing multi-objective constraints that affect the composition process and its dynamic environment; thirdly, an ad-hoc Web service composition approach is introduced to flexibly con-struct composite services without predefined composition plans. Particularly, composition rules generated in composition process may affect other model(s) in the resilient SOA, such as composition requirement model, and recursively invoke the model-to-model transformation approach to replan the ad-hoc Web service composition approach.
|
5 |
Security and self-healability enforcement of dynamic components in a service-oriented system / Sécurité et exécution autorétablie des composants dynamiques dans un système axé sur le serviceDan, Yufang 14 May 2014 (has links)
Les architectures dynamiques orientées services (D-SOA) se concentrent sur les interactions client-serveur à couplage faible, où les deux peuvent apparaître et disparaître à l’exécution. Notre objectif est de concevoir des systèmes de surveillance pour ces architectures. Comme les systèmes de surveillance classiques sont statiquement injectés dans les services surveillés, ils ne peuvent pas gérer correctement le cycle de vie des services d’exécution. En outre, quand un service est remplacé par un autre service, d’autres services peuvent toujours utiliser l’ancienne référence. Cette référence vers un service absent, lorsqu’elle est gardée en mémoire, peut induire des comportements non désirés. Cette thèse contribue à la conception d’un système de surveillance de l’utilisation des services, qui soit résistant à la dynamique de la plateforme et qui soit en mesure de faire face à l’utilisation des références obsolètes. Ce but est atteint en trois étapes. Tout d’abord, en considérant le caractère dynamique des systèmes SOA dans un environnement ouvert, nous concevons une approche de monitoring résistant au la dynamique de la plateforme. Nous identifions deux propriétés clés du système de surveillance à couplage faible: résilience à la dynamicité, c’est-à-dire qu’un moniteur d’interface et son état sont maintenus en mémoire et transférés à un nouveau service lors de la disparition d’un service utilisé, et exhaustivité́, c’est-à-dire qu’un service surveillé ne peut pas contourner les observations du moniteur. Ensuite, pour éviter l’usage de références vers des services qui ne sont plus actifs, nous proposons un service de sécurité́ côté client (SSU Layer), qui permet de traiter ce problème de manière transparente. Si un service utilisé disparaît, la couche SSU peut soit substituer le service de manière transparente, soit lever une exception pour avertir explicitement le client. Cette couche SSU est basée sur une approche transactionnelle qui vise à préserver la cohérence des services actifs. Enfin, nous proposons d’intégrer les deux approches dans un nouveau système de surveillance (NewMS). Les NewMS hérite des principes des deux systèmes précédents : la résilience à la dynamicité, l’exhaustivité et la tolérance aux fautes. Il peut dynamiquement surveiller l’utilisation de services et traiter les références obsolètes de manière transparente. Ces trois propositions sont implémentées dans la plateforme OSGi. Nous avons développé une application simple qui simule un système de réservation de place, qui est monitoré par notre système. Nous avons également proposé différentes spécifications pour ce système. Nos résultats démontrent que le coût d’observation de notre moniteur est proche du coût d’un monitor classique, ne prenant pas en compte les problématiques liées à la dynamique. / Dynamic service-oriented architectures (D-SOA) focus on loosely coupled client- server interactions where both of them can appear and disappear at runtime. Our goal is to design monitoring systems for these architectures. Since classical monitoring systems are statically injected into the monitored services, they cannot properly handle the runtime services’ lifecycle. Moreover, when a service is substituted by a new one, other services may still use the old reference. This reference is kept in memory as a stale reference which induces some forbidden behaviors. This thesis contributes to design a monitoring system with resilient dynamicity that monitors services usage and is able to deal with stale references usage. This goal is achieved in three steps. Firstly, by considering the dynamicity of SOA systems in an open environment, we design a corresponding dynamic monitoring approach. We identify two key properties of the loosely coupled monitoring system: dynamicity resilience, i.e., after the unregistration of a service, its interface monitor and its current state are kept alive in memory and transferred to a new loaded service; comprehensiveness, i.e., the implementations of the monitored interface can’t bypass the monitor observations. Secondly, to avoid stale references usage, we propose a client-side safe service usage (SSU) layer to automatically handle them. If a used service disappears, then the SSU layer can either transparently substitute it or throw an exception to the client. This SSU layer is based on a transactional approach which aims to preserve the coherence of active services. Thirdly, we propose to integrate both approaches into a new monitoring system (NewMS). The NewMS inherits the principles of both systems: dynamicity resilience, comprehensiveness and fault tolerant. It can dynamically monitor service usage and transparently handle stale references of dynamic SOA systems. All the three propositions are implemented on OSGi-based platform. We develop a simple application that simulates an Airline Reservation system, which is monitored by our monitoring systems. We also develop various automata to handle the dynamicity of the Airline Reservation system in the NewMS. Our results demonstrate that the time cost of our monitoring systems is close to one of classical monitoring systems.
|
Page generated in 0.0345 seconds