Code Monkey home page Code Monkey logo

ric-app-ad's Introduction

# ==================================================================================
#  Copyright (c) 2020 HCL Technologies Limited.
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.
# ==================================================================================

Usage of all the programs and files have been mentioned below for the reference.
For AD xapp we require UEReport (UE related dataset)

AD xApp expect UE data from influxDB database in following structure:
	* There exists database with name "RIC-Test"
	* Inside "RIC-Test" database we have measurments namely "UEReports"
	
Note: *We need to update ad_config.ini with influxdb configuration. 
Update host as one of the following:
	1. influxdb service ruuning in RIC platform (host = <service name>.<namespace>) 
	   OR IP of influxdb pod
	2. Update user and password for influxDB instance

To polpulate influxdb with static data provided in .csv (ue.csv). 
	1. Run "python3 insert.py"
	2. Wait for few minutes before deploying AD xApp
	Note: This will be depreciated in next release when there will be data coming from KPIMON
	

AD xApp performs following:

* Initiates xapp api, make connection with influxDB and runs the entry() using xapp.run()
* If Model is not present in the current path, 
   a) Read history data from InfluxDB
   b) apply pre-processing steps
   c) trigger Training of ML model.
   d) after model validation, save transformation, model artifacts
* Detect anomalous user in real-time. 
   a) Read live data from influxDB every 0.5 second
   b) Detect anomalous records on given input
   c) Investigate degradation type for anomalous users
* Listens to RMR port for A1 policy (message type 20011) in a format given below. Which consists throughput threshold parameter (default: 70%) for an degradataion event to qualify for a handover
   {'operation': 'CREATE', 'payload': '{\"thp_threshold\":74}', 'policy_instance_id': 'demo-1', 'policy_type_id': '9997'}"}
* Send the ue-id, DU-ID, Degradation type and timestamp for the qualified anomalous records to the Traffic Steering (via rmr with the message type as 30003)
* Get the acknowledgement message from the traffic steering 
* store xApp result in "AD" measurement of influxDB

Note: Need to implement the logic if we do not get the acknowledgment from the TS. (How xapp api handle this?)

ric-app-ad's People

Contributors

deepanshukarnwal avatar aizikovich avatar lf-jobbuilder avatar aricg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.