Skip to content

Akkodis/5GMETA

The 5GMETA Plateform

5GMETA logo.

Table of Content

  1. Introduction
    1. Overview
    2. User Profiles
    3. Platform instantiation of Low Latency Data services
  2. Architecture
    1. Cloud Platform
    2. MEC Platform
    3. Sensors and Devices
    4. Third Parties
  3. Deployment of the 5GMETA Platform
    1. Cloud Platform
    2. MEC Platform
    3. Sensors and Devices
  4. AKKODIS' new 5GMETA Platform Demonstrator
    1. Cloud Platform
    2. MEC Platform
  5. Governance
  6. Credits
  7. Conclusions and Roadmap
  8. Cite this work
  9. Where to go from here
    1. Fundamental Concepts
    2. Platform Monitoring
    3. Tutorials
    4. Third parties
    5. Tests

Introduction

This project is a new version of the 5GMETA open source platform published at the end of the H2020 5GMETA project. The original project is available here: https://github.com/5gmeta/5gmeta

The 5GMETA Platform is an open data-centric Internet of Things (IoT) messaging platform for Connected and Automated Mobility (CAM) applications and service providers. The 5GMETA Platform creates a CCAM data monetization ecosystem that allows different stakeholders along the data value chain to exploit data in a more effective and profitable way.

A fundamental principle supported by the 5GMETA Platform is that of achieving a total decoupling between Data Producers and Data Consumers. This means that Data Producers do not need to be directly connected to Data Consumers. The 5GMETA Platform acts as a broker between Data Producers (vehicles or RSUs) and Data consumers (third-party applications or services). However, the 5GMETA Platform is not a simple publish-subscribe broker, and it includes functions for data management, data monetization and cybersecurity as well as providing data access mechanisms. The 5GMETA platform provides secure end-to-end data management services such as data anonymization, encryption, packaging/formatting, computing and sharing mechanisms. In contrast with a Data Lake, the 5GMETA Platform provides live data delivery. The users of the 5GMETA Platform receive the data from the subscribed dataflows in a continuous manner with no storage service within the 5GMETA Platform rather than the required memory buffering.

The 5GMETA open platform aims to leverage car-captured data to stimulate, facilitate and feed innovative products and service. This platform intends to catalyse data and provide OEMs, SMEs and high-tech start-ups with them in order to feed their innovative services and ideas and, ultimately, generate revenues.

It is designed to operate as a common infrastructure for implementing data pipelines for heterogeneous Connected, Cooperative and Automated Mobility (CCAM) applications.

Platform Overview

5GMETA Plateform is an interactive platform that functions as a broker between data producers (such as vehicles or road sensors) and data consumers (such as app providers). With the 5GMETA Platform, data consumers can subscribe to specific data flows and decide how to use and deploy them: process them, store them or discard them. The 5GMETA Platform allows data to be decoupled from their producers, thus eliminating the necessity of creating direct links between producers and consumers. Nevertheless, the 5GMETA Platform does not only act as a broker, but it also includes functions that address data management, data monetization and cybersecurity.

Architecture of the 5GMETA Platform

5GMETA Platform User profiles definition

Three main profiles have been identified to interact with the data platform and are the following:

  • CCAM services and applications developers
  • Sensors and Devices providers
  • Infrastructure providers

Figure below illustrates the main relation of these different categories with the 5GMETA Platform and the principal stakeholders for each of these three profiles.

User profiles overview

Platform instantiation of Low Latency Data services

Third Parties utilizing the 5GMETA Platform can request the deployment of a CCAM application in a MEC server of the 5GMETA platform. By leveraging the direct access to the 5G network of data producers, these deployments enable swift information retrieval, significantly reducing latency. Additionally, the MEC offers optimized edge computing capabilities, enhancing scalability, reliability, and resource utilization.

To ensure the security and integrity of the MEC, a stringent deployment procedure is followed. The procedure for this deployment works as follows:

  1. Contacting the 5GMETA Operator: the Third Party provides essential artifacts, including the Helm chart and the VNF (Virtual Network Function) descriptor, to the 5GMETA Operator.
  2. Quarantine Procedure: the 5GMETA Operator deploys the application in a dedicated test environment.
  3. Testing Application Behaviour: during this phase, the 5GMETA Operator conducts comprehensive testing to validate the application correct behaviour. These tests verify the proper utilization of the MEC resources and the correct access to the 5GMETA data.
  4. Deployment in the MEC environment: once the application passes the tests, it can be deployed on demand by the Third Party, using the same technical procedure used to deploy the modules of the MEC pipelines.

Procedure to instantiate a Low Latency Data service

Terminology

Tiles

Geographic Data Tiles are a way of organizing and distributing large datasets of geographic information, such as satellite imagery or digital maps. Each tile represents a specific geographic area, and the data within each tile is typically organized into a regular grid or matrix. By dividing data into tiles, it becomes easier to manage and distribute large datasets, as users can selectively download only the tiles they need.

In this consuming guide file, we provide information about the geographic areas covered by our dataset tiles Datasets available within tiles , along with instructions on how to access and use the data. By using tiles to organize and distribute our data, we aim to make it more accessible and easier to use for a wide range of applications.

Datatypes

A Datatype is a type of data that the S&D share and a Pipeline in a MEC accept and handle. 5GMETA Platform provide wide range of Datatypes :

Example of C-ITS datatype

  • Images in JPG Format

Example of Image datatype

  • Video Streams in H.264 video standard Format (x264 implementation)

Dataflow

A Dataflow is a unique flow/stream of produced data that is shared by a S&D through a Pipeline in a MEC.

Pipeline

A Pipeline is a group of modules (containers) running in a MEC to handle a specific data-type. Each module can process the data received subscribing a queue/topic and generate output data in a new queue/topic into the MEC’s message broker. A module is a container running in a MEC that hande a specific data-type or group of data-type (e.g. C-ITS messages). Modules should be Pub/Sub application.

InstanceTypes

5GMETA Platform offers a range of computing resources for users to choose from which are regrouped in Instance Types: Instance types refer to different configurations of computing resources that are available for users to choose from when setting up their virtual machines or cloud computing instances. In this example, we have four different instance types with varying amounts of CPU, GPU, and memory resources:

  1. "small" instance type: This instance type has 2 CPUs, 2GB of memory, and no GPU.
  2. "medium" instance type: This instance type has 4 CPUs, 4GB of memory, and no GPU.
  3. "large" instance type: This instance type has 8 CPUs, 8GB of memory, and no GPU.
  4. "advanced" instance type: This instance type has 8 CPUs, 8GB of memory, and a GPU.

The instance types are identified by unique type IDs (type_id) and human-readable names (type_name) to make it easier for users to select the type of instance that best suits their needs.

Example of Instance types

3rd-parties

A Third Party application is an application/service lying outside the 5GMETA Platform, which act as a Third Party, consuming 5GMETA Data, and potentially pushing events to the 5GMETA platform (e.g. a CCAM application).

Architecture

The 5GMETA platform has 3 main components: Cloud, MEC and Sensors&Devices.

Overview of the 5GMETA Platform components

This section presents the repositories of the main modules of the 5GMETA Platform orgasined by platform components: Cloud, MEC and Sensors and Devices.

Platform Component Modules Description
Cloud Platform An API server This is the main API used by different MECs to access the Cloud Platform services. This new API server results from the merge of cloudinstance-ap, dataflow-api, license-api and discovery-api.
Apache Apisix Apisix is used as the API gateway for the Cloud Platform.
Keycloak Identity and Access Management by Keycloak using the keycloak Kubernetes Operator. PostgreSQL is used a the database vendor.
Dashboard The dashboard provides a graphical interface to the data consumers allowing them to benefit from the 5GMETA platform features that are otherwise only accessible using API requests.
5GMETA Kafka A modified and maintained version of Confluentinc Kafka for C-ITS ata exchange.
MariaDB MariaDB as a DBMS for the dataflows and discovery.
MEC Platform Apache ActiveMQ ActiveMQ message broker to be deployed in the MEC.
An API server This is the main API of the MEC Platform which is based on the merge of edgeinstance-api, registration-api.
video-stream-broker A WebRTC based proxy that interfaces with Apache Apisix for video stream on the MEC Platform.
Apache Apisix Apisix is used as the API gateway for the MEC Platform.
Sensors and Devices Contains a set of Vagrant files and Python codes to test a vehicle.

CLOUD Platform

5GMETA Cloud platform is deployable in any Kubernetes cluster. A deployment is illustrated by the next figure which also shows the modules that form this Cloud Platform.

Illustration of the Cloud Platform

py5gmeta for CCAM application development

The 5GMETA platform provides a Python library called py5gmeta to facilitate CCAM applications development and interraction with the platforms.

After all the necessary operations have been performed, the 5GMETA platform processes the request and provides the credentials needed to connect to the platform and Kafka topic to start consuming and building their application on top of 5GMETA.

5GMETA Platform APIs to Sensors and Devices developers

MEC Platform

The architecture of the MEC Platform and its modules are illustrated by the figure below.

MEC Platform

Sensors and Devices

The 5GMETA platform exposes a set of APIs for Sensor&Devices developers to register and manage data flows to start sending Data to the platform, these building blocks include Discovery and Registration as described below. A unique API Server and py5gmeta allow:

  • The building block allows Sensors and Devices developers to discover available MECs and their locations based on their geographical location and tile coverage to be forwarded to the nearest MEC to register your dataflow.
  • This building block allows developers to register a data flow by providing metadata related to the data flow. The output of this method is a JSON containing the ID of the generated data flow, the topic where to publish, and a Boolean indicating whether there is a consumer listening for that type of data.

Once a consumer connects to the data registered, the 5GMETA platform will update the Boolean value in order to start producing data to the connected parties. This will trigger a keepalive mechanism to determine which data flows are still active. The output of this method is the same information retrieved at the registration, including the ID of the data flow and its metadata.

5GMETA Platform APIs to Sensors and Devices developers

5GMETA platform supports three types of data provided by sensors and devices: cits messages in JSON, images and video streaming.

Third Parties

c.f 5GMETA Platform interactions with 3rd-parties

Deployment

Cloud Platform

Before deploying the Cloud Platform, modify its Helm chart values especially. For more details on the deployment of the Cloud Platform see: README

MEC Platform

For more details on the deployment of the MEC Platform see: README

Sensors and Devices

For more details on the deployment of the MEC Platform see: README

AKKODIS 5GMETA Platform Demonstrator

The testing of the 5GMETA project is detailed in this README

The 5GMETA Demonstrator is accessible using the following URLs. To access this demonstrator, a user must be registered by providing its public IP. The access control is currently based on IP whitelisting.

API server:

5GMETA Kafka:

Other services:

Access to the MEC Platform

After a successful deployment, the instance of the MEC Platform is accessible using the following URLs. The different services can be accessed in the next ports:

Credits

The work presented in this repository was a collaborative effort by several teams and the following contributors:

  • Angel Martin,
  • Arslane HAMZA-CHERIF,
  • Djibrilla Amadou Kountche
  • Federico Princiotto,
  • Felipe Mogollon,
  • Francesco Aglieco,
  • Juan Diego Ortega
  • Kamel Khenessi,
  • Khaled Chik,
  • Laeticia Calice,
  • Mandimby Ranaivo R. ,
  • Martin Jombe Moukouri,
  • Mikel Seron,
  • Mohamed Tarhouni,
  • Pierre Merdrignac,
  • Quentin Wephre,
  • Ricardo Benedetti,
  • Theo Dupont,
  • Wisal Mechi,

🙋 Contributing to the platform

Contributions are welcome 😊 See how to contribute.

Conclusion and Roadmap

This document describes several aspects of 5GMETA Platform including its architecture and deployment in development environments. The reader is invited to visit the following website for more details about the H2020 5GMETA project: https://cordis.europa.eu/project/id/957360

Papers published during the project

  1. Apruzzese, Michela, et al. Connecting Data Providers with Data Consumers: the 5GMETA Data Monetisation Framework. 2023 IEEE 47th Annual Computers, Software, and Applications Conference (COMPSAC). IEEE, 2023.
  2. Mogollón, Felipe, et al. "Benchmarking 5G MEC and Cloud infrastructures for planning IoT messaging of CCAM data." 2023 IEEE 26th International Conference on Intelligent Transportation Systems (ITSC). IEEE, 2023.
  3. Kountche, Djibrilla Amadou, et al. "Monetization of and Access to in-Vehicle data and resources: the 5GMETA approach." arXiv preprint arXiv:2208.11335 (2022).
  4. Canova, Clara, et al. "Driving Safety & Awareness Cooperative Business Model exploiting the 5GMETA platform." 2022 IEEE Future Networks World Forum (FNWF). IEEE, 2022.

About

5GMETA (WO0000000250002)

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published