POSITIONING CORRECTION BY CENTRALIZED MODEL FOR MULTIPLE-ROUND TRIP TIME-BASED USER EQUIPMENT LOCATION ESTIMATION

The technology described herein is directed towards training an AI/ML (artificial intelligence/machine learning) correction model for round trip time data that captures various properties of a planned deployment of transmit-receive points. The model is trained on round-trip time measurements of communications between training device instances and transmit-receive points in an actual or simulated deployment environment. Once trained, non-line of sight round trip data is corrected by the model into virtual line of sight round trip data. In inference, a modified vector dataset of measured line of sight round trip data and virtual non-line of sight round trip data is obtained from the trained model for communications between an unknown location of a user equipment in the environment and the transmit-receive points. The modified vector dataset is processed by a line of sight-based position determination/calculation function into an estimated location of the user equipment.

BACKGROUND

In new radio (NR), the third generation partnership project (3GPP) standard facilitates the collection of measurements needed to implement a multiple point round trip time positioning algorithm to determine the location of a user equipment (UE). This algorithm has a significant drawback, mainly because of its reliance on line-of-sight conditions between multiple transmit-receive points and a user equipment (UE). Even when most of the links between the transmit-receive points and a UE are line-of-sight links, even a single non-line of sight link can cause outsized degradation of the position determination.

Another approach to determining a UE's position is a channel impulse response (CIR)-based direct AI/ML (artificial intelligence/machine learning) approach, which avoids the line-of-sight dependency by having an AI/ML model find a relationship between CIR data and a position coordinate; (this approach is called ‘Direct’ because it maps directly between the CIR and location coordinates without trying to model the process). However, the CIR-based direct AI/ML approach is very impractical in most scenarios because of being sensitive to the slightest variations manifested in the perceived CIR. More particularly, one of the most significant CIR-related variations is a clock instability, which can correspond to loose timing synchronization between transmit-receive points. When a clock drifts, the perceived time of arrival is incorrect and channel taps phase rotate, resulting in incorrect CIR data. CIR-based direct AI/ML algorithms thus require very tight network synchronization. One solution attempts to include virtually all of the targeted conditions in the training dataset; for clock-related issues, this means attempting to generate a training dataset with virtually all possible variations of clock behaviors among multiple transmit-receive points and a UE. Such a solution is not practical for real system deployments.

DETAILED DESCRIPTION

Various aspects of the technology described herein are generally directed towards having a centralized trained artificial intelligence/machine learning (AI/ML) model obtain a dataset of round-trip time data, measured between transmit-receive points and user equipment at an unknown location, including for combinations of line of sight (LOS) and non-line of sight communication links, to obtain an estimated location of the user equipment (e.g., as location coordinates [x, y] or [x, y, z]). Significantly, given combinations of line of sight and non-line of sight communication links, the trained model can correct/modify any non-line of sight round trip time data into virtual “LOS-like” round trip time data. With the measured line of sight round trip time data and virtual round trip time data, a line of sight-based position determination (calculation) function, such as one of those already defined, can then estimate the location of the user equipment to a sufficient estimation accuracy.

Training is based on labeled training data corresponding to communications between a group of transmit-receive points and a number of device training instances (e.g., a device group) at known locations, with measured round trip time data obtained via the communications between the transmit-receive points and the device training instances. That is, each training label for each transmit-receive point can include a determined line of sight round trip time value based on the training device instance location (e.g., training device coordinates), and the actual, measured round trip time taken for communications to and from the device training instance location and the transmit-receive point.

As is understood, the round trip time a for a non-line of sight communication is longer than the round trip time a line of sight communication. However, because each training device instance location is known, for non-line of sight communication links the model learns how to correct non-line of sight round trip times into virtual round trip times, e.g., based on the time difference between a measured round trip time and what the expected round trip time is determined to be had there been a line of sight communication link.

In this way, for user equipment at an unknown location, once trained the model can obtain and correct non-line of sight round trip time data into virtual “LOS-like” round trip time data. A vector dataset of the model's post-modified corrected non-line of sight round trip time value(s), along with (generally unmodified) measured round trip time line of sight value(s) can be input into the position determination function as if all values were measured line of sight round trip times, to obtain an estimated location of the user equipment.

Reference throughout this specification to “one embodiment,” “an embodiment,” “one implementation,” “an implementation,” etc. means that a particular feature, structure, or characteristic described in connection with the embodiment/implementation is included in at least one embodiment/implementation. Thus, the appearances of such a phrase “in one embodiment,” “in an implementation,” etc. in various places throughout this specification are not necessarily all referring to the same embodiment/implementation. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments/implementations.

FIG.1is an example representation of a system/architecture100in which user equipment102at an unknown location communicates with a number of transmit-receive points (TRPs)104(1)-104(N) deployed in an environment. This results in a number of round trip times RTT1-RTTN being determined by the transmit-receive points104(1)-104(N), as further described inFIGS.2and3B. As can be seen, at least RTT1does not correspond to a line of sight measurement, as any direct communication link between the user equipment102and the transmit-receive points104(1) (TRP1) is blocked by an obstacle106, whereby the measurement communication link is indirect, obtained as non-line of sight data off of some reflective surface108. There may be any practical number of line of sight and non-line of sight round trip times in a given deployment.

In general, the transmit-receive points104(1)-104(N) along with their multiple respective measured round trip times are combined into a round trip time (RTT) vector dataset110, including line of sight (LOS) RTT(s) and non-line of sight (NLOS) RTT(s), which is input into a location management function112. As set forth therein, the non-line of sight round trip time data in the vector dataset110are corrected by a trained AI/ML round trip time (RTT) correction model114(e.g., which can be external to or as in this example, incorporated into the location management function112) to provide a modified vector dataset116of line of sight round trip time data RTT(s) and virtual line of sight round trip time data (“LOS-like”) RTT(s). Once the non-line of sight round trip time data is corrected by the model114into the virtual line of sight round trip time data116, the modified vector dataset116is input to a position determination (calculation) function118, which is configured to process line-of-sight round trip time data into an estimated location (e.g., UE coordinates120) of the user equipment102. As can be readily appreciated, the amount of training data along with the fidelity of the training data (e.g., how accurate are the training devices' locations and measured round trip times) determine the correction accuracy and thus how closely the UE's estimated location coordinates are to the UE's actual location.

FIG.2shows the concept of round trip times for line of sight communication links and non-line of sight communication links. For a line of sight communication link, as shown in the upper portion ofFIG.2, a transmit receive point (TRP) sends a request to a user equipment (UE), which is received and responded to by the UE by a transmission back to the TRP. The propagation time Tptaken to transmit from the TRP1and receive at the UE, and vice versa is based on the distance D, that is, D=Tp·c, where c is the speed of light. There is some latency, L, at the UE between reception and the return transmission, and thus RTT1=Tp+Tp+L based on Tp=(RTT−L)/2. Timestamps or the like associated with each transmission can be used to determine the latency. In training, the coordinates U1of each UE device instance (which can be a positioning reference unit such as described in the third generation partnership, or 3GPP standards) are known and used to determine the “expected” line of sight round trip time in the training data, along with the measured RTT1value. During inference after training, the UE coordinates are unknown, and thus the measured RTT1value associated with the TRP1is part of the modified round trip time vector dataset used to estimate the UE coordinates.

The lower portion ofFIG.2shows the concept of a round trip time for a non-line of sight communication link. In this example, the transmit-receive point (TRP2) sends a request to the user equipment (UE), which is received and responded to by the UE by a transmission back to the TRP2. Each total propagation time taken to transmit from the TRP1and receive at the UE, and vice versa is based on the indirect links, shown as propagation times Tp(a) and Tp(b). Again, there is some latency, L, taken by at the UE between reception and the return transmission, and thus RTT2=2×[Tp(a)+Tp(b)]+L. In training, because the UE's coordinates U1were known, the expected line of sight time (acting as if there was line of sight) is determined and used in the training data along with the measured RTT2value; in inference, the UE coordinates are unknown, and thus the measured RTT2value associated with the TRP2is part of the round trip time vector dataset that is corrected by the trained model into virtual line of sight round trip data, with the modified vector dataset then used to estimate the UE coordinates.

FIG.3Ashows a similar example in which an indirect, non-line of sight round trip time of RTT3(based on the combined distance/propagation times of X+Y (plus latency L)) between a UE302and a transmit-receive point TRP3is corrected to a virtual line of sight “LOS-like” RTT. As shown inFIG.3B, this virtual (corrected) RTT value is input to the trained AI/ML RTT correction model314as part of the modified vector dataset316that includes at least the one corrected (RTT3) value, and possibly other corrected values, and any line of sight (non-corrected) values.

It should be noted that a measured round trip time value may be inaccurate by some trivial amount for a line of sight communication link. For example, based on imperfect resolution of device or device's coordinates, timing measurements and/or latency data, even a line of sight communication link may have a round trip time that does not exactly equal the expected round trip time based on the distance between a UE and a TRP. This difference can be part of the training data for model training data. Alternatively, during training there can be some threshold difference evaluation that compares the actual measured (or simulated) round trip time versus the expected, ideal line of sight round trip time and considers the difference sufficiently close to be considered line of sight between the training device and a transmit-receive point.

FIG.4shows the multi-RTT determination (triangulation in this example) of a location of a UE402, based on translated RTT measurements from multiple base stations/transmit-receive points (TRPs). Multi-RTT determination is based upon an assumption of line of sight conditions between TRPs and a UE, which enables interpreting measured propagation delay to a distance. Without directional information, the distance can be translated into a circle representing possible locations of a UE. With additional directional information, the circle can be reduced to an arc.

In any event, as can be seen in the example ofFIG.4, each line of sight RTT measurement represents circles440and442(or alternatively arcs) of a potential UE location, while the corrected, virtual line of sight RTT measurement represents circle444(or alternatively another arc). Based on their intersections, the position determination function calculates an estimate of the UE's position. Note that without the non-line of sight-based correction to a virtual line of sight distance/RTT, the circle444would be based on the longer non-line of sight propagation time, and thus in the wrong location (relative to the UE402and relative to the line of sight-based circles440and442), whereby the intersection would not be at the UE's actual coordinates.

FIG.5shows an example deployment environment550showing four transmit-receive points (TRP1-TRP4) (simplified relative to an eighteen transmit-receive point in one 3GPP indoor scenario) that depict the AI/ML model training and/or model usage. InFIG.4, a signal from a UE502is received through two LOS and two NLOS links, which unless corrected as described herein, will cause two skewed RTT measurements. Because NLOS propagation distance is significantly longer than associated LOS-like virtual links, the position estimation without NLOS RTT correction suffers significantly; in contrast with NLOS RTT correction as described herein, there is no fundamental limitation to position estimation accuracy.

As is understood, in training, positioning reference unit device instances (PRUs, represented inFIG.5as dashed blocks) can be positioned and/or moved throughout a deployment environment, such as a factory setting, to gather PRU location, round trip time datasets from various PRU locations relative to the TRPs. Training other than with PRUs are alternatives, as described herein. The model, not explicitly shown in the example ofFIG.5, can be located outside of or within the environment550, and in any event is trained with such collected datasets. Note that existing deployments can be upgraded without introducing modifications to TRPs, which is valuable because their number can be significant (eighteen in the above-mentioned 3GPP positioning scenario). In usage following training, the one or more PRUs need not be active and thus typically are not present, although their presence or absence is not significant unless retraining or refinement is needed.

In this example, consider that a realistic factory floor is moderately occupied with robots, shelves and other user equipment resulting in a various levels of propagation conditions, from line of sight to non-line of sight situations. With existing line of sight-dependent algorithms, positioning accuracy of the implementation is not consistent, due to ‘pockets’ of non-line of sight conditions spread across the factory.

Consider that in this example, following training, a UE502such as a mobile internet of things (IoT) sensor or the like is within the deployment environment550, and is located at an unknown location that needs to be determined, particularly if the UE502moves from time to time whereby physical measurement for this device location (and likely many such devices) is not practical. In this example, as can be seen, RTT1and RTT3will be obtained based on line of sight communication links, while RTT2and RTT4will be obtained based on non-line of sight communication links. The solid lines represent the actual communication links between the transmit receive points TRP1-TRP4to and from the UE502, while the dashed lines represent the model-corrected, non-line of sight communication links between the transmit receive points TRP2and TRP4to and from the UE502.

As can be understood fromFIG.5, the non-line of sight propagation distances are significantly longer than the line of sight links, corresponding to longer round trip times RTT2and RTT4for the non-line of sight communication links relative to the shorter round trip times RTT1and RTT3. However, because the model was trained on both line of sight and non-line of sight propagation distances corresponding to round trip times, a sufficiently accurate location of the UE can be estimated by having the model correct the non-line of sight round trip times RTT2and RTT4into virtual round trip times VRTT2and VRTT4, respectively. Note that via the technology described herein, existing multi-RTT (at least three points for triangulation with two dimensions, four points with three dimensions) algorithms that rely on line of sight conditions are thus not given the two skewed RTT measurements (the non-corrected values of RTT2and RTT4), whereby if used, the position estimation would suffer significantly. Instead, the system described herein inserts the AI/ML correction model before the multi-lateration) positioning algorithm. The measured round trip time values of RTT1and RTT3, along with the virtual round trip time values VRTT2, and VRTT4result in an accurate location estimation by the positioning algorithm, regardless of the various communications links' line of sight or non-line of sight conditions.

The AI/ML model captures unique properties of a planned deployment, meaning the model is trained on real measurements in the deployment environment as inFIG.5, or based on a high-fidelity simulation of the environment. To this end, a training dataset (vectors of RTT measurements) can be generated using one or a combination of the following techniques, including using positioning reference units (PRUs)/instances thereof as inFIG.5spread in the deployment area at known locations to collect round trip time measurements of communications between the PRUs and the transmit-receive points. A PRU acts as a UE with a benefit of a known location, enabling to link measurements to a label. The PRUs-based dataset spatial resolution can be refined further by employing semi-supervised learning.

In outdoor scenarios, instead of (or in addition to) PRUs, one or more training device instances in the form of UEs with GPS reporting can be used, potentially enabling to collect more detailed datasets from various locations in the outdoor environment. Digital twin simulations can be used for training, where a digital twin refers to a realistic simulation of a targeted space/area, which in addition to geometric properties also simulates true-to-reality physics of materials, resulting in close-to-realistic behavior.

Different AI/ML supervised learning solutions can be considered, depending on system requirements and platform capabilities. In the event the environment changes, reinforcement learning or retraining can be employed to maintain a model's relevance over time.

In another example shown inFIG.6, six transmit-receive points (TRP1-TRP6) depict AI/ML model usage with respect to estimating the location of a user equipment602. Although not explicitly shown, it is understood that training has already occurred similar to that described herein including with reference toFIG.5, e.g., via a number of training devices at various locations in the environment660. As can be seen, again the non-line of sight propagation distances are significantly longer than the line of sight links, corresponding to longer round trip times RTT1, RTT2, RTT5and RTT6for the non-line of sight communication links relative to the shorter round trip times RTT3and RTT4.

As is understood, the deployment scenario in scenario has six TRPs TRP1-TRP6, with only two out of six TRP-UE links being of line of sight type. Without RTT correction, line of sight-based multi-RTT algorithm accuracy would be very poor. In contrast, with a trained correction model, the position determination algorithm is able to utilize all six links without compromising on accuracy. Again, because the model was trained on both line of sight and non-line of sight propagation distances/round trip times, a sufficiently accurate location of the UE402can be estimated by the model by correcting non-line of sight time values RTT1, RTT2, RTT5and RTT6to virtual line of sight time values VRTT1, VRTT2, VRTT5and VRTT6, respectively.

The examples ofFIGS.5and6can be understood to show how an existing deployment can be upgraded to improve positioning accuracy without full overhaul of the existing solution. Considering a hypothetical network deployment in an indoor factory, resembling a known 3GPP scenario with evenly distributed TRPs and in which the implemented positioning algorithm is a multi-RTT mechanism. The factory floor can be moderately occupied with robots, shelves and other equipment resulting in a various levels of propagation conditions, from LOS to NLOS, with up to double the propagation time measured for an NLOS communication link compared to a virtual (LOS-like) communication link. Positioning accuracy of the implementation is not consistent due to the NLOS conditions spread across the factory. Although a dedicated model needs to be trained for each deployment, training with actual conditions is straightforward. Alternatively (or in addition to actual training), a dataset for initial training can be generated using a digital twin of the factory. In any scenario, the model can be refined via training using PRUs spread throughout the factory, e.g., covering more densely the NLOS conditions that tend to impact positioning error the most. The trained correction model, inserted before the multi-RTT positioning algorithm is expected to improve positioning accuracy significantly as the correction model enables multi-RTT algorithm to perform at based on complete LOS conditions.

It is understood that whether indoor-based (e.g., PRU) or UE/outdoor-based training can be performed by any number of training device instances, which can be a single training device (e.g., UE or PRU) moved among multiple known locations, and/or multiple devices at multiple known locations.FIG.7shows a training-related example, in which training device instances, which can be one or more positioning reference units (PRUs) and/or UEs, are located at coordinates U1-Um, and transmit-receive points communicate with the training device instances. In this example, round trip time RTT data is collected from each device instance and TRP combination, with the expected line of sight RTT determined based on their relative locations; these expected RTT, measured RTT datasets are used as the labeled training data770to a model training process772, resulting in a trained model714that can correct non-line of sight RTT values to virtual line of sight RTT values.

In inference, a UE702at an unknown location communicates with a group of TRPs778to measure round trip time data, and the TRPs778in turn generate the round trip time (RTT) vector dataset710. The RTT vector dataset710, which includes RTT values obtained by the TRPs, is input into a working instance714aof the trained model, which corrects any non-line of sight RTT values to virtual line of sight RTT values, resulting in a modified RTT vector dataset716. The system inputs the modified RTT vector dataset716to the line of sight-based position determination function718, which in turn outputs the estimated location (e.g., coordinates)720of the UE702.

One or more aspects can be embodied in a network device, such as represented in the example operations ofFIG.8, and for example can include a memory that stores computer executable components and/or operations, and a processor that executes computer executable components and/or operations stored in the memory. Example operations can include operation802, which represents obtaining a round trip time vector dataset comprising time measurement data based on communications between a group of transmit-receive points relative to a user equipment at an unknown location, the time measurement data comprising non-line of sight time measurement data obtained from communications between a transmit-receive point and the user equipment. Example operation804represents correcting the non-line of sight time measurement data in the round trip time vector dataset to obtain a corrected round trip time vector dataset. Example operation806represents inputting the corrected round trip time vector dataset to a line of sight-based position determination function. Example operation808represents obtaining, in response to the inputting of the corrected round trip time vector dataset, an estimated location of the user equipment.

The non-line of sight time measurement data obtained from the communications between the transmit-receive point and the user equipment can be obtained from first communications between a first transmit-receive point and the user equipment, and the time measurement data further can include line of sight time measurement data obtained from second communications between a second transmit-receive point and the user equipment.

Correcting the non-line of sight time measurement data into the corrected round trip time vector dataset can include inputting the time measurement data into a model trained with round-trip time training data representing round-trip times of a group of communications measured between transmit-receive points of the group of transmit-receive points and device instances at known locations. The device instances can include positioning reference units deployed at the known locations. The device instances can include at least one mobile device configured to report the known locations via global positioning system data. The transmit-receive points and the device instances at the known locations can be represented by a digital twin simulation of an environment, and the round-trip time training data can be based on the digital twin simulation.

Further operations can include refining spatial resolution of the transmit-receive points via semi-supervised learning.

The transmit-receive points of the group of transmit-receive points can be spatially distributed in a deployment environment.

The transmit-receive points of the group of transmit-receive points can be substantially evenly distributed.

Correcting the non-line of sight time measurement data into the corrected round trip time vector dataset can include inputting the time measurement data into a model trained via supervised learning with labeled training data associated with the respective transmit-receive points; the labeled training data can include respective determined line of sight round trip times based on respective locations of respective device instances, and respective measured round trip time data measured via communications between the respective transmit-receive points and the respective device instances at the respective locations.

The device instances can include at least one of: a mobile device instance moved among the second known locations, or a positioning reference unit moved among the second known locations.

One or more example aspects, such as corresponding to example operations of a method, are represented inFIG.9. Example operation902represents inputting, by a system comprising a processor to a model, a round trip time vector dataset comprising round trip time data measured via communications between a user equipment at an unknown location and at least some transmit-receive points distributed at first known locations, the model having been trained via a training process comprising obtaining round-trip time data between the at least some transmit-receive points and device instances at second known locations, the round-trip time data comprising measured round-trip time data corresponding to at least one non-line of sight measurement. Example operation904represents correcting, by the model of the system, measured non-line of sight round-trip time data into virtual line of sight round-trip time data. Example operation906represents inputting, by the system to a line of sight-based position determination function, a modified round trip time vector dataset comprising the virtual line of sight round-trip time data. Example operation908represents obtaining, by the system in response to the inputting of the modified round trip time vector dataset, an estimated location of the user equipment.

Inputting the modified round trip time vector dataset further can include inputting non-corrected line of sight round-trip time data as part of the modified round trip time vector dataset.

The training process further can include arranging non-line of sight transmit-receive points between a device of the device instances and the non-line of sight transmit-receive points more densely than line of sight transmit-receive points between the device of the device instances and the line of sight transmit-receive points.

At least one of the device instances can include a positioning reference unit, and the training process further can include moving the positioning reference unit among at least two of the second known locations.

At least one of the device instances can include a mobile device, and the training process further can include moving the mobile device among at least two of the second known locations.

The communications between the user equipment and the at least some transmit-receive points can be first communications, the round trip time data can be first round trip time data, and the training process further can include obtaining labeled training data including respective second determined round trip time data based on the second known locations, and second round trip time data of second communications, respectively, between the at least some transmit-receive points at the first known locations and the device instances at the second known locations.

FIG.10summarizes various example operations, e.g., corresponding to a machine-readable medium, including executable instructions that, when executed by a processor, facilitate performance of operations. Example operation1002represents obtaining a vector dataset at a model, the vector dataset comprising respective first round trip times measured based on respective first communications between a user equipment at an unknown location and respective first known locations of a first group of respective transmit-receive points, wherein at least one of the respective first round trip times of the vector dataset is based on a non-line of sight communication, the model having been trained with labeled training data comprising respective second determined line of sight round trip time training data based on respective second known locations of the second group of the respective transmit-receive points and respective third known locations of training device instances, and respective measured round trip time training data representing measured third respective round trip times of respective training communications between the second group of the respective transmit-receive points and the training device instances, wherein at least one of the respective training communications comprises a non-line of sight communication. Example operation1004represents modifying the vector dataset by the model into a modified vector dataset, the modifying of the vector dataset comprising correcting non-line of sight round trip time data into virtual line of sight round trip time data. Example operation1006represents inputting the modified vector dataset to a line of sight-based position determination function. Example operation1008represents obtaining, in response to the inputting of the modified round trip time vector dataset, an estimated location of the user equipment.

As can be seen, the technology described herein exploits relations between measured RTT values, including with line of sight and non-line of sight conditions, to derive a UE's position using corrected round trip time values for non-line of sight conditions. This is done without tight network synchronization requirements, that is, without the drawbacks of channel impulse response timing considerations (input variations and tight network synchronization requirements, although channel impulse response is not precluded from use as well), and without the drawbacks of only true line of sight conditions/requirements of existing multi-RTT algorithms. No modification is needed for TRPs, which can be deployed at various practical locations.

An AI/ML model as described herein is less sensitive than existing direct AI/ML based approaches because of not being dependent on clock behavior, and can be trained and used with a reduced set of input data relative to channel impulse response data. In addition, although deployment-specific, the reduced training input dimensions (training device coordinates, TRP coordinates and round trip time data) make it far more feasible to train the AI/ML correction model over a large number of expected scenarios, including in noisy RTT measurements, than could be practically done using the vast number of possible variations that can impact perceived channel impulse response data. The AI/ML correction model as described herein thus has reduced complexity relative to channel impulse response-based model. Still further, in usage of the model, there is reduced overhead of reporting from the TRPs to the AI/M-based location management function, that is, only RTT measurements and TRP location data (which can be previously known from a TRP ID or the like) from the TRPs are part of the vector, instead of the full channel impulse response data.

FIG.11is a schematic block diagram of a computing environment1100with which the disclosed subject matter can interact. The system1100comprises one or more remote component(s)1110. The remote component(s)1110can be hardware and/or software (e.g., threads, processes, computing devices). In some embodiments, remote component(s)1110can be a distributed computer system, connected to a local automatic scaling component and/or programs that use the resources of a distributed computer system, via communication framework1140. Communication framework1140can comprise wired network devices, wireless network devices, mobile devices, wearable devices, radio access network devices, gateway devices, femtocell devices, servers, etc.

The system1100also comprises one or more local component(s)1120. The local component(s)1120can be hardware and/or software (e.g., threads, processes, computing devices). In some embodiments, local component(s)1120can comprise an automatic scaling component and/or programs that communicate/use the remote resources1110, etc., connected to a remotely located distributed computing system via communication framework1140.

One possible communication between a remote component(s)1110and a local component(s)1120can be in the form of a data packet adapted to be transmitted between two or more computer processes. Another possible communication between a remote component(s)1110and a local component(s)1120can be in the form of circuit-switched data adapted to be transmitted between two or more computer processes in radio time slots. The system1100comprises a communication framework1140that can be employed to facilitate communications between the remote component(s)1110and the local component(s)1120, and can comprise an air interface, e.g., Uu interface of a UMTS network, via a long-term evolution (LTE) network, etc. Remote component(s)1110can be operably connected to one or more remote data store(s)1150, such as a hard drive, solid state drive, SIM card, device memory, etc., that can be employed to store information on the remote component(s)1110side of communication framework1140. Similarly, local component(s)1120can be operably connected to one or more local data store(s)1130, that can be employed to store information on the local component(s)1120side of communication framework1140.

With reference again toFIG.12, the example environment1200for implementing various embodiments of the aspects described herein includes a computer1202, the computer1202including a processing unit1204, a system memory1206and a system bus1208. The system bus1208couples system components including, but not limited to, the system memory1206to the processing unit1204. The processing unit1204can be any of various commercially available processors. Dual microprocessors and other multi-processor architectures can also be employed as the processing unit1204.

The computer1202further includes an internal hard disk drive (HDD)1214(e.g., EIDE, SATA), and can include one or more external storage devices1216(e.g., a magnetic floppy disk drive (FDD)1216, a memory stick or flash drive reader, a memory card reader, etc.). While the internal HDD1214is illustrated as located within the computer1202, the internal HDD1214can also be configured for external use in a suitable chassis (not shown). Additionally, while not shown in environment1200, a solid state drive (SSD) could be used in addition to, or in place of, an HDD1214.

Other internal or external storage can include at least one other storage device1220with storage media1222(e.g., a solid state storage device, a nonvolatile memory device, and/or an optical disk drive that can read or write from removable media such as a CD-ROM disc, a DVD, a BD, etc.). The external storage1216can be facilitated by a network virtual machine. The HDD1214, external storage device(s)1216and storage device (e.g., drive)1220can be connected to the system bus1208by an HDD interface1224, an external storage interface1226and a drive interface1228, respectively.

A number of program modules can be stored in the drives and RAM1212, including an operating system1230, one or more application programs1232, other program modules1234and program data1236. All or portions of the operating system, applications, modules, and/or data can also be cached in the RAM1212. The systems and methods described herein can be implemented utilizing various commercially available operating systems or combinations of operating systems.

Computer1202can optionally comprise emulation technologies. For example, a hypervisor (not shown) or other intermediary can emulate a hardware environment for operating system1230, and the emulated hardware can optionally be different from the hardware illustrated inFIG.12. In such an embodiment, operating system1230can comprise one virtual machine (VM) of multiple VMs hosted at computer1202. Furthermore, operating system1230can provide runtime environments, such as the Java runtime environment or the .NET framework, for applications1232. Runtime environments are consistent execution environments that allow applications1232to run on any operating system that includes the runtime environment. Similarly, operating system1230can support containers, and applications1232can be in the form of containers, which are lightweight, standalone, executable packages of software that include, e.g., code, runtime, system tools, system libraries and settings for an application.

A monitor1246or other type of display device can be also connected to the system bus1208via an interface, such as a video adapter1248. In addition to the monitor1246, a computer typically includes other peripheral output devices (not shown), such as speakers, printers, etc.

When used in a LAN networking environment, the computer1202can be connected to the local network1254through a wired and/or wireless communication network interface or adapter1258. The adapter1258can facilitate wired or wireless communication to the LAN1254, which can also include a wireless access point (AP) disposed thereon for communicating with the adapter1258in a wireless mode.

When used in a WAN networking environment, the computer1202can include a modem1260or can be connected to a communications server on the WAN1256via other means for establishing communications over the WAN1256, such as by way of the Internet. The modem1260, which can be internal or external and a wired or wireless device, can be connected to the system bus1208via the input device interface1244. In a networked environment, program modules depicted relative to the computer1202or portions thereof, can be stored in the remote memory/storage device1252. It will be appreciated that the network connections shown are examples and other means of establishing a communications link between the computers can be used.

When used in either a LAN or WAN networking environment, the computer1202can access cloud storage systems or other network-based storage systems in addition to, or in place of, external storage devices1216as described above. Generally, a connection between the computer1202and a cloud storage system can be established over a LAN1254or WAN1256e.g., by the adapter1258or modem1260, respectively. Upon connecting the computer1202to an associated cloud storage system, the external storage interface1226can, with the aid of the adapter1258and/or modem1260, manage storage provided by the cloud storage system as it would other types of external storage. For instance, the external storage interface1226can be configured to provide access to cloud storage sources as if those sources were physically connected to the computer1202.