CN114258053A - Wireless device and method for automatic recovery from failure - Google Patents

Wireless device and method for automatic recovery from failure Download PDF

Info

Publication number
CN114258053A
CN114258053A CN202010944756.7A CN202010944756A CN114258053A CN 114258053 A CN114258053 A CN 114258053A CN 202010944756 A CN202010944756 A CN 202010944756A CN 114258053 A CN114258053 A CN 114258053A
Authority
CN
China
Prior art keywords
wireless device
priority
module
restarting
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010944756.7A
Other languages
Chinese (zh)
Inventor
梁建明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Arris Enterprises LLC
Original Assignee
Arris Enterprises LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Arris Enterprises LLC filed Critical Arris Enterprises LLC
Priority to CN202010944756.7A priority Critical patent/CN114258053A/en
Priority to PCT/US2021/049592 priority patent/WO2022056081A1/en
Publication of CN114258053A publication Critical patent/CN114258053A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0609Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on severity or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • H04L41/0661Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0859Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
    • H04L41/0863Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions by rolling back to previous configuration versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/19Connection re-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present disclosure relates to wireless devices and methods for automatic recovery from failures. Specifically, the present disclosure provides a method for automatically recovering from a failure of a wireless device, the method comprising: detecting whether a wireless device has a fault; detecting whether a state of a module having a first priority of the wireless device is abnormal in response to detecting that the wireless device has a fault; restarting a module having a first priority in response to detecting a status anomaly of the module having the first priority of the wireless device; detecting whether there is a failure of the wireless device within a predetermined period of time after restarting the module having the first priority; and in response to detecting that the wireless device is still malfunctioning within a predetermined period of time after restarting the module having the first priority, restarting the module having a second priority lower than the first priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.

Description

Wireless device and method for automatic recovery from failure
Technical Field
The present disclosure relates to the field of wireless communications technologies, and more particularly, to a wireless device and method for automatic recovery from wireless connection failures.
Background
With the development of communication technology, users have been able to access wireless networks via wireless protocols, such as the IEEE 802.11 Wi-Fi protocol, by communicating user devices with wireless devices. Such wireless devices include Cable Modems (CMs) and the like. The wireless access point may be a separate device connected to the wireless device or integrated in the wireless device. When a wireless device fails, it may cause the wireless connection between the wireless device and the user equipment to be broken, thereby preventing the user from successfully accessing the wireless network.
Disclosure of Invention
In a practical application scenario of wireless communication, after a wireless device fails to connect with a user device, the user device usually needs to restart the wireless device manually, that is, power off and power on the wireless device again. The above-described restart procedure results in a poor user experience and low user satisfaction as a large number of programs and processes are forced to be interrupted and restarted. Moreover, each time the wireless connection is interrupted, the user is required to perform an operation of manually restarting the wireless device, and in the case of many failures, the user is required to frequently perform the operation, which is very time-consuming and labor-intensive. Therefore, there is a need for an efficient and intelligent device and method for automatically recovering from a failure of a wireless device.
According to some aspects of the present disclosure, a wireless device for automatic recovery from failure is provided. The wireless device includes one or more processors and memory coupled to the one or more processors and including executable instructions stored thereon that, when loaded on the one or more processors, cause the wireless device to: detecting whether the wireless device is malfunctioning; detecting whether a state of a module of the wireless device having a first priority is abnormal in response to detecting that the wireless device has a fault; restarting a module having a first priority in response to detecting a status anomaly of the module having the first priority of the wireless device; detecting whether the wireless device has a failure within a predetermined period of time after restarting a module having a first priority; and in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the first priority, restarting a module having a second priority lower than the first priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.
In some embodiments, for the wireless device described above, the module of the wireless device having the first priority comprises a wireless driver, and restarting the module having the first priority comprises one or more of: soft restart the wireless driver, reload the wireless driver, and roll back the wireless driver to a previous version.
In some embodiments, for the wireless device described above, detecting whether a state of a module of the wireless device having a first priority is abnormal comprises: detecting whether a state of a module having a first priority of the wireless device is abnormal based on connection information between the wireless device and a user equipment.
In some embodiments, for the wireless device described above, the module of the wireless device having the second priority comprises a processor on which the wireless driver operates.
In some embodiments, for the wireless device described above, the wireless device includes a first processor and a second processor, and the first processor and the second processor communicate via a remote procedure call, RPC, protocol. In addition, an RPC server is running on the first processor and an RPC client is running on the second processor.
In some embodiments, for the wireless device described above, the executable instructions, when loaded on the one or more processors, further cause the wireless device to: detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the second priority; and in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the second priority, restarting the module having the third priority, wherein restarting the module having the third priority causes the module having the second priority to be automatically restarted, and wherein the module having the second priority includes the first processor and the module having the third priority includes the second processor.
In some embodiments, for the wireless device described above, the module of the wireless device having the first priority comprises the RPC server.
In some embodiments, for the wireless device described above, the first processor comprises an ATOM processor and the second processor comprises an ARM processor.
In some embodiments, for the wireless device described above, the executable instructions, when loaded on the one or more processors, further cause the wireless device to: detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the third priority; in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the third priority, sending an indication to a user or an external device to restart the wireless device, wherein restarting the wireless device causes the module having the third priority to be automatically restarted.
In some embodiments, for the wireless device described above, the wireless device comprises a Wi-Fi device.
In accordance with other aspects of the present disclosure, a method for automatically recovering from a failure of a wireless device is provided. The method comprises the following steps: detecting whether the wireless device is malfunctioning; detecting whether a state of a module of the wireless device having a first priority is abnormal in response to detecting that the wireless device has a fault; restarting a module having a first priority in response to detecting a status anomaly of the module having the first priority of the wireless device; detecting whether the wireless device has a failure within a predetermined period of time after restarting a module having a first priority; and in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the first priority, restarting a module having a second priority lower than the first priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.
In some embodiments, in the above method, the module of the wireless device having the first priority comprises a wireless driver, and restarting the module having the first priority comprises one or more of: soft restart the wireless driver, reload the wireless driver, and roll back the wireless driver to a previous version.
In some embodiments, in the above method, detecting whether a state of a module of the wireless device having a first priority is abnormal comprises: detecting whether a state of a module having a first priority of the wireless device is abnormal based on connection information between the wireless device and a user equipment.
In some embodiments, in the above method, the module of the wireless device having the second priority comprises a processor on which the wireless driver operates.
In some embodiments, in the above method, the wireless device includes a first processor and a second processor, and the first processor and the second processor communicate via a remote procedure call, RPC, protocol. In addition, an RPC server is running on the first processor and an RPC client is running on the second processor.
In some embodiments, the above method further comprises: detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the second priority; and in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the second priority, restarting the module having the third priority, wherein restarting the module having the third priority causes the module having the second priority to be automatically restarted, and wherein the module having the second priority includes the first processor and the module having the third priority includes the second processor.
In some embodiments, in the above method, the module of the wireless device having the first priority comprises the RPC server.
In some embodiments, in the above method, the first processor comprises an ATOM processor and the second processor comprises an ARM processor.
In some embodiments, the above method further comprises: detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the third priority; in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the third priority, sending an indication to a user or an external device to restart the wireless device, wherein restarting the wireless device causes the module having the third priority to be automatically restarted.
In some embodiments, in the above method, the wireless device comprises a Wi-Fi device.
According to other aspects of the disclosure, there is provided a non-transitory computer-readable storage medium comprising executable instructions stored thereon, which when executed by one or more processors, cause the one or more processors to perform a method according to the disclosure.
According to other aspects of the present disclosure, there is provided an apparatus comprising means for performing a method according to the present disclosure.
Drawings
For a better understanding of the present disclosure, and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which:
FIG. 1 illustrates a schematic diagram of an example network environment, according to an embodiment of the present disclosure;
fig. 2 shows a schematic diagram of a wireless device according to an embodiment of the present disclosure;
FIG. 3 shows a schematic diagram of a portion of a wireless device in accordance with an embodiment of the present disclosure;
FIG. 4 shows a flow diagram of a method for automatic recovery from failure of a wireless device according to an embodiment of the present disclosure;
fig. 5 shows a flow chart of a method for automatic recovery from a failure of a wireless device according to a preferred embodiment of the present disclosure.
It should be noted that throughout the drawings, like reference numerals designate corresponding parts. Further, multiple instances of the same part are specified by a common prefix separated from the instance number by a dash.
Detailed Description
The following detailed description is made with reference to the accompanying drawings and is provided to assist in a comprehensive understanding of various exemplary embodiments of the disclosure. The following description includes various details to aid understanding, but these details are to be regarded as examples only and are not intended to limit the disclosure, which is defined by the appended claims and their equivalents. The words and phrases used in the following description are used only to provide a clear and consistent understanding of the disclosure. In addition, descriptions of well-known structures, functions, and configurations may be omitted for clarity and conciseness. Those of ordinary skill in the art will recognize that various changes and modifications of the examples described herein can be made without departing from the spirit and scope of the disclosure.
Fig. 1 is a schematic diagram illustrating an example network environment 100 in accordance with embodiments of the present disclosure.
In some embodiments, the example network environment 100 may include one or more user devices 110-1, 110-2, 110-3 (hereinafter collectively referred to as user devices 110 for simplicity), a wireless device 120, and a network 130. In some embodiments, user device 110 accesses network 130 through wireless device 120. In some embodiments, wireless device 120 may receive/route various types of communications from user device 110 and/or transmit/route various types of communications to user device 110. For example, one or more user devices 110 may receive one or more data services, one or more audio/video services, and/or other services, etc., through wireless device 120.
In some embodiments, user device 110 may include various types of devices, including, but not limited to, desktop computers, laptop computers, sub-notebooks/netbooks, servers, computers, mainframe computers, cloud-based computers, tablet computers, smartphones, cellular phones, smartwatches, wearable devices, consumer electronics, portable computing devices, communication devices, test devices, and/or other electronic devices. For some of these user devices, it is often desirable to maintain connectivity to the network to facilitate user access to data and services in the network at any time. In one example, when a user is at home, office files may be downloaded and processed over a wireless network using a laptop computer. In another example, when a user is entertaining at home, the smartphone may be utilized to play online games with other players via a wireless network.
In some embodiments, wireless device 120 may include various types of wireless devices capable of transmitting communication signals between user device 110 and network 130, such as wireless access points, gateways, routers (such as wireless routers and mobile hotspot routers), and devices that integrate one or more of the above (such as cable modems).
In some embodiments, Network 130 may include various networks, such as a Wide Area Network (WAN), a Local Area Network (LAN), a mobile Network, a fiber optic Network, the internet, and so forth. It should be noted that the present disclosure is not particularly limited as to the type of network 130.
In a network environment 100 such as that of fig. 1, if user devices that would otherwise remain connected to the network are disconnected, much inconvenience is brought to the user. According to the prior art, after a connection between a user equipment and e.g. a wireless network is disconnected, the user may not necessarily be able to find the problem in time, and it is thus difficult to restore the connection between them in time. Even if the user discovers the interruption of the wireless connection and manually restarts the wireless device 120, this process can cause running programs or processes (e.g., download processes of files and real-time processes of games) to be forcibly interrupted or even terminated. Therefore, in view of these problems, embodiments of the present disclosure propose a method for detecting the state of a module in a wireless device in time after the device fails and restarting the corresponding module to recover from the failure, so that the wireless connection can be efficiently and automatically recovered without user involvement.
Fig. 2 shows a block diagram of an example configuration of a wireless device 200 according to an embodiment of the present disclosure.
The wireless device 200 corresponds to, for example, the wireless device 102 in fig. 1.
The wireless device 200 may be, for example, a hardware wireless device capable of combining one or more of the functions of a modem, access point, gateway, and/or router. The present disclosure also contemplates that wireless Device 200 may include, but is not limited to, The functionality of an IP/QAM Set Top Box (STB) or Smart Media Device (SMD) capable of decoding audio/video content and playing out ott (over The Top) or multi-system Operator (MSO) provided content.
As shown in fig. 2, the wireless device 200 includes a user interface 201, a network interface 203, a power supply 205, a WAN interface 207, a memory 209, and a processor 211. The user interface 201 may include, but is not limited to, buttons, a keyboard, a keypad, a Liquid Crystal Display (LCD), a Cathode Ray Tube Display (CRT), a Thin Film Transistor Display (TFT), a Light Emitting Diode (LED), a High Definition Display (HD), or other similar Display devices, including Display devices having touch screen capabilities to enable interaction between a user and a gateway device. Network interface 203 may include various network cards and circuitry implemented in software and/or hardware to enable communication with wireless extender devices and client devices using a wireless protocol, such as any IEEE 802.11 Wi-Fi protocol, Bluetooth Low Energy (BLE) or other short range protocol operating according to a wireless technology standard, for exchanging data over short distances using any licensed or unlicensed frequency band, such as the Citizens Broadband Radio Service (CBRS) band, 2.4GHz band, 5GHz band or 6GHz band, RF4CE protocol, ZigBee protocol, Z-Wave protocol or IEEE802.15.4 protocol.
The power supply 205 provides power to the internal components of the wireless device 200 through the internal bus 213. The power source 205 may be a self-contained power source, such as a battery pack, whose interface is powered by a charger connected to an outlet (e.g., directly or through other equipment). The power source 205 may also include a rechargeable battery, such as a NiCd, NiMH, Li-ion, or Li-pol battery, which may be removable for replacement. The WAN interface 207 may include various network cards and circuitry implemented in software and/or hardware to enable communication between the wireless device and an internet service provider or Multiple System Operator (MSO).
Memory 209 comprises a single memory or one or more memories or storage locations including, but not limited to, Random Access Memory (RAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Read Only Memory (ROM), EPROM, EEPROM, flash memory, logic blocks of an FPGA, a hard disk, or any other layer of a memory hierarchy. Memory 209 may be used to store any type of instructions, software, or algorithms, including software 215 for controlling the general functionality and operation of wireless device 200.
Processor 211 processes and controls the general operation of wireless device 200 and performs management functions related to other devices in the network, such as expanders and client devices. The processor 211 may include, but is not limited to, a CPU, hardware microprocessor, hardware processor, multi-core processor, single-core processor, microcontroller, Application Specific Integrated Circuit (ASIC), DSP, or other similar processing device capable of executing any type of instructions, algorithms, or software for controlling the operation and function of the wireless device 200 according to embodiments described in this disclosure. Processor 211 may be various implementations of digital circuitry, analog circuitry, or mixed signal (a combination of analog and digital) circuitry that performs functions in a computing system. Processor 211 may include, for example, components such as an Integrated Circuit (IC), portions or circuits of an individual processor core, an entire processor core, an individual processor, a programmable hardware device such as a Field Programmable Gate Array (FPGA), and/or a system including multiple processors.
Internal bus 213 may be used to establish communication between components (e.g., 201, 203, 205, 209, and 211) of wireless device 200.
Fig. 3 shows a schematic diagram of a portion of a wireless device 200 according to an embodiment of the disclosure. One or more processors (e.g., processor 211 in fig. 2) may be included in wireless device 200 according to an embodiment of the disclosure. By way of example, two processors are shown in the wireless device 200 in fig. 3: examples of ATOM processors (also referred to herein as first processors) and ARM processors (also referred to herein as second processors). It will be understood that the terms "first," "second," and the like, in this disclosure are used solely to distinguish one element or step from another, and are not intended to indicate temporal order or importance. The first processor and the second processor may also be any other suitable type of processor.
The ATOM processor and the ARM processor may communicate via a Remote Procedure Call (RPC) protocol. The RPC protocol may employ a server-client mode, in which the RPC server and the RPC client run on different processors, respectively. By way of example, FIG. 3 of the present disclosure shows an RPC server running on an ATOM processor and an RPC client running on an ARM processor. The RPC client may perform tasks and the RPC server may provide back-end services for the RPC client. In other words, the ARM processor may instruct the ATOM processor to perform operations such as configuration parameters through the RPC protocol. In addition, as shown in FIG. 3, a wireless driver may also be run on the ATOM processor. The wireless access point (operating on the ATOM processor side) requires the drive of the wireless driver to operate properly. According to one example of the present disclosure, where the wireless device is a Wi-Fi device, the wireless driver is a Wi-Fi driver.
In the present disclosure, for convenience of description, the above ATOM processor, ARM processor, and wireless driver, RPC server, etc. components running on the respective processors, and various combinations thereof may be referred to as modules. According to an embodiment of the present disclosure, when there is a failure of a wireless device, instead of directly manually restarting the entire wireless device as in the conventional method, it is possible to detect whether the state of a specific module is abnormal by a service loaded on a processor in the wireless device and restart the corresponding module by priority. Specifically, for example, according to an embodiment of the present disclosure, the above components may be regarded as three kinds of modules each having different priorities, wherein the module having the first priority includes a wireless driver and an RPC server; the module with the second priority comprises an ATOM processor; and the module having the third priority comprises an ARM processor. Priority in this disclosure refers to the priority of restarting a module, and wherein the second priority is lower than the first priority and the third priority is lower than the second priority.
According to the embodiment of the present disclosure, in the case where it is detected that the wireless device has a failure resulting in interruption or abnormality of the wireless connection, it may be first detected whether the state of the module having the first priority is abnormal, and the corresponding module may be restarted in the case where the abnormality is detected. For example, in the case where a state abnormality of the wireless driver is detected, only the wireless driver may be restarted. This makes it possible to recover automatically from a failure of the wireless connection with less time consumption. If it is detected that the wireless device still has a failure within a predetermined period of time (which may be an empirically predetermined value) after restarting the module having the first priority, the module having the second priority may be restarted, e.g., restarting the ATOM processor. Similarly, if it is detected that the wireless device still has a failure within a predetermined period of time after restarting the module having the second priority, the module having the third priority may be restarted, such as restarting the ARM processor. It should be appreciated that restarting the ATOM processor can cause the wireless driver and RPC server running thereon to be automatically restarted, and restarting the ARM processor can cause the ATOM processor to be automatically restarted. Therefore, restarting a module with a higher priority will avoid more program interruptions and even termination, can save more time, and brings a good user experience.
It should be understood that only one example of a wireless device 200 is shown in fig. 3. A greater or lesser number of processors may be included in wireless device 200 and such processors may employ architectures and instruction sets other than an ATOM processor and an ARM processor. For example, only one processor (which may be an ATOM processor, an ARM processor, or any other suitable processor) may be included in the wireless device 200, with a wireless driver running thereon, and without an RPC server and RPC client. In this case, there are only modules having the first priority and modules having the second priority, and there are no modules having the third priority. Further, in the case of more processors in the wireless device, there may be more prioritized modules.
Fig. 4 shows a flowchart 400 of a method for automatic recovery from a failure of a wireless device according to an embodiment of the present disclosure. By way of example, the method may be performed by a service (e.g., a watchdog service) loaded on a processor in the wireless device 200 shown in fig. 2. In step S401, it is detected whether the wireless device has a failure. Then, in step S402, in response to detecting that the wireless device has a failure, it is detected whether the state of the module having the first priority of the wireless device is abnormal. For example, the module having the first priority includes a wireless driver, an RPC server, and the like. In step S403, in response to detecting that the state of the module of the wireless device having the first priority is abnormal, the module having the first priority is restarted. Thereafter, in step S404, it is detected whether the wireless device has a failure within a predetermined period of time after the module having the first priority is restarted. And, in step S405, in response to detecting that the wireless device still has a failure within a predetermined period of time after restarting the module having the first priority, restarting the module having a second priority lower than the first priority. For example, the module having the second priority includes a processor (such as an ATOM processor) having a wireless driver running thereon, and restarting the module having the second priority causes the module having the first priority to be automatically restarted.
It should be appreciated that the predetermined time period may be a time value that is preset by a user based on experience or a related protocol. If a failure of the wireless device is detected over the predetermined period of time, the operations of state detection and restart of the module having the first priority may be re-executed.
Further, fig. 5 shows a flow chart 500 of a method for automatic recovery from a failure of a wireless device according to a preferred embodiment of the present disclosure. In the preferred embodiment, the architecture of the processor in the wireless device corresponds to the architecture shown in FIG. 3, i.e., the module with the first priority comprises a wireless driver and an RPC server; the module with the second priority comprises an ATOM processor; and the module having the third priority comprises an ARM processor. Wherein the second priority is lower than the first priority and the third priority is lower than the second priority.
According to a preferred embodiment of the present disclosure, it is first detected whether the wireless device is malfunctioning. If there is a failure, it may be detected whether a state of a module of the wireless device having the first priority is abnormal, and the corresponding module having the first priority is restarted if the state abnormality is detected. As an example, two abnormal situations and corresponding detection and restart operations will be described in detail below:
1. connection anomaly of user equipment and wireless access point
When frequent interruptions of the connection between the user equipment and the wireless device occur, a connect-disconnect event will result. The ATOM processor side can report the connect-disconnect event (through information in text form) to the service loaded on the ATOM processor. The service, after saving and analyzing the collected connection information, can determine that the state of the wireless driver running on the ATOM processor is abnormal, and restart the wireless driver.
It should be appreciated that restarting the wireless driver may include soft restarting the wireless driver in one example, i.e., the service loaded on the ATOM processor may run a command to cause the wireless driver to restart. In another example, restarting the wireless driver may also include reloading the wireless driver, i.e., the service removes the original wireless driver and then reloads it, and then performs initialization and the like. In yet another example, restarting the wireless driver may also include rolling back a version of the wireless driver to a previous, more original version.
RPC Call timeout Exception
When the ARM processor initiates a session to the ATOM processor, if no response is obtained for a long time (e.g., exceeding a maximum threshold time for the response), then the service loaded on the ARM processor will receive (via a message in text form) the RPC call timeout event. In response to receiving the RPC call timeout event, the service on the ARM processor may instruct the service on the ATOM processor to detect the RPC server running on the ATOM processor. Additionally, the service on the ARM processor may also instruct the service on the ATOM processor to detect the wireless driver running on the ATOM processor, since the RPC server needs to extract information from the wireless driver, and thus a status exception of the wireless driver may also cause an RPC call timeout event to occur. The following will describe in detail the detection and restart operations of two modules with a first priority in case of an RPC call timeout event:
2-1.RPC Server
The service on the ATOM processor can detect whether the status of the RPC server is abnormal. For example, the service may initiate a session to an RPC server running on the ATOM processor. If no response is obtained within the maximum threshold time of the response, then a status exception is indicated for the RPC server so that the service can restart the RPC server. Otherwise, if the service is responded, it indicates that the status of the RPC server is normal, so that the service can detect whether the status of the wireless driver is abnormal. Alternatively, the service may directly restart the wireless driver.
2-2. Wireless driver
The service on the ATOM processor can detect whether the status of the wireless driver is abnormal. For example, the service may request operational parameters from a wireless driver running on the ATOM processor via a command. If no response is obtained within the maximum threshold time of response, then the status of the wireless drive is indicated as abnormal, so that the service can restart the wireless drive. Otherwise, if the service is responded, it indicates that the state of the wireless driver is normal, so that the service can detect whether the state of the RPC server is abnormal. Alternatively, the service may restart the RPC server directly.
It should be appreciated that the service loaded on the ATOM processor may perform the above detection operation by implementing an RPC Application Programming Interface (API) to obtain the status of the wireless driver and the RPC server. Further, to improve the accuracy of the detection, the detection of the status of the RPC server and/or the wireless driver may be performed multiple times. As an example, if a service on the ATOM processor does not receive a response when detecting an RPC server, a number of (e.g., five) sessions may be initiated within a period of time (e.g., five minutes), and if no response is received, it indicates that the RPC server is anomalous with a high probability, and thus the service may perform an operation to automatically restart the RPC server.
It should be appreciated that if a status anomaly is not detected for a module having a first priority, the module having a second priority (including the ATOM processor in the preferred embodiment) may be restarted directly. Alternatively, modules with the first priority may be restarted in turn, since this is very inexpensive and with some probability can recover from the failure.
After restarting the module having the first priority, the detection of whether the wireless device has a failure may continue for a predetermined period of time. In the event that a failure of the wireless device is detected within a predetermined period of time after restarting the module having the first priority, the service on the ATOM processor may restart the module having the second priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.
Similarly, after restarting the module having the second priority, the detection of whether the wireless device has a failure may continue for a predetermined period of time. In the event that a failure of the wireless device is detected within a predetermined period of time after restarting the module having the second priority, the service on the ARM processor may restart the module having the third priority (including the ARM processor in the preferred embodiment), wherein restarting the module having the third priority causes the module having the second priority to be automatically restarted.
It will be appreciated that according to the method described above, automatic recovery from a failure of a wireless device can be achieved with great probability. However, there may be few situations where the wireless connection is still broken. In this case, it may be detected whether the wireless device has a failure within a predetermined period of time after the module having the third priority is restarted. In response to detecting that the wireless device still has a failure within a predetermined period of time after restarting the module having the third priority, the service on the processor may send an indication to the user to restart the wireless device, wherein restarting the wireless device causes the module having the third priority to be automatically restarted. Alternatively or additionally, the service on the processor may also send an indication to an external device of the wireless device to restart the wireless device, such that the wireless device is automatically restarted by powering off and powering back on by the external device according to the indication without user involvement.
It should also be appreciated that when the wireless device includes only one processor, the operations of detecting whether the wireless device has failed and sending an indication to a user or an external device to restart the wireless device in response to detecting that the wireless device has failed may be performed after restarting the module having the second priority.
After restarting the module for more than a predetermined period of time, the detecting and restarting operations may begin with the module having the first priority, operating on a priority-by-priority basis. In some embodiments, an indication to restart the wireless device may also be sent directly to the user or to an external device in the event that the number of times the wireless device fails within a period of time exceeds a predetermined maximum threshold.
It should be appreciated that after a status anomaly of a module of the wireless device is detected and before the module is restarted to automatically recover from the failure, device parameters in the anomalous status, such as wireless parameter configuration, CPU utilization, and memory utilization, may be collected by a service loaded on a processor, such as an ATOM processor. Storing and analyzing the difference between the device parameters in the abnormal state and the device parameters in the normal state can help to solve the problems of subsequent fault detection and recovery.
It should be appreciated that the interface between the wireless device and the mobile operator device described in the present disclosure may be provided to enable or disable the method for automatically recovering from the failure of the wireless device provided by the present disclosure.
According to the embodiment of the disclosure, automatic recovery from the failure of the wireless device can be supported by using the method and the device provided by the disclosure. The method provided by the present disclosure enables automatic detection of failures and automatic recovery without user involvement, which is particularly advantageous in scenarios where wireless connectivity is frequently interrupted, as compared to conventional systems that require a user to manually restart the wireless device, including powering down and powering back on the wireless device. In addition, by prioritizing the modules in the wireless device and performing priority-by-priority detection and restart, the time for fault recovery can be greatly saved, and the whole process is very convenient and robust, thereby bringing about a good wireless connection environment and user experience.
The present disclosure may be implemented as any combination of apparatus, systems, integrated circuits, and computer programs on non-transitory computer readable media. One or more processors may be implemented as an Integrated Circuit (IC), an Application Specific Integrated Circuit (ASIC), or a large scale integrated circuit (LSI), a system LSI, or a super LSI, or as an ultra LSI package that performs some or all of the functions described in this disclosure.
The present disclosure includes the use of software, applications, computer programs or algorithms. Software, applications, computer programs, or algorithms may be stored on a non-transitory computer readable medium to cause a computer, such as one or more processors, to perform the steps described above and depicted in the figures. For example, one or more memories store software or algorithms in executable instructions and one or more processors may be associated with a set of instructions that execute the software or algorithms.
Software and computer programs (which may also be referred to as programs, software applications, components, or code) include machine instructions for a programmable processor, and may be implemented in a high-level procedural, object-oriented, functional, logical, or assembly or machine language. The term "computer-readable medium" refers to any computer program product, apparatus or device, such as magnetic disks, optical disks, solid state storage devices, memories, and Programmable Logic Devices (PLDs), used to provide machine instructions or data to a programmable data processor, including a computer-readable medium that receives machine instructions as a computer-readable signal.
By way of example, computer-readable media can comprise Dynamic Random Access Memory (DRAM), Random Access Memory (RAM), Read Only Memory (ROM), electrically erasable read only memory (EEPROM), compact disk read only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired computer-readable program code in the form of instructions or data structures and which can be accessed by a general-purpose or special-purpose computer or a general-purpose or special-purpose processor. Disk or disc, as used herein, includes 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. Combinations of the above are also included within the scope of computer-readable media.
In one or more embodiments, use of the terms "can," "operable" or "configured" refer to some apparatus, logic, hardware, and/or element that is designed to be used in a specified manner. The subject matter of the present disclosure is provided as examples of apparatus, systems, methods, and programs for performing the features described in the present disclosure. However, other features or variations are contemplated in addition to the features described above. It is contemplated that the implementation of the components and functions of the present disclosure may be accomplished with any emerging technology that may replace the technology of any of the implementations described above.
Additionally, the above description provides examples, and does not limit the scope, applicability, or configuration set forth in the claims. Changes may be made in the function and arrangement of elements discussed without departing from the spirit and scope of the disclosure. Various embodiments may omit, substitute, or add various procedures or components as appropriate. For example, features described with respect to certain embodiments may be combined in other embodiments.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous.

Claims (22)

1. A wireless device for automatically recovering from a failure, comprising:
one or more processors; and
memory coupled to the one or more processors and including executable instructions stored thereon that, when loaded on the one or more processors, cause the wireless device to:
detecting whether the wireless device is malfunctioning;
detecting whether a state of a module of the wireless device having a first priority is abnormal in response to detecting that the wireless device has a fault;
restarting a module having a first priority in response to detecting a status anomaly of the module having the first priority of the wireless device;
detecting whether the wireless device has a failure within a predetermined period of time after restarting a module having a first priority; and
restarting a module having a second priority lower than the first priority in response to detecting that the wireless device is still malfunctioning within a predetermined period of time after restarting the module having the first priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.
2. The wireless device of claim 1, wherein:
the module of the wireless device having the first priority comprises a wireless driver, an
Restarting the module having the first priority includes one or more of: soft restart the wireless driver, reload the wireless driver, and roll back the wireless driver to a previous version.
3. The wireless device of claim 1, wherein detecting whether a state of a module of the wireless device having a first priority is abnormal comprises:
detecting whether a state of a module having a first priority of the wireless device is abnormal based on connection information between the wireless device and a user equipment.
4. The wireless device of claim 2, wherein the module of the wireless device having the second priority comprises a processor on which the wireless driver is running.
5. The wireless device of claim 1, wherein:
the wireless device includes a first processor and a second processor, and the first processor and the second processor communicate via a Remote Procedure Call (RPC) protocol, an
The first processor has an RPC server running thereon and the second processor has an RPC client running thereon.
6. The wireless device of claim 5, the executable instructions, when loaded on the one or more processors, further cause the wireless device to:
detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the second priority; and
restarting the module having the third priority in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the second priority, wherein restarting the module having the third priority causes the module having the second priority to be automatically restarted, and wherein the module having the second priority includes the first processor and the module having the third priority includes the second processor.
7. The wireless device of claim 5, wherein the module of the wireless device having the first priority comprises the RPC server.
8. The wireless device of claim 5, wherein the first processor comprises an ATOM processor and the second processor comprises an ARM processor.
9. The wireless device of claim 6, the executable instructions, when loaded on the one or more processors, further cause the wireless device to:
detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the third priority;
in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the third priority, sending an indication to a user or an external device to restart the wireless device, wherein restarting the wireless device causes the module having the third priority to be automatically restarted.
10. The wireless device of claim 1, wherein the wireless device comprises a Wi-Fi device.
11. A method for automatically recovering from a failure of a wireless device, the method comprising:
detecting whether the wireless device is malfunctioning;
detecting whether a state of a module of the wireless device having a first priority is abnormal in response to detecting that the wireless device has a fault;
restarting a module having a first priority in response to detecting a status anomaly of the module having the first priority of the wireless device;
detecting whether the wireless device has a failure within a predetermined period of time after restarting a module having a first priority; and
restarting a module having a second priority lower than the first priority in response to detecting that the wireless device is still malfunctioning within a predetermined period of time after restarting the module having the first priority, wherein restarting the module having the second priority causes the module having the first priority to be automatically restarted.
12. The method of claim 11, wherein:
the module of the wireless device having the first priority comprises a wireless driver, an
Restarting the module having the first priority includes one or more of: soft restart the wireless driver, reload the wireless driver, and roll back the wireless driver to a previous version.
13. The method of claim 11, wherein detecting whether a state of a module of the wireless device having a first priority is abnormal comprises:
detecting whether a state of a module having a first priority of the wireless device is abnormal based on connection information between the wireless device and a user equipment.
14. The method of claim 12, wherein the module of the wireless device having the second priority comprises a processor on which the wireless driver is running.
15. The method of claim 11, wherein:
the wireless device includes a first processor and a second processor, and the first processor and the second processor communicate via a Remote Procedure Call (RPC) protocol, an
The first processor has an RPC server running thereon and the second processor has an RPC client running thereon.
16. The method of claim 15, further comprising:
detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the second priority; and
restarting the module having the third priority in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the second priority, wherein restarting the module having the third priority causes the module having the second priority to be automatically restarted, and wherein the module having the second priority includes the first processor and the module having the third priority includes the second processor.
17. The method of claim 15, wherein the module of the wireless device having the first priority comprises the RPC server.
18. The method of claim 15, wherein the first processor comprises an ATOM processor and the second processor comprises an ARM processor.
19. The method of claim 16, further comprising:
detecting whether the wireless device has a failure within a predetermined period of time after restarting the module having the third priority;
in response to detecting that the wireless device still has a fault within a predetermined period of time after restarting the module having the third priority, sending an indication to a user or an external device to restart the wireless device, wherein restarting the wireless device causes the module having the third priority to be automatically restarted.
20. The method of claim 11, wherein the wireless device comprises a Wi-Fi device.
21. A non-transitory computer-readable storage medium comprising executable instructions stored thereon, which when executed by one or more processors, cause the one or more processors to perform the method of any one of claims 11-20.
22. An apparatus comprising means for performing the method of any of claims 11-20.
CN202010944756.7A 2020-09-10 2020-09-10 Wireless device and method for automatic recovery from failure Pending CN114258053A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010944756.7A CN114258053A (en) 2020-09-10 2020-09-10 Wireless device and method for automatic recovery from failure
PCT/US2021/049592 WO2022056081A1 (en) 2020-09-10 2021-09-09 A wireless device and a method for automatic recovery from failures

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010944756.7A CN114258053A (en) 2020-09-10 2020-09-10 Wireless device and method for automatic recovery from failure

Publications (1)

Publication Number Publication Date
CN114258053A true CN114258053A (en) 2022-03-29

Family

ID=78078412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010944756.7A Pending CN114258053A (en) 2020-09-10 2020-09-10 Wireless device and method for automatic recovery from failure

Country Status (2)

Country Link
CN (1) CN114258053A (en)
WO (1) WO2022056081A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037601B (en) * 2022-06-09 2023-07-14 国能朔黄铁路发展有限责任公司 Network recovery method, system, medium and electronic device for vehicle-mounted network interface device
CN116546551B (en) * 2023-07-06 2023-10-27 深圳市华曦达科技股份有限公司 Wireless network equipment detection method, device and system
CN116761196B (en) * 2023-08-21 2023-12-22 深圳市华曦达科技股份有限公司 Recovery method and device for abnormal work of Bluetooth module
CN116827759B (en) * 2023-08-29 2023-11-03 北京中科网芯科技有限公司 Method and device for processing restarting instruction of converging current divider

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9852035B2 (en) * 2015-08-25 2017-12-26 International Business Machines Corporation High availability dynamic restart priority calculator
CN106161109B (en) * 2016-08-30 2020-04-17 西安诺瓦星云科技股份有限公司 Network abnormity self-recovery method
CN106406491A (en) * 2016-09-22 2017-02-15 杭州龙境科技有限公司 A processor unit restart controlling method and device for a server and a server
US10616347B1 (en) * 2016-10-20 2020-04-07 R&D Industries, Inc. Devices, systems and methods for internet and failover connectivity and monitoring

Also Published As

Publication number Publication date
WO2022056081A1 (en) 2022-03-17

Similar Documents

Publication Publication Date Title
CN114258053A (en) Wireless device and method for automatic recovery from failure
TWI614601B (en) Discharging and charging method, non-transitory computer-readable storage medium, and system for discharging and charging a battery system
CN109309404B (en) O-ring field effect transistor control method and system for battery backup system
US8738094B2 (en) Automatically enabling wireless communication
CN111064626B (en) Configuration updating method, device, server and readable storage medium
US11601354B2 (en) Distributed packet capture
US20160028832A1 (en) Methods and systems for efficient discovery of devices in a peer-to-peer network
CN112398689A (en) Network recovery method and device, storage medium and electronic equipment
US9686202B2 (en) Network-specific data downloading to a mobile device
WO2020043006A1 (en) Terminal connection restoration method and apparatus
US20230403208A1 (en) Apparatus and method for high availability of virtual network function
US20230206870A1 (en) Synchronous display blinking
US11812487B2 (en) Method, device, extender, and computer medium for automatically restoring connection
US11496601B2 (en) Client driven cloud network access system and method
US20220116283A1 (en) Restoring functionality of a wireless device
CN112416641B (en) Method for detecting restarting of controlled end node in master-slave architecture and master control end node
CN113612659A (en) Equipment networking test method and device, electronic equipment and storage medium
CN109426575B (en) Call service processing method and device
CN107038047B (en) Software version synchronization method and device of audio playing equipment and audio playing equipment
CN105007339A (en) Resource download method, device thereof and intelligent terminal
US20240129187A1 (en) Access point device usage-based recommendation
US11936516B2 (en) Using hardware profiles of hardware components to determine performance issues of user devices
CN113316100B (en) Client terminal equipment and power failure reporting method of client terminal equipment
US11943263B2 (en) Recommendation engine for improved user experience in online meetings
US20220369064A1 (en) Systems for controlling acquisition of test data from devices

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20220329