Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR CO-LOCATED EPDG AND PGW FUNCTIONS
Document Type and Number:
WIPO Patent Application WO/2016/007279
Kind Code:
A1
Abstract:
A co-located ePDG and PGW system comprises an ePDG (Evolved Packet Data Gateway) functionality module, a PGW (Packet Data Network (PDN) Gateway) functionality module co-located with the ePDG functionality module, where the ePDG functionality module has an SWn interface configured for interfacing with an untrusted non-3GPP network, the ePDG functionality module has an interface toward the PGW functionality module configured for transporting control signaling data, and the ePDG functionality module has an S2b-U' interface toward the PGW functionality module configured for transporting IP packet data.

Inventors:
SINGH MANDEEP (US)
SHARMA ANISH (US)
Application Number:
PCT/US2015/037124
Publication Date:
January 14, 2016
Filing Date:
June 23, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MITEL MOBILITY INC (US)
International Classes:
H04W92/02
Foreign References:
US20130058275A12013-03-07
US20110216743A12011-09-08
US20120106554A12012-05-03
US20100232353A12010-09-16
Other References:
See also references of EP 3167687A4
Attorney, Agent or Firm:
WOODEN, Sean S. (1350 I Street NW,Suite 110, Washington District of Columbia, US)
Download PDF:
Claims:
WHAT IS CLAIMED IS:

1. A co-located ePDG and PGW network node, comprising:

an ePDG (Evolved Packet Data Gateway) functionality module;

a PGW (Packet Data Network (PDN) Gateway) functionality module co-located with the ePDG functionality module;

wherein:

the ePDG functionality module having an SWn interface configured for interfacing with an untrusted non-3 GPP network;

the ePDG functionality module having an interface toward the PGW functionality module configured for transporting control signaling data; and

the ePDG functionality module having an interface toward the PGW functionality module configured for transporting IP packet data without encapsulation.

2. The co-located ePDG and PGW network node of claim 1 , wherein the ePDG functionality includes an S2b-C interface toward the PGW functionality module for transporting control plane data according to one of GPRS Tunneling Protocol-Control Plane (GTP-C) and Proxy Mobile IPv6 (ΡΜΓΡνό) protocol.

3. The co-located ePDG and PGW network node of claim 1 , wherein the ePDG functionality module further comprises a routing module configured to route IP packet data to the PGW functionality module or external entities.

4. The co-located ePDG and PGW network node of claim 1, further comprising an SGi interface toward an IMS Access Point Name (APN).

5. The co-located ePDG and PGW network node of claim 1 , further comprising an SGi interface toward an Internet Access Point Name (APN).

6. The co-located ePDG and PGW network node of claim 1 , wherein the SWn interface of the ePDG functionality module is configured to use the IP Security (IPSec) protocol to transport IP packets.

7. The co-located ePDG and PGW network node of claim 1 , wherein the PGW functionality module comprises a routing module configured to receive IP packet on the SGi interface and route to the ePDG functionality module or external entities.

8. The co-located ePDG and PGW network node of claim 1 , wherein the interface between the ePDG functionality module and the PGW functionality module is configured to use the IP protocol to transport IP packets without encapsulation.

9. The co-located ePDG and PGW network node of claim 1 , wherein the PGW functionality module further includes one of S5 and S8 interface configured for interfacing with an external Serving Gateway (SGW) using one of GPRS Tunneling Protocol (GTP) and Proxy Mobile IPv6 (ΡΜΙΡνό) protocol.

10. The co-located ePDG and PGW network node of claim 1, wherein the PGW functionality module further includes one of Gn and Gp interface configured for interfacing with an external Serving GPRS Support Node (SGSN) using GPRS Tunneling Protocol (GTP).

1 1. The co-located ePDG and PGW network node of claim 1 , wherein the ePDG functionality module further includes an S2b interface configured for interfacing with an external PGW using one of GPRS Tunneling Protocol (GTP) and Proxy Mobile IPv6 (PMIPv6) protocol.

12. A method for co-located ePDG and PGW functions, comprising:

receiving IPSec data at an SWn interface of an ePDG module;

extracting IP packet from the IPSec data; and

routing the extracted IP packet to an IP network via an SGi interface of a co-located PGW module without encapsulating the IP packet.

13. The method for co-located ePDG and PGW functionality of claim 1 1 , further comprising:

receiving an IP packet at an SGi interface of a PGW module; and

routing the IP packet to a co-located ePDG module without encapsulating the IP packet.

14. The method for co-located ePDG and PGW functionality of claim 1 1, further comprising routing the extracted IP packet to one of a plurality of IP networks via the SGi interface.

15. The method for co-located ePDG and PGW functionality of claim 12, further comprising routing the IP packet to an external entity via an S2b interface of the ePDG according to one of GTP protocol and Proxy Mobile IPv6 (PMIPv6) protocol.

16. The method for co-located ePDG and PGW functionality of claim 1 1 , further comprising encapsulating the extracted IP packet according to one of GPRS Tunneling Protocol (GTP) and Proxy Mobile IPv6 (PMIPv6) protocol at the ePDG module, and transporting the data via an S2b interface of the ePDG module to an external node.

17. The method for co-located ePDG and PGW functionality of claim 11, further comprising establishing an IPSec tunnel with a User Equipment at the ePDG module.

18. A co-located integrated ePDG and PGW system, comprising:

an ePDG (Evolved Packet Data Gateway) module;

a PGW (Packet Data Network (PDN) Gateway) module co-located with the ePDG module;

wherein:

the ePDG module having an SWn interface configured for transporting IP Security (IPSec) tunnel data; and

the ePDG module and the co-located PGW module having an interface therebetween for transporting IP packets absent GTP or GRE encapsulation.

19. The co-located integrated ePDG and PGW system of claim 20, further comprising an S2b interface between the ePDG and PGW configured for transporting control signaling using one of GPRS Tunneling Protocol-Control Plane (GTP-C) and Proxy Mobile IPv6 (PMIPv6) data.

20. The co-located integrated ePDG and PGW system of claim 20, wherein the PGW module includes an SGi interface toward an Internet Access Point Name (APN).

21. The co-located integrated ePDG and PGW system of claim 20, wherein the PGW module further includes one of an S5 and S8 interface configured for interfacing with an external Serving Gateway (SGW) using one of GPRS Tunneling Protocol (GTP) and Proxy Mobile IPv6 (ΡΜΓΡνό) protocol.

22. The co-located integrated ePDG and PGW system of claim 20, wherein the PGW module further includes one of a Gn and Gp interface configured for interfacing with an external Serving GPRS Support Node (SGSN) using one of GPRS Tunneling Protocol (GTP).

23. The co-located integrated ePDG and PGW system of claim 20, wherein the ePDG module further includes an S2b interface configured for interfacing with an external PGW using one of GPRS Tunneling Protocol (GTP) and Proxy Mobile IPv6 (PMIPv6) protocol.

Description:
SYSTEM AND METHOD FOR CO-LOCATED EPDG AND PGW FUNCTIONS

FIELD

[0001] The present disclosure relates to a system and method for system and method for co-located ePDG (Evolved Packet Data Gateway) and PGW (PDN Gateway) Functions.

BACKGROUND

[0002] The Third Generation Partnership Project (3 GPP) unites six telecommunications standards bodies, known as "Organizational Partners," and provides their members with a stable environment to produce the highly successful Reports and Specifications that define 3GPP technologies. A mobile device, also called a User Equipment (UE), may operate in a wireless communication network that provides high-speed data and/or voice communications. The wireless communication networks may implement circuit- switched (CS) and/or packet-switched (PS) communication protocols to provide various services. ' For example, the UE may operate in accordance with one or more of an Code Division Multiple Access (CDMA) networks, Time Division Multiple Access (TDMA) networks, Frequency Division Multiple Access (FDMA) networks, Orthogonal FDMA (OFDMA) networks, Single-Carrier FDMA (SC-FDMA) networks, etc. The terms "networks" and "systems" are often used interchangeably. A CDMA network may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA: includes Wideband-CDMA (W-CDMA) and Low Chip Rate (LCR) cdma2000 covers IS-2000, IS-95 and IS-856 standards. A TDMA network may implement a radio technology such as Global System for Mobile Communications (GSM). An OFDMA network may implement a radio technology such as Evolved UTRA (E-UTRA), IEEE 802.1 1, IEEE 802.16, IEEE 802.20, Flash-OFDM®, etc. UTRA, E-UTRA, and GSM are part of Universal Mobile Telecommunication System (UMTS). Long-Term Evolution (LTE) is a new release of UMTS that uses E-UTRA. UTRA, E-UTRA, GSM, UMTS and LTE are described in specification documents from an organization named "3rd Generation Partnership Project" (3GPP). These various radio technologies and standards are known in the art.

10003] The Evolved Packet Core (EPC) is the latest evolution of the 3GPP core network architecture first introduced in Release 8 of the standard. In EPC, the user data and the signaling data are separated into the user plane and the control plane. The EPC is composed of four basic network elements: the Serving Gateway (SGW), the Packet Data Network Gateway (PDN GW or PGW), the Mobility Management Entity (MME), and the Home Subscriber Server (HSS). The EPC is connected to external networks, which can include the IP Multimedia Core Network Subsystem (IMS).

BRIEF DESCRIPTION OF THE DRAWINGS

[0004] FIG. 1 is a simplified block diagram of an exemplary Evolved Packet System (EPS) network architecture according to the present disclosure;

[0005] FIG. 2 is a simplified block diagram of network nodes in an EPC including an ePDG to provide access to a UE over an untrusted non-3GPP access network;

[0006] FIG. 3 is a simplified block diagram of an exemplary embodiment of co- located ePDG and PGW functionalities configured to provide access to a UE over an untrusted non-3GPP access network according to the present disclosure;

[0007] FIGURE 4 is a more detailed block diagram of an exemplary embodiment of co-located ePDG and PGW functions according to the present disclosure;

[0008] FIG. 5 is a simplified flowchart of an exemplary process performed in the co- located ePDG/PGW node according to the present disclosure; and [0009] FIG. 6 is a simplified flowchart of another exemplary process performed in the co-located ePDG/PGW node according to the present disclosure.

DETAILED DESCRIPTION

[0010] FIG. 1 is a simplified diagram illustrating an Evolved Packet System (EPS) 10. The EPS 10 may include one or more user equipment (UE) 12 accessing the Evolved Packet Core (EPC) 14 over an Evolved UMTS Terrestrial Radio Access Network (E- UTRAN) 16, an access network in LTE (Long Term Evolution) 18. The E-UTRAN 16 includes at least one evolved Node B (eNodeB) transceiver 20. The eNodeB 20 provides user plane and control plane protocol termination toward the UE 12. The eNodeB 20 may be connected to other eNodeBs via a backhaul (e.g., an X2 interface; not shown).

[0011] The eNodeB 20 are also commonly referred to as a base station, a base transceiver station, a radio base station, a radio transceiver, a transceiver function, a basic service set (BSS), and an extended service set (ESS). The eNodeB 20 provides an access point to the EPC 14 for a UE 12. Examples of an UE 12 include a cellular phone, a smart phone, a session initiation protocol (SIP) phone, a laptop, a personal digital assistant (PDA), a satellite radio, a global positioning system, a multimedia device, a video device, a digital audio player (e.g., MP3 player), a camera, a game console, or any other similar functioning device. The UE 12 may also be referred to by those skilled in the art as a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communications device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology.

[0012] The eNodeB 20 is connected by an SI interface to the EPC 14. The EPC 14 includes a Mobility Management Entity (MME) 22, other MMEs, a Serving Gateway (SGW) 24, and a Packet Data Network (PDN) Gateway (PGW) 26. The MME 22 is a node in the control plane that processes the signaling related to mobility and security between the UE 12 and the EPC 14. Generally, the MME 22 provides bearer and connection management. The gateway nodes 24 and 26 are in the user plane, and transport IP data traffic between the UE 12 and the external networks 28. All user IP packets are transferred through the SGW 24 and the PGW 26. The SGW 24 is the connection point between the radio-side and the EPC 14, and routes and forwards user IP data packets while also acting as the mobility anchor for the user plane during inter-eNodeB handovers, and as the anchor for mobility between LTE and other 3GPP technologies. The PGW 26 is the connection point between the EPC 14 and the external networks 28, and provides IP address allocation as well as other functions for the UE 12. The PGW 26 is connected to external IP networks 28 that may include, for example, the Internet, the Intranet, an IP Multimedia Subsystem (IMS) 30, and a PS Streaming Service (PSS). A UE 12 may have simultaneous connectivity with more than one PGW for accessing multiple Packet Data Networks. The PGW 26 further performs additional functions such as policy enforcement, packet filtering for each user, charging support, lawful interception, and packet screening.

[0013] The EPC 14 further includes the Home Subscriber Server (HSS) 32, which is primarily a database that contains user-related and subscriber-related information. It also provides support functions in mobility management, call and session setup, user authentication, and access authorization.

[0014] It should be noted that the radio access network may communicate with the EPC 14 via one or a combination of gateway nodes, including the PGW, SWG, and a HRPD serving gateway (HSGW). [0015] Although the UE 12 can reach the EPC 14 using E-UTRAN 16, other access technologies are also specified by 3GPP. Existing 3GPP radio access networks are supported. 3 GPP specifications define how the interworking is achieved between an E-UTRAN (LTE and LTE-Advanced), GERAN (radio access network of GSM/GPRS) and UTRAN (radio access network of UMTS-based technologies WCDMA and HSPA). The EPS 10 also allows non-3 GPP technologies to interconnect the UE 12 and the EPC 14. The term "non-3 GPP" means that these access technologies were not specified in the 3GPP. These include, e.g., WiMAX, cdma2000, WLAN and fixed networks. Non-3GPP access technologies can be further classified as "trusted" and "untrusted" access networks. Trusted non-3GPP accesses can interface directly with the EPC 14. However, untrusted non-3 GPP accesses interwork with the EPC 14 via a network entity called the ePDG (Evolved Packet Data Gateway). The main role of the ePDG is to provide security mechanisms such as IP Security (IPsec) tunneling of connections with the UE 12 over an untrusted non-3 GPP network access, such as CDMA and WLAN technologies.

[0016] FIG. 2 is a simplified block diagram of network nodes in an EPC 40 including an ePDG 42 to provide access to a UE over an untrusted non-3 GPP access network. The ePDG 42 is configured to implement secure data connections between the UE and the EPC 40. The ePDG 42 provides the SWn interface 44 and acts as a termination node of IPsec (encrypted) tunnels at the SWn interface 44 established with the UE. The IPSec tunnels are used to perform secure transfer of authentication information and subscriber data over the untrusted interfaces and backhauls. The IPsec protocol suite uses cryptographic security services to protect communications over IP networks. The IPsec protocol suite supports network-level peer authentication, data origin authentication, data integrity, data confidentiality (encryption), and replay protection. The ePDG 42 is configured to implement the S2b interface 46 with either GPRS Tunneling Protocol (GTP) or Proxy Mobile IPv6 (PMIPv6) for the control plane 48 and user plane 49, respectively, toward the PGW 50.

[0017] The PGW 50 is further coupled to one or more external IP networks, for example, to the IMS 52 via an IMS Access Point Name (APN) over an SGi interface 54, and the Internet 56 via an Internet APN over an SGi interface 58. The PGW 50 may be further coupled to a SGW (not shown) over a GTP/PMIPv6 tunnel via an S5 interface.

[0018] The GPRS Tunneling Protocol (GTP) is a group of IP-based communication protocols used to carry General Packet Radio Service within GSM, UMTS and LTE networks. In 3 GPP architectures, GTP and Proxy Mobile IPv6- based (ΡΜΙΡνό) interfaces are specified on various interface points. GTP can be decomposed into separate protocols, GTP-C (control plane) and GTP-U (user plane). GTP-C is used within the packet core network for signaling between gateways to activate a session on a user's behalf (e.g., PDP context activation), to deactivate the same session, to adjust quality of service parameters, or to update a session for a subscriber who has just arrived from another Serving GPRS Support Node (SGSN). GTP-U is used for carrying user data within the packet core network and between the radio access network and the core network. The user data transported can be packets in any of IPv4, IPv6, or PPP formats. The GTP-U protocol is used over Sl-U, X2, S4, S5, S8, S12, and S2b interfaces of the EPS. For some of the GTP-based interfaces (e.g., S5, S8, or S2b) between the gateways in the EPS network, an alternative option is to use ΡΜΙΡνό. The user plane for PMIPv6-based interface uses the GRE encapsulation for transporting user data.

[0019] In operation, the ePDG function 42 terminates the IPsec tunnel on the SWn interface 44. For each IPSec packet arriving on the SWn, the ePDG 42, after applying the decryption keys, obtains the IP packet from the Encapsulating Security Payload (ESP) of the IPSec. This IP packet is then duplicated and encapsulated with a GTP-U header and transmitted to PGW 50 through either the GTP-U tunnel or GRE tunnel 49. The ePDG 42 may need to perform queuing and occasional buffering for fragment reassembly during this process. At the PGW 50, the GTP-U header or GRE encapsulation is stripped and local policy is applied before the IP packet is routed over the SGi interface 54 to the IMS network, or over the SGi interface 58 to the Internet or any other packet data network. Therefore, all IP packets received at the ePDG 42 are duplicated and encapsulated for transmission through the GTP or PMIPv6 tunnel 48 and 49. Similarly, the PGW 50 must strip the GTP-U/GRE header or de-encapsulate all of the received GTP-U tunnel data to retrieve the IP packet for routing and further routing, processing, and further transmission.

[0020] In many implementations of the EPC, some components or functions are combined within a single "box" or chassis. For example, the ePDG and PGW may be combined to form an integrated node. FIG. 3 is a simplified block diagram of an exemplary embodiment of co-located ePDG and PGW functionalities 42 and 50 configured to provide access to a UE over an untrusted non-3 GPP access network. The co-located ePDG/PGW 70 combines the functions of both the ePDG 42 and the PGW 50 in one integrated or co-hosted component, box, chassis, or network node. Other functionalities such as SGW, MME, and SBC (Session Border Controller) may also be combined or co-located within the ePDG/PGW node 70. As before, the co-located ePDG/PGW 70 provides the SWn interface 46 and acts as a termination node of the IPsec tunnel. The co-located ePDG/PGW 70 conveys control plane data or control signaling 48 between the ePDG and PGW functionalities 42 and 50, which may be transmitted according to the GTP-C/PMIPv6 protocol or another suitable protocol (shown as S2b-C). In the co-located ePDG/PGW module 70, the user plane data are conveyed between the ePDG 42 and PGW 50 via an S2b-U' interface 74 according to the IP protocol. The IP packets transmitted on the S2b-U' interface are not encapsulated.

[0021] The PGW functionality 50 of the co-located ePDG/PGW node 70 is further coupled to one or more external IP networks, for example, the PGW function may be coupled to an IMS 52 via an IMS Access Point Name (APN) over an SGi interface 54, and to the Internet 46 via an Internet APN over an SGi interface 58. The PGW 50 may be further coupled to a SGW (not shown) over a GTP/PMIPv6 tunnel via an S5 interface. Further, the ePDG functionality 42 of the co-located ePDG/PGW node 70 may be coupled to an external PGW or another gateway (not shown) over a GTP/ ΡΜΙΡνό tunnel 59 via an S2b interface.

[0022] In operation, the ePDG function 42 of the co-located ePDG/PGW module 70 terminates IPsec tunnel on the SWn interface 46. For each ESP of the IPSec arriving at the SWn interface 46 destined for the local or co-located PGW function 50, the ePDG function 42 is configured to consolidate policies from the ePDG function 42 and PGW function 50 and deliver the IP data packets to the PGW function 50 via the S2b-U' interface 74. The PGW 50 may then convey the IP packets to the IMS 52 over the SGi interface 54 or to the Internet 56 over the SGi interface 58. An internal routing function is configured to route the IP data packets to the external networks. Therefore, these IP packets are delivered without GTP/GRE tunnel encapsulation of the user plane data on the ePDG side and de-encapsulation of the user plane data on the PGW side. The control plane signaling data are transmitted as usual according to GTP-C/PMIPv6 (or another suitable protocol) via the S2b-C interface 48 to the PGW 50.

[0023] Operating in this manner, unnecessary GTP-U or GRE encapsulation and de- encapsulation at the S2b interface between the co-located ePDG and PGW functions can be eliminated. Further, IP packet duplication and transmission between the ePDG and PGW functions 42 and 50 can be avoided. Further savings in time and resources are also realized by eliminating queuing and occasional buffering for fragment reassembly.

[0024] FIGURE 4 is a more detailed block diagram of an exemplary embodiment of co-located ePDG and PGW functions 70 according to the present disclosure. The co-located ePDG/PGW module 70 combines the functions of both the ePDG 42 and the PGW 50 in one integrated or co-hosted component, box, chassis, or network node. Other functionalities such as SGW, MME, and SBC (Session Border Controller) may also be combined or co-located within the ePDG/PGW node 70. As described above, the co-located ePDG/PGW node 70 acts as a termination node of the IPSec tunnel 46 at the SWn interface. In the uplink direction, an internal routing function 60 determines the destination of the IP packet from the IPSec tunnel. If the intended path of the IP packet is local, then the IP packet is transmitted directly to the PGW function 50 without encapsulation via the S2b-U' interface 74. The PGW function 50 may perform local packet processing 63 before transmitting the IP packet to external IP networks via one or more SGi interface 54. The signaling data is encapsulated according to the GTP-C/PMIPv6 protocol or another suitable protocol and transmitted over a suitable interface 48. If the internal routing function 60 determines that the destination of the IP packet received from the IPSec tunnel 46 is an external entity, then the IP packet is encapsulated by the GTP/PMIPv6 layer 64 and transmitted over the S2b interface 65 to an external PGW.

[0025] In the downlink direction, the IP packet received at the SGi interface 54 by the PGW function 50 of the co-located ePDG/PGW module 70 is provided to an internal routing function 66 to determine its path. If the received IP packet is destined locally, then it is transmitted over an interface 75 to the ePDG function 42, which then transmits the IP packet over the IPSec tunnel 46 to the UE. The IP packet at the interface 75 does not undergo any encapsulation. If on the other hand, the IP packet is destined for external entities, the routing function 66 routes the packet to GTP/PMIPv6 layer 68, which encapsulates the IP packet, according to the protocol used, for transmission over an S2b interface 58 (which may alternatively be S5, S8, Gn, or Gp interface) to an external entity such as ePDG, SGW, or SGSN.

[0026] FIG. 5 is a simplified flowchart of an exemplary process 80 performed in the co-located ePDG/PGW 70 according to the present disclosure. In block 82, the ePDG 42 receives the IPSec ESP tunnel data on the SWn interface 46. In block 84, the data is decrypted and the IP packet is extracted from the ESP of the IPSec. In block 86, a determination is made for the IP packet's destination. In block 88, a determination is made as to whether the destination for the IP packet is the local or co-located PGW 50. If the destination is the co-located PGW function 50, then the IP packet is transmitted on the interface 74 to the PGW by the routing function 60. The PGW processes the packet sent by local ePDG and then routes it to the external IP network via the SGi interface 54. The destinations of the IP packets may include a number of external IP networks. If on the other hand, the IP packet is not destined for the co-located PGW function 50, then the IP packet is encapsulated in the GTP/PMIPv6 layer 64 as before and transmitted via the S2b interface to its destination by the ePDG function 42.

[0027] In the downlink direction, the process is generally reversed. FIG. 6 is a simplified flowchart of another exemplary process 100 performed in the co-located ePDG/PGW node 70 according to the present disclosure. In block 102, an IP packet is received at the PGW function 50 transported via the SGi interface 74. In block 104, the internal routing function 66 determines the packet's destination. If the intended destination for the packet is for the co-located ePDG function 42, then the IP packet is transmitted to the ePDG function 42 via the interface 75 for transmission to the UE over the IPSec tunnel, as shown in blocks 106 and 108. If the destination for the IP packet is external, then the PGW function 50 encapsulates the IP packet in the GTP/PMIPv6 layer 68 and transmits the data to its external destination according to the GTP/PMIPv6 protocol.

[0028] In this disclosure, the term "module" and "node" may be used to refer a physical circuit or collection of hardware components, a logical code module, functionality, and/or a combination of hardware and software entities.

[0029] The features of the present invention which are believed to be novel are set forth below with particularity in the appended claims. However, modifications, variations, and changes to the exemplary embodiments described above will be apparent to those skilled in the art, and the system and method described herein thus encompasses such modifications, variations, and changes and are not limited to the specific embodiments described herein.