Patent Description:
Wireless Access Points (APs) operating on the same spectrum reserve blocks of time and spectrum to communicate with user devices so that communications do not overlap and interfere with one another. These blocks of time and spectrum are generally referred to as RUs, and a given communications specification can define an RU to include various sub-channels and sub-times for specific communications tasks. For example, two uplink communications may occur at the same time within an RU on separate sub-channels, or on the same sub-channel at different times. An AP communicates the assignment of various times and channels to the user devices associated therewith so that the user devices respect the assignments chosen by the AP for a given RU. In various embodiments, when two or more APs neighbor one another, each AP may want to use the same RU. RUs may be won via a contestation process or assigned by a central network controller so that two APs do not attempt to use the same portion of spectrum at the same time.

<CIT> discloses methods and apparatus for wireless communication. The apparatus includes a processing system configured to generate a first frame including an indication of unused resources in a first basic service set (BSS) available to be shared with one or more wireless nodes in one or more second BSSs. The apparatus also includes a first interface configured to output the first frame for transmission to the one or more wireless nodes.

<CIT> discloses an information exchange method. A base station determines coordination information and transmits the coordination information to a user equipment, and the user equipment eliminates interference according to the received coordination information.

The present disclosure provides improvements in channel usage, so that network deployments with more than one AP can more efficiently use the available bandwidth for communications. An AP that has won or been assigned an RU informs neighboring APs of any availability within the RU that the AP is willing to share. For example, a first AP can tell a second AP (directly or via a manager application) that an RU occupying channel <NUM> is reserved from time t<NUM> to t<NUM>, but the first AP is only scheduled to use sub-channels <NUM>-<NUM>; the second AP may use sub-channels <NUM>-<NUM> despite the first AP having reserved the RU. For example, the second AP can then use sub-channels <NUM>-<NUM> from time t<NUM> to t<NUM> so that the bandwidth in sub-channels <NUM>-<NUM> does not go to unused. Additionally, a first AP can allow access to the sub-channels for a subset of the reserved time so that a first AP can use the given sub-channel during one time period and a second AP can use that sub-channel for a different time period.

In Wi-Fi (e.g., the <NUM> family of standards set out by the IEEE (Institute of Electrical and Electronics Engineers)) and other contention based networking standards, each device contends to access the transmission medium. When a device "wins" contention for access to the transmission medium, the device may schedule transmissions to/from one or more other devices. Additionally, the time period won may be consistent between contentions (e.g., every winning device is assigned X milliseconds (ms) of access to the transmission medium) or may be variable between different contentions.

<FIG> and <FIG> illustrate networking environments <NUM>, according to embodiments of the present disclosure. As illustrated in <FIG> As and 1B, a plurality of APs 110a-c (generally, AP <NUM>) serve various user devices (UD) 120a-g (generally, UD <NUM>) located within the ranges 130a-c (generally, range <NUM>) of the respective APs 110a-c. As illustrated, the ranges <NUM> define several overlapping areas 140a-d (generally, overlapping area <NUM>) in which a UD <NUM> located in an overlapping area <NUM> may communicate with more than one AP <NUM>. Conversely, UDs <NUM> are located within one range <NUM> (i.e., not in an overlapping area <NUM>), and thus may directly communicate with one AP <NUM>.

For example, as in <FIG>, a first UD 120a located in a first overlapping area 140a is located in the first through third ranges 130a-c and may send signals to and receive signals from the first through third APs 110a-c. A second UD 120b located in a second overlapping area 140b is located both the first range 130a and the second range 130b (but not the third range 130c) and may send signals to and receive signals from the first AP 110a and the second AP 110b (but not the third AP 110c). Although a given number of APs <NUM> and UDs <NUM> are illustrated in <FIG> in various locations relative to the ranges <NUM> of the APs <NUM>, more or fewer APs <NUM> and UDs <NUM> may be present in a networking environment <NUM> and in different locations than are illustrated in <FIG>.

In a further example, as in <FIG>, a first AP 110a may have a first range 130a with a first overlapping area 140a shared with a second AP 110b and a second overlapping area 140b shared with a third AP 110c, where the overlapping areas <NUM> are non-contiguous. A UD <NUM> located in an overlapping area <NUM> may be associated with any one of the APs <NUM> whose range <NUM> forms the overlapping area <NUM>. For example, in <FIG>, the first UD 120a and the seventh UD <NUM> in the first overlapping area 140a may both be associated with (and served by) the first AP 110a or the second AP 110b, or one may be associated with the first AP 110a and the other with the second AP 110b.

In some embodiments, a scheduler <NUM> (e.g., a network controller) is in communication with the APs <NUM> to manage a shared network offered by the APs <NUM> within the networking environment. The scheduler <NUM> can be included in an AP <NUM> or may be provided by a separate computing device. In various embodiments, the scheduler <NUM> is in communication with the APs <NUM> via a wired connection (e.g., via wired network interface) or may be in communication via wireless communications between the APs <NUM> (e.g., by control frame messages). Example hardware as may be included in an scheduler <NUM> is discussed in greater detail in regard to <FIG>.

An AP <NUM> may include various networking devices configured to provide wireless networks according to various networking standards or Radio Access Technologies (RAT) (e.g., IEEE <NUM> or "WiFi" networks, BLUETOOTH® networks, "cellular" (including various generations and subtypes thereof, such as Long Term Evolution (LTE) and Fifth Generation New Radio (<NUM> NR)) networks, Citizens Broadband Radio Service (CBRS) networks, proprietary networks). Example hardware as may be included in an AP <NUM> is discussed in greater detail in regard to <FIG>.

Similarly, a UD <NUM> may include any computing device that is configured to wirelessly connect to one or more APs <NUM>. Example UDs <NUM> can include, but are not limited to: smart phones, feature phones, tablet computers, laptop computers, desktop computers, Internet of Things (IoT) devices, and the like. Example hardware as may be included in a UD <NUM> is discussed in greater detail in regard to <FIG>.

Depending on the various communications standards used by the APs <NUM> and UDs <NUM> to wireless communicate, the transmissions between the APs <NUM> and the UD <NUM> may be carried in various frequency bands on various channels (and sub-channels) at various times to avoid collisions or interference in the overlapping areas <NUM>. For example, a first AP 110a, a second AP 110b, and a third AP 110c may each communicate over a shared channel at different times, or may communicate at the same time (i.e., a shared time) on different channels. The devices in a network environment <NUM> can contend for access (or be scheduled access by a scheduler <NUM>) to various portions of the available transmission medium, including spectrum and time.

As discussed herein, the portion of spectrum and time won in contention is referred to as an RU. An RU may include various defined portions related to preambles, inter-frame spacing, and various protocol data units defined in various standards. However, for purposes of understanding, the present disclosure focuses on the portions of the RU used for transmitting data (e.g., payloads) between APs <NUM> and UDs <NUM>, and one of ordinary skill in the art will be able to apply the formatting, error correction/mitigation, and spacing specified by the relevant standards. Although the present disclosure generally provides examples for RUs of an unspecified time length or unspecified number of sub-channels or subcarriers (in which a given RU may be a different length of time or different number of sub-channels than a subsequent RU), the present disclosure is applicable to networking standards or deployments in which a specified time length or a specified number of sub-channels or subcarriers is applied to all or some of the RUs.

Some devices in the network environment <NUM>, in response to winning an RU, reserve the RU for individual-access to communicate with a single partner (e.g., a first UD 120a communicating with a first AP 110a). Some other devices in the network environment <NUM>, in response to winning an RU, reserve the RU for multi-access communications. Multi-access communications assign various sub-channels of the RU for transmitting or receiving multiple streams of data to one or more targets during the RU. For example, a first AP 110a can assign a first sub-channel to communicate with a first UD 120a and assign a second and a third sub-channel to communication with a second UD 120b. Various devices in the network environment <NUM> can choose whether to use the transmission medium for individual-access or for multi-access communications, and may change between whether individual-access or multi-access communications are used for a given RU. Additionally, a device may use a given RU for uplink communication, downlink communications, or duplex communications (i.e., both uplink and downlink communications).

<FIG> and <FIG> illustrate RU assignments 200a and 200b, respectively, for multi-access communications, according to embodiments of the present disclosure. As illustrated, the RU includes seven sub-channels J<NUM>-J<NUM>, and lasts from a beginning time of t<NUM> to an end time of t<NUM>, although in various embodiments more than or fewer than seven sub-channels or a longer or shorter time duration may be included in the RU.

<FIG> illustrates a first RU assignment 200a, in which a first AP 110a, having won contention or having been scheduled an RU, assigns traffic for communicating with one or more devices on various sub-channels of the RU. In <FIG>, the first AP 110a has assigned traffic to sub-channel J<NUM> from time t<NUM> to t<NUM>, to sub-channel J3 from time t<NUM> to time t<NUM>, to sub-channel J<NUM> from time t<NUM> to time t<NUM>, and to sub-channel J<NUM> from time t<NUM> to time t<NUM>, which collectively refer to an assigned portion <NUM> of the RU. In contrast, the unused portion <NUM> refers to those channels or portions of channels to which the first AP 110a has not assigned traffic. In <FIG>, the unused portion <NUM> includes sub-channel J<NUM> from time t<NUM> to time t<NUM>, sub-channel J<NUM> from time t<NUM> to time t<NUM>, sub-channel J<NUM> from time t<NUM> to time t<NUM>, sub-channel J<NUM> from time t<NUM> to time ts, sub-channel J<NUM> from time t<NUM> to time t<NUM>, and sub-channel J<NUM> from time t<NUM> to time t<NUM>.

In <FIG>, sub-channels J<NUM>, J<NUM>, and J<NUM> are clear sub-channels, as the first AP 110a has not assigned traffic to these sub-channels. In contrast, sub-channels J<NUM>, J<NUM>, and J<NUM> are partially occupied sub-channels, and sub-channel J<NUM> is a fully occupied sub-channel based on the assignment of traffic to these channels. Both the clear sub-channels and the partially occupied sub-channels represent unused transmission opportunities - either for uplink messages or downlink messages. The first AP 110a may leave portions of the RU unused when the first AP 110a and the associated UDs <NUM> do not enough data to fill all of the sub-channels or when the first AP 110a offers to share RUs with neighboring APs <NUM> to load balance or prioritize traffic handled by those APs <NUM>.

<FIG> illustrates a second RU assignment 200b, in which the first AP 110a has shared access to the RU with other APs <NUM>, and has scheduled when those other APs <NUM> may send or receive communications. In various embodiments, when two or more other APs <NUM> neighbor the first AP 110a, those other APs <NUM> may contend for access to the unused portions <NUM> from the first RU assignment 200a or may be scheduled by the first AP <NUM> (or an external scheduler <NUM>) for access to the unused portions <NUM>. Similarly, any unused portions <NUM> leftover after allowing a second AP 110b to assign traffic to the unused portions <NUM> may be made available to other APs <NUM>. The unused portions <NUM> may remain available for sharing until the available bandwidth during the RU is fully assigned, until a duration of any remaining bandwidth is too short for an AP <NUM> to use, or until a request time period closes.

Comparing <FIG>, the assigned portions <NUM> for traffic handled by the first AP 110a remain the same, but the unused portions <NUM> have been partially filled by shared portions <NUM> handling traffic for the other APs <NUM> and assisted portions <NUM>. Each of the sub-portions of the RU used by other APs <NUM> begin after the start time of the RU (e.g., time t<NUM> or later) and end at or before the end time of the RU (e.g., at or before time t<NUM>). As will be understood, a sub-portion of the RU refers to a portion of the RU that is less than the whole RU.

Sub-channel J2 illustrates a shared portion <NUM> using a sub-set of the unused portion <NUM> from <FIG>. For example, a second AP 110b may use a sub-set of the available time in the clear sub-channel to transmit messages to a UD <NUM> associated with the second AP <NUM>. The other UD <NUM> may be located in a shared area <NUM> for the first AP 110a and the second AP 110b, or may be located outside of the shared area <NUM>. The assignment of the shared portion <NUM> may leave some of the sub-channel as an unused portion <NUM> (e.g., from time t<NUM> to time t<NUM>). For example, the remaining unused portion <NUM> can act as a buffer or give the first AP 110a time to invite the second AP 110b to share sub-channel J2 and give the second AP 110b time to process the availability of the unused portions <NUM> and respond.

Sub-channel J3 illustrates a shared portion <NUM> using a sub-set of the unused portion <NUM> from <FIG> in which spatial separation of two APs <NUM> allows the first AP 110a to share the unused portion of the sub-channel with the two APs <NUM>. For example, consider a second AP 110b attempting to communicate with a second UD 120b and a third AP 110c attempting to communicate with a third UD 120c. When the third UD 120c and third AP 110c are outside of the range of the second AP 110b, the messages transmitted from the second AP 110b will not interfere (at the intended destination) with messages sent between the third AP 110c and the third UD 120c. Similarly, when the second UD 120b and second AP 110b are outside of the range of the third AP 110c, the messages transmitted from the third AP 110c will not interfere (at the intended destination) with messages sent between the second AP 110b and the second UD 120b. Accordingly, the first AP 110a may share a sub-set of the RU with more than one other AP <NUM> at the same time, when the other APs <NUM> do not interfere with one another or the respective UDs <NUM>. As illustrated, the shared portions <NUM> for two different APs <NUM> may last for different amounts of time.

Sub-channels J4 and J5 illustrate that a shared portion <NUM> may be scheduled either after the assigned portion <NUM> occurs (as in sub-channel J4) or before the assigned portion <NUM> occurs (as in sub-channel J5). In embodiments in which a shared portion <NUM> precedes an assigned portion <NUM>, some of the sub-channel between the shared portion <NUM> and the assigned portion <NUM> may be left unassigned (e.g., from time t<NUM> to time t<NUM>) to act as a buffer between the transmissions of the two APs <NUM>.

Sub-channels J6 and J7 illustrate assisted portions <NUM>, in which the first AP 110a transmits messages to a UD <NUM> associated with another AP <NUM>. For example, in relation to sub-channel J6, a shared portion <NUM> (e.g., transmitted by a second AP 110b) may coincide with an assisted portion <NUM> so that both the first AP 110a and a second AP 110b co-transmit the same message to a UD <NUM> associated with the second AP 110b. In another example, in relation to sub-channel J7, the first AP 110a may transmit a message on behalf of the second AP 110b to a UD <NUM> associated with the second AP 110b without the second AP 110b transmitting the message (e.g., when the UD <NUM> is in an overlapping area <NUM> for the first and second APs <NUM>). In various embodiments, the message to be co-transmitted with or transmitted on behalf of the second AP 110b is transmitted to the first AP <NUM> via a wired connection or wireless connection before the RU begins (e.g., before time t<NUM>). In some embodiments, when the message is transmitted over a wireless connection for transmittal in the assisted portion <NUM>, the message is transmitted on a different channel than the RU occupies.

Each of the subsets of the RU used for handling traffic (e.g., the assigned portions <NUM>, the shared portions <NUM>, and the assisted portions <NUM>) may handle uplink communications or downlink communications, and the directionality of communication on one sub-channel may be different than the directionality of communication on another sub-channel in the same RU. Additionally, communications from one AP <NUM> may be addressed to one target device (e.g., a single UD <NUM> via channels J1, J3, J4, and J5) as different streams on the different sub-channels, or may be addressed to several target devices (e.g., a first UD 120a via channel J1, a second UD 120b via channel J3, J4, and J5).

<FIG> is a flowchart of a method <NUM> for RU sharing, according to embodiments of the present disclosure. Method <NUM> begins at block <NUM> in response to a first AP 110a reserving an RU, thus having priority to a channel or frequency band for a known time period. In various embodiments, the first AP 110a reserves the RU via a contention process with other APs <NUM> in the network environment <NUM>, or may be assigned the RU by a scheduler managing the APs <NUM>. During contention, the first AP 110a requests an RU based on the requirements of the UDs <NUM> associated with the first AP 10a. In some embodiments, the controller or scheduler <NUM> also evaluates the performance parameters of the APs <NUM> neighboring the first AP 110a when determining whether to assign an RU to the first AP 110a to determine with the neighboring APs <NUM> are also ready to send/receive data and are capable of sharing the RU with the first AP 110a (e.g., after finishing a current transmission/reception). When the neighboring APs <NUM> are capable of sharing the RU, and have data to transmit/receive, the scheduler <NUM> can decide to allocate an RU to the first AP 110a that is larger than the first AP 110a initially requested, thus providing additional time and/or bandwidth in the RU to share with the neighboring APs <NUM> to transmit/receive data during that RU.

At block <NUM>, the first AP 110a assigns the RU reserved in block <NUM> for multi-access communications, in which several sub-channels of the RU may be assigned for communicating with several different devices. In contrast, an AP <NUM> may also assign an RU for individual-access, in which the RU is used for communicating with one other device (e.g., sending messages to or receiving messages from one UD <NUM> or another AP <NUM>).

At block <NUM>, the first AP 110a assigns traffic to the sub-channels of the multi-access RU. In various embodiments, the traffic assignments may be for one or both of uplink communications (to the first AP 110a) or downlink communications (from the first AP 110a) and traffic to/from a given target may be assigned to one or more sub-channels in the RU.

At block <NUM>, the first AP 110a invites other APs <NUM> to use the sub-portion of the RU not assigned for handling the traffic of the first AP 110a (i.e., the unused portions <NUM>). In various embodiments, the first AP 110a invites the other APs <NUM> to share unused portions <NUM> via the preamble for the RU, which is broadcast to all devices by the first AP 110a. For example, the first AP <NUM> can broadcast the assigned portions <NUM> to the target devices in a preamble of the RU, and the other APs <NUM>, having received the RU preamble, interpret the gaps in the assigned portions <NUM> to be an invitation to contend for or request the use of the unused portions <NUM>. In some embodiments, the invitation is transmitted to the other APs <NUM> (wirelessly or via a wired connection) as a specific message that identifies the unused portions <NUM> to the other APs <NUM>. Generally, the invitation identifies a beginning time of the RU, an end time of the RU (a duration from the beginning time or a specified time to end) and any available time spans on one or more sub-channels so that the other APs <NUM> can identify an available sub-channel at an available time that does not precede or extend beyond the RU. Stated differently, the shared portions <NUM> of the RU begin after the RU begins and end when or before the RU ends.

In various embodiments, when a first AP 110a invites another AP <NUM> to share an RU won by the first AP 110a, the invited AP <NUM> may decide (and indicate to the first AP 110a or a scheduler <NUM> of the decision) at or before the time when the RU begins, or at a time during the RU. For example, a second AP 110b and a third AP 110c may both be invited to share an RU won by a first AP 110a lasting from time t<NUM> to time t<NUM>. The second AP 110b may indicate at or before time t<NUM> that the second AP 110b will reserve an unused portion <NUM> (e.g., from time t<NUM> to time t<NUM>) as a shared portion. The third AP 110c, however, may determine after time t<NUM> to assign traffic to an unused portion <NUM> of the RU, and may reserve a shared portion <NUM> at time t<NUM> for times t<NUM>-t<NUM>. For example, the third AP 110c in the present example may receive priority traffic after time t<NUM>, conclude a transmission on a different channel but still have data to send/receive after time t<NUM>, or take until after time t<NUM> to process the invitation or win contention for a given unused portion <NUM>. In various embodiments, the first AP 110a or the scheduler <NUM> may allow other APs <NUM> to reserve portions of the RU after the RU begins by leaving the invitation open for a predefined amount of time (e.g., x ms after sending the invitation), allowing reservations until a given time before the end time of the RU (e.g., x ms before the end of the RU), or allowing reservations until a predefined time after the RU begins (e.g., no assignments after time t<NUM>+x).

In embodiments in which invited APs <NUM> may reserve portions of the RU after the RU begins, the first AP 110a, the scheduler <NUM>, or other APs <NUM> having reserved a portion of the shared RU may update the invitation to indicate what portions of the RU remain unused portions <NUM> and/or what portions are now shared portions <NUM> or assisted portions <NUM>.

In various embodiments, when a given AP <NUM> (or UD <NUM>) in the network environment <NUM> is only capable of transmitting in an individual access mode, the first AP 110a may avoid sending a directed invitation to the given AP <NUM> so that the given AP <NUM> does not attempt to communicate during the RU. In some embodiments, the first AP 110a may send a Quiet Time Period command to the given AP <NUM> (or UD <NUM>) to request that the given AP <NUM> not communicate on the channels during the time of the RU.

At block <NUM>, the first AP 110a assigns available sub-portions of the RU to the other APs <NUM> to use for multi-access communications. In various embodiments, the other APs <NUM> contend for access to the unused portions <NUM>, and the first AP 110a (or a scheduler <NUM>) assigns which sub-portions of the RU are assigned to the other APs <NUM>. In various embodiments, the scheduler <NUM> of the first AP 110a (that initially won the RU) can break contention between the other APs <NUM> seeking to share the RU using various policies including giving preference to higher-priority traffic (e.g., latency sensitive traffic), higher-priority devices (e.g., employees versus guests), or the like. In various embodiments, the shared portions <NUM> may occupy clear sub-channels or partially occupied channels (either before or after the assigned portion <NUM> occurs). In some embodiments, the same unused portion <NUM> may be assigned to different APs <NUM> that are serving different UD <NUM> that are not located within the range <NUM> of the other AP <NUM>. The shared portions <NUM> may occur on more or fewer sub-channels than the assigned portions <NUM>, and may last for various durations.

The unused portions <NUM> of the RU may be shared until the available bandwidth during the RU is fully assigned, until a duration of any remaining bandwidth is too short for an AP <NUM> to use, or until a request time period closes. For example, in some embodiments, the first AP 110a shares some of the RU with a second AP 110b, which then shares any remaining unused portions <NUM> with the other APs <NUM>. Stated differently, the second AP 110b can perform a parallel iteration of method <NUM> using a subset of the RU used by neither the first AP 110a nor the second AP 110b as the unused portion. In some embodiments, the first AP 110a retains control of the sub-portions of the RU not used by the first AP 110a or a second AP 110b, and method <NUM> may return to block <NUM> from block <NUM> to invite a third AP 110c (or subsequent AP) to share the RU.

At block <NUM>, the first AP 110a transmits and/or receives communications on the assigned portions <NUM> of the RU. Similarly, the other APs <NUM> with which the first AP 110a is sharing access to the RU transmit and/or receive communications on the shared portions <NUM> of the RU at block <NUM>.

In various embodiments, the first AP 110a, if a message to co-transmit with a second AP 110b or to transmit on behalf of a second AP 110b has been received, can transmit that message during an assisted portion <NUM> of the RU during block <NUM>. In some embodiments, when co-transmitting with or transmitting on behalf of the second AP 110b, the first AP 110a can alter the header of the frames destined for the target device to indicate that the origin of the message is the second AP 110b, despite the first AP 110a transmitting the message. In other embodiments, during initial negotiation between a UD <NUM> and an AP <NUM>, one or more of the APs <NUM> indicate to the target device that data may be received from different or multiple APs <NUM> when the UD <NUM> is located in an overlapping area <NUM>, and the header of the frames may remain unmodified (i.e., indicate the actual transmitting AP <NUM>) when the first AP 110a co-transmits with or transmitting on behalf of the second AP 110b. Method <NUM> may then conclude.

<FIG> is a flowchart of a method <NUM> for RU sharing, according to embodiments of the present disclosure. Method <NUM> begins at block <NUM> when a second AP 110b receives an invitation to use a shared RU won by a first AP 110a in a shared network environment <NUM>. In various embodiments, the invitation is received as a specific message (e.g., in a control frame) that identifies when the RU begins, ends, the sub-channels and when those sub-channels are unoccupied. In some embodiments, the invitation is received as the preamble to the RU, which identifies when the RU begins, ends, and the assigned portions <NUM> of the RU.

In some embodiments, before block <NUM> occurs, method <NUM> includes block <NUM>, where the second AP 110b loses contention for the channel and time that the shared RU occupies. For example, the second AP 110b may contend to use a given channel for at least some of the time that the RU occupies, but the channel and time are won by the first AP 110a, which then shares any unused portions <NUM> with the second AP 110b. In other embodiments, the second AP 110b may be invited to use, and then share access to an RU won by a first AP 110a in a time or on a channel that the second AP 110b did not initially contend for, and method <NUM> may omit block <NUM>.

At block <NUM>, the second AP 110b reserves a sub-portion of the shared RU that is unoccupied by other APs <NUM>. The second AP 110b may contend for access (whether assigned concurrently or sequentially) to the unused portions <NUM>. In various embodiments, the second AP 110b is given access to some or all of the unused portions <NUM> before a third AP 110c is given access to the unused portions <NUM>, after a third AP 110c is given access to the unused portions <NUM>, or concurrently to a third AP 110c being given access to the unused portions <NUM>. The second AP 110b requests a sub-portion of the share RU to handle traffic with various UDs <NUM> associated with the second AP 110b, including uplink, downlink, and/or bi-directional traffic. In various embodiments, once the second AP 110b has reserved a sub-portion of the RU, the first AP 110a or a scheduler <NUM> prevents other APs <NUM> from also reserving an overlapping sub-portion of the RU (unless those APs <NUM> are serving UDs <NUM> in non-overlapping ranges <NUM>).

In various embodiments, the shared portions <NUM> that the second AP <NUM> has reserved for handling traffic may occur on a given sub-channel that is clear of assigned portions <NUM> or is partially clear. On a partially clear sub-channel, a shared portion <NUM> may occur before an assigned portion <NUM>, after an assigned portion <NUM>, or between two assigned portions <NUM>.

At block <NUM>, the second AP 110b assigns traffic to the sub-portion(s) reserved in block <NUM>. In various embodiments, the second AP 110b prioritizes which traffic is assigned to the reserved sub-portions based on the priority of the traffic, which may include the latency sensitivity of the traffic, how full a buffer for the traffic is, a priority level or guaranteed service level for the connection, etc. The second AP 110b transmits the assignments to the various UDs <NUM> to alert the UDs <NUM> to be ready to transmit and/or receive messages on the various reserved sub-channels at the various reserved times. In various embodiments, the assignments are transmitted in a wireless broadcast.

Optionally, at block <NUM>, the second AP 110b shares a message to the first AP 110a to transmit on the reserved sub-portions. In some embodiments, the shared message is to be transmitted by the first AP 110a (but not the second AP 110b) and the first AP 110a transmits the shared message on behalf of the second AP 110b in a shared portion <NUM>. In some embodiments, the shared message is to be co-transmitted by the first AP 110a and the second AP 110b at the same time on the reserved sub-channel. In various embodiments, the second AP 110b wirelessly shares the message to the first AP 110a on a different channel than the RU occupies, and/or by a wired connection. When the second AP 110b instructs the first AP 110a to transmit the message on behalf of or co-transmit with of the second AP 110b, the first AP 110a can alter the header of the frames destined for the target device to indicate that the origin of the message is the second AP 110b. In other embodiments, during initial negotiation between a UD <NUM> and an AP <NUM>, one or more of the APs <NUM> indicate to the target device that data may be received from different or multiple APs <NUM> when the UD <NUM> is located in an overlapping area <NUM>, and the header of the frames may remain unmodified (i.e., indicate the actual transmitting AP <NUM>) when the first AP 110a co-transmits with or transmitting on behalf of the second AP 110b.

At block <NUM>, the second AP 110b transmits and/or receives communications on the shared portions <NUM> of the RU. Similarly, the other APs <NUM> with which the first AP 110a is sharing access to the RU transmit and/or receive communications on assigned portions <NUM> or the shared portions <NUM> of the RU at block <NUM>. In various embodiments, the first AP 110a, if a message to co-transmit with or to transmit on behalf of a second AP 110b has been received, can transmit that message during an assisted portion <NUM> of the RU during block <NUM>. Method <NUM> may then conclude.

<FIG> is a flowchart of a method <NUM> for RU sharing, according to embodiments of the present disclosure, not falling under the scope of protection of the present claims. Method <NUM> begins at block <NUM>, where a scheduler <NUM> (or a master AP <NUM> in the network environment <NUM>) identifies the AP <NUM> with overlapping ranges <NUM> and the UDs <NUM> associated with those APs <NUM>. For example, the scheduler <NUM> identifies a first AP 110a associated with a first UD 120a, and a second AP 110b associated with a second UD 120b located in an overlapping area <NUM> for the first and second APs <NUM>.

At block <NUM>, the scheduler <NUM> identifies unused portions <NUM> of an RU won by the first AP 110a, and at block <NUM> assigns at least some of those unused portions <NUM> to the second AP 110b for use as shared portions <NUM>, which the second AP 110b can use to communicate with the second UD 120b. In various embodiments, the second AP 110b or the scheduler <NUM> communicates the assignments to the second UD 120b. In some embodiments, the scheduler <NUM> may repeat block <NUM> and block <NUM> for subsequent APs <NUM> to assign sub-portions of the RU not used by other APs <NUM> to the subsequent APs <NUM> (e.g., a third AP 110c). In some embodiments a scheduler <NUM> may provide a bigger RU to AP 110a than what the AP <NUM> had asked for after analyzing various performance parameters (such as buffer depths for pending packets for devices that are in the overlapping area <NUM>) and this over-assignment may allow increased opportunities for other neighboring APs <NUM> that also need to serve packets in the overlapping area <NUM>. For example, the scheduler <NUM> can assign an RU with a longer time duration and/or with a greater number of sub-channels than the first AP 110a that won the RU in contention needs to serve the UDs <NUM> associated with the first AP 110a, thus providing opportunities to share unused portions <NUM> of that RU with one or more neighboring APs <NUM>. Accordingly, an AP <NUM> may request an RU for a duration of X ms and/or occupying Y channels, but the scheduler <NUM> over-assigns the RU to have a duration of X+A ms and/or Y+B channels to provide additional capacity for the AP <NUM> to share.

Optionally, at block <NUM>, the scheduler <NUM> transmits a Quiet Time Period command to one or more APs <NUM> that are not scheduled to communicate during the RU to ensure that those APS <NUM> do not attempt to communicate on the channel used by the RU for the duration of the RU.

At block <NUM>, the scheduler <NUM> permits the APs <NUM> to transmit or receive communications over the scheduled sub-channels for the scheduled times. Method <NUM> may then conclude.

<FIG> illustrates hardware of a computing device <NUM>, as may be used in an AP <NUM>, a UD <NUM>, or scheduler <NUM> described in the present disclosure. The computing device <NUM> includes a processor <NUM>, a memory <NUM>, and communication interfaces <NUM>. The processor <NUM> may be any processing element capable of performing the functions described herein. The processor <NUM> represents a single processor, multiple processors, a processor with multiple cores, and combinations thereof. The communication interfaces <NUM> facilitate communications between the computing device <NUM> and other devices. The communications interfaces <NUM> are representative of wireless communications antennas and various wired communication ports. The memory <NUM> may be either volatile or non-volatile memory and may include RAM, flash, cache, disk drives, and other computer readable memory storage devices. Although shown as a single entity, the memory <NUM> may be divided into different memory storage elements such as RAM and one or more hard disk drives.

As shown, the memory <NUM> includes various instructions that are executable by the processor <NUM> to provide an operating system <NUM> to manage various functions of the computing device <NUM> and one or more applications <NUM> to provide various functionalities to users of the computing device <NUM>, which include one or more of the functions and functionalities described in the present disclosure. Additionally, the memory <NUM> includes one or more of a neighbor list <NUM> indicating what APs <NUM> can (or are expected to) may request or offer to share an RU. The neighbor list <NUM> may include details for the neighboring APs <NUM> such as MAC address, signaling capabilities, extend of an associated range <NUM>, etc., to enable the computing device <NUM> to determine where an overlapping area <NUM> exists, whether two APs <NUM> have contiguous ranges <NUM>, and what information to include in a header or preamble when handling a shared message in an assisted portion <NUM> of an RU.

In summary, Resource Unit (RU) sharing between Access Points in a wireless network is provided by identifying a first Access Point (AP) associated with a first user device, wherein the first AP has won contention for a RU; identifying a second AP associated with a second user device, wherein the first user device and the second user device are located within an overlapping area served by the first AP and the second AP; identifying an unused portion of the RU to which the first AP has not scheduled traffic between the first AP and the first user device; and assigning the unused portion to the second AP for communication between the second AP and the second user device.

In the current disclosure, reference is made to various embodiments. However, the scope of the present disclosure is not limited to specific described embodiments. Instead, any combination of the described features and elements, whether related to different embodiments or not, is contemplated to implement and practice contemplated embodiments. Additionally, when elements of the embodiments are described in the form of "at least one of A and B," it will be understood that embodiments including element A exclusively, including element B exclusively, and including element A and B are each contemplated. Furthermore, although some embodiments disclosed herein may achieve advantages over other possible solutions or over the prior art, whether or not a particular advantage is achieved by a given embodiment is not limiting of the scope of the present disclosure. Thus, the aspects, features, embodiments and advantages disclosed herein are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim(s). Likewise, reference to "the invention" shall not be construed as a generalization of any inventive subject matter disclosed herein and shall not be considered to be an element or limitation of the appended claims except where explicitly recited in a claim(s).

Claim 1:
A method, comprising:
reserving, by a first Access Point, AP (130a), a Resource Unit, RU, for use in an environment including an overlapping area served by the first AP (130a) and a second AP (130b);
assigning traffic between a first user device (120a) and the first AP (130a) in the RU;
transmitting an invitation to the second AP (130b) that identifies an unused portion (<NUM>) of the RU;
assigning a sub-portion (<NUM>) of the unused portion (<NUM>) to the second AP (130b);
transmitting the traffic to the first user device (120a) during the RU; and
co-transmitting, by the first AP (130a), a message to a second user device (120b) associated with the second AP (130b) while the second AP (130b) transmits the message to the second user device (120b) during the sub-portion (<NUM>); or receiving a message from the second AP (130b) for transmittal to the second user device (120b) associated with the second AP (130b) during the sub-portion (<NUM>) and transmitting, by the first AP (130a), the message to the second user device (120b) on behalf of the second AP (130b).