Patent ID: 12193081

DETAILED DESCRIPTION

The subject matter of embodiments of the invention is described with specificity herein to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might be embodied in other ways, to include different steps or combinations of steps similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the terms “step” and/or “block” may be used herein to connote different elements of methods employed, the terms should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.

Throughout this disclosure, several acronyms and shorthand notations are employed to aid the understanding of certain concepts pertaining to the associated system and services. These acronyms and shorthand notations are intended to help provide an easy methodology of communicating the ideas expressed herein and are not meant to limit the scope of embodiments described in the present disclosure. Various technical terms are used throughout this description. An illustrative resource that fleshes out various aspects of these terms can be found in Newton's Telecom Dictionary, 25th Edition (2009).

Embodiments of the present technology may be embodied as, among other things, a method, system, or computer-program product. Accordingly, the embodiments may take the form of a hardware embodiment, or an embodiment combining software and hardware. An embodiment takes the form of a computer-program product that includes computer-useable instructions embodied on one or more computer-readable media.

Computer-readable media include both volatile and nonvolatile media, removable and nonremovable media, and contemplate media readable by a database, a switch, and various other network devices. Network switches, routers, and related components are conventional in nature, as are means of communicating with the same. By way of example, and not limitation, computer-readable media comprise computer-storage media and communications media.

Computer-storage media, or machine-readable media, include media implemented in any method or technology for storing information. Examples of stored information include computer-useable instructions, data structures, program modules, and other data representations. Computer-storage media include, but are not limited to RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile discs (DVD), holographic media or other optical disc storage, magnetic cassettes, magnetic tape, magnetic disk storage, and other magnetic storage devices. These memory components can store data momentarily, temporarily, or permanently.

Communications media typically store computer-useable instructions—including data structures and program modules—in a modulated data signal. The term “modulated data signal” refers to a propagated signal that has one or more of its characteristics set or changed to encode information in the signal. Communications media include any information-delivery media. By way of example but not limitation, communications media include wired media, such as a wired network or direct-wired connection, and wireless media such as acoustic, infrared, radio, microwave, spread-spectrum, and other wireless media technologies. Combinations of the above are included within the scope of computer-readable media.

By way of background, a traditional telecommunications network employs a plurality of base stations (i.e., access point, node, cell sites, cell towers) to provide network coverage. The base stations are employed to broadcast and transmit transmissions to user devices of the telecommunications network. An access point may be considered to be a portion of a base station that may comprise an antenna, a radio, and/or a controller. In aspects, an access point is defined by its ability to communicate with a user equipment (UE), such as a wireless communication device (WCD), according to a single protocol (e.g., 3G, 4G, LTE, 5G, and the like); however, in other aspects, a single access point may communicate with a UE according to multiple protocols. As used herein, a base station may comprise one access point or more than one access point. Factors that can affect the telecommunications transmission include, e.g., location and size of the base stations, and frequency of the transmission, among other factors. The base stations are employed to broadcast and transmit transmissions to user devices of the telecommunications network. Traditionally, the base station establishes uplink (or downlink) transmission with a mobile handset over a single frequency that is exclusive to that particular uplink connection (e.g., an LTE connection with an EnodeB). In this regard, typically only one active uplink connection can occur per frequency. The base station may include one or more sectors served by individual transmitting/receiving components associated with the base station (e.g., antenna arrays controlled by an EnodeB). These transmitting/receiving components together form a multi-sector broadcast arc for communication with mobile handsets linked to the base station.

As used herein, UE (also referenced herein as a user device or a wireless communication device) can include any device employed by an end-user to communicate with a wireless telecommunications network. A UE can include a mobile device, a mobile broadband adapter, a fixed location or temporarily fixed location device, or any other communications device employed to communicate with the wireless telecommunications network. For an illustrative example, a UE can include cell phones, smartphones, tablets, laptops, small cell network devices (such as micro cell, pico cell, femto cell, or similar devices), and so forth. Further, a UE can include a sensor or set of sensors coupled with any other communications device employed to communicate with the wireless telecommunications network; such as, but not limited to, a camera, a weather sensor (such as a rain gage, pressure sensor, thermometer, hygrometer, and so on), a motion detector, or any other sensor or combination of sensors. A UE, as one of ordinary skill in the art may appreciate, generally includes one or more antennas coupled to a radio for exchanging (e.g., transmitting and receiving) transmissions with a nearby base station or access point.

In aspects, a UE provides UE data including location and channel quality information to the wireless communication network via the access point. Location information may be based on a current or last known position utilizing GPS or other satellite location services, terrestrial triangulation, an access point's physical location, or any other means of obtaining coarse or fine location information. Channel quality information may indicate a realized uplink and/or downlink transmission data rate, observed signal-to-interference-plus-noise ratio (SINR) and/or signal strength at the user device, or throughput of the connection. Channel quality information may be provided via, for example, an uplink pilot time slot, downlink pilot time slot, sounding reference signal, channel quality indicator (CQI), rank indicator, precoding matrix indicator, or some combination thereof. Channel quality information may be determined to be satisfactory or unsatisfactory, for example, based on exceeding or being less than a threshold. Location and channel quality information may take into account the user device capability, such as the number of antennas and the type of receiver used for detection. Processing of location and channel quality information may be done locally, at the access point or at the individual antenna array of the access point. In other aspects, the processing of said information may be done remotely.

A service state of the UEs may include, for example, an in-service state when a UE is in-network (i.e., using services of a primary provider to which the UE is subscribed to, otherwise referred to as a home network carrier), or when the UE is roaming (i.e., using services of a secondary provider providing coverage to the particular geographic location of the UE that has agreements in place with the primary provider of the UE). The service state of the UE may also include, for example, an emergency only state when the UE is out-of-network and there are no agreements in place between the primary provider of the UE and the secondary provider providing coverage to the current geographic location of the UE. Finally, the service state of the UE may also include, for example, an out of service state when there are no service providers at the particular geographic location of the UE.

In accordance with aspects herein, a mobile network operator may preserve a set of servers that dynamically select, download, and store heavily used applications and associated webpage objects, such as http objects, graphics interchange format (GIF), joint photographic experts group (JPEG), video, cascading style sheets (CSS), and others. Mobile operators may use network intelligence from nodes to better understand which contents are frequently requested. Popular content may change over time and different locations may have different preferences based on demographics, as well as social and behavioral differences. The density of cell towers in an area may also influence which applications are stored in which locations. Mobile network providers see these differences across their networks.

In a 5G network the network data analytics function (NDAWF) tracks mobility, usage, and real time dynamics of pattern recognition for the overall behavior of customers. The NDAWF allows mobile network operators to determine which contents may be candidates for edge computing.

In accordance with a first aspect of the present disclosure, a system that takes advantage of the NDAWF functionality determines which contents are suitable for edge computing and then uses the core network platform to set up a communication flow with the respective application servers to request the heavily used contents be downloaded to the mobile network operator's premises. A tunnel may be created with the application servers to pull the needed files and then transfer it back to empty edge computing servers owned by the mobile network operator.

The edge computing servers may be located near the user plane function (UPF) hardware. In some implementations the edge computing servers may be located inside the UPF, depending on the mobile network operator's implementation choices. The edge computing servers do not permanently store the high frequency content. Over time the highly requested content may change and the edge computing servers may be flushed to provide for storage of newly popular content. The actual local use patterns may change with each UPF location

A second aspect of the present disclosure is directed to a computer implemented method for edge computing in a mobile network. The method comprises identifying highly requested content at an access point. Once the highly requested content has been identified, tunneling to at least one application server is performed to download the highly requested content. After downloading the highly requested content is stored near the access point.

Another aspect of the present disclosure is directed to a device for edge computing. The device includes a display, a processor, and a memory that stores executable instructions that when executed by the processor perform operations. The operations include: identifying highly requested content at an access point; tunneling to at least one application server to download the highly requested content; and storing the highly requested content near an access point.

A further aspect of the present disclosure is directed to a system for edge computing in a mobile network. The system includes a processor and one or more computer storage hardware devices storing computer-usable instructions that, when executed by the processor, cause the processor to: identify highly requested content at an access point; tunnel to at least one application server to download the highly requested content; and store the highly requested content near an access point.

Turning toFIG.1, a diagram is depicted of an exemplary computing environment suitable for use in implementations of the present disclosure. In particular, the exemplary computer environment is shown and designated generally as computing device100. Computing device100is but one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Neither should computing device100be interpreted as having any dependency or requirement relating to any one or combination of components illustrated. In aspects, the computing device100may be a UE, or other user device, capable of two-way wireless communications with an access point. Some non-limiting examples of the computing device100include a cell phone, tablet, pager, personal electronic device, wearable electronic device, activity tracker, desktop computer, laptop, PC, and the like.

The implementations of the present disclosure may be described in the general context of computer code or machine-useable instructions, including computer-executable instructions such as program components, being executed by a computer or other machine, such as a personal data assistant or other handheld device. Generally, program components, including routines, programs, objects, components, data structures, and the like, refer to code that performs particular tasks or implements particular abstract data types. Implementations of the present disclosure may be practiced in a variety of system configurations, including handheld devices, consumer electronics, general-purpose computers, specialty computing devices, etc. Implementations of the present disclosure may also be practiced in distributed computing environments where tasks are performed by remote-processing devices that are linked through a communications network.

With continued reference toFIG.1, computing device100includes bus102that directly or indirectly couples the following devices: memory104, one or more processors106, one or more presentation components108, input/output (I/O) ports112, I/O components110, radio116, transmitter118, and power supply114. Bus102represents what may be one or more busses (such as an address bus, data bus, or combination thereof). Although the devices ofFIG.1are shown with lines for the sake of clarity, in reality, delineating various components is not so clear, and metaphorically, the lines would more accurately be grey and fuzzy. For example, one may consider a presentation component such as a display device to be one of I/O components110. Also, processors, such as one or more processors106, have memory. The present disclosure hereof recognizes that such is the nature of the art, and reiterates thatFIG.1is merely illustrative of an exemplary computing environment that can be used in connection with one or more implementations of the present disclosure. Distinction is not made between such categories as “workstation,” “server,” “laptop,” “handheld device,” etc., as all are contemplated within the scope ofFIG.1and refer to “computer” or “computing device.”

Computing device100typically includes a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by computing device100and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Computer storage media does not comprise a propagated data signal.

Communication media typically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer-readable media.

Memory104includes computer-storage media in the form of volatile and/or nonvolatile memory. Memory104may be removable, nonremovable, or a combination thereof. Exemplary memory includes solid-state memory, hard drives, optical-disc drives, etc. Computing device100includes one or more processors106that read data from various entities such as bus102, memory104or I/O components110. One or more presentation components108present data indications to a person or other device. Exemplary one or more presentation components108include a display device, speaker, printing component, vibrating component, etc. I/O ports112allow computing device100to be logically coupled to other devices including I/O components110, some of which may be built into computing device100. Illustrative I/O components110include a microphone, joystick, game pad, satellite dish, scanner, printer, wireless device, etc.

The radio116represents one or more radios that facilitate communication with a wireless telecommunications network. While a single radio116is shown inFIG.1, it is contemplated that there may be more than one radio116coupled to the bus102. In aspects, the radio116utilizes a transmitter118to communicate with the wireless telecommunications network. It is expressly conceived that a computing device with more than one radio116could facilitate communication with the wireless telecommunications network via both the first transmitter118and an additional transmitters (e.g. a second transmitter). Illustrative wireless telecommunications technologies include CDMA, GPRS, TDMA, GSM, and the like. The radio116may additionally or alternatively facilitate other types of wireless communications including Wi-Fi, WiMAX, LTE, 3G, 4G, LTE, 5G, NR, VoLTE, or other VoIP communications. As can be appreciated, in various embodiments, radio116can be configured to support multiple technologies and/or multiple radios can be utilized to support multiple technologies. A wireless telecommunications network might include an array of devices, which are not shown so as to not obscure more relevant aspects of the invention. Components such as a base station, a communications tower, or even access points (as well as other components) can provide wireless connectivity in some embodiments.

Next,FIG.2provides an exemplary network environment in which implementations of the present disclosure may be employed. Such a network environment is illustrated and designated generally as network environment200. Network environment200is not to be interpreted as having any dependency or requirement relating to any one or combination of components illustrated.

Network environment200includes user devices (UE)202,204,206,208, and210, access point214(which may be a cell site, base station, or the like), and one or more communication channels212. In network environment200, user devices may take on a variety of forms, such as a personal computer (PC), a user device, a smart phone, a smart watch, a laptop computer, a mobile phone, a mobile device, a tablet computer, a wearable computer, a personal digital assistant (PDA), a server, a CD player, an MP3 player, a global positioning system (GPS) device, a video player, a handheld communications device, a workstation, a router, a hotspot, and any combination of these delineated devices, or any other device (such as the computing device100) that communicates via wireless communications with the access point214in order to interact with a public or private network.

In some aspects, each of the UEs202,204,206,208, and210may correspond to computing device100inFIG.1. Thus, a UE can include, for example, a display(s), a power source(s) (e.g., a battery), a data store(s), a speaker(s), memory, a buffer(s), a radio(s) and the like. In some implementations, for example, a UEs202,204,206,208, and210comprise a wireless or mobile device with which a wireless telecommunication network(s) can be utilized for communication (e.g., voice and/or data communication). In this regard, the user device can be any mobile computing device that communicates by way of a wireless network, for example, a 3G, 4G, 5G, LTE, CDMA, or any other type of network.

In some cases, UEs202,204,206,208, and210in network environment200can optionally utilize one or more communication channels212to communicate with other computing devices (e.g., a mobile device(s), a server(s), a personal computer(s), etc.) through access point214. The network environment200may be comprised of a telecommunications network(s), or a portion thereof. A telecommunications network might include an array of devices or components (e.g., one or more base stations), some of which are not shown. Those devices or components may form network environments similar to what is shown inFIG.2, and may also perform methods in accordance with the present disclosure. Components such as terminals, links, and nodes (as well as other components) can provide connectivity in various implementations. Network environment200can include multiple networks, as well as being a network of networks, but is shown in more simple form so as to not obscure other aspects of the present disclosure.

The one or more communication channels212can be part of a telecommunication network that connects subscribers to their immediate telecommunications service provider (i.e., home network carrier). In some instances, the one or more communication channels212can be associated with a telecommunications provider that provides services (e.g., 3G network, 4G network, LTE network, 5G network, and the like) to user devices, such as UEs202,204,206,208, and210. For example, the one or more communication channels may provide voice, SMS, and/or data services to UEs202,204,206,208, and210, or corresponding users that are registered or subscribed to utilize the services provided by the telecommunications service provider. The one or more communication channels212can comprise, for example, a 1× circuit voice, a 3G network (e.g., CDMA, CDMA2000, WCDMA, GSM, UMTS), a 4G network (WiMAX, LTE, HSDPA), or a 5G network.

In some implementations, access point214is configured to communicate with a UE, such as UEs202,204,206,208, and210, that are located within the geographic area, or cell, covered by radio antennas of access point214. Access point214may include one or more base stations, base transmitter stations, radios, antennas, antenna arrays, power amplifiers, transmitters/receivers, digital signal processors, control electronics, GPS equipment, and the like. In particular, access point214may selectively communicate with the user devices using dynamic beamforming.

As shown, access point214is in communication with an edge computing component230and at least a network database220via a backhaul channel216. The access point may also host a dynamic caching server244that stores applications and associated webpage content that are frequently requested by users in the vicinity of access point214. As the UEs202,204,206,208, and210collect individual status data, the status data can be automatically communicated by each of the UEs202,204,206,208, and210to the access point214. Access point214may store the data communicated by the UEs202,204,206,208, and210at a network database220. Alternatively, the access point214may automatically retrieve the status data from the UEs202,204,206,208, and210, and similarly store the data in the network database220. The data may be communicated or retrieved and stored periodically within a predetermined time interval which may be in seconds, minutes, hours, days, months, years, and the like. With the incoming of new data, the network database220may be refreshed with the new data every time, or within a predetermined time threshold so as to keep the status data stored in the network database220current. For example, the data may be received at or retrieved by the access point214every 10 minutes and the data stored at the network database220may be kept current for 30 days, which means that status data that is older than 30 days would be replaced by newer status data at 10 minute intervals. As described above, the status data collected by the UEs202,204,206,208, and210can include, for example, service state status, the respective UE's current geographic location, a current time, a strength of the wireless signal, available networks, and the like.

The edge computing component230comprises various engines including a network data analytics function (NWDAF)232, a session management function (SMF)234, an access and mobility management function (AMF)236, a user plane function (UPF), and a server management module240. All determinations, calculations, data, and analytical results produced by the NWDAF232, SMF234, AMF236, UPF238, and server management module240may be stored at the network database220. Although the edge computing component230is shown as a single component comprising the NWDAF232, the SMF234, the AMF236, the UPF238, and the server management module240, it is also contemplated that each of the NWDAF232, the SMF234, the AMF236, the UPF238, and the server management module240may reside at different locations, be its own separate entity, and the like, within the home network carrier system.

The edge computing component230allows a mobile network operator to host an application server, such as dynamic caching server244in the mobile operator's location. This brings the dynamic caching server244closer to the UEs, such as UEs202,204,206,208, and210, reducing latency for the UEs. The dynamic caching server244may dynamically select, download, and store heavily used applications and associated webpage objects. The associated webpage objects may include: GIF, JPEG, video, and CSS, to name a few. To achieve this, the mobile network operator uses network intelligence gain from the various nodes, such as NWDAF232, SMF234, AMF236, and UPF238. Each of these nodes provides important information on which contents are highly requested and should be deployed at a server, such as dynamic caching server244, for edge computing.

The NWDAF232is a 3GPP standard method that is used to collect data from UEs, network functions, and network operations. In addition, the NWDAF232also collects data on network administration, maintenance systems and may collect this information from 5G core, cloud, and edge networks. The collected analytical data may be used as part of the determination of which applications to deploy in dynamic caching server244. The NWDAF232provides analytical information as part of the edge computing component, but may be located apart from other functional blocks of the edge computing component230.

In operation, the NWDAF232provides a load balancing function and in the context of this disclosure may refine, based on user subscriptions, the applications and webpage content that is stored in the dynamic caching server244. The NWDAF232provides the analysis of what content is highly requested in the area served by access point214.

The SMF234is primarily responsible for interacting with the decoupled data plane. In addition, the SMF234also creates, updates, and removes protocol data unit (PDU) sessions and manages context with the UPF238. The SMF234may also be located separately from other functional blocks of the edge computing component230.

The AMF236receives all connection and session related information from the UE, but is responsible only for handling connection and mobility management tasks. Messages relating to session management are forwarded over a reference interface to the SMF234. The AMF236performs the role of access point to the 5G core, and as such terminates the radio access network (RAN) control plane and UE traffic that originates on reference interfaces. IN addition, the AMF236implements ciphering and integrity protection algorithms, which are involved in the UE authorization process. The AMF236may also be located separately from other functional blocks of the edge computing component230.

The UPF238allows packet gate control and user plane functions, enabling the data forwarding component to be decentralized. This allows packet processing and traffic aggregation to be performed closer to the network edge. In aspects disclosed herein, the UPF238assists in providing frequently requested applications and webpages in conjunction with the edge computing component230. The UPF238provides the interconnect between the mobile infrastructure and the data network, including encapsulation and decapsulation of tunneling protocols, such as the General Packet Radio Service (GPRS) tunneling protocol. In operation, the UPF238may create a tunnel with application servers, such as dynamic caching server244. The UPF238may also be located separately from other functional blocks of the edge computing component230.

The server management module240manages the applications and webpage content that may be stored locally, such as at dynamic caching server244, located at access point214. The access point214may be in communication with other access points, which may also have servers located at or near the access point. In operation, the server management module240manages the dynamic caching servers, which may be located at access points. The highly requested content may change over time, causing some applications and webpages to consume storage space at dynamic caching server244that may no longer be highly requested. To overcome this issue, the server management module240periodically flushed the dynamic caching server244of stale content, making way for new application storage. The retention threshold may be configured based on network intelligence data on which applications and webpages are highly requested in the area served by an access point214. The retention threshold may also be based on a date, time, number of requests falling before a predetermined threshold, or a more recent identification of highly requested content. Before storing content on the dynamic caching server244a security check may be performed, to ensure that permissions are in place before edge computing operations occur.

FIG.3depicts an edge computing infrastructure in which implementations of the present disclosure may be employed. Edge computing is a distributed computing paradigm that brings computation, and here, delivery of content, closer to the users of data and content. In an edge computing system300there are cloud servers302a-302c, which may host a variety of application programs and webpage content. The content may be hosted at an edge node304aor304b. The edge nodes304aand304bmay be in communication with servers, as shown by edge node304ain communication with server302band edge node304bin communication with302c. The cloud servers302a-302cmay also communicate with a host302d. Host302dis depicted as communicating with server302c.

The edge nodes304aand304bmay contain edge node servers306aand host306b, for edge node304awith server306cand host306dfor edge node304b. The hosts306band edge node host306dmay remotely host applications and webpages. Edge nodes304aand304bmay also share content. The distributed nature of edge computing causes data to travel between different distributed nodes connected through the internet and this requires special encryption and security mechanisms that are independent of the cloud.

Access points308aand308bmay also communicate wirelessly with edge nodes304aand304b. Users310a-310fmay request specific content from the edge node servers306aand edge node host306b, depending on which access point308aor308bis serving at the time the request is made.

FIG.4is a flowchart of a method of edge computing in 4G & 5G cores based on application usage. The method400, begins with identifying highly requested content at an access point in block402. The highly requested content may be applications or webpage content. Popular applications may include streaming applications, videos, games, and the like. Once the content has been identified, the method continues with tunneling to at least one application server to download the highly requested content in block404. The tunneling may be to a host application server, such as a widely known search or streaming application. After tunneling, in block406storing the highly requested content near an access point occurs. The content may be stored in a dynamic caching server, which may be located at an access point or at a suitable nearby location. Once the application or webpage is downloaded to the dynamic caching server, the content may be enjoyed by network subscribers with less latency.

Many different arrangements of the various components depicted, as well as components not shown, are possible without departing from the scope of the claims below. Embodiments of our technology have been described with the intent to be illustrative rather than restrictive. Alternative embodiments will become apparent to readers of this disclosure after and because of reading it. Alternative means of implementing the aforementioned can be completed without departing from the scope of the claims below. Certain features and subcombinations are of utility and may be employed without reference to other features and subcombinations and are contemplated within the scope of the claims.