Commit b79cc990 authored by Robert Gazda's avatar Robert Gazda
Browse files

Update MEC012.md - STF599 update.

parent 872fe3f3
Loading
Loading
Loading
Loading
+29 −41
Original line number Diff line number Diff line
# MEC012 - Radio Network Information Service
The following query endpoints and subscriptions will be supported in STF587, based on v1:  (1) rab_info; (2) plmn_info; (3) cell_change; (4) rab_est; (5) rab_rel.
> _Updated by STF599_

v2 changes for these endpoints are minor and may be considered during implementation or when v2 is available on Forge.
This section describes how MEC012, RNIS operations within the MEC Sandbox.

*Remaining endpoints are either marked for STF587 Milestone D consideration (depending on time and effort) or deferred for future consideration beyond STF587.  All RABs will have a consistent QCI value (e.g. non-GBR, QCI = 80 -- Low latency eMBB applications, TCP/UDP-based)*
Query endpoints and subscriptions that are not supported in the MEC Sandbox are noted in tables below.  

## MEC 012 v1.1.1 (available on forge)
All RABs have a consistent QCI value (e.g. non-GBR, QCI = 80 -- Low latency eMBB applications, TCP/UDP-based)

References:
* https://www.etsi.org/deliver/etsi_gs/MEC/001_099/012/01.01.01_60/gs_MEC012v010101p.pdf
* https://forge.etsi.org/rep/mec/gs012-rnis-api
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs012-rnis-api/raw/master/RniAPI.yaml#/

## MEC 012 v2.1.1 (published, not available on forge)
Minor changes to v1 endpoints:  
* Egci defined as a dedicated type;
* Subscription / Notification type string added to data model.  

Specific v2 additions annotated in the tables below.  
## MEC 012 v2.1.1 (published, available on forge)

References:
* https://www.etsi.org/deliver/etsi_gs/MEC/001_099/012/02.01.01_60/gs_MEC012v020101p.pdf

* https://forge.etsi.org/rep/mec/gs012-rnis-api
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml

### Query Endpoints
| Endpoint     | Sandbox Usage             |Notes                |
| ---------- | --------------------- | -------------- |
| /queries/rab_info <br><br>_This resource is queried to retrieve information on Radio Access Bearers_ | Terminals are identified via UE_IPV4_ADDRESS type in associateId <br><br> Sandbox query input utilizes: <ul><li> cell_id (array): returns RabInfo for all terminals connected within the input cells (RabInfo includes terminal's assoicateId = IP address) </li><li> ue_ipv4_address (array): returns RabInfo for all input terminal's based on IP address (RabInfo includes terminal's connected Cell Id) </li><li> If no parameters are included: returns all RabInfo for all connected terminals in all cells </li><li> Both parameters are considered an "and" </li></ul> <br> All other parameter are ignored, including MEC app instance ID <br>Note: in the Sandbox context, all Service API requests are modeled as coming from the same MEC App instance.  | Although the MEC Sandbox does not include data paths to terminals, the rab_info query can be used to discover terminals and their connected cells in the Sandbox.  <br><br> As a Sandbox user, I can use this call to learn about all terminals in the network connected to 3GPP PoAs. I do not need to know the Terminal Id or the Cell Id. Input = null.  <br><br> As a Sandbox user, if I know a Terminal's Id (IP address), I can use this call to determine if and where that terminal is 3GPP connected (input = terminal IP address)  <br><br> As a Sandbox user, if I know a Cell Id, I can use this call to learn what terminals may be connected in that cell (input = cell id in EGCI format). <br><br> RABs will have a consistent QCI value (e.g. non-GBR, QCI = 80 -- Low latency eMBB applications, TCP/UDP-based).
| /queries/plmn_info <br><br>_This resource is queried to retrieve information on the underlying Mobile Network that the mobile edge application is associated to._ | Returns Sandbox PLMN: <ul><li> MCC = 001; <li> MNC = 001</ul> | As a Sandbox user, I can use this query to learn the PLMN of the Sandbox Network. <br><br> RNIS v1: cellId set to static value <br><br> Application instance identifier is ignored. |
| /queries/s1_bearer_info <br><br>_This resource is queried to retrieve S1-U bearer information related to specific UE(s)_ |	Not supporting - future consideration beyond STF587 | S1 Bearer too detailed for MEC Sandbox |
| /queries/layer2_meas <br><br> *v2 addition* <br><br>_This resource is queried to obtained detailed cellular measurement information, filtered by all measurements, per UE, per Cell, etc.  <br><br> L2 measurement information includes:  <ul><li> Cell level information (PRB usage, # of active GBR and non-GBR terminals, packet discard rate, etc.); <li> UE level information (connected cell ID, packet delay, packet discard rate, throughput, data volume, etc.) </ul>_ | STF587 Milestone D consideration, depending on remaining time and effort | As a Sandbox user, I can use this query to learn latency, packet loss, and throughput information for terminals.  I can also learn where terminals are connected in the 3GPP network.  <br><br> *Sandbox scope does not include data traffic to/from emulated terminal devices.  However, measurements that are network configuration or cell connection related could be supported (i.e. not active measurements, e.g. data volume)* |  
| ------------ | ------------------------- | ------------------- |
| [/queries/rab_info](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/rab_infoGET) <br><br>This resource is queried to retrieve information on Radio Access Bearers | Terminals are identified via UE_IPV4_ADDRESS type in associateId <br><br> Sandbox query input utilizes: <ul><li> cell_id (array): returns RabInfo for all terminals connected within the input cells (RabInfo includes terminal's assoicateId = IP address) </li><li> ue_ipv4_address (array): returns RabInfo for all input terminal's based on IP address (RabInfo includes terminal's connected Cell Id) </li><li> If no parameters are included: returns all RabInfo for all connected terminals in all cells </li><li> Both parameters are considered an "and" </li></ul> All other parameter are ignored, including MEC app instance ID <br>  | Although the MEC Sandbox does not include data paths to terminals, the rab_info query can be used to discover terminals that are connected to 4G cells in the Sandbox.  Terminals connected to WiFi or 5G PoA's do not have a RAB.  <br><br> As a Sandbox user, I can use this call to learn about all terminals in the network connected to 3GPP 4G PoAs. I do not need to know the Terminal Id or the Cell Id. Input = null.  <br><br> As a Sandbox user, if I know a Terminal's Id (IP address), I can use this call to determine if and where that terminal is 4G connected (input = terminal IP address)  <br><br> As a Sandbox user, if I know a Cell Id, I can use this call to learn what terminals may be connected in that cell (input = cell id in EGCI format). <br><br> All RABs have a consistent QCI value (e.g. non-GBR, QCI = 80 -- Low latency eMBB applications, TCP/UDP-based).
| [/queries/plmn_info](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/plmn_infoGET) <br><br>This resource is queried to retrieve information on the underlying Mobile Network (PLMN) that the mobile edge application is associated (i.e. connected). | Returns Sandbox PLMN: <ul><li> MCC = 001 <li> MNC = 001</ul>  Application instance identifier is ignored. | As a Sandbox user, I can use this query to learn the PLMN of the Sandbox Network.  |
| [/queries/s1_bearer_info](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/s1_bearer_infoGET) <br><br>This resource is queried to retrieve S1-U bearer information related to specific UE(s). | _Not supporting - future consideration beyond STF599_ | S1 Bearers are not modeled or emulated in the MEC Sandbox. |
| [/queries/layer2_meas](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/layer2_meas_infoGET) <br><br>This resource is queried to obtained detailed 4G cellular measurement information, filtered per UE, per Cell, etc. <br><br>_New STF599_ | Returns 4G L2 measurement information: <ol><li> Cell level information (for each 4G cell in the system): <ul><li> E-UTRAN Cell Global Identifier <li> # of active GBR and non-GBR terminals </li></ul> <li> UE level information (for each 4G connected terminal):  <ul><li> connected 4G E-UTRAN Cell ID <li> UE assoicated id (IPV4 address) <li> packet delay </ul></ol> <br> Input filter parameters include:  <ul><li> Cell Id List - results are filtered to include only the input cells </li><li> UE IPv4 address list - results are filtered to include only the input devices </li></ul>  | As a MEC Sandbox user or MEC app, I can use this query to learn how many 4G cells are in the system and how many terminals are connected to them.  I can also learn what terminals are connected to 4G cells and which specific cell.  <br><br> *Sandbox emulation does not include data traffic to/from emulated terminal devices.   As such, active measurements are currently not available in the Sandbox, such as throughput or data volume.  However, these may be supported in the future (beyond STF599).* |  

### Subscription Endpoints
> With RNIS v2.1.1 all subscription types are managed under a single _/subscriptions_ endpoint.  For readability, the following table presents each subscription type in a separate listing.  However, they are all managed under the GET, POST, PUT, and DELETE methods for _/subscriptions_ and _/subscriptions/{subscriptionId} endpoints._  <br><br>  The MEC Sandbox does not support subscription expiry deadlines or notifications.

| Endpoint     |  Sandbox Usage            | Notes               |
| ---------- | --------------------- | -------------- |
| /subscriptions <br><br>_The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor_ | Return list of all RNIS subscriptions | Sandbox supports a single requester (i.e. single ME app calling MEC services)
| /subscriptions/cell_change	<br><br>_Cell change notifications_ |	Notifications report cell changes based on input filters <br><br> Supported filters include: <ul><li> associateId: list of terminals based on IP address <li> plmnId: ignored <li> cellId: list of cells (if not present, all cell changes) <li> hoStatus: ignored (notifications on COMPLETE) </ul> Filters are considered an "and" between types, then an "or" within the list of a type. For example: UEs (1,2,3) + Cells (a,b,c). Notification will trigger if any of the UEs handover with any of the cells; Otherwise not. UE1 handover with Cell4 for example. <br><br> Expiry Deadline is ignored. | As a Sandbox User, I can set a notification with no filters and I will get all cell change events that occur in the sandbox. <br><br> As a Sandbox User, I can set a notification for a specific terminal (or set) and monitor its handover changes across the 3GPP points of access. <br><br> As a Sandbox User, I can set a notification to monitor a specific cell (or set of cells) and monitor handover events for that cell.
| /subscriptions/rab_est	<br><br>_RAB establishment notification_	| Notifications report RAB establishments in the network, i.e. when a terminal connects to the 3GPP network. <br><br> Sandbox examples include: <ul> <li> Terminal is added to the Macro Network Scenario by the user <li> Terminal connects to a 3GPP PoA after being connected to WiFi </ul> <br>Supported filters include: <ul> <li> plmnId: ignored <li> cellId: list of cell (if not present, RAB establishment on any cell) <li> QCI: ignored </ul> <br> Expiry Deadline is ignored. <br> <br> Notification returns: <ul><li> associateId: IPv4 address of the terminal <li> erabId: RAB Id for the terminal's bearer </ul> | As a Sandbox User, I can set a notification with no filters and I will get all RAB establishment events on any cell (terminal connection to 3GPP anywhere in the network). <br><br> As a Sandbox User, I can set a notification for a specific cell (or set of cells) and monitor RAB establishments for those cells. |
| /subscriptions/rab_mod	<br><br>_RAB modification notification_ | Not supporting - future consideration beyond STF587 | Within the MEC Sandbox RABs will not change QCR, GBR or MBR. |
| /subscriptions/rab_rel	<br><br>_RAB release notification_ | Notifications report RAB releases in the network, i.e. when a terminal disconnects from the 3GPP network. Sandbox examples include: <ul><li> Terminal is removed from the Macro Network Scenario by the user <li> Terminal disconnects from a 3GPP PoA and connects to WiFi (RAB is released). </ul>  <br> Supported filters include: <ul><li> erabId: single value (or associateId, list of IP addresses) <li> plmnId: ignored <li> cellId: list of cell (if not present, RAB release on any cell) <li> QCI: ignored </ul> <br> Expiry Deadline is ignored. | As a Sandbox User, I can set a notification with no filters and I will get all RAB release events on any cell (terminal disconnect from 3GPP anywhere in the network - device removed or WiFi connection). <br><br> As a Sandbox User, I can get a RAB release notification for a specific terminal and I will get a notification, if that terminal disconnects from 3GPP. |
| subscriptions/meas_rep_ue <br><br>_Notification providing a UE measurement report (4G LTE), when available_ | STF587 Milestone D consideration, depending on remaining time and effort <br><br> Periodic events fit into MEC Sandbox scope (e.g. PERIODICAL_REPORT_STRONGEST_CELLS). Sandbox to trigger reports based on an internal period (not MEC app or Sandbox user configurable).  <br><br> Trigger-based events not supported.  | As a Sandbox user, I can set notifications to monitor UEs connected 4G LTE that include:  signal levels, cell connection, and neighbor cells. |
| subscriptions/ta <br><br>_Notification providing a UE timing advance report_ | STF587 Milestone D consideration, depending on remaining time and effort  <br><br>  Sandbox to trigger TA reports based on an internal period (not MEC app or Sandbox user configurable). | Timing advanced calculated based on terminal distance from 3GPP PoA.  <br><br> Applied to both 4G and 5G Cells. |
| subscriptions/ca_reconf <br><br>_Carrier aggregation reconfiguration notification_ | Not supporting - future consideration beyond STF587 | Not supporting carrier aggregation emulation.  Too detailed for MEC Sandbox |
| subscriptions/s1_bearer <br><br>_S1 bearer modification notification_ | Not supporting - future consideration beyond STF587 | S1 Bearer too detailed for MEC Sandbox |
| subscriptions/nr_meas_rep_ue <br><br>_Notification providing a UE measurement report (5G NR), when available_ | STF587 Milestone D consideration, depending on remaining time and effort <br><br> Periodic events fit into MEC Sandbox scope (e.g. NR_PERIODICAL). Sandbox to trigger reports based on an internal period (not MEC app or Sandbox user configurable). <br><br> Trigger-based events not supported. | As a Sandbox user, I can set notifications to monitor UE when connected to 5G NR that include:  signal levels, cell connection, and neighbor cells.  


> Other miscellaneous v2 differences:

| v1.1.1   | v2.1.1     | Notes         |
| ----------|------------ | -------------- |
| PlmnInfo -- <br> includes Cell ID | Modified. <br><br> Cell ID removed from PlmnInfo | v1 Sandbox implementation setting Cell ID to static value |
| ------------ | ------------------------- | ------------------- | 
| [/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/subscriptionLinkList_subscriptionsGET) <br><br> GET method is used to request information about all RNIS the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions in RNIS for the requestor | Return list of all RNIS subscriptions | /subscriptions/{subscriptionId} returns the subscription information for a specific subscription.  |
| [/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs012-rnis-api/raw/v2.1.1/RniAPI.yaml#/rni/subscriptionsPOST) <br><br> POST method is used create a notification subscription instance. Upon success, the response contains entity body of the created subscription (including it's unique subscriptionId). | Utlized to create subscriptions in RNIS. | With the subscriptionId, /subscriptions/{subscriptionId}:  <ul><li> PUT method:  updates the subscription </li><li> DELETE: removes the subscription </li></ul>   |
| /subscriptions/CellChangeSubscription	<br><br>_Cell change notifications_ |	Notifications report cell changes based on input filters <br><br> Supported filters (filterCriteriaAssocHo) include: <ul><li> associateId: list of terminals based on IP address (if not present, all UEs are considered) <li> plmnId: ignored <li> cellId: list of cells (if not present, all cells are considered) <li> hoStatus: ignored (notifications on COMPLETE handover status only) <li> expiry deadline:  ignored </ul> Filters are considered an "and" between types, then an "or" within the list of a type. For example: UEs (1,2,3) + Cells (a,b,c). Notification will trigger if any of the UEs (1,2,3) handover with any of the cells (a,b,c); Otherwise, no notification is triggered. <br><br> Notification returns: <ul><li> associateId: IPv4 address of the terminal <li> srcEgci: handover source cell <li> trgEcgi: handover target cell </ul> | As a MEC Sandbox user or MEC app, I can set a notification with no filters and I will get all 4G cell change events that occur in the Sandbox. <br><br> As a MEC Sandbox user or MEC app, I can set a notification for a specific terminal (or set or terminals) and monitor its handover changes across the 4G points of access. <br><br> As a MEC Sandbox user or MEC app, I can set a notification to monitor a specific 4G cell (or set of 4G cells) and monitor handover events for that cell. <br><br> _A terminal device connecting to a 5G cell or to a WiFi access point is not considered a 4G handover event, according to the 3GPP standards.  As such, a device connecting to 5G/WiFi from 4G or to 4G from 5G/WiFi does not trigger a cell change notification in the MEC Sandbox._
| /subscriptions/RabEstSubscription	<br><br>_RAB establishment notification_	| Notifications report RAB establishments in the MEC Sandbox network, i.e. when a terminal connects to a 4G cell. <br><br> Sandbox examples include: <ul> <li> Terminal is added the MEC Sandbox by a user and it initially connects to a 4G macro cell <li> Terminal connects to a 4G PoA after being connected to WiFi or 5G </ul> <br>Supported filters (filterCriteriaQci) include: <ul> <li> cellId: list of cells (if not present, RAB establishment on any cell) <li> QCI: ignored <li> expiry deadline:  ignored </ul> <br> Notification returns: <ul><li> associateId: IPv4 address of the terminal <li> erabId: RAB Id for the terminal's bearer </ul> | As a Sandbox User, I can set a notification with no filters and I will get all RAB establishment events on any cell (terminal connection to 4G anywhere in the network). <br><br> As a Sandbox User, I can set a notification for a specific cell (or set of cells) and monitor RAB establishments for those cells. |
| /subscriptions/RabModSubscription	<br><br>_RAB modification notification_ | Not supporting - future consideration beyond STF599 | Within the MEC Sandbox RABs will not change QCR, GBR or MBR. |
| /subscriptions/RabRelSubscription	<br><br>_RAB release notification_ | Notifications report RAB releases in the network, i.e. when a terminal disconnects from a 4G PoA. Sandbox examples include: <ul><li> Terminal is removed by the user from the Sandbox Scenario when it was connected to a 4G PoA. <li> Terminal disconnects from a 4G PoA and connects to WiFi or 5G (RAB is released consistent with 3GPP standards). </ul>  <br> Supported filters (filterCriteriaQci) include: <ul><li> erabId: single value (must be included in the request to identify the RAB) <li> cellId: list of cells (filters for specific cells, if not present, RAB release on any cell) <li> QCI: ignored <li> expiry deadline:  ignored </ul> <br> Notification returns: <ul><li> ecgi: 4G cell Id where the RAB was released <li> erabId: RAB Id for the released terminal's bearer </ul> |  <br><br> As a Sandbox User, I can set a RAB release notification for a specific terminal and I will get a notification, if that terminal disconnects from 4G. |
| subscriptions/MeasRepUeSubscription <br><br>_Notifications providing UE measurement reports (4G LTE), when available_ <br><br> _New STF599_ | Notification reports 4G UE measurements, including:  <ul><li> associateId list: UE's IPV4 address <li> ecgi: UE's primary serving 4G cell id (i.e. connected 4G cell) <li> rsrp: serving cell reference signal received power <li> rsrq: serving cell reference signal received quality <li> trigger: PERIODICAL_REPORT_STRONGEST_CELLS <li> 4G neighbor cell information (cell id, rsrp, rsrq) <li> 5G neighbor cell information (NR cell id, rsrp, rsrq) </ul> <br> Supported filters (filterCriteriaAssocTri) include: <ul><li> associateId: UE IPv4 address (if missing all UEs) <li> ecgi: list of cells (filters for specific cells; if not present, measurements on any serving cell) <li> trigger: ignored (only periodic strongest cell supported) <li> expiry deadline:  ignored </ul> | As a Sandbox user, I can set notifications to monitor UE measurements from connected 4G LTE cells that include:  serving cell id, serving cell signal levels, and neighbor cells.  <br><br> _Sandbox supports periodic events (e.g. PERIODICAL_REPORT_STRONGEST_CELLS). Sandbox triggers reports based on an internal period of 1 second (which is not MEC app or Sandbox user configurable)._ <br><br> _RNIS specification improvement may be to include notification frequency, duration, and max instance filter criteria._ <br><br>  _MEC Sandbox network emulation prefers 5G cells over 4G cells.  As such, 5G neighbors may not be reported, as terminals will connect to 5G when detected in the network emulation._ |
| subscriptions/NrMeasRepUeSubscription <br><br>_Notification providing New Radio (NR) UE measurement reports (5G), when available_ <br><br> _New STF599_| Notification reports 5G NR UE measurements, including:  <ul><li> associateId: UE's IPV4 address <li> NR trigger: NR_PERIODICAL <li> 5G serving cell information: <ul><li> NR Cell Id <li> SSB reference signal received power <li> SSB reference signal received quality </ul> <li> Best neighbor cell info: <ul><li> SSB rsrp <li> SSB rsrq </li></ul> <li> 5G NR neighbor cell info list:  <ul><li> NR cell id <li> SSB rsrp <li> SSB rsrq </li></ul> <li> 4G neighbor cell info list:  <ul><li> 4G egci cell id <li> rsrp <li> rsrq </li></ul> </ul> <br> Supported filters (filterCriteriaNrMrs) include: <ul><li> associateId list: UE IPv4 address (if missing all UEs) <li> nrcgi: list of cells (filters for specific cells; if not present, measurements on any serving cell) <li> trigger: ignored (only NR periodic) <li> expiry deadline:  ignored </ul> | As a Sandbox user, I can set notifications to monitor UE measurements from connected 5G NR cells that include:  NR serving cell id, serving cell signal levels, and neighbor cells (4G and 5G). <br><br> _Sandbox supports periodic events (e.g. NR_PERIODICAL). Sandbox triggers reports based on an internal period of 1 second (which is not MEC app or Sandbox user configurable)._ <br><br> _RNIS specification improvement may be to include notification frequency, duration, and max instance filter criteria._  |
| subscriptions/MeasTaSubscription <br><br>_Notification providing a UE timing advance report_ | _Not supporting - future consideration beyond STF599_ | Timing advanced can be emulated in the MEC Sandbox calculated based on terminal distance from a 4G PoA.  |
| subscriptions/CaReconfSubscription <br><br>_Carrier aggregation reconfiguration notification_ | _Not supporting - future consideration beyond STF599_ | Not supporting carrier aggregation emulation.  Too detailed for MEC Sandbox |
| subscriptions/S1BearerSubscription <br><br>_S1 bearer modification notification_ | Not supporting - future consideration beyond STF599 | S1 Bearers are not modeled or emulated in the MEC Sandbox. |