US 11,853,190 B2
Dynamic allocation and use of network functions processing resources in cellular networks
Kevin Yao, Cheyenne, WY (US); and Prashant Raghuvanshi, Parker, CO (US)
Assigned to DISH WIRELESS L.L.C., Englewood, CO (US)
Filed by DISH Wireless L.L.C., Englewood, CO (US)
Filed on Aug. 27, 2021, as Appl. No. 17/459,268.
Prior Publication US 2023/0065447 A1, Mar. 2, 2023
Int. Cl. G06F 11/00 (2006.01); G06F 11/34 (2006.01); G06F 8/71 (2018.01); G06F 11/30 (2006.01); G06F 11/36 (2006.01); H04L 67/1031 (2022.01); H04L 43/08 (2022.01); H04L 41/16 (2022.01); G06F 8/61 (2018.01); H04W 24/04 (2009.01)
CPC G06F 11/3409 (2013.01) [G06F 8/61 (2013.01); G06F 8/71 (2013.01); G06F 11/3006 (2013.01); G06F 11/3664 (2013.01); G06F 11/3684 (2013.01); H04L 41/16 (2013.01); H04L 43/08 (2013.01); H04L 67/1031 (2013.01); G06F 2209/508 (2013.01); H04W 24/04 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A method of dynamically allocating cellular network functions to a variety of different data centers, comprising:
receiving a plurality of performance data of at least two data centers as data is being transmitted on a cellular network that includes at least two of the following three data centers: an edge data center, a regional data center, and a national data center;
storing the performance data;
determining, based on the performance data, resources being used by each of the at least two data centers;
determining, based on the performance data, resources available for the future in at least one of the edge data center, regional data center, or national data center;
determining a selected data center suitable to run a selected network function based on the performance data; and
instantiating the selected network function at the selected data center, wherein instantiating the selected network function includes:
building an executable program of the selected network function from a source code included in a code repository;
running a plurality of tests against the executable program; and
delivering the executable program to the selected data center after the tests are run against the executable program.