From 7498219cd0794f339fcea569c04ff51349e24645 Mon Sep 17 00:00:00 2001 From: Timo Tietavainen Date: Mon, 16 Dec 2019 14:52:52 +0200 Subject: [PATCH] Add new Streaming protobuf files Following X2AP messages were converted to protobuf structures: * SGNB CHANGE REQUIRED * SGNB CHANGE CONFIRM * SGNB CHANGE REFUSE * SGNB ACTIVITY NOTIFICATION * GNB STATUS INDICATION Conversion was based on 3GPP spec 36.423, ver 15.4.0. Signed-off-by: Timo Tietavainen Change-Id: Ie75ae5634567347db347967f125d15f0b06a2708 --- docs/release-notes.rst | 10 +++++ gnb_status_indication.proto | 46 +++++++++++++++++++ sgnb_activity_notification.proto | 51 +++++++++++++++++++++ sgnb_change_confirm.proto | 96 ++++++++++++++++++++++++++++++++++++++++ sgnb_change_refuse.proto | 47 ++++++++++++++++++++ sgnb_change_required.proto | 55 +++++++++++++++++++++++ x2ap_common_types.proto | 54 ++++++++++++++++++++++ x2ap_streaming.proto | 12 ++++- 8 files changed, 370 insertions(+), 1 deletion(-) create mode 100644 gnb_status_indication.proto create mode 100644 sgnb_activity_notification.proto create mode 100644 sgnb_change_confirm.proto create mode 100644 sgnb_change_refuse.proto create mode 100644 sgnb_change_required.proto diff --git a/docs/release-notes.rst b/docs/release-notes.rst index 0616239..0cde365 100644 --- a/docs/release-notes.rst +++ b/docs/release-notes.rst @@ -31,6 +31,16 @@ ric-plt/streaming-protobufs. Version history --------------- +[0.2.3] - 2019-12-18 + +* Implement Protobuf schema for following X2AP messages: + + * SGNB CHANGE REQUIRED + * SGNB CHANGE CONFIRM + * SGNB CHANGE REFUSE + * SGNB ACTIVITY NOTIFICATION + * GNB STATUS INDICATION + [0.2.2] - 2019-11-14 * Add mandatory documentation files. diff --git a/gnb_status_indication.proto b/gnb_status_indication.proto new file mode 100644 index 0000000..6efb519 --- /dev/null +++ b/gnb_status_indication.proto @@ -0,0 +1,46 @@ +/* + Copyright (c) 2019 AT&T Intellectual Property. + Copyright (c) 2019 Nokia. + + Licensed under the Creative Commons Attribution 4.0 International + Public License (the "License"); you may not use this file except + in compliance with the License. You may obtain a copy of the License at + + https://creativecommons.org/licenses/by/4.0/ + + Unless required by applicable law or agreed to in writing, documentation + 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. +*/ + +syntax = "proto3"; + +package streaming_protobufs; + +option go_package = "gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs"; + +import "x2ap_common_types.proto"; + +/* + Protocol Buffer definition for GNB STATUS INDICATION message. + (3GPP 36.423, ver 15.4.0) + + Naming convention follows the ASN.1 field naming defined in chapter + '9.3 Message and Information Element Abstract Syntax (with ASN.1)' of below document: + http://www.3gpp.org/ftp//Specs/archive/36_series/36.423/36423-f40.zip + + Dashes converted to underscores to make protobuf message syntax correct. +*/ + + +message GNBStatusIndication +{ + GNBStatusIndicationIEs protocolIEs = 1; +} + +message GNBStatusIndicationIEs +{ + GNBOverloadInformation id_GNBOverloadInformation = 1; +} diff --git a/sgnb_activity_notification.proto b/sgnb_activity_notification.proto new file mode 100644 index 0000000..c8a2f6e --- /dev/null +++ b/sgnb_activity_notification.proto @@ -0,0 +1,51 @@ +/* + Copyright (c) 2019 AT&T Intellectual Property. + Copyright (c) 2019 Nokia. + + Licensed under the Creative Commons Attribution 4.0 International + Public License (the "License"); you may not use this file except + in compliance with the License. You may obtain a copy of the License at + + https://creativecommons.org/licenses/by/4.0/ + + Unless required by applicable law or agreed to in writing, documentation + 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. +*/ + +syntax = "proto3"; + +package streaming_protobufs; + +option go_package = "gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs"; + +import "google/protobuf/wrappers.proto"; +import "x2ap_common_types.proto"; + +/* + Protocol Buffer definition for SGNB ACTIVITY NOTIFICATION message. + (3GPP 36.423, ver 15.4.0) + + Naming convention follows the ASN.1 field naming defined in chapter + '9.3 Message and Information Element Abstract Syntax (with ASN.1)' of below document: + http://www.3gpp.org/ftp//Specs/archive/36_series/36.423/36423-f40.zip + + Dashes converted to underscores to make protobuf message syntax correct. +*/ + + +message SgNBActivityNotification +{ + SgNBActivityNotification_IEs protocolIEs = 1; +} + +message SgNBActivityNotification_IEs +{ + uint32 id_MeNB_UE_X2AP_ID = 1; + uint32 id_SgNB_UE_X2AP_ID = 2; + UserPlaneTrafficActivityReport id_UEContextLevelUserPlaneActivity = 3; + ERABActivityNotifyItemList id_ERABActivityNotifyItemList = 4; + google.protobuf.UInt32Value id_MeNB_UE_X2AP_ID_Extension = 5; +} diff --git a/sgnb_change_confirm.proto b/sgnb_change_confirm.proto new file mode 100644 index 0000000..0897a11 --- /dev/null +++ b/sgnb_change_confirm.proto @@ -0,0 +1,96 @@ +/* + Copyright (c) 2019 AT&T Intellectual Property. + Copyright (c) 2019 Nokia. + + Licensed under the Creative Commons Attribution 4.0 International + Public License (the "License"); you may not use this file except + in compliance with the License. You may obtain a copy of the License at + + https://creativecommons.org/licenses/by/4.0/ + + Unless required by applicable law or agreed to in writing, documentation + 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. +*/ + +syntax = "proto3"; + +package streaming_protobufs; + +option go_package = "gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs"; + +import "google/protobuf/wrappers.proto"; +import "x2ap_common_types.proto"; + +/* + Protocol Buffer definition for SGNB CHANGE CONFIRM message. + (3GPP 36.423, ver 15.4.0) + + Naming convention follows the ASN.1 field naming defined in chapter + '9.3 Message and Information Element Abstract Syntax (with ASN.1)' of below document: + http://www.3gpp.org/ftp//Specs/archive/36_series/36.423/36423-f40.zip + + Dashes converted to underscores to make protobuf message syntax correct. +*/ + + +message SgNBChangeConfirm +{ + SgNBChangeConfirm_IEs protocolIEs = 1; +} + +message SgNBChangeConfirm_IEs +{ + uint32 id_MeNB_UE_X2AP_ID = 1; + uint32 id_SgNB_UE_X2AP_ID = 2; + E_RABs_ToBeReleased_SgNBChaConfList id_E_RABs_ToBeReleased_SgNBChaConfList = 3; + CriticalityDiagnostics id_CriticalityDiagnostics = 4; + google.protobuf.UInt32Value id_MeNB_UE_X2AP_ID_Extension = 5; +} + +message E_RABs_ToBeReleased_SgNBChaConfList +{ + repeated E_RABs_ToBeReleased_SgNBChaConf_ItemIEs items = 1; +} + +message E_RABs_ToBeReleased_SgNBChaConf_ItemIEs +{ + E_RABs_ToBeReleased_SgNBChaConf_Item id_E_RABs_ToBeReleased_SgNBChaConf_Item = 1; +} + +message E_RABs_ToBeReleased_SgNBChaConf_Item +{ + uint32 e_RAB_ID = 1; + EN_DC_ResourceConfiguration en_DC_ResourceConfiguration = 2; + oneof resource_configuration { + E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPpresent sgNBPDCPpresent = 3; + E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPnotpresent sgNBPDCPnotpresent = 4; + } + repeated E_RABs_ToBeReleased_SgNBChaConf_ItemExtIEs iE_Extensions = 5; +} + +message E_RABs_ToBeReleased_SgNBChaConf_ItemExtIEs +{ +} + +message E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPpresent +{ + GTPtunnelEndpoint uL_GTPtunnelEndpoint = 1; + GTPtunnelEndpoint dL_GTPtunnelEndpoint = 2; + repeated E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPpresentExtIEs iE_Extensions = 3; +} + +message E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPpresentExtIEs +{ +} + +message E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPnotpresent +{ + repeated E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPnotpresentExtIEs iE_Extensions = 1; +} + +message E_RABs_ToBeReleased_SgNBChaConf_Item_SgNBPDCPnotpresentExtIEs +{ +} diff --git a/sgnb_change_refuse.proto b/sgnb_change_refuse.proto new file mode 100644 index 0000000..26b7368 --- /dev/null +++ b/sgnb_change_refuse.proto @@ -0,0 +1,47 @@ +/* + Copyright (c) 2019 AT&T Intellectual Property. + Copyright (c) 2019 Nokia. + + Licensed under the Creative Commons Attribution 4.0 International + Public License (the "License"); you may not use this file except + in compliance with the License. You may obtain a copy of the License at + + https://creativecommons.org/licenses/by/4.0/ + + Unless required by applicable law or agreed to in writing, documentation + 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. +*/ + +syntax = "proto3"; + +package streaming_protobufs; + +option go_package = "gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs"; + +import "google/protobuf/wrappers.proto"; +import "error_cause.proto"; +import "x2ap_common_types.proto"; + +/* + Protocol Buffer definition for SGNB CHANGE REFUSE message. + (3GPP 36.423, ver 15.4.0) + + Naming convention follows the ASN.1 field naming defined in chapter + '9.3 Message and Information Element Abstract Syntax (with ASN.1)' of below document: + http://www.3gpp.org/ftp//Specs/archive/36_series/36.423/36423-f40.zip + + Dashes converted to underscores to make protobuf message syntax correct. +*/ + + +message SgNBChangeRefuse +{ + uint32 id_MeNB_UE_X2AP_ID = 1; + uint32 id_SgNB_UE_X2AP_ID = 2; + Cause id_Cause = 3; + CriticalityDiagnostics id_CriticalityDiagnostics = 4; + google.protobuf.UInt32Value id_MeNB_UE_X2AP_ID_Extension = 5; +} diff --git a/sgnb_change_required.proto b/sgnb_change_required.proto new file mode 100644 index 0000000..a2ccd99 --- /dev/null +++ b/sgnb_change_required.proto @@ -0,0 +1,55 @@ +/* + Copyright (c) 2019 AT&T Intellectual Property. + Copyright (c) 2019 Nokia. + + Licensed under the Creative Commons Attribution 4.0 International + Public License (the "License"); you may not use this file except + in compliance with the License. You may obtain a copy of the License at + + https://creativecommons.org/licenses/by/4.0/ + + Unless required by applicable law or agreed to in writing, documentation + 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. +*/ + +syntax = "proto3"; + +package streaming_protobufs; + +option go_package = "gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs"; + +import "google/protobuf/wrappers.proto"; +import "rrc_cg_config.proto"; +import "error_cause.proto"; +import "x2ap_common_types.proto"; + +/* + Protocol Buffer definition for SGNB CHANGE REQUIRED message. + (3GPP 36.423, ver 15.4.0) + + Naming convention follows the ASN.1 field naming defined in chapter + '9.3 Message and Information Element Abstract Syntax (with ASN.1)' of below document: + http://www.3gpp.org/ftp//Specs/archive/36_series/36.423/36423-f40.zip + + Dashes converted to underscores to make protobuf message syntax correct. +*/ + + +message SgNBChangeRequired +{ + SgNBChangeRequired_IEs protocolIEs = 1; +} + +message SgNBChangeRequired_IEs +{ + uint32 id_MeNB_UE_X2AP_ID = 1; + uint32 id_SgNB_UE_X2AP_ID = 2; + GlobalGNB_ID id_Target_SgNB_ID = 3; + Cause id_Cause = 4; + //The content of id_SgNBtoMeNBContainer has been specified in 3GPP 38.331 to be CG-Config. + CG_Config id_SgNBtoMeNBContainer = 5; + google.protobuf.UInt32Value id_MeNB_UE_X2AP_ID_Extension = 6; +} diff --git a/x2ap_common_types.proto b/x2ap_common_types.proto index 7fe6b1f..1754a5a 100644 --- a/x2ap_common_types.proto +++ b/x2ap_common_types.proto @@ -113,6 +113,24 @@ message GBR_QosInformation_ExtIEs google.protobuf.UInt64Value id_extended_e_RAB_GuaranteedBitrateUL = 4; } +message GlobalGNB_ID +{ + string pLMN_Identity = 1; + GNB_ID gNB_ID = 2; + repeated GlobalGNB_ID_ExtIEs iE_Extensions = 3; +} + +message GNB_ID +{ + oneof c { + string gNB_ID = 1; + } +} + +message GlobalGNB_ID_ExtIEs +{ +} + message GTPtunnelEndpoint { string transportLayerAddress = 1; @@ -221,6 +239,42 @@ message E_RAB_Item Cause cause = 2; } +message ERABActivityNotifyItemList +{ + repeated ERABActivityNotifyItem items = 1; +} + +message ERABActivityNotifyItem +{ + uint32 e_RAB_ID = 1; + UserPlaneTrafficActivityReport activityReport = 2; + ERABActivityNotifyItem_ExtIEs iE_Extensions = 3; +} + +message ERABActivityNotifyItem_ExtIEs +{ +} + +message UserPlaneTrafficActivityReport +{ + enum Value { + protobuf_unspecified = 0; + inactive = 1; + re_activated = 2; + } + Value value = 1; +} + +message GNBOverloadInformation +{ + enum Value { + protobuf_unspecified = 0; + overloaded = 1; + not_overloaded = 2; + } + Value value = 1; +} + message CriticalityDiagnostics { google.protobuf.UInt32Value procedureCode = 1; diff --git a/x2ap_streaming.proto b/x2ap_streaming.proto index 017cd20..dd68fe2 100644 --- a/x2ap_streaming.proto +++ b/x2ap_streaming.proto @@ -40,6 +40,11 @@ import "sgnb_reconfiguration_complete.proto"; import "sn_status_transfer.proto"; import "ue_context_release.proto"; import "secondary_rat_data_usage_report.proto"; +import "sgnb_change_required.proto"; +import "sgnb_change_confirm.proto"; +import "sgnb_change_refuse.proto"; +import "sgnb_activity_notification.proto"; +import "gnb_status_indication.proto"; /* X2AP Streaming Protocol Buffer definition of a wrapper like container for @@ -55,7 +60,7 @@ import "secondary_rat_data_usage_report.proto"; Dashes converted to underscores to make protobuf message syntax correct. Revision number of this X2AP Streaming protobuf file is: - x2ap_streaming_protobuf_revision: v0.2.2 + x2ap_streaming_protobuf_revision: v0.2.3 The location of X2AP Streaming protobuf files is a Linux Foundation repository: https://gerrit.o-ran-sc.org/r/ric-plt/streaming-protobufs @@ -85,6 +90,11 @@ message X2APStreaming SNStatusTransfer snStatusTransfer = 17; UEContextRelease ueContextRelease = 18; SecondaryRATDataUsageReport secondaryRATDataUsageReport = 19; + SgNBChangeRequired sgNBChangeRequired = 20; + SgNBChangeConfirm sgNBChangeConfirm = 21; + SgNBChangeRefuse sgNBChangeRefuse = 22; + SgNBActivityNotification sgNBActivityNotification = 23; + GNBStatusIndication gNBStatusIndication = 24; } } -- 2.16.6