Methods and systems for monitoring an access network utilizing mobile network equipment

Methods and systems for monitoring the performance of an access network utilizing mobile network equipment are provided. In some aspects, a network performance monitoring unit is installed within a vessel receiving network service from a network service provider. The network performance monitoring unit measures various aspects of network performance experienced by the vessel as it moves and provides the information to an aggregation facility. The aggregation facility aggregates the network performance data collected from a plurality of vessels and organizes the information based on one or more network service areas associated with the plurality of vessels. By aggregating the vessel specific performance data for vessels associated with a particular network service area, insight into network performance particular to a network service area is improved.

FIELD

Embodiments relate generally to performance measurement of mobile communications systems.

BACKGROUND

Traditionally, high performance networks, such as broadband networks, were available only in fixed locations with access to substantial infrastructure. These fixed locations had access to technical and financial resources necessary to enable high bandwidth. Later, high performance networks became available in residential environments. More recently, high performance networks are becoming available for mobile platforms, including cell phones, and within transportation devices, such as automobiles, trains, and airplanes. As a result, these high performance networks have become essential to many aspects of daily life.

As high performance networking capabilities have been made available to mobile platforms, managing network performance and user satisfaction for these networks has increased in complexity. Therefore, improved methods of characterizing the performance of mobile network services are needed.

BRIEF SUMMARY

Disclosed are methods and systems for monitoring performance of network services provided to mobile network service consumers. In some aspects, the disclosed methods and systems display network performance information for one or more network service areas. The network service area performance information may be based, in some aspects, on an aggregation of performance data specific to vessels traveling through the network service area. By providing ready access to network service area performance information, more trust and transparency can be created between a network service provider and its customers. The availability of network service area performance information may help to reduce the number of calls made by customers to a network service support center, further increasing customer satisfaction and reducing costs for the network service provider.

The network service area information that is provided may also include indications of the high value being provided by the network service provider. For example, the network service area performance information may indicate the number of customers served, a percentage of time the network was available to customers, a percentage of time service level agreements with the customers were met (service adherence), or other positive indications that the network service provider is delivering a high level of value. Such network service area performance information may also be utilized during customer acquisition, by demonstrating the reliability and performance of a provider's networks.

The network service area performance information may be obtained or derived from vessels (including one or more of vehicles, boats, trains, aircraft, etc) associated with the one or more network service areas, from ground based network elements and data center(s), as well as from satellite(s), vessels, and combinations thereof. For example, in some aspects, as a vessel travels through a network service area, it may collect one or more forward link vessel specific metrics indicating a level of network service available within the network service area to the vessel. For example, the vessel may collect one or more of a service availability measurement, packet loss statistics, delay statistics (such as latency measurements), throughput statistics, and other metrics indicative of network performance experienced by the vessel within the network service area. These one or more vessel specific metrics may be transmitted over one or more communication links between the vessel and an access network, and then to a metrics aggregation data center.

Computers in the metrics aggregation data center may then process the network service area performance information in various ways. For example, the vessel specific metrics associated with a particular network service area may be aggregated with metrics from additional vessels in the network service area to generate one or more metrics representing the overall performance of the network service area, from the perspective of the one or vessels within or associated with the service area. For example, the aggregation of the vessel specific metrics may include determining an average or median value, and/or variance value for the one or more vessel specific metrics. One or more indicator(s) may then be presented for display based on the aggregated value(s).

The aggregated data may be presented in one of at least two forms. In some aspects, the aggregated data may be presented as a dashboard, which may include one or more tables indicating the metrics. For example, in some aspects, a dashboard including indicators of a plurality of network service areas, and indicators of each of the plurality of network service area's performance may be displayed within the table.

In some aspects, the aggregated data may be presented in graphical form. For example, in some aspects, a map of a geographic region may be provided for display on an electronic display. Boundaries of a plurality of network service areas may be displayed at their respective positions on the map. In some aspects, the indicators discussed above may be displayed within boundaries of their respective network service areas. For example, in some aspects, the indicators may be various colors within the boundaries of the network service areas, with different colors corresponding to different levels of performance of the network service within the respective boundaries. For example, green network service areas may indicate nominal network performance in those network service areas, while yellow and red may indicate progressively reduced performance relative to green network service areas. Further, similar indicators may be used to convey the status of performance of the network or components residing in the vessel.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth to provide a thorough understanding of the present disclosure. However, one having ordinary skill in the art should recognize that the disclosure can be practiced without these specific details. In some instances, circuits, structures, and techniques have not been shown in detail to avoid obscuring the present disclosure.

FIG. 1Ashows a simplified diagram of a communications system100, which provides a context for various embodiments. Many other configurations are possible having more or fewer components than the communications system100ofFIG. 1A. In the illustrated embodiment, the communications system100includes a plurality of vessels110a-c, inFIG. 1Ashown as airplanes, which are in communication with a terrestrial network160via satellites105a-b, and gateways150a-b. The vessels110a-ccan include a two-way communication system to facilitate bidirectional communication with each of the respective satellites105a-b. Each of the vessels110a-cmay be associated with one or more network service areas, shown inFIG. 1Aas network service areas106a-b. In some aspects, the vessels110a-cmay be associated with one or more of the network service areas106a-bbased on a present location of the vessels110a-c. For example, in some aspects, if a vessel110a-cis within a geographic region associated with one of the network service areas106a-b, then the vessel is associated with the one network service area. In some other aspects, a vessel110a-cmay be associated with one or more of the network service areas106a-bbased on origin or destination of the vessel.

Each of the vessels110a-care in communication with a data center170via the network160. In some aspects, a network performance monitoring unit140aand/or140bmay be positioned in the communication path between one or more of the vessels110a-cand the network160, so as to monitor return link performance for one or more of the vessels110a-c.

The data center170may include one or more electronic hardware computers, discussed below. The vessels110a-cmay transmit vessel specific performance information indicating one or more characteristics of network performance experienced by the vessel while being serviced by a particular network service area. The vessel specific performance information may flow from the vessels110a-c, to one of the satellites105a-b, to one of the gateways150a-b, to the network160and then to the data center170and the one or more electronic hardware computers within.

In some aspects, one or more of the vessels110a-cmay include position determination devices, such as an inertial measurement unit (IMU) or global positioning system (GPS). These devices, if installed, may allow the vessel to determine its position. Alternatively, other techniques for determining the vessels position may be used. For example, in embodiments in which the satellite is a spot beam satellite, the vessel may be able to derive its location based on the spot beam being used to communicate with the network160. The vessel110a-cmay transmit its position information to the data center170in some aspects. The position information may be associated with vessel specific metrics that are collected near or at the reported position. This may allow the data center170to correlate particular vessel specific metrics with specific network service areas based on the associated position.

The data center170may provide a user interface to a monitoring station180. In some aspects, the monitoring station180may be within the data center170but inFIG. 1A, the monitoring station180is illustrated connecting to the data center170via the network160. The data center may provide a user interface to the monitoring station180similar to the example embodiments shown inFIGS. 2, 3, 4, 5, 6A-B, and/or7A-C discussed below.

In the illustrated embodiment, the vessels110a-care airplanes. Alternatively, the vessels110a-cmay be other than an airplane, such as a train, bus, cruise ship, other type of vehicle, etc. As illustrated, the network160can be any type of network and can include for example, the Internet, an IP network, an intranet, a wide area network (WAN), local area network (LAN), a virtual private network (VPN), a virtual LAN (VLAN), a fiber optic network, a cable network, a public switched telephone network (PSTN), a public switched data network (PSDN), a public land mobile network, and/or any other type of network supporting communication as described herein. The network160can include both wired and wireless connections as well as optical links.

While three vessels110a-care shown in communication via two satellites, techniques described herein can be applied in many other communications environments without departing from the scope of the inventions. For example, one or more vessel(s)110a-ccan include airplanes, trains, buses, cruise ships, etc. Any or all such vessel(s)110can communicate via any one or more suitable communications architecture(s) including any suitable communications links or access networks, such as satellite communications systems, air-to-ground communication systems, hybrid satellite and air-to-ground communications systems, cellular communications systems, etc. Typically, because of the mobile nature of the vessels110, the communications architecture will likely involve at least one wireless communications link.

FIG. 1Bshows another view of the communications system100including a detailed block diagram of one example embodiment of the vessel110a. The vessel110acan include a two-way communication system112to facilitate bidirectional communication with the satellite105a. In the illustrated embodiment, the two-way communication system112includes an antenna system170, transceiver172, modem174, network performance monitoring unit140c, wireless access point (WAP)178, and one or more personal electronic devices120a-n.

The two-way communication system112can provide for reception of a forward downlink signal from the satellite105and transmission of a return uplink signal to the satellite105to support two-way data communications between personal electronic devices120within the transport craft110and the terrestrial network160. The personal electronics devices120can include smartphones, laptops, tablets, netbooks, and the like brought onto the transport craft110by passengers or crew. As further examples, the personal electronic devices120can include passenger seat back systems or other devices on the transport craft110, including passenger and/or crew devices. The personal electronic devices120can communicate with the network160via a communication link that can be wired and/or wireless. The communication link can be, for example, part of a local area network such as a wireless local area network (WLAN) supported by WAP178. One or more WAPs178can be distributed about the transport craft110, and can, in conjunction with network access unit140, provide traffic switching and routing functionality; for example, as part of a WLAN extended service set (ESS), etc.

In operation, the network access performance monitoring unit140cinstalled within the vessel110acan provide uplink data received from the personal electronic devices120to the modem174to generate modulated uplink data (e.g., a transmit intermediate frequency (IF) signal) for delivery to the transceiver172. The transceiver172can upconvert and then amplify the modulated uplink data to generate the return uplink signal for transmission to the satellite105avia the antenna system170. Similarly, the transceiver172can receive the forward downlink signal from the satellite105avia the antenna system170. The transceiver172can amplify and downconvert the forward downlink signal to generate modulated downlink data (e.g., a receive IF signal) for demodulation by the modem174. The demodulated downlink data from the modem174can be provided to the network performance monitoring unit140cfor routing to the personal electronic devices120. The modem174can be integrated with the network performance monitoring unit140c, or can be a separate component in some examples.

The network performance monitoring units140a-cdiscussed with respect toFIGS. 1A-Bmay include, in some aspects, an electronic hardware processor and an electronic hardware memory, and one or more network interfaces. The electronic hardware processor may be configured to perform a variety of functions associated with monitoring the network performance of the communications system100with respect to the vessel110a.

In some aspects, any of the network performance monitoring units140a-cmay be configured to generate vessel specific performance data and transmit the vessel specific performance data over an access network. One or more metrics included in the vessel specific performance data representing the measured performance may be generated by any of the network performance monitoring units140a-c.

In some aspects, the vessel specific performance data may indicate one or more metrics, the one or more metrics including one or more of a number or average number of dropped packets, average throughput or delays during a time period, an availability of network service during a time period, and a maximum number of personal electronic devices (PEDs) connected. In some aspects, the availability of network service may be represented in some aspects as a percentage of time that network service was available to the network performance monitoring unit140c. In some aspects, the vessel specific performance data may indicate an availability of one or more of uplink and/or downlink communications.

One or more of the network performance monitoring units140a-cmay be further configured to periodically re-determine one or more of the metrics described above. For example, in some aspects, a moving average of one or more of the metrics may be determined at a periodic interval. In some aspects, one or more of the network performance monitoring units140a-cmay be further configured to periodically report one or more of the metrics to the data center170. In some aspects, the network performance monitoring units installed on a vessel, such as network performance monitoring unit140c, may be configured to calculate forward link vessel specific performance data, while the network performance monitoring units installed off board the vessels110a-c, such as network performance monitoring units140a-b, may be configured to calculate return link vessel specific performance data.

One or more of the network performance monitoring units140aor140cmay also be configured to monitor a location of the vessel110aand to periodically report the location of the vessel110aover the access network to the data center170, discussed above with respect toFIG. 1A. In some aspects, the network performance monitoring units140aor140cmay associate one or more of the network performance metrics with one or more vessel110alocations, and report the association to the data center170.

In some aspects, one or more of the satellite105, gateway150a, or other ground based network equipment (not shown inFIG. 1B) may be configured as the network performance monitoring unit140a, and thus may generate return link vessel specific performance data. For example, in some aspects, the network performance monitoring unit140amay be a router, or other type of network equipment, and may be positioned at one end of a communication link providing network communication to a vessel. The router may be configured to determine vessel specific performance data by filtering data transmitted over the communication link to include only data destined for or received from a particular vessel. The router may determine return link vessel specific performance data such as return link latency, throughput, dropped packet count or percentage, retransmission count or percentage, jitter, or other indicators of vessel specific return link performance. In these aspects, the satellite105, gateway150a, or other ground based network equipment may be configured to send the vessel specific performance data to the data center170.

FIG. 2is a user interface provided in an exemplary embodiment. The user interface200shows a plurality of network service areas201a-g. In various embodiments of the user interface shown inFIG. 2, boundaries202a-gof the plurality of network service areas201a-gmay be either statically or dynamically formed. The dynamically formed boundaries may be formed so as to include vessels with travel paths including common origins and destinations. For example, network service area201gmay include vessels traveling along an eastern corridor of the United States. Network service area201amay represent a western travel corridor. In some aspects, the boundaries202a-gmay be dynamically determined based on a direction of travel, and/or heading of the vessels, and the vessels positions relative to one another. For example, in some aspects, vessels on a similar heading and within a proximity to each other may be grouped within the same network service area. In some aspects, the grouping may also be determined by a distance from non-grouped vessels exceeding a threshold. The boundaries202a-gmay then be determined so as to include vessels in the same groups.

FIG. 3is a user interface displaying exemplary service areas and their associated boundaries. In the aspect shown inFIG. 3, the boundaries of the network services areas251a-fare static. For example, in some aspects, the boundaries of the service areas251a-fmay be based on governmental jurisdictions, such as city, county, state, or other governmental boundaries.

In some aspects of user interfaces200and250, an indicator of aggregated service performance information for one or more of the network service areas201a-gand/or251a-fmay be displayed. For example, in some aspects, the indictor may take the form of a color of the network service areas shown inFIGS. 2 and 3. For example, a fill pattern (hashes or dots for example) of the network service areas201a-gofFIG. 2, or an icon within the network service areas201a-gofFIG. 2may indicate the aggregated service performance information. In some embodiments, indications of network availability for each of the network service areas201a-gand/or251a-fmay be shown using different fill patterns or colors in various embodiments.

The user interfaces200and250may facilitate troubleshooting by a network service provider in an environment that incorporates highly mobile network equipment, such as that installed on jet airliners. Without a user interface such as the user interface200ofFIG. 2Aor user interface250ofFIG. 3, identifying a root cause of some network anomaly reports may be challenging. For example, if a network anomaly is associated with a particular satellite servicing a particular geographic area, network anomaly reports may be received from a variety of aircraft attempting to use the particular satellite. The reports may be received at some time after the anomaly occurs, making it challenging to understand if multiple anomaly reports received from multiple different vessels are in any way related. With interface200or250, by examining performance indicators associated with each of the network service areas201a-g, or251a-f, a network operator may be able to determine whether a network performance anomaly is network wide, isolated to one particular network service area, or may be common to two or more (possibly adjacent?) network service areas.

FIG. 4shows an exemplary embodiment of a user interface provided in some aspects of the disclosed methods and systems. The user interface300ofFIG. 4displays example aggregated service performance information in a table302. This aggregated service performance information includes a number of flights currently served305a, a number of flights served within the last 24 hours305b, a number of passenger electronic devices (PED) connected currently310a, a number of passenger electronic devices connected within the last 24 hours310b, an aggregated current data rate for data transmitted in a first direction (in the illustrated embodiment, a current data rate for data transmitted from one or more ground based access networks to airborne vessels)315a, and an aggregated amount of data transmitted in the first direction (in the illustrated embodiment, an aggregated amount of data transmitted from one or more ground access networks to one or more airborne vessels)315b, an aggregated data rate for data transmitted in a second direction (in the illustrated embodiment, a rate of data transmitted from one or more airborne vessels to one or more ground access networks), and an aggregated amount of data transmitted in the second direction (in the illustrated embodiment, an aggregated amount of data transmitted from one or more airborne vessels to one or more ground based access networks). As discussed in more detail below, the aggregated service performance information305a-b,310a-b,315a-b, and320a-bmay be determined based on data received from the vessels110a-cofFIG. 1A.

FIG. 5shows another exemplary embodiment of a user interface provided by some aspects of the disclosed methods and systems. The user interface350displays metrics representing aggregated service performance information for a plurality of network service regions in a table352format. The plurality of network service areas355a-eare individually identified on the left side of the table352. In the example ofFIG. 5, aggregated service performance information for different days are shown in day specific columns360a-g. Each day includes aggregated service performance information including a service availability percentage365of the respective network service area, a maximum number of personal electronic devices370connected within the respective service area, a percentage of time when a service level agreement was met (service adherence)375by the respective network service area, and an alert indication380for the respective network service area. WhileFIG. 5shows a service level agreement metric375, in some aspects, both a forward link service level agreement percentage and/or a return link service level agreement percentage may be displayed. The metrics shown inFIG. 5may be based on vessel specific performance data for a plurality of vessels within the respective network service area (corresponding to one of network service areas355a-e).

In some aspects, whether an alert indication380is shown for a network service area355a-emay be based on a value of a metric aggregating performance data specific to vessels associated with the network service area. In some aspects, the values relationship to an alert threshold may be determined by a comparison to the threshold and used to determine whether an alert indication is shown. Several types of alert indicators380may be displayed, including a nominal performance indicator385a, a maintenance alert indicator385b, a weather alert indicator385c, an outage alert indictor385d, and an event indicator385e.

FIG. 6Ais an exemplary user interface in at least one of the disclosed embodiments. The user interface600presents aggregated service performance information for a network service area. The aggregated service performance information may include one or more metrics. The aggregated service performance information may be based on data aggregated from a plurality of vessels operating with the network service area. In the exemplary embodiment ofFIG. 6A, the user interface600includes a number of flights served indication602, an indication of the types of devices served604, an indication of service level agreement (SLA) adherence and service availability606, and a summary608of the indications602,604, and608over various periods of time, presented in a tabular format.

The indication602may present a number of vessels or, in some aspects, flights, served during a period of time by a particular network service area. In some aspects, the period of time may be one hour, one day, one week, or one month. As shown, the period of time is a calendar month. The indication602includes a plurality of indications612a-cfor a plurality of time periods. Not all indications are labeled inFIG. 6Ato preserve figure clarity.

The indication604may be in the form of a pie chart in some aspects, and may display a percentage of devices utilizing the network service that are a particular type. For example, the devices may be characterized in terms of their form factor or classification as mobile, tablet, or laptop in some aspects. Other categorizations are contemplated.

The indication606may take the form of a graph in some aspects, as is shown inFIG. 6A. The indication606includes two graphs,618a-b. Graph618ashows an aggregated service level agreement adherence metric over time. The graph618amay be based on aggregated data from a plurality of vessels within the service area. The graph618bshows availability of the network service over the period of time. Whether the network service is available or not may be determined based on one or more aggregated service performance information meeting one or more criteria, as described below with respect to Table 1.

The summary608includes aggregated data for a number of flights served, passenger devices connected, an SLA adherence percentage, and a service availability percentage over time periods of one or more of a previous 24 hours, previous week, previous month, year to date, and a lifetime. In some aspects, the lifetime values may represent values accumulated since the service area was first created.

Each of the indications602,604,606, and608may be based on service performance information for vessels associated with or within a network service area. This service performance information may be calculated on the vessel itself, for example, via the network performance monitoring unit140c, or via other network equipment, such as the gateway150aor network performance monitoring unit140a. The data from the multiple vessels may then be aggregated to generate one or more of the indications602,604,606, and608.

FIG. 6Bshows a second version of the user interface600. The second version of the interface600shows an exemplary hover window652that may be presented in some aspects when a pointing device is placed over the indication602. The hover window652shows values for each individual time period displayed in the indication602.

FIG. 7Ais an exemplary user interface that may be displayed in at least one of the disclosed embodiments. Exemplary user interface700presents network service availability information for network services within different geographical regions. The network service availability information is provided for a plurality of geographical regions along the rows of user interface700, shown as710a-f. For each geographical region, aggregated data is provided for a plurality of time periods712a-g. While exemplary user interface700shows the plurality of time periods712a-gas days, in other aspects the time periods may be minutes, hours, weeks, months, or any time period.

In some aspects, if the aggregated service availability information for a particular region during a particular time period meets a criteria, a first icon may be displayed. If the availability information for the particular region during the particular time period does not meet the criteria, a second icon may be displayed. As shown, when the service availability is acceptable, for example, it is above a threshold percentage of time, a green check mark720is displayed. Alternatively, when the service availability does not meet the acceptable criteria (for example, it is equal to or below the threshold percentage of time), a different icon is shown, such as the triangular event icon722.

FIG. 7Bshows a second version of the exemplary user interface ofFIG. 7A.FIG. 7Bshows a hover window752that may be displayed when a pointing device is placed over a particular triangular event icon722of the user interface700. The hover window752may display information such as the type of event, a start time of the event, and end time of the event, a duration of the event, a description of the event, and a current status of the event.

FIG. 7Cshows an exemplary user interface that may be displayed in at least one of the disclosed embodiments.FIG. 7Cshows one embodiment of a maintenance calendar750. The methods and systems disclosed may display one or more icons on the maintenance calendar750to indicate one or more events on a particular day. For example, as shown, a notification icon752may be displayed to indicate a user notification about network news, status, the company providing the network service, or other information. A maintenance icon754may be displayed on some days to indicate maintenance may be performed on the network service on that day.

FIG. 8shows another view of the communications system100including a detailed block diagram of one example embodiment of the data center170. Many other configurations of the data center170are possible having more or fewer components. As shown inFIG. 8, the data center170includes at least one hardware computer802. In some aspects, the hardware computer802may be comprised of multiple physical computers, which may be geographically distributed across a wide area and connected via a network. In some aspects, the hardware computer802may be a single hardware computer contained within a single physical enclosure. In some aspects, the hardware computer802may be comprised of multiple physical enclosures, some of which are within the data center170and some of which are geographically distributed away from the data center170. Additionally, the functionalities described with respect to the hardware computer802can be distributed among the components in a different manner than described herein.

Consistent withFIGS. 1A-B, in some embodiments, vessel specific performance data for one or more vessels may be received by the satellite105afor example, and then received by the data center170and the electronic hardware computer802within the data center170. The illustrated aspect of the electronic hardware computer802includes an electronic hardware processor805, and a network interface810. The processor805may be in communication with the network interface810via an electronic bus within the electronic hardware computer802(not shown). The processor805may communicate with the network interface810to transmit and/or receive packets over a network, such as a network providing connectivity to the vessels110a-cdiscussed above with respect toFIG. 1A.

The electronic hardware computer802also includes a metrics collector815, metrics aggregator820, a UI data generator825, and a web server830. The metrics collector815, metrics aggregator820, UI data generator425, and web server830may be portions of a volatile or stable storage, such as a virtual or physical memory space accessible to processor805. The metrics collector815, metrics aggregator820, UI data generator825, and the web server430may include binary data defining instructions that configure the processor805to perform various functions. For example, the metrics collector815may include instructions that configure the processor805to receive vessel specific performance data for a plurality of communication links between an access network and a corresponding plurality of vessels. For example, the metrics collector815may receive one or more network messages transmitted by one or more of the network performance monitoring units140a-c, discussed above with respect toFIGS. 1A-B. Each of the network messages may indicate forward link and/or return link vessel specific performance data including one or more metrics. In some aspects supporting multiple vessels110, the metric collector815may receive metrics from a plurality of network performance monitoring units140, for example, data may be received from a network performance monitoring unit140installed within each of the vessels.

The metrics aggregator820may store instructions that configure the processor805to aggregate the vessel specific performance data received by the metrics collector815to determine one or more values of aggregate service performance metric(s) associated with the first network service area. In some aspects, the metrics aggregator820may aggregate vessel specific performance data for vessels associated with a particular service area to generate the aggregated service performance metric. An individual aggregated service performance metric may be generated by the metrics aggregator for each of a plurality of service areas, based on the vessels associated therewith.

The user interface data generator825may include instructions that configure the electronic hardware processor805to generate user interface data defining a user interface that can be displayed on the monitoring station180shown inFIG. 1A. The UI data generated by the generator825may be based on the aggregated metrics produced by the metrics aggregator820. For example, the user interface data generator925may generate data defining the user interface200,250,300,350,600, and/or700as shown above inFIGS. 2, 3, 4, 5, 6A-B, and7A-C respectively. The web server830may include instructions that configure the processor805to provide data generated by the UI data generator825over an access network to the monitoring station180shown inFIG. 1A. For example, in response to receiving the data from the web server430, the monitoring station180may display the user interface200,250,300,350,600, or700as shown above inFIG. 2, 3, 4, 5, 6A-B, or7A-C.

FIG. 9is a flowchart of a method for monitoring the performance of network services to vessels traveling within a plurality of network service areas of an access network. In some aspects, one or more of the functions discussed below with respect to process900andFIG. 9may be performed by the processor805, configured by instructions stored in one or more of the metrics collector815, metrics aggregator820, UI data generator825, and/or web server830.

In various aspects, the vessels may be one or more of airplanes, trains, automobiles, trucks, ships, and motorcycles. In some aspects, the network services monitored by process900may be utilized by portable electronic devices120, such as cellular phones or tablet computers may be managed by the process ofFIG. 9. The access network may incorporate one or more of an IP network, an intranet, a wide area network (WAN), local area network (LAN), a virtual private network (VPN), a virtual LAN (VLAN), a fiber optic network, a cable network, a public switched telephone network (PSTN), a public switched data network (PSDN), a public land mobile network, and/or any other type of network supporting communication as described herein. The access network can include both wired and wireless connections as well as optical links.

In some aspects, at least one of the plurality of network service areas may overlap with at least one other of the plurality of network service areas. For example, in some aspects, one or more of the plurality of network service areas may be defined by groups of vessels with common origin and destinations along travel routes for the vessels. For example, vessels traveling between New York City and Washington D.C. may be associated with a first network service area, while vessels traveling between New York City and Buffalo, N.Y. may be associated with a second network service area. In this example, the first and second network service areas may overlap, at least in a region in proximity to New York City.

In some aspects, the network service areas may not overlap. For example, in some aspects, each of the network service areas may be defined by geographical boundaries, with the geographical boundaries defining non-overlapping geographical areas. As a simple example, in some aspects, the plurality of network service areas may be defined by static governmental boundaries within a geographic region, such as by the boundaries of countries, states, cities, or counties.

In some aspects, geographic boundaries for the plurality of network service areas may be dynamically determined. For example, in some aspects, vessels with similar routes of travel may be grouped into a common network service area. The grouping may be based on a heading and/or direction of travel of each of the vessels in some aspects.

In block905, vessel specific performance data for each of a plurality of corresponding vessels is obtained. Each of the vessel specific performance data may be for one or more communication links between the access network and the corresponding vessel. In some aspects, the vessel specific performance data is obtained from the metrics database840, discussed above with respect toFIG. 8. At least a portion of the plurality of vessels may be associated with a first network service area of the plurality of network service areas. The plurality of vessels may be a subset of a second plurality of vessels, with the second plurality of vessels including vessels both associated with and not associated with the first network service area.

In some aspects, block905may include receiving network messages from the plurality of vessels. For example, block905may include receiving network messages from network performance monitoring units (e.g.140c) within each of the vessels. Each network message from a particular vessel of the plurality of vessels may indicate at least a portion of vessel specific performance data for a communication link used by the vessel. Block905may include decoding the messages and storing the vessel specific performance data in a database, such as the metrics database840discussed above with respect toFIG. 8.

In some aspects, block905includes filtering the second plurality of vessels based on one or more of a location of each of the vessels, and an origin or destination of the vessels along a travel route of each of the vessels, in order to determine which of the second plurality of vessels are associated with the first network service area, and are thus included in the first plurality of vessels. For example, in some aspects, block905includes associating at least a portion of the plurality of vessels with the first service area based on one or more of an origin and destination along a corresponding travel route of the vessels.

In some aspects, block905may include associating each of the plurality of vessels with the first service area based on a location of each of the plurality of vessels. For example, the plurality of vessels may each have a location within a geographic region of the first service area. In some aspects, block905includes associating each vessel in the second plurality of vessels with one or more of the plurality of service areas based on similar criteria as that discussed above. For example, each vessel in the second plurality of vessels may be associated with one or more of the plurality of network service areas based on one or more of an origin or destination location along a travel route of the corresponding vessel, and/or a location of the vessel.

Some aspects of block905include obtaining a location of each of the plurality of vessels. For example, in some aspects, each of the vessels may report its position over an access network to the data center170discussed above with respect toFIG. 9. These locations may be stored in a database as they are received. The vessels may be grouped based on the reported location information. For example, in some aspects, vessels moving with similar headings (in similar directions) and in similar locations may be grouped within the same group. In some aspects, vessels moving in generally opposite directions (or directions that are substantially 180 degrees different) and within a similar location (within a proximity of each other) may be grouped. Geographic boundaries of the plurality of network service areas may then be determined based on the groups of vessels. For example, in some aspects, each group determined above may define a network service area. In some aspects, some groups may be aggregated into a common network service area. For example, groups of vessels within a proximity of each other may be further grouped into network service area. In some aspects, groups within a proximity of each other that are also not within a second proximity of another one or more vessels may be grouped into a common network service area. Geographic boundaries of each of the plurality of network service areas may then be determined based on the grouping.

In some aspects, the vessel specific performance data may indicate one or more forward link and/or return link metrics, the one or more metrics including one or more of a number or average number of dropped packets or retransmissions detected within the first network service area, average throughput, latency (delays), and/or jitter during a time period within the first network service area, an availability of a network service within the first network service area during a time period, a number or percentage of packet errors (such as checksum or cyclic redundancy check (CRC) errors) detected within the first network service area, and a maximum number of personal electronic devices (PEDs) connected during travel on the vessel. In some aspects, the availability of network service may be represented in some aspects as a percentage of time that a network service was available to a vessel reporting the vessel specific performance data. In some aspects, the forward link metrics received in block905may be determined by a network performance monitoring unit140cinstalled within a vessel, whereas the return link metrics received in block910may have been determined by a network performance monitoring unit140athat is off-board the vessel, for example, as shown inFIGS. 1A-B. In some aspects, the network performance monitoring unit140may be integrated as part of a gateway150or satellite105for example. In some aspects, block905may be performed by instructions included in the metrics collector815ofFIG. 8that configure the processor805to perform one or more of the functions described above with respect to block905.

In block910, the vessel specific performance data is aggregated to determine a value of an aggregate service performance metric associated with the first network service area. In some aspects, aggregating metrics is equivalent to averaging the metrics or obtaining a median value of the metrics. In some aspects, aggregating metrics may include summing the metrics. In some aspects, block910aggregates vessel specific performance data of a common type. For example, dropped packet counts for each vessel with the first network service area may be aggregated. Latency information for all vessels within the network service area may be aggregated separately from dropped packet count data. In some aspects, return link metrics of a particular type are aggregated with forward link metrics of the particular type. In other aspects, return link metrics of the particular type are aggregated separately from forward link metrics of the particular type.

In some aspects, the vessel specific performance data includes a first metric of a first type and a second metric of a second type for each of the plurality of vessels. For example, in some aspects, each of the first metrics may indicate a number of dropped packets, while each of the second metrics may indicate a network availability of the network service for each of the vessels. In some aspects, aggregating the vessel specific performance data includes averaging or finding a median value of both the first metrics and the second metrics separately to determine two different aggregated service performance metrics. Thus, in some aspects, the second aggregated service performance metric may represent an average or median availability of an access network within the first network service area. In some aspects, values of aggregated service performance metrics are determined for multiple network service areas in block910. Each of the values for the aggregated service performance metrics for the multiple network service areas would be determined based on vessel specific performance data for vessels within each of the individual network service areas.

In some aspects, when aggregating metrics relating to a number of personal electronic devices served on a particular vessel within a service area, the value of the aggregated service performance metric may represent a maximum number of personal electronic devices (PEDs) connected for a flight within the network service area. Aggregating in these aspects may include identifying the maximum number of PEDs across vessels associated with the first network service area.

In some aspects, block910may generate one or more aggregated service performance metrics for the first network service area, with each aggregated metric based on, for vessels within the first network service area, one of the vessel specific metrics described above with respect to block905.

In block920, a first indicator is provided for display on an electronic display. Providing the first indicator for display may include transmitting data representing the first indicator over a computer network to a device that may directly display the indicator on an electronic display. In some other aspects, providing for display may include writing data representing the indicator over a communications port directly connected to the electronic display. The indicator is based on a value of the aggregate service performance metric determined in block910.

The first indicator may be provided in response to a comparison of the aggregate service performance metric with a threshold. In some aspects that aggregate vessel specific availability metrics as described above, the threshold may be a network availability threshold. For example, in some aspects, the threshold may be set based on a target or contractual objective for an average network availability. When the aggregated network service availability of vessels within a service area drops below the threshold, the indicator may be provided for display in order to draw attention to the network service area with lower than desired network availability. In some aspects, when the availability drops below a threshold, one or more of the outage indicators or performance degradation indicators illustrated inFIG. 5may be displayed in some aspects. In some aspects, the performance degradation indicator may be displayed if availability is below a first threshold, and the outage indicator may be displayed if availability is below a second threshold lower than the first threshold.

In aspects that determine multiple aggregated service performance metrics for a network service area as discussed above, multiple indicators may be provided for display. In some aspects, each of the multiple indicators may be provided for display based on a comparison of the respective aggregated service performance metric to a corresponding threshold. In other words, each aggregated service performance metric may have associated with it an individual threshold used for comparison and display of a corresponding indicator.

In some aspects, one or more aggregated service performance metrics may be compared to an individual threshold, with the indicator based on the comparison. For example, in some aspects, separate service level adherence and/or service level availability metrics may be provided for return link and forward link data. Contractual agreements may also define separate forward link and/or return link thresholds for service level availability and/or service level adherence. Block920may compare one or more of the forward link metrics to a corresponding forward link threshold to generate the indicator. Block920may in addition to or alternatively compare one or more of the return link metrics to a corresponding return link threshold to generate the indicator in some aspects.

In some aspects, block920includes providing a map of a geographic region for display on the electronic display. Geographic boundaries for the plurality of network service areas may then be overlaid at their respective positions on the map. An example of this is shown inFIGS. 2 and 3above. In these embodiments, the indicators discussed above may be displayed on the map at locations associated with the indicators. For example, in embodiments displaying an indicator based on the aggregate vessel specific performance data, the indicator may be displayed within the first network service area on the map, since the value determined in block910is based on information from vessels associated with the first network service area. For example, in some aspects, block920may present for display, portions of the map corresponding to different network service areas in different colors or fill patterns depending on a value of an aggregate service performance metric for each network service area, as shown in the example ofFIGS. 2 and/or 3.

Some aspects of block920include providing, for display on the electronic display, a table. For example, at least a portion of a table such as one or more of tables300and/or350and/or608, and/or708that are shown inFIG. 4,FIG. 5,FIGS. 6A-B, orFIG. 7A-Crespectively, may be provided for display in block920. The plurality of metrics may be provided for display on the electronic display within the table in some aspects. For example, as shown inFIG. 5, in some aspects, a plurality of indicators380may be provided for display within the table. Each of the plurality of indicators may correspond to one of the plurality of metrics. Each of the plurality of indicators may be determined in response to comparing the corresponding metric to a threshold.

Some aspects may display indicators for a network service area that are unrelated to the vessel specific performance data obtained from vessels. For example, in some aspects, a database indicating scheduled maintenance for one or more network service areas may be read to determine whether a maintenance alert should be displayed for a particular network service area. In some aspects, a weather database may be consulted to determine if a weather indicator should be presented for display for one or more network service areas. For example, in some aspects, a database maintained by the national weather service may be consulted to determine if there is thunderstorm, rain, or other participation within one or more of the network service areas. A weather indicator may be displayed based on the degree of activity within the region in some aspects.

In some aspects, block920includes providing for display at least any portion of any of the user interfaces shown inFIGS. 2, 3, 4, 5, 6A-B, and/or7A-C. In some aspects, the first indicator may also be provided for display on any of the user interfaces discussed above with respect toFIGS. 2, 3, 4, 5, 6A-B, and/or7A-C.

Table 1 below provides an exemplary summary of how the metrics generated and displayed by the disclosed systems and methods may be described.

One or more of the vessel specific metrics listed in column (A) of Table 1 may be obtained in block905. Block910may aggregate, across multiple vessels within a particular network service area, any of the metrics in a single row listed in column (A). As discussed previously, forward link and/or return link versions of any of the metrics listed in column (A) may be aggregated separately from each other or together.

In some aspects, block920may compare the aggregated metric of a particular row to the threshold defined in column (D) of table 1. One or more indicators presented for display by block920may be based on the result of the comparison between the aggregation of a metric in column (A) and the threshold shown in column (D), with an exemplary result shown in column (E). In some aspects, one or more of the indications displayed by block920may be based on columns (D) and/or (E) of Table 1.

In some aspects, block920may present for display, indicators of return link and/or forward link throughput metrics as described above in Table 1 to provide items315a-band320a-brespectively as shown inFIG. 4.

In some aspects, block920may present for display, indicators of the maximum number of personal electronic devices as described above in Table 1 to provide row(s)370described above with respect toFIG. 5. One or more of the metrics described above in Table 1 may be utilized to provide the service availability percentage data365and/or the SLA % data375also shown above with respect toFIG. 5. The alerts380shown inFIG. 5may also be presented for display based on one or more of the metrics shown above in Table 1.

In some aspects, block920may present for display, indictors618aand/or618bshown inFIGS. 6A-Bbased on one or more of the metrics shown in Table 1. For example, indicator618bmay be based on the network service availability metric (or the network service availability metric aggregated across vessels within a service area) shown in Table 1 above in some aspects. In some aspects, indicator618amay be based on comparing the aggregated network service availability metric generated, in some aspects, by block910, to the threshold shown in column (D) of Table 1.

In some aspects, process900may determine service level agreement metrics, such as indicator618aofFIG. 6Bbased on at least a portion of the data presented in Table 1 above. In some aspects, additional data, such as at least a portion of that presented in Table 2 below may determine service level agreement metrics such as indicator618bshown inFIG. 6B.

TABLE 2(A)(B)Aggregated MetricSLA Requirementpacket loss for a networkLower than a packet lossservicethreshold 99.5% of the time.packet errors for a networkLower than a packet errorservicethreshold 99.5% of the time.retransmissions for a networkLower than a retransmissionservicethreshold 99.5% of the time.jitter for a network serviceLower than a jitter threshold99.5% of the time.throughput for a networkHigher than a throughputservicethreshold 99% of the time.latency for a network serviceLower than a latencythreshold 99% of the time.number of personalHigher than a PED thresholdelectronic devices for a99.5% of the time.network servicenetwork service availabilityAvailable 99% of the time.for a network service

In some aspects, block920may determine a service level agreement (SLA) adherence metric, such as that shown as618aofFIG. 6Bbased on one or more of the metrics and SLA requirements shown in Table 2 above. For example, for a particular time period, block920may determine whether the SLA requirements for each or at least some of the metrics of Table 2 meet the SLA requirement shown in column (B) of Table 2. In some aspects, if any of the metrics do not meet their SLA requirements, then block920may consider the service level agreement unmet for that particular time period. In some other aspects, a number of conditions provided in column B of table 2 may need to be unmet before block920determines that the SLA requirements are unmet for that time period.

The methods disclosed herein include one or more actions for achieving the described method. The method and/or actions can be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of actions is specified, the order and/or use of specific actions can be modified without departing from the scope of the claims.

The functions described can be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions can be stored as one or more instructions on a tangible computer-readable medium. A storage medium can be any available tangible medium that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM, or other optical disk storage, magnetic disk storage, or other magnetic storage devices, or any other tangible medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray® disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers.

A computer program product can perform certain operations presented herein. For example, such a computer program product can be a computer readable tangible medium having instructions tangibly stored (and/or encoded) thereon, the instructions being executable by one or more processors to perform the operations described herein. The computer program product can include packaging material. Software or instructions can also be transmitted over a transmission medium. For example, software can be transmitted from a website, server, or other remote source using a transmission medium such as a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technology such as infrared, radio, or microwave.

Further, modules and/or other appropriate means for performing the methods and techniques described herein can be downloaded and/or otherwise obtained by suitable terminals and/or coupled to servers, or the like, to facilitate the transfer of means for performing the methods described herein. Alternatively, various methods described herein can be provided via storage means (e.g., RAM, ROM, a physical storage medium such as a CD or floppy disk, etc.), such that a user terminal and/or base station can obtain the various methods upon coupling or providing the storage means to the device. Moreover, any other suitable technique for providing the methods and techniques described herein to a device can be utilized. Features implementing functions can also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.

In describing the present invention, the following terminology will be used: The singular forms “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to an item includes reference to one or more items. The term “ones” refers to one, two, or more, and generally applies to the selection of some or all of a quantity. The term “plurality” refers to two or more of an item. The term “about” means quantities, dimensions, sizes, formulations, parameters, shapes and other characteristics need not be exact, but can be approximated and/or larger or smaller, as desired, reflecting acceptable tolerances, conversion factors, rounding off, measurement error and the like and other factors known to those of skill in the art. The term “substantially” means that the recited characteristic, parameter, or value need not be achieved exactly, but that deviations or variations including, for example, tolerances, measurement error, measurement accuracy limitations and other factors known to those of skill in the art, can occur in amounts that do not preclude the effect the characteristic was intended to provide. Numerical data can be expressed or presented herein in a range format. It is to be understood that such a range format is used merely for convenience and brevity and thus should be interpreted flexibly to include not only the numerical values explicitly recited as the limits of the range, but also interpreted to include all of the individual numerical values or sub-ranges encompassed within that range as if each numerical value and sub-range is explicitly recited. As an illustration, a numerical range of “about 1 to 5” should be interpreted to include not only the explicitly recited values of about 1 to about 5, but also include individual values and sub-ranges within the indicated range. Thus, included in this numerical range are individual values such as 2, 3 and 4 and sub-ranges such as 1-3, 2-4 and 3-5, etc. This same principle applies to ranges reciting only one numerical value (e.g., “greater than about 1”) and should apply regardless of the breadth of the range or the characteristics being described. A plurality of items can be presented in a common list for convenience. However, these lists should be construed as though each member of the list is individually identified as a separate and unique member. Thus, no individual member of such list should be construed as a de facto equivalent of any other member of the same list solely based on their presentation in a common group without indications to the contrary. Furthermore, where the terms “and” and “or” are used in conjunction with a list of items, they are to be interpreted broadly, in that any one or more of the listed items can be used alone or in combination with other listed items. The term “alternatively” refers to selection of one of two or more alternatives, and is not intended to limit the selection to only those listed alternatives or to only one of the listed alternatives at a time, unless the context clearly indicates otherwise. The term “coupled” as used herein does not require that the components be directly connected to each other. Instead, the term is intended to also include configurations with indirect connections where one or more other components can be included between coupled components. For example, such other components can include amplifiers, attenuators, isolators, directional couplers, redundancy switches, and the like. Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive list such that, for example, a list of “at least one of A, B, or C” means A or B or C or AB or AC or BC or ABC (i.e., A and B and C). Further, the term “exemplary” does not mean that the described example is preferred or better than other examples. As used herein, a “set” of elements is intended to mean one or more of those elements, except where the set is explicitly required to have more than one or explicitly permitted to be a null set.

Various changes, substitutions, and alterations to the techniques described herein can be made without departing from the technology of the teachings as defined by the appended claims. Moreover, the scope of the disclosure and claims is not limited to the particular aspects of the process, machine, manufacture, composition of matter, means, methods, and actions described above. Processes, machines, manufacture, compositions of matter, means, methods, or actions, presently existing or later to be developed, that perform substantially the same function or achieve substantially the same result as the corresponding aspects described herein can be utilized. Accordingly, the appended claims include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or actions.