Wake-up via network device

By using the L2 unicast mechanism to generate and transmit wake-up frames in wireless networks, the problems of unreliable magic packet transmission and complex configuration in the existing technology are solved, and more efficient network device wake-up and energy management are achieved.

CN113728684BActive Publication Date: 2025-09-19HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN201980095794.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-05-01
Publication Date
2025-09-19
Estimated Expiration
2039-05-01

AI Technical Summary

Technical Problem

Existing WoL and WoWLAN technologies cannot reliably transmit magic packets in multi-hop wireless networks and require changes to the configuration of intermediate routers to avoid drop and flooding effects.

Method used

The first network device generates and transmits a wake-up frame with a specific MAC address to directly wake up the second network device without broadcast frame transmission, and wakes up using the L2 unicast mechanism.

Benefits of technology

It improves the reliability of wake-up, reduces the dependence on intermediate router configuration, avoids flooding effects, and improves the energy efficiency of network devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113728684B_ABST
    Figure CN113728684B_ABST
Patent Text Reader

Abstract

The examples described herein provide for waking up a network device. The examples include: receiving, by a network interface of a first network device having a first media access control (MAC) address, a request to wake up a second network device, the second network device having a second MAC address assigned to the same subnet as the first MAC address; and, in response to the request, generating, by the first network device, a first wake-up frame having a destination address of the second MAC address and configured to cause the second network device to transition from operating in a first power mode to operating in a second power mode. The examples include transmitting, by the network interface of the first network device, the first wake-up frame to the second MAC address of the second network device.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] A network device can provide connectivity to a wireless network by establishing wireless communication links between nodes of the network. For example, a network device can establish wireless communication links between nodes of a wireless local area network (WLAN). In addition, a network device can provide connectivity to a wireless network by establishing a wireless communication link between the wireless network and another network. For example, a network device can provide connectivity to a WLAN by establishing a wired and / or wireless communication link between a WLAN and a local area network (LAN), another wireless local area network (WLAN), a wide area network (WAN) (e.g., the Internet), a cellular network, or a combination thereof.

[0002] Multiple network devices can be used to provide connectivity to a wireless network. For example, a first network device can operate as a gateway node that is connected to a core network (e.g., the Internet) via a wired communication link, and a second network device can operate as a remote node that is connected to the first network device via a wired and / or wireless communication link. In this example, each of the first network device and the second network device can establish a wireless communication link between nodes (e.g., client devices) of the WLAN. Using multiple network devices to provide connectivity to a wireless network may be advantageous, for example, to extend the range of the network, increase client capacity, channel utilization, signal quality, reliability, or bandwidth of the network, or a combination thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0003] The various features and advantages of the present invention will become apparent from the following description of examples of the invention, given by way of example only and made with reference to the accompanying drawings, in which:

[0004] Figure 1 is a block diagram of wakeup by an example network device.

[0005] Figure 2 is a block diagram of an example system directed to wakeup by a first network device.

[0006] Figure 3 is a block diagram of an example system directed to wakeup by a third network device.

[0007] Figure 4A and Figure 4B A flow chart illustrating wake-up by an example network device is shown.

[0008] Figure 5 is a block diagram of an example computer system in which various embodiments described herein may be implemented. DETAILED DESCRIPTION

[0009] As described above, multiple network devices can be used to provide connectivity to a wireless network. However, using multiple network devices in a wireless network can result in increased energy consumption. For example, a large-scale WLAN (such as an enterprise or campus WLAN) may have hundreds or even thousands of network devices. In such an example, when all network devices must always operate in full power mode, even when some network devices are not in use, there may be energy shortages.

[0010] Recently, efforts have been made to improve the energy efficiency of network devices by using Wake-on-LAN (WoL) or Wake-on-WLAN (WoWLAN) technologies. As used herein, "WoL" refers to an Ethernet standard that allows a target device in a LAN to be controlled by transmitting a broadcast frame called a "magic packet" to the target device. As used herein, "WoWLAN" refers to a Wi-Fi standard that is complementary to WoL and allows a target device in a WLAN to be controlled by transmitting a magic packet to the target device via a Wi-Fi-based signal. The magic packet can contain 6 bytes anywhere in its payload, each of which has a value of 255 (i.e., FF FF FF FF FF FF in hexadecimal), followed by 16 repetitions of the 48-bit MAC address of the target device, for a total of 102 bytes. When the target device receives the magic packet, the magic packet is configured to instruct the target device to "wake up", for example, to switch from operating in a power saving mode to operating in a full power mode. By using WoL and WoWLAN technologies, a network device can be placed in a power saving mode when not in use, and then instructed to wake up before use by transmitting the magic packet to the network device. Therefore, WoL and WoWLAN can improve the energy efficiency of network devices.

[0011] Although WoL and WoWLAN offer great potential for improving the energy efficiency of network devices, existing WoL and WoWLAN technologies may encounter at least the following problems for wireless networks. First, when magic packets are broadcast frames, they may not be routed between multiple hops (e.g., intermediate nodes) in a wireless network. For example, when magic packets are transmitted as broadcast frames using a connectionless protocol (such as the User Datagram Protocol (UDP)), the magic packets may be dropped by intermediate routers before reaching the target network device because the intermediate routers may not recognize the destination address (i.e., the broadcast address) of the magic packet. In addition, when the target network device is in power saving mode, it may not be possible to transmit the magic packet using a connection-oriented protocol (such as the Transmission Control Protocol (TCP)). Therefore, in wireless networks with multi-hop routing, existing WoL and WoWLAN technologies may not be able to reliably transmit magic packets to network devices. Second, although attempts have been made to overcome this problem by transmitting magic packets as subnet-directed broadcasts (SDBs) rather than as broadcast frames, SDBs may require changes to the configuration of intermediate routers. As used herein, "SDB" (i.e., IP Directed Broadcast) refers to the transmission of a Layer 3 (L3) packet whose destination address is the broadcast address for a given destination subnet, but which originates from a node that is not itself part of the destination subnet. When a packet transmitted by an SDB reaches an intermediate router, the intermediate router may broadcast the packet using a Layer 2 (L2) broadcast. However, as described above, allowing SDB for an intermediate router may require changes to the configuration of the intermediate router, and such a requirement may be cumbersome for a wireless network with multiple network devices. Furthermore, a wireless network with routers configured to allow SDB may be more susceptible to flooding the wireless network with broadcast packets.

[0012] To address these issues, the examples described herein may include a network interface of a first network device having a first media access control (MAC) address receiving a request to wake up a second network device having a second MAC address, the second MAC address being assigned to the same subnet as the first MAC address, and in response to the request, generating a first wake-up frame by the first network device, the first wake-up frame having a destination address of the second MAC address and configured to cause the second network device to transition from operating in a first power mode to operating in a second power mode, and transmitting the first wake-up frame by the network interface of the first network device to the second MAC address of the second network device.

[0013] In this manner, the examples described herein can generate a first wake-up frame in response to a request, the first wake-up frame having a second MAC address that is the same as the destination address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode, and transmit, by the network interface, the first wake-up frame to the second MAC address, thereby allowing the second network device to be woken up without the need to transmit a broadcast frame. Thus, the examples described herein can provide greater reliability compared to existing WoL and WoWLAN technologies, which require the transmission of magic frames as broadcast frames that can be discarded by intermediate routers. Furthermore, the examples described herein can be easier to implement and less susceptible to flooding than existing WoL and WoWLAN technologies, which require intermediate routers to be configured to transmit magic packets as SDBs.

[0014] In the examples described herein, a "frame" refers to a formatted data unit that contains (i.e., encapsulates) a single network packet. According to the Open Systems Interconnection model (OSI model), a frame refers to a protocol data unit (PDU) at the L2 link layer. In addition, according to the Institute of Electrical and Electronics Engineers (IEEE) 802.3 (e.g., Ethernet), IEEE 802.15.1, IEEE 802.15.4, or The MAC address of the packet may be a number of bytes long, with the MAC address of the packet being a number of bytes long. ...

[0015] In the examples described herein, a "packet" (i.e., a network packet) refers to a formatted data unit that can be transmitted across one or more communication links of one or more networks. According to the OSI model, a packet refers to a PDU at the L3 network layer. In addition, according to the Transmission Control Protocol / Internet Protocol (TCP / IP), a packet (i.e., an IP packet) may include an IP header. The IP header includes a source IP address and a destination IP address. In some examples, a packet may include a header and a payload. In such examples, the IP header may include control information for transmitting the payload, such as source and destination information, sequencing information, service information, tag information, other transmission-related information, or the like, or a combination thereof. In some examples, the payload may include data carried by the packet. Those skilled in the art will appreciate that a packet may include data units in any suitable (multiple) formats now known or later developed.

[0016] In the examples described herein, a "subnet" (i.e., an IP subnet) refers to a logical partition of an IP network. A subnet includes one or more IP addresses. A subnet can be characterized by its subnet mask (i.e., network mask), which is a bit mask that, when applied to any IP address in the network using a bitwise AND operation, produces a routing prefix for the IP network.

[0017] Now refer to the figure, Figure 1 is a block diagram of an example network device 100 for transmitting a first wake-up frame 152 based on a request 144. Figure 1 In the example of , a network device 100 (which may be referred to herein as a “first” network device 100) includes at least one processing resource 110 and at least one machine-readable medium 120, the machine-readable medium 120 including at least instructions 122 (e.g., encoded therewith), which instructions 122 are executable by the at least one processing resource 110 of the network device 100 to implement the functionality described herein with respect to the instructions 122.

[0018] exist Figure 1 In the examples of the present invention, the network device 100 can be a wireless access point (WAP). In some examples, the network device 100 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or a combination thereof. In the examples described herein, "WAP" refers to a receiving point for any known or convenient wireless access technology, which may become known in the future. In particular, the term WAP is not intended to be limited to WAPs based on IEEE 802.11. A WAP generally acts as an electronic device that is suitable for allowing wireless devices to be connected to a wired network via various communication standards. The WAP may include any necessary hardware components to perform the present invention disclosed herein, including but not limited to: a processor, memory, a display device, an input device, a communication device, etc. A person of ordinary skill in the art will understand that the network device 100 can be any suitable (multiple) type of network device manufactured by any suitable (multiple) manufacturer.

[0019] exist Figure 1 In the example of FIG, the network device 100 includes a network interface 130 having a first media access control (MAC) address. The network interface 130 may include a network interface controller (NIC) having one or more ports (e.g., Ethernet ports), one or more sockets, one or more adapters, or a combination thereof. In addition, although Figure 1 The network device 100 is shown as including one network interface 130, but it will be understood that the network device 100 may include any suitable number and type(s) of network interfaces.

[0020] exist Figure 1In some examples, network interface 130 may include a radio having a first MAC address. In some examples, one or more basic service set identifiers (BSSIDs) may correspond to the first MAC address of the radio of network interface 130. In some examples, the radio may operate in one or more frequency bands. For example, the radio may operate in a 5 GHz band that complies with the IEEE 802.11ac standard, a 2.4 GHz band that complies with one or more of the IEEE 802.11ac, 802.11n, and 802.11g standards, or a combination thereof. Those skilled in the art will appreciate that the radio of network interface 130 may transmit and receive wireless signals that comply with any suitable type(s) of wireless communication standards now known or later developed and / or operate in any suitable frequency range(s). In some examples, the radio may include antennas that transmit directional and / or omnidirectional signals. In the examples described herein, a "directional" signal refers to a signal that radiates more strongly in one or more directions along the azimuth plane (i.e., the horizontal plane) than in one or more other directions, while an "omnidirectional" signal refers to a signal that radiates evenly in all directions along the azimuth plane. In some examples, at least one radio may include a phased array antenna. In the examples described herein, a "phased array antenna" refers to an antenna array that can create a directional signal that can be electronically steered to point in different directions without moving the antenna. In some examples, the phased array antenna may include directional and / or omnidirectional antenna arrays that can focus radio frequency (RF) energy into a specific spatial direction. Those skilled in the art will appreciate that the network interface 130 may include at least one radio that may include any suitable type(s) of antenna(s) now known or later developed. Furthermore, those skilled in the art will appreciate that the network device 100 may include two, four, eight, or any suitable number of radios.

[0021] exist Figure 1 In the example of , the network device 100 can establish a communication link 140 with the network coordinator. Figure 1 In the example of , network device 100 can establish a communication link 150 with a second network device. Figure 1 In the example of , network device 100 can establish communication link 160 with a third network device. Figure 1 In some examples, network device 100 can establish a wireless communication link with one or more nodes (e.g., client devices) of a WLAN. In some examples, one or more of communication links 140, 150, and 160 can include a wired link (e.g., a wire, cable, or optical fiber), a wireless link (e.g., a Wi-Fi link, Link, Bluetooth Low Energy (BLE) link, link, link, cellular link), etc., or a combination thereof. Those skilled in the art will appreciate that each of the communication links 140, 150, and 160 can use any suitable (multiple) types of wired and / or wireless links now known or later developed. In some examples, one or more of the communication links 140, 150, and 160 can be established via the network interface 130. In some examples, one or both of the communication links 140 and 160 can use at least one connection-oriented protocol (such as TCP), at least one connection protocol (such as UDP), etc., or a combination thereof. Those skilled in the art will appreciate that each of the communication links 140 and 160 can use any suitable (multiple) types of (multiple) data transmission protocols now known or later developed. In some examples, the communication link 150 can use at least one connectionless protocol, such as UDP. Those skilled in the art will appreciate that the communication link 150 can use any suitable (multiple) types of (multiple) data transmission protocols now known or later developed.

[0022] In the examples described herein, the client device may include a processor, a memory, and an input / output interface for wired and / or wireless communication. In some examples, the client device may include a laptop computer, a desktop computer, a mobile device, and / or other wireless devices, although the examples of the present disclosure are not limited to such devices. In the examples described herein, a mobile device may refer to a device that is (can be) carried and / or worn by a user. For example, in addition to other types of mobile devices, the mobile device may be a phone (e.g., a smartphone), a tablet computer, a personal digital assistant (PDA), smart glasses, and / or a device worn on a wrist (e.g., a smart watch). In some examples, the client device may include a network device.

[0023] exist Figure 1In an example of , instructions 122 may be configured to receive a request 144 to wake up a second network device having a second MAC address that is assigned to the same subnet as the first MAC address. In some examples, request 144 may be received from a network coordinator via communication link 140. Request 144 may include at least one frame having a destination MAC address corresponding to a MAC address of network device 100 (e.g., a first MAC address). Request 144 may include at least one packet having a source IP address corresponding to an IP address assigned to the network coordinator and / or a destination IP address corresponding to an IP address assigned to network device 100. Request 144 may include at least one packet having a payload configured to indicate the first MAC address, the second MAC address, a netmask corresponding to the subnets assigned to the first MAC address and the second MAC address, or a combination thereof. It will be understood that request 144 may include any suitable type of frame and / or packet having any suitable type(s) of payload(s).

[0024] exist Figure 1 In an example of , instructions 122 may be configured to generate a first wake-up frame 152 having the second MAC address as a destination address and configured to cause the second network device to wake up (e.g., transition from operating in a first power mode to operating in a second power mode) based on (e.g., in response to) request 144. The first wake-up frame 152 may have the first MAC address as a source address. The first wake-up frame 152 may include a packet configured to instruct the second network device to wake up. In some examples, the packet may include 6 bytes anywhere in its payload, each of which has a value of 255 (i.e., FF FF FF FF FF FF in hexadecimal), followed by 16 repetitions of the 48-bit MAC address of the target computing device, for a total of 102 bytes. It will be understood that the first wake-up frame 152 may include any suitable type of frame, including any suitable type of packet, with any suitable type(s) of payload(s).

[0025] In the examples described herein, the first power mode may correspond to a power save mode or a power off mode of the second network device. In the examples described herein, the second power mode may correspond to a full power mode or a power on mode of the second network device. In the examples described herein, a "power save mode" of a device refers to a power mode that consumes less energy than another power mode in a given time period, and a "power off mode" of a device refers to a power mode that consumes no energy in a given time period. In the examples described herein, a "full power mode" or "power on mode" of a device refers to a power mode that consumes more energy than another power mode in a given time period. In some examples, the power save mode or the power off mode of a network device may correspond to a standby mode that allows the network device to receive wake-up packets but does not allow the network device to perform certain other functionality that the network device can perform in full power mode or the power on mode.

[0026] exist Figure 1 In some examples, instructions 122 may be configured to cause network interface 130 to transmit first wakeup frame 152 to a second MAC address of the second network device. That is, instructions 122 may be configured to transmit first wakeup frame 152 as an L2 unicast frame to the second MAC address of the second network device. In some examples, first wakeup frame 152 may be transmitted to the second network device via communication link 150.

[0027] exist Figure 1 In an example of , instructions 122 can be configured to receive an acknowledgment frame 154 based on the first wake-up frame 152 received at the second MAC address of the second network device. In some examples, the acknowledgment frame 154 can be received by the network interface 130 of the network device 100. In some examples, the acknowledgment frame 154 can be received from the second network device via the communication link 150. The acknowledgment frame 154 can have the second MAC address as the source address and the first MAC address as the destination address. The acknowledgment frame 154 can include a packet having a payload that is configured to indicate to the network device 100 that the first wake-up frame 152 was received at the second MAC address of the second network device. It will be understood that the acknowledgment frame 154 can include any suitable type of frame, including any suitable type of packet, with any suitable type(s) of payload(s).

[0028] exist Figure 1In an example, instructions 122 can be configured to determine that first wake-up frame 152 is received at a second MAC address of a second network device based on (e.g., in response to) a triggering event. In some examples, the triggering event can be a signal received by network device 100 from a computing device (e.g., a second network device, a client device, etc.). In some examples, the triggering event can occur a predetermined period of time after first wake-up frame 152 is received at the second MAC address of the second network device.

[0029] exist Figure 1 In some examples, instructions 122 may be configured to transmit a signal 142 indicating the first MAC address to the network coordinator. In some examples, signal 142 may be transmitted to the network coordinator via communication link 140. Figure 1 In an example of , instructions 122 may be configured to receive a request 144 to wake up the second network device based on (e.g., in response to) signal 142. Signal 142 may include at least one packet having a payload configured to indicate the first MAC address, the netmask corresponding to the subnet assigned to the first MAC address, or a combination thereof to the network coordinator. Signal 142 may include at least one frame having a source MAC address corresponding to the MAC address of network device 100 (e.g., the first MAC address) and / or a destination MAC address corresponding to a MAC address associated with the network coordinator. Signal 142 may include at least one packet having a source IP address corresponding to the IP address assigned to network device 100 and / or a destination IP address corresponding to the IP address assigned to the network coordinator. It will be understood that signal 142 may include any suitable type of frame and / or packet having any suitable type(s) of payload(s).

[0030] exist Figure 1In an example, instructions 122 may be configured to transmit a signal 162 to a third network device based on (e.g., in response to) a first wake-up frame 152 transmitted to a second MAC address of the second network device, the signal 162 indicating that the first wake-up frame 152 was transmitted to the second MAC address of the second network device. In some examples, the signal 162 may be transmitted to the second MAC address of the second network device via the communication link 160. The signal 162 may correspond to the first wake-up frame 152. In some examples, the signal 162 may include the first wake-up frame 152. The signal 162 may include at least one packet having a payload configured to indicate to the third network device that the first wake-up frame 152 was transmitted to the second MAC address of the second network device. The signal 162 may include at least one frame having a source MAC address corresponding to the MAC address of the network device 100 (e.g., the first MAC address) and / or a destination MAC address corresponding to a third MAC address associated with the third network device, wherein the third MAC address is assigned to the same subnet as the first MAC address and the second MAC address. Signal 162 may include at least one packet having a source IP address corresponding to the IP address assigned to network device 100 and / or a destination IP address corresponding to the IP address assigned to a third network device. It will be appreciated that signal 162 may include any suitable type of frame and / or packet having any suitable type(s) of payload(s).

[0031] In this way, Figure 1 The example network device 100 may provide improved wake-up functionality. For example, the instructions 122 may be configured to generate, in response to the request 144, a first wake-up frame 152 having a second MAC address as a destination address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode, and to transmit, by the network interface 130, the first wake-up frame 152 to the second MAC address, thereby allowing the second network device to be woken up without requiring the transmission of a broadcast frame. Thus, the example network device 100 may provide greater reliability compared to existing WoL and WoWLAN technologies, which require the transmission of magic packets as broadcast frames that may be dropped by intermediate routers. Furthermore, the example network device 100 may be easier to implement and less susceptible to flooding because, unlike existing WoL and WoWLAN technologies, the wake-up functionality of the network device 100 does not require intermediate routers between the network devices to be configured to forward magic packets as SDBs.

[0032] Figure 2 is a block diagram of an example system 201 for wakeup via a first network device. Figure 2 In the example of FIG. 1 , the system 201 may include the first network device 100, as described above with respect to FIG. Figure 1As described, the system 201 may include a second network device 200, a network coordinator 250, and a network 290.

[0033] exist Figure 2 In the example of FIG. 1 , second network device 200 includes at least one processing resource 210 and at least one machine-readable medium 220 including at least instructions 222 (e.g., encoded therewith) that are executable by at least one processing resource 210 of second network device 200 to implement the functionality described herein with respect to instructions 222. In some examples, one or more instructions 222 can be the same as or similar to one or more instructions 122, as described above.

[0034] exist Figure 2 In the examples, second network device 200 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or a combination thereof. In some examples, second network device 200 can include a WAP. Those skilled in the art will appreciate that second network device 200 can be any suitable type of network device manufactured by any suitable manufacturer(s).

[0035] exist Figure 2 In the example of , the second network device 200 includes a network interface 230 having a second MAC address. The network interface 230 may include a NIC having one or more ports (eg, Ethernet ports), one or more sockets, one or more adapters, or a combination thereof. In addition, although Figure 2 The second network device 200 is shown as including one network interface 230 , but it will be understood that the second network device 200 may include any suitable number and type(s) of network interfaces.

[0036] exist Figure 2In some examples, network interface 230 may include a radio with a second MAC address. In some examples, one or more BSSIDs may correspond to the second MAC address of the radio of network interface 230. In some examples, the radio may operate in one or more frequency bands. For example, the radio may operate in a 5 GHz band that complies with the IEEE 802.11ac standard, a 2.4 GHz band that complies with one or more of the IEEE 802.11ac, 802.11n, and 802.11g standards, or a combination thereof. Those skilled in the art will appreciate that the radio of network interface 230 may transmit and receive wireless signals that comply with any suitable type(s) of wireless communication standards now known or later developed and / or operate in any suitable frequency range(s). In some examples, the radio may include an antenna that transmits directional and / or omnidirectional signals. In some examples, the radio may include a phased array antenna. Those skilled in the art will appreciate that the radio of network interface 230 may include any suitable type(s) of antenna(s) now known or later developed. Furthermore, those skilled in the art will appreciate that the second network device 200 may include two, four, eight, or any suitable number of radios, and that the second network device 200 may have the same number of radios as the first network device 100 .

[0037] exist Figure 2 In the example of , the first network device 100 can establish a communication link 140 with the network coordinator 250, and the second network device 200 can establish a communication link 240 with the network coordinator 250. Figure 2 In some examples, the first network device 100 and the second network device 200 can establish wireless communication links with one or more nodes (e.g., client devices) of the WLAN. In some examples, the communication link 240 can be established via the network interface 230. In some examples, the communication link 240 can include a wired link (such as a wire, cable, or optical fiber), a wireless link (such as a Wi-Fi link, link, BLE link, link, link, cellular link), etc., or a combination thereof. Those skilled in the art will appreciate that the communication link 240 can use any suitable (multiple) type(s) of wired and / or wireless links now known or later developed. In some examples, the communication link 240 can be established via the network interface 230. In some examples, the communication link 240 can use at least one connection-oriented protocol (such as TCP), at least one connection protocol (such as UDP), etc., or a combination thereof. Those skilled in the art will appreciate that the communication link 240 can use any suitable (multiple) type(s) of data transmission protocol now known or later developed. In some examples, the first network device 100, the second network device 200, and the network coordinator 250 can operate as nodes in a WLAN.

[0038] exist Figure 2 In the example of FIG, the network coordinator 250 includes at least one processing resource 260 and at least one machine-readable medium 270 including at least instructions 272 (or encoded therewith), which are executable by the at least one processing resource 260 of the network coordinator 250 to implement the functionality described herein with respect to the instructions 272. Figure 2 In some examples, network coordinator 250 is a service (e.g., instructions 272 stored in at least one machine-readable medium and executable by at least one processing resource) executing on at least one computing device that coordinates switching, routing, and / or bridging across one or more networks (e.g., network 290). In some examples, network coordinator 250 may execute on at least one computing device in a LAN or WLAN. In some examples, network coordinator 250 may execute on at least one cloud computing device. In some examples, network coordinator 250 may execute on at least one or more software-defined networks (SDNs). In some examples, network coordinator 250 may be provided as a service (aaS) to one or more networks. In some examples, network coordinator 250 may collect network operation information from various nodes (e.g., network devices) of one or more networks, including network traffic load information, network topology information, network usage information, etc. In such examples, network coordinator 250 may then transmit commands to various network infrastructure devices of one or more networks to modify network topology and network routing to achieve various network efficiency and effectiveness goals.

[0039] exist Figure 2 In the example of FIG, the network coordinator 250 can establish a communication link 280 with the network 290. In some examples, the communication link 280 can include a wired link (such as a wire, cable, optical fiber, etc. or a combination thereof), a wireless link (such as a Wi-Fi link, link, BLE link, link, link, cellular link, etc., or a combination thereof) or a combination of at least one wired link and at least one wireless link. Those skilled in the art will understand that the communication link 280 can use any suitable (multiple) type(s) of wired and / or wireless link(s) now known or later developed. In some examples, the communication link 280 can be established via one or more network interfaces of the network coordinator 250. In some examples, the communication link 280 can be established via one or more radios of the network coordinator 250. The communication link 280 can use any suitable (multiple) data transmission protocol, including at least one connection-oriented protocol (such as, Transmission Control Protocol (TCP)), at least one connectionless protocol (such as User Datagram Protocol (UDP)), etc., or a combination thereof.

[0040] exist Figure 2 In the examples described herein, the network 290 may include a computer network. In some examples, the network 290 may include one or more local area networks (LANs), virtual LANs (VLANs), wireless local area networks (WLANs), virtual private networks (VPNs), SDNs, wide area networks (WANs), the Internet, or the like, or a combination thereof. In the examples described herein, for example, the WAN may include a wired WAN, a wireless WAN, a hybrid WAN, a software-defined WAN (SD-WAN), or the like, or a combination thereof. Figure 2 In the example of , network 290 may include a cellular network. Those skilled in the art will appreciate that network 290 may include any suitable type(s) of network(s) now known or later developed.

[0041] exist Figure 2 In the example of , the instructions 222 may be configured to receive the first wake-up frame 152 by the network interface 230. Figure 2 In the example of , instructions 222 may be configured to transition from operating in the first power mode to operating in the second power mode based on (eg, in response to) the first wake-up frame 152. Figure 2 In the example of , the instructions 222 may be configured to transmit the confirmation frame 154 based on (eg, in response to) the first wake-up frame 152. In some embodiments, the confirmation frame 154 may be transmitted by the network interface 230 of the second network device 200.

[0042] exist Figure 2In an example, instructions 222 may be configured to transmit a signal 242 indicating the second MAC address to network coordinator 250. In some examples, signal 242 may be transmitted to network coordinator 250 via communication link 240. Signal 242 may include at least one packet having a payload configured to indicate the second MAC address, a netmask corresponding to a subnet assigned to the second MAC address, or a combination thereof to network coordinator 250. Signal 242 may include at least one frame having a source MAC address corresponding to a MAC address of second network device 200 (e.g., the second MAC address) and / or a destination MAC address corresponding to a MAC address associated with network coordinator 250. Signal 242 may include at least one packet having a source IP address corresponding to an IP address assigned to second network device 200 and / or a destination IP address corresponding to an IP address assigned to network coordinator 250. It will be understood that signal 242 may include any suitable type of frame and / or packet having any suitable type(s) of payload(s).

[0043] exist Figure 2 In the example of , instructions 272 may be configured to receive a first signal 142 indicating a first MAC address. Figure 2 In the example of , instructions 272 may be configured to receive a second signal 242 indicating a second MAC address. Figure 2 In the example of , the instructions 272 may be configured to transmit a request 144 to wake up the second-network device 200 to the first-network device 100 based on (eg, in response to) the first signal 142 and / or the second signal 242 .

[0044] exist Figure 2 In the example of , instructions 272 may be configured to receive a third signal indicating a third MAC address of a third network device, wherein the third MAC address is assigned to the same subnet as the first MAC address and the second MAC address. Figure 2 In the example, instruction 272 can be configured to transmit a request to determine whether a wake-up frame is transmitted by the first network device 100 to the second MAC address of the second network device 200 to a third MAC address of the third network device based on (e.g., in response to) a third signal.

[0045] exist Figure 2In the example of FIG1 , instructions 272 can be configured to receive a request 284, instructing network coordinator 250 to transmit request 144 to first network device 100. In some examples, request 284 can be received from network 290 via communication link 280. In some examples, request 284 can be received from at least one computing device of network 290. In some examples, request 284 can be received from at least one cloud computing device of network 290. In some examples, request 284 can be received from at least one or more network as a service (aaS) of network 290.

[0046] exist Figure 2 In an example, instructions 272 may be configured to receive a request instructing network coordinator 250 to transmit a request to a third network device to determine whether a wake-up frame is transmitted by first network device 100 to the second MAC address of second network device 200. In some examples, the request may be received from network 290 via communication link 280. In some examples, the request may be received from at least one computing device of network 290. In some examples, the request may be received from at least one cloud computing device of network 290. In some examples, the request may be received from at least one or more network aaSs of network 290.

[0047] exist Figure 2 In some examples, instructions 272 can be configured to transmit signal 282 to network 290. In some examples, signal 282 can be transmitted to network 290 via communication link 280. Figure 2 In the example, signal 282 can indicate the first MAC address of the first network device 100, the second MAC address of the second network device 200, the third MAC address of the third network device, the network mask corresponding to the subnet assigned to the first MAC address, the second MAC address and / or the third MAC address, or a combination thereof.

[0048] In some examples, network 290 can include at least one processing resource and at least one machine-readable medium including instructions (e.g., encoded therewith) that are executable by the processing resource to implement the functionality described herein with respect to network 290. In some examples, network 290 can include at least one computing device, at least one cloud computing device, at least one network aaS, or a combination thereof. In some examples, network 290 can instruct first network device 100, second network device 200, and / or third network device to operate in a first power mode and / or a second power mode.

[0049] In this way, Figure 2The example system 201 may provide improved wakeup by network devices. For example, the instructions 222 may be configured to receive a first wakeup frame 152 at the network interface 230 and, based on (e.g., in response to) the first wakeup frame 152, transition from operating in a first power mode to operating in a second power mode, thereby allowing the first network device 100 to wake up the second network device 200 without transmitting a broadcast frame. Thus, the example system 201 may provide greater reliability than existing WoL and WoWLAN technologies, which require transmitting magic packets as broadcast frames that may be dropped by intermediate routers. Additionally, the example system 201 may be easier to implement and less susceptible to flooding because, unlike existing WoL and WoWLAN technologies, the system 201 does not require intermediate routers between the network devices to be configured to forward magic packets as SDBs.

[0050] Figure 3 is a block diagram of an example system 301 for wakeup by a third network device 300. Figure 3 In the example of FIG. 3 , the system 301 may include the first network device 100, as described above with respect to FIG. Figure 1 and Figure 2 The system 301 may include a second network device 200, as described above. Figure 2 The system 301 may include a network coordinator 250, as described above with respect to Figure 2 System 301 may include network 290, as described above with respect to Figure 2 The system 301 may include a third network device 300 .

[0051] exist Figure 3 In the example of FIG. 3 , third network device 300 includes at least one processing resource 310 and at least one machine-readable medium 320 including at least instructions 322 (e.g., encoded therewith), which are executable by at least one processing resource 310 of third network device 300 to implement the functionality described herein with respect to instructions 322. In some examples, one or more instructions 222 can be the same as or similar to one or more instructions 122 and / or one or more instructions 222, as described above.

[0052] exist Figure 3 In the example, the third network device 300 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or a combination thereof. In some examples, the third network device 300 can include a WAP. Those skilled in the art will understand that the third network device 300 can be any suitable type of network device manufactured by any suitable manufacturer(s).

[0053] exist Figure 3In the example of , the third network device 300 includes a network interface 330 having a third MAC address. The network interface 330 may include a NIC having one or more ports (eg, Ethernet ports), one or more sockets, one or more adapters, or a combination thereof. In addition, although Figure 3 The third network device 300 is shown to include one network interface 330 , but it will be understood that the third network device 300 may include any suitable number and type(s) of network interfaces.

[0054] exist Figure 3 In some examples, network interface 330 may include a radio with a third MAC address. In some examples, one or more BSSIDs may correspond to the third MAC address of the radio of network interface 330. In some examples, the radio may operate in one or more frequency bands. For example, the radio may operate in a 5 GHz band that complies with the IEEE 802.11ac standard, a 2.4 GHz band that complies with one or more of the IEEE 802.11ac, 802.11n, and 802.11g standards, or a combination thereof. Those skilled in the art will appreciate that the radio of network interface 330 may transmit and receive wireless signals that comply with any suitable type(s) of wireless communication standards now known or later developed and / or operate in any suitable frequency range(s). In some examples, the radio may include an antenna that transmits directional and / or omnidirectional signals. In some examples, the radio may include a phased array antenna. Those skilled in the art will appreciate that the radio of network interface 330 may include any suitable type(s) of antenna(s) now known or later developed. Furthermore, it will be understood that third network device 300 may include two, four, eight, or any suitable number of radios, and that third network device 300 may have the same or a different number of radios than first network device 100 and / or second network device 200 .

[0055] exist Figure 3 In the example of FIG. 1 , the third network device 300 can communicate with the network coordinator 250 (eg Figure 2 ) establishes a communication link 340. Figure 3 In the example of , the third network device 300 can establish a communication link 160 with the first network device 100. Figure 3 In the example of , the third network device 300 can establish a wireless communication link 350 with the network interface 230 of the second network device 200. In some examples, the wireless communication link 350 can be established through the network interface 330. In addition, Figure 3In some examples, the third network device 300 can establish a wireless communication link for one or more nodes of the WLAN. In some examples, the one or more communication links 340, 350, and 360 can be established via the network interface 330. In some examples, the one or more communication links 340, 350, and 360 can include a wired link (such as a wire, cable, optical fiber, etc. or a combination thereof), a wireless link (such as a Wi-Fi link, link, BLE link, link, Link, cellular link, etc., or a combination thereof) or a combination of at least one wired link and at least one wireless link. Those skilled in the art will appreciate that each communication link 340, 350, and 360 can use any suitable (multiple) type(s) of wired and / or wireless links now known or later developed. In some examples, one or both communication links 340 and 360 can use at least one connection-oriented protocol (such as TCP), at least one connectionless protocol (such as UDP), etc., or a combination thereof. Those skilled in the art will appreciate that each wireless communication link 340 and 360 can use any suitable (multiple) type(s) of data transmission protocols now known or later developed. In some examples, communication link 350 can use at least one connectionless protocol, such as UDP. Those skilled in the art will appreciate that communication link 350 can use any suitable (multiple) type(s) of data transmission protocols now known or later developed.

[0056] exist Figure 3 In some examples, instructions 322 may be configured to transmit a signal 342 indicating the third MAC address to the network coordinator. In some examples, signal 342 may be transmitted to the network coordinator via communication link 340. Figure 3 In an example of , instructions 322 may be configured to receive a request 344 to wake up the second network device based on (e.g., in response to) signal 342. Signal 342 may include at least one packet having a payload configured to indicate a third MAC address, a netmask corresponding to a subnet assigned to the third MAC address, or a combination thereof to the network coordinator. Signal 342 may include at least one frame having a source MAC address corresponding to a MAC address of the third network device 300 (e.g., the third MAC address) and / or a destination MAC address corresponding to a MAC address associated with the network coordinator. Signal 342 may include at least one packet having a source IP address corresponding to an IP address assigned to the third network device 300 and / or a destination IP address corresponding to an IP address assigned to the network coordinator. It will be understood that signal 342 may include any suitable type of frame and / or packet, having any suitable type(s) of payload(s).

[0057] exist Figure 3 In an example of FIG, instructions 322 may be configured to receive a request 344 from the network coordinator based on a signal 342 received by the network coordinator. In some examples, request 344 may be received from the network coordinator via communication link 340. Request 344 may include at least one frame having a destination MAC address corresponding to a MAC address of the third network device 300 (e.g., a third MAC address). Request 344 may include at least one packet having a source IP address corresponding to an IP address assigned to the network coordinator and / or a destination IP address corresponding to an IP address assigned to the third network device 300. Request 344 may include at least one packet having a payload configured to indicate to the third network device 300 the first MAC address, the second MAC address, the third MAC address, a netmask corresponding to a subnet assigned to the first MAC address, the second MAC address, and the third MAC address, or a combination thereof. It will be understood that request 344 may include any suitable type of frame and / or packet with any suitable type(s) of payload(s).

[0058] exist Figure 3 In an example of , instructions 322 can be configured to receive a request 162 from the first network device 100 to determine whether a wake-up frame having a destination address of the second MAC address is transmitted by the network interface 130 of the first network device 100. In some examples, the request 162 can be received from the first network device 100 via the communication link 160. In some examples, the request 162 can be received from the first network device 100 via the network interface 330. Figure 3 In the example of , instructions 322 may be configured to determine whether a wake-up frame is transmitted by the network interface 130 of the first network device 100 based on (eg, in response to) the request 162 .

[0059] exist Figure 3 In the example of , the instructions 322 may be configured to determine whether a wake-up frame is transmitted by the network interface 130 of the first network device 100. Figure 3In some examples, instructions 322 may determine whether a wake-up frame is transmitted by network interface 130 of first network device 100 based on (e.g., in response to) a signal (e.g., request 162) received by third network device 300. In some examples, for a wake-up frame transmitted by network interface 130 of first network device 100, instructions 322 may determine, by sniffing (i.e., monitoring), via network interface 320, whether the wake-up frame is transmitted by network interface 130 of first network device 100. Instructions 322 may be configured to sniff for wake-up frames within a predetermined time period. In some examples, for a signal indicating that a wake-up frame is transmitted by network interface 130 of the first network device, instructions 322 may determine, by monitoring, via network interface 320, whether the wake-up frame is transmitted by network interface 130.

[0060] exist Figure 3 In an example of , the instruction 322 may be configured to generate a second wake-up frame 352 having a destination address of a second MAC address and configured to cause the second network device 200 to transition from operating in the first power mode to operating in the second power mode based on determining that the wake-up frame was not transmitted by the network interface 130 of the first network device 100. The second wake-up frame 352 may have a third MAC address as a source address. The second wake-up frame 352 may include a packet configured to cause the second network device 200 to wake up. In some examples, the packet may include 6 bytes anywhere in its payload, each of which has a value of 255 (i.e., FF FF FF FF FF FF in hexadecimal), followed by 16 repetitions of the 48-bit MAC address of the target computing device, for a total of 102 bytes. It will be understood that the second wake-up frame 352 may include any suitable type of frame, including any suitable type of packet, having any suitable type(s) of payload(s). In Figure 3 In an example, instructions 322 can be configured to transmit a signal indicating that the wake-up frame was not transmitted by network interface 130 of first network device 100 based on determining that the wake-up frame was not transmitted by network interface 130 of first network device 100. In some examples, the signal can be transmitted to first network device 100. In some examples, the signal can be transmitted to a network controller.

[0061] exist Figure 3In some examples, instructions 322 may be configured to, based on determining that the wake-up frame is transmitted by network interface 130 of first network device 100, transmit a signal indicating that the wake-up frame is transmitted by network interface 130 of first network device 100. In some examples, the signal may be transmitted to first network device 100 via communication link 160. In some examples, the signal may be transmitted to a network coordinator (i.e., network coordinator 250). In some examples, the signal may be transmitted to the network coordinator via communication link 340. In some examples, the signal may be transmitted to the network coordinator via network interface 330.

[0062] exist Figure 3 In some examples, the instructions 322 may be configured to cause the network interface 330 to transmit the second wake-up frame 352 to the second MAC address of the second network device 200. That is, the instructions 322 may be configured to transmit the second wake-up frame 352 as an L2 unicast frame to the second MAC address of the second network device. In some examples, the second wake-up frame 352 may be transmitted to the second network device via the communication link 350.

[0063] exist Figure 3 In an example of the present invention, instructions 322 can be configured to receive an acknowledgment frame 354 based on the second wake-up frame 352 received at the second MAC address of the second network device 200. In some examples, the acknowledgment frame 354 can be received by the network interface 330 of the third network device 300. In some examples, the acknowledgment frame 354 can be received from the second network device 200 via the communication link 350. The acknowledgment frame 354 can have the second MAC address as the source address and the third MAC address as the destination address. The acknowledgment frame 354 can include a packet with a payload configured to indicate to the third network device 300 that the second wake-up frame 352 was received at the second MAC address of the second network device. It will be understood that the acknowledgment frame 354 can include any suitable type of frame, including any suitable type of packet with any suitable type(s) of payload(s).

[0064] exist Figure 3 In an example, instructions 322 can be configured to determine that the second wake-up frame 252 is received at the second MAC address of the second network device based on (e.g., in response to) a triggering event. In some examples, the triggering event can be a signal received by the third network device 300 from a computing device (e.g., a second network device, a client device, etc.). In some examples, the triggering event can occur after a predetermined time period after the second wake-up frame 352 is received at the second MAC address of the second network device.

[0065] In this way, Figure 3The example system 301 can provide improved wakeup by network devices. For example, instructions 322 can be configured to, in response to request 162 and based on determining that the wakeup frame was not transmitted by network interface 130 of first network device 100, generate a second wakeup frame 352 having a destination address of the second MAC address and configured to cause second network device 200 to transition from operating in the first power mode to operating in the second power mode, and transmit second wakeup frame 352 to the second MAC address of second network device 200, thereby enabling wakeup of the second network device without requiring transmission of a broadcast frame. Thus, the example system 301 can provide greater reliability compared to existing WoL and WoWLAN technologies, which require transmission of magic packets as broadcast frames that can be discarded by intermediate routers. Furthermore, the example system 301 can be easier to implement and less susceptible to flooding because, unlike existing WoL and WoWLAN technologies, system 301 does not require intermediate routers between network devices to be configured to forward magic packets as SDBs.

[0066] Furthermore, system 301 can provide higher reliability for wake-up by network devices. For example, instructions 322 can be configured to, based on determining that the wake-up frame was transmitted by network interface 130 of first network device 100, transmit a signal indicating that the wake-up frame was transmitted by network interface 130 of first network device 100, thereby providing confirmation that the wake-up frame was transmitted by first network device 100. Furthermore, instructions 322 can, based on determining that the wake-up frame was not transmitted by network interface 130 of first network device 100, generate a second wake-up frame 352 having a destination address of a second MAC address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode, and transmit the second wake-up frame to the second MAC address of second network device 200, thereby providing higher reliability when the first network device 100 may not transmit the wake-up frame due to various circumstances (e.g., the first network device 100 becomes inoperable, loses connection to the WLAN, etc.).

[0067] In addition, although Figure 3 While system 301 is shown as including three network devices, it will be understood that system 301 may include any number of network devices. For example, system 301 may include multiple network devices that can determine whether a wake-up frame is transmitted by network interface 130 of first network device 100, whether a wake-up frame is transmitted by network interface 330 of third network device 300, or a combination thereof. Those skilled in the art will appreciate that increasing the number of network devices that can determine whether a wake-up frame is transmitted by one or more network devices of system 301 can improve the reliability of system 301.

[0068] Figure 4A and Figure 4B1 shows functionality 400 for a network device according to one example. Functionality 400 can be implemented as a method or can be executed as one or more instructions on a machine (e.g., by at least one processor), where the one or more instructions are included on at least one machine-readable storage medium (e.g., a non-transitory machine-readable storage medium). Although only 10 blocks are shown in functionality 400, functionality 400 can include other actions described herein. Additionally, although the blocks are shown in order, Figure 4A and Figure 4B The blocks depicted in the functionality 400 may be executed at any time and in any order. Likewise, some blocks shown in the functionality 400 may be omitted without departing from the spirit and scope of the present disclosure. The functionality 400 may be implemented on a network device according to any example herein.

[0069] As shown in block 405, functionality 400 may include receiving, by a first network device having a first MAC address, a request to wake up a second network device, the second network device having a second MAC address assigned to the same subnet as the first MAC address. The first network device may receive the request via a network interface. Additionally, the request may be received by a radio of the network interface of the first network device. In some examples, the request may be received from a network coordinator.

[0070] As shown in block 410, functionality 400 may include generating, by the first network device, a first wake-up frame having the second MAC address as a destination address and configured to wake up the second network device. The first wake-up frame may be generated based on (e.g., in response to) a request to wake up the second network device. The first wake-up frame may be configured to wake up the second network device by causing the second network device to transition from operating in a first power mode to operating in a second power mode.

[0071] As shown in block 415, functionality 400 may include transmitting, by the first network device, a first wake-up frame to the second MAC address. The first wake-up frame may be transmitted based on (e.g., in response to) a request to wake up the second network device. The first network device may transmit the first wake-up frame via a network interface, and the second network device may receive the first wake-up frame via the network interface. Additionally, the first wake-up frame may be transmitted by a radio of the network interface of the first network device, and the first wake-up frame may be received by a radio of the network interface of the second network device.

[0072] As shown in block 420, functionality 400 may include determining, by the first network device, that a first wake-up frame is received at a second MAC address of the second network device. In some examples, the first network device may determine that the first wake-up frame is received at the second MAC address of the second network device based on (e.g., in response to) a triggering event. The triggering event may include receiving, by the first network device, a signal from a computing device indicating that the first wake-up frame is received at the second MAC address of the second network device. The first network device may receive the signal via a network interface. Additionally, the signal may be received by a radio of the network interface of the first network device. In some examples, the triggering event may occur after a predetermined period of time after the second network device receives the first wake-up frame at the second MAC address.

[0073] In some examples, the first network device can determine that the first wake-up frame was received at the second network device based on the first wake-up frame received at the second MAC address by receiving an acknowledgment frame by the first network device. The first network device can receive the acknowledgment frame via the network interface, and the second network device can transmit the acknowledgment frame via the network interface. Additionally, the acknowledgment frame can be received by a radio of the network interface of the first network device, and the acknowledgment frame can be transmitted by a radio of the network interface of the second network device.

[0074] As shown in block 425, functionality 400 may include receiving, by a third network device having a third MAC address assigned to the same subnet as the first MAC address, a request to determine whether a wake-up frame was transmitted by the first network device. The third network device may receive the request via a network interface. Additionally, the request may be received by a radio of the network interface of the third network device. The request may be received from the first network device.

[0075] As shown in block 430, functionality 400 may include determining, by the third network device, whether the wake-up frame was transmitted by the first network device. The wake-up frame determined to be transmitted to the second MAC address may be the first wake-up frame. In some examples, the third network device may determine whether the wake-up frame was transmitted by the first network device by sniffing (i.e., monitoring) for wake-up frames via a radio of the third network device. Additionally, the sniffing for the wake-up frame may be within a predetermined time period. In some examples, the third network device may determine whether the wake-up frame was transmitted to the second MAC address by monitoring a signal indicating that the wake-up frame was transmitted by the third network device.

[0076] If it is determined that the wake-up frame is transmitted by the first network device, functionality 400 proceeds to block 435. If it is determined that the wake-up frame is not transmitted by the first network device, functionality 400 proceeds to block 440.

[0077] As shown in block 435, functionality 400 may include transmitting, by the third network device, a signal indicating that the wake-up frame was transmitted by the first network device. In some examples, the third network device may transmit the signal to the first network device. In some examples, the third network device may transmit the signal to the network coordinator. The third network device may transmit the signal via a network interface. Additionally, the signal may be transmitted by a radio of the network interface of the third network device.

[0078] As shown in block 440, functionality 400 may include generating, by the third network device, a second wake-up frame having a destination address of the second MAC address and configured to wake up the second network device. The second wake-up frame may be configured to wake up the second network device by causing the second network device to transition from operating in the first power mode to operating in the second power mode.

[0079] As shown in block 445, functionality 400 may include transmitting, by the third network device, a second wake-up frame to the second MAC address of the second network device. The third network device may transmit the second wake-up frame via the network interface, and the second network device may receive the second wake-up frame via the network interface. Additionally, the second wake-up frame may be transmitted by a radio of the network interface of the third network device, and the second wake-up frame may be received by a radio of the network interface of the second network device.

[0080] As shown in block 450, functionality 400 may include determining, by the third network device, that a second wake-up frame is received at a second MAC address of the second network device. In some examples, the third network device may determine that the second wake-up frame is received at the second MAC address of the second network device based on (e.g., in response to) a triggering event. The triggering event may include receiving, by the third network device, a signal from the computing device indicating that the second wake-up frame is received at the second MAC address of the second network device. The third network device may receive the signal via a network interface. Additionally, the signal may be received by a radio of the network interface of the third network device. In some examples, the triggering event may occur after a predetermined time period after the first wake-up frame is received by the second network device at the second MAC address.

[0081] In some examples, the third network device may determine that the second wake-up frame was received at the second network device based on the second wake-up frame received at the second MAC address and the confirmation frame received by the third network device. The third network device may receive the confirmation frame via the network interface, and the second network device may transmit the confirmation frame via the network interface. Additionally, the confirmation frame may be received by a radio of the network interface of the third network device, and the confirmation frame may be transmitted by a radio of the network interface of the second network device.

[0082] In this manner, functionality 400 can provide improved wakeup by network devices. For example, functionality 400 can include receiving, by a first network device having a first MAC address, a request to wake up a second network device, the second network device having a second MAC address assigned to the same subnet as the first MAC address (at block 405), generating, by the first network device, a first wakeup frame having the second MAC address as a destination address and configured to wake up the second network device (at block 410), and transmitting, by the first network device, the first wakeup frame to the second MAC address (at block 415), thereby allowing the second network device to be woken up without the need to transmit a broadcast frame. Thus, functionality 400 can provide greater reliability compared to existing WoL and WoWLAN technologies, which require the transmission of magic packets as broadcast frames that can be discarded by intermediate routers. Furthermore, functionality 400 can be easier to implement and less susceptible to flooding because, unlike existing WoL and WoWLAN technologies, functionality 400 does not require intermediate routers between the network devices to be configured to forward magic packets as SDBs.

[0083] In addition, functionality 400 can provide higher reliability for wake-up by the network device. For example, functionality 400 can include determining, by the third network device, that the wake-up frame was transmitted by the first network device (at block 430), and transmitting a signal indicating that the wake-up frame was transmitted by the first network device (at block 435), thereby providing confirmation that the wake-up frame was transmitted by the first network device. In addition, functionality 400 can include determining, by the third network device, that the wake-up frame was not transmitted by the first network device (at block 430), and generating, by the third network device, a second wake-up frame having a destination address of a second MAC address and configured to wake up the second network device (at block 440), and transmitting, by the third network device, the second wake-up frame to the second MAC address of the second network device (at block 445), thereby providing higher reliability when the first network device may not transmit the wake-up frame due to various circumstances (e.g., the first network device becomes inoperable, loses connection to the WLAN, etc.).

[0084] Figure 5 is a block diagram of an example computer system 500 in which various embodiments described herein may be implemented.

[0085] Computer system 500 includes a bus 505 or other communication mechanism for communicating information, and at least one hardware processor 510 coupled with bus 505 for processing information. The at least one hardware processor 510 may be, for example, at least one general-purpose microprocessor.

[0086] The computer system 500 also includes a main memory 515 (such as a random access memory (RAM), a cache, other dynamic storage device, the like, or a combination thereof) coupled to the bus 505 for storing information and one or more instructions to be executed by the at least one processor 510. The main memory 515 may also be used to store temporary variables or other intermediate information during execution of the one or more instructions to be executed by the at least one processor 510. Such one or more instructions, when stored on a storage medium accessible to the at least one processor 510, render the computer system 500 into a special-purpose machine customized to perform the operations specified in the one or more instructions.

[0087] The computer system 500 also includes a read-only memory (ROM) 520 or other static storage device coupled to the bus 505 for storing static information and one or more instructions for the at least one processor 510. At least one storage device 525, such as a magnetic disk, an optical disk, or a USB thumb drive (flash drive), etc., or a combination thereof, may be provided and coupled to the bus 505 for storing information and one or more instructions.

[0088] The computer system 500 may also include a display 530 coupled to the bus 505 for displaying graphical output to a user. The computer system 500 may also include an input device 535 (such as a keyboard, camera, microphone, etc., or a combination thereof) coupled to the bus 505 for providing input from a user. The computer system 500 may also include a cursor control 540 (such as a mouse, pointer, stylus, etc., or a combination thereof) coupled to the bus 505 for providing input from a user.

[0089] The computer system 500 may also include at least one network interface 545 (such as a network interface controller (NIC), a network adapter, etc., or a combination thereof) coupled to the bus 505 for connecting the computer system 500 to at least one network.

[0090] In general, the terms "component," "system," "database," and the like as used herein may refer to logic embodied in hardware or firmware, or to a set of software instructions written in a programming language (such as, for example, Java, C, or C++), which may have entry and exit points. A software component may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language (such as, for example, BASIC, Perl, or Python). It will be appreciated that a software component may be called from other components or itself and / or may be called in response to a detected event or interrupt. A software component configured for execution on a computing device may be provided on a computer-readable medium, such as an optical disc, digital video disc, flash drive, disk, or any other tangible medium, or as a digital download (and may initially be stored in a compressed or installable format that requires installation, decompression, or decryption prior to execution). Such software code may be stored in part or in whole on a memory device of the executing computing device for execution by the computing device. The software instructions may be embedded in firmware, such as an EPROM. It will also be appreciated that hardware components may be composed of connected logic units (such as gates and flip-flops) and / or may be composed of programmable units (such as programmable gate arrays or processors).

[0091] The computer system 500 can implement the techniques described herein using custom hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic that, in combination with the computer system, makes the computer system 500 a special-purpose machine or programs it as a special-purpose machine. According to one embodiment, the techniques herein are performed by the computer system 500 in response to at least one processor 510 executing one or more sequences of one or more instructions contained in the main memory 515. Such one or more instructions may be read into the main memory 515 from another storage medium, such as at least one storage device 525. Execution of the sequences of one or more instructions contained in the main memory 515 causes the at least one processor 510 to perform the process steps described herein. In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions.

[0092] As used herein, the term "Wi-Fi" is intended to include any type of wireless communication that complies with the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, whether 802.11ac, 802.11ad, 802.11ay, 802.11ax, 802.11g, etc. The term "Wi-Fi" is currently published by the Wi-Fi Alliance. Any product tested and approved by the Wi-Fi Alliance as "Wi-Fi Certified" (registered trademark) is certified to be interoperable, even if they come from different manufacturers. Users with "Wi-Fi Certified" products can use any brand of WAP with any other brand of client hardware that is also certified. However, in general, any product that uses the same radio frequency (e.g., 5GHz for 802.11ac) will work with any other product, even if those products are not "Wi-Fi Certified." The term "Wi-Fi" is also intended to include future versions and / or variations of the above communication standards. Each of the above standards is incorporated herein by reference.

[0093] As used herein, the term "Bluetooth" (registered trademark) is intended to include any type of wireless communication that conforms to at least one Bluetooth specification. As used herein, the term "Bluetooth Low Energy" (registered trademark) or "BLE" is intended to include any type of wireless communication that conforms to at least one Bluetooth specification. A low-power specification for any type of wireless communication. The terms "Bluetooth" and "Bluetooth Low Energy" are currently used by the Bluetooth Special Interest Group (SIG).

[0094] As used herein, the term "ZigBee" (registered trademark) is intended to include any type of wireless communication that conforms to at least one ZigBee specification. The term "ZigBee" is currently promulgated by the ZigBee Alliance.

[0095] As used herein, the term "Z-Wave" (registered trademark) is intended to include any type of wireless communication that conforms to at least one Z-Wave specification. The term "Z-Wave" is issued by Zensys A / S.

[0096] As used herein, the term "non-transitory medium" and similar terms refer to any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. Non-transitory media can include non-volatile media and / or volatile media. For example, non-volatile media include optical or magnetic disks. For example, volatile media include dynamic memory. For example, common forms of non-transitory machine-readable media include floppy disks, diskettes, hard disks, solid-state drives, magnetic tape or any other magnetic data storage medium, CD-ROMs, any other optical data storage medium, any physical medium with a pattern of holes, RAM, PROM and EPROM, FLASH-EPROM, NVRAM, any other memory chip or cartridge, and networked versions thereof.

[0097] Non-transient media are distinct from transmission media, but can be used in conjunction with them. Transmission media are involved in the transmission of information between non-transient media. Examples of transmission media include coaxial cables, copper wires, and optical fibers. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.

[0098] As used herein, the term "or" can be interpreted in an inclusive or exclusive sense. Furthermore, describing a resource, operation, or structure in the singular should not be interpreted as excluding the plural. Unless otherwise specifically stated or understood otherwise in the context of use, conditional language such as "may," "could," "might," or "might" is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements, and / or steps.

[0099] Unless otherwise specified, the terms and phrases used in this document and variations thereof should be considered open ended as opposed to limiting. As an example above, the term "include" should be interpreted as meaning "including but not limited to" and the like. The term "example" is used to provide an illustrative example of the item in question, rather than an exhaustive or restrictive list thereof. The term "one" or "an" should be interpreted as meaning "at least one," "one or more," and the like. In some cases, the appearance of expanded words and phrases (such as, "one or more," "at least," "but not limited to," or other similar phrases) should not be interpreted as referring to a narrower situation that would be desired or required where such expanded phrases may not be present.

[0100] Although the present technology may be subject to various modifications and alternative forms, the above examples are described by way of example only. It is to be understood that the technology is not intended to be limited to the specific examples disclosed herein. In fact, the present technology includes all alternatives, modifications and equivalents within the true spirit and scope of the appended claims.

Claims

1. A first network device among a plurality of network devices, comprising: A network interface having a first media access control MAC address; First processing resources; as well as A first machine-readable storage medium comprising instructions executable by the first processing resource to: receiving a request to wake up a second network device among the plurality of network devices, the second network device having a second MAC address assigned to the same subnet as the first MAC address; generating, in response to the request, a first wake-up frame, the first wake-up frame having the second MAC address as a destination address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode; as well as The first wake-up frame is transmitted by the network interface of the first network device among the plurality of network devices as an L2 unicast frame to the second MAC address of the second network device.

2. The first network device of claim 1 , wherein the instructions include instructions for: Based on a triggering event, it is determined that the first wake-up frame is received at the second MAC address of the second network device.

3. The first network device of claim 1 , wherein the instructions include instructions for: transmitting a signal indicating the first MAC address to a network coordinator; and Based on the signal, the request to wake up the second network device is received.

4. The first network device of claim 1 , wherein the instructions include instructions for: Based on the first wake-up frame transmitted to the second MAC address of the second network device, a signal indicating that the first wake-up frame is transmitted to the second MAC address of the second network device is transmitted to a third network device.

5. A system for communication, comprising: A first network device among the plurality of network devices according to claim 1; as well as The second network device among the plurality of network devices comprises: a network interface having the second MAC address; a second processing resource; and A second machine-readable storage medium comprising instructions executable by the second processing resource to: wirelessly receiving, by the network interface, the first wake-up frame; and In response to the first wake-up frame, transitioning from operating in the first power mode to operating in the second power mode.

6. A system for communication, comprising: A first network device among the plurality of network devices according to claim 1; as well as Network coordinator, including: at least one processing resource; and at least one machine-readable storage medium comprising instructions executable by the at least one processing resource to: receiving a first signal indicating the first MAC address; receiving a second signal indicating the second MAC address; The request to wake up a second network device among the plurality of network devices is wirelessly transmitted to the first network device based on the first signal and the second signal.

7. The system according to claim 6, wherein: The instructions include instructions for: receiving a third signal indicating a third MAC address of a third network device, wherein the third MAC address is assigned to the same subnet as the first MAC address and the second MAC address; as well as Based on the third signal, a request to determine whether a wake-up frame is transmitted by the first network device to the second MAC address of the second network device is transmitted to the third MAC address of the third network device.

8. A system for communication, comprising: A first network device among the plurality of network devices according to claim 1; as well as A third network device among the plurality of network devices comprises: a network interface having a third MAC address assigned to the same subnet as the first MAC address and the second MAC address; a third processing resource; and A third machine-readable storage medium comprising instructions executable by the third processing resource to: receiving a request to determine whether a wake-up frame having a destination address of the second MAC address was transmitted by the network interface of the first network device; In response to the request, determining whether the wake-up frame is transmitted by the network interface of the first network device; and Based on determining that the wake-up frame is not transmitted by the network interface of the first network device: generating a second wake-up frame having a destination address of the second MAC address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode; and The second wake-up frame is transmitted by the network interface of the third network device to the second MAC address of the second network device.

9. The system of claim 8, wherein the instructions of the third machine-readable storage medium include instructions for: Based on determining that a wake-up frame is transmitted by the network interface of the first network device, a signal is transmitted indicating that the wake-up frame is transmitted by the network interface of the first network device.

10. A method for communication, comprising: Receiving, by a network interface of a first network device having a first media access control (MAC) address among the plurality of network devices, a request to wake up a second network device among the plurality of network devices, the second network device having a second MAC address assigned to the same subnet as the first MAC address; generating, by the first of the plurality of network devices, a first wake-up frame in response to the request, the first wake-up frame having a destination address of the second MAC address and configured to cause the second of the plurality of network devices to transition from operating in a first power mode to operating in a second power mode; as well as The network interface of the first network device among the plurality of network devices transmits an L2 unicast frame including the first wake-up frame to the second MAC address of the second network device among the plurality of network devices using a non-broadcast signal.

11. The method according to claim 10, further comprising: Based on a triggering event, the first network device determines that the first wake-up frame is received at the second MAC address of the second network device.

12. The method according to claim 10, further comprising: transmitting a first signal indicating the first MAC address to a network coordinator; transmitting a second signal indicating the second MAC address to the network coordinator; as well as The request to wake up the second network device is received by the first network device based on the first signal and the second signal.

13. The method according to claim 10, further comprising: transmitting a third signal indicating a third MAC address of a network interface of a third network device to the network coordinator, wherein the third MAC address is assigned to the same subnet as the first MAC address and the second MAC address; as well as A request to determine whether a wake-up frame is transmitted by the first network device to the second MAC address of the second network device is received by the third network device based on the third signal received by the network coordinator.

14. The method according to claim 10, further comprising: Based on a determination by a third network device that the wake-up frame is not transmitted by the first network device to the second MAC address: generating, by the third network device, a second wake-up frame having a destination address of the second MAC address and configured to cause the second network device to transition from operating in the first power mode to operating in the second power mode; as well as The second wake-up frame is transmitted to the second MAC address by the network interface of the third network device.

15. The method according to claim 10, further comprising: Based on determining that the wake-up frame is transmitted by the first network device to the second MAC address, a signal is transmitted by the third network device indicating that the wake-up frame is transmitted by the first network device to the second MAC address.

16. At least one non-transitory machine-readable storage medium comprising instructions executable by at least one processing resource of a first network device to: Receiving, by a network interface of a first network device among a plurality of network devices, a request to wake up a second network device among the plurality of network devices, wherein the network interface has a first media access control (MAC) address and the second network device has a second MAC address assigned to the same subnet as the first MAC address; generating, by the first of the plurality of network devices, a first wake-up frame in response to the request, the first wake-up frame having the second MAC address as a destination address and configured to cause the second of the plurality of network devices to transition from operating in the first power mode to operating in the second power mode; as well as The network interface of the first network device among the plurality of network devices transmits the wake-up frame as an L2 unicast frame to the second MAC address of the second network device among the plurality of network devices in a non-broadcast signal.

17. The medium of claim 16, wherein the instructions comprise instructions executable by the at least one processing resource to: Based on a triggering event, the first network device determines that the first wake-up frame is received at the second MAC address of the second network device.

18. The medium of claim 16, wherein the instructions comprise instructions executable by the at least one processing resource to: transmitting a signal indicating the first MAC address to a network coordinator; and Based on the signal, the request to wake up the second network device is received by the first network device.

19. The medium of claim 16, wherein the instructions comprise instructions executable by the at least one processing resource to: Based on the first wake-up frame transmitted to the second MAC address of the second network device, a signal indicating that the first wake-up frame is transmitted to the second MAC address of the second network device is transmitted to a third network device.

Citation Information

Patent Citations

  • Network switch for executing LAN wakeup

    CN107294876A

  • Communication method and device for wireless local area network as well as communication equipment

    CN107809788A

  • Remote network awakening method and device

    CN108322491A