Autonomous management of QoS at middleware level in IoT
Gestion autonomique de la QoS au niveau middleware dans l’IoT
Résumé
The Internet is experiencing a drastic expansion again. In addition to conventional terminals, it now allows to interconnect all kinds of connected objects allowing the capture of events from the considered environment, but also the remote control of this environment. Billions of these objects are thus led in 2020 to contribute to the advent of the Internet of Things (IoT). This paradigm, which extends the Machine-to-Machine (M2M) concept, paves the way for new uses such as home automation, remote monitoring, or even the factories of the future. Several architectures have been proposed to structure the IoT. Their foundation is based on a vision in four levels: (1) Equipment level, which includes the IoT equipment, (2) Network level containing the various technologies for data exchanges, (3) Middleware level, which offers applications an abstraction layer for underlying levels, and finally, (4) Application level, which consists of the set of applications contributing, via their interactions with the connected objects, to the realization of a business activity. Our work is positioned at Middleware level and is based on the architecture defined in the SmartM2M and then oneM2M standards. Several challenges have to be (re)considered in this context. We are mainly interested in the Quality of Service (QoS) issue expressed by some business applications. Proposals addressing this issue essentially target the Network level. For the Middleware level, standards focus mainly on the proposal of architectures and functional services. The non-functional requirements, typically QoS, are little or not considered. Meanwhile, proprietary solutions do not consider the dynamic evolution of the context and requirements. In response to these limitations, we propose a dynamic management approach, i.e. during the execution of the system, and autonomous, i.e. without human intervention. The proposed management, guided by models, focuses on behavioural and structural reconfiguration actions related to application traffic and/or Middleware resources. The first contribution of this thesis deals with the specification, design, implementation and evaluation of QoS management mechanisms. The second contribution is the specification and design of a software architecture for the self-adaptive QoS management at the Middleware level according to one of the SmartM2M and oneM2M standards. This architecture, called IoT-Q, is based on the application of hierarchical policies in the development of adaptation actions, as well as on the paradigm of Autonomic Computing. The third contribution proposes and validates an analytical model, based on the queuing theory, for the OM2M Middleware (open source implementation of the SmartM2M standard). This model allows to estimate the performance of the involved Middleware entities. The application of this model to the monitoring phase is studied under two approaches, reactive and proactive, coupled with Complex Event Processing (CEP) techniques for the first approach, and a ARMA (Auto -Regressive Moving Average) prediction model for the second one. The fourth contribution concerns the planning of resources-oriented mechanisms that we propose to guide following an approach coupling the analytical model with a model of the system based on graphs. This model allows to represent and consider the possible configurations of the involved entities and their interactions. The rules of graphs matching and rewriting that ensure the conformity of the system with the architectural style are also produced. As a fifth contribution, a case study dealing with a crisis situation in an urban transport environment is also proposed to illustrate the application of the proposed models based on graphs.
L’Internet connaît à nouveau une expansion drastique. En plus des terminaux classiques, il permet aujourd’hui d'interconnecter toute sorte d’objets connectés permettant la capture d’événements depuis l’environnement considéré, mais également le contrôle à distance de cet environnement. Plusieurs milliards de ces objets sont ainsi amenés à l’horizon 2020 à contribuer à l'avènement de l’Internet des Objets (IoT). Ce paradigme, qui étend le concept de Machine-to-Machine (M2M), ouvre la voie à de nouveaux usages tels que la domotique, la télésurveillance, ou encore les usines du futur. Plusieurs architectures ont été proposées pour structurer l’IoT. Leur fondement est basé sur une vision en quatre niveaux : le niveau Équipement, qui comporte les objets connectés, le niveau Réseau contenant les différentes technologies nécessaires aux échanges, le niveau Intergiciel (ou Middleware) qui offre aux applications une couche d’abstraction des niveaux sous-jacents, et enfin le niveau Application qui consiste en l’ensemble des applications concourant, via leurs interactions avec les objets connectés, à la réalisation d’une activité métier. Nos travaux se positionnent au niveau Middleware sur la base de l’architecture définie dans le cadre des standards SmartM2M puis oneM2M. Plusieurs problématiques sont amenées à être (re)-posées dans ce contexte. Nous nous intéressons essentiellement à celle de la qualité de service (QoS - Quality of Service) exprimée par certaines applications métiers. Les solutions proposées en réponse à cette problématique concernent principalement le niveau Réseau. Au niveau Middleware, les standards se focalisent essentiellement sur la proposition d’architectures et de services fonctionnels. Les besoins non fonctionnels, typiquement orientés QoS, ne sont que peu ou pas considérés. Parallèlement, les solutions propriétaires ne considèrent pas l’évolution dynamique du contexte et des besoins. Face à ces limites, nous proposons une approche de gestion dynamique, i.e. durant l’exécution du système, et autonome induisant un minimum d’intervention humaine. La gestion proposée, guidée par des modèles, porte sur des actions de reconfiguration comportementales et structurelles touchant au trafic applicatif et/ou sur les ressources de niveau Middleware. La première contribution de cette thèse porte sur la spécification, la conception, l’implémentation et l’évaluation de mécanismes de gestion de la QoS. La deuxième contribution consiste en la spécification et la conception d’une architecture logicielle pour la gestion auto-adaptative de la QoS au niveau Middleware suivant l’un ou l’autre des standards SmartM2M et oneM2M. Cette architecture, intitulé IoT-Q, repose sur l’application de politiques hiérarchiques dans l'élaboration des actions d’adaptation, ainsi que sur le paradigme de l’Autonomic Computing. La troisième contribution consiste en la proposition et la validation d’un modèle basé sur la théorie des files d’attente du Middleware OM2M (implémentation open source du standard SmartM2M), permettant d’estimer les performances des entités Middleware impliquées. Son application à la phase de monitoring est étudiée sous deux approches, réactive et proactive, en couplage avec des techniques de CEP (Complex Event Processing) pour la première approche, et d’un modèle de prédiction ARMA (Auto-Regressive Moving Average) pour la deuxième. La quatrième proposition porte sur la planification des mécanismes orientés ressources, que nous proposons de guider par une approche couplant le modèle analytique avec un modèle du système à base de graphes. Ce modèle permet de représenter et de prendre en compte les configurations possibles des entités impliquées et de leurs interactions. Des règles d’appariement et de réécriture de graphes permettant d’assurer la conformité du système avec le style architectural sont également produites. En cinquième contribution, un cas d’étude portant sur une situation de crise dans un environnement de transport urbain est élaboré pour illustrer l’application de ces derniers modèles.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...