Home - Smart-Edge-Lab/SeQaM GitHub Wiki
Service Quality Management (SeQaM)
Welcome to the SeQaM wiki!
The Service Quality Manager (SeQaM) is a tool developed to facilitate end-to-end service quality management for edge computing. The manager leverages telemetry for data collection from user equipment devices (UE), edge servers, and network components. This allows the correlation of multi-source information to identify and address the root causes of service quality degradation in edge computing. Furthermore, it allows the implementation of feedback mechanisms that enhance overall service quality in edge computing.
SeQaM can be used for:
- Data collection for end-to-end visibility and analysis for pinpointing the root causes of service quality degradation
- The creation of controlled experimental scenarios for performance evaluation
- Edge application testing and benchmarking
- Analytics for data-driven decision-making that ensures end-to-end service quality
- Data generation for model training.
Moreover, the manager is designed for seamless deployment in emulated, laboratory, and real-world environments, covering an edge application’s entire life cycle, from development to testing and runtime.
Motivation/Problem
Edge computing enables deploying compute and storage resources at the network's edge, closer to data sources. This reduces latency and bandwidth by sending data to a nearby edge server instead of a far-away data center. However, the distributed and heterogeneous nature of edge computing makes it difficult to ensure consistent and reliable service quality.
End-to-end service quality refers to the overall service quality of an edge application, encompassing the entire journey from the user device through the network to the edge server and back. To address the challenges that edge computing poses to guarantee end-to-end service quality, edge applications should implement adaptability techniques. These techniques enable applications to adjust their behavior in response to fluctuating conditions. Similarly, the edge infrastructure can be dynamically reallocated by shifting workloads between different edge servers based on current resource availability, network conditions, and application demands. In self-adaptive systems, this is typically achieved through an MAPE control loop (Monitor, Analyze, Plan, Execute), which allows for continuous optimization of performance by monitoring changes, analyzing data, planning necessary adjustments, and executing modifications.
SeQaM introduces a solution for researchers, developers, and infrastructure providers to develop, implement, and test solutions that enhance end-to-end service quality in edge applications such as augmented reality, connected and autonomous vehicles, UAVs, etc. We are happy to hear about your use case and plan together a service quality management solution.
Current Status
The manager consists of integrating a set of tools and interfaces that allow interaction with them. The source code is entirely developed in Python3 and is also containerized for easy integration and deployment.
The data collection is done using OpenTelemetry. Therefore, any framework and language supported by OpenTelemetry is also supported by SeQaM. Thus, your edge application can be written in Java, Python, Node.js, Go, PHP,.NET, Ruby, Elixir, and Rust.
This version is the first release of SeQaM. There are some things still missing and room for improvement. Therefore, your contribution to SeQaM is highly appreciated.
Contribution
See the Contributing file for detailed guidelines on how to contribute to this project.
Acknowledgment
This work was conducted as part of the project EMULATE, funded by the European Union and the German Federal Ministry of Economics and Climate Action under research grant 13IPC012.
Acknowledgment
The EMULATE project is part of the IPCEI-CIS (standing for Important Project of Common European Interest - Next Generation Cloud Infrastructure), funded by the European Union and the German Federal Ministry of Economics and Climate Action under research grant 13IPC012.