NOTIFICATION AND TRIGGER FOR SERVICE LAYERS AND APPLICATIONS IN A SMALL CELL NETWORK
In current approaches to M2M architectures, no interworking application programming interfaces (API's) are exposed to the service layers that are in the local network. Thus, a service layer might not able to make various requests including, for example, that devices be triggered, that the service layer receive notifications when devices are connected to the network, and that the service layer receive notifications when devices are no longer connected to the network. Described herein is a small cell architecture that provides an interworking interface to applications and service layers that reside in the local small cell network. For example, a small cell or eNB may send a notification, for example to a Local Security Capability Exposure Function (L-SCEF) or a core network function, when a UE attaches to or disconnects from a local network.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/199,559 filed Jul. 31, 2015, the disclosure of which is hereby incorporated by reference as if set forth in its entirety herein.
BACKGROUNDReferring initially to
As further described in 3GPP TR 23.708, the SCEF is part of the “trust domain” in the sense that the core network will consider it a trusted entity with a secure connection to the core network. The SCEF, however, may be owned by a third party. The design of the interface between the SCEF and the core network should take ownership of the SCEF into account. For example, it might not be desirable to expose information, such as International Mobile Subscriber Identities (IMSI's), on this interface. As shown in
Referring now to
Turning now to Selected IP Traffic Offload (SIPTO), SIPTO is described in Section 4.3.15a.1 of 3GPP TS 23.401. SIPTO generally refers to the case in which IP traffic is routed to an IP network without it traversing the mobile operator's network. For example, this may be achieved when the UE 206 establishes a PDN connection with the L-GW 204 that is colocated with the (H)eNB 202/Small Cell or a standalone L-GW function. With respect to SIPTO at the Local Network with a stand-alone GW (e.g., with S-GW and L-GW colocated) function, this type of SIPTO is described in section 4.3.15a.2 of 3GPP TS 23.401. In this type of L-GW deployment, the L-GW 204 is a standalone function and may serve multiple eNBs/Small Cells. A Local Home Network ID is associated with the L-GW 204. The eNB/Small Cells inform the Mobile Management Entity (MME) 208 that the L-GW 204 is accessible, and identify the L-GW 204 with the Local Home Network ID.
With respect to SIPTO at the Local Network with the L-GW 204 colocated with the (H)eNB 202, this type of SIPTO is described in section 4.3.15a.3 of reference 3GPP TS 23.401. In this type of L-GW deployment, the L-GW 204 is collocated with the (H)eNB 202. A Local gateway (GW) Address is associated with the L-GW 204. The eNB/Small Cells inform the MME 208 that the L-GW 204 is accessible, and identify the L-GW 204 with the Local GW Address.
Turning now to device triggering, a use case is considered in which an Application Server (AS) wants to communicate with a device application or a device service layer, but the device has no IP address or the Application Server does not know the device's IP address. Examples of Application Servers include, without limitation, a Service Layer, a SCS, an Infrastructure Node (IN)-CSE, or a Middle Node (MN)-CSE. A device trigger refers to a message that is initiated by an Application Server and sent to a device, usually over the control plane. Because it is sent over the control plane, an IP address is not needed to address the device. The trigger is sent to an external 3GPP identifier, such as an MSISDN or a URI for example. Device triggers can be used to send small amounts of application or device service layer data from an Application Server to a UE. A small amount of data can be sent to an application when no response is expected. For example, an Application Server can use a device trigger to instruct a sensor to turn on. If the Application Server expects no response, then no IP connection would be required. Device triggers can also be used to instruct a device application, or service layer, to initiate communications with the Application Server. In some cases, if an Application Server wishes to address a Machine Type Communication (MTC) device application that does not have an IP address, a device trigger is required.
A trigger may be delivered to an MTC device application that already has an IP address. For example, an Application Server may wish to establish a connection with an MTC device application, but the Application Server might not know the device's IP address or the Application Server might be unsure of whether the MTC device has an IP address.
With respect to X2 handover, in E-UTRAN, the eNB's can perform direct handover via the direct interface (known as X2 interface) between eNodeBs. In the X2-based handover (HO) procedure, which is described in oneM2M TS-0001, the source eNodeB and the target eNodeB prepare and execute the HO procedure. At the end of the HO execution, the target eNodeB requests the MME to switch the downlink data path from the source eNodeB to the target eNodeB. The MME in turn requests the serving GW to switch the data path toward the new eNodeB.
With respect to S1 handover procedures, which are described in 3GPP TS 23.401, an S1-based HO procedure may be used when the X2 procedure cannot be used. For example, the S1 based HO procedure may be used when there is no X2 interface between the source and target eNodeB's, or when the target eNodeB requires that a different MME and/or S-GW be used. The S1 procedure may be initiated when the eNodeB sends a handover required message to the MME via the S1-MME reference point.
With respect to Non-Access Stratum (NAS) Signaling, NAS signaling between the UE and MME is described in 3GPP TS 24.301, “Non-Access Stratum (NAS) protocol for Evolved Packet System (EPS)”; Stage 3, which is incorporated by reference as if its contents are set forth herein. As described in 3GPP TS 24.301, the NAS signaling between the UE and MME traverses the eNodeB/Small Cell, but it is usually ciphered and always integrity protected so that it cannot be modified or altered by the eNodeB/Small Cell. As further described in 3GPP TS 24.301, the eNodeB/Small Cell may append information to an NAS message, but may not modify or inspect the message itself.
Referring now to
Referring also to
In current approaches to M2M architectures, as described above, no interworking API's are exposed to the Service Layers that are in the local network. Thus, a service layer might not able to make various requests including, for example, that devices be triggered, that the service layer receive notifications when devices are connected to the network, and that the service layer receive notifications when devices are no longer connected to the network.
SUMMARYThis Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to limitations that solve any or all disadvantages noted in any part of this disclosure.
Described herein is a small cell architecture that provides an interworking interface to applications and service layers that reside in the local small cell network. In one embodiment, an apparatus, which may comprise a core network function, small cell, base station, eNodeB, NodeB, Home eNodeB, or Home NodeB for example, comprises a processor, a memory, and communication circuitry. The apparatus is connected to a local network via its communication circuitry. The apparatus further comprises computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to receive a request that a node be notified when a user equipment (UE) connects to the local network. The node may be a Local Service Capability Exposure Function (L-SCEF), a core network function, Service Layer, an M2M Server, a Gateway, a Server, or a Local Gateway. The UE may also be capable of connecting to the local network via a local network anchor, for instance a local IP access connection. The apparatus may send a notification when the UE attaches to the local network. The apparatus may also send a notification when the UE disconnects from the local network. The apparatus may be authorized to send the notification by a mobility management entity (MME). Such authorization information may be received in an Initial Context Setup/Attach Accept message, a Tracking Area Update Accept Message, or a Path Switch Request Acknowledge message. Alternatively, the apparatus may be authorized to send the notification by an administrator associated with the local network, such as a core network function for example.
In order to facilitate a more robust understanding of the application, reference is now made to the accompanying drawings, in which like elements are referenced with like numerals. These drawings should not be construed to limit the application and are intended only to be illustrative.
Referring to
It is recognized herein that the 3GPP has not yet considered that a service layer may be hosted inside of a small cell network, and may be accessible to user equipments (UEs) via a Local Gateway (L-GW). The example deployment 600 that is shown in
As used herein, the term service layer refers to a functional layer within a network service architecture. Service layers are typically situated above the application protocol layer such as HTTP, CoAP or MQTT, and provide value added services to client applications. The service layer also provides an interface to core networks at a lower resource layer, such as for example, a control layer and transport/access layer. The service layer supports multiple categories of (service) capabilities or functionalities including service definition, service runtime enablement, policy management, access control, and service clustering. Recently, several industry standards bodies (e.g., oneM2M) have been developing M2M service layers to address the challenges associated with the integration of M2M types of devices and applications into deployments such as the Internet/Web, cellular, enterprise, and home networks. An M2M service layer can provide applications and/or various devices with access to a collection of, or a set of, the above mentioned capabilities or functionalities, supported by the service layer, which can be referred to as a CSE or SCL. A few examples include but are not limited to security, charging, data management, device management, discovery, provisioning, and connectivity management which can be commonly used by various applications. These capabilities or functionalities are made available to such various applications via APIs that make use of message formats, resource structures, and resource representations defined by the M2M service layer. The CSE or SCL is a functional entity that may be implemented by hardware and/or software and that provides (service) capabilities or functionalities exposed to various applications and/or devices (e.g., functional interfaces between such functional entities) in order for them to use such capabilities or functionalities.
With particular reference to
By way of example, if the same API's are exposed by the Small Cell network 606 as are exposed by the Evolved Packet Core (EPC) 608, it is recognized herein that the enablement logic for such API's will be different. For example, it is recognized herein that it might not be efficient to route an API call from the Small Cell network 606 toward the SCEF 610 in the EPC 608 for processing, and route a response back down to the small cell network 606. In an example embodiment, new enablement logic is provided in the small cell network 606 so that the API's work.
Other issues are addressed herein. For example, still referring generally to
In accordance with various embodiments described below, an API is defined to expose the above-mentioned functionalities to the Local Network Service Layer. Further, necessary functionality in the Local Network, Small Cell, and Core Network is described herein to enable the API. In some cases in which the functionality is not provided by the Local Network, the UE may have to be provisioned to know that it should establish a LIPA connection when it is connected to certain small cells, and the small cells would have to be provisioned with the contact address (e.g., IP Address or FQDN) of the Local Network Service Layer. In such cases, the Service Layer might not be able to initiate contact with the UE.
Referring now to
Still referring to
With respect to connectivity status notifications, in some cases, the service layer 703 in the local network 704 may be notified when a given UE (e.g., a UE 710) connects to the Small Cell network and when the given UE is capable of establishing a LIPA PDN connection with the Service Layer 703. This notification may be sent when the UE attaches to the Small Cell 706 in the Small Cell Network or performs a path switch to the Small Cell Network. In some cases, the notification and trigger features might not be enabled for all UE's. For example, a UE may have information in its subscription information that indicates whether it is able to receive triggers from certain service layers. Information may also indicate whether certain service layers are authorized to receive notifications when the UE enters the small cell network. Alternatively, Service Layers may provide the L-SCEF 701 with the identities of the UE's for which it wishes to receive notifications.
In accordance with another example embodiment, as further described below, the service layer 703 may be notified when a UE leaves the Small Cell network and is no longer capable of establishing a packet data network (PDN) connection with the Service Layer 703. This notification may be sent when a UE detaches from a Small Cell in the Small Cell Network or performs a path switch away from the Small Cell Network.
With respect to trigger requests, as described below, the service layer 703 may trigger a UE. It will be understood that, as used herein, a “small cell network” may consist of more than one small cell and more than one Service Layer. In some cases, a single L-SCEF and L-GW may serve the entire local Small Cell network.
Referring now to
A service layer in the local network, for instance the service layer 703, may request to be notified when a particular UE connects to the small cell network and when the particular UE is capable of connecting to the local IP network via the L-GW. Similarly, the Service Layer may be notified when the device disconnects from the Small Cell Network. In some cases, these features might not be enabled for all UE's. For example, these features may be enabled for UE's whose subscription indicates that they are capable of establishing a LIPA connection and that they have been authorized. In one embodiment, the L-SCEF 701 knows that a notification is required, and the L-SCEF 701 knows when to send the notification. In some cases, each Service Layer tells the L-SCEF 701 that it wants to be notified about the connectivity status of a particular UE, and the L-SCEF 701 is provisioned with information so that it knows whether the Service Layer is authorized to receive notifications about the UE (e.g., see
Referring in particular to
In one example, the authorization source 802 is the management system. For example, a TR-069 Auto Configuration Server (ACS) may be pre-provisioned in each small cell of the small cell network via a management plane protocol, such as TR-069 for example. The TR-069 protocol is described in TR-069, CPE WAN Management Protocol, Issue 1: Amendment 4, July 2011. In other words, the TR-069 ACS can indicate to the Small Cell network which UE's are enabled for triggers, what service layers are allowed to trigger each UE, and/or which service layers should be notified about the presence of a particular UE.
In another example, the authorization source 802 is the Mobile Management Entity (MME). While the MME 802 is illustrated for purposes of example, it will be understood that the illustrated operations that are performed by the MME 802 may alternatively be performed by a core network function. For example, an indication that connection status notifications are permitted and an identification of the associated service layers can be maintained in the UE's subscription in the Home Subscriber Server (HSS). When a UE attaches to a given MME or moves to a given MME, the subscription information can be passed to the MME (or core network function). When the UE attaches to the Small Cell, the information can be passed to the Small Cell, as described in accordance with an example embodiment that is described with reference to
In yet another example, still referring to
With continuing reference to
In accordance with an example embodiment, the Authorization Message at 1a may include the following information, presented by way of example and without limitation, an identifier of a server layer (e.g., the service layer 703) and an identifier of a UE. The UE identifier may be the MSISDN or an external identifier. An IMSI may also be used as the UE identifier, but the IMSI may be less attractive than other identifiers for security reasons. At 1b, in accordance with the illustrated example, the Small Cell 804 may acknowledge the authorization information.
At 2a, when the authorization source 802 is the MME, in accordance with one example, the Small Cell 804 may send a notification to the L-SCEF 701 each time a UE attaches, detaches, hands over into the small cell, or hands over out of the small cell. In some cases in which there are multiple small cells in the small cell network, the L-SCEF 701 may receive this notification each time the UE moves to a different small cell. Thus, the message at 2a may notify the L-SCEF 701 that a given UE device is available or not available, and the message at 2a may the L-SCEF 701 of which Small Cell the UE is attached. The Authorization Message at 2a may include the following information, presented by way of example and without limitation, an identifier of the service layer 703 (Service Layer Identifier), a UE identifier (e.g., an MSISN, external identifier, or IMSI), a Small Cell ID, and an “attached” or “detached” indication. At 2b, in accordance with the illustrated embodiment, the L-SCEF 701 may acknowledge the availability information. In some cases in which there is only one Small Cell in the small cell network, the L-SCEF 701 may be integrated with the Small Cell 804 and L-GW. Otherwise, the L-SCEF 701 may be deployed separately. If it is deployed separately, the interface between the L-SCEF 701 and Small Cell 804 may be Diameter-based and may be secured via Transport Layer Security (TLS), or it may be a customized protocol that uses the Stream Control Transmission Protocol (SCTP) as a transport, for example.
Still referring to
Referring now to
Still referring to
At 1, in accordance with the illustrated embodiment, the E-UTRAN Initial Attach procedure described in section 5.3.2.1 of 3GPP TS 23.401 begins. In some cases, if the eNB/Small Cell 804 is associated with an L-GW, then the address of the L-GW may be included in the Attach Request Message from the eNB/Small Cell 804 to the MME 904. Step 1 in
Still referring to
At 6a, in accordance with the illustrated example, a small cell connection notification is sent to the L-SCEF 701 from the Small Cell/eNB 804. For example, the Small Cell/eNB 804 notifies the L-SCEF 701 that the UE has attached. The message at 6a may serve both as a notification that the UE is attached and a notification that there are service layer(s) in the local network that are permitted to receive notifications when the UE attaches. The message at 6a may include the following information, presented by way of example and without limitation, the UE identifier (e.g, MSISND or external ID), service layer identifiers associated with service layers that are allowed to receive notifications, and a cause (e.g, Attach, Detach, UE is no longer part of the Closed Subscriber Group (CSG), etc.). At 6b, the L-SCEF 701 may acknowledge the notification by sending a message to the Small Cell/eNB 804. At 7a, in accordance with the illustrated example, a Local Network Connection Notification) is sent to the service layer 703 by the L-SCEF 701. For example, if a given service layer (e.g., the service layer 703) previously requested a notification corresponding to the UE's connectivity, the Small Cell/eNB 804 may send a Connection Notification to the L-SCEF 701 indicating that the UE is attached. If the given service layer (e.g., service layer 703) is authorized to receive a notification, then the notification may be forwarded to the Service Layer at 7a. The message at 7a may include the identifier of the UE, as described above. At 7b, the Service Layer 703 acknowledges the notification.
Turning now to connection notifications during handover, in some cases, when a UE moves to a Small Cell/eNB, the Small Cell/eNB must be notified if there are Service Layers in the local network that are permitted to receive connectivity notifications. In one embodiment, the Tracking Area Update (TAU) procedure is updated so that the Small Cell/eNB is notified if Service Layers in the local network are permitted to receive connectivity notifications. A TAU may be required after or during successful handovers (X2 and S1). Thus updating the TAU procedure guarantees that a notification is sent during all handovers in accordance with an example embodiment. The current tracking area update procedures are described in section 5.3.3 of reference 3GPP TS 23.401. A tracking area update procedure is executed after each successful X2 or S1 hand over. Thus it is recognized herein that the TAU may be modified to notify the new Small Cell/eNB if there are Service Layers in the local network that are permitted to receive connectivity notifications.
By way of example, when the eNB receives a “TAU Request” from a UE, it will forward the “TAU Request” to the MME. The eNB may send additional information to the MME, such as the L-GW Address or Local Home Network ID for example. Currently, when the MME responds to with a “TAU Accept”, the message is passed to the UE by the eNB. The eNB does not extract any information from the request. In an example embodiment, the MME sends additional information to the Small Cell/eNB so that the Small Cell/eNB will know that there are Service Layers in the local network that are permitted to receive connectivity notifications. This may be done in a way that is similar to how the eNB sends additional information to the MME with the “TAU Request” message. When a UE performs TAU as described in section 5.3.3 of 3GPP TS 23.401, if the MME provided an L-GW address/Local Home Network ID and it matches one of the L-GW addresses/Local Home Network IDs that were provided to the MME by the HSS, then the MME may inform the eNB/Small Cell which service layers in the local network are permitted to receive connectivity notifications. The message sent by the MME may contain the following information, presented by way of example and without limitation, the UE Identifier (e.g., MSISDN or External ID of the UE), L-GW Addresses and Local Home Network Identifiers (e.g., the address of the L-GW in the local network), and service layer identifiers. The L-GW addresses may match the address that was provided to the MME in the “TAU Request”. Thus, it might not require being part of the message. The service layer identifiers in the message may be a set of service layer ID's that are allowed to receive notifications. In accordance with the above-described embodiment, the updated “TAU Accept” may cause the Small Cell/eNB to send the “Small Cell Connection Notification” message (described above, e.g., at 6a of
In some cases, if the handover source Small Cell/eNB was also in the Local Network, then the UE may have already been attached to the local network. Thus, the “SC Connection Notification” may serve as a notification to the L-SCEF that the UE is now connected via a different Small Cell/eNB. Further, the “LN Connection Notification” message may not be necessary.
In an alternative embodiment, the X2 handover procedure is updated so that the Small Cell/eNB is notified if Service Layers in the local network are permitted to receive connectivity notifications. With respect to X2 handovers, when a UE performs an X2-Based Handover as described in section 5.5.1.1 of 3GPP 23.401, the target Small Cell/eNB indicates the L-GW Address/Local Home Network ID to the MME in the “Path Switch Request” message. If the target eNB/Small Cell provided an L-GW address/Local Home Network ID, and it matches one of the L-GW addresses/Local Home Network IDs that was provided to the MME by the HSS, then the “Path Switch Request Ack” message is modified, in accordance with an example, to inform the eNB/Small Cell which service layers in the local network are permitted to receive connectivity notifications. Thus, the “Path Switch Request Ack” message may include the following information, presented by way of example and without limitation, the UE Identifier (e.g., MSISDN or External ID of the UE), L-GW Addresses and Local Home Network Identifiers (e.g., the address of the L-GW in the local network), and service layer identifiers. The L-GW addresses may match the address that was provided to the MME in the “TAU Request”. Thus, it might not require being part of the message. The service layer identifiers in the message may be a set of service layer ID's that are allowed to receive notifications. In accordance with the above-described embodiment, the updated “Path Switch Request Ack” may cause the Small Cell/eNB to send the “SC Connection Notification” message to notify the L-SCEF that the UE is now connected to the Small Cell/eNB (e.g., see
Turning now to connection notifications during detach, a Small Cell may send an “SC Connection Notification” (Small Cell Connection Notification) to the L-SCEF when the “S1 Release Procedure” completes. This notification may be used to indicate to the L-SCEF that a UE is detached from the small cell. This notification may serve both as a notification that the UE is detached and as a notification that there are service layer(s) in the local network that should receive notifications when the UE detaches. The message may include the following information, presented by way of example and without limitation, the UE identifier (e.g, MSISDN or External ID of the UE), one or more service layer identifiers associated with service layers that are permitted to receive notifications, and a cause (e.g., Attach, Detach, UE no longer part of CSG, etc.)
The “S1 Release Procedure” is detailed in section 5.3.5 of 3GPP 23.401. The “S1 Release Procedure” is executed when the UE detaches and for other causes, such as when the UE is removed from the Small Cell's CSG for example. The Small Cell may indicate the cause to the L-SCEF so that the L-SCEF may indicate the cause to the Service Layer.
Described above are examples of how a service layer can be notified when a UE is in a Small Cell Network. Once a Service Layer knows that the UE is in the Small Cell network, the Service Layer may decide that it wants to establish a user plane connection with the UE. However, the UE may or may not have a LIPA PDN connection with the L-GW. In other words, the UE may or may not be connected to the local IP network. If the UE is connected to the Local IP network, the Service Layer might not be able to initiate a connection with the UE because it does not know the IP address of the UE. Described below are examples of trigger requests that may address the above-described scenario, among others.
In one example embodiment, triggers are NAS based. Referring to
Still referring to
At 2, in accordance with the illustrated example, the L-SCEF 701 replies to the Trigger Request with an indication of whether or not the request is authorized by the L-SCEF 701. The response at 2 may also indicate whether the trigger will be attempted. At 3, the L-SCEF 701 forwards the Trigger Request to the Small Cell 804. If the Device ID that was provided in the message at 1 was an Alpha Number Value, for example, then the L-SCEF 701 may convert the Device ID to an IMSI, MSISDN, or an External Identifier. Alternatively, if the Device ID that was provided in the message at 1 was an External Identifier, for example, then the L-SCEF 701 may convert the Device ID to an IMSI or MSISDN. At 4, the Small Cell/eNB 804 forwards the Trigger Request to the MME 904. The message at 4 may be sent in a new S1-AP message on the S1-MME interface. For example, the Small Cell/eNB 804 may maintain an S1-MME context for each UE that is attached to the Small Cell 804. In accordance with an example embodiment, the Small Cell/eNB 804 also maintain a Special S1-MME context for the L-SCEF 701. This S1-MME context may be used by the L-SCEF 701 to transfer NAS PDU's to the MME 904. The NAS PDU's may carry signaling such as Trigger Requests, Authorization Requests, etc. When a NAS PDU is sent by a UE (e.g., the UE 1002) to the MME 904, it may be sent through the eNB/Small Cell 804 such that the eNB/Small Cell 804 is not able to inspect the contents. The UPLINK NAS TRANSPORT message, as described in 3GPP TS 36.413, “Evolved Universal Terrestrial Radio Access Network (E-UTRAN); S1 Application Protocol (S1AP),” which is incorporated by reference as if set forth in its entirety herein, can be used to carry the trigger request to the MME 904. In one example, a special MME UE S1AP ID and eNB UE S1AP ID is established for the S1AP context that is to be associated with the L-SCEF 701. The NAS PDU in the UPLINK NAS TRANSPORT message may carry a new “Trigger-Request” message. The “Trigger-Request” message may carry various information elements, such as, for example and without limitation, the Service Layer ID (e.g., an IP Address, FQDN, or other alpha numeric value that identifies the Service Layer) and the Device ID, Application Identifier, and Trigger Payload that was provided at 3. Alternatively, the eNB/Small Cell 804 may map the device identity from 3 to an S-TMSI. In some cases in which the eNB/Small Cell 804 does this, it may also send the trigger request to the MME 904 on the UE's S1-MME context, rather than the special L-SCEF S1-MME context.
At 5, in accordance with the illustrated example, the MME 904 sends an Authorization request to the HSS. The Authorization request may include the Device ID, Service Layer ID, and Reference number. The Authorization request may also include the Small Cell/eNB Identity or the Local Network Identifier. The MME 904 may map the Device ID to an IMSI before the request is sent to the HSS, or the MME may send the Device ID to the HSS and the HSS may map the ID to an IMSI. In an example, the HSS verifies that the ID associated with the Service Layer 703 is permitted to trigger the UE 1002. The HSS may optionally check if the Service Layer 703 is permitted to trigger the UE 1002 with the indicated Local Network or Small Cell/eNB 804. At 6, the MME 904 may deliver the Trigger to the UE 1002 in a NAS PDU in a DOWNLINK NAS TRANSPORT MESSAGE. The NAS PDU may contain the Trigger Payload, Application ID, and Reference Number. In some cases, for example if there is not a LIPA PDN connection already established, the UE 1002 establishes a LIPA PDN connection with the APN that was indicated in the Trigger request. The UE 1002 may then establish contact with the Service Layer 703 in the Local Network. The UE 1002 may obtain the Service Layer's IP Address and Port Number from the Trigger Request, or it may obtain an FQDN from the trigger request and map it to an IP Address and Port Number. “Establishing Contact” with the Service Layer 703 may indicate that an Application or Service Layer on the UE 1002 registers with the Service Layer 703 in the local network.
As an alternative example, the Small Cell 804 may bypass the MME 904 and send the trigger directly to the UE 1002 in an RRC message. It is recognized herein, however, that passing the trigger request back to the core network before sending it to the UE 1002 allows the Core Network to inspect the traffic, for example, for charging purposes. For example, the MME and/or HSS can generate charging records for the request. The MME and HSS can create CDR's for the operation. Additionally, passing the trigger request back to the core network before sending it to the UE 1002 allows the Core Network to authorize the request via the MME and/or HSS.
In another example embodiment, the trigger delivery is SMS based. For example, referring again to
At 4, continuing with the SMS-based trigger example, the MME 904 may choose to reject any SMS with an origination address that indicates that the SMS came from a Service Layer, and with a PID field that does not indicate that the SMS is a trigger. Similarly, the MME 904 may reject any SMS with an origination address that indicates that the SMS did not come from a Service Layer, and with a PID field that indicates that the SMS is a trigger. The MME 904 may then deliver the SMS message to the SMS-IWMSC/SMS-SC as it would normally deliver a Mobile Originated SMS. The SMS-SC may verify that the originating address is permitted to trigger the destination address, and then the SMS-SC may deliver the trigger using existing SMS over NAS Mobile Terminated SMS procedures.
In an alternative approach, the MME 904 may choose to not deliver the SMS to the SMS-SC, and the MME 904 may deliver the SMS directly to the recipient UE 1002. The authorization may be performed via information from the HSS. Normally, this might not be possible, however, the MME 904 may conclude that because the SMS is a trigger and it originated in a local network, the recipient must be in the local network and attached to the same MME pool.
Referring now to
Still referring to
Referring now to
Still referring to
Thus, as described above, an apparatus or node can include a processor, a memory, and communication circuitry. The apparatus may be connected to a local network via its communication circuitry, and the apparatus may further include computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to receive a request. The request can be a trigger request to trigger a UE. Such a trigger request may indicate an access point name associated with the local network, such that the UE establishes a local IP access connection with the local network. The node may forward the trigger request to a core network function or the mobility management entity for delivery to the UE. The node may format the trigger request for the core network function or the mobility management entity as an NAS PDU or an SMS over NAS PDU. Alternatively, or additionally, the request may indicate that a node be notified when a UE connects to the local network. As described above, the node, for example and without limitation, may be a at least one of a core network function, a Local Service Capability Function (L-SCEF), a Service Layer, an M2M Server, a Gateway, a Server, or a Local Gateway. The UE may be capable of connecting to the local network via a local network anchor. Thus, the apparatus may send a notification when the UE attaches to the local network. Further, the apparatus may send a notification when the UE disconnects from the local network. As described above, the apparatus may be authorized to send the notification by a mobility management entity or core network function. The authorization and information related thereto may be received in an Initial Context Setup/Attach Accept message, a Tracking Area Update Accept Message, or a Path Switch Request Acknowledge message. Subscription information associated with the UE may indicate to the mobility management entity or the core network function that the apparatus is authorized to send the notification. In another embodiment, the apparatus may be authorized to send the notification by an administrator associated with the local network. The apparatus, for example and without limitation, may comprise a core network function, a small cell, base station, eNodeB, NodeB, Home eNodeB, or Home NodeB.
Turning now to example graphical user interfaces (GUIs), a Small Cell of the Small Cell Network may have a configuration GUI that allows a network administrator to configure the Small Cells with various information, such as, for example and without limitation, contact information for the L-SCEF 701, contact information for the L-GW 1004, and which Service Layers are permitted to access the L-SCEF 701.
In an example, when the actuator 1302a (L-SCEF Configuration) is selected, a GUI 1400 may be displayed (see
Turning now to oneM2M deployments of the above-described features, the Service Layer(s) and applications that interface to the L-SCEF may be oneM2M MN-CSE(s) and/or IN-CSE(s) or AE(s). The oneM2M Mcn reference point may be implemented via the L-SCEF API, or the Mcn interface may map to the interface between the L-SCEF and L-GW, and between the L-SCEF and eNB. The UE Application or Service Layer that receives a trigger may be a oneM2M AE or ASN-CSE, respectively. In an example embodiment, the L-SCEF API may be bound to a REST based protocol, such as HTTP for example. Alternatively, it may be bound to a protocol such as SOAP or LDAP, for example.
In another example, the L-GW and L-SCEF may be integrated with each other, and the LT6b interface between the two functions may be implemented via function calls. Alternatively, or additionally, for example, the Interface between the L-SCEF and L-GW may be based on the Diameter Protocol, SOAP, LDAP, GTP-C, bound to a REST based protocol such as HTTP, or implemented as an application protocol that runs on top of SCTP. By way of example,
In another example embodiment, the Small Cell and L-SCEF may be integrated with each other and the S1-L interface between the two functions may be implemented via function calls. Alternatively, or additionally, the Interface between the L-SCEF and L-GW may be based on the Diameter Protocol, SOAP, LDAP, bound to a REST based protocol such as HTTP, or implemented as an application protocol that runs on top of SCTP. In some cases, if the interface is implemented as an application protocol that runs on top of SCTP, the interface may be a modified version of the 3GPP NAS or S1-AP protocols.
As shown in
As shown in
Referring to
Similar to the illustrated M2M service layer 22, there is the M2M service layer 22′ in the Infrastructure Domain. M2M service layer 22′ provides services for the M2M application 20′ and the underlying communication network 12′ in the infrastructure domain. M2M service layer 22′ also provides services for the M2M gateway devices 14 and M2M terminal devices 18 in the field domain. It will be understood that the M2M service layer 22′ may communicate with any number of M2M applications, M2M gateway devices and M2M terminal devices. The M2M service layer 22′ may interact with a service layer by a different service provider. The M2M service layer 22′ may be implemented by one or more servers, computers, virtual machines (e.g., cloud/compute/storage farms, etc.) or the like.
Still referring to
The M2M applications 20 and 20′ may include applications in various industries such as, without limitation, transportation, health and wellness, connected home, energy management, asset tracking, and security and surveillance. As mentioned above, the M2M service layer, running across the devices, gateways, and other servers of the system, supports functions such as, for example, data collection, device management, security, billing, location tracking/geofencing, device/service discovery, and legacy systems integration, and provides these functions as services to the M2M applications 20 and 20′.
Generally, a service layer (SL), such as the service layers 22 and 22′ illustrated in
Further, the methods and functionalities described herein may be implemented as part of an M2M network that uses a Service Oriented Architecture (SOA) and/or a resource-oriented architecture (ROA) to access services, such as the above-described Network and Application Management Service for example.
The processor 32 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like. The processor 32 may perform signal coding, data processing, power control, input/output processing, and/or any other functionality that enables the node 30 to operate in a wireless environment. The processor 32 may be coupled to the transceiver 34, which may be coupled to the transmit/receive element 36. While
As shown in
The transmit/receive element 36 may be configured to transmit signals to, or receive signals from, other nodes, including M2M servers, gateways, devices, and the like. For example, in an embodiment, the transmit/receive element 36 may be an antenna configured to transmit and/or receive RF signals. The transmit/receive element 36 may support various networks and air interfaces, such as WLAN, WPAN, cellular, and the like. In an embodiment, the transmit/receive element 36 may be an emitter/detector configured to transmit and/or receive IR, UV, or visible light signals, for example. In yet another embodiment, the transmit/receive element 36 may be configured to transmit and receive both RF and light signals. It will be appreciated that the transmit/receive element 36 may be configured to transmit and/or receive any combination of wireless or wired signals.
In addition, although the transmit/receive element 36 is depicted in
The transceiver 34 may be configured to modulate the signals that are to be transmitted by the transmit/receive element 36 and to demodulate the signals that are received by the transmit/receive element 36. As noted above, the node 30 may have multi-mode capabilities. Thus, the transceiver 34 may include multiple transceivers for enabling the node 30 to communicate via multiple RATs, such as UTRA and IEEE 802.11, for example.
The processor 32 may access information from, and store data in, any type of suitable memory, such as the non-removable memory 44 and/or the removable memory 46. The non-removable memory 44 may include random-access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 46 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like. In other embodiments, the processor 32 may access information from, and store data in, memory that is not physically located on the node 30, such as on a server or a home computer. The processor 32 may be configured to control lighting patterns, images, or colors on the display or indicators 42 to reflect the status of a node or configure a node a UE (e.g.,
The processor 32 may also be coupled to the GPS chipset 50, which is configured to provide location information (e.g., longitude and latitude) regarding the current location of the node 30. It will be appreciated that the node 30 may acquire location information by way of any suitable location-determination method while remaining consistent with an embodiment.
The processor 32 may further be coupled to other peripherals 52, which may include one or more software and/or hardware modules that provide additional features, functionality and/or wired or wireless connectivity. For example, the peripherals 52 may include an accelerometer, an e-compass, a satellite transceiver, a sensor, a digital camera (for photographs or video), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, and the like.
In operation, CPU 91 fetches, decodes, and executes instructions, and transfers information to and from other resources via the computer's main data-transfer path, system bus 80. Such a system bus connects the components in computing system 90 and defines the medium for data exchange. System bus 80 typically includes data lines for sending data, address lines for sending addresses, and control lines for sending interrupts and for operating the system bus. An example of such a system bus 80 is the PCI (Peripheral Component Interconnect) bus.
Memory devices coupled to system bus 80 include random access memory (RAM) 82 and read only memory (ROM) 93. Such memories include circuitry that allows information to be stored and retrieved. ROMs 93 generally contain stored data that cannot easily be modified. Data stored in RAM 82 can be read or changed by CPU 91 or other hardware devices. Access to RAM 82 and/or ROM 93 may be controlled by memory controller 92. Memory controller 92 may provide an address translation function that translates virtual addresses into physical addresses as instructions are executed. Memory controller 92 may also provide a memory protection function that isolates processes within the system and isolates system processes from user processes. Thus, a program running in a first mode can access only memory mapped by its own process virtual address space; it cannot access memory within another process's virtual address space unless memory sharing between the processes has been set up.
In addition, computing system 90 may contain peripherals controller 83 responsible for communicating instructions from CPU 91 to peripherals, such as printer 94, keyboard 84, mouse 95, and disk drive 85.
Display 86, which is controlled by display controller 96, is used to display visual output generated by computing system 90. Such visual output may include text, graphics, animated graphics, and video. Display 86 may be implemented with a CRT-based video display, an LCD-based flat-panel display, gas plasma-based flat-panel display, or a touch-panel. Display controller 96 includes electronic components required to generate a video signal that is sent to display 86.
Further, computing system 90 may contain communication circuitry, such as for example a network adaptor 97 that may be used to connect computing system 90 to an external communications network, such as network 12 of
Referring now to
It is recognized herein that NFV may be applied to any data plane packet processing and control plane function in mobile and fixed networks. Examples include, presented without limitation:
-
- Switching elements (e.g., BNG, CG-NAT, routers)
- Mobile network nodes (e.g., HLR/HSS, MME, SGSN, GGSN/PDN-GW, RNC, eNodeB)
- Functions contained in home routers and set top boxes to create virtualized home environments
- Converged and network-wide functions (e.g., AAA servers, policy control, and charging platforms
- Application-level optimization (e.g., CDNs, Cache Servers, Load Balancers, Application Accelerators)
- Security functions (e.g., firewalls, virus scanners, intrusion detection systems, spam protection
It is recognized herein that applying NFV may provide various benefits to network operators, which may contribute to dramatic changes in the telecommunications industry landscape. For example, and without limitation, it is recognized herein that NFV may provide for:
-
- Reduced equipment costs and reduced power consumption through consolidating equipment and exploiting the economies of scale of the IT industry.
- Increased velocity of Time to Market by minimizing the typical network operator cycle of innovation.
- The possibility of running production, test and reference facilities on the same infrastructure provides more efficient testing and integration, reducing development costs and time to market.
- Targeted service introduction based on geography or customer sets. Services can be rapidly scaled up/down as required.
- The enablement of a wide variety of eco-systems (encouraging openness).
- Optimized network configuration and/or topology in near real time based on the actual traffic/mobility patterns and service demand.
- The support of multi-tenancy, thereby allowing network operators to provide tailored services and connectivity for multiple users, applications, internal systems, or other network operators, which may co-existing on the same hardware with appropriate secure separation of administrative domains.
- Reduced energy consumption by exploiting power management features in standard servers and storage, as well as workload consolidation and location optimization.
The European Telecommunications Standards Institute (ETSI) has formed a specification group (“Network Functions Virtualization”) to publish white papers, and to produce several more in-depth materials, including standard terminology definitions and use cases for NFV that act as references for vendors and operators who are considering implementing NFV.
Network Slicing, such as described in the Next Generation Mobile Network (NGMN) Alliance, “Description of Network Slicing Concept”, is a mechanism that can be used by mobile network operators to support multiple virtual networks behind the air interface across the fixed part of the mobile operator's network (both backhaul and core network). This involves ‘slicing’ the network into multiple virtual networks to support different RANs or different service types running across a single RAN. Network slicing enables the operator to create networks that are customized to provide optimized solutions for different market scenarios that demand diverse requirements, for example, in the areas of functionality, performance, and isolation.
3GPP is designing a 5G network and is considering whether to incorporate the network slicing technology, which may be a good fit for the 5G network because the 5G use cases (e.g., massive IoT, critical communications, and enhanced mobile broadband) demand very diverse and sometimes extreme requirements. The current architecture utilizes a relatively monolithic network and transport framework to accommodate a variety of services, such as, for example, mobile traffic from smart phones, OTT content, feature phones, data cards, and embedded M2M devices. It is anticipated that the current architecture is not flexible and scalable enough to efficiently support a wider range of business need when each has its own specific set of performance, scalability, and availability requirements. Furthermore, it is recognized herein that the introduction of new network services should be made more efficient. Nevertheless, several use cases are anticipated to be active concurrently in the same operator network, thus requiring a high degree of flexibility and scalability of the 5G network.
In some cases, to enable a UE to simultaneously obtain services from multiple Network Slices of one network operator, a single set of Control Plane Functions is shared across multiple Core Network Instances, as shown in
A Core Network Instance consists of a single set of Control Plane Functions and a single set of User Plane Functions. Moreover, a Core Network Instance is dedicated for the UEs that are belonging to the same UE type. Identifying the UE type is done by using a specific parameter, e.g., the UE Usage Type, and/or an information from the UE's subscription. A set of User Plane Functions in a Core Network Instance is responsible for providing a specific service to the UE and for transports the User Plane data of the specific service. For example, one set of User Plane functions in Core Network Instance#1 provides an enhanced mobile broadband service to the UE, whereas another set of User Plane functions in Core Network Instance#2 provides a critical communication service to the UE. When a UE first connects to the operator's Network, a default Core Network Instance that matches to the UE Usage Type is assigned to the UE. Each UE can have multiple User Plane connections to different sets of User Plane Function that are available at different Core Network Instances simultaneously. Control Plane functions may be shared across network slices.
The Core Network Selection Function (CNSF) may have several responsibilities. For example, the CNSF may select which Core Network Instance accommodates the UE, for example, by taking into account the UE's subscription and a specific parameter (e.g., the UE Usage Type). The CNSF may select which Control Plane Functions within the selected Core Network Instance with which the Base Station should communicate. This selection of Control Plane Functions may be done by using the specific parameter (e.g., UE Usage Type). The CNSF may select which set of User Plane Functions with which the Base Station should establish the connection for transporting User Plane data of different services. This selection of User Plane Function is done by using specific parameters (e.g., UE Usage Type and the Service Type).
To enable the interconnection of network functions, the Interconnection & Routing Function (IRF) 2058 is proposed in 3GPP TR 23.799, Study on Architecture for Next Generation System.
-
- Stores the binding between the UE's identity and the interface layer identity (e.g., instance number) of each serving NF, which has an active session for the UE. For the NFs that do not interface with the IRF 2058 directly, e.g. in roaming scenario, the IRF 2058 stores the identity of the remote-PLMN's IRF 2058 via which of those NFs are reachable.
- Updates the binding repository when the identity of the serving NF changes for a given UE (e.g., due to UE mobility, load re-balancing or scale-in or scale-out of virtual machines or restoration reasons).
- Examines the message header to determine the identity of the UE (for which the message is sent) and the destination NF. For the UE's identity, the IRF looks up the internal binding repository to determine the interface layer identity (e.g., instance number) of the destination NF or the identity of the remote IRF 2058, and then routes the message accordingly.
- Optionally performs authorization of the message based on the operator's configuration. For example, if the operator's configuration prohibits NF1 from sending a certain message (e.g., such as “change of UE's APN-AMBR”) toward NF4, then the IRF 2058 rejects the corresponding message. In some cases, the IRF optionally protects NFs during a signaling storm by performing overload control (e.g., pacing of messages sent to a given NF based on its load/overload condition).
Each NF interfaces with the IRF 2058 via a given reference point in its own PLMN. In some cases, as shown, the NFs do not interface with each other directly but can communicate (e.g., send request or response messages) with each other via the IRF 2058. Thus, when required, this model allows any NF to communicate with any other NF directly without involving any other unrelated network functions in the path. For example, as shown, the NF1 can send a message to the NF3 via IRF 2058 without involving the NF2 (e.g., if the involvement of NF2 is not needed).
It will be understood that any of the methods and processes described herein may be embodied in the form of computer executable instructions (i.e., program code) stored on a computer-readable storage medium which instructions, when executed by a machine, such as a computer, server, M2M terminal device, M2M gateway device, or the like, perform and/or implement the systems, methods and processes described herein. Specifically, any of the steps, operations or functions described above may be implemented in the form of such computer executable instructions. Computer readable storage media include both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, but such computer readable storage media do not include signals. Computer readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other physical medium which can be used to store the desired information and which can be accessed by a computer.
In describing preferred embodiments of the subject matter of the present disclosure, as illustrated in the Figures, specific terminology is employed for the sake of clarity. The claimed subject matter, however, is not intended to be limited to the specific terminology so selected, and it is to be understood that each specific element includes all technical equivalents that operate in a similar manner to accomplish a similar purpose.
The following is a list of acronyms relating to service level technologies that may appear in the above description. Unless otherwise specified, the acronyms used herein refer to the corresponding term listed below.
ACS Auto Configuration Server API Application Protocol Interface CSE Common Services Entity CSG Closed Subscriber Group ECM EPS Connection Management EMM EPC Mobility Management EPC Evolved Packet Core EPS Evolved Packet System HTTP Hyper Text Transfer Protocol IMSI International Mobile Subscriber Identity IN-CSE Infrastructure CSE LDAP Lightweight Directory Access Protocol L-GW Local Gateway L-SCEF Local SCEF LIPA Local IP Access MME Mobility Management Entity MN-CSE Middle Node CSE NAS Non-Access Stratum NSE Network Services Entity PDN Packet Data Network P-GW PDN Gateway SCEF Service Capability Exposure Function SCS Service Capability Server SOAP Simple Object Access Protocol SIPTO Selected IP Traffic Offload S-GW Serving GatewayThis written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal languages of the claims.
Claims
1. An apparatus comprising a processor, a memory, and communication circuitry, the apparatus being connected to a local network via its communication circuitry, the apparatus further comprising computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to perform operations comprising:
- receiving a request that a node be notified when a user equipment (UE) connects to the local network, the UE being capable of connecting to the local network via a local network anchor; and
- sending a notification when the UE attaches to the local network.
2. The apparatus as recited in claim 1, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- sending a notification when the UE disconnects from the local network.
3. The apparatus as recited in claim 1, wherein the apparatus is authorized to send the notification by a core network function.
4. The apparatus as recited in claim 3, wherein the authorization to send the notification and information related thereto is received in an Initial Context Setup/Attach Accept message, a Tracking Area Update Accept Message, or a Path Switch Request Acknowledge message.
5. The apparatus as recited in claim 4, wherein subscription information associated with the UE indicates to the core network function that the apparatus is authorized to send the notification.
6. The apparatus as recited in claim 1, wherein the apparatus is authorized to send the notification by an administrator associated with the local network.
7. The apparatus as recited in claim 1, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- receiving a trigger request to trigger the UE, the trigger request indicating an access point name associated with the local network, such that the UE establishes a local IP access connection with the local network.
8. The apparatus as recited in claim 7, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- forwarding the trigger request to a core network function for delivery to the UE.
9. The apparatus as recited in claim 8, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- formatting the trigger request for the core network function as an NAS PDU or an SMS over NAS PDU.
10. The apparatus as recited in claim 1, wherein the apparatus comprises a core network function, small cell, base station, eNodeB, NodeB, Home eNodeB, or Home NodeB.
11. The apparatus as recited in claim 1, wherein the node comprises at least one of a core network function, Local Service Capability Function (L-SCEF), a Service Layer, an M2M Server, a Gateway, a Server, or a Local Gateway.
12. An apparatus comprising a processor, a memory, and communication circuitry, the apparatus being connected to a local network via its communication circuitry, the apparatus further comprising computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to perform operations comprising:
- receiving a trigger request to trigger a user equipment (UE), the trigger request indicating an access point name associated with the local network, such that the UE establishes a local IP access connection with the local network.
13. The apparatus as recited in claim 12, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- forwarding the trigger request to a core network function for delivery to the UE.
14. The apparatus as recited in claim 13, the apparatus further comprising computer-executable instructions which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:
- formatting the trigger request for the core network function as an NAS PDU or an SMS over NAS PDU.
15. The apparatus as recited in claim 12, wherein the apparatus comprises a core network function, small cell, base station, eNodeB, NodeB, Home eNodeB, or Home NodeB.
16. The apparatus as recited in claim 12, wherein the node comprises at least one of a core network function, Local Service Capability Function (L-SCEF), a Service Layer, an M2M Server, a Gateway, a Server, or a Local Gateway.
Type: Application
Filed: Jul 29, 2016
Publication Date: Aug 9, 2018
Patent Grant number: 10757636
Inventors: Michael F. STARSINIC (Newtown, PA), Ahmed MOHAMED (Pembroke Pines, FL)
Application Number: 15/748,838