Patent Description:
A wireless multiple-access communications system may include one or more base stations or one or more network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE).

<NPL>, relates to a proposal for a new feedback scheme that can reduce the redundancy of LT codes.

<CIT> relates to rateless coded transmission and, in particular, to systems and methods for information retransmission using rateless codes.

<NPL>, relates to an investigation into a new feedback scheme for LT codes which is different from the codes that had been proposed before.

Wireless communications systems may support broadcasting of packets to a plurality of UEs. The transmitter (e.g., a network node, base station, etc.) may broadcast multiple packets to multiple receivers (e.g., UEs). The broadcasting may be repeated blindly without the transmitter having identified packets that have been received by the receivers.

The described techniques relate to improved methods, systems, devices, and apparatuses that support broadcasting packets using network coding via sidelink with feedback. Generally, the described techniques provide for enabling a transmitter (e.g., a base station) to leverage feedback from receivers (e.g., a user equipment (UE)) for broadcasted packets to determine which packets of a set to retransmit. The transmitter may identify a set of packets for broadcast to a set of UEs and transmit a set of network encoded packets based on the set of packets. The UEs may each rebroadcast successfully received network encoded packets via sidelink communications. When each UE has received a first round of network encoded packets from both the transmitter as wells as from other UEs, each UE may report to the original transmitter via feedback. The feedback may indicate successfully received packets at each UE.

The transmitter may generate an updated set of network encoded packets based on the feedback received from one or more of the UEs. In particular, the transmitter may determine, based on the feedback, which of the network encoded packets received at each UE would actually be successfully decoded by the UE. The updated set of network encoded packets may be determined based on the set of network encoded packets minus the successfully received network encoded packets (after determination by the transmitter) included in each of the subsets (e.g., an intersection of the subsets). In some examples, the updated set of network encoded packets may further be determined based on the set of network encoded packets minus the successfully received packets included in any of the subsets (e.g., a union of the subsets). The transmitter may continue to update and transmit the updated set of network encoded packets based on feedback until the transmitter determines that each UE has recovered the set of packets. In each round, the transmitter may decode the successfully received packets included in each of the subsets indicated in the feedback to determine that each UE has recovered the set of packets.

In the following, each of the described methods, apparatuses, examples, and aspects which do not fully correspond to the invention as defined in the claims is thus not according to the invention and is, as well as the whole following description, present for illustration purposes only or to highlight specific aspects or features of the claims.

Wireless communications systems may support broadcasting of network coded packets to a plurality of UEs. The transmitter (e.g., a network node, base station, etc.) may broadcast multiple packets to multiple receivers (e.g., UEs). Additionally, receivers may broadcast packets directly to one another in sidelink communication channels without transmitting through a base station or through a relay point. A sidelink communication may be an example of device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, or another example of sidelink communication in a wireless communications system. The broadcasting may be repeated blindly without the transmitter having identified network coded packets that have been decoded by the receivers. That is, if the broadcasting system does not utilize feedback associated with packets, the transmitter may continue to transmit packets blindly without any indication of packets that have actually been decoded by the UEs. Thus, the transmitter may rebroadcast packets in a wasteful manner, since some packets may have been decoded by all UEs. Thus, the lack of feedback may result in waste, unnecessary duplication of packets, and low efficiency.

Techniques described herein may leverage feedback for broadcasted packets to determine which packets of a set to retransmit. The transmitter may identify a set of packets for broadcast to a set of UEs and transmit a set of network encoded packets based on the set of packets. In some examples, the transmitter may encode the set of network encoded packets according to a Luby transform (LT) code, where each network encoded packet of the set of network encoded packets may be constructed from one or more packets according to a distribution (e.g., an ideal soliton distribution, a robust soliton distribution, among other examples).

The UEs may each rebroadcast successfully received network encoded packets via sidelink communications. When each UE has received a first round of network encoded packets from both the transmitter as wells as from other UEs, each UE may report to the original transmitter via feedback. The feedback may indicate successfully received packets at each UE. In some examples, the UEs may decode the packets concurrent with transmitting the feedback.

The feedback may be received via one or more hybrid automatic repeat request (HARQ) messages, using a packet data convergence protocol (PDCP) status report, or a radio link control (RLC) status report. Further, the transmitter may configure the UEs with network encoding parameters, such as a network coding algorithm, a network coding function, a network encoding matrix, a number of decoding iterations, or a combination thereof. Thus, the transmitter and the UEs may be synchronized such that the transmitter may encode the packets and the UEs may decode the packets. In some examples, the transmitter may adjust encoding metrics, such as a modulation and coding scheme (MCS) or encoding rate, based on the feedback such that the UEs may have a higher probability of successfully decoding packets. These and other implementations are further described with respect to the figures.

The transmitter may generate an updated set of network encoded packets based on the feedback received from one or more of the UEs. The updated set of network encoded packets may be determined based on the set of network encoded packets minus the successfully received network encoded packets included in each of the subsets (e.g., an intersection of the subsets). In some examples, the updated set of network encoded packets may further be determined based on the set of network encoded packets minus the successfully received packets included in any of the subsets (e.g., a union of the subsets). The transmitter may continue to update and transmit the updated set of network encoded packets based on feedback until the transmitter determines that each UE has recovered the set of packets. In some examples, the transmitter may decode the successfully received packets included in each of the subsets indicated in the feedback to determine that each UE has recovered the set of packets.

Particular aspects of the subject matter described herein may be implemented to realize one or more advantages. The described techniques may support improvements in the packet broadcasting framework, decreasing signaling overhead, and improving reliability, among other advantages. As such, supported techniques may include improved network operations and, in some examples, may promote network efficiencies, among other benefits. Aspects of the disclosure are initially described in the context of wireless communications systems. Aspects of the disclosure are further illustrated by and described with reference to process flows, apparatus diagrams, system diagrams, and flowcharts that relate to broadcasting packets using network coding via sidelink with feedback.

<FIG> illustrates an example of a wireless communications system <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The wireless communications system <NUM> may include one or more base stations <NUM>, one or more UEs <NUM>, and a core network <NUM>. In some examples, the wireless communications system <NUM> may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network. In some examples, the wireless communications system <NUM> may support enhanced broadband communications, ultra-reliable (e.g., mission critical) communications, low latency communications, communications with low-cost and low-complexity devices, or any combination thereof.

The base stations <NUM> may communicate with the core network <NUM>, or with one another, or both. For example, the base stations <NUM> may interface with the core network <NUM> through one or more backhaul links <NUM> (e.g., via an S1, N2, N3, or other interface). The base stations <NUM> may communicate with one another over the backhaul links <NUM> (e.g., via an X2, Xn, or other interface) either directly (e.g., directly between base stations <NUM>), or indirectly (e.g., via core network <NUM>), or both. In some examples, the backhaul links <NUM> may be or include one or more wireless links.

One or more of the base stations <NUM> described herein may include or may be referred to by a person having ordinary skill in the art as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, an eNodeB (eNB), a nextgeneration NodeB or a giga-NodeB (either of which may be referred to as a gNB), a Home NodeB, a Home eNodeB, or other suitable terminology.

The time intervals for the base stations <NUM> or the UEs <NUM> may be expressed in multiples of a basic time unit which may, for example, refer to a sampling period of Ts = <NUM>/(Δfmax · Nf) seconds, where Δfmax may represent the maximum supported subcarrier spacing, and Nf may represent the maximum supported discrete Fourier transform (DFT) size. Time intervals of a communications resource may be organized according to radio frames each having a specified duration (e.g., <NUM> milliseconds (ms)). Each radio frame may be identified by a system frame number (SFN) (e.g., ranging from <NUM> to <NUM>).

A subframe, a slot, a mini-slot, or a symbol may be the smallest scheduling unit (e.g., in the time domain) of the wireless communications system <NUM> and may be referred to as a transmission time interval (TTI). In some examples, the TTI duration (e.g., the number of symbol periods in a TTI) may be variable. Additionally or alternatively, the smallest scheduling unit of the wireless communications system <NUM> may be dynamically selected (e.g., in bursts of shortened TTIs (sTTIs)).

The wireless communications system <NUM> may support synchronous or asynchronous operation. For synchronous operation, the base stations <NUM> may have similar frame timings, and transmissions from different base stations <NUM> may be approximately aligned in time. For asynchronous operation, the base stations <NUM> may have different frame timings, and transmissions from different base stations <NUM> may, in some examples, not be aligned in time.

Some UEs <NUM>, such as MTC or IoT devices, may be low cost or low complexity devices and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication). In some examples, M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay such information to a central server or application program that makes use of the information or presents the information to humans interacting with the application program. Some UEs <NUM> may be designed to collect information or enable automated behavior of machines or other devices. Examples of applications for MTC devices include smart metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transactionbased business charging.

In some examples, half-duplex communications may be performed at a reduced peak rate. Other power conservation techniques for the UEs <NUM> include entering a power saving deep sleep mode when not engaging in active communications, operating over a limited bandwidth (e.g., according to narrowband communications), or a combination of these techniques. For example, some UEs <NUM> may be configured for operation using a narrowband protocol type that is associated with a defined portion or range (e.g., set of subcarriers or resource blocks (RBs)) within a carrier, within a guard-band of a carrier, or outside of a carrier.

In some systems, the D2D communication link <NUM> may be an example of a communication channel, such as a sidelink communication channel, between vehicles (e.g., UEs <NUM>). In some examples, vehicles may communicate using vehicle-to-everything (V2X) communications, vehicle-to-vehicle (V2V) communications, or some combination of these. A vehicle may signal information related to traffic conditions, signal scheduling, weather, safety, emergencies, or any other information relevant to a V2X system. In some examples, vehicles in a V2X system may communicate with roadside infrastructure, such as roadside units, or with the network via one or more network nodes (e.g., base stations <NUM>) using vehicle-to-network (V2N) communications, or with both.

The core network <NUM> may be an evolved packet core (EPC) or <NUM> core (5GC), which may include at least one control plane entity that manages access and mobility (e.g., a mobility management entity (MME), an access and mobility management function (AMF)) and at least one user plane entity that routes packets or interconnects to external networks (e.g., a serving gateway (S-GW), a Packet Data Network (PDN) gateway (P-GW), or a user plane function (UPF)). The control plane entity may manage non-access stratum (NAS) functions such as mobility, authentication, and bearer management for the UEs <NUM> served by the base stations <NUM> associated with the core network <NUM>. User IP packets may be transferred through the user plane entity, which may provide IP address allocation as well as other functions. The user plane entity may be connected to the network operators IP services <NUM>. The operators IP services <NUM> may include access to the Internet, Intranet(s), an IP Multimedia Subsystem (IMS), or a Packet-Switched Streaming Service.

The wireless communications system <NUM> may operate using one or more frequency bands, typically in the range of <NUM> megahertz (MHz) to <NUM> gigahertz (GHz). Generally, the region from <NUM> to <NUM> is known as the ultra-high frequency (UHF) region or decimeter band because the wavelengths range from approximately one decimeter to one meter in length. The UHF waves may be blocked or redirected by buildings and environmental features, but the waves may penetrate structures sufficiently for a macro cell to provide service to the UEs <NUM> located indoors. The transmission of UHF waves may be associated with smaller antennas and shorter ranges (e.g., less than <NUM> kilometers) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below <NUM>.

A base station <NUM> or a UE <NUM> may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming. The antennas of a base station <NUM> or a UE <NUM> may be located within one or more antenna arrays or antenna panels, which may support MIMO operations or transmit or receive beamforming. In some examples, antennas or antenna arrays associated with a base station <NUM> may be located in diverse geographic locations. Additionally or alternatively, an antenna panel may support radio frequency beamforming for a signal transmitted via an antenna port.

The wireless communications system <NUM> may be a packet-based network that operates according to a layered protocol stack. An RLC layer may perform packet segmentation and reassembly to communicate over logical channels. The MAC layer may also use error detection techniques, error correction techniques, or both to support retransmissions at the MAC layer to improve link efficiency. In the control plane, the Radio Resource Control (RRC) protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE <NUM> and a base station <NUM> or a core network <NUM> supporting radio bearers for user plane data. At the physical layer, transport channels may be mapped to physical channels.

The UEs <NUM> and the base stations <NUM> may support retransmissions of data to increase the likelihood that data is received successfully. HARQ feedback is one technique for increasing the likelihood that data is received correctly over a communication link <NUM>. HARQ may improve throughput at the MAC layer in poor radio conditions (e.g., low signal-to-noise conditions). In some examples, a device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot.

Some wireless communications systems <NUM> may support broadcasting packets to a plurality of UEs <NUM>. The packets may be broadcast by a network node, which may be an example of a base station <NUM>, UE <NUM>, or the like. The transmitter may broadcast multiple packets to multiple receivers (e.g., UEs <NUM>). The broadcasting may be repeated blindly without the transmitter knowing whether packets have been received or decoded by the receivers. That is, if the wireless communications system <NUM> does not utilize feedback associated with the packets, the transmitter may continue to transmit packets blindly without any indication of packets that have actually been decoded by the UEs <NUM>. Thus, the transmitter may rebroadcast packets in a wasteful manner, since some packets may have been decoded by all UEs <NUM>. Thus, the lack of feedback may result in waste, unnecessary duplication of packets, and low efficiency.

Techniques described herein support a packet broadcasting design that uses feedback received from the UEs <NUM>. The transmitter (e.g., base station <NUM>) may identify a set of packets for broadcasting to a plurality of UEs <NUM> and transmit a set of network encoded packets based on the set of packets. The UEs <NUM> may each rebroadcast successfully received network encoded packets via sidelink communications. When each UE <NUM> has received a first round of network encoded packets from both the transmitter as well as from other UEs <NUM>, each UE <NUM> may report to the original transmitter via feedback. The feedback may indicate successfully received network encoded packets at each UE <NUM>. In some examples, the UEs <NUM> may decode the packets concurrent with transmitting the feedback.

Each of the receiving UEs <NUM> may provide feedback associated with receiving the broadcasted network encoded packets. For example, feedback received from a particular UE <NUM> may indicate a subset of successfully received packets of the set of network encoded packets. The transmitter may generate an updated set of network encoded packets based on the feedback received from one or more of the UEs <NUM>. The updated set of network encoded packets may be determined based on the set of network encoded packets minus the successfully received packets included in each of the subsets (e.g., an intersection of the subsets). In some examples, the updated set of network encoded packets may further be determined based on the set of network encoded packets minus the successfully received packets included in any of the subsets (e.g., a union of the subsets). The transmitter may continue to update and transmit the updated set of network encoded packets based on feedback until the transmitter determines that each UE <NUM> of the UEs <NUM> has recovered the set of packets. In some examples, the transmitter may decode the successfully received packets included in each of the subsets indicated in the feedback to determine that each UE <NUM> of the UEs <NUM> has recovered the set of packets.

Using this technique, the transmitter may reduce waste and duplication of packets by retransmitting packets that have not been decoded by the UEs <NUM>. This may result in increased efficiencies in the wireless communications system <NUM>, and more particularly, a broadcasting system.

Different types of feedback may support these techniques. For example, the transmitter (e.g., base station <NUM>) may use HARQ messages received from the UEs <NUM> to update the sets of packets. The HARQ message may indicate an acknowledgement (ACK) or negative-acknowledgement (NACK) for one or more packets. Thus, based on the ACKs and NAKs, the transmitter may determine which packets were successfully received by which UEs <NUM>. In some examples, the feedback is received via one or more PDCP status reports, one or more RLC status reports, or the like. Further to support these techniques, the transmitter may configure the UEs <NUM> with network coding parameters, which the UEs <NUM> may use to decode the packets. The transmitter may update the various encoding metrics during the broadcasting to increase the likelihood that the UEs <NUM> are able to decode the packets. For example, the transmitter may receive a channel state information (CSI) report based on receiving a NACK for one or more packets and update the modulation and coding scheme or encoding rate based on the CSI report.

<FIG> illustrates an example of a wireless communications system <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. In some examples, the wireless communications system <NUM> may implement aspects of the wireless communications system <NUM>. For example, the wireless communications system <NUM> may include a network entity <NUM> and UEs <NUM>, which may be examples of the corresponding devices described with reference to <FIG>. The wireless communications system <NUM> may illustrate an example of a packet broadcasting system. The network entity <NUM> may be an example of a base station <NUM> described with reference to <FIG>, a network node, a transmitter, or the like. The wireless communications system <NUM> may include features for improved packet transmission operations, among other benefits.

The UEs <NUM> may transmit and receive communications as scheduled by the network entity <NUM>. For example, the UEs <NUM> may communicate with the network entity via direct links <NUM> (e.g., communication links <NUM> described with reference to <FIG>). Additionally or alternatively, the UEs <NUM> may communicate directly with one another via sidelink connections <NUM> without transmitting through the network entity <NUM>. The sidelink connections <NUM> may illustrate examples of D2D communication, V2X communication, or another example of sidelink communication in the wireless communications system <NUM>.

In some cases, the wireless communications system <NUM> may support broadcasting packets by the network entity <NUM> to the UEs <NUM> via the direct links <NUM>. The network entity <NUM> may repeat the broadcasting blindly without knowing whether the packets were received or decoded by the UEs <NUM>. That is, if the wireless communications system <NUM> does not utilize feedback associated with the packets, the network entity <NUM> may continue to transmit packets blindly without any indication of packets that have actually been received or decoded by the UEs <NUM>. Thus, the network entity <NUM> may rebroadcast packets in a wasteful manner, since some packets may have been received or decoded by all UEs <NUM>. Thus, the lack of feedback may result in waste, unnecessary duplication of packets, and low efficiency.

Techniques described herein support a packet broadcasting design that uses feedback received from the UEs <NUM>. The network entity <NUM> may identify a set of packets for broadcasting to the UEs <NUM> and transmit a set of network encoded packets based on the set of packets via the direct links <NUM>. The UEs <NUM> may each rebroadcast successfully received network encoded packets via the sidelink connections <NUM>. When each UE <NUM> has received a first round of network encoded packets from both the network entity <NUM> as well as from other UEs <NUM>, each UE <NUM> may report to the network entity <NUM> via feedback on a direct link <NUM>. The feedback may indicate successfully received network encoded packets at each UE <NUM>. In some examples, the UEs <NUM> may decode the packets concurrent with transmitting the feedback.

Each of the receiving UEs <NUM> may provide feedback associated with receiving the broadcasted network encoded packets. For example, feedback received from a particular UE <NUM> may indicate a subset of successfully received network encoded packets of the set of network encoded packets. The network entity <NUM> may generate an updated set of network encoded packets based on the feedback received from one or more of the UEs <NUM>. The updated set of network encoded packets may be determined based on the set of network encoded packets minus the successfully received network encoded packets included in each of the subsets (e.g., an intersection of the subsets). In some examples, the updated set of network encoded packets may further be determined based on the set of network encoded packets minus the successfully received packets included in any of the subsets (e.g., a union of the subsets). The network entity <NUM> may continue to update and transmit the updated set of network encoded packets based on feedback until the network entity <NUM> determines that each UE <NUM> of the UEs <NUM> has recovered the set of packets. In some examples, the transmitter may decode the successfully received packets included in each of the subsets indicated in the feedback to determine that each UE <NUM> of the UEs <NUM> has recovered the set of packets.

Using the techniques described herein, the network entity <NUM> may reduce waste and duplication of packets by retransmitting packets that have not been received by the UEs <NUM>. This may result in increased efficiencies in the wireless communications system <NUM>.

<FIG> illustrates an example of a wireless communications system <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. In some examples, the wireless communications system <NUM> may implement aspects of wireless communication systems <NUM> and <NUM>. For example, the wireless communications system <NUM> may include a network entity <NUM> and UEs <NUM>, which may be examples of the corresponding devices described with reference to <FIG> and <FIG>. The wireless communications system <NUM> may illustrate an example of a packet broadcasting system. The wireless communications system <NUM> may include features for improved packet transmission operations, among other benefits.

The network entity <NUM> may configure the UEs <NUM> with network coding parameters, such as an encoding matrix, encoding/decoding function, etc. These parameters may be used by the UEs <NUM> to decode the packets. For example, a row of the encoding matrix may indicate an ordering or grouping of network encoded packets that are transmitted to the UEs <NUM>. The network coding parameters may be signaling using medium access control-control element (MAC-CE) signaling, downlink control information (DCI), or RRC signaling. In some cases, multiple sets of network coding parameters may be signaled.

The network entity <NUM> may identify a set of packets for transmission to the UEs <NUM>. In one example, the network entity <NUM> identifies the set of packets from a packet pool, which may be a set of packets scheduled for broadcasting. In some examples, the broadcasting may support a content streaming service and the packets may correspond to the streamed content. From the set of packets, the network entity <NUM> may encode (e.g., using LT coding) and transmit a set of network encoded packets <NUM>-a to the UEs <NUM> in a broadcast manner. Each of the UEs <NUM> may receive one or more network encoded packets of the set of network encoded packets <NUM>-a. The UEs <NUM> may each rebroadcast successfully received network encoded packets <NUM>-a via sidelink connections <NUM>.

When each UE <NUM> has received a first round of network encoded packets <NUM>-a from both the network entity <NUM> as well as from other UEs <NUM>, each UE <NUM> may report to the network entity <NUM> via feedback <NUM>. The feedback <NUM> may indicate a subset of the set of network encoded packets <NUM>-a that each UE <NUM> was able to successfully receive, either directly from the network entity <NUM> or via the sidelink connections <NUM>. For example, the UE <NUM>-a may transmit feedback <NUM>-a that indicates a first subset of the set of packets <NUM>-a that the UE <NUM>-a was able to successfully receive, while the UE <NUM>-b transmits feedback <NUM>-b that indicates a second subset of the set of packets that the UE <NUM>-b was able to successfully receive, and the UE <NUM>-c transmits feedback <NUM>-c that indicates a second subset of the set of packets that the UE <NUM>-c was able to successfully receive.

Based on the received feedback <NUM>, the network entity <NUM> may generate an updated set of network encoded packets <NUM>-b. The updated set of network encoded packets <NUM>-b may be determined based on the set of network encoded packets <NUM>-a minus the successfully received packets included in each of the subsets (e.g., an intersection of the subsets). In some examples, the updated set of network encoded packets <NUM>-b may further be determined based on the set of network encoded packets <NUM>-a minus the successfully received packets included in any of the subsets (e.g., a union of the subsets). The updated set of network encoded packets <NUM>-b is transmitted to the UEs <NUM> and the network entity <NUM> may continue to update and transmit updated sets of network encoded packets <NUM> based on feedback <NUM> until the network entity <NUM> determines that each UE <NUM> of the UEs <NUM> has recovered the set of packets. In some examples, the network entity <NUM> may decode the successfully received packets included in each of the subsets indicated in the feedback <NUM> to determine that each UE <NUM> of the UEs <NUM> has recovered the set of packets.

As noted herein, the feedback <NUM> may be an example of one or more HARQ messages. In other cases, the feedback <NUM> may be an example of a PDCP status report or RLC status report. Based on the reports or HARQ messages, the network entity <NUM> may infer the packet receiving/recovery results. In some examples, the UEs <NUM> may transmit the feedback <NUM> in the network coding sub-layer, and such feedback <NUM> may directly indicate the receiving success/failure corresponding to each packet. In some cases, one or more of the UEs <NUM> may transmit a CSI report to facilitate MCS selection or rate control. Thus, based on received feedback <NUM> and a CSI report, the network entity <NUM> may adjust the MCS or encoding rate to increase likelihood of successful decoding by the UEs <NUM>. In some examples, the CSI report is transmitted when a NACK is transmitted in order to request the updated MCS or data encoding rate for better data reception.

As noted herein, one or more sets of network coding parameters may be configured at the UEs <NUM>. If one set of parameters is configured at one or more of the UEs <NUM> and the network entity <NUM> determines that the transmission is underperforming (e.g., that the feedback <NUM> indicates that a relatively high number of packets are going undecoded), then the network entity <NUM> may transmit a new set of network coding parameters to the UEs <NUM> (e.g., via MAC-CE or DCI). In other cases, the UEs <NUM> may request an updated set of network coding parameters (e.g., via MAC-CE or uplink control information (UCI)). In either case, after the updated set of parameters is transmitted, subsequent sets of packets may be encoded and transmitted according to the updated set of parameters. If multiple sets of network coding parameters are synchronized between the network entity <NUM> and the UEs <NUM>, then the network entity <NUM> may transmit an instruction to switch between sets of parameters (e.g., based on underperformance or based on a request from a UE <NUM> received via MAC-CE or UCI) via MAC-CE or DCI.

In some examples, the network entity <NUM> may encode the network encoded packets <NUM> using an LT coding process. In the LT coding process, the network entity <NUM> may map source symbols of the set of packets to a set of encoding symbols. The LT coding process may employ a degree distribution Ω, where the degree distribution Ω represents a probability mass function of a set of degrees di (e.g., d<NUM>, d<NUM>, d<NUM>, etc.). The probability of randomly selecting a degree di (i.e., a degree with index i) from the degree distribution may be represented by ρ(i). In the LT coding process, the degree di of an ith encoding symbol may represent the quantity of source symbols which the network entity <NUM> may combine into the ith encoding symbol. For example, if the selected degree for a first encoding symbol is d<NUM> = <NUM>, two source symbols may be randomly selected and combined into the first encoding symbol. Similarly, if the selected degree for a second encoding symbol is d<NUM> = <NUM>, a single source symbol may be combined into the second encoding symbol. In some examples, the source symbols may be combined into encoding symbols using a logic operation such as a logic exclusive OR (XOR) operation. In some examples, each encoding symbol may include information identifying the source symbols used to construct the encoding symbol. For example, the encoding symbol may include indices (e.g., s<NUM>, s<NUM>, s<NUM>, sK, etc.) associated with the source symbols used to construct the encoding symbol. The encoding symbols may be transmitted as the set of network encoded packets <NUM>-a from the network entity <NUM> to the UEs <NUM>. In some examples, the LT coding process may be represented by a generator matrix.

In some examples, one or more encoded packets may be lost based on the transmission environment. A UE <NUM> may receive a subset of the set of network encoded packets <NUM>-a (e.g., a quantity N of encoded packets). The UE <NUM> may decode the received encoding symbols to obtain the source symbols. The UE <NUM> may begin a decoding process by identifying an encoding symbol with an index tj that is connected to a single source symbol with an index si. The UE <NUM> may determine the encoding symbol with index tj is equivalent to the source symbol with index si. The UE <NUM> may then apply an XOR operation to each other encoding symbol connected to the source symbol with index si, and remove all edges connected to the source symbol with index si. The UE <NUM> may repeat this process until each source symbol is determined from the received encoding symbols.

In some examples, the decoding process may fail if there is no encoding symbol connected to a single source symbol. Accordingly, the degree distribution Ω of the encoding symbols received at the UE <NUM> may have a direct impact on the probability of successfully decoding source symbols transmitted in encoding symbols. For example, in a first degree distribution (which may in some examples be referred to as an ideal soliton distribution), the probability ρ(i) of selecting a degree di (where di is an integer from <NUM> to K) may be defined by: <MAT> The first degree distribution may have a mode (e.g., a high probability) at di = <NUM>.

Alternatively, in a second degree distribution (which in some examples may be referred to as a robust soliton distribution), the probability of selecting the degree di may be represented by µ(i) rather than ρ(i) of the ideal soliton distribution. The probability µ(i) may be defined by: <MAT> where τ(i) is a parameter defined in terms of constants c and <MAT>, as well as a decoding error probability δ. The parameter τ(i) may be defined for various values of i as: <MAT> The robust soliton distribution may have a greater probability that a random di = <NUM> than the ideal soliton distribution, which may reduce the probability of the decoding process failing by increasing the probability that an encoding symbol is connected to a single source symbol.

The encoding scheme described herein may enable the network entity <NUM> to improve efficiency and reliability of communications with the UEs <NUM> by increasing the probability of successfully decoding source symbols transmitted in encoding symbols.

<FIG> illustrates an example of a process flow <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. In some examples, the process flow <NUM> may implement aspects of wireless communications systems <NUM>, <NUM>, and <NUM>. For example, the process flow <NUM> may include example operations associated with one or more of a transmitter <NUM> or a set of receivers <NUM>, which may be examples of a base station and UEs, respectively, described with reference to <FIG>. The receivers <NUM> may be receivers <NUM> of a group of receivers <NUM> that includes m receivers <NUM>. In the following description of the process flow <NUM>, the operations between the transmitter <NUM> and the receivers <NUM> may be performed in a different order than the example order shown, or the operations performed by the transmitter <NUM> and the receivers <NUM> may be performed in different orders or at different times. Some operations may also be omitted from the process flow <NUM>, and other operations may be added to the process flow <NUM>. The operations performed by the transmitter <NUM> and the receivers <NUM> may support improvement to the transmitter <NUM> packet transmission operations and, in some examples, may promote improvements to efficiency and reliability for communications between the transmitter <NUM> and the receivers <NUM>, among other benefits.

At <NUM>, the transmitter <NUM> may construct a packet pool S = {p1, p2,. The set of network encoded packets may be encoded using a network encoding function q = f(S) = {q1, q2,. , qk} and the set of network encoded packets q may be transmitted to the receivers <NUM> (e.g., receivers <NUM>-a, <NUM>-b and <NUM>-c). In some example, the set of network encoded packets q may be encoded using an LT code.

At <NUM>, each receiver <NUM> may broadcast successfully received encoded packets via sidelink connections with the group of receivers <NUM>. For example, the receiver <NUM>-a may successfully receive network encoded packets q1 and q2 of the set q and broadcast q1 and q2 to the other receivers <NUM>. Similarly, the receiver <NUM>-b may successfully receive network encoded packets q2 and q3 and broadcast q2 and q3 to the other receivers <NUM>. Likewise, the receiver <NUM>-c may successfully receive network encoded packets q2 and q5 and may broadcast q2 and q5 to the other receivers <NUM>.

At <NUM>, each receiver <NUM> may gather network encoded packets received from the direct link and the sidelink connections and send feedback to the transmitter <NUM>. For example, the receiver <NUM>-a may receive the broadcast from the receiver <NUM>-b and may thus have received a first subset of network encoded packets {q1, q<NUM>, q<NUM>}. The receiver <NUM>-a may transmit feedback to the transmitter <NUM> indicating that the receiver <NUM>-a has received the first subset. Similarly, the receiver <NUM>-b may receive the broadcast from receiver <NUM>-c and may thus have received a second subset of network encoded packets {q<NUM>, q<NUM>, q<NUM>}. The receiver <NUM>-b may transmit feedback to the transmitter <NUM> indicating that the receiver <NUM>-b has received the second subset. Likewise, the receiver <NUM>-c may receive the broadcast from receiver <NUM>-a and may thus have received a third subset of network encoded packets {q1, q2, q5}. Receiver <NUM>-c may transmit feedback to transmitter <NUM> indicating that receiver <NUM>-c has received the third subset.

At <NUM>, transmitter <NUM> may calculate a set of received network encoded packets M. In one example, M may represent the union of the subsets of received network encoded packets identified in the feedback; that is, M = {q1, q2, q2} ∪{q2,q3,q5} U{q1, q2, q5} = {q1, q2, q3, q5}. Alternatively, M may represent the intersection of the subsets of received network encoded packets identified in the feedback; that is, M = {q1, q2, q3} ∩{q2,q3,q5} ∩{q1,q2,q5} = {q2}. In some examples, the transmitter <NUM> may additionally calculate the respective subset of received network encoded packets Mi for each receiver <NUM> (e.g., the first, second, and third subsets) and decode the subsets Mi using the same decoding algorithm as the receivers <NUM> to infer which packets of the set of packets were recovered at each receiver <NUM>.

At <NUM>, transmitter <NUM> may generate newly encoded packets using the packet pool S and transmit network encoded packets that do not contain M. For instance, the transmitter <NUM> may determine a set of network encoded packets according to f(S). The transmitter <NUM> may determine the newly encoded packets according to f(S) - M. If M is the union of the subsets of received network encoded packets identified in the feedback at <NUM>, the set of encoded packets transmitted to the receivers <NUM> may be {q1, q2,. , qk} - {q<NUM>, q<NUM>, q<NUM>, q<NUM>} = {q4,. Alternatively, if M is the intersection of the subsets of received network encoded packets identified in the feedback at <NUM>, the updated set of network encoded packets transmitted to the receivers <NUM> may be {q1, q2,. , qk} - {q<NUM>} = {q1, q3,.

At <NUM>, the transmitter <NUM> and the receivers <NUM> may continue to perform the operations described at <NUM> through <NUM> until the transmitter <NUM> infers all packets of the packet pool S have been successfully recovered by all receivers <NUM>.

<FIG> illustrates an example of a process flow <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. In some examples, the process flow <NUM> may implement aspects of wireless communications systems <NUM>, <NUM>, and <NUM>. For example, the process flow <NUM> may include example operations associated with one or more of a network entity <NUM> or a set of one or more UEs <NUM>, which may be examples of the corresponding devices described with reference to <FIG>. In the following description of the process flow <NUM>, the operations between the network entity <NUM> and the UEs <NUM> may be performed in a different order than the example order shown, or the operations performed by the network entity <NUM> and the UEs <NUM> may be performed in different orders or at different times. Some operations may also be omitted from the process flow <NUM>, and other operations may be added to the process flow <NUM>. The operations performed by the network entity <NUM> and the UEs <NUM> may support improvement to the network entity <NUM> packet transmission operations and, in some examples, may promote improvements to efficiency and reliability for communications between the network entity <NUM> and the UEs <NUM>, among other benefits.

At <NUM>, the network entity <NUM> may identify a set of one or more packets for transmission to the UEs <NUM>. In one example, the network entity <NUM> identifies the set of one or more packets from a packet pool, which may be a set of one or more packets scheduled for broadcasting. In some examples, the broadcasting may support a content streaming service and the packets may correspond to the streamed content. From the set of one or more packets, the network entity <NUM> may encode (e.g., using LT coding) a set of one or more network encoded packets.

At <NUM>, the network entity <NUM> may broadcast the set of one or more network encoded packets to the UEs <NUM>. Each of the UEs <NUM> may receive one or more network encoded packets of the set of one or more network encoded packets. For example, some network encoded packets may be lost based on a transmission environment. At <NUM>, each UE <NUM> may broadcast successfully received encoded packets via sidelink connections with the group of UEs <NUM>.

At <NUM>, each UE <NUM> may gather network encoded packets received from the direct link and the sidelink connections to determine a respective subset of one or more successfully received network encoded packets. At <NUM>, the UEs <NUM> may each transmit feedback to the network entity <NUM> indicating the respective subset of one or more successfully received network encoded packets. As noted herein, the feedback may be an example of one or more HARQ messages. In other cases, the feedback may be an example of a PDCP status report or RLC status report. In some examples, the UEs <NUM> may transmit the feedback in the network coding sub-layer, and such feedback may directly indicate the receiving success/failure corresponding to each packet. In some cases, one or more of the UEs <NUM> may transmit a CSI report to facilitate MCS selection or rate control. In some examples, the CSI report is transmitted when a NACK is transmitted in order to request the updated MCS or data encoding rate for better data reception.

In some examples, the UEs <NUM> may decode the one or more successfully received network encoded packets concurrent with transmitting the feedback. As noted herein, one or more sets of network coding parameters may be configured at the UEs <NUM> (e.g., via MAC-CE or DCI). In some cases, one or more UEs <NUM> may request (e.g., along with transmitting the feedback) an updated set of one or more network coding parameters (e.g., via MAC-CE or UCI).

At <NUM>, the network entity <NUM> may determine a subset of one or more successfully received network encoded packets based on the feedback. In one example, the subset may represent one or more successfully received packets included in each of the subsets (e.g., an intersection of the subsets). In another example, the subset may represent one or more successfully received packets included in any of the subsets (e.g., a union of the subsets). In some examples, the network entity <NUM> may additionally calculate the respective subset of received network encoded packets for each UE <NUM> and decode the subsets using the same decoding algorithm as the UEs <NUM> to infer which packets of the set of one or more packets were recovered at each UE <NUM>. At <NUM>, the network entity <NUM> may generate newly encoded packets, for example using the packet pool.

At <NUM>, the network entity may transmit an updated set of one or more network encoded packets based on generating the newly encoded packets. The updated set of one or more network encoded packets may not contain the subset of one or more successfully received network encoded packets determined based on the feedback (e.g., the union or the intersection of the subsets indicated in the feedback).

At <NUM>, the network entity <NUM> and the UEs <NUM> may continue to perform the operations described at <NUM> through <NUM> until the network entity <NUM> infers all packets of the packet pool have been successfully recovered by all receiver UEs <NUM> (e.g., based on decoding the one or more successfully received network encoded packets indicated in the feedback). The operations performed by the network entity <NUM> and the UEs <NUM> may support improvements to the network entity <NUM> packet transmission operations and, in some examples, may promote improvements to efficiency and reliability for communications between the network entity <NUM> and the UEs <NUM>, among other benefits.

<FIG> shows a block diagram <NUM> of a device <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The device <NUM> may be an example of aspects of a base station <NUM> as described herein. The device <NUM> may include a receiver <NUM>, a communications manager <NUM>, and a transmitter <NUM>. The device <NUM> may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses).

The receiver <NUM> may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to broadcasting packets using network coding via sidelink with feedback, etc.). Information may be passed on to other components of the device <NUM>. The receiver <NUM> may be an example of aspects of the transceiver <NUM> described with reference to <FIG>. The receiver <NUM> may utilize a single antenna or a set of one or more antennas.

The communications manager <NUM> may transmit, to a plurality of UEs, a set of one or more network encoded packets representing a set of one or more packets identified for broadcast to the plurality of UEs, receive feedback from each of one or more of the plurality of UEs, the feedback indicating, as respective subsets of the set of one or more network encoded packets, one or more successfully received network encoded packets of the set of one or more network encoded packets at each of the one or more UEs, determine, based on the feedback indicative of the one or more successfully received network encoded packets, a subset of the set of one or more network encoded packets that was successfully received for each of the one or more of the plurality of UEs providing the feedback, generate, based on the feedback, an updated set of one or more network encoded packets based on the set of one or more packets, where the updated set of one or more network encoded packets excludes the subset of the set of one or more network encoded packets that was successfully received, and transmit the updated set of one or more network encoded packets to the plurality of UEs.

The communications manager <NUM> as described herein may be implemented to realize one or more potential advantages. One implementation may allow the device <NUM> to save power by communicating with UEs <NUM> (as shown in <FIG>) more efficiently. For example, the device <NUM> may improve reliability in communications with UEs <NUM>, as the device <NUM> may be able to determine, based on receiving feedback, which broadcast packets were successfully received at the UEs <NUM>. Using the techniques described herein, the device <NUM> may reduce waste and duplication of packets by retransmitting packets that have not been received by the UEs <NUM>. The communications manager <NUM> may be an example of aspects of the communications manager <NUM> described herein.

If implemented in code executed by a processor, the functions of the communications manager <NUM>, or its sub-components may be executed by a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described in the present disclosure.

The transmitter <NUM> may utilize a single antenna or a set of one or more antennas.

By including or configuring the communications manager <NUM> in accordance with examples as described herein, the device <NUM> (e.g., a processor controlling or otherwise coupled to the receiver <NUM>, the transmitter <NUM>, the communications manager <NUM>, or a combination thereof) may support techniques for reduced processing, reduced power consumption, and more efficient utilization of communication resources.

<FIG> shows a block diagram <NUM> of a device <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The device <NUM> may be an example of aspects of a device <NUM>, or a base station <NUM> as described herein. The device <NUM> may include a receiver <NUM>, a communications manager <NUM>, and a transmitter <NUM>. The device <NUM> may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses).

The communications manager <NUM> may be an example of aspects of the communications manager <NUM> as described herein. The communications manager <NUM> may include a packet transmission manager <NUM>, a feedback manager <NUM>, a received packet identifier <NUM>, and a packet encoding manager <NUM>. The communications manager <NUM> may be an example of aspects of the communications manager <NUM> described herein.

The packet transmission manager <NUM> may transmit, to a plurality of UEs, a set of one or more network encoded packets representing a set of one or more packets identified for broadcast to the plurality of UEs.

The feedback manager <NUM> may receive feedback from each of one or more of the plurality of UEs, the feedback indicating, as respective subsets of the set of one or more network encoded packets, one or more successfully received network encoded packets of the set of one or more network encoded packets at each of the one or more UEs.

The received packet identifier <NUM> may determine, based on the feedback indicative of the one or more successfully received network encoded packets, a subset of the set of one or more network encoded packets that was successfully received for each of the one or more of the plurality of UEs providing the feedback.

The packet encoding manager <NUM> may generate, based on the feedback, an updated set of one or more network encoded packets based on the set of one or more packets, where the updated set of one or more network encoded packets excludes the subset of the set of one or more network encoded packets that was successfully received.

The packet transmission manager <NUM> may transmit the updated set of one or more network encoded packets to the plurality of UEs.

<FIG> shows a block diagram <NUM> of a communications manager <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The communications manager <NUM> may be an example of aspects of a communications manager <NUM>, a communications manager <NUM>, or a communications manager <NUM> described herein. The communications manager <NUM> may include a packet transmission manager <NUM>, a feedback manager <NUM>, a received packet identifier <NUM>, a packet encoding manager <NUM>, a decoder <NUM>, and a coding parameter manager <NUM>. Each of these modules may communicate, directly or indirectly, with one another (e.g., via one or more buses).

In some examples, the packet transmission manager <NUM> may transmit the updated set of one or more network encoded packets to the plurality of UEs.

In some examples, the packet transmission manager <NUM> may identify the set of one or more packets from a packet pool scheduled for broadcast to the plurality of UEs.

In some examples, the packet transmission manager <NUM> may identify one or more additional packets for broadcast to the plurality of UEs based on the one or more additional packets being added to the packet pool.

In some examples, the feedback manager <NUM> may receive the feedback via a packet data convergence protocol (PDCP) status report, an RLC status report, or a HARQ message.

In some examples, the feedback manager <NUM> may receive the feedback in a network coding sub-layer, where the feedback indicates a decoding status of each packet of the set of one or more packets.

In some examples, the feedback manager <NUM> may receive a channel state information message in conjunction with the feedback.

In some examples, the feedback manager <NUM> may receive the channel state information message based on the feedback indicating a negative acknowledgement for one or more of the set of one or more network encoded packets.

In some examples, the received packet identifier <NUM> may determine an intersection of each of the subsets indicated in the feedback to identify the one or more successfully received packets included in each of the subsets.

In some examples, the received packet identifier <NUM> may determine, based on the feedback indicative of the one or more successfully received network encoded packets, a second subset of the set of one or more network encoded packets that was successfully received at any of the one or more of the plurality of UEs providing the feedback, where the updated set of one or more network encoded packets further excludes the second subset of the set of one or more network encoded packets.

In some examples, the received packet identifier <NUM> may determine a union of each of the subsets indicated in the feedback to identify the one or more successfully received packets included in each of the subsets.

In some examples, the packet encoding manager <NUM> may continue to update and transmit the updated set of one or more network encoded packets based on additional feedback received from the one or more of the plurality of UEs until the network node determines that each UE of the plurality of UEs has recovered the set of one or more packets.

In some examples, the packet encoding manager <NUM> may determine one or more encoding metrics for transmission of the updated set of one or more packets based on the channel state information message.

In some examples, the packet encoding manager <NUM> may determine a modulation and coding scheme, an encoding rate, or both.

In some examples, the packet encoding manager <NUM> may encode the set of one or more network encoded packets according to a Luby transform (LT) code, where each network encoded packet of the set of one or more network encoded packets is constructed from one or more packets of the set of one or more packets identified for broadcast to the plurality of UEs according to a distribution.

In some cases, the distribution includes an ideal soliton distribution, a robust soliton distribution, or any combination thereof.

The decoder <NUM> may decode the one or more successfully received packets included in each of the subsets indicated in the feedback and the additional feedback, where the network node determines that each UE of the plurality of UEs has recovered the set of one or more packets based on the decoding.

The coding parameter manager <NUM> may transmit, to one or more of the plurality of UEs, an indication of one or more network coding parameters, where at least the updated set of one or more network encoded packets are transmitted to the plurality of UEs in accordance with the one or more network coding parameters.

In some examples, the coding parameter manager <NUM> may transmit an indication of a network coding algorithm, a network encoding function, a network encoding matrix, a number of decoding iterations, or any combination thereof.

In some examples, the coding parameter manager <NUM> may transmit the one or more network coding parameters using medium access control-control element (MAC-CE) signaling, downlink control information signaling, radio resource control signaling, or any combination thereof.

In some examples, the coding parameter manager <NUM> may transmit an indication to switch from one or more prior network coding parameters to the one or more network coding parameters.

In some examples, the coding parameter manager <NUM> may receive, from the one or more of the plurality of UEs, a request for the one or more network coding parameters, where the indication of the one or more network coding parameters is transmitted based on receiving the request.

In some examples, the coding parameter manager <NUM> may receive, the request using medium access control-control element (MAC-CE) signaling or uplink control information signaling.

<FIG> shows a diagram of a system <NUM> including a device <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The device <NUM> may be an example of or include the components of device <NUM>, device <NUM>, or a base station <NUM> as described herein. The device <NUM> may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including a communications manager <NUM>, a network communications manager <NUM>, a transceiver <NUM>, an antenna <NUM>, memory <NUM>, a processor <NUM>, and an inter-station communications manager <NUM>. These components may be in electronic communication via one or more buses (e.g., bus <NUM>).

The memory <NUM> may include random-access memory (RAM), read-only memory (ROM), or a combination thereof.

The processor <NUM> may include an intelligent hardware device (e.g., a general-purpose processor, a DSP, a central processing unit (CPU), a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof). In some cases, the processor <NUM> may be configured to operate a memory array using a memory controller. In some cases, a memory controller may be integrated into processor <NUM>. The processor <NUM> may be configured to execute computer-readable instructions stored in a memory (e.g., the memory <NUM>) to cause the device <NUM> to perform various functions (e.g., functions or tasks supporting broadcasting packets using network coding via sidelink with feedback).

The processor <NUM> of the device <NUM> (e.g., controlling the receiver <NUM>, the transmitter <NUM>, or the transceiver <NUM>) may reduce power consumption and increase packet transmission reliability according to the techniques described herein. In some examples, the processor <NUM> of the device <NUM> may reconfigure packet transmission operations based on the received feedback. For example, the processor <NUM> of the device <NUM> may turn on one or more processing units for configuring the packet transmissions, increase a processing clock, or a similar mechanism within the device <NUM>. As such, when subsequent feedback is received, the processor <NUM> may be ready to respond more efficiently through the reduction of a ramp up in processing power. The improvements in power saving and packet transmission reliability may further increase power efficiency at the device <NUM> (for example, by eliminating unnecessary repeated packet transmissions, etc.).

By including or configuring the communications manager <NUM> in accordance with examples as described herein, the device <NUM> may support techniques for improved communication reliability, reduced latency, improved user experience related to reduced processing, reduced power consumption, more efficient utilization of communication resources, improved coordination between devices, longer battery life, and improved utilization of processing capability.

<FIG> shows a flowchart illustrating a method <NUM> that supports broadcasting packets using network coding via sidelink with feedback in accordance with aspects of the present disclosure. The operations of method <NUM> may be implemented by a base station <NUM> or its components as described herein. For example, the operations of method <NUM> may be performed by a communications manager as described with reference to <FIG>. In some examples, a base station may execute a set of one or more instructions to control the functional elements of the base station to perform the functions described below. Additionally or alternatively, a base station may perform aspects of the functions described below using special-purpose hardware.

At <NUM>, the base station may transmit, to a plurality of UEs, a set of one or more network encoded packets representing a set of one or more packets identified for broadcast to the plurality of UEs. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a packet transmission manager as described with reference to <FIG>.

At <NUM>, the base station may receive feedback from each of one or more of the plurality of UEs, the feedback indicating, as respective subsets of the set of one or more network encoded packets, one or more successfully received network encoded packets of the set of one or more network encoded packets at each of the one or more UEs. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a feedback manager as described with reference to <FIG>.

At <NUM>, the base station may determine, based on the feedback indicative of the one or more successfully received network encoded packets, a subset of the set of one or more network encoded packets that was successfully received for each of the one or more of the plurality of UEs providing the feedback. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a received packet identifier as described with reference to <FIG>.

At <NUM>, the base station may generate, based on the feedback, an updated set of one or more network encoded packets based on the set of one or more packets, where the updated set of one or more network encoded packets excludes the subset of the set of one or more network encoded packets that was successfully received. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a packet encoding manager as described with reference to <FIG>.

At <NUM>, the base station may transmit the updated set of one or more network encoded packets to the plurality of UEs. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a packet transmission manager as described with reference to <FIG>.

At <NUM>, the base station may decode the one or more successfully received packets included in each of the subsets indicated in the feedback and the additional feedback. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a decoder as described with reference to <FIG>.

At <NUM>, the base station may continue to update and transmit the updated set of one or more network encoded packets based on additional feedback received from the one or more of the plurality of UEs until the network node determines that each UE of the plurality of UEs has recovered the set of one or more packets based on the decoding. The operations of <NUM> may be performed according to the methods described herein. In some examples, aspects of the operations of <NUM> may be performed by a packet encoding manager as described with reference to <FIG>.

The following provides an overview of non-claimed aspects of the present disclosure:.

Other examples and implementations are within the scope of the appended claims. For example, due to the nature of software, functions described herein may be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these.

A non-transitory storage medium may be any available medium that may be accessed by a general-purpose or special purpose computer. By way of example, and not limitation, non-transitory computer-readable media may include RAM, ROM, electrically erasable programmable ROM (EEPROM), flash memory, compact disk (CD) ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that may be used to carry or store desired program code means in the form of instructions or data structures and that may be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of computer-readable medium.

As used herein, including in the claims, "or" as used in a list of items (e.g., a list of items prefaced by a phrase such as "at least one of" or "one or more of') indicates an inclusive list such that, for example, a list of at least one of A, B, or C means A or B or C or AB or AC or BC or ABC (i.e., A and B and C). Also, as used herein, the phrase "based on" shall not be construed as a reference to a closed set of one or more conditions. For example, an example step that is described as "based on condition A" may be based on both a condition A and a condition B without departing from the scope of the appended claims.

The term "example" used herein means "serving as an example, instance, or illustration," and not "preferred" or "advantageous over other examples. In some instances, known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described examples.

Claim 1:
A method (<NUM>) for wireless communication at a network node, the method (<NUM>) comprising:
transmitting (<NUM>), to a plurality of UEs, a set of one or more network encoded packets representing a set of two or more packets identified for broadcast to the plurality of UEs, wherein the method is characterised by
receiving (<NUM>) feedback from each of one or more of the plurality of UEs, the feedback indicating, as respective subsets of the set of one or more network encoded packets, one or more successfully received network encoded packets of the set of one or more network encoded packets at each of the one or more UEs;
determining (<NUM>), based at least in part on the feedback indicative of the one or more successfully received network encoded packets, a subset of the set of one or more network encoded packets that was successfully received for each of the one or more of the plurality of UEs providing the feedback;
generating (<NUM>), based at least in part on the feedback, an updated set of one or more network encoded packets based at least in part on the set of one or more packets, wherein the updated set of one or more network encoded packets excludes the subset of the set of one or more network encoded packets that was successfully received; and
transmitting (<NUM>) the updated set of one or more network encoded packets to the plurality of UEs.