Scheduling of network traffic for wireless communication devices
By using media access scheduling technology, especially target wake-up time (TWT) scheduling, the problems of high power consumption and contention of wireless communication devices in mesh networks are solved, and efficient network traffic scheduling under strict latency requirements is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-08
- Publication Date
- 2026-03-27
AI Technical Summary
Existing wireless communication devices suffer from high power consumption, network contention, and difficulty in meeting strict latency requirements when scheduling network traffic, especially in mesh networks and in application scenarios such as game consoles.
By using media access scheduling technology, especially Target Wake-up Time (TWT) scheduling, the mesh network topology is dynamically organized, network traffic scheduling is generated to identify the wake-up and sleep times of devices, and data transmission is triggered by query frames, thereby optimizing communication between devices and reducing retransmission and synchronization events.
This achieves the goal of reducing total device power consumption, eliminating or reducing network contention, and improving network traffic scheduling efficiency and device power utilization efficiency while meeting latency requirements.
Smart Images

Figure CN113518414B_ABST
Abstract
Description
[0001] Cross-references to related applications
[0002] This application claims priority to U.S. Provisional Patent Application No. 63 / 007,791, filed April 9, 2020, pursuant to Section 119(e) of the U.S. Patent Act, which is incorporated herein by reference in its entirety for all purposes. Technical Field
[0003] This disclosure generally relates to wireless communication devices, and more specifically, to scheduling network traffic for wireless communication devices. Background Technology
[0004] Wireless communication devices can communicate with each other via one or more communication modes (e.g., WiFi or Bluetooth connections). Therefore, such wireless communication can be implemented in a manner consistent with wireless communication protocols. Furthermore, such wireless communication devices can include various hardware components to facilitate this communication. For example, a wireless communication device can include a transmission medium that may include one or more antennas. Conventional techniques for establishing connectivity between wireless communication devices and scheduling network traffic remain limited because they cannot do so in energy-efficient ways to avoid network congestion. Attached Figure Description
[0005] Figure 1 An example of a system for wireless communication scheduling configured according to some embodiments is shown.
[0006] Figure 2 An example of another system for wireless communication scheduling, configured according to some embodiments, is shown.
[0007] Figure 3 An example of yet another system configured for wireless communication scheduling according to some embodiments is shown.
[0008] Figure 4 A flowchart illustrating an example of a method for wireless communication scheduling implemented according to some embodiments is shown.
[0009] Figure 5 A flowchart is shown as another example of a method for wireless communication scheduling implemented according to some embodiments.
[0010] Figure 6 A flowchart is shown as yet another example of a method for wireless communication scheduling implemented according to some embodiments.
[0011] Figure 7 A flowchart is shown as an additional example of a method for wireless communication scheduling implemented according to some embodiments.
[0012] Figure 8 A timing diagram of wireless communication scheduling implemented in accordance with some embodiments is shown.
[0013] Figure 9 Another timing diagram of wireless communication scheduling implemented in accordance with some embodiments is shown.
[0014] Figure 10 Yet another timing diagram of wireless communication scheduling implemented in accordance with some embodiments is shown. DETAILED DESCRIPTION
[0015] In the following description, numerous specific details are set forth to provide a thorough understanding of the concepts presented. The concepts presented can be practiced without some or all of these specific details. In other instances, well known process operations have not been described in detail in order not to unnecessarily obscure the concepts presented. While some concepts will be described in conjunction with specific examples, it will be understood that these examples are not intended to be limiting.
[0016] As will be discussed in greater detail below, wireless communication devices can communicate with one another via one or more communication modes, and network traffic between such devices can be scheduled, thus reducing traffic collisions and other network transmission issues. In some networks, there can be specific constraints or conditions that place restrictions on the ability to schedule network traffic. For example, the devices can be access points and stations in a mesh network in which the devices are communicatively coupled dynamically and non-hierarchically. Thus, the network topology of such a mesh network can be organized dynamically. Moreover, in a mesh network, if one device transmits data, all other devices should receive the data.
[0017] Moreover, in some contexts, such a network can have strict latency requirements. For example, the devices included in the network can be part of a gaming console. More specifically, the access point can be a first gaming console that can act as a master in a game session, and the stations can be other gaming consoles participating in the game session. It will be appreciated that each of the gaming consoles can be communicatively coupled to a wireless controller. In this example, which can involve execution of a gaming application, the strict latency requirements preclude the use of techniques such as data retransmission and synchronization events. Thus, the devices can often remain active more than necessary and inefficiently utilize power, and various network contention issues can not be resolved.
[0018] The embodiments disclosed herein provide the ability to schedule network traffic to reduce the total power consumption of the devices included in the network, to resolve network contention issues, and to do so in a manner that is compatible with strict latency requirements that can exist in some mesh network contexts. Thus, in accordance with various embodiments, network traffic scheduling can be configured to enable trigger-based data transmission from the stations in the network, and can also be configured to enable listening periods for the devices of other networks. As will be discussed in greater detail below, configuring the access points and stations in this manner and generating network traffic schedules enables efficient use of power by the stations, and also enables efficient scheduling of traffic to eliminate or reduce network contention, while also meeting latency requirements.
[0019] Figure 1 An example of a system configured for wireless communication scheduling in accordance with some embodiments is shown. As discussed above, various wireless communication devices can communicate with one another via one or more wireless communication mediums. For example, the wireless communication devices can communicate with one another via a WiFi connection or a Bluetooth connection. In various embodiments, the wireless communication devices can first establish a connection or communication link before data transmission occurs. As will be discussed in greater detail below, the wireless communication devices disclosed herein and systems implementing such wireless communication devices (e.g., system 100) are configured to schedule network traffic while adhering to a particular set of constraints. Thus, the embodiments disclosed herein enable scheduling of network traffic between different devices of a network (e.g., a mesh network) in a manner that reduces the total power consumed, eliminates or reduces network contention, and also meets latency constraints.
[0020] In various embodiments, system 100 can include a first device 110, which can be a wireless communication device. As discussed above, such wireless communication devices can be compatible with one or more wireless transmission protocols (e.g., a WiFi protocol or a Bluetooth protocol). In some embodiments, the first device 110 is a Bluetooth device. For example, the first device 110 can be compatible with the Bluetooth Low Energy specification and protocols, also known as Bluetooth Smart. As will be discussed in greater detail below, the first device 110 can be a component of a gaming system. For example, the first device 110 can be a game console. In various embodiments, the first device 110 can be a smart device (e.g., those found in wearable devices), or can be a monitoring device (e.g., those found in smart buildings, environmental monitoring, and energy management). It will be understood that such wireless communication devices can be any suitable device, such as those found in automobiles, other vehicles, and even medical implants.
[0021] As Figure 1 shown, various wireless communication devices can communicate with one another via one or more wireless communication mediums. As Figure 1As shown, the first devices 110 can each include an antenna, such as the antenna 104. The first devices 110 can also include a processing device 108 and a transceiver 106. As will be discussed in greater detail below, such processing devices, transceivers, and radios can be configured to establish a communication connection with other devices and to transmit data in the form of data packets via such communication connections. More specifically, different components of the first devices 110 (e.g., baseband and controller stacks) can be configured to implement different portions of data transmission operations, which can be implemented in accordance with scheduling techniques discussed in greater detail below.
[0022] In some embodiments, the system 100 can further include second devices 120, which can also be wireless communication devices. As similarly discussed above, the second devices 120 can be compatible with one or more wireless transmission protocols (e.g., WiFi protocols or Bluetooth protocols). In addition, the second devices 120 can also be smart devices or other devices, such as those found in gaming systems, automobiles, other vehicles, and medical implants. In various embodiments, the second devices 120 can be different types of devices than the first devices 110. As discussed above, each of the second devices 120 can include an antenna (e.g., the antenna 122), as well as a processing device 126 and a transceiver 124, which can also be configured to establish a communication connection with other devices and to transmit data in the form of data packets via such communication connections. As discussed above, the second devices 120 can also be configured to implement different portions of data transmission operations, which can be implemented in accordance with scheduling techniques discussed in greater detail below.
[0023] Figure 2 An example of another system configured for wireless communication scheduling in accordance with some embodiments is shown. In various embodiments, the system 200 can include the first devices 110 and the second devices 120. The system 200 further includes various access points (e.g., the access point 208), which are configured to manage communications with the first devices 110 and the second devices 120, as well as communications with a communication network, such as the network 230. In one example, the access point 208 can be configured to host a gaming session and to act as a master device in such a gaming session. In this example, the first devices 110 and the second devices 120 can act as stations relative to the access point 208 in such a gaming session. Thus, many wireless communication devices can communicate with each other over a widely implemented communication network (e.g., the Internet).
[0024] In various embodiments, system 200 further includes access point 202, third device 204, and fourth device 206. As discussed similarly above, access point 202 can be configured to manage communication with third device 204, fourth device 206, and a communication network (e.g., network 230). Therefore, as... Figure 2 As shown, system 200 may include multiple access points coupled to multiple different groups of devices. In this way, various devices can communicate with each other via network 230, and such communication can be managed and scheduled by access points (e.g., access points 202 and 208). In some embodiments, access points can pass communications and requests between themselves to facilitate the scheduling of network traffic across many different devices. For example, access point 202 can schedule requests from first device 110, second device 120, third device 204, and fourth device 206, wherein requests and traffic from first device 110 and second device 120 are passed through access point 208. Therefore, system 200 may include various access points (e.g., access points 208 and 202), and may also include various sites communicatively coupled to such access points, such as first device 110, second device 120, third device 204, and fourth device 206.
[0025] although Figure 2 A network (e.g., network 230) is shown, but it will be understood that access points 208 and 202 can be configured to communicate directly with each other via a wireless connection. Furthermore, the type of communication link and the associated transport protocol can be different. For example, access point 208 can use a Bluetooth connection to communicate with the first device 110 and the second device 120. Additionally, access point 202 can use a Bluetooth connection to communicate with the third device 204 and the fourth device 206. Further still, access points 208 and 202 can use a WiFi connection to communicate with each other. In this way, access points can use one communication protocol to communicate with each other and can use another communication protocol to communicate with associated devices.
[0026] As discussed above, the access point 208 and the access point 202 can be game consoles configured to execute game applications and host game sessions. For example, the access point 208 is a first game console configured to execute a game and host a first game session that can be played by multiple users using other game consoles (e.g., the first device 110 and the second device 120). As discussed above, the first device 110 and the second device 120 can be coupled to the access point 208 via WiFi communication links. Further, in various embodiments, the access point 202 is a second game console configured to execute a game and host a second game session. Thus, the third device 204 and the fourth device 206 can also be coupled to the access point 202 via WiFi communication links. As noted above, the access point 208 and the access point 202 can communicate with each other and can support a combination of game sessions and cross console gaming. Further, although two access points are shown, any number of access points can be implemented and supported by the system 200. Thus, the communication between game consoles can be dynamically scaled based on communication session parameters (e.g., the number of available game consoles).
[0027] In various embodiments, the system 200 is configured as one or more mesh networks. For example, the access point 208 can be configured to implement a first mesh network with the first device 110 and the second device 120. Further, the access point 202 can be configured to implement a second mesh network with the third device 204 and the fourth device 206. In this manner, each game session can be implemented using a mesh network topology to ensure proper communication between devices (which can be game controllers) and access points (which can be consoles).
[0028] Figure 3 An example of yet another system for wireless communication scheduling configured according to some embodiments is shown. More specifically, Figure 3An example of a system (e.g., system 300) that can include a wireless communication device 301 is shown. It will be understood that the wireless communication device 301 can be any of the first device 110, the second device 120, the third device 204, or the fourth device 206 discussed above. In various embodiments, the wireless communication device 301 includes a transceiver (e.g., transceiver 303), which can be a transceiver such as the transceivers 106 and 124 discussed above. In one example, the system 300 includes a transceiver 303 configured to transmit and receive signals using a communication medium that can include an antenna 321. As discussed above, the transceiver 303 can be included in a Bluetooth radio and can be compatible with Bluetooth Low Energy communication protocols. In some embodiments, the transceiver 303 can be compatible with WiFi protocols (e.g., 802.1 lax protocols). Thus, the transceiver 303 can include components configured to generate and receive signals via the antenna 321, such as modulators and demodulators and one or more buffers and filters.
[0029] In various embodiments, the system 300 further includes a processing device 324, which can include logic implemented using one or more processor cores. Thus, the processing device 324 is configured to implement logic configured to implement network traffic scheduling, as will be discussed in greater detail below. In various embodiments, the processing device 324 includes one or more processing devices configured to implement connection establishment, disconnection, and data transfer operations, which will be described in greater detail below. In various embodiments, the processing device 324 includes one or more components configured to implement a medium access control (MAC) layer configured to control hardware associated with a wireless transmission medium, such as hardware associated with a WiFi transmission medium. In one example, the processing device 324 can include a processor core block 310, which can be configured to implement drivers such as Bluetooth and / or WiFi drivers. The processing device 324 can further include a digital signal processor (DSP) core block 312, which can be configured to include microcode.
[0030] In various embodiments, the processor core block 310 includes multiple processor cores that are each configured to implement a particular portion of a wireless protocol interface. For example, a Bluetooth protocol can be implemented using a Bluetooth stack, where software is implemented as a stack of layers, and such layers are configured to divide particular functionality for implementing a Bluetooth communication protocol. In various embodiments, a host stack includes layers for a Bluetooth network encapsulation protocol, radio frequency communication, a service discovery protocol, and various other high-level data layers. Further, a controller stack includes a link management protocol, a host controller interface, a link layer that can be a low energy link layer, and various other timing critical layers.
[0031] The system 300 further includes radio frequency (RF) circuitry 302 coupled to the antenna 321. In various embodiments, the RF circuitry 302 can include various components such as RF switches, duplexers, and filters. Although one RF circuitry is shown, it will be understood that the wireless communication device 301 can include multiple RF circuitries. Thus, each of multiple antennas can have its own RF circuitry. In addition, each antenna can be associated with a particular wireless communication protocol, such as a first antenna and RF circuitry for WiFi and a second antenna and RF circuitry for Bluetooth. Figure 3 The system 300 is shown with a single antenna, but it will be understood that the system 300 can have multiple antennas. Thus, the RF circuitry 302 can be configured to select an antenna for transmission / reception, and can be configured to provide coupling between the selected antenna (e.g., the antenna 321) and other components of the system 300 via a bus (e.g., the bus 311). Although one RF circuitry is shown, it will be understood that the wireless communication device 301 can include multiple RF circuitries. Thus, each of multiple antennas can have its own RF circuitry. In addition, each antenna can be associated with a particular wireless communication protocol, such as a first antenna and RF circuitry for WiFi and a second antenna and RF circuitry for Bluetooth.
[0032] The system 300 includes a memory system 308 configured to store one or more data values associated with connection management operations discussed in more detail below. Thus, the memory system 308 includes a storage device, which can be a non-volatile random access memory (NVRAM) configured to store such data values, and can also include a cache configured to provide local caching. In various embodiments, the system 300 further includes a host processor 313 configured to implement processing operations implemented by the system 300.
[0033] It will be understood that one or more of the components described above can be implemented on a single chip, or on different chips. For example, the transceiver 303 and the processing device 324 can be implemented on the same integrated circuit chip (e.g., the integrated circuit chip 320). In another example, the transceiver 303 and the processing device 324 can each be implemented on their own chip, and thus can be separately disposed as a multi-chip module or on a common substrate (e.g., a printed circuit board (PCB)). It will also be understood that the components of the system 300 can be implemented in the context of a low-energy device, a smart device, or a vehicle (e.g., an automobile). Thus, some components such as the integrated chip 320 can be implemented in a first location, while other components such as the antenna 321 can be implemented in a second location, and coupling between the two can be implemented via a coupler (e.g., the RF coupler 322).
[0034] Figure 4A flow diagram illustrating an example of a method implemented in accordance with some embodiments for wireless communication scheduling is shown. As discussed above, a wireless communication device is configured to schedule network traffic while adhering to a particular set of constraints. Accordingly, a method such as method 400 can be implemented to schedule network traffic between different devices of a network (e.g., a mesh network) in a manner that reduces total power consumed while eliminating or reducing contention and adhering to latency constraints.
[0035] Accordingly, method 400 can begin with operation 402 during which a network traffic schedule can be generated. In various embodiments, the network traffic schedule is a medium access schedule, which is a schedule configured to determine when network traffic can be transmitted by a particular device. In some embodiments, the network traffic schedule is a target wake time (TWT) schedule, in which an entity (e.g., an access point) identifies wake times and sleep times for different downstream devices (e.g., stations). Accordingly, during operation 402, an access point can generate a medium access schedule that identifies a plurality of wake times and a plurality of sleep times for various stations communicatively coupled to the access point.
[0036] Method 400 can proceed to operation 404 during which service periods can be assigned for all stations based at least in part on the network traffic schedule. Accordingly, as discussed above, the network access schedule can identify various wake times that can include service periods. In various embodiments, a service period is a time during which a device (e.g., a station) is allowed to transmit and receive data. Accordingly, when the network traffic schedule is generated, the access point can assign particular service periods to particular stations. Furthermore, during operation 404, the network traffic schedule can be transmitted from the access point to the stations, and each station can identify its assigned service period.
[0037] Method 400 can proceed to operation 406 during which a data transmission can be triggered within at least one service period. As will be discussed in greater detail below, a station can be configured to transmit data during its designated service period. In various embodiments, the access point can transmit a query frame to trigger a data transmission from a station associated with at least one service period. Accordingly, in accordance with various embodiments, the query frame can be a trigger frame. As will be discussed in greater detail below, a station can be configured to have some access point functionality and can be configured to decode information included in the query frame and use such decoded information to broadcast data. Accordingly, during operation 406, a station can receive the query frame and schedule a data transmission during its designated service period.
[0038] Method 400 can proceed to operation 408, during which data can be transmitted with the at least one service period. Thus, the station can transmit data to other devices coupled to the network. In various embodiments, the data is broadcast to the access point and other stations based at least in part on some of the information included in the query frame. In this manner, data transmission can be scheduled for multiple stations and in a manner that does not use data retransmission within the network.
[0039] Figure 5 A flow diagram illustrating another example of a method for wireless communication scheduling implemented in accordance with some embodiments is shown. As discussed above, a wireless communication device is configured to schedule network traffic while adhering to a particular set of constraints. For example, network traffic can be scheduled in a mesh network and under specified delay parameters that prevent the use of techniques such as data retransmission as well as other constraints that prevent synchronization. Thus, a method such as method 500 can be implemented to schedule network traffic between different devices of a network (e.g., a mesh network) in a manner that satisfies strict delay parameters, eliminates or reduces network contention, and also reduces the total power consumed by devices in the network.
[0040] Thus, method 500 can begin with operation 502, during which a network traffic schedule can be generated. As discussed above, a network traffic schedule is a medium access schedule that is configured to determine when network traffic can be sent by a particular device. As also discussed above, a network traffic schedule can be a target wake time (TWT) schedule in which an entity (e.g., an access point) identifies wake times and sleep or doze times for different downstream devices (e.g., stations). Thus, during operation 502, an access point can generate a medium access schedule that identifies a plurality of wake times and a plurality of sleep times for various stations communicatively coupled to the access point.
[0041] Method 500 can proceed to operation 504, during which the network traffic schedule can be transmitted to a plurality of stations. Thus, the access point can broadcast the generated network traffic schedule to a number of downstream stations and can receive the network traffic schedule at the stations. In various embodiments, the network traffic schedule can be included in a data structure (e.g., a frame) that is broadcast to all communicatively coupled stations.
[0042] The method 500 can proceed to operation 506, during which service periods can be assigned to all of the stations based at least in part on the network traffic schedule. As described above, the network access schedule identifies various wake-up times that can include service periods, and when the network traffic schedule is generated, the access point can assign specific service periods to specific stations. Thus, during operation 506, the network traffic schedule is received at the stations that are communicatively coupled to the access point, and each station identifies its assigned service period.
[0043] The method 500 can proceed to operation 508, during which a query frame can be transmitted to initiate data transmission from the stations within the designated service periods. In various embodiments, the query frame is a trigger frame transmitted by the access point, and can be a data structure that includes data values representing transmission parameters for transmitting data within the designated service periods. Thus, the query frame can include transmission parameters that describe the type of encoding to be applied to data for transmission. In some embodiments, the transmission parameters included in the query frame (e.g., trigger frame) can be a static, fixed set determined based on one or more requirements of a particular application, or can be dynamically selected based on communication link information available to the access point through the communication channels from the various stations that are communicatively coupled to the access point.
[0044] As described above, the access point is configured to determine transmission parameters for each of the stations included in the network. More specifically, the access point can determine one or more of a modulation mode, a power level, and a communication channel for each station. In various embodiments, such parameters can be determined based on a network map. Thus, the access point can generate a network map of the stations included in the network, and can determine the transmission parameters for each station based on the location of each station in the network map. Further, the determination of such parameters can be specific to each station and determined based on aspects of one or more stations. For example, the access point can identify a particular station as having weak signal strength on a particular communication channel. The access point can determine a suitable different channel that has greater signal strength, and can include the identified channel in the transmission parameters included in the query frame.
[0045] The method 500 can proceed to operation 510, during which data can be transmitted from the station for the designated service period. In various embodiments, the station associated with the query frame can receive the query frame and extract the transmission parameters from the query frame. Thus, the station is configured to include the access point capabilities and is configured to have the ability to receive and extract information (e.g., transmission parameters) from the query frame and to generate or receive a trigger-based physical layer protocol data unit (TB-PPDU) frame based at least in part on the transmission parameters. The station can then use the transmission parameters to configure the data transmission performed during the designated service period. In this way, the access point can coordinate with the station to schedule data transmission or reception during the station's designated service period, and the station can transmit data to other devices during its designated service period in a mesh topology without using retransmission by the access point. As will be discussed in greater detail below, this can be implemented individually for each station in the network.
[0046] The method 500 can proceed to operation 512, during which a determination can be made as to whether another query frame should be transmitted for another station. This determination can be made based on whether the communication session has ended. For example, the communication session can end when an application such as a game application has terminated, or when a signal has been received to shut down a device that can be configured as an access point (e.g., a game console). Thus, if the communication session is continuing, a determination can be made that another query frame should be transmitted for another station, as can be determined by a network traffic schedule, and the method 500 can return to operation 508. However, if a determination is made that the communication session is to be terminated, and that another query frame should not be transmitted for another station, the method 500 can terminate.
[0047] Figure 6 A flow diagram illustrating yet another example of a method for wireless communication scheduling implemented in accordance with some embodiments is shown. As discussed above, a wireless communication device is configured to schedule network traffic while adhering to a particular set of constraints that can include designated latency parameters as well as synchronization constraints. In various embodiments, a method such as the method 600 can be implemented to further enable scheduling of network traffic between access points of different mesh networks. Moreover, such scheduling can be implemented in a manner that satisfies strict latency parameters, eliminates or reduces network contention, and also reduces the total power consumed by devices in the network.
[0048] Accordingly, the method 600 can begin with operation 602, during which a network traffic schedule can be generated. As discussed above, the network traffic schedule is a medium access schedule that is configured to determine when network traffic can be transmitted and / or received by a particular device. As discussed above, the network traffic schedule can be a target wake-up time (TWT) schedule, in which an entity (e.g., an access point) identifies wake-up times and sleep or doze times for different downstream devices (e.g., stations). Accordingly, during operation 602, the access point can generate a medium access schedule that identifies a plurality of wake-up times and a plurality of sleep times for various stations communicatively coupled to the access point.
[0049] The method 600 can proceed to operation 604, during which service periods can be assigned to all stations based at least in part on the network traffic schedule. As noted above, the network access schedule identifies various wake-up times that can include service periods, and when the network traffic schedule is generated, the access point can assign particular service periods to particular stations. As will be discussed in greater detail below, the wake-up times included in the network traffic schedule generated during operation 602 can be used to listen for frames broadcast from other access points of other networks. Accordingly, during operation 604, the network traffic schedule is received at the stations communicatively coupled to the access point, and each station identifies its assigned service period.
[0050] The method 600 can proceed to operation 606, during which a listening period can be implemented. In various embodiments, the listening period can be a specified time period during a service period in which a device, such as a station or an access point, listens for frames received from one or more other devices. More specifically, other access points, which can be other game consoles, can broadcast data frames, which can be action frames, such as “hello frames.” Accordingly, such data frames can be broadcast to identify the presence of other game consoles and also to initiate communication. Further, such data frames can include communication session specific information. In one example, a hello frame can include a data value that identifies an aspect of a game session, such as what game is being played. Further, the listening period described above represents a time period of a service period that is implemented in which devices of a first network can listen for broadcast data frames of devices of a second network.
[0051] The method 600 can proceed to operation 608, during which a determination can be made as to whether a frame has been received. This determination can be made by a station or an access point based on whether a frame has been received from another access point. If it is determined that a frame has not been received, the method 600 can proceed to operation 612. However, if it is determined that a frame has been received, the method 600 can proceed to operation 610.
[0052] Accordingly, during operation 610, communication with another access point can be initiated. Thus, in response to receiving the data frame, the entity (e.g., access point) can transmit an acknowledgement signal and one or more additional transmission operations can be implemented to establish a communication session. For example, additional transmission operations can be implemented to configure and initiate a game session with the second access point and its associated stations or a game session between the two access points and their associated stations.
[0053] Method 600 can proceed to operation 612 during which it can be determined whether the communication session has ended. As similarly discussed above, such a determination can be made based on one or more aspects of the execution of the application (e.g., game application). For example, the communication session can end when the application, such as a game application, has terminated or when a signal has been received to shut down a device (e.g., game console) that can be configured as an access point. Thus, if it is determined that the communication session has not ended, method 600 can return to operation 606. If it is determined that the communication session has ended, method 600 can terminate.
[0054] Figure 7 A flow diagram illustrating additional examples of methods for wireless communication scheduling implemented in accordance with some embodiments is shown. As discussed above, a wireless communication device is configured to schedule network traffic while adhering to a particular set of constraints. For example, the network traffic can be scheduled in a mesh network and under specified latency parameters that prevent the use of techniques such as data retransmission as well as other constraints that prevent synchronization.
[0055] Thus, a method (e.g., method 700) can be implemented to schedule network traffic between different devices of a network (e.g., mesh network) in a manner that satisfies strict latency parameters, eliminates or reduces network contention, and also reduces the total power consumed by the devices in the network. Furthermore, as will be discussed in greater detail below, method 700 can further implement scheduling of network traffic between access points of different mesh networks. Thus, method 700 can enable scheduling of network traffic that satisfies the constraints of the network and also enables dynamic listening and connection to components of other networks (e.g., other access points).
[0056] Thus, method 700 can begin with operation 702 during which a first network traffic schedule and a second network traffic schedule can be generated. As discussed above, a network traffic schedule can be a medium access schedule configured to determine when network traffic can be transmitted and / or received by devices in a network. During operation 702, the first network traffic schedule can be generated to enable query frame based data transmission within the network. Thus, as discussed above with reference to Figure 5As discussed, the first network traffic schedule can include a first type of service period in which components, such as stations, can transmit data blocks based on query frames. Further, during operation 702, a second network traffic schedule can be generated to implement a listening period, as similarly discussed above with respect to FIG. 5. As discussed, the second network traffic schedule can include a second type of service period in which components, such as access points, can listen for data frames from other networks. Figure 6 As discussed, the first network traffic schedule can include a first type of service period in which components, such as stations, can transmit data blocks based on query frames. Further, during operation 702, a second network traffic schedule can be generated to implement a listening period, as similarly discussed above with respect to FIG. 5. As discussed, the second network traffic schedule can include a second type of service period in which components, such as access points, can listen for data frames from other networks.
[0057] Method 700 can proceed to operation 704 during which a combined network traffic schedule can be generated. In various embodiments, the combined network traffic schedule is generated based on the first network traffic schedule and the second network traffic schedule. For example, the combined network traffic schedule can be generated by superimposing the second network traffic schedule on the first network traffic schedule. Thus, the combined network traffic schedule can represent a superimposition of both the first service period and the second service period.
[0058] Method 700 can proceed to operation 706 during which a plurality of service periods can be allocated to a plurality of stations based on the combined network traffic schedule. As similarly discussed above, the combined network traffic schedule identifies various wake-up times that can include service periods, and when the combined network traffic schedule is generated, the access point can allocate particular service periods to particular stations. Thus, during operation 706, service periods can be allocated for trigger-based data transmissions, and service periods can also be allocated for listening periods. Further, as discussed above, the combined network traffic schedule can be transmitted to and received at stations communicatively coupled to the access point, and each station can identify its assigned service periods.
[0059] Method 700 can proceed to operation 708 during which a determination can be made as to whether a first service period exists. Such a determination can be made by a component, such as an access point, and can be made based on the combined network traffic schedule and the passage of time, as can be monitored by system components, such as a clock. For example, the determination can be made during operation of the network, as can occur during a communication session, such as a game session. Further, the determination can be made based on the passage of a specified amount of time, as determined by the combined network traffic schedule. Thus, if it is determined that the first service period has not arrived, method 700 can proceed to operation 712. However, if it is determined that the first service period has arrived, method 700 can proceed to operation 710.
[0060] Accordingly, during operation 710, a listening period can be implemented. As discussed above, the listening period can be a specified period of time during the service period in which a device (e.g., a station or an access point) listens for frames received from one or more other devices. As also discussed above, other access points, which can be other game consoles, can broadcast data frames that broadcast the presence of the other game consoles. In this way, different game consoles can identify the presence of one another and initiate communication. Moreover, the listening period described above represents a period of time implemented as a service period in which a device of a first network can listen for broadcast data frames of a device of a second network. If such data frames are detected, one or more communication operations can be implemented with the other access point and its associated stations, such as authentication and / or initiation of a new game session.
[0061] Method 700 can proceed to operation 712, during which a determination can be made as to whether a second service period exists. As similarly discussed above, such a determination can be made by a component such as an access point and can be made based on a combination of network traffic schedules and the passage of time, as can be monitored by a system component such as a clock. Accordingly, the determination can be made based on the passage of a specified amount of time, as determined by a combination of network traffic schedules. Accordingly, if it is determined that the second service period has not arrived, method 700 can proceed to operation 718. However, if it is determined that the second service period has arrived, method 700 can proceed to operation 714.
[0062] Method 700 can proceed to operation 714, during which a query frame can be transmitted. As similarly discussed above, the query frame can be transmitted by an access point and can be a data structure that includes data values representing transmission parameters for transmitting data within a specified service period. Accordingly, the query frame can include transmission parameters that describe the type of encoding to be applied to data for transmission. As also discussed above, the query frame can be specific to a particular station. Moreover, the query frame can be a trigger frame. In some embodiments, the transmission parameters in the query frame can be a static, fixed set or can be dynamically decided based on communication link information that the access point has received from its associated stations.
[0063] Method 700 can proceed to operation 716, during which data can be transmitted in response to the reception of a query frame. Also as discussed above, the station associated with the query frame can receive the query frame and extract transmission parameters from it. Therefore, the station is configured to include access point capabilities and is configured to have the ability to receive and extract information from query frames. Thus, the station can generate TB-PPDU frames at least in part based on the transmission parameters. The station can then use the transmission parameters to configure data transmission or reception to be performed during a specified service period. In this way, the station can transmit data to other devices in the mesh topology during its specified service period without using access point retransmissions.
[0064] Method 700 may proceed to operation 718, during which it may be determined whether the communication session has ended. In various embodiments, this determination may be based on one or more aspects of the execution of an application, such as a game application. For example, the communication session may end when the application, such as a game application, has terminated, or when a signal has been received to shut down a device that can be configured as an access point (e.g., a game console). Therefore, if it is determined that the communication session has not ended, method 700 may return to operation 708. If it is determined that the communication session has ended, method 700 may terminate.
[0065] Figure 8 A timing diagram of wireless communication scheduling implemented according to some embodiments is shown. Figure 8 As shown, a network traffic schedule can be generated that schedules traffic sent and received from the access point and various stations. More specifically, the access point can transmit beacon frames (e.g., beacon frame 802) and subsequently transmit various query frames for each station at specified times and in a specified order, as determined by the network traffic schedule.
[0066] For example, an access point can send a first query frame 804, which can be received at a first site. As discussed above, the first site can be configured to have some access point capabilities and can extract transmission parameters from the first query frame 804. The first site can then use the transmission parameters to broadcast a first data block 806. Other sites in the network (besides the first site) can be configured to have some access point capabilities, can extract transmission parameters from the first query frame 804, and then use the transmission parameters to receive broadcast frames sent from the first site.
[0067] The access point can then transmit a second query frame 808, which can be received at the second station. The second station can also be configured to have some access point capabilities and can extract the transmission parameters from the second query frame 808. The second station can then use the transmission parameters to broadcast a second data block 810. As discussed above, other stations in the network (other than the second station) can be configured to have some access point capabilities and can extract the transmission parameters from the first trigger frame 804 and then use the transmission parameters to receive the broadcast frame transmitted from the second station. In this way, the first network traffic schedule can be implemented to communicate in a mesh topology without using techniques such as retransmission from an access point.
[0068] Figure 9 Another timing diagram of wireless communication scheduling implemented in accordance with some embodiments is shown. As similarly discussed above, a network traffic schedule can be generated that schedules traffic transmitted and received from access points and individual stations. More specifically, a first access point can transmit a beacon frame (e.g., beacon frame 902) and subsequently transmit various query frames as discussed above.
[0069] In various embodiments, a second access point can periodically transmit various data frames (e.g., data frame 904) to broadcast its presence to other devices on the other network. Accordingly, a second network traffic schedule can be implemented to leave designated service periods for listening for such data frames. As shown, Figure 9 A service period (e.g., service period 906) can be implemented in which all devices in the first network listen for data frames broadcast by another device (e.g., an access point of the second network). In this way, communication can be established between the access points of the two networks without implementing a synchronization event or other technique while still using network traffic schedule based service periods to implement power savings at the stations.
[0070] Figure 10 Yet another timing diagram of wireless communication scheduling implemented in accordance with some embodiments is shown. Accordingly, as shown, Figure 10 A combination of the first network traffic schedule and the second network traffic schedule can be implemented to enable data transmission within the first network with reduced latency, elimination or reduction of network contention, reduced power consumption, and also to enable connection with other access points of other networks without implementing a synchronization event. More specifically, as described above, a first service period such as first service period 1002 can be used for triggered data transmission. In addition, a second service period such as second service period 1004 can be used to implement a listening period for communicatively coupling with other networks. As shown, Figure 10As shown, the relative lengths and durations of such first and second service periods can be specifically configured to ensure that both sets of conditions are met.
[0071] In Figure 10 In one example shown, the first service period is shown as relatively short, with a corresponding wake-up time interval, while the second service period is shown as relatively long, with a corresponding wake-up time interval. In a particular example, the first service period is 1.7 milliseconds, with a corresponding wake-up time interval of 10 milliseconds, while the second service period is 100 milliseconds, with a corresponding wake-up time interval of 400 milliseconds. Although this particular example has been shown, it will be appreciated that any suitable durations of service periods and wake-up time intervals can be implemented depending on latency and network contention constraints.
[0072] While the foregoing concepts have been described in detail, it will be apparent that certain changes and modifications can be practiced within the scope of the appended claims. It should be noted that there are many alternative ways of implementing the processes, systems, and apparatuses. Accordingly, the present examples are to be considered as illustrative and not restrictive.
Claims
1. A method for communication, comprising: The identifiers include multiple sites in the first network; A network traffic schedule is generated using one or more processors at the first access point. The network traffic schedule is configured to assign multiple service cycles to the multiple sites, and the network traffic schedule identifies multiple sleep times and wake-up times of the multiple sites. A query frame is sent to at least one of the plurality of sites during a specified service period, the query frame being configured to provide transmission parameters to at least one site during the specified service period of the at least one site, and also being configured to trigger data transmission by at least one site during the specified service period of the at least one site. as well as Data transmission is received from the at least one site, the data transmission being broadcast by the at least one site to the plurality of sites based on the transmission parameters.
2. The method according to claim 1, wherein, The plurality of service cycles includes a plurality of first service cycles and a plurality of second service cycles, wherein the specified service cycle is included in the plurality of first service cycles.
3. The method according to claim 2, further comprising: A listening cycle is initiated during at least one of the plurality of second service cycles.
4. The method of claim 3, further comprising: During at least one of the plurality of second service cycles, an action frame is received from the second access point.
5. The method according to claim 4, wherein, The second access point is included in the second network.
6. The method according to claim 5, wherein, Both the first network and the second network are mesh networks.
7. The method according to claim 2, wherein, The network traffic scheduling is generated based on a combination of a first network traffic schedule associated with the plurality of first service cycles and a second network traffic schedule associated with the plurality of second service cycles.
8. The method according to claim 1, wherein, The data transmission is based on triggered Physical Layer Protocol Data Units (TBPPDUs).
9. The method according to claim 8, wherein, The transmission parameters include one or more data values representing the encoding scheme.
10. A system for communication, comprising: At least one antenna; The processing equipment is configured as follows: The identifiers include multiple sites in the first network; Generate network traffic schedules, which are configured to assign multiple service cycles to the multiple sites, and the network traffic schedules identify multiple sleep times and wake-up times of the multiple sites; The transceiver is configured as follows: A query frame is sent to at least one of the plurality of sites via the at least one antenna during a specified service period for at least one of the plurality of sites. The query frame is configured to provide transmission parameters to the at least one site during the specified service period of the at least one site, and is also configured to trigger data transmission by the at least one site during the specified service period of the at least one site. as well as Data transmission is received from the at least one site via the at least one antenna, the data transmission being broadcast to the plurality of sites by the at least one site based on the transmission parameters.
11. The system according to claim 10, wherein, The plurality of service cycles includes a plurality of first service cycles and a plurality of second service cycles, wherein the specified service cycle is included in the plurality of first service cycles.
12. The system according to claim 11, wherein, The plurality of second service cycles are used to initiate at least one listening cycle, and wherein the processing device is further configured to: During at least one of the plurality of second service cycles, an action frame is received from the second access point.
13. The system according to claim 12, wherein, The second access point is included in a second network, wherein both the first network and the second network are mesh networks.
14. The system according to claim 11, wherein, The network traffic scheduling is generated based on a combination of first network traffic scheduling associated with multiple first service cycles and second network traffic scheduling associated with multiple second service cycles.
15. The system according to claim 11, wherein, The data transmission is based on a triggered physical layer protocol data unit (TBPPDU), wherein the transmission parameters include one or more data values representing an encoding scheme, and wherein the processing device is included in a game console.
16. A device for communication, comprising: One or more processors, which are configured as follows: The identifiers include multiple sites in the first network; Generate network traffic schedules, which are configured to assign multiple service cycles to the multiple sites, and the network traffic schedules identify multiple sleep times and wake-up times of the multiple sites; The transceiver is configured as follows: A query frame is sent to at least one of the plurality of sites during a specified service period, the query frame being configured to provide transmission parameters to at least one site during the specified service period of the at least one site, and also being configured to trigger data transmission by at least one site during the specified service period of the at least one site. as well as Data transmission is received from the at least one site, the data transmission being broadcast by the at least one site to the plurality of sites based on the transmission parameters.
17. The device according to claim 16, wherein, The plurality of service cycles includes a plurality of first service cycles and a plurality of second service cycles, wherein the specified service cycle is included in the plurality of first service cycles.
18. The device according to claim 17, wherein, The plurality of second service cycles are used to initiate at least one listening cycle, and wherein the one or more processors are further configured to: During at least one of the plurality of second service cycles, an action frame is received from the second access point.
19. The device according to claim 16, wherein, The network traffic scheduling is generated based on a combination of first network traffic scheduling associated with multiple first service cycles and second network traffic scheduling associated with multiple second service cycles.
20. The device according to claim 16, wherein, The data transmission is based on triggered physical layer protocol data units (TBPPDUs), and the transmission parameters include one or more data values representing an encoding scheme.
Citation Information
Patent Citations
High efficiency wireless (hew) access point (ap) cooperation protocol
JP2016537905A
TX scheduling using hybrid signaling techniques
US20170339680A1