A.3 Solution Set definitions
28.6293GPPRelease 17Self-Organizing Networks (SON) Policy Network Resource Model (NRM) Integration Reference Point (IRP)Solution Set (SS) definitionsTelecommunication managementTS
A.3.1 IDL definition structure
Clause A.3.2 defines the constants and types used by the SON Policy NRM IRP.
A.3.2 IDL specification “SONPolicyNetworkResourcesNRMDefs.idl”
//File:SONPolicyNetworkResourcesNRMDefs.idl
#ifndef _SONPOLICYNETWORKRESOURCESNRMDEFS_IDL_
#define _SONPOLICYNETWORKRESOURCESNRMDEFS_IDL_
#include "GenericNetworkResourcesNRMDefs.idl"
#include "TimeBase.idl"
#pragma prefix "3gppsa5.org"
/**
* This module defines constants for each MO class name and
* the attribute names for each defined MO class.
*/
module SONPolicyNetworkResourcesNRMDefs
{
/*
* Definitions for MO class SONTargets
*/
interface SONTargets: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "SONTargets";
// Attribute Names
//
const string id = "id";
const string hoFailureRate = "hoFailureRate";
const string rrcConnectionEstablishmentFailureRateCharacteristic = "rrcConnectionEstablishmentFailureRateCharacteristic";
const string rrcConnectionAbnormalReleaseRateCharacteristic = "rrcConnectionAbnormalReleaseRateCharacteristic";
const string eRabSetupFailureRateCharacteristic = "eRabSetupFailureRateCharacteristic";
const string eRabAbnormalReleaseRateCharacteristic = "eRabAbnormalReleaseRateCharacteristic";
const string rachOptAccessProbability = "rachOptAccessProbability";
const string rachOptAccessDelayProbability = "rachOptAccessDelayProbability";
const string pDCPDataVolumeLoadRate = "pDCPDataVolumeLoadRate";
const string iPThroughputLoadRate = "iPThroughputLoadRate";
const string activeUEAmountLoadRate = "activeUEAmountLoadRate";
};
/*
* Definitions for MO class SONControl
*/
interface SONControl: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "SONControl";
// Attribute Names
//
const string id = "id";
const string hooSwitch = "hooSwitch";
const string lboSwitch = "lboSwitch";
const string cocSwitch = "cocSwitch";
const string esSwitch = "esSwitch";
const string roSwitch = "roSwitch";
const string aasSwitch = "aasSplitSwitch";
const string aasSwitch = "aasMergeSwitch";
const string aasSwitch = "aasShapeSwitch";
};
/*
* Definitions for MO class ESPolicies
*/
interface ESPolicies: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "ESPolicies";
// Attribute Names
//
const string id = "id";
const string esActivationOriginalCellLoadParameters = "esActivationOriginalCellLoadParameters";
const string esActivationCandidateCellsLoadParameters = "esActivationCandidateCellsLoadParameters";
const string esDeactivationCandidateCellsLoadParameters = "esDeactivationCandidateCellsLoadParameters";
const string esNotAllowedTimePeriod = "esNotAllowedTimePeriod";
};
/*
* Definitions for MO class InterRatEsPolicies
*/
interface ESPolicies: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "InterRatEsPolicies";
// Attribute Names
//
const string id = "id";
const string interRatEsActivationOriginalCellParameters = "interRatEsCellActivationOriginalCellParameters";
const string interRatEsActivationCandidateCellParameters = "interRatEsActivationCandidateCellParameters";
const string interRatEsDeactivationCandidateCellParameters = "interRatEsDeactivationCandidateCellParameters";
/*
* Definitions for MO class EUtranCellSON
*/
interface EUtranCellSON: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "EUtranCellSON";
// Attribute Names
//
const string id = "id";
const string maximumDeviationHoTrigger = "maximumDeviationHoTrigger";
const string minimumTimeBetweenHoTriggerChange = "minimumTimeBetweenHoTriggerChange";
const string alterCovConfig = "AlterCovConfig";
const string replacedCells = "ReplacedCells";
};
/*
* Definitions for MO class EnergySavingProperties
*/
interface EnergySavingProperties: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "EnergySavingProperties";
// Attribute Names
//
const string id = "id";
const string energySavingState= "energySavingState";
const string energySavingControl= "energySavingControl";
const string isProbingCapable = "isProbingCapable";
};
/*
* Definitions for MO class SONFuncInfo
*/
interface SONFuncInfo: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "SONFuncInfo";
// Attribute Names
//
const string id = "id";
const string sonFuncCapabilityBelowItfN = "sonFuncCapabilityBelowItfN";
};
/*
* Definitions for MO class SONCoordinationPolicies
*/
interface SONCoordinationPolicies: GenericNetworkResourcesNRMDefs::Top
{
const string CLASS = "SONCoordinationPolicies";
// Attribute Names
//
const string id = "id";
const string selectedSonCoordPolicy = "selectedSonCoordPolicy";
const string sonFuncPriorityOrder = "sonFuncPriorityOrder";
};
};
module GenericSONPolicyNRMAttributeTypes
{
/*
* Composite Availble Capacity (CAC)target type related to RRC/eRAB setup
*/
struct CacTarget
{
unsigned short lower_end_of_cac_range;
unsigned short upper_end_of_cac_range;
unsigned short target_value;
unsigned short target_weight;
};
typedef sequence<CacTarget> CacTargetList;
struct CacTargetLink
{
CacTargetList uplink_cac_target;
CacTargetList downlink_cac_target;
};
/*
* HOO target type
*/
struct HooTarget
{
unsigned short target_value;
unsigned short target_priority;
};
typedef sequence<HooTarget> HooTargetList;
/*
* Cell load parameters type related to energy saving
*/
struct CellLoadParameters
{
unsigned short load_threshold;
unsigned short time_duration;
};
/*
/*
* Cell load parameters type related to energy saving
*/
struct RelativeCellLoadParameters
{
unsigned short relative_load_threshold;
unsigned short time_duration;
};
/*
typedef TimeBase::UtcT UTCTime;
struct PeriodOfDay
{
UTCTime start_time;
UTCTime end_time;
};
enum WeekDayType
{
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
};
typedef sequence <WeekDayType> DaysOfWeek;
struct TimePeriodElement
{
DaysOfWeek days;
PeriodOfDay period_of_day;
};
typedef sequence<TimePeriodElement> ESNotAllowedTimePeriod;
/*
* Rach Optimization target type
*/
enum ROTargetType
{
RO_ACCESS_PROBABILITY,
RO_ACCESS_DELAY_PROBABILITY
};
enum ROProbability
{
25percent,
50percent,
75percent,
90percent
};
typedef unsigned short (10..560) AccessDelayRange;
typedef unsigned short (1..200) AccessNumberAttemptRange;
struct accessProbabilityROTarget
{
ROProbability rOProbability;
AccessNumberAttemptRange attemptNumber;
};
struct accessDelayProbabilityROTarget
{
ROProbability rOProbability;
AccessDelayRange accessDelay;
};
typedef sequence <accessProbabilityROTarget,4> AccessProbabilityROTargetSet;
typedef sequence <accessDelayProbabilityROTarget,4> AccessDelayProbabilityROTargetSet;
union RachOptTarget switch (ROTargetType)
{
case RO_ACCESS_PROBABILITY: AccessProbabilityROTargetSet aPTargets;
case RO_ACCESS_DELAY_PROBABILITY: AccessDelayProbabilityROTargetSet aDPTargets;
};
/*
* Active Antenna System (AAS) Target Type
*/
struct AasTarget
{
unsigned short target_lower_threshold;
unsigned short target_upper_threshold;
unsigned short target_weight;
};
/*
typedef unsigned short (1..96) MaximumDeviationHoTriggerType;
typedef unsigned short (0..1440) MinimumTimeBetweenHoTriggerChangeType;
struct AntennaPowerRange
{
unsigned short AnternnaPowerLowerThreshold;
unsigned short AnternnaPowerUpperThreshold;
};
struct AntennaCovConfigType
{
unsigned short stateId;
unsigned short (0…360) horizontalHBW;
unsigned short (0…360) verticalHBW;
AntennaPowerRange maximumTransmissionPowerRange;
AntennaPowerRange referenceSignalPowerRange;
};
typedef sequence <AntennaCovConfigType> AntennaCovConfigListType;
typedef unsigned short (0..255) CellLocalIDType;
typedef sequence <CellLocalIDType> CellLocalIDListType;
enum energySavingStateEnumType
{
IS_ENERGYSAVING,
IS_NOT_ENERGYSAVING
};
enum energySavingControlEnumType
{
TO_BE_ENERGYSAVING,
TO_BE_NOT_ENERGYSAVING
};
enum SonFuncNameType
{
ANR,
HOO,
LBO,
ES,
COC,
CCO,
AAS
};
typedef sequence <SonFuncNameType> SonFuncNameListType;
enum SonCoordPoliciesType
{
BASE_ON_PRIORITY,
BASE_ON_STATE
};
};
#endif // _SONPOLICYNETWORKRESOURCESNRMDEFS_IDL_
Annex B (normative):
XML definitions