The present application claims priority from a chinese patent application entitled "a method and apparatus for waking up a wireless device" filed by the chinese patent office on 8/2/2017 with application number 201710069855.3, the entire contents of which are incorporated herein by reference.
Disclosure of Invention
The embodiment of the application provides a method for waking up a device, which is used for ensuring that the waking up device can effectively wake up a plurality of awakened devices in an asynchronous mode, and can improve the efficiency of waking up the operation of the plurality of awakened devices and further reduce the power consumption of the awakened devices.
A first aspect of an embodiment of the present application provides a method for waking up a device, including: a wake-up device determining a wake-up time shift of at least one woken-up device, the woken-up device being a device that the wake-up device is to wake up, each of the woken-up device and the wake-up device having at least one primary communication interface and at least one secondary wake-up interface; the wake-up time displacement of each awakened device is a difference value between a first time and a second time which are respectively related to each awakened device, the second time is a time when the wake-up device finishes sending the last trigger message of at least two trigger messages to the at least one awakened device, and the first time which is respectively related to each awakened device is a time when the wake-up device is about to send a wake-up frame to the at least one awakened device; the wake-up device generates the at least two trigger messages, wherein each trigger message is used for indicating that the wake-up device is to send a wake-up frame; the wake-up device sends the at least two trigger messages to an auxiliary wake-up interface of the at least one awakened device; the wake-up device generating at least one wake-up frame for waking up a primary communication interface of the at least one awakened device; and the awakening device sends an awakening frame used for indicating the awakened device related to the first moment to awaken the main communication interface of the awakened device to the auxiliary awakening interfaces of the awakened devices respectively related to the first moment at the first moment related to each awakened device. In the embodiment of the application, the awakened device determines the time for the auxiliary awakening interface of the awakened device to receive the awakening frame according to the trigger message and the awakening time displacement in the asynchronous mode, so that the auxiliary awakening interface of the awakened device is in a dormant state as much as possible and the auxiliary awakening interface is prevented from missing the awakening frame, the operation efficiency of awakening a plurality of awakened devices in the asynchronous mode is improved, and the power consumption of the awakened device is further reduced.
In a possible design, in a first implementation manner of the first aspect of the embodiment of the present application, the awakened device includes at least a first device and a second device, which have different wake-up time shifts. The embodiment of the application increases the condition that the awakening time displacement of two awakened devices is different, and increases the realizability and integrity of the embodiment of the application.
In a possible design, in a second implementation manner of the first aspect of the embodiment of the present application, the awakened device includes at least a first device and a second device that belong to a same multicast group and have the same wake-up time displacement. The embodiment of the application increases the condition that the awakening time displacement of two awakened devices is the same, and increases the realizability and integrity of the embodiment of the application.
In a possible design, in a third implementation manner of the first aspect of the embodiment of the present application, the determining, by the waking device, a wake-up time shift of at least one awakened device includes: the wake-up device assigns a wake-up time shift to each awakened device associated with the wake-up device. The embodiment of the application provides a specific mode for determining the awakening time displacement of the awakened device by the awakening device, and the realizability and operability of the embodiment of the application are improved.
In a possible design, in a fourth implementation manner of the first aspect of the embodiment of the present application, the determining, by the waking device, a wake-up time shift of at least one awakened device includes: and the awakening equipment calculates and obtains the awakening time displacement of each awakened equipment associated with the awakening equipment according to preset information. The embodiment of the application provides a specific mode for determining the awakening time displacement of the awakened device by the awakening device, and the realizability and operability of the embodiment of the application are improved.
In a possible design, in a fifth implementation manner of the first aspect of the embodiment of the present application, the sending, by the wake-up device, the at least two trigger messages to the auxiliary wake-up interface of the at least one awakened device includes: the wake-up device sends N trigger messages to an auxiliary wake-up interface of the at least one awakened device within a preset time length T, where the preset time length T is a period of a working cycle of the auxiliary wake-up interface of the at least one awakened device, N is an integer greater than or equal to 2, and N is greater than or equal to T/W, and W is a wake-up window length of the working cycle of the auxiliary wake-up interface of the at least one awakened device. The embodiment of the application provides specific conditions for the awakening device to send the trigger message, so that the embodiment of the application is more complete in steps.
In a possible design, in a sixth implementation manner of the first aspect of the embodiment of the present application, after the waking device sends the at least two trigger messages to the auxiliary wake-up interface of the at least one awakened device, before the waking device sends the wake-up frame to the auxiliary wake-up interface of the awakened device associated with the first time at the first time associated with each awakened device, the method further includes: and the awakening equipment determines first time respectively related to each awakened equipment according to the second time and the awakening time displacement. The embodiment of the application adds a process that the awakening device determines the moment of sending the trigger message, and adds an implementation mode of the embodiment of the application.
In a possible design, in a seventh implementation manner of the first aspect of the embodiment of the present application, the generating, by the wake-up device, the at least two trigger messages, where each trigger message is used to indicate that the wake-up device is to send a wake-up frame includes: the awakening device generates broadcast trigger messages at least comprising awakening preambles and frame type information, the number of the broadcast trigger messages is at least two, and each broadcast trigger message is used for indicating that the awakening device sends awakening frames; the method for waking up the devices includes that the waking up device sends the wake up frame to the auxiliary wake up interface of the device to be woken up related to the first time at the first time related to each of the devices to be woken up, where the wake up frame is used to instruct the devices to be woken up the main communication interface of the device to be woken up related to the first time, and includes: the wake-up device sends the wake-up frame to the auxiliary wake-up interfaces of the wakened devices respectively related to the first time at the first time related to each wakened device, where the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame, and the wake-up frame is used to instruct the wakened devices related to the first time to wake up the main communication interface of the wakened devices. The embodiment of the application provides a process that the wake-up device sends the wake-up frame when the trigger message is the broadcast trigger message, and the implementation mode of the embodiment of the application is increased.
In a possible design, in an eighth implementation manner of the first aspect of this embodiment of this application, the generating, by the wake-up device, the at least two trigger messages, where each trigger message is used to indicate that the wake-up device is to send a wake-up frame includes: the awakening device generates multicast trigger messages at least comprising awakening preambles, frame type information and multicast address information, the number of the multicast trigger messages is at least two, and each multicast trigger message is used for indicating that the awakening device is to send the awakening frame; the method for waking up the device includes that the waking up device sends the wake up frame to the auxiliary wake up interfaces of the wakened devices respectively related to the first time at the first time related to each wakened device, where the wake up frame is used to instruct the wakened device related to the first time to wake up the main communication interface of the wakened device, and includes: the wake-up device sends the wake-up frame to the auxiliary wake-up interfaces of the wakened devices respectively related to the first time at the first time related to each wakened device, where the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame, and the wake-up frame is used to instruct the wakened devices related to the first time to wake up the main communication interface of the wakened devices. The embodiment of the application provides a process that the wake-up device sends the wake-up frame when the trigger message is the multicast trigger message, and the implementation mode of the embodiment of the application is increased.
A second aspect of the embodiments of the present application provides a method for waking up a device, including: a wakened device acquires a wake-up time displacement of the wakened device, wherein the wakened device is a device to be wakened up by the wakening device, and the wakened device and the wakening device are respectively provided with at least one main communication interface and at least one auxiliary wake-up interface; the awakening time displacement of the awakened device is a difference value between a first time and a second time, the second time is the time when the awakening device sends the last trigger message of at least two trigger messages to the awakened device, and the first time is the time when the awakening device is about to send an awakening frame to the awakened device; the awakened device receives at least two trigger messages sent by the awakening device, wherein each trigger message is used for indicating that the awakening device sends an awakening frame; the awakened device determines the working state of an auxiliary awakening interface of the awakened device according to the at least two trigger messages and the awakening time displacement; the awakened device receives an awakening frame which is sent by the awakening device and used for indicating the awakened device to awaken a main communication interface of the awakened device; and the awakened equipment determines the working state of a main communication interface and/or an auxiliary awakening interface of the awakened equipment according to the awakening frame. In the embodiment of the application, the awakened device acquires the time for the auxiliary awakening interface of the awakened device to receive the awakening frame in the asynchronous mode, so that the auxiliary awakening interface of the awakened device is in a dormant state as much as possible and the auxiliary awakening interface is prevented from missing the awakening frame, the operation efficiency of awakening a plurality of awakened devices in the asynchronous mode is improved, and the power consumption of the awakened device is further reduced.
In a possible design, in a first implementation manner of the second aspect of the embodiment of the present application, the acquiring, by the awakened device, the wake-up time shift of the awakened device includes: the awakened device receives the awakening time displacement of the awakened device sent by the associated awakening device. The embodiment of the application provides a process that the awakened device receives the determined awakening time displacement from the awakening device, so that the realizability and operability of the embodiment of the application are improved.
In a possible design, in a second implementation manner of the second aspect of the embodiment of the present application, the acquiring, by the awakened device, the wake-up time shift of the awakened device includes: and the awakened equipment calculates the awakening time displacement of the awakened equipment according to preset information. The embodiment of the application provides a process of calculating the awakening time displacement of the awakened device according to preset information by the awakened device, so that the realizability and operability of the embodiment of the application are improved.
In a possible design, in a third implementation manner of the second aspect of the embodiment of the present application, the receiving, by the awakened device, at least two trigger messages sent by the awakening device, where each trigger message is used to indicate that the awakening device is to send an awakening frame includes: the awakened device receives at least two broadcast trigger messages sent by the awakening device, wherein each broadcast trigger message at least comprises an awakening preamble and frame type information, and each broadcast trigger message is used for indicating that the awakening device is to send an awakening frame; the awakened device receiving the wake-up frame sent by the wake-up device, where the wake-up frame is used to instruct the awakened device to wake up a main communication interface of the awakened device includes: and the awakened device receives a unicast awakening frame or a multicast awakening frame sent by the awakening device, wherein the unicast awakening frame or the multicast awakening frame is used for awakening a main communication interface of the awakened device. The embodiment of the application provides a process that the awakened device receives the awakening frame when the trigger message is the broadcast trigger message, and the implementation mode of the embodiment of the application is increased.
In a possible design, in a fourth implementation manner of the second aspect of the embodiment of the present application, the receiving, by the awakened device, at least two trigger messages sent by the awakening device, where each trigger message is used to indicate that the awakening device is to send an awakening frame includes: the awakened device receives at least two multicast trigger messages sent by the awakening device, wherein each multicast trigger message at least comprises an awakening preamble, frame type information and group number information, and each multicast trigger message is used for indicating that the awakening device is to send an awakening frame; the awakened device receives the wake-up frame sent by the wake-up device, and the wake-up frame is used for waking up a main communication interface of the awakened device includes: and the awakened device receives a unicast awakening frame or a multicast awakening frame sent by the awakening device, wherein the unicast awakening frame or the multicast awakening frame is used for awakening a main communication interface of the awakened device. The embodiment of the application provides a process that the awakened device receives the awakening frame when the trigger message is the multicast trigger message, and the implementation mode of the embodiment of the application is increased.
In a possible design, in a fifth implementation manner of the second aspect of the embodiment of the present application, the determining, by the awakened device, an operating state of the auxiliary wake-up interface of the awakened device according to the at least two trigger messages and the wake-up time shift includes: the awakened device determines the sleeping duration of an auxiliary awakening interface of the awakened device according to the at least two trigger messages and the awakening time displacement; and the awakened equipment determines the starting time of the auxiliary awakening interface according to the dormancy duration. The embodiment of the application provides a specific process for determining the working state of the auxiliary awakening interface of the awakened device by the awakened device, and the realizability and operability of the embodiment of the application are improved.
In a possible design, in a sixth implementation manner of the second aspect of the embodiment of the present application, the determining, by the awakened device, the sleep duration of the auxiliary wake-up interface of the awakened device according to the at least two trigger messages and the wake-up time shift includes: if the at least two trigger messages comprise index information, the awakened device acquires the index information from the at least two trigger messages, and the index information indicates the number K of the rest trigger messages to be sent by the awakened device; the awakened device may determine the sleep duration I of the auxiliary wake-up interface according to the following formula: k × M + S; the M is the minimum time interval between two adjacent trigger messages, the S is the awakening time displacement of the awakened equipment, and the K is an integer greater than or equal to 0; if the at least two trigger messages do not include the index information, the awakened device may determine that the sleep duration of the auxiliary awakening interface is S, where S is the awakening time displacement of the awakened device. The embodiment of the application provides a specific process for determining the sleep duration of the auxiliary wake-up interface by the wake-up device, and the realizability and operability of the embodiment of the application are improved.
In a possible design, in a seventh implementation manner of the second aspect of the embodiment of the present application, the determining, by the awakened device, the working state of the primary communication interface and/or the secondary wake-up interface of the awakened device according to the wake-up frame includes: the awakened device awakens a main communication interface of the awakened device according to the awakening frame and adjusts an auxiliary awakening interface of the awakened device to be in a closed state; or the awakened device awakens the main communication interface of the awakened device according to the awakening frame and keeps the auxiliary awakening interface of the awakened device in an on state; or the awakened device keeps a main communication module of the awakened device in an on state according to the awakening frame, and adjusts an auxiliary awakening interface of the awakened device to be in an off state; or the awakened device keeps a main communication module of the awakened device in a closed state according to the awakening frame, and adjusts an auxiliary awakening interface of the awakened device to be in a closed state. The embodiment of the application provides the specific working states of the auxiliary awakening interface and the main communication interface of the awakened equipment, and the realizability and operability of the embodiment of the application are improved.
In a possible design, in an eighth implementation manner of the second aspect of the embodiment of the present application, after the awakened device receives the wake-up frame sent by the wake-up device, before the awakened device determines, according to the wake-up frame, an operating state of a primary communication interface and/or an auxiliary wake-up interface of the awakened device, the method further includes: the awakened device determines that the wake-up frame is authentic, where authentic means that the wake-up frame is sent to the awakened device by the awakening device associated with the awakened device. The embodiment of the application provides a confirmation process of the awakened device to the awakening frame, so that the steps of the application are more complete.
A third aspect of embodiments of the present application provides an apparatus, comprising: the system comprises an auxiliary wake-up interface, a main communication interface, a processor, a memory and an antenna module which are connected through a bus; the auxiliary wake-up interface is used for receiving the wake-up frame and the trigger message; the main communication interface is used for sending the wake-up frame and the trigger message and receiving a wake-up signal sent by the auxiliary wake-up interface; the processor is used for executing an instruction for generating a wake-up frame and a trigger message; the memory is used for storing the instruction for generating the wake-up frame and the trigger message; the antenna module is configured to receive the wake-up frame and the trigger message, or send the wake-up frame and the trigger message.
In one possible design, in a first implementation manner of the third aspect of the embodiment of the present application, the method includes: the auxiliary awakening interface is a communication interface provided by the auxiliary awakening module, and the number of the auxiliary awakening interfaces is at least one.
In one possible design, in a second implementation manner of the third aspect of the embodiment of the present application, the method includes: the main communication interface is a communication interface provided by a main communication module, and the number of the main communication interfaces is at least one.
In one possible design, in a third implementation manner of the third aspect of the embodiment of the present application, the method includes: the processor is specifically configured to call the instructions stored in the memory, and execute the method according to the above aspects through the auxiliary wake-up interface and the main communication interface.
A fourth aspect of the present application provides a computer-readable storage medium having stored therein instructions, which, when run on a computer, cause the computer to perform the method of the above-described aspects.
A fifth aspect of the present application provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the above-described aspects.
In the technical solution provided in the embodiment of the present application, a wake-up device determines a wake-up time shift of at least one awakened device, where the awakened device is a device to be woken up by the wake-up device, and each awakened device has at least one main communication interface and at least one auxiliary wake-up interface; the wake-up time displacement of each awakened device is a difference value between a first time and a second time which are respectively related to each awakened device, the first time which is respectively related to each awakened device is a time when the wake-up device is about to send a wake-up frame to the at least one awakened device, and the second time is a time when the wake-up device finishes sending the last trigger message of the at least two trigger messages to the at least one awakened device; the wake-up device generates the at least two trigger messages, wherein each trigger message is used for indicating that the wake-up device is to send a wake-up frame; the wake-up device sends the at least two trigger messages to an auxiliary wake-up interface of the at least one awakened device; the wake-up device generates at least one wake-up frame, wherein the at least one wake-up frame is used for waking up a main communication interface of the at least one awakened device; the awakening device sends the awakening frame to the auxiliary awakening interfaces of the awakened devices respectively relevant to the first moments at the first moments relevant to each awakened device, wherein the awakening frame is used for indicating the awakened devices relevant to the first moments to awaken the main communication interface of the awakened device. In the embodiment of the application, in the asynchronous mode, the awakening device can effectively awaken a plurality of awakened devices, so that the operation efficiency of the plurality of awakened devices is improved, and the power consumption of the awakened devices is further reduced.
Detailed Description
The embodiment of the application provides a method for waking up a device, which is used for ensuring that the device can effectively wake up a plurality of awakened devices in an asynchronous mode, improving the air interface efficiency for waking up a plurality of devices, and further reducing the power consumption of the awakened devices.
In order to make the technical field better understand the scheme of the present application, the following description will be made on the embodiments of the present application with reference to the attached drawings.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims of the present application and in the drawings described above, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein. Furthermore, the terms "comprises," "comprising," or "having," and any variations thereof, are intended to cover non-exclusive inclusions, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
As shown in fig. 2, in the network architecture, the primary communication module provides a primary communication interface, and the secondary wake-up module provides a secondary wake-up interface. When a first device (a waking device) has a message to transmit to a second device (a wakened device), the first device first sends a Wake-up frame (WUP) to an auxiliary Wake-up interface of the second device. After receiving the wake-up frame, the auxiliary wake-up interface of the second device checks a Received Address (RA) of the wake-up frame and confirms the correctness and authenticity of the wake-up frame. If the RA carried by the wake-up frame matches the address of the secondary wake-up interface of the second device, and the wake-up frame is correct and real, the secondary wake-up interface of the second device sends a wake-up signal to the primary communication interface of the second device to wake up the primary communication interface of the second device.
To facilitate understanding, a specific flow of the embodiment of the present application is described below, where the trigger message sent by the wake-up device may be a broadcast trigger message or a multicast trigger message, please refer to fig. 3, and when the trigger message is a broadcast trigger message, an embodiment of a method for waking up a device in the embodiment of the present application includes:
301. the wake-up device determines a wake-up time shift of at least one awakened device.
The wake-up device determines a wake-up time shift of at least one awakened device, the awakened device being a device to be woken up by the wake-up device, each of the wake-up device and the awakened device having at least one primary communication interface and at least one secondary wake-up interface.
It should be noted that the wake-up time of each awakened device is shifted to a difference between a first time and a second time respectively associated with each awakened device, the first time respectively associated with each awakened device is a time when the wake-up device is about to send a wake-up frame to at least one awakened device, and the second time is a time when the wake-up device finishes sending the last broadcast trigger message of the at least two broadcast trigger messages to the at least one awakened device.
The wake-up device may determine the wake-up time shift of the awakened device in a plurality of ways, one way is: after the awakening device acquires the specific number of the awakened devices or in the association process of the awakening device, allocating an awakening time displacement for each awakened device, wherein the allocation can be random or according to a preset rule; the second method comprises the following steps: the awakening device calculates and obtains the awakening time displacement of each awakened device according to preset information, the preset information is information shared by the awakening device and the awakened device, the preset information can be a Media Access Control (MAC) Address, and the MAC Address is 48 bits; the preset information may also be an Association Identifier (AID) having a length of 16 bits, or a Partial Association Identifier (PAID), or a Hashed Partial Association Identifier (Hashed PAID), having a length of 9 bits. For example, the calculation method may be: wake time shift (PAID) W, where W is the length of the wake window of the secondary wake interface of the awakened device.
It is to be understood that the number of the awakened devices may be one, two, three, four, or five, or may be another number of awakened devices, which is not limited herein. When the number of the awakened devices is two or more, the awakened devices may have the same or different awakening time shifts, and a plurality of awakened devices having the same awakening time shift may form a multicast Group (Group-cast Group).
For example, when the number of the awakened devices is two or more, the awakening time shift of each awakened device may be the same or different. As shown in fig. 4, the woken-up devices include the woken-up device 1 to the woken-up device 5, that is, the woken-up devices include the first to fifth devices. For example, the awakened device includes first to fifth devices, the wake-up time shift of the fourth device is the same as the wake-up time shift of the fifth device, the wake-up time shift of the first device is different from the wake-up time shift of the second device, and the wake-up time shift of the first device is different from the wake-up time shift of the third device.
302. The awakened device obtains an awakening time shift of the awakened device.
The awakened device acquires an awakening time shift of the awakened device, wherein the awakened device is a device to be awakened by the awakened device, and the awakened device is provided with at least one main communication interface and at least one auxiliary awakening interface.
It should be noted that the wake-up time of the awakened device is shifted to a difference between a first time and a second time, where the first time is a time when the wake-up device is about to send a wake-up frame to the awakened device, and the second time is a time when the wake-up device finishes sending the last broadcast trigger message of the at least two broadcast trigger messages to the awakened device.
The awakened device can determine the awakening time displacement of the awakened device in a plurality of ways, namely: the awakened device receives the allocated awakening time displacement sent by the awakening device; the second method comprises the following steps: the awakened device calculates the awakening time displacement of the awakened device according to preset information, wherein the preset information is information shared by the awakened device and the awakened device, for example, the preset information can be MAC Address, and the MAC Address is 48 bits; the preset information may also be an association identifier, 16 bits in length, or a partial association identifier, 9 bits in length, or a hashed partial association identifier. For example, the calculation method may be: wake time shift (PAID) W, where W is the length of the wake window of the secondary wake interface of the awakened device.
For example, as shown in fig. 4, the first device to the fifth device respectively obtain their wake-up time shifts, and the first device to the fifth device all have at least one main communication interface and at least one auxiliary wake-up interface. The first time of the first device is different from the first time of the second device, the first time of the fourth device is the same as the first time of the fifth device, and various comparison combinations are provided according to actual situations, and the specific details are not limited herein.
303. The wake-up device generates at least two broadcast trigger messages.
The wake-up device generates at least two broadcast trigger messages, each indicating that the wake-up device will send a wake-up frame. The broadcast trigger message is an auxiliary wake-up interface frame, and the receiving object is an auxiliary wake-up interface of the awakened device.
Each broadcast trigger message includes at least a Wakeup Preamble (Wakeup Preamble) and Frame Type information (Frame Type). The wakeup preamble may further include Frame Start information (SFD). The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise the frame type information.
It should be noted that the Frame format of the Broadcast trigger Message may further include one or more of Legacy 802.11 Preamble (Legacy 802.11 Preamble), Index information (Index), Broadcast Address (Broadcast Address), Transmit Address (Transmit Address), Basic Service Set information (BSS Info), Counter information (Counter), Frame authentication information (Message Integrity Code, MIC), and Frame Check information (Frame Check Sequence, FCS). The Basic Service Set information may be information related to an Identifier of a Basic Service Set in which the awakened device and the awakened device are located, and may be, for example, a Basic Service Set Identifier (BSSID), and the length of the BSSID is 48 bits; or a Hashed Basic Service Set Identifier (Hashed BSSID), which may be 16 bits in length; or a Basic Service Set color value (BSS color), which may be 6 bits in length; or it may also be a Media Access Control Address (MAC Address) or a Hashed Media Access Control Address (Hashed MAC Address) or a Partial Media Access Control Address (Partial MAC Address) of the wake-up device. The media access address may be hashed for the purpose of shortening the MAC address and reducing the number of bits to be transmitted, for example, 16 bits are extracted from 48 bits; it is also possible to hide the real MAC address for security and privacy concerns. The frame format of the broadcast trigger message is shown in fig. 5.
For example, if a Broadcast Address (Broadcast Address) is included in the frame format of the Broadcast trigger message, the Broadcast Address may include basic service set information, i.e., the basic service set information may be a part of the Broadcast Address. If the frame format of the broadcast trigger message includes a Transmit Address (Transmit Address), the Transmit Address may include basic service set information, i.e., the basic service set information may be a part of the Transmit Address. If the frame format of the broadcast trigger message includes frame authentication information (MIC), Counter information (Counter) is also included in the broadcast trigger message, and the frame authentication information is generated according to the content of the broadcast trigger message, the Counter information, and the key; the frame authentication information is used for helping the receiving device to authenticate the authenticity of the broadcast trigger message, and can prevent an attacker from sending a fake broadcast trigger message to interfere the asynchronous awakening operation of the awakening device. If the frame check information is included in the frame format of the broadcast trigger message, the frame check information may be used to help the receiving device check the correctness of the received broadcast trigger message.
304. The wake-up device sends at least two broadcast trigger messages to the secondary wake-up interface of the at least one awakened device.
The wake-up device sends the generated at least two broadcast trigger messages to the auxiliary wake-up interface of the at least one awakened device. In asynchronous mode, the waking device does not know the location of the wake-up window of the secondary wake-up interface of each awakened device. The wake-up device needs to send at least two broadcast trigger messages, at least one of which is expected to be received by the secondary wake-up interface of the wake-up device.
It should be noted that each broadcast trigger message is used to indicate that the waking device needs to wake up at least one woken device, that is, the waking device sends a wake-up frame to at least one woken device, where the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame. When the wake-up frame is a unicast wake-up frame, the unicast wake-up frame can wake up a awakened device; when the wake-up frame is a multicast wake-up frame, the multicast wake-up frame may wake up a plurality of woken-up devices belonging to the same multicast group, and the time when the plurality of woken-up devices receiving the multicast wake-up frame expect to receive the wake-up frame is the same.
It is understood that when the waking device needs to wake up at least two woken devices, the waking device needs to send a series of broadcast trigger messages within a time T, where the time T is a period of a duty-cycling of a secondary wake-up interface of the woken device, the number of broadcast trigger messages included in the series of broadcast trigger messages is N, and N is an integer greater than or equal to T/W, and N is an integer greater than or equal to 2. Where W is the length of the wake window of the duty cycle of the secondary wake interface of the awakened device. If the wake-up windows of the plurality of different awakened devices are different in length, W is the wake-up window with the smallest length among the wake-up windows of all the awakened devices.
For example, as shown in fig. 4, the awakened device in this embodiment includes a first device to a fifth device, W is the length of the minimum wake-up window from the wake-up window of the first device to the wake-up window of the fifth device, and T is the maximum period from the duty cycle period of the auxiliary wake-up interface of the first device to the duty cycle period of the auxiliary wake-up interface of the fifth device.
305. The awakened device receives at least two broadcast trigger messages sent by the awakening device.
The awakened device receives at least two broadcast trigger messages sent by the awakening device, wherein each broadcast trigger message is used for indicating that the awakening device is to send an awakening frame.
It should be noted that, the awakened device receives the broadcast trigger message sent by the awakening device through an auxiliary awakening interface provided by the auxiliary awakening module. The awakened device judges whether the received message is a broadcast trigger message or not at least according to Frame Type information (Frame Type) in the received message.
It is understood that, after the awakened device receives a broadcast trigger message, the operations to be performed by the awakened device may include:
if the frame format of the broadcast trigger message includes basic service set information, the awakened device can determine whether the basic service set information carried in the broadcast trigger message matches with the basic service set in which the awakened device is located; if not, the awakened device ignores the broadcast trigger message, e.g., the awakened device stops receiving and processing the broadcast trigger message. And if so, performing other processing steps. The basic service set information carried in the broadcast trigger message may be as a broadcast address or part of a broadcast address, or as part of a transmission address.
If the frame format of the broadcast trigger message includes the frame authentication information, the awakened device may authenticate the authenticity of the received broadcast trigger message at least according to the frame authentication information, i.e., authenticate whether the broadcast trigger message is from a legally associated awakened device.
If the frame format of the broadcast trigger message includes frame check information, the awakened device can judge whether the received broadcast trigger message is correct or not at least according to the frame check information, namely, check whether the broadcast trigger message has errors in the transmission process or not.
306. And the awakened equipment determines the working state of an auxiliary awakening interface of the awakened equipment according to the at least two broadcast trigger messages and the awakening time displacement.
And the awakened equipment determines the working state of an auxiliary awakening interface of the awakened equipment according to the received at least two broadcast trigger messages and the awakening time displacement.
It should be noted that, when the awakened device determines that the received broadcast trigger message is associated, real and correct with itself, that is, the awakening device associated with the awakened device sends the correct awakening frame to the awakened device, the awakened device may determine the operating state of the auxiliary awakening interface of the awakened device according to at least the content of the received broadcast trigger message.
For example, as shown in fig. 4, the awakened device includes first to fifth devices. The first equipment determines the sleep duration 1 of an auxiliary awakening interface of the first equipment at least according to the content of the received broadcast trigger message and the awakening time displacement; the first device makes the auxiliary wake-up interface of the first device enter a sleep state at least according to the sleep duration 1, and wakes up the auxiliary wake-up interface to wait for a wake-up frame after the sleep duration is over, wherein the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame. If the at least two broadcast trigger messages include the index information, the awakened device acquires the index information from the at least two broadcast trigger messages, and the index information indicates the number K of the remaining broadcast trigger messages to be sent. The first device may determine the sleep duration I of the assisted wake-up interface according to the following formula: the dormancy duration I is K M + S; m is the minimum time interval between two adjacent broadcast trigger messages; s is the wake-up time shift of the awakened device. In this case, the first device needs to obtain a minimum time interval M between the wake-up device sending two adjacent broadcast trigger messages, for example, the minimum time interval M may be determined by the wake-up device and sent to the first device. The steps executed by the second device to the fifth device are the same as the steps executed by the first device, and are not described herein again. If the at least two broadcast trigger messages do not include the index information, the awakened device may determine that the sleep duration of the auxiliary wake-up interface is S, where S is the wake-up time displacement of the awakened device.
It will be appreciated that the method of determining the sleep duration of the secondary wake-up interface of a woken-up device may also be used to determine the time at which the secondary wake-up interface of the woken-up device expects to receive a wake-up frame. For example, the end of the sleep duration of the wake-up-assisted interface is the time when the wake-up-assisted interface expects to receive the wake-up frame.
307. The wake-up device generates at least one wake-up frame.
The wake-up device generates at least one wake-up frame for waking up a main communication interface of the at least one awakened device, and the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame.
It should be noted that, when the wake-up Frame is a unicast wake-up Frame, a Frame format of the unicast wake-up Frame may be as shown in fig. 6, where the unicast wake-up Frame at least includes a wake-up Preamble (Wakeup Preamble), Frame Type information (Frame Type), and a Receive Address (Receive Address). The wakeup preamble may further include Frame Start information (SFD). The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise frame type information. The receiving Address (Receive Address) is a unicast Address, and the unicast Address may be information related to an Identifier of an auxiliary Wake-up interface of the awakened device, for example, an auxiliary Wake-up interface Identifier (Wake-up Radio/Receiver Identifier, WUR ID), an auxiliary Wake-up interface Address (Wake-up Radio/Receiver Address, WUR Address); or information related to media access control of the awakened device, such as MAC Address, Hashed MAC Address, or Partial MAC Address.
The unicast wake-up Frame may further include one or more of Legacy 802.11 Preamble (Legacy 802.11 Preamble), Transmit Address (Transmit Address), Basic Service Set information (BSS Info), Control information (Control Info), Counter information (Counter), Frame authentication information (MIC), and Frame Check information (FCS). The basic service set information (BSS Info) may be information related to an identifier of a basic service set in which the waking device and the awakened device are located, for example, a BSSID or a Hashed BSSID, or a BSS color, or a MAC Address or a Hashed MAC Address of the waking device.
It is understood that, when the wake-up Frame is a multicast wake-up Frame, the Frame format of the multicast wake-up Frame may be as shown in fig. 7, and the multicast wake-up Frame includes at least a wake-up Preamble (Wakeup Preamble), Frame Type information (Frame Type), and a multicast Address (Group-cast Address). The wake-up preamble may further include start of frame information. The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise frame type information. The multicast address may be Group number information (Group ID), or the multicast address may include Group number information. The multicast Address (Group-cast Address) may also be a combination of multiple unicast addresses, that is, the multicast Address may include multiple unicast addresses, and the unicast Address may be information related to an identifier of an auxiliary wake-up interface of the awakened device, for example, a WUR ID, a WUR Address; or information related to the MAC Address of the target awakened device, such as MAC Address, Hashed MAC Address, or Partial MAC Address.
The multicast wakeup frame may further include one or more of a Legacy 802.11 Preamble (Legacy 802.11 Preamble), a Transmit Address (Transmit Address), basic service set information (BSS Info), Control information (Control Info), Counter information (Counter), frame authentication information (MIC), and frame check information (FCS). The basic service set information (BSS Info) may be information related to an identifier of a basic service set in which the waking device and the awakened device are located, for example, a BSSID or a Hashed BSSID, or a BSS color, or a MAC Address or a Hashed MAC Address of the waking device. If the waking device wakes up two or more awakened devices in a multicast manner, the waking device needs to group the awakened devices in advance and divide the associated awakened devices into a plurality of multicast groups.
308. And the awakening equipment determines the moment of sending the awakening frame according to the awakening time displacement.
And the awakening device determines the first time for sending the awakening frame respectively related to each awakened device according to the awakening time displacement and the second time which are determined by each awakened device.
Since the wake-up device needs to contend for the channel before sending the wake-up frame, the time when the wake-up frame is sent is the time when the wake-up device expects to send the wake-up frame. The exact moment when the wake-up device actually sends the wake-up frame is random, which is caused by the wake-up device contending for the channel. The exact moment when the wake-up frame is actually transmitted by the wake-up device is the expected moment when the wake-up frame is transmitted, or is later than the expected moment when the wake-up frame is transmitted (i.e., the time for contending for the channel is increased). The wake-up time shift is determined according to the expected moment when the wake-up device transmits the wake-up frame.
It should be noted that step 308 is after step 306 and before step 309, and there is no necessary sequence between step 308 and step 307. Step 308 may be performed before step 307, or after step 307, or step 308 may be performed simultaneously with step 307, which is not limited herein.
309. The wake-up device sends a wake-up frame to the auxiliary wake-up interface of the associated awakened device, respectively, at a first time associated with each awakened device.
The wake-up device sends a wake-up frame to the auxiliary wake-up interfaces of the respective wakened devices associated with the first time at the first time associated with each wakened device, respectively, where the wake-up frame is used to indicate the main communication interface wakened up by the wakened device associated with the first time.
It should be noted that the waking device may send a unicast waking frame to the awakened device according to the determined time for sending the waking frame, and sequentially awaken a plurality of awakened devices, as shown in fig. 4.
It will be appreciated that if the unicast wake-up time shift is the same for two or more awakened devices, the awakening device may also send a multicast wake-up frame to wake up multiple awakened devices. As shown in fig. 4, the fourth device and the fifth device have the same unicast wake-up time shift and may form a multicast group. The multicast wake-up frame can carry identification information of auxiliary wake-up interfaces of two or more than two awakened devices; or, if two or more woken devices serve as a multicast Group, the multicast wake-up frame may carry identification information (i.e., Group ID) of the multicast Group. The wake-up device may only send unicast wake-up frames; or, the wake-up device may send the unicast wake-up frame first, and then send the multicast wake-up frame; alternatively, the wake-up device may send the multicast wake-up frame first and then send the unicast wake-up frame, which is not limited herein. The receiving devices of the unicast wakeup frame and the multicast wakeup frame are different.
310. The awakened device receives the awakening frame sent by the awakening device.
The awakened device receives an awakening frame sent by the awakening device, and the awakening frame is used for awakening a main communication interface of the awakened device.
Since the exact time when the wake-up frame is sent by the wake-up device is random (randomness is caused by contention for the channel), the secondary wake-up interface of the awakened device may need to wait for a period of time after waking up to receive the wake-up frame. Further, in order to avoid the awakened device missing the wake-up frame, the auxiliary wake-up interface of the awakened device needs to wake up in advance for a period of time to wait for the wake-up frame to be received. The time for the auxiliary wake-up interface of the wake-up device to wake up in advance and the time for waiting to receive the wake-up frame may be determined by the specific internal implementation of the device, and may not be limited herein.
It should be noted that, the awakened device receives the wake-up frame through the auxiliary wake-up interface, and the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame. If the wake-up frame is a unicast wake-up frame, the awakened device needs to check whether the receiving address carried in the unicast wake-up frame is matched with the identifier of the local auxiliary wake-up interface; if not, the awakened device may ignore the unicast wake-up frame, e.g., the first device (or one or more of the second through fifth devices) stops receiving and processing the unicast wake-up frame.
If the wake-up frame is a multicast wake-up frame, the awakened device needs to judge whether the multicast address carried in the multicast wake-up frame is matched with the identifier of the local multicast group, or the awakened device needs to judge whether the multicast address carried in the multicast wake-up frame includes the identifier information of the local auxiliary wake-up interface; if the identification information of the local secondary wakeup interface is not matched or included, the awakened device may ignore the multicast wakeup frame, for example, stop receiving and processing the multicast wakeup frame.
It is understood that, after the awakened device receives the wake-up frame, the operations that the awakened device may perform may further include:
if the frame format of the wake-up frame includes basic service set information, the awakened device may determine whether the basic service set information carried in the wake-up frame matches a basic service set in which the awakened device is located; if not, the awakened device ignores the wake-up frame, e.g., the awakened device stops receiving and processing the wake-up frame. The basic service set information carried in the wake-up frame may be part of the receiving address or the multicast address, or part of the sending address.
If the frame format of the wake-up frame includes frame authentication information, the awakened device may authenticate the authenticity of the received wake-up frame at least according to the frame authentication information, i.e., authenticate whether the wake-up frame is from a legally associated wake-up device.
If the frame format of the wakeup frame includes frame check information, the awakened device can judge whether the received wakeup frame is correct or not at least according to the frame check information, namely, whether the wakeup frame has errors in the transmission process is checked.
311. And the awakened device determines the working state of the main communication interface and/or the auxiliary awakening interface of the awakened device according to the awakening frame.
And the awakened device determines the working state of the main communication interface and/or the auxiliary awakening interface of the awakened device according to the awakening frame.
After the awakened device receives a unicast awakening frame or a multicast awakening frame which is relevant to the awakened device, real and correct, the awakened device determines the working state of the local main communication interface and/or the auxiliary awakening interface according to the content of the received awakening frame. The specific determination method is as follows:
awakened equipment awakens a main communication interface of the awakened equipment according to the awakening frame and adjusts an auxiliary awakening interface of the awakened equipment to be in a closed state; or the awakened device awakens the main communication interface of the awakened device according to the awakening frame and keeps the auxiliary awakening interface of the awakened device in an on state; or the awakened device keeps the main communication module of the awakened device in an on state according to the awakening frame and adjusts the auxiliary awakening interface of the awakened device in an off state, or the awakened device keeps the main communication module of the awakened device in an off state according to the awakening frame and adjusts the auxiliary awakening interface of the awakened device in an off state.
In the embodiment of the application, the wake-up device determines, in the asynchronous mode, the time for the auxiliary wake-up interface of the awakened device to receive the wake-up frame according to the broadcast trigger message and the wake-up time displacement, so that the auxiliary wake-up interface of the awakened device is in a sleep state as much as possible and the auxiliary wake-up interface is prevented from missing the wake-up frame, which improves the air interface efficiency when the plurality of devices are awakened in the asynchronous mode and further reduces the power consumption of the awakened device.
To facilitate understanding, a specific flow of the embodiment of the present application is described below, please refer to fig. 8, where the trigger message is a multicast trigger message, another embodiment of the method for waking up a device in the embodiment of the present application includes:
801. the wake-up device determines a wake-up time shift of at least one awakened device.
The awakening device determines the awakening time displacement of the awakened device according to the multicast group to which the awakened device belongs, the awakened device is a device to be awakened by the awakening device, and each of the awakening device and the awakened device is provided with at least one main communication interface and at least one auxiliary awakening interface.
It should be noted that the wake-up time of each awakened device is shifted to a difference between a first time and a second time respectively associated with each awakened device, the first time respectively associated with each awakened device is a time when the wake-up device is about to send a wake-up frame to at least one awakened device, and the second time is a time when the wake-up device finishes sending the last multicast trigger message of the at least two multicast trigger messages to the at least one awakened device.
The wake-up device may determine the wake-up time shift of the awakened device in a plurality of ways, one way is: after the awakening device acquires the multicast group to which each awakened device belongs or in the association process, allocating a multicast awakening time displacement for each associated multicast group, wherein the allocation can be random or according to a preset rule; the second method comprises the following steps: the wake-up device calculates the multicast wake-up time shift of each multicast Group according to preset information, where the preset information is information common to the wake-up device and the awakened device, and for example, the preset information may be a multicast Group number (Group Identifier, Group ID) or a Hashed multicast Group number (Hashed Group Identifier, Hashed Group ID). For example, the calculation method may be: the wake up time shift is (Group ID) × W, or the wake up time shift is (Hashed Group ID) × W, where W is the length of the wake up window of the secondary wake up interface of the awakened device.
It is understood that there is at least one multicast group, and the number of the awakened devices in each multicast group is at least two, three, four or five, or other number of awakened devices, which is not limited herein. The unicast wake-up time displacement of each awakened device in the multicast group is the same, and the multicast wake-up time displacement of different multicast groups is different.
For example, when the number of the awakened devices is two or more and belongs to a multicast group, as shown in fig. 9, the multicast group includes the awakened devices 1 to 5, that is, the awakened devices include the first device to the fifth device. For example, a multicast group of woken devices includes first to fifth devices, and the wake-up time shift of the first device to the unicast wake-up time shift of the fifth device are all the same.
802. The awakened device obtains an awakening time shift of the awakened device.
The awakened device acquires an awakening time shift of the awakened device, wherein the awakened device is a device to be awakened by the awakened device, and the awakened device is provided with at least one main communication interface and at least one auxiliary awakening interface.
It should be noted that the wake-up time of the awakened device is shifted to a difference between a first time and a second time, where the first time is a time when the wake-up device is about to send a wake-up frame to the multicast group to which the awakened device belongs, and the second time is a time when the wake-up device finishes sending the last multicast trigger message of the at least two multicast trigger messages to the multicast group to which the awakened device belongs.
The awakened device can determine the awakening time displacement of the awakened device in a plurality of ways, namely: the awakened device receives the distributed multicast awakening time displacement sent by the awakening device; the second method comprises the following steps: the awakened device calculates the multicast awakening time displacement of the awakened device according to preset information, wherein the preset information is information common to the awakened device and the awakened device, and for example, the preset information may be a multicast Group number (Group Identifier, Group ID) or a Hashed multicast Group number (Hashed Group Identifier, Hashed Group ID). For example, the calculation method may be: the wake up time shift is (Group ID) × W, or the wake up time shift is (Hashed Group ID) × W, where W is the length of the wake up window of the secondary wake up interface of the awakened device.
For example, as shown in fig. 9, the first device to the fifth device respectively obtain their wake-up time shifts, and the first device to the fifth device all have at least one main communication interface and at least one auxiliary wake-up interface. The first time of the first device to the first time of the fifth device are the same, that is, the first device to the fifth device in the same multicast group expect to receive the wakeup frame at the same time.
803. The wake-up device generates at least two multicast trigger messages.
The wake-up device generates at least two multicast trigger messages, each multicast trigger message indicating that the wake-up device will send a wake-up frame. The multicast trigger message is an auxiliary wakeup interface frame, and the receiving object is an auxiliary wakeup interface of the awakened device.
Each multicast trigger message at least includes a Wakeup Preamble (Wakeup Preamble), Frame Type information (Frame Type), and multicast Address information (Group-cast Address). The wakeup preamble may further include Frame Start information (SFD). The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise the frame type information. The multicast Address information (Group-cast Address) may be a multicast Address, that is, Address information of one multicast Group; or identification information of the multicast Group, for example, a multicast Group number (Group ID); or a combination of multiple auxiliary Wake-up interface addresses, that is, the multicast Address information may include multiple auxiliary Wake-up interface addresses, where the auxiliary Wake-up interface addresses may be auxiliary Wake-up interface identification information (Wake-up Radio/Receiver Identifier, WUR ID), or identification information related to a woken-up device, such as MAC Address or Hashed MAC Address.
It should be noted that the Frame format of the multicast trigger Message may further include one or more of Legacy 802.11 Preamble (Legacy 802.11 Preamble), Index information (Index), transmission Address (Transmit Address), Basic Service Set information (BSS Info), Counter information (Counter), Frame authentication information (MIC), and Frame Check information (FCS). The Basic Service Set information may be information related to an Identifier of a Basic Service Set in which the awakening device and the awakened device are located, for example, may be a Basic Service Set Identifier (BSSID) or a Hashed Basic Service Set Identifier (Hashed BSSID), or may be a Basic Service Set color value (Basic Service Set color, BSS color), or may also be a MAC Address, a Hashed MAC Address, or a Partial MAC Address of the awakening device. The frame format of the multicast trigger message is shown in fig. 10.
For example, the multicast Address (Group-cast Address) may include basic service set information, that is, the basic service set information may be a part of the multicast Address. If the frame format of the multicast trigger message includes frame authentication information (MIC), the multicast trigger message also includes Counter information (Counter), and the frame authentication information is generated according to the content of the multicast trigger message, the Counter information and the secret key; the frame authentication information is used for helping the receiving device to authenticate the authenticity of the multicast trigger message, and can prevent an attacker from sending a false multicast trigger message to interfere the asynchronous awakening operation of the awakening device. If the frame format of the multicast trigger message includes frame check information, the frame check information may be used to help the receiving device check the correctness of the received multicast trigger message.
804. The wake-up device sends at least two multicast trigger messages to the secondary wake-up interface of at least one of the awakened devices.
The wake-up device sends the generated at least two multicast trigger messages to the auxiliary wake-up interface of the at least one awakened device. In asynchronous mode, the waking device does not know the location of the wake-up window of the secondary wake-up interface of each awakened device. The wake-up device needs to send at least two multicast trigger messages, at least one of which is expected to be received by the secondary wake-up interface of the wake-up device.
It is understood that when the waking device needs to wake up at least two woken devices, the waking device needs to send a series of multicast trigger messages within a time T, where the time T is a period of a duty-cycling of a secondary wake-up interface of the woken device, the number of multicast trigger messages included in the series of multicast trigger messages is N, and N is an integer greater than or equal to T/W, and N is an integer greater than or equal to 2. Where W is the length of the wake window of the duty cycle of the secondary wake interface of the awakened device. If the wake-up windows of the plurality of different awakened devices are different in length, W is the wake-up window with the smallest length among the wake-up windows of all the awakened devices.
For example, as shown in fig. 9, the awakened device in this embodiment includes a first device to a fifth device, W is the length of the minimum wake-up window from the wake-up window of the first device to the wake-up window of the fifth device, and T is the maximum period from the duty cycle period of the auxiliary wake-up interface of the first device to the duty cycle period of the auxiliary wake-up interface of the fifth device.
805. The awakened device receives at least two multicast trigger messages sent by the awakening device.
The awakened device receives at least two multicast trigger messages sent by the awakening device, wherein each multicast trigger message is used for indicating that the awakening device is to send an awakening frame.
It should be noted that, the awakened device receives the multicast trigger message sent by the awakening device through an auxiliary awakening interface provided by the auxiliary awakening module. The awakened device judges whether the received message is a multicast trigger message or not at least according to Frame Type information (Frame Type) in the received message.
It is understood that, after the awakened device receives a multicast trigger message, the operations to be performed by the awakened device may include:
if the frame format of the multicast trigger message includes basic service set information, the awakened device can determine whether the basic service set information carried in the multicast trigger message matches with the basic service set in which the awakened device is located; if not, the awakened device ignores the multicast trigger message, e.g., the awakened device stops receiving and processing the multicast trigger message. And if so, performing other processing steps. The basic service set information carried in the multicast trigger message may be part of the multicast address or part of the sending address.
If the frame format of the multicast trigger message includes the frame authentication information, the awakened device may authenticate the authenticity of the received multicast trigger message at least according to the frame authentication information, i.e., authenticate whether the multicast trigger message is from a legally associated awakened device.
If the frame format of the multicast trigger message includes frame check information, the awakened device can judge whether the received multicast trigger message is correct or not at least according to the frame check information, namely, whether the multicast trigger message has errors in the transmission process is checked.
806. And the awakened equipment determines the working state of the auxiliary awakening interface of the awakened equipment according to the at least two multicast trigger messages and the awakening time displacement.
And the awakened equipment determines the working state of an auxiliary awakening interface of the awakened equipment according to the received at least two multicast trigger messages and the awakening time displacement.
It should be noted that, when the awakened device determines that the received multicast trigger message is associated, real and correct with itself, that is, the awakening device associated with the awakened device sends the correct awakening frame to the awakened device, the awakened device may determine the working state of the auxiliary awakening interface of the awakened device according to at least the content of the received multicast trigger message. The awakened device at least comprises a first device and a second device.
For example, as shown in fig. 9, the awakened device includes first to fifth devices. The first equipment determines the sleep duration 1 of an auxiliary awakening interface of the first equipment at least according to the content of the received multicast trigger message and the awakening time displacement; the first device makes the auxiliary wake-up interface of the first device enter a sleep state at least according to the sleep duration 1, and wakes up the auxiliary wake-up interface to wait for a wake-up frame after the sleep duration is over, wherein the wake-up frame may be a unicast wake-up frame or a multicast wake-up frame. If the at least two multicast trigger messages include index information, the awakened device acquires the index information from the at least two multicast trigger messages, and the index information indicates the number K of the remaining multicast trigger messages to be sent. The first device may determine the sleep duration I of the assisted wake-up interface according to the following formula: the dormancy duration I is K M + S; m is the minimum time interval between two adjacent multicast trigger messages; s is the wake-up time shift of the awakened device. In this case, the first device needs to obtain a minimum time interval M between the wake-up device sending two adjacent multicast trigger messages, e.g. the minimum time interval M may be determined by the wake-up device and sent to the first device. The steps executed by the second device to the fifth device are the same as the steps executed by the first device, and are not described herein again. If the at least two multicast trigger messages do not include the index information, the awakened device may determine that the sleep duration of the auxiliary awakening interface is S, where S is the awakening time displacement of the awakened device.
It will be appreciated that the method of determining the sleep duration of the secondary wake-up interface of a woken-up device may also be used to determine the time at which the secondary wake-up interface of the woken-up device expects to receive a wake-up frame. For example, the end of the sleep duration of the wake-up-assisted interface is the time when the wake-up-assisted interface expects to receive the wake-up frame.
807. The wake-up device generates at least one wake-up frame.
The wake-up device generates at least one wake-up frame for waking up a main communication interface of the at least one awakened device, which may be a multicast wake-up frame. If the waking device wakes up a plurality of awakened devices in a multicast manner, the waking device needs to group the awakened devices in advance.
It should be noted that, when the wake-up Frame is a unicast wake-up Frame, a Frame format of the unicast wake-up Frame may be as shown in fig. 6, where the unicast wake-up Frame at least includes a wake-up Preamble (Wakeup Preamble), Frame Type information (Frame Type), and a Receive Address (Receive Address). The wakeup preamble may further include Frame Start information (SFD). The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise frame type information. The receiving Address (Receive Address) is a unicast Address, which may be information related to the identity of the auxiliary wake-up interface of the awakened device, e.g. WUR ID, or WUR Address; or information related to media access control of the awakened device, such as MAC Address, Hashed MAC Address, or Partial MAC Address.
The unicast wake-up Frame may further include one or more of Legacy 802.11 Preamble (Legacy 802.11 Preamble), Transmit Address (Transmit Address), Basic Service Set information (BSS Info), Control information (Control Info), Counter information (Counter), Frame authentication information (MIC), and Frame Check information (FCS). The basic service set information (BSS Info) may be information related to an identifier of a basic service set in which the waking device and the awakened device are located, for example, a BSSID or a Hashed BSSID, or a BSS color, or a MAC Address or a Hashed MAC Address of the waking device.
It should be noted that, when the wake-up Frame is a multicast wake-up Frame, a Frame format of the multicast wake-up Frame may be as shown in fig. 7, where the multicast wake-up Frame at least includes a wake-up Preamble (Wakeup Preamble), Frame Type information (Frame Type), and a multicast Address (Group-cast Address). The wake-up preamble may further include start of frame information. The frame type information may be part of the wake-up preamble, i.e. the wake-up preamble may further comprise frame type information. The multicast address may be Group number information (Group ID), or the multicast address may include Group number information. The multicast Address (Group-cast Address) may also be a combination of multiple unicast addresses, that is, the multicast Address may include multiple unicast addresses, and the unicast Address may be information related to an identifier of an auxiliary wake-up interface of the awakened device, for example, a WUR ID, a WUR Address; or information related to the MAC Address of the target awakened device, such as MAC Address or Hashed MAC Address or Partial MAC Address.
The multicast wakeup frame may further include one or more of a Legacy 802.11 Preamble (Legacy 802.11 Preamble), a Transmit Address (Transmit Address), basic service set information (BSS Info), Control information (Control Info), Counter information (Counter), frame authentication information (MIC), and frame check information (FCS). The basic service set information (BSS Info) may be information related to an identifier of a basic service set in which the waking device and the awakened device are located, for example, a BSSID or a Hashed BSSID, or a BSS color, or a MAC Address or a Hashed MAC Address of the waking device.
The multicast address of the multicast wakeup frame may include basic service set information (BSS Info), i.e., the basic service set information may be part of the multicast address.
If the frame format of the multicast wakeup frame includes a transmission address, the transmission address may include basic service set information (BSS Info), i.e., the basic service set information may be a part of the transmission address.
If the frame format of the multicast wakeup frame includes frame authentication information, the multicast wakeup frame also includes Counter information (Counter), and the frame authentication information is generated according to the content of the multicast wakeup frame, the Counter information and the secret key; the frame authentication information is used for helping the receiving equipment to authenticate the authenticity of the multicast wakeup frame, and can prevent an attacker from sending a false multicast wakeup frame to interfere the wakeup operation.
If the frame format of the multicast wakeup frame includes frame check information, the frame check information may be used to help the receiving device check the correctness of the received multicast wakeup frame.
808. And the awakening equipment determines the moment of sending the awakening frame according to the awakening time displacement.
The awakening device determines first time for sending the awakening frame respectively related to each awakened device at least according to the awakening time displacement and the second time determined by each awakened device, and the first time of the awakened devices in the same multicast group is the same.
Since the wake-up device needs to contend for the channel before sending the wake-up frame, the time when the wake-up frame is sent is the time when the wake-up device expects to send the wake-up frame. The exact moment when the wake-up device actually sends the wake-up frame is random, which is caused by the wake-up device contending for the channel. The exact moment when the wake-up frame is actually transmitted by the wake-up device is the expected moment when the wake-up frame is transmitted, or is later than the expected moment when the wake-up frame is transmitted (i.e., the time for contending for the channel is increased). The wake-up time shift is determined according to the expected moment when the wake-up device transmits the wake-up frame.
It should be noted that, after the step 806 and before the step 809 in the step 808, there is no necessary sequence between the step 808 and the step 807. Step 808 may be performed before step 807, or after step 807, or step 808 may be performed simultaneously with step 807, which is not limited herein.
809. The wake-up device sends a wake-up frame to the auxiliary wake-up interface of the associated awakened device, respectively, at a first time associated with each awakened device.
The wake-up device sends a wake-up frame to the auxiliary wake-up interfaces of the respective wakened devices associated with the first time at the first time associated with each wakened device, respectively, where the wake-up frame is used to indicate the wakened devices associated with the first time to wake up the main communication interface.
It should be noted that, the waking device may send a plurality of unicast waking frames or one multicast waking frame to the awakened device according to the determined time for sending the waking frame, and wake up at least two awakened devices at the same time, as shown in fig. 9.
It is understood that, as shown in fig. 9, the first to fifth devices have the same unicast wake-up time shift and may form a multicast group. The multicast wake-up frame can carry the identification information of the auxiliary wake-up interface of each awakened device in the multicast group; or, the multicast wakeup frame may carry identification information (i.e., Group ID) of the multicast Group of the awakened device. The wake-up device may only send unicast wake-up frames; or, the wake-up device may only send the multicast wake-up frame; or, the wake-up device sends the unicast wake-up frame and the multicast wake-up frame at the same time, which is not limited herein.
810. The awakened device receives the awakening frame sent by the awakening device.
The awakened device receives an awakening frame sent by the awakening device, and the awakening frame is used for awakening a main communication interface of the awakened device.
Since the exact time when the wake-up frame is sent by the wake-up device is random (randomness is caused by contention for the channel), the secondary wake-up interface of the awakened device may need to wait for a period of time after waking up to receive the wake-up frame. Further, in order to avoid the awakened device missing the wake-up frame, the auxiliary wake-up interface of the awakened device needs to wake up in advance for a period of time to wait for the wake-up frame to be received. The time for the auxiliary wake-up interface of the wake-up device to wake up in advance and the time for waiting to receive the wake-up frame may be determined by the specific internal implementation of the device, and may not be limited herein.
811. And the awakened device determines the working state of the main communication interface and/or the auxiliary awakening interface of the awakened device according to the awakening frame.
And the awakened device determines the working state of the main communication interface and/or the auxiliary awakening interface of the awakened device according to the awakening frame.
It should be noted that steps 810 and 811 are similar to steps 310 and 311, respectively, and detailed description thereof is omitted here.
In the embodiment of the application, the wake-up device determines, in the asynchronous mode, the time for the auxiliary wake-up interface of the awakened device to receive the wake-up frame according to the multicast trigger message and the wake-up time displacement, so that the auxiliary wake-up interface is in a sleep state as much as possible and the auxiliary wake-up interface is prevented from missing the wake-up frame, thereby improving the air interface efficiency when the plurality of devices are awakened in the asynchronous mode and further reducing the power consumption of the awakened device.
The above describes a method for waking up a device in the embodiment of the present application, and referring to fig. 11, the following describes a device in the embodiment of the present application, where an embodiment of the device in the embodiment of the present application includes:
fig. 11a is a schematic structural diagram of an apparatus provided in an embodiment of the present application, and refer to fig. 11 a. Fig. 11a shows a possible structural representation of the device according to the exemplary embodiment described above, in the case of an integrated unit. The apparatus 1100 comprises: a processing unit 1102 and a communication unit 1103. Processing unit 1102 is configured to control and manage the actions of the device, e.g., processing unit 1102 is configured to enable the device to perform steps 301, 303, 306-308, and 311 of fig. 3, and/or other processes for the techniques described herein. The communication unit 1103 is configured to support communication between the device and other network entities, and perform steps 302, 304 to 305, and 309 to 310 in fig. 3. The device may further comprise a storage unit 1101 for storing program codes and data of the device.
The Processing Unit 1102 may be a Processor or a controller, such as a Central Processing Unit (CPU), a general purpose Processor, a Digital Signal Processor (DSP), an Application-Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, a transistor logic device, a hardware component, or any combination thereof. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. A processor may also be a combination of computing functions, e.g., comprising one or more microprocessors, a DSP and a microprocessor, or the like. The communication unit 1103 may be a communication interface, a transceiver circuit, etc., wherein the communication interface is a generic term and may include one or more interfaces, such as an auxiliary wake-up interface, a main communication interface. The storage unit 1101 may be a memory.
When the processing unit 1102 is a processor, the communication unit 1103 is a communication interface, and the storage unit 1101 is a memory, the apparatus according to the embodiment of the present application may be the apparatus shown in fig. 11 b.
Referring to fig. 11b, the apparatus 1110 includes: processor 1112, communication interface 1113, memory 1111. Optionally, device 1110 may also include a bus 1114. The communication interface 1113, the processor 1112, and the memory 1111 may be connected to each other by a bus 1114; bus 1114 may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. Bus 1114 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 11b, but this does not mean only one bus or one type of bus.
The device structure shown in fig. 11a or fig. 11b may also be a structure of a device part module, as shown in fig. 12, the device 1200 includes an auxiliary wake-up interface 1201, a main communication interface 1202, a processor 1203, a memory 1204 and an antenna module 1205 connected through a bus 1206; the auxiliary wake-up interface 1201 is configured to receive a wake-up frame and a trigger message; the main communication interface 1202 is configured to send a wake-up frame and a trigger message, and receive a wake-up signal sent by the auxiliary wake-up interface; the processor 1203 is configured to execute instructions for generating a wake-up frame and a trigger message; the memory 1204 is used for storing instructions for generating wake-up frames and trigger messages; the antenna module 1205 is used to receive the wake-up frame and the trigger message, or send the wake-up frame and the trigger message.
The bus 1206 may be divided into an address bus, a data bus, a control bus, etc. as shown in fig. 12, the auxiliary wake-up interface 1201, the main communication interface 1202, the processor 1203, the memory 1204 and the antenna module 1205 are connected by the bus 1206 and perform the relevant steps in the above-described method embodiments.
Optionally, the auxiliary wake-up interface is a communication interface provided by the auxiliary wake-up module, and the auxiliary wake-up interface is at least one.
Optionally, the master communication interface is a communication interface provided by the master communication module, and the master communication interface is at least one.
Optionally, the processor is specifically configured to call the instruction stored in the memory, and execute the method steps as described in fig. 3 or fig. 8 through the auxiliary wake-up interface and the main communication interface.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can store or a data storage device, such as a server, a data center, etc., that is integrated with one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.