Hack2022 2nd Prize: Difference between revisions

From MECwiki
Jump to: navigation, search
No edit summary
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
<p class="left" style="font-size:26px;"> ←''[[ETSI_-_LF_MEC_Hackathon_2022|MEC Hackathon 2022]]''<p>
<br>
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}


Line 9: Line 11:


= Team=
= Team=
 
[[File:hack2022-pedraforca_team.png|600px|center|top|class=img-responsive]]
<br>
<div class="flex-row row">
<div class="flex-row row">


Line 15: Line 18:
<div class="panel panel-default">
<div class="panel panel-default">
<div class="panel-body">
<div class="panel-body">
Team '''Pedraforca'''  
Team '''Pedraforca'''
* Rasoul Nikbakht Silab, CTTC (Centre Tecnològic de Telecomunicacions de Catalunya)
from ''' CTTC ''' (Centre Tecnològic de Telecomunicacions de Catalunya) and ''' Vicomtech '''
* Rasoul Nikbakht Silab, CTTC
* Michail Dalgitsis, Vicomtech
* Michail Dalgitsis, Vicomtech
* Sarang Kahvazadeh, CTTC
* Sarang Kahvazadeh, CTTC
* Sergio Barrachina, CTTC
* Sergio Barrachina-Muñoz, CTTC


</div>
</div>
Line 39: Line 43:


</div><!-- end of row 1-->
</div><!-- end of row 1-->


= Introduction =  
= Introduction =  
Line 50: Line 55:


= Experimental scenario =
= Experimental scenario =
<p class="center" style="font-size:28px;"><b>a MEC-enabled cloud-native 5G network with over-the-air transmissions</b><p>
<p class="center" style="font-size:22px;"><b>a MEC-enabled cloud-native 5G network with over-the-air transmissions</b><p>


<br>
<br>


== Infrastructure (core, edge and RAN) ==
== Infrastructure (core, edge and RAN) ==
The experimental scenario will consist of a 5G network spanning three domains: core (at the cloud), edge (realized as MEC), and RAN (provided by a commercial gNB). The core and edge domains will consist of virtual machines acting as commercial/consumer off-the-shelf (COTS) servers and the virtual networks to interconnect them, so to provide computation/storage and networking resources, respectively. The RAN will be realized using the Amarisoft Callbox as gNB.
* The experimental scenario consists of a 5G network spanning three domains: core (at the cloud), edge (realized as MEC), and RAN (provided by a commercial gNB).  
 
* The core and edge domains consists of virtual machines acting as commercial/consumer off-the-shelf (COTS) servers and the virtual networks to interconnect them, so to provide computation/storage and networking resources, respectively. The RAN is realized using the Amarisoft Callbox as gNB.
[[File:Hack2022-pedraforca-architecture.png|600px|center|top|class=img-responsive]]


== Kubernetes / Cloud-native ==
== Kubernetes / Cloud-native ==
Our deployment will have a cloud-native flavor, hence both the network functions (NFs) in the core and the MEC applications running on the edge will be realized as dockerized containers. The 5G core NFs will be based on the Open5GS open-source project. Remarkably, each NF will run as a separate containerized NF (CNF). To that aim, we will rely on Kubernetes for easing the orchestration of a cluster composed of the core and edge nodes. Further, in order to enable MEC capabilities, we will i) deploy UPF(s) at the edge, and ii) develop and implement a MEC platform (MEP) to pull metrics from the gNB so to provide the Radio Network Information Service (RNIS).
* Our deployment has a cloud-native flavor, hence both the network functions (NFs) in the core and the MEC applications running on the edge are realized as dockerized containers.  
 
* The 5G core NFs is based on the Open5GS open-source project. Remarkably, each NF runs as a separate containerized NF (CNF). To that aim, we relies on Kubernetes for easing the orchestration of a cluster composed of the core and edge nodes. Further, in order to enable MEC capabilities, we i) deploy UPF(s) at the edge, and ii) develop and implement a MEC platform (MEP) to pull metrics from the gNB so to provide the Radio Network Information Service (RNIS).




== Integration of MEC API with Amarisoft RAN ==
== Integration of MEC API with Amarisoft RAN ==
ETSI MEC offers a plethora of open APIs to enable communication with edge and network resources. The one which is more related to interact with our 5G network implementation is the MEC012 RNIS API. Specifically, for the RAN part we will be working with a commercial solution such as the Amarisoft gNB, in which the connected users will access the MEC applications. Therefore, an integration between Amarisoft RAN and RNIS is needed.
* ETSI MEC offers a plethora of open APIs to enable communication with edge and network resources. The one which is more related to interact with our 5G network implementation is the MEC012 RNIS API.  
More specifically, the interaction between the user equipment or the 5G network administrators with Amarisoft is done through a proprietary WebSocket API. Thus, one of our main contributions will be to map WebSocket actions to the RNIS API, in order to extract all the appropriate information for the users and their QoS requirements.
 
* Specifically, for the RAN part we are working with a commercial solution such as the Amarisoft gNB, in which the connected users access the MEC applications. Therefore, an integration between Amarisoft RAN and RNIS is needed.
 
* More specifically, the interaction between the user equipment or the 5G network administrators with Amarisoft is done through a proprietary WebSocket API. Thus, one of our main contributions is to map WebSocket actions to the RNIS API, in order to extract all the appropriate information for the users and their QoS requirements.


== Deployment of virtual classroom application ==
== Deployment of virtual classroom application ==
Akraino virtual classroom blueprint is a classroom app simulator that provides a virtual reality classroom with teachers and students. In this simulated app, teachers and students can interact with each other.
* Akraino virtual classroom blueprint is a classroom app simulator that provides a virtual reality classroom with teachers and students. In this simulated app, teachers and students can interact with each other.
The main components of Akraino virtual classroom blueprint are Jenkins Master, Tars Master, and Tars Agent with AR/VR client
[[File:Hack2022-Optare-virtualclass.png|400px|center|top|class=img-responsive]]
Hack2022-Optare-virtualclass.png


These components will be dockerized and deployed in a cloud-native fashion, in which the virtual classroom server runs over the Kubernetes infrastructure as a pod to conduct our experiment.
* The main components of Akraino virtual classroom blueprint are Jenkins Master, Tars Master, and Tars Agent with AR/VR client
[[File:Hack2022-pedraforca-virtualclass.png|600px|center|top|class=img-responsive]]
 
 
* These components are dockerized and deployed in a cloud-native fashion, in which the virtual classroom server runs over the Kubernetes infrastructure as a pod to conduct our experiment.




Line 77: Line 91:
''' ML-based control of the RAN and edge infrastructure using the data collected from MEC APIs '''
''' ML-based control of the RAN and edge infrastructure using the data collected from MEC APIs '''
<br>
<br>
MEC APIs collect information about different components and parameters of the 5G networks. Using these APIs and ML-based tools, we can make a decision engine that monitors/adjusts the RAN and edge infrastructures to meet required KPIs or scale the deployed applications.
* MEC APIs collect information about different components and parameters of the 5G networks. Using these APIs and ML-based tools, we can make a decision engine that monitors/adjusts the RAN and edge infrastructures to meet required KPIs or scale the deployed applications.
Regarding the RAN part, we evaluate the user latency and bandwidth and use RNIS API to adjust RAN parameters based on the service requirements. For instance, this setting can
 
guarantee the students in the virtual classroom have sufficient bandwidth for streaming and low latency for interacting with classmates and teachers.
* Regarding the RAN part, we evaluate the user latency and bandwidth and use RNIS API to adjust RAN parameters based on the service requirements. For instance, this setting can guarantee the students in the virtual classroom have sufficient bandwidth for streaming and low latency for interacting with classmates and teachers.
Regarding the edge infrastructure, other ETCI MEC APIs can be used for scaling the services and applications. We deploy ML-based tools to predict the demand for edge applications and scale up and down the services accordingly. In the case of the virtual classroom, each classroom could be seen as a different pod, and virtualized hardware resources can be allocated based on the classroom instance and the number of students.
 
Due to the limited resources available in the edge servers and 5G cells, the optimum resource allocation becomes a critical task. As a result, we plan to use different analytical and data-driven techniques to handle the resources in an (close to) optimal way.
* Regarding the edge infrastructure, other ETCI MEC APIs can be used for scaling the services and applications. We deploy ML-based tools to predict the demand for edge applications and scale up and down the services accordingly. In the case of the virtual classroom, each classroom could be seen as a different pod, and virtualized hardware resources can be allocated based on the classroom instance and the number of students.
 
* Due to the limited resources available in the edge servers and 5G cells, the optimum resource allocation becomes a critical task. As a result, we plan to use different analytical and data-driven techniques to handle the resources in an (close to) optimal way.
<!--
<!--


Line 90: Line 106:
<br>
<br>
-->
-->
= Software resources =
Summarized any open-source or publicly available (even proprietary) software that you utilized
* K8s (kubespray), Prometheus and Grafana
* Open5Gs, UERANSIM, and Amarisoft (RAN)
* Nginx, FFmpeg, docker-compose (video on demand streaming)
* Pytorch, Gym, Flask (Machine learning part)
* Swagger editor, Swagger generated server and client
* A video-on-demand application which is publicly available at https://github.com/RasoulNik/VoD.git
<br>


= Project Videos =
= Project Videos =

Latest revision as of 09:10, 28 March 2024

MEC Hackathon 2022


2nd Prize Award

Virtualized mobile and edge infrastructures with OpenAPI integrations


Team

Hack2022-pedraforca team.png


Team Pedraforca from CTTC (Centre Tecnològic de Telecomunicacions de Catalunya) and Vicomtech

  • Rasoul Nikbakht Silab, CTTC
  • Michail Dalgitsis, Vicomtech
  • Sarang Kahvazadeh, CTTC
  • Sergio Barrachina-Muñoz, CTTC
Edge Hackathon 2022 - 2nd Place.jpg


Introduction

We propose to integrate the MEC Radio Network Information Service (RNIS) API with Amarisoft RAN and edge infrastructure.

This integration enables monitoring/control of the RAN/edge resources. In addition, we use ML-based tools for (close to) optimum resource allocation and fulfillment of different KPIs such as bandwidth and latency.

To test our idea, we deploy a private 5G network with several edge nodes, where each node hosts an AR/VR application (a virtual classroom).

This proposal provides a real-life use-case and builds an open-source library that parses the MEC APIs to a commercial/research-based RAN product, which can be used by other teams for accelerating MEC API adoption.


Experimental scenario

a MEC-enabled cloud-native 5G network with over-the-air transmissions


Infrastructure (core, edge and RAN)

  • The experimental scenario consists of a 5G network spanning three domains: core (at the cloud), edge (realized as MEC), and RAN (provided by a commercial gNB).
  • The core and edge domains consists of virtual machines acting as commercial/consumer off-the-shelf (COTS) servers and the virtual networks to interconnect them, so to provide computation/storage and networking resources, respectively. The RAN is realized using the Amarisoft Callbox as gNB.
Hack2022-pedraforca-architecture.png

Kubernetes / Cloud-native

  • Our deployment has a cloud-native flavor, hence both the network functions (NFs) in the core and the MEC applications running on the edge are realized as dockerized containers.
  • The 5G core NFs is based on the Open5GS open-source project. Remarkably, each NF runs as a separate containerized NF (CNF). To that aim, we relies on Kubernetes for easing the orchestration of a cluster composed of the core and edge nodes. Further, in order to enable MEC capabilities, we i) deploy UPF(s) at the edge, and ii) develop and implement a MEC platform (MEP) to pull metrics from the gNB so to provide the Radio Network Information Service (RNIS).


Integration of MEC API with Amarisoft RAN

  • ETSI MEC offers a plethora of open APIs to enable communication with edge and network resources. The one which is more related to interact with our 5G network implementation is the MEC012 RNIS API.
  • Specifically, for the RAN part we are working with a commercial solution such as the Amarisoft gNB, in which the connected users access the MEC applications. Therefore, an integration between Amarisoft RAN and RNIS is needed.
  • More specifically, the interaction between the user equipment or the 5G network administrators with Amarisoft is done through a proprietary WebSocket API. Thus, one of our main contributions is to map WebSocket actions to the RNIS API, in order to extract all the appropriate information for the users and their QoS requirements.

Deployment of virtual classroom application

  • Akraino virtual classroom blueprint is a classroom app simulator that provides a virtual reality classroom with teachers and students. In this simulated app, teachers and students can interact with each other.
  • The main components of Akraino virtual classroom blueprint are Jenkins Master, Tars Master, and Tars Agent with AR/VR client
Hack2022-pedraforca-virtualclass.png


  • These components are dockerized and deployed in a cloud-native fashion, in which the virtual classroom server runs over the Kubernetes infrastructure as a pod to conduct our experiment.


Decision engine

ML-based control of the RAN and edge infrastructure using the data collected from MEC APIs

  • MEC APIs collect information about different components and parameters of the 5G networks. Using these APIs and ML-based tools, we can make a decision engine that monitors/adjusts the RAN and edge infrastructures to meet required KPIs or scale the deployed applications.
  • Regarding the RAN part, we evaluate the user latency and bandwidth and use RNIS API to adjust RAN parameters based on the service requirements. For instance, this setting can guarantee the students in the virtual classroom have sufficient bandwidth for streaming and low latency for interacting with classmates and teachers.
  • Regarding the edge infrastructure, other ETCI MEC APIs can be used for scaling the services and applications. We deploy ML-based tools to predict the demand for edge applications and scale up and down the services accordingly. In the case of the virtual classroom, each classroom could be seen as a different pod, and virtualized hardware resources can be allocated based on the classroom instance and the number of students.
  • Due to the limited resources available in the edge servers and 5G cells, the optimum resource allocation becomes a critical task. As a result, we plan to use different analytical and data-driven techniques to handle the resources in an (close to) optimal way.

Software resources

Summarized any open-source or publicly available (even proprietary) software that you utilized

  • K8s (kubespray), Prometheus and Grafana
  • Open5Gs, UERANSIM, and Amarisoft (RAN)
  • Nginx, FFmpeg, docker-compose (video on demand streaming)
  • Pytorch, Gym, Flask (Machine learning part)
  • Swagger editor, Swagger generated server and client


Project Videos

SOON