CONNECTIVITY MANAGEMENT AND DIAGNOSTICS FOR CELLULAR DATA DEVCIES
A cellular network device comprises a data network indicator and an automatic network reconfiguration module. A data network indicator provides an indication when data network connectivity associated with a cellular network does not meet performance or configuration criteria. An automatic network reconfiguration module automatically reconfigures network data connectivity in the event that an indication has been provided that data network connectivity does not meet performance or configuration criteria. A cellular network device comprises a data network indicator and a management channel. A data network indicator for providing an indication when data network connectivity associated with a cellular network does not meet performance or configuration criteria. A management channel for enabling automatic access in the event that an indication is received that data network connectivity does not meet performance or configuration criteria, wherein the management channel enables automatic access to the cellular network device for administrative maintenance or reporting.
This application claims priority to U.S. patent application Ser. No. 14/542,906 filed on Nov. 17, 2014 which is a continuation of U.S. patent application Ser. No. 14/273,380 filed on May 8, 2014 and issued as U.S. Pat. No. 8,891,407 on Aug. 18, 2014, which is a continuation of U.S. patent application Ser. No. 12/315,179 filed on Nov. 26, 2008 and issued as U.S. Pat. No. 8,730,842 on May 20, 2014, which is the Non-Provisional filing of U.S. Provisional Patent Application No. 61/004,655 entitled ENHANCED PROVISIONING FOR COMMUNICATION SYSTEMS WITH USER ACCESSIBLE INPUT INTERFACES filed Nov. 29, 2007 which is incorporated herein by reference for all purposes.
BACKGROUND OF THE INVENTIONCellular wireless networks commonly provide both voice and data capability. A data communications layer is typically overlaid onto the voice communications layer, while utilizing the same network. For example, cellular devices utilizing the global system for mobile communications (GSM) voice standard are able to use the general packet radio service (GPRS) layer of the network for data communications. In these systems, a cellular device must register separately for the voice and the data networks. Protocols for network selection and registration were designed for human users primarily using voice communications, and in some instances these protocols require manual reconfiguration if there is a problem with or a different selection is desired for the data network. However, a problem arises in the event that a manual configuration, correction, or other input is required to correct a problem with the data network and there is no one available to provide the manual configuration, correction, or other input.
Various embodiments of the invention are disclosed in the following detailed description and the accompanying drawings.
The invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. Unless stated otherwise, a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. As used herein, the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
Automatic network reconfiguration of cellular data devices is disclosed. A software module is added to the standard control software of a cellular device to automatically detect and react to various failure modes of the data network. Data network failure modes include no data layer present on the current cellular network, device failure to register on the data layer, no connectivity between the cellular data network and the Internet, unacceptably slow data transfer, or any other appropriate failure modes. In some embodiments, the automatic reconfiguration software module maintains a list of backup data and voice networks and is capable of reinitializing registration to different networks until a satisfactory connection is established. In some embodiments, the automatic reconfiguration software module includes the capability to communicate with a software vendor over a specially designated management channel in the event that the automatic reconfiguration process is unsuccessful, or to perform regular maintenance and updates to the reconfiguration process or backup network lists. In various embodiments, the management channel is used for subscription management (e.g., as the first use to establish subscription parameters—for example, to start a laptop device or a personal navigation device subscription to a network, to start service, to start payment, after a subscription has been deactivated—for example, for a predetermined period the management channel is active even after subscription deactivation, etc.), diagnostic purposes (e.g., determining the cause of failure for communication in a data and/or voice mode—for example, a billing issue, a subscription limitation, a software issue, a lack of hardware issue in the event that the management channel can connect but a regular service is not available for other reasons, etc.), or any other appropriate use for a management channel. In various embodiments, a management channel uses: a dedicated end-point identifier (e.g., a dedicated management channel access point name (APN)), an alternate transport protocol (e.g., short messaging system (SMS), Unstructured Supplementary Service Data (USSD), Cell Broadcast Service (CBS), voice channel, circuit switched data (CSD), etc.), a supplementary service manipulation (e.g., a call forwarding registration, message forwarding registration, etc.), or any other appropriate system or service.
In some embodiments, management channel communications comprise location data (e.g., global positioning system (GPS) information or GSM correlation information). In some embodiments, management channel communications include diagnostic or network diagnostic information (e.g., poor signal or coverage at location X at time Y, etc.).
In some embodiments, a configuration criterion comprises a device first customer use criteria wherein the management channel performs subscription management for first use by a customer—for example, registers a new customer, arranges payment method (e.g., credit card), etc.
In some embodiments, an alternate network selection is made based on service availability—for example, a device can decide to select an alternative network based on availability or otherwise of available services on a preferred network. In some embodiments, the alternative network is chosen based on the preferred network's inability to provide service on a transient or semi-permanent basis. In some embodiments, the ability to select an alternate network is based on the inability of the preferred network to provide a desired service—for example, a GSM network carrier is unable to continuously provide data service even though voice service is acceptable, an alternate network carrier is selected for both voice and data services. In some embodiments, a voice service is not acceptable for a given network carrier and the carrier is selected based on its associated data network acceptability.
In some embodiments, connection management selects a network or changes the selection of a network based on a configuration (e.g., overriding the default automated network selection). In some embodiments, the selection is changed (e.g., a new network connection is established) even though the current network communication performance is adequate—for example, based on cost or other business preference parameters. In various embodiments, the connection management logic is encapsulated in a library or a service called by an application, a device call, or by device driver software, or any other appropriate manner of encapsulating connection manager logic.
In some embodiments, device-side or client-side code automatically executes a network selection using policies (e.g., a policy that is different than the standard GSM protocols that require a manual intervention). In some embodiments, the client-side code collaborates with server-side code (potentially off-line) to get updated policy preferences as well as for reporting/logging purposes.
Wireless cellular network 101 allows a user of cellular device 100 to engage in voice communications with devices accessed through voice network 108 and data communications with devices accessed through data network 112. Cellular device 100 communicates with wireless cellular network 101 via cellular base station 102. Base station 102 contains a radio transmitter and receiver for communicating with cellular devices (e.g., cellular device 100) and a communications system for communicating with base station controller 104. Base station controller 104 controls base station 102 and enables communication with voice network 108 via network switching subsystem 106 and with data network 112 via GPRS core network 110. In various embodiments, base station controller controls one base station, two base stations, ten base stations, or any other appropriate number of base stations. Network switching subsystem 106 controls voice network switching, maintains a register of cellular device locations, and connects the GSM network with voice network 108. Voice network 108 is a voice telephony network for connecting various voice telephony devices. In various embodiments, voice telephony network 108 comprises a public switched telephone network, a private voice telephony network, or any other appropriate voice telephony network. By enabling cellular device 100 to connect to voice network 108, a user of cellular device 100 is able to have a verbal conversation with another user of a device that is directly or indirectly connected to voice network 108 (e.g., a cell phone user, a wired telephone user, a internet telephone user—for example, a voice over internet protocol user). For example, a user can use cellular device 100 to make a telephone call to someone. Core data network 110 controls data communications switching and connects cellular network 101 with data network 112. Data network 112 comprises a data communications network for connection various data communications devices. Data network 112 comprises one or more of the following: a local area network, a wide area network, a wired network, a wireless network, the Internet, a fiber network, a storage area network, or any other appropriate network enabling communication. By enabling cellular device 100 to connect to data network 112, a user of cellular device 100 or cellular device 100 itself can interact with other devices or servers or applications running on other devices or servers via data network 112. For example, cellular device 100 can contact a server to inquire about a transaction (e.g., a credit card authorization for a purchase).
Wireless cellular network 101 of
In various embodiments, the management channel is used for subscription management (e.g., as the first use to establish subscription parameters—for example, to start a laptop device or a personal navigation device subscription to a network, to start service, to start payment, after a subscription has been deactivated—for example, for a predetermined period the management channel is active even after subscription deactivation, etc.), diagnostic purposes (e.g., determining the cause of failure for communication in a data and/or voice mode—for example, a billing issue, a subscription limitation, a software issue, a lack of hardware issue in the event that the management channel can connect but a regular service is not available for other reasons, etc.), or any other appropriate use for a management channel. In various embodiments, a management channel uses: a dedicated end-point identifier (e.g., a dedicated management channel access point name (APN)), an alternate transport protocol (e.g., short messaging system (SMS), Unstructured Supplementary Service Data (USSD), Cell Broadcast Service (CBS), voice channel, circuit switched data (CSD), etc.), a supplementary service manipulation (e.g., a call forwarding registration, message forwarding registration, etc.), or any other appropriate system or service.
In some embodiments, management channel communications comprise location data (e.g., global positioning system (GPS) information or GSM correlation information). In some embodiments, management channel communications include diagnostic or network diagnostic information (e.g., poor signal or coverage at location X at time Y, etc.).
In some embodiments, GPRS core network 250 implements GPRS core network 110 of
Automatic network reconfiguration software module 404 acts as an intermediary between application software 402 and radio control software layer 404. In various embodiments, automatic network reconfiguration software module 404 comprises software to pass messages and commands between application software 402 and radio control software layer 406 unchanged, to interpret the status of the wireless voice and data connection, to issue commands to radio control software layer 406 to retry connection to a wireless voice and data network, to issue commands to radio control software layer 406 to establish a connection with a new wireless voice and data network, to access the wireless diagnostic radio channel, or to perform any other appropriate automatic network reconfiguration functionality. In the example shown, automatic network reconfiguration software module 404 passes commands and messages between application software 402 and radio control software layer 406 and determines the status of the wireless voice and data connection based on the commands and messages being passed. If automatic network reconfiguration software module 404 determines that the wireless voice or data connection has been lost, is of higher cost relative to another available connection, is not a connection associated with a preferred carrier (e.g., a carrier with greater coverage, lower cost, higher bandwidth, lower latency, fewer dropped connections, etc.), or is of unacceptable quality (e.g., cannot handle traffic bursts, poor data rate, noisy, uptime inadequate, etc.), it issues a command to radio control software layer 406 to attempt to fix the connection. In various embodiments, performance and/or configuration criteria comprise one or more of the following: data connectivity with bandwidth below a predetermined value, no data connectivity, data connectivity cost above predetermined rate value, data connectivity not with a preferred network provider, data connectivity unable to handle burst traffic, data connectivity uptime not better than predetermined value, data connectivity drop rate above predetermined value, and/or any other appropriate criteria. In various embodiments, when there is a network problem or the network connectivity does not meet performance criteria, automatic network reconfiguration software module issues a command to reconnect to the data network, to reconnect to the voice network, to connect to a different data network, to connect to a different voice and data network, to access the management channel, or to perform any other appropriate automatic reconfiguration action. In some embodiments, automatic network reconfiguration software module 404 additionally comprises an alternative network list, comprising a list of networks that can be tried in the event that the wireless data network connectivity is lost. In various embodiments, the alternative network list comprises a list of alternative voice networks with data overlay that can be accessed, a list of alternative routes for data network connectivity (e.g., using an alternative GGSNs) that can be accessed on the current voice network, or any other appropriate alternative networks. In some embodiments, a data network indicator indicates whether network connectivity meets or does not meet a network performance criteria.
In some embodiments, automatic network reconfiguration module 404 is designed as an integral part of cellular device software 400. In some embodiments, automatic network reconfiguration module 404 is designed separately from application software 402, radio control software layer 406 and radio access software layer 408, and is integrated after development. In some embodiments, automatic network reconfiguration module 404 is integrated with the other parts of cellular device software 400 by the cellular device software developer, and cellular device software 400 is loaded onto the cellular device as a single unit. In some embodiments, automatic network reconfiguration software 404 is loaded onto the cellular device separately from the other parts of cellular device software 400. In some embodiments, automatic network reconfiguration software 404 is downloaded and installed onto a functioning cellular device.
In 604, the data network connectivity is evaluated. If the data network has connectivity, the registration process was successful, and the process ends. In some embodiments, if the data network has connectivity, data network desirability is also evaluated. If data network desirability is above a certain threshold, the registration process was successful, and the process ends. If the data network still does not satisfy one or more connectivity criteria, control passes to 606. In 606, an alternative network list (e.g., the alternative network list comprised in automatic reconfiguration software module 404 of
In some embodiments, the use of the management connectivity is determined by the application running on a mobile device. In various embodiments, the use of the management channel is not charged, is charged at a different price point, is charged at a regular price point, or any other appropriate cost structure. In various embodiments, the management channel connectivity comprises data connectivity using one or more of the following: a SMS channel, a data channel, a USSD channel, a CSD channel, a CBS channel, a voice channel, and/or any other appropriate data connectivity.
In some embodiments, a device has multiple logical channels on the mobile network—the secondary (e.g., management channel) logical channel is invisible to the user, and, in some embodiments, any communication over that channel is not billable. The primary channel is available only when the user has a valid subscription (e.g., a data channel or subscription channel); the secondary channel is available to a user's device (e.g., by an application running on the device) regardless of whether the subscription is valid (e.g., diagnostic channel). This secondary channel is used for administrative maintenance and performance tuning (e.g., software upgrading, configuration upgrading, etc.), such as diagnostics troubleshooting, logging (e.g., packet loss experienced, higher-than-expected delay in communication, duplicate packets, etc.) and reporting (e.g., experienced network bandwidth and latency, coverage presence/absence in different geographies etc.), and subscription management. In some embodiments, a configuration file for network prioritization is loaded to the device using the secondary channel. In various embodiments, prioritization is based at least in part on network performance (e.g., uptime, dropped call statistics, signal strengths, etc.), network cost, network affiliation, or any other appropriate network parameter.
In some embodiments, a laptop or personal navigation device (PND) comes with built-in modem (e.g., a third generation standard cell phone (3G phone)) plus some period of time subscription to a network service (e.g., three, six, or 12 months of service included). After the initial subscription, a customer must pay for network services. In the event that services lapse and it is desired that the services become re-enabled, using a management channel a user can engage subscription management services without using a separate communication channel (e.g., a phone call, a separate internet connection, a separate cell connection, etc.). Using the device with management channel, a user will be able to subscribe to network services either on a temporary or long term basis (e.g., a 1-hour plan, a 1-day plan, a by the hour plan, a monthly plan, etc.).
Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive.
Claims
1. A cellular network device, comprising:
- a data network indicator for providing an indication when data network connectivity associated with a cellular network does not meet performance or configuration criteria; and
- an automatic network reconfiguration module for automatically reconfiguring network data connectivity in the event that an indication has been provided that data network connectivity does not meet performance or configuration criteria.
Type: Application
Filed: Jul 23, 2015
Publication Date: Nov 19, 2015
Inventors: Daniel G. Collins (McKinney, TX), Curtis Govan (McKinney, TX), Amit Gupta (Livermore, CA), Carl Keller (Danville, CA), Rakesh Kumar (Sunnyvale, CA), Suparna Kumar (San Jose, CA), Jahangir Mohammed (Saratoga, CA), Scott Potter (Los Gatos, CA)
Application Number: 14/807,686