Network-assisted traffic handling across heterogeneous networks
The system addresses the limitation of existing network traffic management by measuring and dynamically controlling packet-data flow across both carrier-based and public-internet network paths, enhancing performance and flexibility in managing UE communications.
Patent Information
- Application Number
- PCT/US2023/076961
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-07
- Filing Date
- 2023-10-16
- Publication Date
- 2025-03-13
AI Technical Summary
Existing network traffic management systems are limited to handling access links between user equipment (UE) and wireless carrier networks, restricting the optimization of packet-data flow across heterogeneous networks.
A method and system that manage packet-data communication flow between UE and remote endpoints by measuring performance of carrier-based network paths and public-internet network paths, using measurement servers, traffic-handling servers, and policy servers to dynamically control traffic distribution based on performance comparisons.
This approach enables dynamic and optimized management of packet-data flow across multiple network paths, including carrier-based and public-internet paths, improving performance and flexibility in heterogeneous network environments.
Smart Images

Figure 00000041_0000 
Figure 00000042_0000 
Figure 00000043_0000
Abstract
Description
Network- Assisted Traffic Handling Across Heterogeneous NetworksCROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Application No. 63 / 581,116, filed September 7, 2023, the contents of which are hereby incorporated by reference in their entirety.BACKGROUND
[0002] A typical cellular wireless communication system may include a radio access network (RAN) and a core network cooperatively configured to serve user equipment devices (UEs) such as cell phones, tracking devices, wirelessly equipped personal computers, gaming devices, Internet of Things (loT) devices, and other wirelessly-equipped devices.
[0003] In particular, the RAN may include one or more access nodes (also known as base stations), each of which may include an antenna structure and associated equipment that enables the access node to provide one or more cells each defining wireless coverage in which to serve UEs over a respective cellular air-interface. The RAN may then interface with the core network, which may include equipment for managing service of UEs and providing connectivity with a data network such as the public internet. With this arrangement, when a UE is positioned within coverage of an access node, the UE may be able to establish a cellular radio link with the access node and may in turn be able to communicate through that radio link, the access node, the core network, and the data network, with various remote application servers and / or other entities.
[0004] A representative cellular wireless communication system could operate in accordance with one or more radio access technologies (RATs), which may define the physical structure of the air interface between access nodes and UEs and may also define associated procedures for handling UE service in the RAN and core network.
[0005] The wireless industry has evolved over the years to define various generations of RATs and continues to evolve to define new generations of RATs. Recent examples of these RATs include, without limitation, (i) “4G” Long Term Evolution (LTE), which facilitates mobile broadband service using technologies such as orthogonal frequency division multiplexing (OFDM) and multiple input multiple output (MIMO), (ii) “5G NR” (5G New Radio), which may use a more scalable OFDM air interface and other advanced featuresto support higher data rates and advanced applications, and (iii) “6G”, which might support even higher data rates, possibly by making use of millimeter wave and Terahertz spectrum.
[0006] Under such a RAT, the access node may be configured to provide each of its one or more cells on a respective radio frequency (RF) carrier that defines a downlink channel for carrying communications from the access node to UEs and an uplink channel for carrying communications from UEs to the access node. Each such carrier, and thus each such cell, may be either frequency division duplex (FDD), with separate frequency ranges defined respectively for downlink and uplink use, or time division duplex (TDD), with a single frequency range multiplexed over time between downlink and uplink use.
[0007] Further, the downlink and uplink channels of each cell on which an access node provides service may be structured in a manner that defines physical air-interface resources for carrying both control signaling and user-plane communications between the access node and UEs. For instance, the air-interface may be divided over time into frames, subframes, and symbol time segments, and over frequency into subcarriers, so as to define an array of resource elements each occupying a respective subcarrier and spanning a respective symbol time segment. Various groups of these resource elements may then be reserved to define control channels for carrying control signaling, and other groups of the resource elements may cooperatively define physical resource blocks for carrying user-plane data.
[0008] On the downlink, for instance, certain resource elements may cooperatively define a reference channel in which the access node may broadcast a reference signal that UEs could measure as a basis to evaluate the access node’s coverage strength. Further, other resource elements may cooperatively define a physical downlink control channel (PDCCH) for carrying various downlink control signaling such as scheduling directives from the access node to UEs. Still further, other resource elements may cooperatively define a physical downlink shared channel (PDSCH) that may be divided into downlink physical resource blocks (PRBs) that the access node could schedule for use to carry user-plane data from the access node to served UEs.
[0009] On the uplink, on the other hand, certain resource elements may cooperatively define an access channel for carrying access requests from UEs to the access node. Further, other resource elements may cooperatively define a physical uplink control channel (PUCCH) for carrying various uplink signaling such as measurement reports and scheduling requests from UEs to the access node. Still further, other resource elements may cooperatively define a physical uplink shared channel (PUSCH) that may be divided into uplinkPRBs that the access node could schedule for use to carry user-plane data from served UEs to the access node.SUMMARY
[0010] Disclosed is a method and system for managing flow of packet-data communication between a user equipment device (UE) and a remote endpoint when the UE has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, the first network path traversing a 3 GPP or non- 3GPP carrier-based access link established for the UE, and the second network path not traversing any 3GPP or non-3GPP access link established for the UE. An example method includes measuring first performance of the first network path based on measurement signaling over a corresponding first measurement-signaling channel, measuring second performance of the second network path based on measurement signaling over a corresponding second measurement-signaling channel, and using a comparison of the measured first and second performances as a basis to control flow of the UE’s packet-data communication as between the first and second network paths.
[0011] In one respect, for instance, disclosed is a method to manage flow of packetdata communication between a UE and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, wherein the first network path traverses a carrier-based access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure- tunneling connection between the UE and the cellular carrier, and wherein the second network path does not traverse any air-interface connection between the UE and the RAN of the cellular carrier and does not traverse any secure-tunneling connection between the UE and the cellular carrier.
[0012] The method may include measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurementsignaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link. Further, the method may include measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurement-signaling channel not traversing any air-interface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier. Yet further, the method may include, based on the comparison of the measured first performance with the measured second performance, controlling distribution of the packet-data communication among at least the first network path and the second network path.
[0013] In another respect, disclosed is a computing system for managing flow of packet-data communication between a UE and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, wherein the first network path traverses a carrier-based access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier, and wherein the second network path does not traverse any air-interface connection between the UE and the RAN of the cellular carrier and does not traverse any secure-tunneling connection between the UE and the cellular carrier. The computing system may include at least one processor, at least one non- transitory data storage, and program instructions stored in the at least one non-transitory data storage and executable by the at least one processor to carry out operations such as those of the method.
[0014] In yet another respect, disclosed is at least one non-transitory computer- readable medium having stored thereon program instructions executable by at least one processor of a device to cause the device to carry out operations such as those described above.
[0015] These, as well as other aspects, advantages, and alternatives will become apparent to those of ordinary skill in the art by reading the following detailed description, with reference where appropriate to the accompanying drawings. Further, it should be understood that the descriptions provided in this summary and below are intended to illustrate the invention by way of example only and not by way of limitation.BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 is a simplified block diagram of an example communication system including a 4G network and supporting a 3 GPP access link.
[0017] Figure 2 is another simplified block diagram of an example communication system including a 5G network and supporting a 3GPP access link.
[0018] Figure 3 is a variation of the arrangement of Figure 1, further supporting a non-3GPP access link.
[0019] Figure 4 is a variation of the arrangement of Figure 2, further supporting a non-3GPP access link.
[0020] Figure 5 is a simplified block diagram of a communication system, illustrating a public-internet network path as between a UE and a remote endpoint.
[0021] Figure 6 is a variation of the arrangement of Figure 3, further including a measurement server, a traffic server, and a policy server.
[0022] Figure 7 is a variation of the arrangement of Figure 4, further including a measurement server, a traffic server, and a policy server.
[0023] Figure 8 illustrates measurement signaling paths between the UE and a measurement server in the arrangement of Figure 3.
[0024] Figure 9 illustrates measurement signaling channels between the UE and a measurement server in the arrangement of Figure 3.
[0025] Figure 10 illustrates traffic channels between the UE and a traffic-handling server in the arrangement of Figure 3.
[0026] Figure 11 illustrates traffic channels between the UE and a traffic-handling server in the arrangement of Figure 4.
[0027] Figure 12 is a flow chart illustrating an example method.
[0028] Figure 13 is another flow chart illustrating an example method.
[0029] Figure 14 is a simplified block diagram of an example computing system.DETAILED DESCRIPTION
[0030] Referring to the drawings, Figures 1 and 2 illustrate example communication systems in which various disclosed operations could be implemented. In particular, Figure 1 illustrates an arrangement in the context of a 4G network, and Figure 2 illustrates an arrangement in the context of a 5G network. It will be understood, however, that the disclosed principles are not limited to these arrangements but could extend as well to apply with respect to any of a variety of combinations of network paths, including possibly network paths that traverse access links through 6G or later wireless networks, among other possibilities.
[0031] Further, it will be understood that any disclosed embodiment is not necessarily to be construed as preferred or advantageous over other embodiments unless stated as such. Further, it should be understood that variations from the specific arrangements andprocesses disclosed are possible. For instance, various disclosed entities, components, connections, operations, and other elements could be added, omitted, distributed, replicated, re-located, re-ordered, combined, or changed in other ways. In addition, it will be understood that various disclosed technical operations could be implemented at least in part by one or more processing units programmed to carry out the operations or to cause one or more other entities to carry out the operations.
[0032] As shown in Figure 1, an example communication system includes a wireless carrier’s 4G network, which includes a 4G RAN 100 and a 4G core network 102.
[0033] The 4G RAN 100 is shown including at least one 4G access node known as a 4G evolved Node-B (eNB) 104, which would include an antenna and cell site modem (neither shown) configured to enable the 4G eNB 104 to serve UEs such as a representative UE 106 on a 4G LTE air interface 108.
[0034] The 4G core network 102, which could be an Evolved Packet Core (EPC), is then shown including a user-plane subsystem 110 and a control-plane subsystem 112. The userplane subsystem 110 includes a Packet Data Network Gateway (PGW) 114, which provides user-plane connectivity with a packet data network 116 such as the public internet or another packet-data transport network, to facilitate communication with a remote endpoint 118. Further, the user-plane subsystem 110 may include one or more other nodes (not shown) (such as a Serving Gateway (SGW)), to facilitate extending user-plane connectivity between the 4G RAN 100 and the PGW 114, in order to allow served UEs such as UE 106 to engage in packetdata communication on the data network 116. The control-plane subsystem 112, which may serve to control setup and management of UE user-plane connections with the PGW 114, may then include supporting elements (not shown) such as a Mobility Management Entity (MME) and a Policy Charging and Rules Function (PCRF).
[0035] As shown in Figure 2, another example communication system includes a wireless carrier’s 5G network, which includes a 5G RAN 200 and a 5G core network 202.
[0036] The 5G RAN 200 is shown including at least one 5G access node known as a 5G next-generation Node-B (gNB) 204, which would include an antenna and cell site modem (neither shown) configured to enable the 5G gNB 204 to serve UEs such as a representative UE 206 over a 5GNR air interface 208.
[0037] The 5G core network 202, known as a 5G Core (5GC) or Next Generation Core (NGC), is then likewise shown including a user-plane subsystem 210 and a control-plane subsystem 212. The user-plane subsystem 210 includes a User Plane Function (UPF) 214,which provides user-plane connectivity with a packet data network 216 such as the public internet or another packet-data transport network, to facilitate communication with a remote endpoint 218. Further, the user-plane subsystem 210 may include one or more other nodes (not shown) to facilitate extending user-plane connectivity between the 5G RAN 200 and the UPF 214, in order to allow served UEs such as UE 206 to engage in packet-data communication on data network 216. The control-plane subsystem 212, which may serve to control setup and management of UE user-plane sessions with the UPF 214, may then include supporting elements (not shown) such as an Access and Mobility Management Function (AMF), a Session Management Function (SMF), and a Policy Control Function (PCF).
[0038] When a UE enters into coverage of an access node in an example such system, the UE could discover threshold strong coverage provided by the access node, and the UE could then responsively engage in signaling to connect with the access node and with the associated core network, so that the UE could then be served by the access node and by the core network and could thereby engage in communication via the access node and core network with various entities on the data network.
[0039] In particular, this signaling could establish for the UE a “3GPP access link” (according to protocols developed by the 3rd Generation Partnership Project (3GPP) group of standards organizations) as shown in Figures 1 and 2, which would include a cellular airinterface connection between the UE and the access node and would define a user-plane data connection or session, via that cellular air-interface connection, between the UE and the corenetwork entity, such as the PGW 114 or UPF 214, that provides connectivity with the data network.
[0040] For instance, the UE could engage in random access signaling and Radio Resource Control (RRC) signaling with the access node to establish the air-interface connection between the UE and the access node. Further, the UE could engage in attach or registration signaling, via the access node, with the core-network control-plane subsystem, in response to which the core-network control-plane subsystem could authenticate the UE and could coordinate establishment for the UE of the user-plane data connection or session between the UE and the PGW or UPF.
[0041] In a 4G network, this 3GPP access link would be a Packet Data Network (PDN) connection between the UE and the PGW 114, and in a 5G network, this 3GPP access link would be a Packet Data Unit (PDU) session between the UE and the UPF 214.
[0042] As so established, this 3 GPP access link may thus include (i) an air-interface segment that extends over the UE’s air-interface connection between the UE and the access node in the carrier’s RAN and (ii) a core-network segment that extends through the core network between the access node and the PGW or UPF. Further, setup of this 3GPP access link may include assignment to the UE of an Internet Protocol (IP) address that the UE could use to engage in communication via the PGW or UPF on the data network.
[0043] With this 3 GPP access link established for the UE, the access node and core network may then cooperatively serve the UE, enabling the UE to engage in packet-data communication with application servers and other entities on the data network. For instance, as shown in Figures 1 and 2, the UE could engage in packet-data communication with a remote data-network endpoint through a network path that includes this 3GPP access link.
[0044] F or instance, when the UE has packet-data to transmit to the remote endpoint on the data network, the access node could allocate uplink air-interface resources to carry that data from the UE, the UE could transmit the data in those allocated air-interface resources to the access node, the access node could forward that data through core-network segment of the UE’s 3 GPP access link to the PGW or UPF, and the PGW or UPF could output the data onto the data network for transmission to the remote endpoint.
[0045] Likewise, when the PGW or UPF receives data destined to the UE, the PGW or UPF could forward that data over the core-network segment of the UE’s 3 GPP access link to the UE’s serving access node, and the access node could allocate downlink air-interface resources to carry that data to the UE and could transmit the data to the UE in those allocated air-interface resources.
[0046] Optimally, this 3GPP access link may also enable the core network to manage certain application services for the UE. For instance, through an established 3GPP access link between the UE and the PGW or UPF, the core network may enable the UE to be served by an IP Multimedia Subsystem (IMS) (not shown) or other application platform that may support voice-over-IP call service and IP -based short-message service (SMS), among other possibilities.
[0047] While such a 3 GPP access link may work well to facilitate a UE’s communication with application servers and other data-network entities and to facilitate various core-network managed services such as IMS service for instance, having and maintaining use of a 3 GPP access link may assume that the UE is within good coverage of one or more access nodes of the carrier’s RAN and can engage in cellular wireless communicationwith the one or more access nodes to facilitate the UE’s communication with the carrier’s core network and in turn on the data network.
[0048] In some situations, however, it may not be desirable or optimal for the UE to acquire, maintain, or use a 3 GPP access link, but it may still be desirable for the UE to connect with the carrier’s core network to benefit from data-network connectivity and services that the core network can provide or facilitate.
[0049] To accommodate this, the UE may instead or additionally establish a “non- 3 GPP access link” with the carrier’s network.
[0050] A non-3GPP access link, like a 3GPP access link, may include a user-plane data connection or session between the UE and the carrier’s core network (e.g., a PDN connection with the PGW 114 or a PDU session with the UPF 214), which may enable the UE to benefit from managed core-network services and data-network connectivity as discussed above. However, instead of traversing a cellular air-interface connection between the UE and an access node in the carriers’ RAN, the non-3GPP access link would traverse a secure connection between the UE and a gateway or interworking function (IWF) in the carrier’s network, possibly via the public internet. For instance, through a Wi-Fi connection, a local area network (LAN), and the public internet, the UE may establish one or more secure tunneling connections (e.g., virtual private network (VPN) connections), such as an IPSec tunnel and / or an IKE tunnel, with this gateway or IWF in the carrier’s network. The gateway or IWF may then function as a proxy between the UE and the core-network entity that provides data- network connectivity.
[0051] Figures 3 and 4 illustrate this non-3GPP-access-link arrangement respectively in the 4G and 5G systems discussed above.
[0052] As shown in Figure 3, a 4G network could support non-3GPP connectivity by including a core-network entity known as an Evolved Packet Data Gateway (ePDG) 120. Though shown separately from the user-plane subsystem 110 of the 4G core network, this ePDG 120 may be part of the user-plane subsystem 110. The ePDG 120 may function as a VPN terminator with which the UE 106 could connect through the public internet 122, and the ePDG 120 may function to proxy communications between the UE 106 and the PGW 114.
[0053] Accordingly, rather than using a 4G radio to connect with the 4G eNB 104, the UE 106 may use a Wi-Fi radio to connect with a Wi-Fi access point 124 and may then engage in signaling with the ePDG 120, through that Wi-Fi access point 124, a LAN (not shown), and the public internet 122, to establish one or more secure tunneling connections.Further, through this secure connection between the UE 106 and the ePDG 120, the UE may similarly attach with the 4G core network 102 and acquire a PDN connection with the PGW 114. Thus, the UE would acquire a non-3GPP access link with the PGW 114, traversing the UE’s secure connection with the ePDG 120. The UE 106 may then engage in communication with the remote endpoint 118 through a network path via this non-3GPP access link as shown, and the UE may also benefit from other services of the 4G core network 102.
[0054] As shown in Figure 4, on the other hand, a 5G network could support non- 3 GPP connectivity by including a RAN entity known as a non-3GPP Interworking Function (N3IWF) 220. This N3IWF 220 may function as a VPN terminator with which the UE 206 could connect through the public internet 222, and the N3IWF 220 may function to proxy communications between the UE 206 and the UPF 214.
[0055] Accordingly, rather than using a 5G radio to connect with the 5G gNB 204, the UE 206 may use a Wi-Fi radio to connect with a Wi-Fi access point 224 and may then engage in signaling with the N3IWF 220, through that Wi-Fi access point 224, a LAN (not shown), and the public internet 222, to establish one or more secure tunneling connections. Further, through this secure connection between the UE 206 and the N3IWF 220, the UE may similarly register with the 5G core network 202 and acquire a PDU session with the UPF 214. Thus, the UE would acquire a non-3GPP access link with the UPF 214, traversing the UE’s secure connection with the N3IWF 220. The UE 206 may then engage in communication with the remote endpoint 218 through a network path via this non-3GPP access link as shown, and the UE may also benefit from other services of the 5G core network 202.
[0056] With such a non-3GPP access link established, the core network may thus still serve the UE, albeit through the secure connection between the UE and the ePDG or N3IWF rather than through a cellular air-interface connection between the UE and an access node in the carrier’s RAN. For instance, when the UE has data to transmit to an entity on the data network, the UE could transmit the data through its secure connection to the ePDG or N3IWF, the ePDG or N3IWF could forward the data to the PGW or UPF that provides data- internet connectivity, and the PGW or UPF could forward that data onto the data network. And when the PGW or UPF receives data destined to the UE, the PGW or UPF could forward the data to the ePDG or N3IWF, and the ePDG or N3IWF could forward the data through its secure connection to the UE.
[0057] In some cases, a UE may have both a 3GPP access link and a non-3GPP access link, and the UE and / or core network may dynamically control distribution and flow of the UE’s user-plane over those two access links.
[0058] This process may be referred to as “Access Traffic Steering, Switching, and Splitting” or “ATSSS” and may involve policy-based management of which of the two access links will be used for carrying traffic between the UE and the carrier’s core-network possibly on a per packet basis. For instance, while a UE is engaged in packet-data communication with an application server or other data-network entity and the UE has both a 3 GPP access link and a non-3GPP access link, ATSSS could provide for managing switching, splitting, or duplication of the UE’s packet-data traffic between the UE’s 3 GPP access link and the UE’s non-3GPP access link.
[0059] To facilitate ATSSS, the UE may acquire both a 3GPP access link with the carrier’s core network and a non-3GPP access link with the carrier’s core network.
[0060] For instance, the UE may engage in cellular- wireless communication to connect with an access node in the carrier’s RAN and, through that access node, may then engage in attach or registration signaling with the core-network control system, and a corenetwork control system may coordinate setup for the UE of a user-plane data connection or session between the UE and the PGW or UPF, thus establishing a 3GPP access link between the UE and the PGW or UPF.
[0061] Further, the UE may also engage in Wi-Fi, LAN, and public-internet based communication with the ePDG or N3IWF in the carrier’s network to establish a secure connection, such as an IPSec tunnel and / or IKE tunnel, with that ePDG or N3IWF and, through that secure connection, may then likewise engage in attach or registration signaling with the core-network control system, and the core-network control system may coordinate setup for the UE of a user-plane data connection or session between the UE and the PGW or UPF, thus establishing a non-3GPP access link between the UE and the PGW or UPF.
[0062] During or after setup of these 3GPP and non-3GPP access links, the carrier’s core network may provision the UE with one or more ATSSS policies that the UE could then implement in order to dynamically control the flow of the UE’s data over the UE’s 3GPP and non-3GPP access links. For instance, a policy server in the carrier’s core-network may provision the UE with these policies. In accordance with these policies, the UE may dynamically control on a per packet (e.g., at a PDU layer) or other basis whether the UE willtransmit the UE’ s uplink packet data over the UE’s 3 GPP access link and / or over the UE’ s non- 3 GPP access link.
[0063] Example ATSS policies could take various forms, keyed to various factors, such as location of the UE, time of day, and observed performance of each access link. As to performance, for instance, the UE may periodically evaluate the UE’s 3GPP access link and the UE’s non-3GPP access link, such as by using Internet Control Message Protocol (ICMP) signaling (e.g., ping, or echo request / response signaling) with the core network, to determine latency and / or packet-loss rate per access link. Based on this evaluation, an ATSS policy may then specify that the UE should provide its uplink packet data transmission on the access link that has the lower latency and / or lower packet-loss rate, that the UE should divide its uplink data flow between the two access links with a split ratio based on a comparison of the access links’ respective latency and / or packet-loss rate, or that the UE should duplicate its packet transmission over the two access links to help ensure successful and quick receipt of the packet data by the PGW or UPF. Other examples are possible as well.
[0064] The UE may store these policies and may apply the stored policies as the UE engages in packet-data communication. Thus, the UE may dynamically control on a per-packet basis or otherwise the UE’s uplink packet-data flow as between the UE’s 3GPP access link and the UE’s non-3GPP access link.
[0065] In addition, the carrier’s core network may itself be provisioned with similar ATSSS policies that the core network can apply to manage downlink packet-data transmission to the UE as between the UE’s 3GPP access link and the UE’s non-3GPP access link. For instance, the PGW or UPF in the core network could be provisioned with these policies for handling downlink packet-data transmission to the UE.
[0066] These ATSSS policies provisioned at the PGW or UPF may likewise be keyed to various factors, such as location, time of day, and observed performances of each access link. As to performance, for instance, the PGW or UPF may periodically evaluate each access link, such as by using ICMP signaling with the UE, to determine latency and / or packetloss rate of the access link. And based on this evaluation, an ATSS policy may then specify that the PGW or UPF should provide the UE’s downlink packet data transmission on the access link that has the lower latency and / or lower packet-loss rate, that the PGW or UPF should divide the UE’s downlink data flow between the two access links with a split ratio based on a comparison of the access links’ respective latency and / or packet-loss rate, or that the PGW orUPF should duplicate the UE’s downlink packet transmission over the two access links, to help ensure successful and quick receipt of the packet data by the UE, among other possibilities.
[0067] While this ATSSS procedure may work well to manage flow of the UE’s packet-data as between the UE’s 3GPP access link and the UE’s non-3GPP access link, one technical problem with this arrangement is that it is restricted to handling access links that extend between the UE and the wireless carrier’s network. This technical restriction may arise as a basic matter because both of these access links are provided by the wireless carrier, and particularly if the wireless carrier’s core network provisions the UE with the ATSSS policies to manage data flow over those carrier-based access links.
[0068] Unfortunately, however, there may be some situations where both of these carrier-based access links would be sub-optimal, costly, or otherwise relatively undesirable. Further, having the wireless carrier (e.g., core network) provision the ATSSS policy rules may be inherently limiting, as the wireless carrier may have an incentive to restrict the UE’s packetdata flow to be on the UE’s 3GPP and / or non-3GPP access link served by the carrier’s network, even if there may be potentially better options available for use by the UE.
[0069] This is particularly the case in a situation where the UE is engaged in packetdata communication with an endpoint on or through the public internet. Examples of this could include, without limitation, the UE being engaged in a streaming media session with a streaming media application server on or through the internet, the UE being engaged in a VoIP call with a call server or other call endpoint on or through the internet, the UE being engaged in a file transfer to or from another entity on or through the internet, and the UE being engaged in web browsing, message communication, or similar internet-based communications, among other possibilities.
[0070] The present disclosure provides an improved mechanism to manage a UE’s packet-data flow over network paths that are not be limited to use of carrier-based access links such as 3GPP or non-3GPP access links. Namely, the disclosure provides a mechanism that could manage flow of the UE’s packet-data traffic between (i) one or more carrier-based network paths, each traversing a 3 GPP access link or a non-3GPP access link, and (ii) a publicinternet network path.
[0071] A public-internet network path is one that flows between the UE and an internet endpoint without traversing an access link established between the UE and a cellular wireless carrier’s core network via either a cellular radio link established between the UE and the carrier’s network or a secure tunneling connection established between the UE and thecarrier’s network. For instance, the public-internet path would flow between the UE and the internet endpoint without traversing a 3 GPP access link between the UE and a wireless carrier’ s core network and without traversing a non-3GPP access link between the UE and a wireless carrier’s core network.
[0072] An example of a public-internet network path between a UE and an internet endpoint is a path that flows over Wi-Fi, a LAN, and the public internet without traversing a 3GPP or non-3GPP access link. For instance, the UE may be connected with a Wi-Fi access point and may be connected by the Wi-Fi access point with a LAN that provides public-internet connectivity, and the UE may engage in communication with the internet endpoint directly through that Wi-Fi, LAN, and internet connection, without the communication traversing a 3GPP or non-3GPP access link established between the UE and a carrier’s core network.
[0073] Figure 5 illustrates an example of such a public-internet network path as between a UE 500 and a remote internet endpoint 502, through a Wi-Fi access point 504 and the public internet 506. Figure 5 also shows a wireless carrier’s cellular- wireless communication system including a RAN 508 and a core network 510. But as shown in Figure 5, the UE’s public-internet network path of communication with the remote endpoint 502 would not traverse a 3 GPP access link or non-3GPP access link through that carrier network.
[0074] Note that a UE may use a common Wi-Fi, LAN, and public-internet connection for both (i) a non-3GPP access link between the UE and the wireless carrier’s core network, e.g., for the secure connection between the UE and a gateway or IWF in the carrier’s network, and (ii) a public-internet network path that does not traverse a 3 GPP or non-3GPP access link between the UE and the carrier’s network. Further, a Wi-Fi access point in a UE’s public-internet network path may even be one provided by the wireless carrier, which may itself pass packet-data traffic through the carrier’s network. However, that network path would still be a public-internet network path as it does not traverse a 3GPP access link (e.g., including a cellular wireless connection between the UE and an access node in the carrier’s RAN) or a non-3GPP access link (e.g., including a secure tunneling connection between the UE and a gateway or IWF in the carrier’s network)).
[0075] To facilitate control of a UE’s packet-data flow as between (i) one or more carrier-based network paths each traversing a 3GPP or non-3GPP access link between the UE and the wireless carrier’s core network and (ii) a public-internet network path that does not traverse a 3GPP or non-3GPP access link between the UE and the wireless carrier’s core network, the present disclosure provides for implementing one or more servers each accessibleto the UE. These servers can include a measurement server, a traffic-handling server, and a policy server.
[0076] Figures 6 and 7 illustrate these servers in the context of the example systems discussed above. Namely, Figure 6 is a variation of the arrangement of Figure 3, showing as nodes in the data network 116 a measurement server 126, a traffic-handling server 128, and a policy server 130, and showing as a node in the core network a policy server 132. Likewise, Figure 7 is a variation of the arrangement of Figure 4, showing as nodes in the data network 216 a measurement server 226, a traffic server 228, and a policy server 230, and showing as a node in the core network a policy server 232.
[0077] The following sections discuss example operation of these servers and associated functions, to facilitate control of the UE’s packet-data flow as between (i) one or more carrier-based network paths each traversing a 3 GPP or non-3GPP access link between the UE and the wireless carrier’s core network and (ii) a public-internet network path that does not traverse a 3 GPP or non-3GPP access link between the UE and the wireless carrier’s core network.Measurement Server and Multi-Path Performance Measurements
[0078] A measurement server (such as server 126 or 226) could support evaluating relative performance of both (i) one or more carrier-based network paths each traversing a 3GPP or non-3GPP access link between the UE and a wireless carrier’s core network and (ii) a public-internet network path that does not traverse a 3GPP or non-3GPP access link between the UE and a wireless carrier’s core network. These performance measurements could in turn inform policy -based control over the flow of the UE’s packet-data traffic on these network paths, such as switching the flow between the paths, splitting the flow between the paths, and / or duplicating the flow between the paths.
[0079] To facilitate this evaluation of relative performance of the available network paths, the measurement server could be provided in a manner that enables the UE to engage in signaling with the measurement server separately over separate channels that correspond respectively with the network paths and that may represent performance respectively of their corresponding network paths.
[0080] For instance, the measurement server could be made accessible at a globally- routable network address (such as an IP address or URL) either outside of the wireless carrier’s core network or inside the wireless carrier’s network, so that the UE could engage in signaling with the measurement server at that network address. And the UE and measurement servercould have separate measurement-signaling channels for measuring performance respectively of the UE’s separate network paths.
[0081] Figures 8 and 9 illustrate examples of these measurement-signaling channels in the example systems discussed above. As shown in these figures, for example, the UE and measurement server could have (a) a first measurement-signaling channel that traverses a 3 GPP access link between the UE and the carrier’s network, for measuring performance of the UE’s carrier-based network path that traverses that 3 GPP access link, (b) a second measurementsignaling channel that traverses a non-3GPP access link between the UE and the carrier’s network, for measuring performance of the UE’s carrier-based network path that traverses that non-3GPP access link, (c) a third measurement-signaling channel that does not traverse a 3 GPP or Non-3GPP access link, for measuring performance of the UE’s public-internet network path that does not traverse a 3GPP or non-3GPP access link.
[0082] In a non-limiting example implementation, each of these measurementsignaling channels, or at least the third measurement-signaling channel that does not traverse a 3GPP or non-3GPP access link, may be a respective secure tunneling connection (e.g., VPN connection). For instance, for each of the UEs’ respective network paths, the UE could engage in signaling with the measurement server to set up a respective secure tunneling connection through which to support measuring relative performance of the associated network path.
[0083] For example, when the UE acquires a 3GPP access link with the carrier’s core network, the UE may engage in signaling with the measurement server through that 3 GPP access link to establish a respective secure tunneling connection via the 3GPP access link, for use to support measuring performance of the network path that traverses that 3GPP access link. Further, when the UE acquire a non-3GPP access link with the carrier’s core network, the UE may then engage in signaling with the measurement server through that non-3GPP access link to establish a respective secure tunneling connection via the non-3GPP access link, for use to support measuring performance of a network path that traverses that non-3GPP access link. Still further, when the UE acquires public internet connectivity (e.g., via a Wi-Fi access point and a LAN) without traversing a 3GPP or non-3GPP access link, the UE may then engage in signaling with the measurement server through that public-internet connection i.e., without traversing a 3GPP or non-3GPP access link), to establish a respective secure tunneling connection that does not traverse a 3 GPP or non-3GPP access link, for use to support measuring performance of the network path that does not traverse a 3GPP or non-3GPP access link. In an alternative implementation, the UE may use other measurement signaling channelscorresponding with the respective network paths, with or without use of VPN or other secure- tunneling technology.
[0084] The UE and the measurement server could correlate these measurementsignaling channels respectively with the UE’s network paths so that the UE and measurement server can deem the measurement signaling on each measurement-signaling channel to correspond with a given network path and they can therefore treat associated performance measurements as representing performance of that corresponding network path.
[0085] For instance, the UE and measurement server could each store mapping data that maps each measurement-signaling channel respectively with a given one of the UE’s network paths. Alternatively or additionally, the UE and measurement server could tag their measurement signaling with an indication of which measurement-signaling channel and / or which network path is at issue, so as to correlate the associated performance measurements with the appropriate network path.
[0086] The UE could be provisioned with an indication of the measurement server’ s network address (and optionally with the port number and / or transport protocol), so that the UE and measurement server could establish their respective measurement-signaling channels and could then engage in respective measurement signaling with each other over those channels. For instance, the UE could be pre-provisioned with this measurement server address. Alternatively, a policy server could dynamically provision the UE with the network address of the measurement server when the UE establishes a 3GPP or non-3GPP access link with the wireless carrier’s network or in response to the UE starting to engage in communication with the internet endpoint, among other possibilities. The UE and the measurement server at that address could then establish the measurement-signaling channels.
[0087] As the UE engages in communication with the remote internet endpoint, the UE and measurement server may then engage in measurement signaling over their various measurement-signaling channels to determine respective performance of the UE’s available network paths. And those determined performance metrics could then serve as a basis to dynamically control flow of the UE’s traffic between those network paths in accordance with traffic-management policy rules.
[0088] For instance, the UE may compare the performance metrics of the network paths and accordingly steer the UE’s uplink traffic between the network paths, and / or the UE may report to a traffic-handling server the results of this comparison or the underlying metrics, to cause the traffic handling-server to accordingly steer the UE’s downlink traffic between thenetwork paths. Alternatively, the measurement server may compare the performance metrics of the network paths and report the results of the comparison or the underlying metrics to the UE to cause the UE to accordingly steer the UE’s uplink traffic between the network paths, and / or may report the results of the comparison or the underlying metrics to the traffic-handling server, to cause the traffic-handling server to accordingly steer the UE’s downlink traffic between the network paths.
[0089] Without limitation, for instance, the measurement signaling between the UE and the measurement server could include ICMP signaling like that noted above, to establish throughput, latency, and / or packet-loss rate metrics. The UE and measurement server could engage in this signaling respectively on each of their measurement channels, perhaps periodically, to establish performance metrics respectively for each of the UE’s corresponding network paths.
[0090] For instance, (i) ICMP signaling between the UE and the measurement server through a 3GPP access link between the UE and the carrier’s network could establish representative performance metrics such as throughput, latency, and / or packet-loss rate measures for a carrier-based network path that traverses that 3 GPP access link, (ii) ICMP signaling between the UE and the measurement server through a non-3GPP access link between the UE and the carrier’s network could establish representative throughput, latency, and / or packet-loss rate measures for a carrier-based network path that traverses that non-3GPP access link, and (iii) ICMP signaling between the UE and the measurement server through the internet without traversing a 3GPP or non-3GPP access link could establish representative throughput, latency, and / or packet-loss rate measures for a public-internet network path.
[0091] In accordance with traffic-management policies, comparing these performance metrics over time could thus facilitate dynamic control over flow of the UE’s uplink and / or downlink packet-data traffic as between these network paths.
[0092] For instance, the UE may regularly compare the performance metrics established for the three example network paths and could determine based on the comparison and pursuant to one or more provisioned traffic-management policies, which one or more of the network paths to use for the UE’s uplink data communication destined to the internet endpoint, and / or whether and to what extent to distribute the UE’s uplink data flow among the network paths and / or to duplicate the UE’s uplink data flow on the network paths. By way of example, the UE may route its uplink data flow on a given one of the network paths based on that path having highest throughput and / or lowest latency and / or packet-loss rate of the variousnetwork paths. Alternatively, the UE may split its uplink data flow among the network paths with a split ratio proportional to these performance metrics per path. Still alternatively, the UE may duplicate its uplink data flow among the network paths if the performance metrics of the network paths justify doing so. In some implementations, the traffic-handling server may perform packet reordering if the UE splits its uplink data flow, and / or the traffic-handling server may eliminate redundant packets if the UE duplicates its uplink data flow.
[0093] In addition, as an alternative to comparing performance metrics of the network paths with each other, the UE may compare performance metrics of one or more of the network paths with predefined thresholds and / or may apply one or more other provisioned traffic-management policies, as a basis to control the UE’s uplink traffic flow on one or more of the network paths.
[0094] Further, the traffic-handling server may regularly compare the performance metrics established for the three example network paths (e.g., as reported by the measurement server) and may determine based on the comparison and pursuant to one or more provisioned traffic-management policies, which one or more of the network paths to use for the UE’s downlink data communication, and / or whether and to what extent to distribute the UE’s downlink data flow among the network paths and / or to duplicate the UE’s downlink data flow on the network paths. By way of example, the traffic-handling server may route the UE’s downlink data flow on a given one of the network paths based on that path having highest throughput and / or lowest latency and / or packet-loss rate of the various network paths. Alternatively, the traffic-handling server may split the UE’s downlink data flow among the network paths with a split ratio proportional to these performance metrics per path. Still alternatively, the traffic-handling server may duplicate the UE’s downlink data flow among the network paths if the performance metrics of the network paths justify doing so.
[0095] In addition, the traffic-handling server may alternatively compare performance metrics of one or more of the UE’s network paths with predefined thresholds and / or may apply one or more other provisioned traffic-management policies, as a basis to control the UE’s downlink data traffic flow on one or more of the UE’s network paths.
[0096] Optimally as the UE engages in communication with a remote internet endpoint, this process can thus facilitate dynamic control of the UE’s packet-data flow as between not just network paths that each traverse a 3GPP access link or a non-3GPP access link but also as between one or more such network paths and also one or more public-internet network paths that each does not traverse a 3 GPP access link or a non-3GPP access link.Traffic-Handling Server and Associated Handling
[0097] The traffic-handling server could serve as a proxy for communications between the UE and the internet endpoint over each of the UE’s network paths and to dynamically control the UE’s downlink traffic flow between the available network paths as noted above.
[0098] To facilitate this, the traffic-handling server could be provided in a manner that enables the traffic-handling server to proxy at least the UE’s downlink communications through each of the network paths.
[0099] Without limitation, one way to accomplish this is to have the traffic-handling server act as a router or switch for selectively routing between (i) public internet traffic and (ii) the UE’s available network paths. In particular, the traffic-handling server could operate to receive uplink traffic on the UE’s network paths and route that uplink traffic onto the public internet, and to receive downlink traffic from the public internet and selectively route that traffic onto the UE’s network paths.
[0100] For instance, the traffic-handling server could be made accessible at a globally-routable network address (similarly outside of the carrier’s core network or within the carrier’s network), and the UE and traffic-handling server could have separate traffic channels corresponding respectively with the UE’s available network paths. Namely, each of the UE’s network paths through which the UE could communicate with the internet endpoint could be made to traverse a respective one of these traffic channels between the UE and the traffichandling server.
[0101] Figures 10 and 11 illustrate examples of these measurement-signaling channels in the example systems discussed above. As shown in these figures, for example, the UE and traffic-handling server could have (a) a first traffic channel that traverses a 3 GPP access link between the UE and the carrier’s network, for carrying packet-data traffic flowing on the UE’s carrier-based network path that traverses that 3 GPP access link, (b) a second traffic channel that traverses a non-3GPP access link between the UE and the carrier’s network, for carrying packet-data traffic flowing on the UE’s carrier-based network path that traverses that non-3GPP access link, (c) a third traffic channel that does not traverse a 3 GPP or non-3GPP access link, for carrying packet-data traffic flowing on the UE’s public-internet network path that does not traverse a 3GPP or non-3GPP access link.
[0102] One potential difficulty with this arrangement is that the UE may have a different assigned IP address respectively for each of the UE’s network paths. For instance, (i)when the UE acquires a 3GPP access link, the carrier’s core network may assign to the UE a first respective IP address useable by the UE to communicate on the internet, so that may be the UE’s IP address for the UE’s network path that traverses the 3GPP access link, (ii) when the UE acquires a non-3GPP access link, the carrier’s core network may assign to the UE a second respective IP address useable by the UE to communicate on the internet, so that may be the UE’s IP address for the UE’s network path that traverses the non-3GPP access link, and (iii) when the UE connects with the public internet via a Wi-Fi access point and a LAN, a local router may assign to the UE a third respective IP address (or a local IP address and associated port, correlated with a global IP address), so that may be the UE’s IP address for the UE’s public-internet network path that does not traverse a 3 GPP access link or a non-3GPP access link.
[0103] One way to allow the traffic-handling server to accommodate these separate network paths with respective IP addresses is to use Mobile-IP. Namely, the traffic-handling server could be configured to operate as a Mobile-IP home agent at a globally-routable IP address, and the UE could register with the traffic-handling server the UE’s assigned IP addresses as respective Care-of Addresses (CoA) for the UE’s respective network paths and associated traffic channels. This process could involve use of standard Mobile-IP signaling and processing and may itself serve to establish the UE’s traffic channels noted above.
[0104] For example, when the UE acquires a 3 GPP access link with the carrier’s core network and is assigned a first associated IP address useable by the UE to communicate on the internet through that 3GPP access link, the UE may engage in Mobile-IP registration signaling with the traffic-handling server through that 3GPP access link to register that first IP address as a first CoA of the UE. Further, when the UE acquires a non-3GPP access link with the carrier’s core network and is assigned a second associated IP address useable by the UE to communicate on the internet through that non-3GPP access link, the UE may engage in Mobile- IP registration signaling with the traffic-handling server through that non-3GPP access link to register that second IP address as a first CoA of the UE. Still further, when the UE acquires public internet connectivity (e.g., via a Wi-Fi access point and a LAN) without traversing a 3GPP or non-3GPP access link, and the UE is assigned a third IP address useable by the UE to communicate on the internet through that connection, the UE may engage in Mobile-IP registration signaling with the traffic-handling server through public-internet connection to register that third IP address as a third CoA of the UE.
[0105] The UE could be provisioned with an indication of the traffic-handling server’s network address (and optionally with the port number and / or transport protocol), so that the UE and traffic-handling server could establish their respective traffic channels, e.g., so that the UE can engage in Mobile-IP registration with the traffic-handling server respectively for the UE’s various network paths.
[0106] For instance, the UE could be pre-provisioned with this traffic-handling server address. Alternatively, a policy server could dynamically provision the UE with the network address of the traffic-handling server when the UE establishes a 3GPP or non-3GPP access link with the wireless carrier’s network or in response to the UE starting to engage in communication with the internet endpoint, among other possibilities. The UE could then work with the traffic-handling server at that address to establish the traffic channels with the Mobile- IP registration.
[0107] As the UE engages in communication with the remote internet endpoint, the UE’s uplink and downlink packet-data communications may then flow through the traffichandling server. For instance, uplink communications from the UE may flow through any of these traffic channels from the UE to the traffic-handling server, and then from the traffichandling server to the internet endpoint. And downlink communications from the internet endpoint would flow to the traffic-handling server’ s IP address (as the Mobile-IP home address for the UE) and then through any of the traffic channels from the traffic-handling server to the UE.
[0108] With this example arrangement, as the traffic-handling server receives traffic destined to the UE, the traffic-handling server could apply one or more traffic-management policies to dynamically control flow of the UE’s downlink packet-data traffic flow as between the UE’s various network paths as discussed above. Namely, based on a comparison of performance metrics respectively as discussed above, the traffic-handling server could dynamically control switching, splitting, and / or duplicating the UE’s downlink traffic as between the UE’s (i) one or more carrier-based network paths each traversing a 3 GPP or non- 3 GPP access link and (ii) a public-internet network paths that does not traverse a 3 GPP or non- 3 GPP access link.Policy Server and Policies
[0109] In the process noted earlier for dynamic traffic management as between a 3GPP access link and a non-3GPP access link, a policy server in the wireless carrier’s core network (e.g., as part of the core-network control system) may provision traffic-managementpolicies. For instance, the policy server may provision the UE with policy rules that would govern the UE’s dynamic control over the UE’s uplink data flow as between the UE’s 3 GPP access link and the UE’s non-3GPP access link. Further, this policy server may likewise provision the PGW or UPF with similar policy rules that would govern the PGW or UPF’s downlink flow of the UE’ s data as between the UE’ s 3 GPP access link and the UE’ s non-3GPP access link.
[0110] As noted above, that traffic-management, however, would unfortunately be limited to handling the UE’s data flow on these carrier-managed access links, particularly as between a 3 GPP access link and a non-3GPP access link.
[0111] To facilitate more robust and useful dynamic traffic management as between (i) one or more carrier-based network paths that each traverse a 3 GPP or non-3GPP access link and (ii) a public-internet network path that does not traverse a 3 GPP or non-3GPP access link, the carrier’s policy server and / or a third-party policy server may provision the UE and / or the above-noted traffic-handling server with one or more policy rules that govern the more robust traffic management.
[0112] The one or more traffic-management policy rules may include performancebased criteria for dynamically controlling the flow of the UE’s packet-data traffic as between (i) one or more carrier-based network paths that each traverse a 3 GPP or non-3GPP access link between the UE and the carrier’s network and (ii) a public-internet network path that does not traverse a 3 GPP or non-3GPP access link. As noted above, these policy rules could be keyed to a comparison of observed performance respectively of these network paths and may provide for steering traffic to one path or another, splitting traffic among the paths, and / or duplicating traffic among the paths, among other possibilities.
[0113] For example, the policy rules may establish that, (i) at times when measured latency or packet-loss rate on the UE’s public-internet network path is lower than correspondingly measured latency or packet-loss rate on the UE’s one or more carrier-based network paths, the UE’s traffic should be steered onto the UE’s public-internet network path rather than onto the UE’s one or more carrier-based network paths, whereas (ii) at times when measured latency or packet-loss rate on one of the UE’s carrier-based network paths is lower than correspondingly measured latency or packet-loss rate on the UE’s public-internet network path, the UE’s traffic should be steered onto the one carrier-based network path rather than onto the public-internet network path.
[0114] As another example, the policy rules may establish that the UE’s traffic should be split among the network paths with a split ratio established based on a comparison of measured latency or packet-loss rate on the network paths. According to such a policy, for instance, if the UE’s carrier-based network path that traverses a 3GPP access link has measured packet loss rate that is twice as high as the measured packet-loss on the UE’s public-internet network path, a policy rule may provide that twice as much of the UE’s packet-data flow (e.g., downlink and / or uplink) should be provided on the UE’ s public-internet network path as on the UE’s carrier-based access link that traverses the 3GPP access link.
[0115] Further, the policy rules may define triggers for establishing (initiating) one or more of the UE’s network paths.
[0116] For example, if a UE has just one or more carrier-based network paths (e.g., a network path that traverses a 3 GPP access link between the UE and the carrier’s network and / or a network path that traverses a non-3GPP access link between the UE and the carrier’s network), a policy rule provisioned at the UE may define a trigger condition in response to the occurrence of which the UE would work to establish a public-internet network path as another path to be subject to the present dynamic traffic management process.
[0117] This trigger condition could relate to a threshold level of observed performance of one or more network paths that the UE already has in place. For instance, a policy rule provisioned at the UE may specify that, per ongoing monitoring of the UE’s one or more carrier-based network paths, if latency or packet-loss rate on each such one or more carrier-based network path is at least as high as a predefined threshold deemed to represent threshold poor performance, the UE should responsively work to establish a public-internet network path as a further path to be subject to the dynamic traffic management. When that defined trigger condition occurs, the UE may thus responsively obtain public-network connectivity if the UE does not already have it, and the UE may work with the measurement server and traffic-handling server as noted above to establish measurement-signaling and traffic channels corresponding with a public-internet network path. Per the traffic-management policies, the UE and / or the traffic server may then dynamically control the UE’s packet-data flow as between the UE’ s carrier-based network path(s) and the UE’ s newly established publicinternet network path.
[0118] Likewise, the policy rules may define triggers for releasing one or more such network paths. For instance, a policy rule provisioned at the UE may define a trigger condition in response to the occurrence of which the UE would release a given one of its network paths.This trigger condition may similarly be keyed to observed performance of the given network path, possibly by comparison with observed performance of the UE’s one or more other network paths. For instance, the policy rule may establish that, if the observed performance of a given one of the UE’s network paths has been threshold poor (e.g., with measured performance at least as low as a predefined threshold low level) for a threshold duration (e.g., for at least a time period deemed to be problematic), and perhaps if the observed performance of at least one other network path that the UE has been sufficiently good (e.g., with measured performance at least as high as a predefined threshold high level) for that duration or the like, the UE should release the given network path.
[0119] Upon determining that such a network-path-release condition is met, the UE may work to release the given network path. As to a carrier-based network path traversing a 3 GPP access link or non-3GPP access link, for instance, the UE may engage in signaling with the appropriate carrier entity (e.g., a serving access node or a gateway or IWF) to trigger tearing down the access link. Further, the UE may engage in signaling with the measurement server and the traffic server to similarly release the UE’s associated measurement-signaling channel and traffic channel.
[0120] In addition, the policy server may provision the UE, the measurement server, and / or the traffic-handling server with information that enables those entities to communicate with each other, so as to facilitate the present processes.
[0121] For example, the policy server may provision the UE with a network address and port number of the measurement server, to enable the UE to establish measurementsignaling channels with the measurement server at that address. Further, the policy server may provision the UE with information about the measurement-signaling channels to establish between the UE and the measurement server, corresponding respectively with the UE’s separate network paths, to enable the UE and measurement server to measure performance corresponding with the UE’s respective network paths.
[0122] As another example, the policy server may provision the UE with a network address and port number of the traffic-handling server, to enable the UE to establish traffic channels with the traffic-handing server at that address. Further, the policy server may provision the UE with information about the traffic channels to establish between the UE and the traffic-handling server, for carrying traffic of the UE’s respective network paths.
[0123] A policy server in the carrier’s network (e.g., policy server 132 or 232) may so provision the UE with these network addresses and / or with the associated traffic-management policies noted during or after the UE registers or attaches with the carrier’s network to establish a 3GPP or non-3GPP access link. For instance, the policy server may provide this configuration information, and the core-network control system may provide the information to the UE in registration or attachment response signaling from the core network to the UE (e.g., network access stratum (NAS) signaling), among other possibilities.
[0124] Alternatively or additionally, a third-party policy server (e.g., policy server 130 or 230) could be provided separate from the wireless carrier’s network and could similarly provision the UE, the traffic-handling server, and / or measurement server with these or other policies and information. This third-party policy server could be made accessible at a globally- routable network address, so that the UE could engage in signaling with the third-party policy server at that network address.
[0125] In an example implementation, a policy server in the wireless carrier’s network may provision the UE with the network address of this third-policy policy server, to enable the UE to engage in signaling with the third-party policy server. For instance, the carrier’s policy server may provision the UE with the address of the third-party policy server when the UE is connected with the carrier’s network. For example, once the UE acquires a 3GPP access link and / or non-3GPP access link with the carrier’s network, the carrier’s policy server may provision the UE with a network address of the third-party policy server. Alternatively, the carrier’s policy server may pre-provision the UE with this or other information or the UE may be otherwise provisioned.
[0126] The UE may then interact with the third-party policy server to obtain trafficmanagement policies and / or other information that the UE could use as a basis to dynamically control flow of the UE’s packet-data traffic among the UE’s network paths. Further, the UE and third-party policy server may establish a secure communication session (e.g., VPN session) with each other through which the UE could receive this policy data.
[0127] A policy server in or outside of the carrier’s network could also dynamically adjust one or more provisioned policies based on observed network-path performance reported by the UE and / or the measurement server. For instance, in response to one or more reports indicating that latency or packet-loss rate on one of the UE’s network paths is especially high, perhaps for a threshold duration, the policy server may dynamically re-provision the UE and / or the traffic-handling server with an updated policy that minimizes routing of the UE’s packetdata traffic on that particular network path and / or otherwise helps to prioritize use of one or more other of the UE’s network paths instead.
[0128] As additionally noted above, in a further example implementation, the policies and / or provisioning noted here could be location-based and / or time-based.
[0129] For example, based on a determination of the UE’s current location, a policy server could update policy provisioning at the UE and / or traffic-handling server to be specific to that location. Alternatively or additionally, one or more policy rules so provisioned may provide for different dynamic traffic management based on comparison of network path performance when the UE is at one location than when the UE is at another location.
[0130] As another example, a location-based policy may cause the UE to add a public-internet network path in response to the UE being at a given location, or may cause the UE to add a non-3GPP carrier-based network path when the UE is at a given location, possibly guiding the UE to connect with a particular gateway or IWF of the carrier’s network that may be specific to that location.
[0131] As another example, a traffic-management policy could provide for different traffic steering based on time of day. For instance, this could be based on historical data indicating measured performance of carrier-based network paths and public-internet network path at various times of day, to predict measured performance per path at a given time of day (e.g., current time of day), and using the predicted measured performance per path at the given time of day as a basis for dynamically controlling flow of the UE’s packet-data traffic as between the UE’s various network paths.Example Methods
[0132] Figure 12 is a flow chart illustrating an example method that could be carried out in accordance with the present disclosure in order to dynamically manage a UE’s packetdata traffic flow as between (i) one or more carrier-based network paths that each traverse a 3GPP or non-3GPP access link between the UE and a cellular wireless carrier’s network and (ii) a public-internet network path that does not traverse a 3 GPP or non-3GPP access link.
[0133] In particular, the method could work to manage flow of packet-data communication between the UE and a remote endpoint when the UE has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, the first network path traversing a carrier-based access link established for the UE, the carrier-based access link being selected from the group consisting of a 3GPP access link and a non-3GPP access link, and the second network path not traversing any 3 GPP access link or non-3GPP access link established for the UE.
[0134] As shown in Figure 12, at block 1200, the method includes measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurement-signaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link established for the UE. Further, at block 1202, which may occur in parallel with block 1200 as shown, the method includes measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurement-signaling channel not traversing any 3GPP access link or non-3GPP access link established for the UE.
[0135] At block 1204, the method then includes comparing the measured first performance with the measured second performance. And at block 1206, the method includes, based on the comparison of the measured first performance with the measured second performance, controlling the flow of the packet-data communication as between the first network path and the second network path. As noted above, this process could be carried out repeatedly over time to dynamically control flow of the UE’s packet-data communication as between these and possibly one or more other network paths.
[0136] In line with the discussion above, the second network path could be a publicinternet network path. Further, as discussed above, the act of controlling the flow of the packetdata communication as between the first network path and the second network path could be done on a per-packet basis, e.g., at the PDU layer among other possibilities. Alternatively, the controlling could be done on another basis, such as per unit time, among other possibilities.
[0137] As further discussed above, the act of measuring the first performance could be carried out by the UE based on ICMP signaling between the UE and the measurement server over the first measurement-signaling channel, and the act of measuring the second performance could be carried out by the UE based on ICMP signaling between the UE and the measurement server over the second measurement-signaling channel.
[0138] Further, as discussed above, the packet-data communication between the UE and the remote endpoint could include uplink packet-data communication from the UE to the remote endpoint, the controlling of the flow of the packet-data communication as between the first network path and the second network path could involve controlling flow of the uplink packet-data communication as between the first network path and the second network path, and the controlling of the flow of the uplink packet-data communication as between the first network path and the second network path could be carried out by the UE.
[0139] Alternatively, as noted above, the act of measuring of first performance could be carried out by the measurement server based on ICMP signaling between the measurement server and the UE over the first measurement-signaling path, and the act of measuring the second performance could be carried out by the measurement server based on ICMP signaling between the measurement server and the UE over the second measurement-signaling path.
[0140] Further, as discussed above, the packet-data communication between the UE and the remote endpoint could include downlink packet-data communication from the remote endpoint to the UE, controlling the flow of the packet-data communication as between the first network path and the second network path could involve controlling flow of the downlink packet-data communication as between the first network path and the second network path, and controlling the flow of the downlink packet-data communication as between the first network path and the second network path could involve causing a traffic-handling server to control the flow of the downlink packet-data communication as between the first network path and the second network path.
[0141] As additionally discussed above, the act of controlling the flow of the packetdata communication as between the first network path and the second network path based on the comparing of the measured first performance with the measured second performance could involve a control operation such as (i) switching the packet-data communication from one of the first and second network paths to the other of the first and second network paths, (ii) splitting the packet-data communication between the first and second network paths, or (iii) duplicating the packet-data communication on the first and second network paths.
[0142] Further, as discussed above, the act of controlling the flow of the packet-data communication as between the first network path and the second network path based on the comparing of the measured first performance with the measured second performance could be in accordance with one or more pre-provisioned traffic-management policies, such as policies provisioned by a carrier or third-party policy server into the UE or a traffic-handling server, among other possibilities.
[0143] Figure 13 is another flow chart illustrating an example method that could be carried out in accordance with the present disclosure in order to dynamically manage distribution of UE’ s packet-data traffic flow among (a) one or more carrier-based network paths that each traverse a carrier-based access link including at least (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier and (b) a public-internet network path that does not traverse any such carrier-based access link.
[0144] In particular, the method could work to manage flow of packet-data communication between the UE and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, the first network path traversing a carrier-based access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier, and the second network path not traversing any air-interface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier. (As described herein, a connection between two entities, such as between the UE and the cellular carrier for instance, is a connection extending from one entity to the other.)
[0145] As shown in Figure 13, at block 1300, the method includes measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurement-signaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link. Further, at block 1302, which may occur in parallel with block 1300 as shown, the method includes measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurement-signaling channel not traversing any airinterface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier.At block 1304, the method then includes comparing the measured first performance with the measured second performance. And at block 1306, the method includes, based on the comparison of the measured first performance with the measured second performance, controlling distribution of the packet-data communication among the first network path and the second network path. As noted above, this process could be carried out repeatedly over time to dynamically control distribution of the UE’s packet-data communication among these and possibly one or more other network paths.
[0146] In line with the discussion above, the second network path could be a publicinternet network path. Further, as discussed above, the act of controlling the distribution of the packet-data communication among the first network path and the second network path couldbe done on a per-packet basis, e.g., at the PDU layer among other possibilities. Alternatively, the controlling could be done on another basis, such as per unit time, among other possibilities.
[0147] As further discussed above, the act of measuring the first performance could be carried out by the UE based on ICMP signaling between the UE and the measurement server over the first measurement-signaling channel, and the act of measuring the second performance could be carried out by the UE based on ICMP signaling between the UE and the measurement server over the second measurement-signaling channel.
[0148] Further, as discussed above, the packet-data communication between the UE and the remote endpoint could include uplink packet-data communication from the UE to the remote endpoint, the controlling of the distribution of the packet-data communication among the first network path and the second network path could involve controlling distribution of the uplink packet-data communication among the first network path and the second network path, and the controlling of the distribution of the uplink packet-data communication among the first network path and the second network path could be carried out by the UE.
[0149] Alternatively, as noted above, the act of measuring of first performance could be carried out by the measurement server based on ICMP signaling between the measurement server and the UE over the first measurement-signaling channel, and the act of measuring the second performance could be carried out by the measurement server based on ICMP signaling between the measurement server and the UE over the second measurement-signaling channel.
[0150] Further, as discussed above, the packet-data communication between the UE and the remote endpoint could include downlink packet-data communication from the remote endpoint to the UE, controlling the distribution of the packet-data communication among the first network path and the second network path could involve controlling distribution of the downlink packet-data communication among the first network path and the second network path, and controlling the distribution of the downlink packet-data communication among the first network path and the second network path could involve causing a traffic-handling server to control the distribution of the downlink packet-data communication among the first network path and the second network path.
[0151] As additionally discussed above, the act of controlling the distribution of the packet-data communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance could involve a control operation such as (i) switching the packet-data communication from one of the first and second network paths to the other of the first and second network paths, (ii)splitting the packet-data communication between the first and second network paths, or (iii) duplicating the packet-data communication on the first and second network paths.
[0152] Further, as discussed above, the act of controlling the distribution of the packet-data communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance could be in accordance with one or more pre-provisioned traffic-management policies, such as policies provisioned by a carrier or third-party policy server into the UE or a traffic-handling server, among other possibilities.Example Computing System
[0153] Figure 14 is a simplified block diagram of an example computing system that could be configured to carry out these and / or other operations described herein. This computing system could represent components of any of the various entities discussed above alone or in combination, among other possibilities. For instance, the computing system could be disposed at least in part at the UE, and various operations of the computing system could be carried out by the UE, and / or the computing system could be disposed at least in part at the measurement server, and various operations of the computing system could be carried out by the measurement server.
[0154] As shown in Figure 14, the example computing system includes at least one network interface 1400, at least one processor 1402, and at least one non-transitory data storage 1404, all of which could be communicatively linked together by a system bus, network, or other connection mechanism 1406.
[0155] The network communication interface 1400 may comprise one or more wired and / or wireless network communication modules along with associated drivers and / or other logic, to enable communication over a network.
[0156] The at least one processor 1402 may comprise one or more general purpose processors (e.g., microprocessors) and / or one or more special purpose processors (e.g., digital signal processors, application specific integrated circuits, etc.). Further, the at least one non- transitory data storage 1404 may comprise one or more volatile and / or non-volatile, removable and / or permanently situated storage components (such as magnetic, optical, flash, RAM, ROM, EPROM, EEPROM, etc.) and may be integrated in whole or in part with the at least one processor 1402. The at least one data storage 1404 may then embody, encode, hold, or otherwise store program instructions 1408, which could be executable by the at least oneprocessor 1402 to cause the computing system to carry out various operations such as those described above for instance.
[0157] The present disclosure contemplates at least one non-transitory computer- readable medium (e.g., one or more volatile and / or non-volatile storage components, such as magnetic, optical, flash, RAM, ROM, EPROM, EEPROM, etc.) having stored thereon program instructions executable by at least one processor to carry out or cause to be carried out various disclosed operations.
[0158] Example embodiments have been described above. Those skilled in the art will understand, however, that changes and modifications may be made to these embodiments without departing from the true scope and spirit of the invention.
Claims
CLAIMSWe claim:
1. A method to manage flow of packet-data communication between a user equipment device (UE) and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, wherein the first network path traverses a carrierbased access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier, and wherein the second network path does not traverse any air-interface connection between the UE and the RAN of the cellular carrier and does not traverse any secure-tunneling connection between the UE and the cellular carrier, the method comprising: measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurement-signaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link; measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurement-signaling channel not traversing any air-interface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier; comparing the measured first performance with the measured second performance; and based on the comparing of the measured first performance with the measured second performance, controlling distribution of the packet-data communication among the first network path and the second network path.
2. The method of claim 1, wherein the second network path is a public-internet network path.
3. The method of claim 1 , wherein the controlling of the distribution of the packetdata communication among the first network path and the second network path is done on a per-packet basis.
4. The method of claim 1, wherein the measuring of the first performance is carried out by the UE based on Internet Control Message Protocol (ICMP) signaling between the UE and the measurement server over the first measurement-signaling channel; and wherein the measuring of the second performance is carried out by the UE based on ICMP signaling between the UE and the measurement server over the second measurementsignaling channel.
5. The method of claim 1, wherein the packet-data communication between the UE and the remote endpoint comprises uplink packet-data communication from the UE to the remote endpoint, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution of the uplink packet-data communication among the first network path and the second network path, and wherein the controlling of the distribution of the uplink packet-data communication among the first network path and the second network path is carried out by the UE.
6. The method of claim 1, wherein the measuring of the first performance is carried out by the measurement server based on Internet Control Message Protocol (ICMP) signaling between the measurement server and the UE over the first measurement-signaling channel; and wherein the measuring of the second performance is carried out by the measurement server based on ICMP signaling between the measurement server and the UE over the second measurement-signaling channel.
7. The method of claim 1, wherein the packet-data communication between the UE and the remote endpoint comprises downlink packet-data communication from the remote endpoint to the UE,wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution of the downlink packet-data communication among the first network path and the second network path, and wherein the controlling of the distribution of the downlink packet-data communication among the first network path and the second network path comprises causing a traffic-handling server to control the distribution of the downlink packet-data communication among the first network path and the second network path.
8. The method of claim 1, wherein the controlling of the distribution of the packetdata communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance comprises a control operation selected from the group consisting of (i) switching the packet-data communication from one of the first and second network paths to the other of the first and second network paths, (ii) splitting the packet-data communication between the first and second network paths, and (iii) duplicating the packet-data communication on the first and second network paths.
9. The method of claim 1, wherein the controlling of the distribution of the packetdata communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance is in accordance with one or more pre-provisioned traffic-management policies.
10. A computing system for managing flow of packet-data communication between a user equipment device (UE) and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, wherein the first network path traverses a carrier-based access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier, and wherein the second network path does not traverse any air-interface connection between the UE and the RAN of the cellular carrier and does not traverse any secure-tunneling connection between the UE and the cellular carrier, the computing system comprising:at least one processor; at least one non-transitory data storage; program instructions stored in the at least one non-transitory data storage and executable by the at least one processor to carry out operations including: measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurement-signaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link, measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurementsignaling channel not traversing any air-interface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier, comparing the measured first performance with the measured second performance, and based on the comparing of the measured first performance with the measured second performance, controlling distribution of the packet-data communication among the first network path and the second network path.
11. The computing system of claim 10, wherein the computing system is disposed at least in part at the UE, and wherein the operations are carried out by the UE.
12. The computing system of claim 10, wherein the computing system is disposed at least in part at the measurement server, wherein the operations are carried out by the measurement server.
13. The computing system of claim 10, wherein the measuring of the first performance is carried out based on Internet Control Message Protocol (ICMP) signaling between the UE and the measurement server over the first measurement-signaling channel; andwherein the measuring of the second performance is carried out based on ICMP signaling between the UE and the measurement server over the second measurement-signaling channel.
14. The computing system of claim 10, wherein the packet-data communication between the UE and the remote endpoint comprises uplink packet-data communication from the UE to the remote endpoint, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution of the uplink packet-data communication among the first network path and the second network path.
15. The computing system of claim 10, wherein the packet-data communication between the UE and the remote endpoint comprises downlink packet-data communication from the remote endpoint to the UE, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution of the downlink packet-data communication among the first network path and the second network path, and wherein the controlling of the distribution of the downlink packet-data communication among the first network path and the second network path comprises causing a traffic-handling server to control the distribution of the downlink packet-data communication among the first network path and the second network path.
16. The computing system of claim 10, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance comprises a control operation selected from the group consisting of (i) switching the packet-data communication from one of the first and second network paths to the other of the first and second network paths, (ii) splitting the packet-data communication between the first and second network paths, and (iii) duplicating the packet-data communication on the first and second network paths.
17. The computing system of claim 10, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path based on the comparing of the measured first performance with the measured second performance is in accordance with one or more pre-provisioned traffic-management policies.
18. At least one non-transitory computer-readable medium having stored thereon program instructions executable to cause at least one processor to carry out operations for managing flow of packet-data communication between a user equipment device (UE) and a remote endpoint when the UE is served by a cellular carrier and has a first network path of communication with the remote endpoint and a second network path of communication with the remote endpoint, wherein the first network path traverses a carrier-based access link that includes at least one of (i) an air-interface connection between the UE and a radio access network (RAN) of the cellular carrier or (ii) a secure-tunneling connection between the UE and the cellular carrier, and wherein the second network path does not traverse any air-interface connection between the UE and the RAN of the cellular carrier and does not traverse any secure-tunneling connection between the UE and the cellular carrier, the operations comprising: measuring first performance of the first network path based on signaling between the UE and a measurement server over a first measurement-signaling channel corresponding with the first network path, the first measurement-signaling channel traversing the carrier-based access link; measuring second performance of the second network path based on signaling between the UE and the measurement server over a second measurement-signaling channel corresponding with the second network path, the second measurement-signaling channel not traversing any air-interface connection between the UE and the RAN of the cellular carrier and not traversing any secure-tunneling connection between the UE and the cellular carrier; comparing the measured first performance with the measured second performance; and based on the comparing of the measured first performance with the measured second performance, controlling distribution of the packet-data communication among the first network path and the second network path.
19. The at least one non-transitory computer-readable medium of claim 18,wherein the packet-data communication between the UE and the remote endpoint comprises uplink packet-data communication from the UE to the remote endpoint, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution the uplink packet-data communication among the first network path and the second network path.
20. The at least one non-transitory computer-readable medium of claim 18, wherein the packet-data communication between the UE and the remote endpoint comprises downlink packet-data communication from the remote endpoint to the UE, wherein the controlling of the distribution of the packet-data communication among the first network path and the second network path comprises controlling distribution of the downlink packet-data communication among the first network path and the second network path, and wherein the controlling of the distribution of the downlink packet-data communication among the first network path and the second network path comprises causing a traffic-handling server to control the distribution of the downlink packet-data communication among the first network path and the second network path.
Citation Information
Patent Citations
Cooperative bandwidth aggregation using multipath transport
US20110296006A1
Standalone Network Probing Using Available Network Connections
US20170279701A1
Connection establishment method and terminal device
US20220094748A1