Skip to content

Protocol Documentation

Table of Contents

Top

api/sb/e2-interface.proto

Copyright 2020-present Open Networking Foundation.

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.

A1Param

Field Type Label Description
a1Threshold ThreasholdEUTRA

A2Param

Field Type Label Description
a2Threshold ThreasholdEUTRA

A3Param

Field Type Label Description
a3Offset string

A4Param

Field Type Label Description
a4Threshold ThreasholdEUTRA

A5Param

Field Type Label Description
a5Threshold1 ThreasholdEUTRA
a5Threshold2 ThreasholdEUTRA

A6Param

Field Type Label Description
a6Offset string

AddMeasId

Field Type Label Description
addMeasId string repeated

BearerAdmissionRequest

BearerAdmissionRequest message

Field Type Label Description
crnti string
ecgi ECGI
ueAmbr UEAMBR
numErabsList uint32
erabsParams ERABParamsItem repeated

BearerAdmissionResponse

BearerAdmissionResponse message

Field Type Label Description
crnti string
ecgi ECGI
numErabsList uint32
erabResponse ERABResponseItem repeated

BearerAdmissionStatus

BearerAdmissionStatus message

Field Type Label Description
crnti string
ecgi ECGI
numErabsList uint32
erabStatus ERABResponseItem repeated

BearerReleaseInd

BearerReleaseInd message

Field Type Label Description
crnti string
ecgi ECGI
numErabsList uint32
erabIds string repeated

CACap

Field Type Label Description
band string
caclassdl CACapClassDl
caclassul CACapClassUl
crossCarrierSched string

CandScell

Field Type Label Description
pci uint32
earfcnDl string
ecgi ECGI

CellConfigReport

CellConfigReport message

Field Type Label Description
ecgi ECGI
pci uint32
candScells CandScell repeated
earfcnDl string
earfcnUl string
rbsPerTtiDl uint32
rbsPerTtiUl uint32
numTxAntenna uint32
duplexMode string
maxNumConnectedUes uint32
maxNumConnectedBearers uint32
maxNumUesSchedPerTtiDl uint32
maxNumUesSchedPerTtiUl uint32
dlfsSchedEnable string

CellConfigRequest

CellConfigRequest message

Field Type Label Description
ecgi ECGI

DCCap

Field Type Label Description
drbTypeSplit DCCapDrbType

DelMeasId

Field Type Label Description
delMeasId string repeated

ECGI

Field Type Label Description
plmnId string
ecid string

ERABParamsItem

Field Type Label Description
id string
direction ERABDirection
type ERABType
qci string
arp uint32
gbrDl string
gbrUl string
mbrDl string
mbrUl string

ERABResponseItem

Field Type Label Description
id string
decision SuccessOrFailure

HOCause

HOCause message

Field Type Label Description
crnti string
ecgiS ECGI
ecgiT ECGI
hoCause string
hoTrigger RXSigReport repeated

HOComplete

HOComplete message

Field Type Label Description
crntiNew string
ecgiS ECGI
ecgiT ECGI

HOFailure

HOFailure message

Field Type Label Description
crnti string
ecgiS ECGI
hoFailureCause string Not defined in standard yet

HORequest

HORequest message

Field Type Label Description
crnti string
ecgiS ECGI
ecgiT ECGI
crntis string repeated

L2MeasConfig

Field Type Label Description
radioMeasReportPerUe L2MeasReportInterval
radioMeasReportPerCell L2MeasReportInterval
schedMeasReportPerUe L2MeasReportInterval
schedMeasReportPerCell L2MeasReportInterval
pdcpMeasReportPerUe L2MeasReportInterval

MeasCell

Field Type Label Description
pci uint32
cellIndividualOffset string

MeasID

Field Type Label Description
measObjectId string
reportConfigId string
action MeasIdAction

MeasIdAction

Field Type Label Description
present MeasIdActionPR
choice MeasIdActionChoice

MeasIdActionChoice

Field Type Label Description
addMeasId AddMeasId
delMeasId DelMeasId
hototarget string

MeasObject

Field Type Label Description
dlFreq string
measCells MeasCell repeated

PCIARFCN

Field Type Label Description
pci uint32
earfcnDl string

PDCPMeasReportPerUe

PdcpMeasReportPerUE message

Field Type Label Description
ecgi ECGI
crnti string
qciVals string repeated
dataVolDl uint32 repeated
dataVolUl uint32 repeated
pktDelayDl uint32 repeated
pktDiscardRateDl uint32 repeated
pktLossRateDl uint32 repeated
pktLossRateUl uint32 repeated
throughputDl uint32 repeated
throughputUl uint32 repeated

PRBUsage

Field Type Label Description
prbUsageDl string repeated
prbUsageUl string repeated

PerParam

Field Type Label Description
reportIntervalMs PerParamReportIntervalMs

PropScell

Field Type Label Description
pciArfcn PCIARFCN
crossCarrierSchedEnable string
caDirection CADirection
deactTimer string

RRCMeasConfig

RRCMeasConfig message

Field Type Label Description
ecgi ECGI
crnti string repeated
measObjects MeasObject repeated
reportConfigs ReportConfig repeated
measIds MeasID repeated

RRMConfig

RRMConfig message

Field Type Label Description
ecgi ECGI
crnti string repeated
pciArfcn PCIARFCN
pA XICICPA repeated
startPrbDl uint32 repeated
endPrbDl uint32 repeated
subFrameBitmaskDl string repeated
p0UePusch uint32 repeated
startPrbUl uint32 repeated
endPrbUl uint32 repeated
subFrameBitmaskUl string repeated

RRMConfigStatus

RRMConfigStatus message

Field Type Label Description
ecgi ECGI
crnti string repeated
status SuccessOrFailure repeated

RXSigReport

Field Type Label Description
pciArfcn PCIARFCN
ecgi ECGI
rsrp string
rsrq string string measId = 5; not defined in our SBI

RadioMeasReportPerCell

RadioMeasReportPerCell message

Field Type Label Description
ecgi ECGI
puschIntfPwrHist uint32 repeated
pucchIntfPowerHist uint32 repeated

RadioMeasReportPerUE

RadioMeasReportPerUE message

Field Type Label Description
ecgi ECGI
crnti string
radioReportServCells RadioRepPerServCell repeated

RadioRepPerServCell

L2MeasureReports (periodic) messages

Field Type Label Description
ecgi ECGI
cqiHist uint32 repeated
riHist string repeated
puschSinrHist string repeated
pucchSinrHist string repeated

ReportConfig

Field Type Label Description
reportParams ReportParam
triggerQuantity TriggerQuantity
reportQuality ReportQuality

ReportParam

Field Type Label Description
present ReportParamPR
choice ReportParamChoice
hysteresis string
timetotrigger TimeToTrigger

ReportParamChoice

Field Type Label Description
perParam PerParam
a1Param A1Param
a2Param A2Param
a3Param A3Param
a4Param A4Param
a5Param A5Param
a6Param A6Param

RxSigMeasReport

RxSigMeasReport message

Field Type Label Description
crnti string repeated
ecgi ECGI
cellMeasReport RXSigReport repeated

ScellAdd

ScellAdd message

Field Type Label Description
crnti string
ecgi ECGI
scellsProp PropScell repeated

ScellAddStatus

ScellAddStatus message

Field Type Label Description
crnti string
ecgi ECGI
scellsInd PCIARFCN repeated
status SuccessOrFailure repeated

ScellDelete

ScellDelete message

Field Type Label Description
crnti string
ecgi ECGI
scellsInd PCIARFCN repeated

SchedMeasRepPerServCell

Field Type Label Description
ecgi ECGI
qciVals string repeated
prbUsage PRBUsage
mcsDl string repeated
numSchedTtisDl string repeated
mcsUl string repeated
numSchedTtisUl string repeated
rankDl1 string repeated
rankDl2 string repeated

SchedMeasReportPerCell

SchedMeasReportPerCell message

Field Type Label Description
ecgi ECGI
qciVals string repeated
prbUsagePcell PRBUsage
prbUsageScell PRBUsage

SchedMeasReportPerUE

SchedMeasReportPerUE message

Field Type Label Description
ecgi ECGI
crnti string
schedReportServCells SchedMeasRepPerServCell repeated

SeNBAdd

SeNBAdd message

Field Type Label Description
crnti string
mEcgi ECGI
sEcgi ECGI

SeNBAddStatus

SeNBAddStatus message

Field Type Label Description
crnti string
ecgi ECGI
status SuccessOrFailure

SeNBDelete

SeNBDelete message

Field Type Label Description
crnti string
mEcgi ECGI
sEcgi ECGI

ThreasholdEUTRA

Field Type Label Description
present ThresholdEUTRAPR
choice ThresholdEUTRAChoice

ThresholdEUTRAChoice

Field Type Label Description
thresholdRSRP string
thresholdRSRQ string

TrafficSplitConfig

TrafficSplitConfig message

Field Type Label Description
crnti string
ecgi ECGI
trafficSplitPercentage TrafficSplitPercentage repeated

TrafficSplitPercentage

Field Type Label Description
ecgi ECGI
trafficPercentageDl string
trafficPercentageUl string

UEAMBR

Field Type Label Description
ambrDl string
ambrUl string

UEAdmissionRequest

UEAdmissionRequest message

Field Type Label Description
crnti string
ecgi ECGI
admissionEstCause AdmEstCause
imsi uint64

UEAdmissionResponse

UEAdmissionResponse message

Field Type Label Description
crnti string
ecgi ECGI
admissionEstResponse SuccessOrFailure

UEAdmissionStatus

UEAdmissionStatus message

Field Type Label Description
crnti string
ecgi ECGI
admissionEstStatus SuccessOrFailure

UECapabilityEnquiry

UECapabilityEnqyuiry message

Field Type Label Description
crnti string
ecgi ECGI

UECapabilityInfo

UECapabilityInfo message

Field Type Label Description
crnti string
ecgi ECGI
caCap CACap
dcCap DCCap

UEContextUpdate

UEContextUpdate message

Field Type Label Description
crnti string
ecgi ECGI
mmeUeS1apId string
enbUeS1apId string
imsi string

UEReconfigInd

UEReconfigInd message

Field Type Label Description
crntiOld string
ecgi ECGI
crntiNew string
reconfigCause ReconfigCause

UEReleaseInd

UEReleaseInd message

Field Type Label Description
crnti string
ecgi ECGI
releaseCause ReleaseCause

AdmEstCause

Name Number Description
EMERGENCY 0
HIGHHP_ACCESS 1
MT_ACCESS 2
MO_SIGNALLING 3
MO_DATA 4

CACapClassDl

Name Number Description
CACAP_CLASSDL_A 0
CACAP_CLASSDL_B 1
CACAP_CLASSDL_C 2
CACAP_CLASSDL_D 3
CACAP_CLASSDL_E 4
CACAP_CLASSDL_F 5

CACapClassUl

Name Number Description
CACAP_CLASSUL_A 0
CACAP_CLASSUL_B 1
CACAP_CLASSUL_C 2
CACAP_CLASSUL_D 3
CACAP_CLASSUL_E 4
CACAP_CLASSUL_F 5

CADirection

Name Number Description
CADIRECTION_DL 0
CADIRECTION_UL 1
CADIRECTION_BOTH 2

DCCapDrbType

Name Number Description
DCCAP_DRBTYPE_SUPPORTED 0

ERABDirection

Name Number Description
DL 0
UL 1
BOTH 2

ERABType

Name Number Description
ERAB_DEFAULT 0
ERAB_DEDICATED 1

L2MeasReportInterval

Name Number Description
NO_REPORT 0
MS_10 1
MS_50 2
MS_100 3
MS_200 4
MS_500 5
MS_1024 6
S_10 7
MIN_1 8
MIN_2 9
MIN_5 10

MeasIdActionPR

Name Number Description
MEAS_ID_ACTION_PR_NOTHING 0
MEAS_ID_ACTION_PR_ADDMEASID 1
MEAS_ID_ACTION_PR_DELMEASID 2
MEAS_ID_ACTION_PR_HOTOTARGET 3

MessageType

Definition of all message types in E2 interface

Name Number Description
UNKNOWN_MESSAGE 0
CELL_CONFIG_REQUEST 1 Defined, but not used yet
CELL_CONFIG_REPORT 2 Defined and used at xranc and ric-api-gw
UE_ADMISSION_REQUEST 3 Defined, but not used yet
UE_ADMISSION_RESPONSE 4 Defined, but not used yet
UE_ADMISSION_STATUS 5 Defined and used at xranc and ric-api-gw
UE_CONTEXT_UPDATE 6 Defined and used at xranc and ric-api-gw
UE_RECONFIG_IND 7 Defined, but not used yet
UE_RELEASE_IND 8 Defined, but not used yet
BEARER_ADMISSION_REQUEST 9 Defined, but not used yet
BEARER_ADMISSION_RESPONSE 10 Defined, but not used yet
BEARER_ADMISSION_STATUS 11 Defined, but not used yet
BEARER_RELEASE_IND 12 Defined, but not used yet
HO_REQUEST 13 Defined, but not used yet
HO_FAILURE 14 Defined, but not used yet
HO_COMPLETE 15 Defined, but not used yet
RXSIG_MEAS_REPORT 16 Defined, but not used yet
L2_MEAS_CONFIG 17 Defined, but not used yet
RADIO_MEAS_REPORT_PER_UE 18 Defined, but not used yet
RADIO_MEAS_REPORT_PER_CELL 19 Defined, but not used yet
SCHED_MEAS_REPORT_PER_UE 20 Defined, but not used yet
SCHED_MEAS_REPORT_PER_CELL 21 Defined, but not used yet
PDCP_MEAS_REPORT_PER_UE 22 Defined, but not used yet
UE_CAPABILITY_INFO 23 Defined, but not used yet
UE_CAPABILITY_ENQUIRY 24 Defined, but not used yet
SCELL_ADD 25 Defined, but not used yet
SCELL_ADD_STATUS 26 Defined, but not used yet
SCELL_DELETE 27 Defined, but not used yet
RRM_CONFIG 28 Defined, but not used yet
RRM_CONFIG_STATUS 29 Defined, but not used yet
SENB_ADD 30 Defined, but not used yet
SENB_ADD_STATUS 31 Defined, but not used yet
SENB_DELETE 32 Defined, but not used yet
TRAFFIC_SPLIT_CONFIG 33 Defined, but not used yet
HO_CAUSE 34 Defined, but not used yet
RRC_MEAS_CONFIG 35 Defined, but not used yet

PerParamReportIntervalMs

Name Number Description
PER_PARAM_MS_120 0
PER_PARAM_MS_240 1
PER_PARAM_MS_480 2
PER_PARAM_MS_640 3
PER_PARAM_MS_1024 4
PER_PARAM_MS_2048 5
PER_PARAM_MS_5120 6
PER_PARAM_MS_10240 7
PER_PARAM_MIN_1 8
PER_PARAM_MIN_6 9
PER_PARAM_MIN_12 10
PER_PARAM_MIN_30 11
PER_PARAM_MIN_60 12

ReconfigCause

Name Number Description
RECONFIG_RLF 0
RECONFIG_HO_FAIL 1
RECONFIG_OTHERS 2

ReleaseCause

Name Number Description
RELEASE_INACTIVITY 0
RELEASE_RLF 1
RELEASE_OTHERS 2

ReportParamPR

Name Number Description
REPORT_PARAM_PR_NOTHING 0
REPORT_PARAM_PR_PER_PARAM 1
REPORT_PARAM_PR_A1PARAM 2
REPORT_PARAM_PR_A2PARAM 3
REPORT_PARAM_PR_A3PARAM 4
REPORT_PARAM_PR_A4PARAM 5
REPORT_PARAM_PR_A5PARAM 6
REPORT_PARAM_PR_A6PARAM 7

ReportQuality

Name Number Description
RQ_SAME 0
RQ_BOTH 1

SuccessOrFailure

Name Number Description
SUCCESS 0
FAILURE 1

ThresholdEUTRAPR

Name Number Description
THRESHOLD_EUTRA_PR_NOTHING 0
THRESHOLD_EUTRA_PR_RSRP 1
THRESHOLD_EUTRA_PR_RSRQ 2

TimeToTrigger

Name Number Description
TTT_MS0 0
TTT_MS40 1
TTT_MS64 2
TTT_MS80 3
TTT_MS100 4
TTT_MS128 5
TTT_MS160 6
TTT_MS256 7
TTT_MS320 8
TTT_MS480 9
TTT_MS512 10
TTT_MS640 11
TTT_MS1024 12
TTT_MS1280 13
TTT_MS2560 14
TTT_MS5120 15

TriggerQuantity

Name Number Description
TQ_RSRP 0
TQ_RSRQ 1

XICICPA

Name Number Description
XICIC_PA_DB_MINUS6 0
XICIC_PA_DB_MINUX4DOT77 1
XICIC_PA_DB_MINUS3 2
XICIC_PA_DB_MINUS1DOT77 3
XICIC_PA_DB_0 4
XICIC_PA_DB_1 5
XICIC_PA_DB_2 6
XICIC_PA_DB_3 7

Top

api/sb/e2ap.proto

Copyright 2020-present Open Networking Foundation.

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.

E2apProtocolIE

Field Type Label Description
id ProtocolIEId
criticality Criticality
presence Presence value

E2apProtocolIEsPair

Field Type Label Description
id ProtocolIEId
firstCriticality Criticality
secondCriticality Criticality firstValue = 3;
presence Presence secondValue = 5;

ProtocolIEContainer

ProtocolIEField

ProtocolIESingleContainer

Criticality

Name Number Description
REJECT 0
IGNORE 1
NOTIFY 2

Presence

Name Number Description
OPTIONAL 0
CONDITIONAL 1
MANDATORY 2

ProcedureCode

Name Number Description
PC_INVALID 0
E2_SETUP 1
ERROR_INDICATION 2
RESET 3
RIC_CONTROL 4
RIC_INDICATION 5
RIC_SERVICE_QUERY 6
RIC_SERVICE_UPDATE 7
RIC_SUBSCRIPTION 8
RIC_SUBSCRIPTION_DELETE 9

ProtocolIEId

Name Number Description
UNDEFINED 0
CAUSE 1
CRITICALITY_DIAGNOSTICS 2
GLOBAL_E2_NODE_ID 3
GLOBAL_RIC_ID 4
RAN_FUNCTION_ID 5
RAN_FUNCTION_ID_ITEM 6
RAN_FUNCTION_IE_CAUSE_ITEM 7
RAN_FUNCTION_ITEM 8
RAN_FUNCTIONS_ACCEPTED 9
RAN_FUNCTIONS_ADDED 10
RAN_FUNCTIONS_DELETED 11
RAN_FUNCTIONS_MODIFIED 12
RAN_FUNCTIONS_REJECTED 13
RIC_ACTION_ADMITTED_ITEM 14
RIC_ACTION_ID 15
RIC_ACTION_NOT_ADMITTED_ITEM 16
RIC_ACTIONS_ADMITTED 17
RIC_ACTIONS_NOT_ADMITTED 18
RIC_ACTION_TO_BE_SETUP_ITEM 19
RIC_CALL_PROCESS_ID 20
RIC_CONTROL_ACK_REQUEST 21
RIC_CONTROL_HEADER 22
RIC_CONTROL_MESSAGE 23
RIC_CONTROL_STATUS 24
RIC_INDICATION_HEADER 25
RIC_INDICATION_MESSAGE 26
RIC_INDICATION_SN 27
RIC_INDICATION_TYPE 28
RIC_REQUEST_ID 29
RIC_SUBSCRIPTION_DETAILS 30
TIME_TO_WAIT 31
RIC_CONTROL_OUTCOME 32

TriggeringMessage

Name Number Description
INITIATING_MESSAGE 0
SUCCESSFUL_OUTCOME 1
UNSUCCESSFULL_OUTCOME 2

Scalar Value Types

.proto Type Notes C++ Java Python Go C# PHP Ruby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)