Network viewport data fetching and visualization system and method
The network viewport data fetching system optimizes data retrieval and display by updating viewports based on endpoint distances, addressing data processing challenges and improving user interface responsiveness and network statistics analysis.
Patent Information
- Application Number
- JP2024550697
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-06-23
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2042-06-23
AI Technical Summary
Existing systems face challenges in efficiently retrieving and displaying large amounts of network viewport data due to the increasing number of network sites, leading to data processing difficulties and reduced user interface responsiveness.
A network viewport data fetching system that efficiently retrieves and displays network coverage quality data by determining the distance between viewport endpoints and updating the display accordingly, optimizing data consumption and interface responsiveness.
Improves user interface responsiveness and reduces data lag by processing smaller amounts of data, enhancing viewport site updates and network statistics analysis.
Smart Images

Figure 0007785190000003 
Figure 0007785190000004 
Figure 0007785190000005
Abstract
Description
[Technical Field]
[0001] SUMMARY This specification relates to a network viewport data fetching and visualization system and method of using same. [Background technology]
[0002] A cellular network is a mobile telecommunications system in which mobile devices (e.g., mobile telephone devices) communicate over radio waves through local antennas at cellular base stations (e.g., cell towers). The coverage area served is divided into small geographic areas called "cells." Each cell is served by a separate low-power multi-channel transceiver and antenna at the cell tower. All mobile devices within a cell communicate through that cell's antenna on multiple frequency channels and individual frequency channels assigned by the base station from a common pool of frequencies used by the cellular network.
[0003] A Radio Access Network (RAN) is a part of a communication system. The RAN implements radio access technologies. The RAN resides between devices such as mobile phones, computers, or any remotely controlled machine and provides their connectivity to a Core Network (CN). Depending on the standard, mobile phones and other wirelessly connected devices are variously known as User Equipment (Core Network (UE)), Terminal Equipment, Mobile Station (MS), etc. Summary of the Invention [Means for solving the problem]
[0004] In some embodiments, a method of fetching network viewport data includes receiving a request at a mobile device to launch a network visualization application and displaying the network viewport data via a user interface (UI). and outputting a graphical user interface (GUI) corresponding to a map of a first geographic area, the GUI including a display of a viewport of one or more shapes displaying an indication of network coverage quality overlaid on the first geographic area, the GUI including: determining a latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; determining a distance of a diagonal extending from the first endpoint to the second endpoint; determining a midpoint of the diagonal; and, in response to a distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, updating the display of the viewport corresponding to the map of the second geographic area without updating the one or more shapes displaying the indication of network coverage quality; or, in response to a distance between the midpoint and either the first or second endpoint being greater than the threshold distance, updating the display of the viewport corresponding to the map of a third geographic area and updating the one or more shapes displaying the indication of network coverage quality.
[0005] In some embodiments, an apparatus for network viewport data fetching includes a processor and a memory storing instructions that, when executed by the processor, cause the apparatus to receive a request at a mobile device to launch a network visualization application and output, via a user interface (UI), a graphical user interface (GUI), the GUI including a display of one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality, the viewports having a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport. determining a latitude and longitude of the map of the second geographic area; determining a distance of a diagonal line extending from the first endpoint to the second endpoint; determining a midpoint of the diagonal; and, in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, updating a display in a viewport corresponding to a map of the second geographic area without updating one or more shapes displaying an indication of network coverage quality, or, in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance, updating a display in a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0006] In some embodiments, a non-transitory computer-readable medium having stored thereon instructions that, when executed by a processor, cause an apparatus to receive a request at a mobile device to launch a network visualization application; output, via a user interface (UI), a graphical user interface (GUI), the GUI including a display of one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality; determine latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; 1. A non-transitory computer-readable medium that causes a computer to: determine a distance of a diagonal line extending from one endpoint to a second endpoint; determine a midpoint of the diagonal line; and, in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, update a display of a viewport corresponding to a map of a second geographic area without updating one or more shapes that display an indication of network coverage quality; or, in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance, update a display of a viewport corresponding to a map of a third geographic area and update one or more shapes that display an indication of network coverage quality. [Brief explanation of the drawings]
[0007] Aspects of the present disclosure are best understood from the following detailed description read in conjunction with the accompanying drawings. In accordance with standard industry practice, various features have not been drawn to scale. In fact, dimensions of various features have been arbitrarily expanded or reduced for clarity of discussion.
[0008] [Figure 1] FIG. 1 is a schematic diagram of a network viewport data fetching system (NVDFS), according to some embodiments. [Figure 2]A data flow diagram of the NVDF module according to some embodiments. [Figure 3] 1 is a visual representation of a network visualization geographic area according to some embodiments. [Figure 4] 1 is a flow diagram representation of a method for network visualization, according to some embodiments. [Figure 5] 1 is a visual representation of an NVDF user interface, according to some embodiments. [Figure 6A] 1 is a visual representation of an aggregation of multiple shapes according to some embodiments. [Figure 6B] 1 is a visual representation of a user device user interface according to some embodiments. [Figure 6C] 1 is a visual representation of a user device user interface according to some embodiments. [Figure 6D] 1 is a visual representation of a user device user interface according to some embodiments. [Figure 7] 1 is a flow diagram representation of a method for network visualization, according to some embodiments. [Figure 8] 1 is a visual representation of a periodic layered shape presentation according to some embodiments. [Figure 9A] FIG. 1 illustrates a mobile graphic user interface for NVDFS, according to some embodiments. [Figure 9B] FIG. 1 illustrates a mobile graphic user interface for NVDFS, according to some embodiments. [Figure 10] 1 is a visual representation of an aggregation of multiple shapes according to some embodiments. [Figure 11A] 11 is a flow diagram representation of a method 1100 for network viewport data fetching (NVDF), according to some embodiments. [Figure 11B] 11 is a flow diagram representation of a method 1100 for network viewport data fetching (NVDF), according to some embodiments. [Figure 12]1 is a visual representation of a mobile graphic user interface for NVDFS, according to some embodiments. [Figure 13] FIG. 1 is a high-level functional block diagram of a processor-based system according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0009] The following disclosure provides many different embodiments or examples for implementing different features of the provided subject matter. To simplify the disclosure, certain examples of components, values, operations, materials, arrangements, and the like are described below. These are, of course, examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, and the like are contemplated. For example, forming a first feature over a second feature in the following description includes embodiments in which the first and second features are formed in direct contact, and also includes embodiments in which an additional feature is formed between the first and second features such that the first and second features cannot be in direct contact. Additionally, the present disclosure repeats reference numbers and / or letters in various examples. This repetition is for the purposes of brevity and clarity and does not, in itself, dictate a relationship between the various embodiments and / or configurations discussed.
[0010] Additionally, spatially relative terms such as "beneath," "below," "lower," "above," and "upper" are used herein for ease of description to describe the relationship of one element or feature to another element(s) or feature(s), as shown in the figures. Spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation shown in the figures. The device may be otherwise oriented (rotated 90 degrees or otherwise oriented) and the spatially relative descriptors used herein interpreted accordingly.
[0011] In some embodiments, a network viewport data fetching system (NVDFS) and method according to embodiments are described in this disclosure. The number of network sites (e.g., base stations, edge devices, or other suitable network devices within the scope of this disclosure) is increasing every day. In some embodiments, retrieving and displaying a significant amount of data on a mobile application is difficult due to the amount of data to be processed (and the data increases as the number of network sites increases).
[0012] The coverage module is used by network executives or service provider executives when they monitor their network statistics to ensure customer or subscriber satisfaction. In some embodiments, executives are presented with this information when they open a particular viewport map on a mobile device (e.g., user equipment UE). In some embodiments, when a user opens a network visualization application, the user checks statistics based on the view presented in the viewport.
[0013] A viewport is a polygonal display area in computer graphics. In computer graphics theory, there is a concept of two related regions when rendering some objects into an image. In textbook terminology, a world coordinate window is an area of interest (meaning what the user wants to visualize) in some application-specific coordinates, e.g., miles, centimeters, or other suitable measurements within the scope of this disclosure. The term window as used herein is not to be confused with a graphics user interface (GUI) window. How does a window limit what a user can visualize outside of a room? In contrast, a viewport is an area (typically rectangular) represented in pixels in rendering device-specific coordinates, e.g., screen coordinates, into which objects of interest will be rendered. Clipping to the world coordinate window is typically applied to objects before they pass through the window-to-viewport transformation. When viewing a document in a web browser, the viewport is the region of the browser window that contains the visible portion of the document. In response to a change in the size of the viewport, for example, because the user resizes the browser window, the browser reflows the document (e.g., recalculates the positions and sizes of the document's elements). In response to the document being larger than the viewport, the user controls the portion of the document that is visible by scrolling within the viewport.
[0014] In some embodiments of the present disclosure, a network visualization application is made more efficient for users to analyze network statistics and retrieve data for specific viewports. In some embodiments, efficient retrieval and execution of data provides lower data consumption, improved user interface (UI) responsiveness, while processing smaller amounts of data, improving data lag, improving data fetching (retrieval) from servers, improving viewport site (base station, edge device) count updates, and improving viewport network statistics.
[0015] In some embodiments, a mapping library is used to obtain map parameters, such as displaying an associated map (as described in more detail below), extracting latitude and longitude information, and obtaining the distance between the viewport diagonal edge and the viewport midpoint.
[0016] In some embodiments, the NVDFS and methods are implemented on many different platforms, such as 3rd Generation Partnership Project (3GPP®), Open Radio Access Network (O-RAN), and cloud native computing (CNC).
[0017] 3GPP is an umbrella term for several standardization organizations that develop protocols for mobile communications. 3GPP is known for developing and maintaining the Global System for Mobile Communications (GSM) and related 2G and 2.5G standards, including general packet radio service (GPRS) and enhanced data rates for GSM evolution (EDGE); the universal mobile telecommunications system (UMTS) and related 3G standards, including high-speed packet access (HSPA) and HSPA+; long term evolution (LTE) and related 4G standards, including LTE-Advanced and LTE-Advanced Pro; and related 5G standards, including 5G New Radio (NR) and 5G-Advanced. 3GPP organizes its work into three distinct streams: radio access network, services and system aspects, and core network and terminals.
[0018] O-RAN is a concept based on interoperability and standardization of RAN elements, including unified interconnection standards for white-box hardware and open-source software elements from different vendors. The O-RAN architecture integrates a modular base station software stack on off-the-shelf (OTS) hardware, allowing baseband and radio unit components from separate suppliers to work together seamlessly.
[0019] Cloud native computing (CNC) is a software development approach that leverages cloud computing to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Technologies such as containers, microservices, serverless functions, and immutable infrastructure, deployed through declarative code, are common elements of this architectural style. CNC technologies enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, CNC allows engineers to make frequent, high-impact changes predictably with minimal friction. Often, cloud-native applications are built as a set of microservices running in Docker containers, orchestrated in Kubernetes, and managed and deployed using DevOps and Git CI workflows (although there is a large amount of competing open source that supports cloud-native development). The advantage of using Docker containers is that all the software required to run them can be packaged into a single executable package. Containers run in a virtualized environment that isolates the contained application from its environment.
[0020] FIG. 1 is a schematic diagram of a network visualization (NV) system 100, according to some embodiments.
[0021] The NVDFS 100 includes a CN 102 communicatively connected to a RAN 104 via a backhaul 116, which is communicatively connected to base stations 108A and 108B (hereinafter base stations 108) having antennas 110 wirelessly connected to UEs 112 located within geographic coverage cells 114A and 114B (hereinafter geographic coverage cells 114). The CN 102 includes one or more service provider(s) 116, a KPI server 118, and an NVDF module 120.
[0022] The CN 102 (also known as a backbone) is the portion of a computer network that interconnects networks, providing a pathway for exchanging information between different local area networks (LANs) or sub-networks. In some embodiments, the CN 102 ties diverse networks together across a wide geographic area, within different buildings in a campus environment, or within the same building.
[0023] In some embodiments, the RAN 104 is a GSM RAN, a GSM / EDGE RAN, a UMTS RAN (UTRAN), an E-UTRAN, an Open RAN (O-RAN), a Virtual RAN (v-Ran), or a Cloud RAN (C-RAN). The RAN 104 resides between the user equipment 112 (e.g., a mobile phone, a computer, or any remote control machine) and the CN 102. The RAN 104 is shown as a C-RAN for simplified representation and explanation. In some embodiments, a baseband unit (BBU) replaces the C-RAN.
[0024] In traditional distributed cellular networks, the equipment at the bottom and top of the base station at a cell site is the BBU. BBUs are radio equipment that link UEs to the CN and process billions of bits of information per hour. BBUs are traditionally located in enclosures or shelters at the bottom of base stations. In contrast, C-RAN uses the large signal-carrying capacity of optical fiber to centralize many BBUs in dedicated pool locations or base stations. This reduces the amount of equipment at the base station and provides many other benefits, including lower latency.
[0025] In a hierarchical telecommunications network, the backhaul portion 106 of the NVDFS 100 includes the intermediate link(s) between the CN 102 and the RAN 104. Two primary methods of mobile backhaul implementation are fiber-based backhaul and wireless point-to-point backhaul. Other methods, such as copper-based wireline, satellite communications, and point-to-multipoint wireless technologies, are being phased out as capacity and latency requirements become higher in 4G and 5G networks. Backhaul generally refers to the side of the network that communicates with the global Internet. The connection between the base station 108 and the UE 112 begins with the backhaul 106 connected to the CN 102. In some embodiments, the backhaul 106 includes wireline, optical fiber, and wireless components. The wireless section includes using microwave bands, mesh, and edge network topologies that use high-capacity wireless channels to send packets to microwave or fiber links.
[0026] In some embodiments, the base station 108 is a lattice or freestanding tower, a guyed tower, a monopole tower, and a hidden tower (e.g., a tower designed to resemble a tree, a cactus, a water tower, a sign, a light standard, and other types of structures). In some embodiments, the base station 108 is a cellular-enabled mobile device site where antennas and electronic communications equipment are typically located on a radio mast, tower, or other elevated structure to create a cell (or adjacent cells) in the network. The elevated structure typically supports antenna(s) 110 and one or more sets of transmitters / receivers (transceivers), digital signal processors, control electronics, remote radio heads (RRHs), primary and backup power sources, and shelters. Base stations are known by other names, such as radio base station, mobile telephone mast, or cellular base station. In some embodiments, the base station is replaced by or used in cooperation with an edge device configured to wirelessly communicate with the UE. The edge device provides an entry point to a service provider CN, such as the CN 102. Examples include routers, routing switches, integrated access devices (IADs), multiplexers, and various metropolitan area network (MAN) and wide area network (WAN) access devices.
[0027] In at least one embodiment, antenna(s) 110 are sector antennas. In some embodiments, antenna(s) 110 are a type of directional microwave antenna with a sector-shaped radiation pattern. In some embodiments, the sector angle of the arc is a 60°, 90°, or 120° design, with a few extra degrees to ensure overlap. Furthermore, sector antennas are mounted in multiples if wider or full-circle coverage is desired. In some embodiments, antenna(s) 110 are rectangular antennas, sometimes referred to as panel antennas or radio antennas, used to transmit and receive waves or data between mobile devices or other devices and base stations. In some embodiments, antenna(s) 110 are circular antennas. In some embodiments, antenna(s) 110 operate at microwave or ultra-high frequency (UHF) frequencies (300 MHz to 3 GHz). In other examples, antenna(s) 110 are selected for their size and directionality. In some embodiments, antenna(s) 110 are MIMO (multiple-input multiple-output) antennas that simultaneously transmit and receive two or more data signals over the same wireless channel by taking advantage of multipath propagation.
[0028] In some embodiments, the UE 112 is a computer or computing system. Additionally or alternatively, the UE 112 has a liquid crystal display (LCD), light emitting diode (LED), or organic light emitting diode (OLED) screen interface that provides a touchscreen interface with digital buttons and a keyboard or physical buttons along with a physical keyboard. In some embodiments, the UE 112 connects to the Internet and interconnects with other devices. Additionally or alternatively, the UE 112 incorporates an integrated camera, the ability to make and receive voice and video calls, video games, and global positioning system (GPS) capabilities. Additionally or alternatively, the UE runs an operating system (OS) that allows capability-specific third-party apps to be installed and executed. In some embodiments, the UE 112 is a computer (such as a tablet computer, netbook, digital media player, digital assistant, graphing calculator, handheld game console, handheld personal computer (PC), laptop, mobile internet device (MID), personal digital assistant (PDA), pocket calculator, portable medical player, or ultra-mobile PC), a mobile phone (such as a camera phone, feature phone, smartphone, or phablet), a digital camera (such as a digital camcorder, or digital still camera (DSC), digital video camera (DVC), or front-facing camera), a pager, a personal navigation device (PND), a wearable computer (such as a calculator watch, smart watch, head-mounted display, earphone, or biometric device), or a smart card.
[0029] In at least one embodiment, the geographic coverage cell 114 is any shape and size. In some embodiments, the geographic coverage cell 114 is a macrocell (covering 1 km to 30 km), a microcell (covering 200 m to 2 km), or a picocell (covering 4 m to 200 m). In some embodiments, the geographic coverage cell is circular, oval ( FIG. 1 ), sectored, or lobed, although the geographic coverage cell 114 may be configured in almost any shape or size. The geographic coverage cell 114 represents the geographic area over which the antenna 110 and the UE 112 are configured to communicate. Coverage depends on several factors, including terrain (i.e., mountains) and buildings, technology, radio frequency, and, perhaps most importantly for two-way telecommunications, the sensitivity and transmission efficiency of the UE 112. Some frequencies provide better area coverage, while other frequencies penetrate obstacles such as buildings in a city better. The ability of the UE to connect to a base station depends on the strength of the signal. Coverage gaps can be caused by most things, such as faulty equipment, bad weather, animals, accidents, etc. Coverage gaps can arise through the loss of one or more sets of transmitters, receivers, transceivers, digital signal processors, control electronics, GPS device receivers, primary and backup power sources, and antennas. Additionally or alternatively, coverage gaps exist due to areas not previously covered by cellular service or areas created by the removal of base stations, etc. In some embodiments, a coverage gap occurs after service covering an area is lost for some reason. In other examples, a coverage gap is any area where there is no cell coverage service to the UE for some reason.
[0030] Service provider(s) 116 are companies, vendors, or organizations that offer direct Internet backbone access to Internet service providers and sell bandwidth or network access, usually through access to their Network Access Points (NAPs). Service providers are sometimes referred to as backbone providers, Internet providers, or vendors. Service providers consist of telecommunications companies, data carriers, wireless communication providers, Internet service providers, and cable television operators that offer high-speed Internet access.
[0031] The KPI server 118 generates both predicted and live network data. Live network data (KPIs, UE / cell / MDT (Minimization of Drive Test) traces, and crowdsourced data) enables modeling of network traffic, hotspot identification, and radio signal propagation. RF drive test is a method for measuring and evaluating the coverage, capacity, and quality of service (QoS) of mobile wireless networks such as the RAN 104. This technique consists of using vehicles containing mobile wireless network air interface measurement equipment to detect and record various physical and virtual parameters of mobile cellular service in each geographic area. By measuring what wireless network subscribers experience in any particular area, wireless carriers can make directed changes to their networks that provide better coverage and service to their customers. Drive tests generally consist of moving vehicles equipped with drive test measurement equipment. The equipment is typically a highly specialized electronic device that interfaces with an original equipment manufacturer (OEM) mobile handset (UE). This ensures that the measurements are realistic and comparable to real user experiences.
[0032] UE / cell / MDT traces collected in an Operations Support System (OSS) or through dedicated tools provide user-level information to service provider(s) 116. Once geo-located, the UE / cell / MDT traces are used to improve path loss calculations and prediction plots, as well as to identify and locate problem areas and traffic hotspots. The KPI server 118 enables service provider(s) 116 to use the UE / cell / MDT traces with the NVDF module 120 for network visibility.
[0033] In some embodiments, the NVDF module 120 collects Reference Signal Received Power (RSRP). RSRP is an acronym for Reference Signal Received Power and is a measurement of the received power level in an LTE cell network. Average power is a measurement of the power received from a single reference signal. RSRP is the power of an LTE reference signal spread across the full bandwidth and narrowband. In some embodiments, the file data is in a specific file format (e.g., a grid-type pattern). In some embodiments, the RSRP is obtained from the KPI server 118.
[0034] In some embodiments, the NVDF module 120 collects Synchronization Signal Reference Signal Received Power (SS-RSRP). SS-RSRP is defined as the linear average over the power contribution (in watts) of resource elements carrying Secondary Synchronization Signals (SSS). SS-RSRP is the linear average of the received SSS levels. Synchronization signals specific to each cell are transmitted using source elements. RSRP allows for comparison of the strength of signals from individual cells in 5G networks. RSRP is a parameter for cell selection or handover. SS-RSRP is the equivalent of the RSRP parameter used in LTE systems.
[0035] In some embodiments, the NVDF module 120 collects the Signal-to-Interference-plus-Noise Ratio (SINR), a quantity used to provide a theoretical upper limit on channel capacity (or rate of information transfer) in wireless communication systems. Similar to the Signal-to-Noise Ratio (SNR) often used in wired communication systems, the SINR is defined as the power of a particular signal of interest divided by the sum of the interference power (from other interfering signals) and the power of any background noise.
[0036] In some embodiments, the NVDF module 120 collects a synchronization signal-to-interference-plus-noise ratio (SS-SINR), which is the linear average over the power contributions (in watts) of resource elements carrying the SSS divided by the linear average of the noise and interference power contributions (in watts) over resource elements carrying the SSS within the same frequency bandwidth. SS-SINR is the linear average of the power contributions of resource elements carrying secondary synchronization signals divided by the linear average of the noise and interference power contributions of resource elements carrying secondary synchronization signals within the same frequency bandwidth (i.e., ETSI TS 138 215 V15.2.0, incorporated herein by reference in its entirety). In LTE networks, SINR is reported as a code via measurement reports to the eNodeB (e.g., access point). This is the difference between 3G and 4G.
[0037] In some embodiments, the NVDF module 120 collects data throughput. When used in the context of a communication network, such as Ethernet or packet radio, throughput or network throughput is the rate of successful message delivery over a communication channel. The data to which these messages belong is delivered over physical or logical links or passes through a particular network node. Throughput is typically measured in bits per second (bits / s or bps), and sometimes in data packets per second (pps or pps) or data packets per time slot. Throughput includes downlink and uplink data transmission. The wireless downlink is the transmission path from the cell site to the UE. The wireless uplink is the transmission path from the mobile station (UE) to the base station.
[0038] In some embodiments, the NVDF module 120 collects information about latency. Network delay is a design and performance characteristic of telecommunications networks. Network delay specifies the latency for a bit of data to travel across a network from one communication endpoint to another. Latency is typically measured in multiples or fractions of a second. Delay varies slightly depending on the location of a particular pair of communication endpoints. Engineers typically report both maximum and average delay and divide delay into several components: (1) processing delay, which is the time it takes a router to process the packet header; (2) queuing delay, which is the time the packet spends in a routing queue; (3) transmission delay, which is the time it takes to push the packet's bits onto the link; and (4) propagation delay, which is the time it takes the signal to propagate through the medium. A certain minimum level of delay is experienced by a signal due to the time it takes to serially transmit packets over the link. This delay is extended by more variable levels of delay due to network congestion. IP network delay ranges from a few milliseconds to hundreds of milliseconds.
[0039] In some embodiments, the NVDF module 120 collects information from Layer 3 (network layer) drivers. The network layer is responsible for receiving frames from the data link layer and delivering them to their intended destination based on the addresses contained within the frames. IP addresses find their destination by using logical addresses, such as the network layer (Internet Protocol). At this layer, routers are components used to route information that needs to travel between networks.
[0040] In some embodiments, the NVDF module 120 collects information from consumers on a network, such as the RAN 104. The NVDF module 120 collects active and passive connectivity (e.g., reachability). In some embodiments, the NVDF module 120 collects information from web performance tests (WPTs; the NVDF module 120 captures signal KPIs during WPTs and uses the signal KPIs to create a shaping layer presentation on a map), YouTube®, network drives, feedback, and IC drive information. In some embodiments, the NVDF module 120 collects active and passive data from subscribers and / or users. Non-limiting examples include network quality, related parameters, SINR, RSRP, data throughput, and other suitable parameters within the scope of this disclosure.
[0041] In some embodiments, the NVDF module 120 collects geographically located KPI sample data. In some embodiments, this geographically located data is provided by the KPI server 118. In some embodiments, the geographically located sample data is provided by a database or memory, such as the memory 1304 (FIG. 13). In some embodiments, the geographically located data includes a serving eNodeB ID (i.e., an identifier of the node at the base station). In some embodiments, the geographically located data is provided and / or collected through drive tests, UE KPIs reported by a UE, such as the UE 112, base station KPI reporting through Central Units (CU) or Distribution Units (DU) associated with a base station, such as the base station 108, or other suitable methods of collecting geographically located data according to some embodiments. For purposes of explanation, each device that provides KPI information is referred to herein as a node (e.g., an antenna, an edge device, a UE, or other suitable device within embodiments of the present disclosure).
[0042] In some embodiments, the NVDF module 120 collects a Physical Cell ID (PCI). The PCI is used to indicate the physical layer identity of a cell. The PCI is used for cell identification during the cell selection procedure. The goal of PCI optimization is to largely ensure that neighboring cells are assigned different primary sequences. Good PCI assignment reduces call drops by allowing the UE to clearly distinguish one cell from another.
[0043] In some embodiments, the NVDF module 120 collects the latitude and longitude of a node (e.g., a gNB), NAP, base station 108, or edge device through a location tag.
[0044] In some embodiments, the NVDF module 120 geographically bins the collected data. As data is collected, the NVDF module 120 performs a binning operation on the collected data. In some embodiments, the NVDF module 120 takes the average of all values within a given region. In some embodiments, the NVDF module 120 determines the edges of the geographic area (e.g., NW, SW, NE, and SE), divides the geographic area into shapes such as hexagons, looks up the values within each shape, calculates the average (mean), and attributes the average to the latitude and longitude at the center of the shape.
[0045] FIG. 2 is a data flow diagram of the NVDF module 120, according to some embodiments.
[0046] The NVDF module 120 includes a NIFI component 202 , a Spark component 204 , an Hbase component 206 , a MySQL® component 208 , and an application component 210 .
[0047] In some embodiments, the NIFI component 202 automates the flow of data between the NVDF module 120 and the KPI server 118. According to some embodiments, the NIFI component 202 ingests data from third-party applications, including latitude and longitude for each base station, such as base station 108, frequency band details, eNB ID, evolved-UTRAN cell global identifier (ECGI), drive test data, KPIs, consumer data, and other suitable data. In some embodiments, the NIFI component 202 is an open-source platform based on the concept of extract, transform, and load. The software design is based on a flow-based programming model and provides features including the ability to operate in clusters, security using Transport Layer Security (TLS) encryption, extensibility (e.g., users can write their own software to extend its functionality), and improved usability features such as a portal used to visually view and modify behavior. The NIFI component 202 is used to schedule jobs, trigger flows, and ingest data from third-party applications, such as raw files from the KPI server 118.
[0048] Spark component 204 is an open source integrated analytics engine for large-scale data processing. Spark component 204 provides an interface for programming across server clusters with implicit data parallelism and fault tolerance. Spark component 204 is a parallel processing framework for running large-scale data analytics applications across clustered computers. Spark component 204 handles both batch and real-time analytics and data processing workloads.
[0049] The HBase component 206 provides a fault-tolerant way to store large amounts of sparse data (e.g., small amounts of information captured within large collections of empty or unimportant data). The HBase component 206 is a column-oriented, non-relational database management system that runs on top of the Hadoop Distributed File System (HDFS). HBase provides a fault-tolerant way to store sparse datasets, which are common in many big data use cases.
[0050] The HDFS component (not shown) is a distributed file system that stores data on commodity machines, providing very high aggregate bandwidth across the server cluster. All batched data sources are first stored in the HDFS component and then processed using the Spark component 204. The Hbase component 206 also utilizes HDFS as its data storage infrastructure.
[0051] The MySQL component 208 is an open-source Relational Database Management System (RDBMS). A relational database organizes data into one or more data tables where data types are related to each other and these relationships help structure the data. The MySQL component 208 creates, modifies, and extracts data from the Spark component 204 and controls user access in operation 216. The MySQL component 208 is utilized for application programming interface (API) queries and to provide any real-time user interfaces (UIs), such as UI 1322 (FIG. 13). Aggregated and correlated data is also stored in MySQL.
[0052] The application component 210, in operation 222, enables a user to visualize the network (e.g., retrieve analysis data for visualization) through a UI, such as UI 1322 of FIG. 13 or a UI of a UE (as shown in FIGS. 6B, 6C, and 6D). The user visualizes various aspects of the NV, including analysis report data, in real time, in operation 220. In some embodiments, the user visualizes specified bands and various geographic areas. In some embodiments, the user visualizes individual shapes (e.g., hexagonal geographic areas) based on network analysis. For example, the user determines whether a geographic area (represented by a shape layered on a map) is experiencing insufficient coverage.
[0053] In some embodiments, the user drills down into details within the shapes. In some embodiments, the user hovers or clicks on a layered shape, and a pop-up box reveals information such as the cell ID, cell RSRP, cell SS-RSRP, cell SINR, and the number of samples collected within the grid. In some embodiments, the user visualizes details about the network performance in each layered shape. For example, the user visualizes the layered shape RSRP and the number of sample counts for the layered shape in a pop-up box.
[0054] At operation 212, the spark component 204 retrieves third-party data from the NIFI component 202. In some embodiments, the input third-party data includes site information from a site database, such as the latitude and longitude of all cells in the RAN, frequency band details, eNB IDs, ECGI, and other suitable information. In some embodiments, the input data additionally includes geographically located data, such as RF drive test information, UE KPI data, or other passively collected data. In some embodiments, the geographically located data is collected over a continuously running time frame, such as 24 hours. In some embodiments, the geographically located data is collected over more than 24 hours, and in some embodiments, the geographically located data is collected over less than 24 hours. In some embodiments, the window of time for collection of the geographically located data is controlled by a sliding window algorithm. In some embodiments, the collected data is collected in a FIFO (first in, first out) manner, where new data is collected and old data is removed (e.g., data older than 24 hours).
[0055] The spark component 204 stores the geographically located data in the Hbase component 206 and retrieves the stored data to perform network analysis at operation 214. At operation 218, the spark component 204 stores the network analysis in the Hbase component 206. Continuing with operation 216, the MySQL 208 retrieves site information from the spark component 204 and combines it with the site information for the application 210. The application 210 retrieves the network analysis data from the Hbase component 206 for visualization at operation 222. The application component 210 further retrieves the network analysis report data for visualization at operation 220.
[0056] FIG. 3 is a visual representation of a network visualization geographic area 300 according to some embodiments.
[0057] Network visualization geographic area 300 is a representation of collected data presented by the application described above. Network visualization geographic area 300 is divided into hexagons 302, and in some embodiments, each hexagon 302 represents a geographic area based on the scale 304 of network visualization geographic area 300. Network visualization geographic area 300, including hexagons 302, is layered on a map 308 representing a geographic area of interest. In some embodiments, hexagons 302 combine to form a grid 306. In some embodiments, hexagons 302 are configured in various sizes to provide information about network coverage quality (e.g., good, average, or poor). In some embodiments, the size of grid 302 is adjustable by an engineer or user. In some embodiments, grid 302 has various shapes, including circular, square, and rectangular. In some embodiments, a user selects the shape of grid 302. In some embodiments, the area of hexagon 302 is based on the level of zoom into network visualization geographic area 300. In Table 1 below, the area of hexagon 302 is adjusted based on the zoom level. Continuing with the example of Table 1, the pixel grid size is also adjusted for resolution of detail within hexagon 302. In some embodiments, as the zoom level increases, the area of hexagon 302 decreases. In some embodiments, increasing the zoom level increases the number of pixels in the representation while keeping the area of the hexagon the same, thus providing greater visual clarity without increasing the area of hexagon 302. [Table 1]
[0058] FIG. 4 is a flow diagram representation of a method 400 for network visualization (NV), according to some embodiments.
[0059] Although the operations of method 400 are described and shown as having a particular order, the operations of method 400 are configured to be performed in any order unless specifically specified otherwise. Method 400 is implemented as a set of operations, such as operations 402-418.
[0060] At operation 402 of method 400, KPI data input is received. In some embodiments, the NIFI component 202 collects geographically located KPI samples including serving eNB ID, NR EARFCN, PCI, cell latitude and longitude, cell RSRP, cell SS-RSRP, SINR, SS-SINR, data throughput, latency, Layer 3 drive data, UE KPIs, and other suitable geographically located samples according to some embodiments. Operational flow proceeds from operation 402 to operation 404, where location accuracy is determined.
[0061] At operation 404 of method 400, a determination is made regarding the location accuracy of the received KPI data sample. In some embodiments, the location accuracy is determined based on the known location of the cell, antenna, UE, or other suitable KPI-generating node in embodiments of the present disclosure. In some embodiments, the location accuracy of the KPI data sample is within an acceptable threshold (e.g., less than 5 meters). In some embodiments, in response to the accuracy of the KPI location data being higher than the known node location data threshold, the KPI location data is not used for network visualization. In response to the location accuracy of the sample being unreliable (the "NO" branch of block 404), the process flows to operation 406 where the sample is discarded. In response to the location accuracy of the sample being acceptable (the "YES" branch of operation 404), operation proceeds from operation 404 to operation 408.
[0062] At operation 408 of method 400, a determination is made as to whether the data sample has a date and timestamp. In some embodiments, KPIs rely on timestamps as part of their calculation. The timestamp is also taken into account as part of the check for changed data. In response to the KPI data sample not having a date and / or timestamp (the "NO" branch of block 408), the process flows to operation 406 where the sample is discarded. In response to the data sample including a date and timestamp (the "YES" branch of block 408), the operation proceeds from operation 408 to operation 410.
[0063] At operation 410 of method 400, a determination is made as to whether the KPI data sample originates from a non-outage node (e.g., an active edge device or a base station). In response to the data sample originating from an outage site (the "NO" branch of block 410), the process proceeds to operation 406, where the sample is discarded. In response to a data sample originating from an active node (the "YES" branch of block 410), the operation proceeds from operation 410 to operation 412.
[0064] At operation 412 of method 400, a determination is made whether the KPI data sample includes latitude and longitude tags. Geographic tagging is the process of adding geographic information about the KPI data, including latitude and longitude coordinates, place names, and / or other location data, into the tags. In response to the data sample not having latitude and longitude tags (the "NO" branch of block 412), the process flows to operation 406 where the sample is discarded. In response to the data sample including latitude and longitude tags (the "YES" branch of block 412), the operation proceeds from operation 410 to operation 412.
[0065] At operation 414 of method 400, a determination is made as to whether the data sample KPI is tagged. A KPI tag is an abbreviated title with a KPI value. Each KPI has a data source, an entity set, and an annotation file. The KPI value changes only in response to actions performed on the transaction content. In response to the KPI sample not having a tag (the "NO" branch of block 412), the process proceeds to operation 406, where the sample is discarded. In response to the data sample including a KPI tag (the "YES" branch of block 412), the operation proceeds from operation 414 to operation 416.
[0066] At operation 416 of method 400, a total number of KPI data samples per layered shape is collected, and a determination is made as to whether the KPI samples for the layered shape are greater than a predetermined amount (e.g., enough KPI samples to provide a reliable assessment of network quality). In some embodiments, the total number of data samples per cell is determined by examining the KPI input data at operation 402. In response to there being fewer than 10 KPI samples (the "NO" branch of block 416), flow proceeds to operation 406 where the samples are discarded. In response to there being more than a predetermined amount of KPI samples (e.g., over a 24-hour window) (the "YES" branch of block 416), process flow moves from operation 416 to operation 418.
[0067] Table 2 provides an example of sample criteria that operation 416 determines. [Table 2]
[0068] In some embodiments, operation 416 determines whether 10 RSRP samples, 10 SINR samples, 5 downlink samples, 5 uplink samples, and 5 latency samples are available before proceeding to operation 418. In some embodiments, only one of the sample criteria is met. In some embodiments, most or three of the five sample criteria are available.
[0069] At operation 418 of method 400, a layered shape is created on the map, such as network visualization geographic area 300, with hexagons 302 layered on map 308. In some embodiments, the KPI geographically located data is geographically binned. Binning, also known as discrete binning or bucketing, is a data preprocessing technique used to reduce the impact of minor observation errors. Original data values fall into a given small interval, a bin, and are replaced by a value representing that interval, often the median value. Binning is a form of quantization. In some embodiments, the spark component 204 performs the geographic binning.
[0070] FIG. 5 is a diagram illustrating an NVDF user interface 500 according to some embodiments.
[0071] 5, a graphical user interface (GUI) 500 includes a display 501 showing hexagons 502 layered on a map 508 representing a geographic area. The hexagons 502 are grouped into a grid 506, and the size of each hexagon 502 is determined by a scale 504.
[0072] For each hexagon 502 representing good LTE coverage, it is an RSRP between -40 and -105 dBm (decibels (dB) referenced to 1 milliwatt (mW)), an SINR between 30 and 8 dB, a downlink rate between 100 and 10 Mbps, an uplink rate between 50 and 5 Mbps, and / or a latency between 0 and 40 ms.
[0073] For each hexagon 502 representing good 5G coverage, it is an SS-RSRP between -40 and -105 dBm, an SS-SINR between 40 and 17 dBm, a downlink rate between 2,000 and 500 Mbps, an uplink rate between 1,000 and 3 Mbps, and / or a latency between 0 and 40 ms.
[0074] For each hexagon 502 representing average LTE coverage, it is an RSRP between -105 and -115 dBm, an SINR between 8 and -2 dB, a downlink rate between 10 and 2 Mbps, an uplink rate between 5 and 2 Mbps, and / or a latency between 40 and 60 ms.
[0075] For each hexagon 502 representing average 5G coverage, it is an SS-RSRP between -105 and -115 dBm, an SS-SINR between 17 and 1.5 dB, a downlink rate between 500 and 30 Mbps, an uplink rate between 3 Mbps and 100 Kbps, and / or a latency between 40 and 60 ms.
[0076] For each hexagon 502 representing poor LTE coverage, it is an RSRP between -115 and -140 dBm, an SINR between -2 and -20 dB, a downlink rate between 2 and 0 Mbps, an uplink rate between 2 and 0 Mbps, and / or a latency between 60 and 5,000 ms.
[0077] For each hexagon 502 representing poor 5G coverage, it is an SS-RSRP between -115 and -140 dBm, an SS-SINR between 1.5 and -10 dBm, a downlink rate between 30 and 0 Mbps, an uplink rate between 100 and 0 Kbps, and / or a latency between 60 and 5,000 ms.
[0078] FIG. 6A is a visual representation of an aggregation of multiple layered shapes 600A, according to some embodiments.
[0079] As described above with reference to Table 1, a user zooms in and out on a graphical user interface (GUI) display, such as display 501. In response to the user zooming out to see more network coverage, NVDF module 120 executes an aggregation algorithm to provide coverage data in a layered shape, such as hexagon 502.
[0080] The aggregation logic for combining hexagons based on reduced zoom level uses a weighted average algorithm. In a non-limiting example, the RSRP and the number of samples per hexagon, such as hexagons 602, 604, and 606, are used to determine the RSRP of a larger hexagon, such as hexagon 608. In some embodiments, hexagon 608 includes the same or significant portions of hexagons 602, 604, and 606. Continuing with the example, (23 samples of hexagon 602 multiplied by −83 dBm) are added to (54 samples of hexagon 606 multiplied by −104 dBm) and added to (11 samples of hexagon 604 multiplied by −94 dBm). Continuing with the example, the sum is divided by the total number of samples in hexagons 602, 604, and 606 (e.g., 23 + 54 + 11). The result, -97.26 dBm, becomes the new RSRP for the larger, or zoomed-out, hexagon 608. Because -97.26 dBm is within a good range of RSRP, hexagon 608 is shown as a good coverage hexagon. In some embodiments, the initial data for each layered shape is determined at the lowest zoom level, and then aggregation occurs.
[0081] 6B, 6C, and 6D are visual representations of user interfaces of user equipment according to some embodiments.
[0082] In FIG. 6B, UE UI 600B is a GUI display of network visualization at a zoom level, e.g., zoom level 17. A user has selected hexagon 610, causing hexagon 610 to have a brighter hue compared to the other hexagons surrounding hexagon 610. Additionally, pop-out box 612 presents the user with an RSRP or SS-RSRP value, e.g., −105.36 dBm, which places hexagon 610 as being in average coverage according to the legend in FIG. 5. Additionally, hexagon 610 contains 11 samples (e.g., greater than the minimum sample for display) as of the listed date. At the bottom of UI 600B, pop-out box 614 further displays the maximum RSRP, e.g., −65.28 dBm, the minimum RSRP, e.g., −117.61 dBm, and the average RSRP, e.g., −99.48.
[0083] In FIG. 6C, UI 600C displays similar information about hexagon 616, but for a later date; for example, UI 600C is displayed for a date 33 days after the date in UI 600B. Hexagon 616 is adjacent to hexagon 610, as shown in UIs 600B and 600C. In FIG. 6C, the user has selected hexagon 616, causing hexagon 616 to have a lighter hue compared to the hexagons surrounding it. Additionally, pop-out box 618 presents the user with an RSRP or SS-RSRP value, e.g., −104.08 dBm, which, according to the legend in FIG. 5, positions hexagon 616 as having good coverage. Additionally, hexagon 616 has 12 samples as of the listed date. At the bottom of the UI 600C, a pop-out box 620 further displays the maximum RSRP, eg, −65.28 dBm, the minimum RSRP, eg, −117.61 dBm, and the average RSRP, eg, −99.48.
[0084] In FIG. 6D, UI 600D shows a zoomed-out view, e.g., from 17 to 15 (e.g., 2,500 m within hexagon 622). 2 From 40,000m 26A to 6D) to display a view zoomed out two levels. In accordance with aggregation logic performed by NVDF module 120, a weighted average of hexagons 610 and 616 is performed over the period between the date in UI 600B (e.g., December 3, 2021) and the date in UI 600C (e.g., January 5, 2022) to create hexagon 622. That is, the RSRP value in pop-out box 624 is a representation of the sum of the average RSRP of hexagon 610 multiplied by the number of samples for hexagon 610 and the average RSRP of hexagon 616 multiplied by the number of samples for hexagon 616 over the days, where the sum is divided by the total amount of samples for hexagon 610 and hexagon 616 over the period (e.g., 1101 as shown in pop-out box 624) to arrive at a weighted average RSRP of −96.58.
[0085] In the pop-out box 626, the weighted average is also used to determine the maximum RSRP (e.g., −62.19), minimum RSRP (e.g., −111.35), and average RSRP (e.g., −89.86) for the hexagon 622.
[0086] FIG. 7 is a flow diagram representation of a method 700 for network visualization (NV), according to some embodiments.
[0087] Although the operations of method 700 are described and shown as having a particular order, the operations of method 700 are configured to be performed in any order unless specifically specified otherwise. Method 700 is implemented as a set of operations, such as operations 702-720.
[0088] At operation 702 of method 700, previous KPI layered shape data is collected (e.g., determined in method 400 of FIG. 4) from a database or memory, such as non-transitory computer-readable storage medium 1304. Operational flow moves from operation 702 to operation 704.
[0089] At operation 704 of method 700, current KPI data input is received. In some embodiments, the NIFI component 202 collects geographically located KPI samples, including serving eNB ID, NR EARFCN, PCI, cell latitude and longitude, cell RSRP, cell SS-RSRP, and other suitable geographically located samples, according to some embodiments. Operational flow proceeds from operation 704 to operation 706, where location accuracy is determined.
[0090] At operation 706 of method 700, a determination is made regarding the location accuracy of the received KPI data sample. In some embodiments, the location accuracy is determined based on the known location of the cell, antenna, UE, or other suitable KPI-generating node in embodiments of the present disclosure. In some embodiments, the location accuracy of the KPI data sample is within an acceptable threshold (e.g., less than 5 meters). In some embodiments, in response to the accuracy of the KPI location data being higher than the threshold of known node location data, the KPI location data is not used for network visualization. In response to the location accuracy of the sample being unreliable (the "NO" branch of block 706), the process proceeds to operation 708, where the previous KPI data for the layered shape is retained. In response to the location accuracy of the sample being acceptable (the "YES" branch of operation 706), the operation proceeds from operation 706 to operation 710.
[0091] At operation 710 of method 700, a determination is made as to whether the data sample has a date and timestamp (tag). In some embodiments, KPIs rely on timestamps as part of their calculation. The timestamp is also considered as part of the check for changed data. In response to the KPI data sample not having a date and / or timestamp (the "NO" branch of block 710), the process proceeds to operation 708, where the previous KPI data for the layered shape is retained. In response to the data sample including a date and timestamp (the "YES" branch of block 710), the operation proceeds from operation 710 to operation 712.
[0092] At operation 712 of method 700, a determination is made as to whether the KPI data sample originated from a non-outage node (e.g., an active edge device or a base station). In response to the data sample originating from an outage site (the "NO" branch of block 712), the process proceeds to operation 708, where the previous KPI data in layered form is retained. In response to the data sample originating from an active node (the "YES" branch of block 712), the operation proceeds from operation 712 to operation 714.
[0093] At operation 714 of method 700, a determination is made whether the KPI data sample includes latitude and longitude tags. Geographic tagging is the process of adding geographic information about the KPI data, including latitude and longitude coordinates, place names, and / or other location data, to the tags. In response to the data sample not having latitude and longitude tags (the "NO" branch of block 714), the process proceeds to operation 708, where the previous KPI data in layered form is retained. In response to the data sample including latitude and longitude tags (the "YES" branch of block 714), the operation proceeds from operation 714 to operation 716.
[0094] At operation 716 of method 700, a determination is made as to whether the data sample KPI is tagged. A KPI tag is an abbreviated title with a KPI value. Each KPI has a data source, an entity set, and an annotation file. The KPI value changes only in response to actions performed on the transaction content. In response to the KPI sample not having a tag (the "NO" branch of block 716), the process proceeds to operation 708, where the previous KPI data in layered form is retained. In response to the data sample including a KPI tag (the "YES" branch of block 716), the operation proceeds from operation 716 to operation 718.
[0095] At operation 718 of method 700, a total number of KPI data samples per layered shape is collected, and a determination is made as to whether the KPI samples for the layered shape are greater than a predetermined amount (e.g., 10 KPI samples to provide a reliable assessment of network quality). In some embodiments, the total number of data samples per cell is determined by examining the KPI input data at operation 704. In response to there being less than the predetermined amount of KPI samples (the "NO" branch of block 718), flow proceeds to operation 708, where previous KPI data for the layered shape is retained. In response to there being more than a predetermined amount of KPI samples (e.g., over a 24-hour window) (the "YES" branch of block 718), process flow moves from operation 718 to operation 720.
[0096] In operation 420 of method 700, a layered shape is created on the map, such as GUI display 501 with hexagons 302 layered on map 508. In some embodiments, the KPI geographically located data is geographically binned. Binning, also known as discrete binning or bucketing, is a data pre-processing technique used to reduce the impact of minor observation errors. Original data values fall into a given small interval, a bin, and are replaced by a value representing that interval, often the median value. Binning is a form of quantization. In some embodiments, the spark component 204 performs the geographic binning.
[0097] FIG. 8 is a visual representation 800 of a periodic layered shape presentation according to some embodiments.
[0098] In visual representation 800, on day 1, hexagon 802 includes 23 samples (greater than 10 samples) and an RSRP value of -83 dBm. Hexagon 804 includes 54 samples (greater than 10 samples) and an RSRP value of -104 dBm. Hexagon 806 includes 11 samples (greater than 10 samples) and an RSRP value of -94 dBm. Hexagon 808 includes 7 samples received (fewer than 10 samples) and an RSRP value of -77 dBm. Because hexagon 808 has fewer than 10 samples, hexagon 808 is not created and remains off a display, such as display 501 (FIG. 5).
[0099] On day 2, hexagon 802 contains 11 samples (more than 10 samples) and an RSRP value of -72 dBm. Hexagon 804 retains its value from day 1 because eight samples (fewer than 10 samples) were collected on day 2 and a value of -84 dBm was received. Therefore, the value for day 2 in hexagon 804 is not displayed; instead, the value for day 1 in hexagon 804 is displayed. Hexagon 806 contains 20 samples (more than 10 samples) and an RSRP value of -116 dBm displayed, but the display has changed because -116 dBm is a bad condition (see legend in FIG. 5). Hexagon 808 contains 14 samples (more than 10 samples) and an RSRP value of -106 dBm. Day 2 hexagon 808 contains enough samples to create a layered hexagon shape that is displayed as an average according to the RSRP value of -106 dBm.
[0100] 9A and 9B are visual representations of mobile graphic user interfaces 900A and 900B for the NVDFS 100, according to some embodiments.
[0101] 9A, GUI 900A displays map 902A representing a geographic area, which is overlaid with hexagon 904A in viewport 903A, as described in detail above. Additionally, as shown in viewport 903A, user selection fields 906A, 908A, and 910A provide a summary of all on-air sites (3) in user selection field 906A, planned sites (0) in user selection field 908A, and test and implementation (TI) sites (0) in user selection field 910A. Information bar 912A provides the user with the maximum RSRP in dBm (e.g., −55.32 dBm) in viewport 903A (e.g., hexagon 904A with maximum RSRP in viewport 903A). Information bar 912A further provides the minimum RSRP in dBm (e.g., −110.63), represented by a hexagon in viewport 903A. Information bar 912A also provides the average RSRP in dBm (eg, -76.22) for all hexagons within viewport 903A.
[0102] In some embodiments, the maximum RSRP, minimum RSRP, and average RSRP are determined based on the hexagon with the maximum RSRP, the hexagon with the minimum RSRP, and the average RSRP for each hexagon 904A in the viewport over a predetermined amount of time. The information bar 912A provides the user with an overall understanding of the network coverage for the area in the viewport 903A.
[0103] In Figure 9B, a user visualizes each site (e.g., base station or edge device) in viewport 903B. Each site, such as site 914B, includes a lobe sector representation of each base station (e.g., a lobe for each of three antennas) and includes an identifier (such as a color, shading, thatching, icon, or symbol) representing signal coverage (such as good, average, or poor signal coverage). See, for example, site 916B, which shows an identifier representing poor signal coverage.
[0104] Additionally, the user can select one of user selection fields 906A, 908A, 910A to view all on-air sites (52) by selecting user selection field 906B, all planned sites (2) by selecting user selection field 908B, or all Test and Implementation (TI) sites (1) by selecting user selection field 910B.
[0105] FIG. 10 is a visual representation of an aggregation of multiple shapes 1000 according to some embodiments.
[0106] In some embodiments, the minimum RSRP hexagon, maximum RSRP hexagon, and average RSRP for each hexagon in viewport 1012 are based on the hexagons in viewport 1012. In a non-limiting example, hexagons 1002, 1004, 1006, 1008, and 1010 are hexagons displayed in viewport 1012. The minimum RSRP is determined by filtering and determining the hexagon with the lowest RSRP, which in a non-limiting example is hexagon 1010 (e.g., −105.33 dBm). The maximum RSRP is determined by filtering and determining the hexagon with the highest RSRP, which in a non-limiting example is hexagon 1004 (e.g., −99.97 dBm). The average RSRP is determined by averaging hexagons 1002, 1004, 1006, 1008, and 1010, and is −101.68 dBm in the non-limiting example.
[0107] 11A and 11B are flow diagram representations of a method 1100 for network viewport data fetching (NVDF), according to some embodiments.
[0108] Although the operations of method 1100 are described and shown as having a particular order, the operations of method 1100 are configured to be performed in any order unless specifically specified otherwise. Method 1100 is implemented as a set of operations, such as operations 1102-1128.
[0109] Figure 12 is a visual representation of a mobile graphic user interface 1200 for NVDFS, according to some embodiments. Figures 11A, 11B and 12 are discussed together for better understanding.
[0110] In some embodiments, network viewport data fetching is made more efficient. In a non-limiting example, when a user moves or adjusts the map (e.g., slides the viewport right, left, up, down, or diagonally), new data is processed to properly represent new hexagons overlaid on the new area of the map displayed for the user. Thus, continuing the non-limiting example, in response to the user sliding the viewport (even by a small amount), data is processed to account for the new map area, the hexagons to be displayed, and the coverage representation of the hexagons. This processing can cause delays in properly displaying the viewport, as processing large amounts of data reduces the user's ability to visualize the network. In some embodiments, NVDFS 100 efficiently retrieves, processes, and displays data at a lower data consumption rate, thus improving user interface (UI) responsiveness while processing smaller amounts of data and reducing data lag. In some embodiments, in response to exceeding a viewport movement threshold, the viewport is updated, including processed viewport representation data for the viewport's geographic area, as well as a hexagon representing network coverage quality. In some embodiments, in response to the viewport movement threshold being met or not being exceeded, the viewport updates the geographic area represented by the viewport movement, but the hexagon representing network coverage quality is not updated (e.g., there is no hexagon representing network coverage quality for the new geographic area).
[0111] At operation 1102 of method 1100, a user launches a network viewport data fetch application. In a non-limiting example, the network visualization application resides on the desktop of a mobile device and is activated by opening the application. The process flows from operation 1102 to operation 1104.
[0112] At operation 1104 of method 1100, NVDFS 100 obtains a map of the geographic area for display on the viewport based on the user's location. In a non-limiting example, the user's location is provided by global positioning. In some embodiments, the user's location is based on triangulation with three or more of the nearest base stations or edge devices. Other suitable methods of determining the user's location are within the scope of this disclosure. The process flows from operation 1104 to operation 1106.
[0113] At operation 1106 of method 1100, NVDFS 100 determines the latitude and longitude of the endpoints of a viewport diagonal. Referring to GUI 1200 (FIG. 12), NVDFS 100 determines the latitude and longitude of endpoint 1202 (e.g., a northeast latitude and longitude) and the latitude and longitude of endpoint 1204 (e.g., a southwest latitude and longitude). Diagonal line 1206 extends from endpoints 1202 and 1204, with midpoint 1208 located in the center of diagonal line 1206. In a non-limiting example, endpoints 1202 and 1204 correspond to latitudes and longitudes in geographic areas on the map. Thus, in response to a user sliding the viewport (e.g., with their thumb to visualize network coverage in a different geographic area), the endpoints move with the map. Nevertheless, the midpoint remains on the diagonal and does not move, but rather stays with the viewport. The process flows from operation 1106 to operation 1108 .
[0114] At operation 1108 of method 1100, NVDFS 100 determines a northeast latitude and longitude based on the position of endpoint 1202 on viewport 1210. At operation 1110 of method 1100, NVDFS 100 determines a southwest latitude and longitude based on the position of endpoint 1204 layered over a geographic area. In some embodiments, NVDFS 100 determines a diagonal line, such as viewport diagonal 1206, that extends from left to right instead of right to left, or from northeast to southwest instead of northwest to southeast, as shown in FIG. 12 . Diagonal 1206 remains with viewport 1210 and is not connected to endpoints 1202 and 1204. The process flows from operation 1110 to operation 1112.
[0115] 11B, at operation 1112 of method 1100, NVDFS 100 determines a midpoint, such as midpoint 1208, on a diagonal, such as diagonal 1206. In a non-limiting example, the midpoint is determined by determining the total distance between the endpoints and halving that distance. The process flows from operation 1112 to operation 1114.
[0116] At operation 1114 of method 1100, NVDFS 100 determines the distance between an intermediate point, such as intermediate point 1208, and an end point, such as end points 1202 and 1204. In some embodiments, this distance is known from operation 1112. In some embodiments, the distance is based on the zoom scale of viewport 1210. In some embodiments, NVDFS 100 determines the latitude and longitude of intermediate point 1208 and calculates the distance to end points 1202 and 1204 based on the latitude and longitude of intermediate point 1208 and end points 1202 and 1204. The process flows from operation 1114 to operation 1116.
[0117] At operation 1116 of method 1100, NVDFS 100 determines whether the viewport zoom level is greater than a predetermined setting. In a non-limiting example, if the zoom level is greater than the setting (e.g., if the viewport is 60 km), 2In response to (the "YES" branch of block 1116) the process proceeds to operation 1118. In some embodiments, the predetermined settings are user-controlled or per-use controlled.
[0118] At operation 1118 of method 1100, NVDFS 100 determines whether the distance between a midpoint, such as midpoint 1208, and an end point, such as end point 1202 or 1204, has increased by one-quarter (1 / 4) of the total diagonal distance (or half the distance to the midpoint). In response to the distance between the midpoint and any of the end points not exceeding one-quarter of the total diagonal distance (the “NO” branch of block 1118), the process proceeds to operation 1122, where the geographic area (e.g., map) within the viewport is updated to reflect the user's movement of the map (but the hexagon shape is not updated). In some embodiments, updating the geographic area within the viewport, but not the hexagon, represents that the user has not moved the map or data represented within the viewport far enough to initiate the process of data processing for the representation of the hexagon within the viewport. Thus, the data is not processed, and there is no risk of data lag or constant updating of data as the map is moved across the viewport. The process flows from operation 1122 to operation 1118 .
[0119] In response to the distance between the midpoint and the endpoints exceeding one-quarter of the total distance of the diagonal (the "YES" branch of block 1118), the process proceeds to operation 1120, where both the geographic area and the layered shape (e.g., hexagon) are updated, and the KPI data representation through the layered shape is processed to obtain a new view in the viewport. In a non-limiting example, in response to the diagonal having a scaled distance (based on the scale of the map in the viewport) of 20 Km and the distance between the midpoint and one of the endpoints exceeding 5 Km, both the geographic map and the layered shape are processed. In response to the distance between the midpoint and one of the endpoints being equal to or less than 5 Km, the geographic map is updated, but the layered shape is not updated. Thus, the amount of data processed when updating the layered shape representation is reduced. In some embodiments, the process proceeds to operation 1106, where new endpoints are determined.
[0120] The zoom level must be below a certain amount (e.g., 60 km 2 In response to a zoom level of 12 or less (displaying more than 12 zoom levels) (the “NO” branch of block 1116 ), the process proceeds to operation 1124 .
[0121] At operation 1124 of method 1100, NVDFS 100 determines whether the distance between a midpoint, such as midpoint 1208, and an end point, such as end point 1202 or 1204, has increased by one-third (1 / 3) of the total diagonal distance. In response to the distance between the midpoint and either end point being less than or equal to one-third of the total diagonal distance (the "NO" branch of block 1124), the process proceeds to operation 1128, where the geographic area in the viewport is updated, but the layered shapes are not processed. Thus, KPI data for processing the layered shapes is not processed, and there is no risk of data delay. A larger geographic area (e.g., 60 km) represented within a smaller zoom view is updated. 2 In (larger), a larger distance between the midpoint and either end point is used because the amount of data to be processed for the layered shape increases due to the larger geographic area.
[0122] In response to the distance between the midpoint and the endpoint being greater than one-third of the total distance of the diagonal (the "YES" branch of block 1124), the process proceeds to operation 1126, where both the geographic area and the layered shape are refreshed and new KPI data is obtained and processed for the layered shape network visualization across the new geographic area. In some embodiments, the process proceeds to operation 1106, where new endpoints are determined.
[0123] 13 is a block diagram of a network viewport data fetch (NVDF) processing circuit 1300, according to some embodiments. In some embodiments, the NVDF processing circuit 1300 is a general-purpose computing device that includes a hardware processor 1302 and a non-transitory computer-readable storage medium 1304. The storage medium 1304 is encoded with, i.e., stores, among other things, computer program code 1306, i.e., a set of executable instructions, such as an NVDF algorithm (e.g., a weighted average algorithm) and methods 400, 700, and 1100. Execution of the instructions 1306 by the hardware processor 1302 represents (at least in part) a network viewport data fetch application that implements some or all of the methods described herein (hereinafter referred to as processes and / or methods) according to one or more embodiments.
[0124] The processor 1302 is electrically coupled to a computer-readable storage medium 1304 via a bus 1308. The processor 1302 is electrically coupled to an I / O interface 1310 by the bus 1308. A network interface 1312 is also electrically connected to the processor 1302 via the bus 1308. The network interface 1312 is connected to a network 914, such that the processor 1302 and the computer-readable storage medium 1304 connect to external elements via the network 914. The processor 1302 is configured to execute computer program code 1306 encoded on the computer-readable storage medium 1304 to enable the network viewport data fetch processing circuit 1300 to perform some or all of the processes and / or methods mentioned. In one or more embodiments, the processor 1302 is a Central Processing Unit (CPU), a multiprocessor, a distributed processing system, an Application Specific Integrated Circuit (ASIC), and / or other suitable processing unit.
[0125] In one or more embodiments, computer-readable storage medium 1304 is an electronic, magnetic, optical, electromagnetic, infrared, and / or semiconductor system (or apparatus or device). For example, computer-readable storage medium 1304 includes a random-access or solid-state memory, magnetic recording tape, a removable computer diskette, a semiconductor memory (RAM), a read-only memory (ROM), a rigid magnetic recording disk, and / or an optical disk. In one or more embodiments using an optical disk, computer-readable storage medium 1304 includes a Compact Disk-Read Only Memory (CD-ROM), a Compact Disk-Read / Write (CD-R / W), and / or a Digital Video Disc (DVD).
[0126] In one or more embodiments, the storage medium 1304 stores computer program code 1306 configured to enable the NVDF processing circuit 1300 to perform some or all of the processes and / or methods mentioned. In one or more embodiments, the storage medium 1304 also stores information such as NVDF algorithms that facilitate performing some or all of the processes and / or methods mentioned.
[0127] The network viewport data fetch circuit 1300 includes an I / O interface 1310. The I / O interface 1310 is coupled to external circuitry. In one or more embodiments, the I / O interface 1310 includes a keyboard, keypad, mouse, trackball, trackpad, touchscreen, and / or cursor direction keys for communicating information and commands to the processor 1302.
[0128] The NVDF processing circuit 1300 also includes a network interface 1312 coupled to the processor 1302. The network interface 1312 allows the NVDF processing circuit 1300 to communicate with a network 914 to which one or more other computer systems are connected. The network interface 1312 includes a wireless network interface such as BLUETOOTH, WIFI, WIMAX, GPRS, or WCDMA, or a wired network interface such as ETHERNET, IEEE-864, etc. In one or more embodiments, some or all of the processes and / or methods mentioned are implemented in two or more integrated coverage processing circuits 1300.
[0129] The NVDF processing circuit 1300 is configured to receive information via an I / O interface 1310. The information received via the I / O interface 1310 includes one or more of instructions, data, design rules, a library of standard cells, and / or other parameters for processing by the processor 1302. The information is transferred to the processor 1302 via a bus 1308. The NVDF processing circuit 1300 is configured to receive information regarding a UI via the I / O interface 1310. The information is stored in the computer-readable medium 1304 as a user interface (UI) 1322.
[0130] In some embodiments, a method of network viewport data fetching includes receiving, at a mobile device, a request to launch a network visualization application; and causing a user interface (UI) to output a graphical user interface (GUI), the GUI including displaying one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality; determining latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; and calculating a latitude and longitude from the first endpoint to a second endpoint. determining a distance of a diagonal line extending to two endpoints of the first or second geographic area; determining a midpoint of the diagonal line; and, in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, updating a display in a viewport corresponding to a map of the second geographic area without updating one or more shapes displaying an indication of network coverage quality, or, in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance, updating a display in a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0131] In some embodiments, the method of network viewport data fetching further includes determining a location of the mobile device, wherein the first geographic area displayed on the viewport represents the location of the mobile device.
[0132] In some embodiments, the method of network viewport data fetching further includes determining the latitude and longitude of the waypoint.
[0133] In some embodiments, the waypoint is a first waypoint, and the method further includes determining a latitude and longitude of the first waypoint and, in response to updating a display of a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality, determining a latitude and longitude of a second waypoint.
[0134] In some embodiments, the method of network viewport data fetching further includes determining distances between the midpoint and the first and second endpoints, updating a display of the viewport corresponding to a map of a third geographic area, and determining distances between the midpoint and the third and fourth endpoints in response to updating one or more shapes displaying an indication of network coverage quality.
[0135] In some embodiments, the method of network viewport data fetching further includes determining a zoom level of the viewport, and in response to the zoom level being greater than a predetermined level, setting the threshold distance to one-quarter of the diagonal distance, and in response to the zoom level being equal to or less than the predetermined level, setting the threshold distance to one-third of the diagonal distance.
[0136] In some embodiments, a method of network viewport data fetching includes determining a maximum reference signal received power (RSRP) represented by a first layered shape based on each of the one or more layered shapes; determining a minimum RSRP represented by a second layered shape based on each of the one or more layered shapes; determining an average RSRP for the one or more layered shapes based on each of the one or more layered shapes; determining an eNB ID for the one or more layered shapes based on each of the one or more layered shapes; and determining an NR ID for the one or more layered shapes based on each of the one or more layered shapes. determining a PCI for the one or more tiered shapes based on each of the one or more tiered shapes; determining a cell latitude and longitude for the one or more tiered shapes based on each of the one or more tiered shapes; determining a cell RSRP for the one or more tiered shapes based on each of the one or more tiered shapes; determining a cell SS-RSRP for the one or more tiered shapes based on each of the one or more tiered shapes; determining an SINR for the one or more tiered shapes based on each of the one or more tiered shapes; determining an SS-SINR for the one or more tiered shapes based on each of the one or more tiered shapes; determining a data throughput for the one or more tiered shapes based on each of the one or more tiered shapes; determining a latency for the one or more tiered shapes based on each of the one or more tiered shapes; determining Layer 3 drive data for the one or more tiered shapes based on each of the one or more tiered shapes; and determining a UE KPI for the one or more tiered shapes based on each of the one or more tiered shapes.
[0137] In some embodiments, the method of network viewport data fetching further includes updating the viewport display to include information bars displaying the maximum RSRP, minimum RSRP, and average RSRP.
[0138] In some embodiments, an apparatus for network viewport data fetching includes a processor and a memory storing instructions that, when executed by the processor, cause the apparatus to receive a request at a mobile device to launch a network visualization application and output, via a user interface (UI), a graphical user interface (GUI), the GUI including a display of one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality, the viewports having a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport. determining a latitude and longitude of the map of the second geographic area; determining a distance of a diagonal line extending from the first endpoint to the second endpoint; determining a midpoint of the diagonal; and, in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, updating a display in a viewport corresponding to a map of the second geographic area without updating one or more shapes displaying an indication of network coverage quality, or, in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance, updating a display in a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0139] In some embodiments, the instructions further cause the processor to determine a location of the mobile device, wherein the first geographic area displayed on the viewport represents the location of the mobile device.
[0140] In some embodiments, the instructions further cause the processor to determine a latitude and longitude of the waypoint.
[0141] In some embodiments, the waypoint is a first waypoint, and the instructions further cause the processor to determine a latitude and longitude of the first waypoint, and determine a latitude and longitude of a second waypoint in response to updating a display of a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0142] In some embodiments, the instructions further cause the processor to determine distances between the midpoint and the first and second endpoints, and determine distances between the midpoint and the third and fourth endpoints in response to updating a display of a viewport corresponding to a map of the third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0143] In some embodiments, the instructions further cause the processor to determine a zoom level of the viewport and, in response to the zoom level being greater than a predetermined level, set the threshold distance to one-quarter of the diagonal distance, or, in response to the zoom level being equal to or less than the predetermined level, set the threshold distance to one-third of the diagonal distance.
[0144] In some embodiments, the instructions further cause the processor to determine a maximum reference signal received power (RSRP) represented by a first layered shape based on each of the one or more layered shapes, determine a minimum RSRP represented by a second layered shape based on each of the one or more layered shapes, and determine an average RSRP of the one or more layered shapes based on each of the one or more layered shapes.
[0145] In some embodiments, the instructions further cause the processor to update the display of the viewport to include an information bar displaying the maximum RSRP, the minimum RSRP, and the average RSRP.
[0146] In some embodiments, a non-transitory computer-readable medium having stored thereon instructions that, when executed by a processor, cause an apparatus to receive a request at a mobile device to launch a network visualization application; output, via a user interface (UI), a graphical user interface (GUI), the GUI including a display of one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality; determine latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; 1. A non-transitory computer-readable medium that causes a computer to: determine a distance of a diagonal line extending from one endpoint to a second endpoint; determine a midpoint of the diagonal line; and, in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance, update a display of a viewport corresponding to a map of a second geographic area without updating one or more shapes that display an indication of network coverage quality; or, in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance, update a display of a viewport corresponding to a map of a third geographic area and update one or more shapes that display an indication of network coverage quality.
[0147] In some embodiments, the instructions further cause the processor to determine a location of the mobile device, wherein the first geographic area displayed on the viewport represents the location of the mobile device.
[0148] In some embodiments, the instructions further cause the processor to determine a latitude and longitude of the waypoint.
[0149] In some embodiments, the waypoint is a first waypoint, and the instructions further cause the processor to determine a latitude and longitude of the first waypoint, and determine a latitude and longitude of a second waypoint in response to updating a display of a viewport corresponding to a map of a third geographic area and updating one or more shapes displaying an indication of network coverage quality.
[0150] The foregoing outlines features of several embodiments so that those skilled in the art may better understand the aspects of the present disclosure. Those skilled in the art will readily appreciate that this disclosure may be used as a basis for designing or modifying other processes and structures to carry out the same purposes and / or achieve the same advantages of the embodiments introduced herein. Those skilled in the art should also recognize that such equivalent constructions do not depart from the spirit and scope of the present disclosure, and that they can make various changes, substitutions, and alterations herein without departing from the spirit and scope of the present disclosure.
Claims
1. 1. A method for network viewport data fetching, comprising: receiving a request at the mobile device to launch a network visualization application; outputting a graphical user interface (GUI) by a user interface (UI), the GUI comprising: and displaying one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality, the method comprising: determining the latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; determining a diagonal distance extending from the first endpoint to the second endpoint; determining the midpoint of the diagonal; and updating the display of the viewport corresponding to a map of a second geographic area without updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance; or and updating the display of the viewport corresponding to a map of a third geographic area and updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance.
2. 2. The method of network viewport data fetching of claim 1, further comprising determining a location of the mobile device, wherein the first geographic area displayed on the viewport represents the location of the mobile device.
3. The method of claim 1 further comprising determining a latitude and longitude of the waypoint.
4. the midpoint is a first midpoint, and the method further comprises: determining the latitude and longitude of the first waypoint; 2. The method of network viewport data fetching of claim 1, further comprising: determining a latitude and longitude of a second waypoint in response to updating the display of the viewport corresponding to the map of the third geographic area and updating the one or more shapes displaying the indication of network coverage quality.
5. determining the distances between the midpoint and the first and second endpoints; updating the display of the viewport to correspond to the map of the third geographic area; 2. The method of claim 1, further comprising: determining distances between the midpoint and third and fourth endpoints in response to updating the one or more shapes displaying the indication of network coverage quality.
6. determining a zoom level of the viewport; in response to the zoom level being greater than a predetermined level, setting the threshold distance to one-quarter of the distance of the diagonal; or 2. The method of network viewport data fetching of claim 1, further comprising: in response to the zoom level being equal to or less than the predetermined level, setting the threshold distance to one-third of the distance of the diagonal.
7. determining a maximum reference signal received power (RSRP) represented by a first layered shape based on each of the one or more layered shapes; determining a minimum RSRP represented by a second layered shape based on each of the one or more layered shapes; The method of claim 1 , further comprising: determining an average RSRP for the one or more layered shapes based on each of the one or more layered shapes.
8. 8. The method of network viewport data fetching of claim 7, further comprising updating the display of the viewport to include an information bar displaying the maximum RSRP, the minimum RSRP, and the average RSRP.
9. 1. An apparatus for network viewport data fetching, comprising: a processor; and a memory storing instructions that, when executed by the processor, cause the device to: receiving a request at the mobile device to launch a network visualization application; A user interface (UI) outputs a graphical user interface (GUI), the GUI comprising: displaying one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality; determining the latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; determining a diagonal distance extending from the first endpoint to the second endpoint; determining the midpoint of the diagonal; and updating the display of the viewport corresponding to a map of a second geographic area without updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance; or and updating the display of the viewport corresponding to a map of a third geographic area and updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance.
10. The instructions further cause the processor to:
10. The apparatus for network viewport data fetching of claim 9, further comprising: determining a location of the mobile device; and wherein the first geographic area displayed on the viewport represents the location of the mobile device.
11. The instructions further cause the processor to:
10. The apparatus for network viewport data fetching of claim 9, further comprising determining a latitude and longitude of the waypoint.
12. The midpoint is a first midpoint, and the instructions further include causing the processor to: determining the latitude and longitude of the first waypoint; 10. The apparatus for network viewport data fetching of claim 9, further comprising: determining a latitude and longitude of a second waypoint in response to updating the display of the viewport corresponding to the map of the third geographic area and updating the one or more shapes displaying the indication of network coverage quality.
13. The instructions further cause the processor to: determining the distances between the midpoint and the first and second endpoints; 10. The apparatus for network viewport data fetching of claim 9, further comprising: determining distances between the midpoint and third and fourth endpoints in response to updating the display of the viewport corresponding to the map of the third geographic area and updating the one or more shapes displaying the indication of network coverage quality.
14. The instructions further cause the processor to: determining a zoom level of the viewport; in response to the zoom level being greater than a predetermined level, setting the threshold distance to one-quarter of the distance of the diagonal; or and setting the threshold distance to one-third of the distance of the diagonal in response to the zoom level being equal to or less than the predetermined level.
15. The instructions further cause the processor to: determining a maximum reference signal received power (RSRP) represented by a first layered shape based on each of the one or more layered shapes; determining a minimum RSRP represented by a second layered shape based on each of the one or more layered shapes; and determining an average RSRP of the one or more layered shapes based on each of the one or more layered shapes.
16. The instructions further cause the processor to:
16. The apparatus for network viewport data fetching of claim 15, further comprising updating the display of the viewport to include information bars displaying the maximum RSRP, the minimum RSRP, and the average RSRP.
17. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed by a processor, cause an apparatus to: receiving a request at the mobile device to launch a network visualization application; A user interface (UI) outputs a graphical user interface (GUI), the GUI comprising: displaying one or more shaped viewports corresponding to a map of a first geographic area and overlaid on the first geographic area, the viewports displaying an indication of network coverage quality; determining the latitude and longitude of a first endpoint at a corner of the viewport and a second endpoint at an opposing corner of the viewport; determining a diagonal distance extending from the first endpoint to the second endpoint; determining the midpoint of the diagonal; and updating the display of the viewport corresponding to a map of a second geographic area without updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being less than or equal to a threshold distance; or and updating the display of the viewport corresponding to a map of a third geographic area and updating the one or more shapes displaying the indication of network coverage quality in response to the distance between the midpoint and either the first or second endpoint being greater than the threshold distance.
18. The instructions further cause the processor to:
20. The non-transitory computer-readable storage medium of claim 17, causing a location of the mobile device to be determined, and the first geographic area displayed on the viewport represents the location of the mobile device.
19. The instructions further cause the processor to:
20. The non-transitory computer-readable storage medium of claim 17, further comprising: determining a latitude and longitude of the waypoint.
20. The midpoint is a first midpoint, and the instructions further include causing the processor to: determining the latitude and longitude of the first waypoint; 20. The non-transitory computer-readable storage medium of claim 17, further comprising: determining a latitude and longitude of a second waypoint in response to updating the display of the viewport corresponding to the map of the third geographic area and updating the one or more shapes displaying the indication of network coverage quality.
Citation Information
Patent Citations
System and Method For Preparing And Exhibiting A Network Coverage Map
US20100085895A1
Apparatus and method for dual-mode wimax / CDMA operation
US20100329181A1
System and Method for Network Topology and Flow Visualization
US20130159863A1
Network Visualization Systems And Methods
US20140365647A1
Data Visualization Implementation
US20180004851A1