A context and application-aware framework for resource management in dynamic collaborative wireless M2M networks
Introduction
Collaborative M2M communication is becoming increasingly important due to the growing complexity of businesses and enterprises. Within any business, it is quite common to find teams of people working on the same project. These people may be using different devices, may have different roles within the project, and may be running different applications. In addition, many projects now utilize applications with challenging communication requirements such as video, audio, or any combinations of these Quality of Service (QoS) requirements. To address these challenges, a framework for collaborative communications is highly desired. This framework must address issues of interoperability, flexibility, and adaptability that are typically associated with collaborative communications, as well as the QoS requirements of the communication flows1 for different applications. Thus, this framework should guarantee seamless collaboration and communication between users even in the presence of dynamic network operation such as users leaving/joining the network or changing their roles or applications.
In order to design such a framework, several challenges have to be considered. First, the capabilities of the devices have to be discovered. Second, a model for collaboration has to be designed to achieve interoperability between devices. Third, it has to support different modes of communication such as real-time and non real-time. Fourth, the model has to be aware of the requirements and the restrictions of the users and aware of the dynamic operation of the network. In short, the model has to be context-aware and application-aware.
In this paper, a framework for collaborative communications is presented. This framework is composed of a context-aware software platform and a reasoning machine2 for managing the communication resources of the network. To illustrate this framework, we target a network where communication sessions are organized in workgroups. Each workgroup runs a set of applications with different QoS requirements. Therefore, a user can request from the server the formation of a new workgroup or to join an existing workgroup. Within any workgroup, users may be assigned “roles”, where different roles have different priority levels. Moreover, users may change roles or applications at any time by sending a request to the server. In addition, users may belong to multiple workgroups, where they may run different applications and have different roles in each group. A diagram of this network is shown in Fig. 1.
Our proposed framework considers multi-level adaptation mechanisms in order to ensure awareness of context, application and resources. To achieve this adaptation, a collection of networked application layer software components must be dynamically allocated and deployed on the different nodes hosted in the collaboration activity support network. Since collaborative sessions are dynamic and users׳ roles and tasks may change during the collaborative activities, an adaptive deployment of software components must be considered in these systems to ensure that the deployed components are suitable for the requirements of users and applications. Depending on the roles and tasks of a given user, appropriate software components have to be deployed on the associated machines. For instance, if a user joins a group and needs to collaborate with audio communication support, the system should be able to deploy appropriate audio components in his/her access device. An audio flow must be setup between this component and the other components deployed on the devices of the other participants with whom he/she needs to communicate. Hence, for this purpose, a new deployment schema is generated by the framework to ensure the application requirements. Moreover, in M2M networks, the machines are heterogeneous and the operating systems differ from a machine to another. Thus, when a machine joins the network, the deployment of software components should be adapted to the machine׳s characteristics in order to maximize the resources aliveness.
This dynamic deployment is required namely for establishing appropriate multimedia flows between users to maximize resources aliveness. The framework is aware of the dynamic requirements of the users; it also monitors the capabilities of the devices and several resource parameters such as battery levels, memory usage, and processing capabilities. However, satisfying application layer requirements in these environments becomes more challenging in the context of dynamic allocation of software components. For instance, if a given communication channel between two or more machines cannot support the exchange of video because of a low bandwidth context, then this communication channel has to be changed in order to support the exchange of video data flows. If no other channel is available, the framework has to change the flow data type to audio or text instead of video. In this case, audio or text software components have to be allocated and installed on-the-fly during the collaboration activities. Consequently, the framework has to monitor the network channels and the QoS requirements of the communication flows in order to maintain connectivity. To achieve these network-to-application adaptation we use a reasoning machine with the objective of achieving QoS requirements of communication flows between users. This reasoning machine is designed using the mathematical tool known as Weighted Cognitive Maps (WCMs) (Dickerson and Kosko,, Glykas, 2010, Ibnkahla, 2012). This tool was chosen because of its powerful inference capabilities and reduced complexity. In WCMs, every end-to-end goal3 (such as throughput or delay), process (such as routing or transmit power control), or environment variable (such as bit error rate or Packet Loss Ratio (PLR)) is represented as a vertex in the map, and edges of the map connect vertices that are causally related. The inference properties of the WCM are used to determine the appropriate actions to be taken in response to changes in the network using only knowledge of the causal relationships between concepts and simple mathematical operations. For these reasons, WCMs are used in this paper to perform tasks such as admission control, scheduling, among other resource management tasks. The WCM can consider multiple processes and variables and perform reasoning while considering the end-to-end goals of the network and the QoS requirements of the communication flows.
The main contributions of this paper are
- (i)
Developing a context-aware framework for collaborative M2M networks in pervasive environments enabling dynamic allocation of application software components, and
- (ii)
Proposing the Weighted Cognitive Map (WCM) tool for resources management in order to enable the application to self-organize while considering multiple objectives and low-level constraints in a dynamic context.
Even though WCM is a well-established tool, it is used for the first time in this paper to design a reasoning machine that targets QoS support. El-Mougy and Ibnkahla (2014) used WCM to balance between conflicting objectives (particularly energy consumption and throughput) in Wireless Sensor Networks (WSN). However, the WCM in El-Mougy and Ibnkahla (2014) did not consider admission control, application-awareness, or QoS support. The work in this paper uses WCM in a novel way that specifically targets M2M networks with various challenging applications.
The remaining sections of this paper are organized as follows. Section 2 reviews some important related research work. Section 3 presents the details of the first part of the proposed collaborative framework, which is the context-aware software platform. This will be followed by the WCM reasoning machine in Section 4. Afterwards, Section 5 presents an illustrative example of the complete framework while Section 6 provides extensive computer simulations. Finally, Section 7 offers some concluding remarks.
Section snippets
Related work
Several efforts have been carried out by the computer communications community on context-awareness in collaborative environments. A majority of these solutions deal with the dynamic aspects of the collaboration and communication issues. However, to the best of our knowledge very few works treat specifically the problem of providing tools and adaptation mechanisms for building context-aware collaborative applications with dynamic reconfiguration of the application layer software components at
Software platform
The context-aware software platform architecture proposed in this paper is shown in Fig. 2. Semantic Web technologies (Berners-Lee et al., 2001) have been used at different levels of the architecture in order to enable reasoning mechanisms that ensure the dynamic reconfiguration of the software components. The following sections describe the architecture of Fig. 2.
Reasoning machine based on WCM
In this section the second part of the proposed framework is described, which is a reasoning machine designed using WCMs (Dickerson and Kosko,, Glykas, 2010). This machine is designed to support the needs of the software platform shown in Fig. 2, perform network management, and achieve the QoS levels required by the applications run by the software platform. However, before the details of the reasoning machine are presented, it is important to mention that WCM is a mathematical tool that can be
Illustrative example
In this section we present an illustrative example that highlights the possible applications of the proposed platform. We describe the application of the platform in a software engineering project. The goal is to ease the development of complex products by satisfying users׳ needs and maximizing network lifetime. Satisfying users׳ needs is addressed through the dynamic deployment of software components that ensure effective communication within the different workgroups; while maximizing the
Simulation results
In this section, the performance of the application and context-aware WCM system is evaluated using computer simulations. A comprehensive simulator was created in MATLAB that considers correlated shadowing and multi-path fading as well as collisions. In addition, node mobility with pedestrian speeds is simulated using the random walk model. The proposed system is compared to several known protocols. Particularly, the admission control protocols known as QoS-Aware Routing and Admission Control
Conclusion
This paper proposed an application and context-aware framework for resource management in dynamic wireless M2M networks. The framework is composed of a software platform and a reasoning engine. The software platform is designed to be context-aware and application-aware and uses multi-level adaptations to support dynamic collaboration of devices. On the other hand, the reasoning machine is based on WCMs, which enable full system connectivity while maximizing throughput and fulfilling users׳
References (44)
- et al.
A cognitive framework for WSN based on weighted cognitive maps and Q-learning
J Ad Hoc Netw
(2014) - et al.
Definition and use of computation independent models in an MDA-based groupware development process
Sci Comp Progr
(2007) - et al.
Qos analysis for component-based embedded software: model and methodology
J Syst Softw
(2006) - et al.
The application of interoperability requirement specification and verification to collaborative processes in industry
Comput Ind
(2012) - Andonoff E, Bouaziz W, Hanachi C. A protocol ontology for inter-organizational workflow coordination. In: Proceedings...
- Ben Alaya M, Baudin V, Drira K. Dynamic deployment of collaborative components in service-oriented architectures. In:...
- et al.
The semantic web
(2001) - et al.
Call admission control based on adaptive bandwidth allocation for wireless networks
IEEE J Commun Netw
(2013) - Chuong C, Torabi T, Loke SW. Towards context-aware task recommendation. In: Proceedings of pervasive computing (JCPC);...
- et al.
The awareness network, to whom should I display my actions? And, whose actions should I monitor?
IEEE Trans Softw Eng
(2011)
OWL web ontology language: reference
Putting computing in context: an infrastructure to support extensible context-enhanced collaborative applications
ACM Trans Comput–Hum Interact
Fuzzy cognitive maps: advances in theory, methodologies, tools, and applications
QoS-aware routing and admission control in shadow-fading environments for multirate MANETs
IEEE Trans Mob Comput
Cited by (10)
The state of framework development for implementing reasoning mechanisms in smart cyber-physical systems: A literature review
2019, Journal of Computational Design and EngineeringHierarchy of smart awareness in assembly 4.0 systems
2019, IFAC-PapersOnLineScalable Personalized IoT Networks
2019, Proceedings of the IEEEA Fuzzy Congestion Control Protocol Based on Active Queue Management in Wireless Sensor Networks with Medical Applications
2018, Wireless Personal CommunicationsAutonomic dynamically reconfigurable architectures for future communication systems
2017, 9th International Conference on Management of Digital EcoSystems, MEDES 2017A Data-Oriented M2M Messaging Mechanism for Industrial IoT Applications
2017, IEEE Internet of Things Journal