Message mediated multi hop relay communication
The message mediated multi-hop relay protocol efficiently delivers data to autonomous vehicles by using criteria-based message propagation, addressing the challenges of identifying suitable relay vehicles and preventing message flooding, ensuring operational continuity.
Patent Information
- Application Number
- PCT/CN2024/082686
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-20
- Publication Date
- 2025-09-25
AI Technical Summary
Autonomous vehicles face challenges in obtaining necessary data for operations when they are outside network coverage, as conventional multi-hop relay protocols struggle to efficiently identify suitable relay vehicles and prevent message flooding.
A message mediated multi-hop relay communication protocol that uses criteria-based message broadcasting to strategically propagate data requests and responses through vehicles, ensuring efficient data delivery even in areas with limited network coverage.
Enables autonomous vehicles to obtain required data by dynamically identifying suitable relay vehicles and reducing message flooding, thereby maintaining operational efficiency and network integrity.
Smart Images

Figure CN2024082686_25092025_PF_FP_ABST
Abstract
Description
MESSAGE MEDIATED MULTI HOP RELAY COMMUNICATIONTECHNICAL FIELD
[0001] Aspects of the present disclosure relate generally to driver-operated or driver-assisted vehicles, and more particularly, to methods and systems suitable for supplying driving assistance or for autonomous driving to facilitate message mediated multi hop relay communication.BACKGROUND
[0002] Vehicles take many shapes and sizes, are propelled by a variety of propulsion techniques, and carry cargo including humans, animals, or objects. These machines have enabled the movement of cargo across long distances, movement of cargo at high speed, and movement of cargo that is larger than could be moved by human exertion. Vehicles originally were driven by humans to control speed and direction of the cargo to arrive at a destination. Human operation of vehicles has led to many unfortunate incidents resulting from the collision of vehicle with vehicle, vehicle with object, vehicle with human, or vehicle with animal. As research into vehicle automation has progressed, a variety of driving assistance systems have been produced and introduced. These include navigation directions by GPS, adaptive cruise control, lane change assistance, collision avoidance systems, night vision, parking assistance, and blind spot detection.
[0003] Autonomous vehicles require a network connection to properly function, i.e., they require connectivity to execute autonomous operations, such as adaptive cruise control, lane change assistance, or collision avoidance. To execute an autonomous operation, a processing system of the autonomous vehicle may identify an instance of data to facilitate the operation. When the instance of data is not be available in a memory of the processing system, the autonomous vehicle may generate and transmit to a network node a request message indicating a request for the missing instance of data. Commonly, however, autonomous vehicles find themselves out of network coverage. In such instances, autonomous functions are, at best, only sporadically available.
[0004] In such situations, the autonomous vehicle, referred to as an ego vehicle, can sometimes leverage a second vehicle, referred to as a relay vehicle. If the relay vehicle is in network coverage it can communicate the ego vehicle’s message to the network node. If the relay vehicle is not in network coverage it can communicate the ego vehicle’s message to another relay vehicle that may be in network coverage. That is, multiple hops may occur before a message is relayed to a node; similarly, multiple hops may occur before a message is relayed from the node to the ego vehicle.
[0005] However, the above-described relay operations are typically impractical. For example, a complicating factor associated with the approach is that the ego vehicle and relay vehicles are constantly moving relative to one another and relative to the node at different velocities. Accordingly, identifying a relay vehicle that is within range of other relay vehicles, the ego vehicle, or both is challenging. Additionally, associating the node with a relay vehicle that is within communication range of the node and that can ultimately relay the response message to the ego vehicle is difficult.
[0006] BRIEF SUMMARY OF SOME EXAMPLES
[0007] The following summarizes some aspects of the present disclosure to provide a basic understanding of the discussed technology. This summary is not an extensive overview of all contemplated features of the disclosure and is intended neither to identify key or critical elements of all aspects of the disclosure nor to delineate the scope of any or all aspects of the disclosure. Its sole purpose is to present some concepts of one or more aspects of the disclosure in summary form as a prelude to the more detailed description that is presented later.
[0008] Disclosed is a message mediated multi hop relay communication protocol. In accordance with this protocol, a first user equipment (UE) , such as an ego vehicle, receives an indication that an instance of data to perform an autonomous operation is unavailable. Since the ego vehicle may be outside of a communication range of a base station or node that has the missing instance of data, the first UE initiates a broadcast of a request message that includes a first set of parameters and a request indicating the missing data. The first set of parameters includes a first parameter indicating at least a first criterion for a second UE, such as a relay vehicle, that receives the request message from the ego vehicle, to initiate a broadcast of a relay message. The at least the first criterion may include or correspond to a condition that the relay vehicle travels in a same direction and on a same road as the ego vehicle.
[0009] In response to receipt of the request message and in accordance with satisfying the at least the first criterion indicated by the first parameter, the relay vehicle initiates a broadcast of the relay message. The relay message includes a second set of parameters. A second parameter of the second set of parameters indicates an at least a second criterion for a third UE, such as a second relay vehicle that receives the relay message, to initiate a broadcast of a second relay message. In some implementations, the at least the first criterion may be the same as the at least the second criterion.
[0010] Additionally, the relay vehicle receives, in response to the broadcast of the relay message, a response message. The response message includes the data indicated by the request message. The relay vehicle may receive the response message via the second relay vehicle that is within the communication range of the node. Accordingly, the relay vehicle may broadcast the response message, and the ego vehicle may receive the broadcasted response message. The response message includes the data indicated by the request message, which the ego vehicle may use to perform the autonomous operation.
[0011] In one aspect of the disclosure, a method performed by a first user equipment (UE) includes broadcasting a request message that includes a first set of parameters. The first set of parameters includes a first parameter indicating at least a first criterion for a second UE to initiate a second broadcast of a relay message. The method further includes receiving, in response to the broadcast of the request message, a response message. The response message includes data indicated by the request message, further includes a second set of parameters including a second parameter indicating an at least a second criterion for a third UE to broadcast the response message, and is received from the third UE via a third broadcast initiated by the third UE in accordance with the second parameter. The third UE is configured to receive the response message via a fourth broadcast initiated by a fourth UE that is within a communication range of a node.
[0012] In an additional aspect of the disclosure, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system is configured to initiate a first broadcast of a request message that includes a first set of parameters. The first set of parameters includes a first parameter indicating at least a first criterion for a first user equipment (UE) to initiate a second broadcast of a relay message. The processing system is further configured to receive, in response to the broadcast of the request message, a response message. The response message includes data indicated by the request message, further includes a second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message, and is received from the second UE via a third broadcast initiated by the second UE in accordance with the second parameter. The second UE is configured to receive the response message via a fourth broadcast initiated by a third UE that is within a communication range of a node.
[0013] In an additional aspect of the disclosure, an apparatus includes means for initiating a first broadcast of a request message that includes a first set of parameters. The first set of parameters includes a first parameter indicating at least a first criterion for a first user equipment (UE) to initiate a second broadcast of a relay message. The apparatus further includes means for receiving, in response to the broadcast of the request message, a response message. The response message includes data indicated by the request message, includes a second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message, and is received from the second UE via a third broadcast initiated by the second UE in accordance with the second parameter. The second UE is configured to receive the response message via a fourth broadcast initiated by a third UE that is within a communication range of a node.
[0014] In an additional aspect of the disclosure, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause the processor to perform operations. The operations include initiating a first broadcast of a request message that includes a first set of parameters. The first set of parameters includes a first parameter indicating at least a first criterion for a first user equipment (UE) to initiate a second broadcast of a relay message. The operations further include receiving, in response to the broadcast of the request message, a response message. The response message includes data indicated by the request message, comprises a second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message, and is received from the second UE via a third broadcast initiated by the second UE in accordance with the second parameter. The second UE is configured to receive the response message via a fourth broadcast initiated by a third UE that is within a communication range of a node.
[0015] In an additional aspect of the disclosure, a method performed by a first user equipment (UE) includes receiving a request message broadcast by a second UE that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the second UE. Additionally, the method includes in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, broadcasting a relay message. The relay message includes a second set of parameters, a third parameter of which indicates an at least a second criterion for a third UE that receives the relay message to initiate a second broadcast of a second relay message. Further, the method includes receiving, in response to the broadcasting of the first relay message, a response message. The response message includes the data indicated by the request message and the response message is received via a third UE that is within the communication range.
[0016] In an additional aspect of the disclosure, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system is configured to receive a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the first UE. The processing system is further configured to initiate, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message. The relay message includes a second set of parameters, a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message. The processing system is further configured to receive, in response to the first broadcast of the first relay message, a response message. The response message includes the data indicated by the request message and the response message is received via a third UE that is within the communication range.
[0017] In an additional aspect of the disclosure, an apparatus includes means for receiving a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the first UE. Additionally, the apparatus includes means for initiating, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message. The relay message includes a second set of parameters, a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message. Further, the apparatus includes means for receiving, in response to the first broadcast of the first relay message, a response message. The response message includes the data indicated by the request message and the response message is received via a third UE that is within the communication range.
[0018] In an additional aspect of the disclosure, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause the processor to perform operations. The operations include receiving a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the first UE. Additionally, the operations include initiating, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message. The relay message includes a second set of parameters, a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message. Further, the operations include receiving, in response to the first broadcast of the first relay message, a response message. The response message includes the data indicated by the request message and the response message is received via a third UE that is within the communication range.
[0019] In an additional aspect of the disclosure, a method performed by a node includes receiving a relay message that includes a first set of parameters. The relay message is received from a first UE. Additionally, the method includes initiating transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters.
[0020] In an additional aspect of the disclosure, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system configured to receive a relay message that includes a first set of parameters. The relay message received from a first user equipment (UE) . Additionally, the processing system is configured to initiate transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters.
[0021] In an additional aspect of the disclosure, an apparatus includes means for receiving a relay message that includes a first set of parameters. The relay message is received from a first user equipment (UE) . Additionally, the apparatus includes means initiating transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters.
[0022] In an additional aspect of the disclosure, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause the processor to perform operations. The operations include receiving a relay message that includes a first set of parameters. The relay message is received from a first UE. Additionally, the operations include initiating transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters.
[0023] The foregoing has outlined rather broadly the features and technical advantages of examples according to the disclosure in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter. The conception and specific examples disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. Such equivalent constructions do not depart from the scope of the appended claims. Characteristics of the concepts disclosed herein, both their organization and method of operation, together with associated advantages will be better understood from the following description when considered in connection with the accompanying figures. Each of the figures is provided for the purposes of illustration and description, and not as a definition of the limits of the claims.BRIEF DESCRIPTION OF THE DRAWINGS
[0024] A further understanding of the nature and advantages of the present disclosure may be realized by reference to the following drawings. In the appended figures, similar components or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If just the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label.
[0025] FIG. 1 is a perspective view of a motor vehicle with a driver monitoring system according to according to one or more aspects.
[0026] FIG. 2 shows a block diagram of an example image processing configuration for a vehicle according to one or more aspects.
[0027] FIG. 3 is a block diagram illustrating details of an example wireless communication system according to one or more aspects.
[0028] FIG. 4 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects.
[0029] FIG. 5 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects.
[0030] FIG. 6 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects.
[0031] FIG. 7 is a ladder diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects.
[0032] FIG. 8 is a ladder diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects.
[0033] FIG. 9 is a flow diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects.
[0034] FIG. 10 is a flow diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects.
[0035] FIG. 11 is a flow diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects.
[0036] Like reference numbers and designations in the various drawings indicate like elements.DETAILED DESCRIPTION
[0037] The detailed description set forth below, in connection with the appended drawings, is intended as a description of various configurations and is not intended to limit the scope of the disclosure. Rather, the detailed description includes specific details for the purpose of providing a thorough understanding of the inventive subject matter. It will be apparent to those skilled in the art that these specific details are not required in every case and that, in some instances, well-known structures and components are shown in block diagram form for clarity of presentation.
[0038] The present disclosure provides systems, apparatus, methods, and computer-readable media that support a message mediated multi-hop relay communication protocol to address the challenges associated with enabling autonomous vehicle operations when the autonomous vehicle lacks network connectivity. The disclosed techniques enable an autonomous vehicle, referred to as an ego vehicle, to obtain data needed for autonomous operation by leveraging other vehicles as relays, even when the ego vehicle and relay vehicles are moving relative to one another and to network nodes.
[0039] A processing system associated with the ego vehicle initiates a broadcast of a request message that includes parameters specifying criteria for relay vehicles to use in determining whether to rebroadcast the request message. This allows the request to propagate in a targeted manner to relay vehicles that are well-positioned to facilitate delivery of the request to a network node. The network node can then provide the requested data back to the ego vehicle by sending a response message that follows a path back through the relay vehicles. By enabling this dynamic multi-hop relay communication, the disclosed techniques allow autonomous vehicles to obtain data for autonomous operation even in areas with limited network coverage.
[0040] To facilitate the foregoing, the present disclosure supports a message mediated multi hop relay communication protocol to address the challenges associated with enabling autonomous vehicle operations when the autonomous vehicle lacks network connectivity. According to the multi-hop relay protocol, when an autonomous vehicle requires data for its operation but lacks a direct network connection, it may broadcast a request message to nearby vehicles. This request can include parameters that specify what types of vehicles should rebroadcast the message, allowing the request to propagate strategically through the vehicle network. For example, the request may specify that only vehicles traveling in the same direction or on the same road should rebroadcast the message. When the request reaches a vehicle with network connectivity, that vehicle may forward the request to the network node, which may provide the requested data in a response message. This response can then be relayed back to the original autonomous vehicle through the network of relay vehicles. The response message may also include parameters specifying criteria for vehicles to use in determining whether to broadcast the response back to the ego vehicle, such as only vehicles on the same road or traveling in the opposite direction. By dynamically establishing this chain of communication based on specified criteria, the protocol enables autonomous vehicles to efficiently access network resources through other vehicles, even in areas of limited coverage.
[0041] As illustrative examples described herein, multi-hop relay communication protocols are illustrated with respect to an autonomous vehicle referred to as the “ego vehicle” (e.g., vehicle 402) traveling on a highway. The ego vehicle requires, e.g., an updated high-definition (HD) map to navigate an upcoming road segment but lacks a direct connection to a network node. In this context, the ego vehicle may serve as a “first UE” and may initiate a first broadcast of a request message (e.g. request message 430) . The request message can include parameters specifying, e.g., that only vehicles traveling in the same direction and on the same highway should rebroadcast the message. Nearby vehicles receive the request message, but only those satisfying the specified criteria (e.g., traveling in the same direction and on the same highway) may rebroadcast the message as a relay message. These nearby vehicles (e.g., vehicle 412) may serve as a “second UE” and their rebroadcast or relay message (e.g., first relay message 432) may correspond to a “second broadcast. ”
[0042] As the relay message propagates through the network of vehicles (including, e.g., vehicles 414 and 416) , it eventually reaches a vehicle with a direct connection to a network node (e.g., vehicle 424) . This vehicle, may serve as a “third UE, ” and may forward the request (e.g., third relay message 436) to the network node (e.g., base station 405) , which may respond with the requested HD map data. The response message (e.g., response message 438) , containing the HD map data, can then be broadcast back towards the ego vehicle, with each relay vehicle determining whether to rebroadcast the message based on criteria specified in the response message. For example, the response message may specify that only vehicles traveling in the opposite direction of the ego vehicle should rebroadcast the message, as this helps ensure the response reaches the ego vehicle more quickly. The ego vehicle eventually receives the response message containing the HD map data, enabling it to continue its autonomous operation.
[0043] Accordingly, a processing system associated with a first user equipment (UE) , such as an ego vehicle, may initiate a first broadcast of a request message. For instance, in response to identifying missing data to facilitate an autonomous operation, the processing system, embedded in or otherwise associated with the ego vehicle, may initiate a first broadcast of a request message via one or more sidelink channels. The one or more sidelink channel carrying the request message may be a data channel or a control channel. The missing data may include or correspond to one or more instances of software, such as high definition (HD) maps, that facilitate the autonomous operation.
[0044] The request message may include a first set of parameters. The first set of parameters may include a first parameter indicating at least a first criterion for a second user equipment (UE) , such as a first relay vehicle, to initiate a second broadcast of a relay message. For example, the first parameter may include or correspond to a travel indicator indicating a travel direction of the ego vehicle, a locator identifying a path, such as a road, traveled by the ego vehicle, or a combination thereof. To illustrate, each road may be associated with a unique identifier (ID) , such as a road ID, and each segment of the road may include a unique identifier, such as a road segment ID. The at least the first criterion may include or correspond to a condition that the first relay vehicle travels in a same direction and on the same road as the ego vehicle.
[0045] A plurality of receiving UEs, such as a plurality of receiving vehicles, may receive the broadcasted request message, via one or more sidelink channels, each of which may be a data channel or a control channel. However, at least some of the receiving vehicles may not satisfy the at least the first criterion. For example, a second receiving vehicle may be traveling on the same road as the ego vehicle but in a different direction than the ego vehicle. As another example, a third receiving vehicle may be traveling in the same direction as the ego vehicle but on a different road than the ego vehicle, such as a road bearing a different road ID than a road ID on which the ego vehicle travels. Accordingly, the second receiving vehicle and the third receiving vehicle may not process the request message, or, alternatively, after partially or fully decoding the request message, the second receiving vehicle and the third receiving vehicle may ignore the request message in accordance with determining that the at least the first criterion has not been satisfied.
[0046] However, other receiving vehicles of the plurality of receiving vehicles may satisfy the at least the first criterion. For instance, a third receiving vehicle and a fourth receiving vehicle may decode the request message and may determine that each of the third receiving vehicle and the fourth receiving vehicle satisfy the at least the first criterion indicated by the first parameter of the first set of parameters included in the request message. To illustrate, each of the third receiving vehicle and the fourth receiving vehicle may be traveling in the same direction and on the same road as the ego vehicle. In accordance with the at least the first criterion indicated by the first parameter, the third receiving vehicle and the fourth receiving vehicle may initiate broadcast of a relay message.
[0047] To initiate broadcast of the relay message, each of the third receiving vehicle and the fourth receiving vehicle may set a timer in response to satisfying the at least the first criterion. In implementations, the timer may include or correspond to a random value selected by each of the third receiving vehicle and the fourth receiving vehicle based on range of values stored in a memory of a processing system associated with each of the third receiving vehicle and the fourth receiving vehicle. In implementations, the receiving vehicle, the timer of which first expires, may broadcast the relay message. For example, a first timer set by the third receiving vehicle may expire prior to a second timer set by the fourth receiving vehicle. After broadcasting the relay message, the vehicle, the timer of which first expires, such as the timer associated with the third receiving vehicle, may broadcast a suppression message. For instance, the third receiving vehicle may broadcast the suppression message over one or more sidelink channels. The suppression message may cause a receiving vehicle that satisfies the at least the first criterion to cease initiation of broadcast of a relay message For example, the fourth receiving vehicle, in response to receipt of the suppression message, may cease initiation of broadcast of the relay message.
[0048] Additionally, the relay operation may include initiation, by the third receiving vehicle, the fourth receiving vehicle, or both, of a second broadcast of a relay message. The relay message may include a second set of parameters, a second parameter of which may indicate at least a second criterion for a UE that receives the relay message to initiate a third broadcast of a second relay message. In some implementations, the at least the second criterion may be the same as the at least the first criterion. However, in other implementations, the at least the second criterion may include different or additional components than the at least the first criterion. For instance, the at least the second criterion may include a maximum distance separating a receiving UE, such as a vehicle that receives the second relay message, from a broadcasting UE, such as a vehicle that broadcasts the second relay message.
[0049] As another example, the at least second criterion may include or correspond to a hop indicator indicating a maximum allowed quantity of hops. If the receiving UE determines that the number of hops will exceed the maximum allowed quantity of hops, the receiving UE may cease initiation of a relay operation. For instance, the receiving UE may not broadcast the second relay message.
[0050] Further, the relay operation may include receipt, by the ego vehicle, of a response message received in response to broadcast, by the ego vehicle, of the request message. The response message may include the data indicated by the request message. For example, the response message may include an HD map to facilitate an autonomous operation of the ego vehicle.
[0051] Additionally, the response message may include a third set of parameters including a third parameter indicating at least a third criterion for a second UE, such as a fifth receiving vehicle, to broadcast the response message. To illustrate the at least the third criterion may include that the fifth receiving vehicle is on the same road as the ego vehicle. Additionally or alternatively, the at least the third criterion may include that the fifth receiving vehicle is traveling in a same direction as the ego vehicle or in an opposite direction as the ego vehicle (e.g., to reduce a distance separating the fifth receiving vehicle and the ego vehicle) .
[0052] The ego vehicle may receive the response message from the fifth receiving vehicle via a third broadcast initiated by the fifth receiving vehicle in accordance with the third parameter. For example, in response to decoding the response message, the fifth receiving vehicle may determine that it satisfies the at least the third criterion indicated by the third parameter. The fifth receiving vehicle may itself be configured to receive the response message via a fourth broadcast initiated by a third UE, such a sixth receiving vehicle, that is within the communication range of the node.
[0053] As discussed above, conventional multi-hop relay algorithms lack criteria for rapidly identifying a suitable UE to relay a data request to a node outside of a communication range of a UE, such as an ego vehicle, that requests an instance of data. Additionally, conventional multi-hop relay algorithms lack criteria for identifying a suitable relay vehicle to relay requested data from the responding node to the requesting UE, such as a requesting ego vehicle. For example, in some conventional approaches, the ego vehicle transmits a request message to a relay UE, such as a first relay vehicle, that is outside of an effective communication range of the ego vehicle. Consequently, the sidelink signal received by the first relay vehicle may be attenuated with the result that the request message may be corrupted.
[0054] As another example, in some conventional approaches, the ego vehicle may broadcast the request message, and the request message may be received by any of a plurality of UEs, such as vehicles or other devices, within a communication range of the ego vehicle. However, in such approaches, all of the UEs that receive the request message may generate relay messages that include the data request. In such cases, the communication network is quickly flooded by relay messages bearing the data request, with the result that the communication network becomes overwhelmed and may be compromised. Obviating such message flooding, in which too many messages are transmitted, is advantageous for protecting the operational efficiency and integrity of the communication network. The subject matter described in this disclosure may be implemented to realize one or more of the following potential advantages or benefits as compared to conventional multi-hop protocols. That is, . mediated multi hop relay communication protocol of the present disclosure rapidly identifies an appropriate relay vehicle to facilitate multi hop relay of a data request and of the requested data corresponding to the data request while obviating message flooding. By including data fields in a message (e.g., a request message, a relay message, a response message, or a combination thereof) that include a parameter of a set of parameters indicating at least a criterion for a UE that receives the message (e.g., a receiving UE) to initiate a relay operation, such as to initiate broadcast of a relay message, the disclosed message mediated multi hop relay communication protocol improves a likelihood that a receiving UE is sufficiently proximate to a UE that broadcasts the message (e.g., a broadcasting UE) to avoid signal attenuation that may corrupt data included in the signal.
[0055] Additionally, the messages themselves, the data fields and associated data included in these data fields, or both may obviate or reduce a likelihood of message flooding. For example, by causing a receiving UE to set a timer such that the receiving UE broadcasts a relay message after expiration of the timer and then subsequently broadcasts a suppression message to suppress other receiving UEs from broadcasting a relay message, an overall volume of messages being broadcast may be reduced. As another example, in some implementations, a parameter of the message may include or correspond to a hop indicator. The hop indicator may indicating a maximum allowed quantity of hops. In response to determining that broadcast of a relay message will cause the quantity of hops to exceed the maximum allowed quantity of hops, the receiving UE may cease a relay operation by ceasing initiation of broadcast of the message. Accordingly, the disclosed message mediated multi hop relay communication protocol also may obviate message flooding or reduce a probability of an occurrence of message flooding.
[0056] In various implementations, the techniques and apparatus may be used for wireless communication networks such as code division multiple access (CDMA) networks, time division multiple access (TDMA) networks, frequency division multiple access (FDMA) networks, orthogonal FDMA (OFDMA) networks, single-carrier FDMA (SC-FDMA) ng networks, LTE networks, GSM networks, 5th Generation (5G) or new radio (NR) networks (sometimes referred to as “5G NR” networks, systems, or devices) , as well as other communications networks. As described herein, the terms “networks” and “systems” may be used interchangeably.
[0057] A CDMA network, for example, may implement a radio technology such as universal terrestrial radio access (UTRA) , cdma2000, and the like. UTRA includes wideband-CDMA (W-CDMA) and low chip rate (LCR) . CDMA2000 covers IS-2000, IS-95, and IS-856 standards.
[0058] A TDMA network may, for example implement a radio technology such as Global System for Mobile Communication (GSM) . The 3rd Generation Partnership Project (3GPP) defines standards for the GSM EDGE (enhanced data rates for GSM evolution) radio access network (RAN) , also denoted as GERAN. GERAN is the radio component of GSM / EDGE, together with the network that joins the base stations (for example, the Ater and Abis interfaces) and the base station controllers (Ainterfaces, etc. ) . The radio access network represents a component of a GSM network, through which phone calls and packet data are routed from and to the public switched telephone network (PSTN) and Internet to and from subscriber handsets, also known as user terminals or user equipments (UEs) . A mobile phone operator's network may comprise one or more GERANs, which may be coupled with UTRANs in the case of a UMTS / GSM network. Additionally, an operator network may also include one or more LTE networks, or one or more other networks. The various different network types may use different radio access technologies (RATs) and RANs.
[0059] An OFDMA network may implement a radio technology such as evolved UTRA (E-UTRA) , Institute of Electrical and Electronics Engineers (IEEE) 802.11, IEEE 802.16, IEEE 802.20, flash-OFDM and the like. UTRA, E-UTRA, and GSM are part of universal mobile telecommunication system (UMTS) . In particular, long term evolution (LTE) is a release of UMTS that uses E-UTRA. UTRA, E-UTRA, GSM, UMTS and LTE are described in documents provided from an organization named “3rd Generation Partnership Project” (3GPP) , and cdma2000 is described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) . 5G networks include diverse deployments, diverse spectrum, and diverse services and devices that may be implemented using an OFDM-based unified, air interface.
[0060] The present disclosure may describe certain aspects with reference to LTE, 4G, or 5G NR technologies; however, the description is not intended to be limited to a specific technology or application, and one or more aspects described with reference to one technology may be understood to be applicable to another technology. Additionally, one or more aspects of the present disclosure may be related to shared access to wireless spectrum between networks using different radio access technologies or radio air interfaces.
[0061] Devices, networks, and systems may be configured to communicate via one or more portions of the electromagnetic spectrum. The electromagnetic spectrum is often subdivided, based on frequency or wavelength, into various classes, bands, channels, etc. In 5G NR two initial operating bands have been identified as frequency range designations FR1 (410 MHz –7.125 GHz) and FR2 (24.25 GHz –52.6 GHz) . The frequencies between FR1 and FR2 are often referred to as mid-band frequencies. Although a portion of FR1 is greater than 6 GHz, FR1 is often referred to (interchangeably) as a “sub-6 GHz” band in various documents and articles. A similar nomenclature issue sometimes occurs with regard to FR2, which is often referred to (interchangeably) as a “millimeter wave” (mmWave) band in documents and articles, despite being different from the extremely high frequency (EHF) band (30 GHz –300 GHz) which is identified by the International Telecommunications Union (ITU) as a “mmWave” band.
[0062] With the above aspects in mind, unless specifically stated otherwise, it should be understood that the term “sub-6 GHz” or the like if used herein may broadly represent frequencies that may be less than 6 GHz, may be within FR1, or may include mid-band frequencies. Further, unless specifically stated otherwise, it should be understood that the term “mmWave” or the like if used herein may broadly represent frequencies that may include mid-band frequencies, may be within FR2, or may be within the EHF band.
[0063] 5G NR devices, networks, and systems may be implemented to use optimized OFDM-based waveform features. These features may include scalable numerology and transmission time intervals (TTIs) ; a common, flexible framework to efficiently multiplex services and features with a dynamic, low-latency time division duplex (TDD) design or frequency division duplex (FDD) design; and advanced wireless technologies, such as massive multiple input, multiple output (MIMO) , robust mmWave transmissions, advanced channel coding, and device-centric mobility. Scalability of the numerology in 5G NR, with scaling of subcarrier spacing, may efficiently address operating diverse services across diverse spectrum and diverse deployments. For example, in various outdoor and macro coverage deployments of less than 3 GHz FDD or TDD implementations, subcarrier spacing may occur with 15 kHz, for example over 1, 5, 10, 20 MHz, and the like bandwidth. For other various outdoor and small cell coverage deployments of TDD greater than 3 GHz, subcarrier spacing may occur with 30 kHz over 80 / 100 MHz bandwidth. For other various indoor wideband implementations, using a TDD over the unlicensed portion of the 5 GHz band, the subcarrier spacing may occur with 60 kHz over a 160 MHz bandwidth. Finally, for various deployments transmitting with mmWave components at a TDD of 28 GHz, subcarrier spacing may occur with 120 kHz over a 500 MHz bandwidth.
[0064] For clarity, certain aspects of the apparatus and techniques may be described below with reference to example 5G NR implementations or in a 5G-centric way, and 5G terminology may be used as illustrative examples in portions of the description below; however, the description is not intended to be limited to 5G applications.
[0065] Moreover, it should be understood that, in operation, wireless communication networks adapted according to the concepts herein may operate with any combination of licensed or unlicensed spectrum depending on loading and availability. Accordingly, it will be apparent to a person having ordinary skill in the art that the systems, apparatus and methods described herein may be applied to other communications systems and applications than the particular examples provided.
[0066] FIG. 1 is a perspective view of a motor vehicle with a driver monitoring system according to embodiments of this disclosure. Vehicle 100 may include a front-facing camera 112 mounted inside the cabin looking through windshield 102. The vehicle may also include cabin-facing camera 114 mounted inside the cabin looking towards occupants of vehicle 100, and in particular the driver of vehicle 100. Although one set of mounting positions for cameras 112 and 114 are shown for vehicle 100, other mounting locations may be used for cameras 112 and 114. For example, one or more cameras may be mounted on one of the driver or passenger B pillars 126 or one of the driver or passenger C pillars 128, such as near the top of pillars 126 or 128. As another example, one or more cameras may be mounted at the front of vehicle 100, such as behind radiator grill 130 or integrated with bumper 132. As a further example, one or more cameras may be mounted as part of driver or passenger side mirror assembly 134.
[0067] Camera 112 may be oriented such that the field of view of camera 112 captures a scene in front of vehicle 100 in the direction that vehicle 100 is moving when in drive mode or forward direction. In some embodiments, an additional camera may be located at the rear of vehicle 100 and oriented such that the field of view of the additional camera captures a scene behind vehicle 100 in the direction that vehicle 100 is moving when in reverse direction. Although embodiments of the disclosure may be described with reference to a “front-facing” camera, referring to camera 112, aspects of the disclosure may be applied similarly to a “rear-facing” camera facing in the reverse direction of vehicle 100. Thus, the benefits obtained while the operator is driving vehicle 100 in a forward direction may likewise be obtained while the operator is driving vehicle 100 in a reverse direction.
[0068] Further, although embodiments of the disclosure may be described with reference a “front-facing” camera, referring to camera 112, aspects of the disclosure may be applied similarly to an input received from an array of cameras mounted around the vehicle 100 to provide a larger field of view, which may be as large as 360 degrees around parallel to the ground and / or as large as 360 degrees around a vertical direction perpendicular to the ground. For example, additional cameras may be mounted around the outside of vehicle 100, such as on or integrated in the doors, on or integrated in the wheels, on or integrated in the bumpers, on or integrated in the hood, and / or on or integrated in the roof.
[0069] Camera 114 may be oriented such that the field of view of camera 114 captures a scene in the cabin of the vehicle and includes the user operator of the vehicle, and in particular the face of the user operator of the vehicle with sufficient detail to discern a gaze direction of the user operator.
[0070] Each of cameras 112 and 114 may include one, two, or more image sensors, such as including a first image sensor. When multiple image sensors are present, the first image sensor may have a larger field of view (FOV) than the second image sensor or the first image sensor may have different sensitivity or different dynamic range than the second image sensor. In one example, the first image sensor may be a wide-angle image sensor, and the second image sensor may be a telephoto image sensor. In another example, the first sensor is configured to obtain an image through a first lens with a first optical axis and the second sensor is configured to obtain an image through a second lens with a second optical axis different from the first optical axis. Additionally or alternatively, the first lens may have a first magnification, and the second lens may have a second magnification different from the first magnification. This configuration may occur in a camera module with a lens cluster, in which the multiple image sensors and associated lenses are located in offset locations within the camera module. Additional image sensors may be included with larger, smaller, or same fields of view.
[0071] Each image sensor may include means for capturing data representative of a scene, such as image sensors (including charge-coupled devices (CCDs) , Bayer-filter sensors, infrared (IR) detectors, ultraviolet (UV) detectors, complimentary metal-oxide-semiconductor (CMOS) sensors) , and / or time of flight detectors. The apparatus may further include one or more means for accumulating and / or focusing light rays into the one or more image sensors (including simple lenses, compound lenses, spherical lenses, and non-spherical lenses) . These components may be controlled to capture the first, second, and / or more image frames. The image frames may be processed to form a single output image frame, such as through a fusion operation, and that output image frame further processed according to the aspects described herein.
[0072] As used herein, image sensor may refer to the image sensor itself and any certain other components coupled to the image sensor used to generate an image frame for processing by the image signal processor or other logic circuitry or storage in memory, whether a short-term buffer or longer-term non-volatile memory. For example, an image sensor may include other components of a camera, including a shutter, buffer, or other readout circuitry for accessing individual pixels of an image sensor. The image sensor may further refer to an analog front end or other circuitry for converting analog signals to digital representations for the image frame that are provided to digital circuitry coupled to the image sensor.
[0073] FIG. 2 shows a block diagram of an example processing system 284 associated with vehicle 100. Processing system 284 includes one or more processors (collectively “processor 204” ) , one or more memories (collectively “memory 206” ) , image signal processor 212, sensor hub 250, and Input / Output (I / O) components 216. Vehicle 100 may include, or otherwise be coupled to, image signal processor 212 for processing image frames from one or more image sensors, such as first image sensor 201, second image sensor 202, and depth sensor 240. In some implementations, vehicle 100 also includes or is coupled to a processor (e.g., CPU) 204 and memory 206 storing instructions 208. Vehicle 100 may also include or be coupled to display 214 and input / output (I / O) components 216. I / O components 216 may be used for interacting with a user, such as a touch screen interface and / or physical buttons. I / O components 216 may also include network interfaces for communicating with other devices, such as other vehicles, an operator’s mobile devices, and / or a remote monitoring system. The network interfaces may include one or more of wide area network (WAN) adaptor 252, local area network (LAN) adaptor 253, and / or personal area network (PAN) adaptor 254. An example WAN adaptor 252 is a 4G LTE or a 5G NR wireless network adaptor. An example LAN adaptor 253 is an IEEE 802.11 WiFi wireless network adapter. An example PAN adaptor 254 is a Bluetooth wireless network adaptor. Each of adaptors 252, 253, and / or 254 may be coupled to an antenna, including multiple antennas configured for primary and diversity reception and / or configured for receiving specific frequency bands. Vehicle 100 may further include or be coupled to power supply 218, such as a battery or an alternator. Vehicle 100 may also include or be coupled to additional features or components that are not shown in Figure 2. In one example, a wireless interface, which may include one or more transceivers and associated baseband processors, may be coupled to or included in WAN adaptor 252 for a wireless communication device. In a further example, an analog front end (AFE) to convert analog image frame data to digital image frame data may be coupled between the image sensors 201 and 202 and the image signal processor 212.
[0074] Vehicle 100 may include sensor hub 250 for interfacing with sensors to receive data regarding movement of vehicle 100, data regarding an environment around vehicle 100, and / or other non-camera sensor data. One example non-camera sensor is a gyroscope, a device configured for measuring rotation, orientation, and / or angular velocity to generate motion data. Another example non-camera sensor is an accelerometer, a device configured for measuring acceleration, which may also be used to determine velocity and distance traveled by appropriately integrating the measured acceleration, and one or more of the acceleration, velocity, and or distance may be included in generated motion data. In further examples, a non-camera sensor may be a global positioning system (GPS) receiver, a light detection and ranging (LiDAR) system, a radio detection and ranging (RADAR) system, or other ranging systems. For example, sensor hub 250 may interface to a vehicle bus for sending configuration commands and / or receiving information from vehicle sensors 272, such as distance (e.g., ranging) sensors or vehicle-to-vehicle (V2V) sensors (e.g., sensors for receiving information from nearby vehicles) .
[0075] Image signal processor (ISP) 212 may receive image data, such as used to form image frames. In one embodiment, a local bus connection couples image signal processor 212 to image sensors 201 and 202 of first camera 203, which may correspond to camera 112 of Figure 1, and second camera 205, which may correspond to camera 114 of Figure 1, respectively. In another embodiment, a wire interface may couple image signal processor 212 to an external image sensor. In a further embodiment, a wireless interface may couple image signal processor 212 to image sensor 201, 202.
[0076] First camera 203 may include first image sensor 201 and corresponding first lens 231. Second camera 205 may include second image sensor 202 and corresponding second lens 232. Each of lenses 231 and 232 may be controlled by associated autofocus (AF) algorithm 233 executing in ISP 212, which adjust lenses 231 and 232 to focus on a particular focal plane at a certain scene depth from image sensors 201 and 202. AF algorithm 233 may be assisted by depth sensor 240. In some embodiments, lenses 231 and 232 may have a fixed focus.
[0077] First image sensor 201 and second image sensor 202 are configured to capture one or more image frames. Lenses 231 and 232 focus light at image sensors 201 and 202, respectively, through one or more apertures for receiving light, one or more shutters for blocking light when outside an exposure window, one or more color filter arrays (CFAs) for filtering light outside of specific frequency ranges, one or more analog front ends for converting analog measurements to digital information, and / or other suitable components for imaging.
[0078] In some embodiments, image signal processor 212 may execute instructions from a memory, such as instructions 208 from memory 206, instructions stored in a separate memory coupled to or included in image signal processor 212, or instructions provided by processor 204. In addition, or in the alternative, image signal processor 212 may include specific hardware (such as one or more integrated circuits (ICs) ) configured to perform one or more operations described in the present disclosure. For example, image signal processor 212 may include one or more image front ends (IFEs) 235, one or more image post-processing engines (IPEs) 236, and or one or more auto exposure compensation (AEC) 234 engines. AF 233, AEC 234, IFE 235, IPE 236 may each include application-specific circuitry, may be embodied as software code executed by ISP 212, and / or a combination of hardware within and software code executing on ISP 212.
[0079] In some implementations, memory 206 may include a non-transient or non-transitory computer readable medium storing computer-executable instructions 208 to perform all or a portion of one or more operations described in this disclosure. In some implementations, instructions 208 include a camera application (or other suitable application) to be executed during operation of vehicle 100 for generating images or videos. Instructions 208 may also include other applications or programs executed for vehicle 100, such as an operating system, mapping applications, or entertainment applications. Execution of the camera application, such as by processor 204, may cause vehicle 100 to generate images using image sensors 201 and 202 and image signal processor 212. Memory 206 may also be accessed by image signal processor 212 to store processed frames or may be accessed by processor 204 to obtain the processed frames. In some embodiments, vehicle 100 includes a system on chip (SoC) that incorporates image signal processor 212, processor 204, sensor hub 250, memory 206, and input / output components 216 into a single package.
[0080] In some embodiments, at least one of image signal processor 212 or processor 204 executes instructions to perform various operations described herein, including object detection, risk map generation, driver monitoring, and driver alert operations. For example, execution of the instructions can instruct image signal processor 212 to begin or end capturing an image frame or a sequence of image frames. In some embodiments, processor 204 may include one or more general-purpose processor cores 204A capable of executing scripts or instructions of one or more software programs, such as instructions 208 stored within the memory 206. For example, processor 204 may include one or more application processors configured to execute the camera application (or other suitable application for generating images or video) stored in memory 206.
[0081] In executing the camera application, processor 204 may be configured to instruct image signal processor 212 to perform one or more operations with reference to the image sensors 201 or 202. For example, the camera application may receive a command to begin a video preview display upon which a video comprising a sequence of image frames is captured and processed from one or more image sensors 201 or 202 and displayed on informational display on display 214 in a cabin of the vehicle 100.
[0082] In some embodiments, processor 204 may include ICs or other hardware (e.g., an artificial intelligence (AI) engine 224) in addition to the ability to execute software to cause vehicle 100 to perform a number of functions or operations, such as the operations described herein. In some other embodiments, vehicle 100 does not include processor 204, such as when all of the described functionality is configured in image signal processor 212.
[0083] In some embodiments, display 214 may include one or more suitable displays or screens allowing for user interaction and / or to present items to the user, such as a preview of the image frames being captured by image sensors 201 and 202. In some embodiments, display 214 is a touch-sensitive display. I / O components 216 may be or include any suitable mechanism, interface, or device to receive input (such as commands) from the user and to provide output to the user through display 214. For example, I / O components 216 may include (but are not limited to) a graphical user interface (GUI) , a keyboard, a mouse, a microphone, speakers, a squeezable bezel, one or more buttons (such as a power button) , a slider, a switch, and so on. In some embodiments involving autonomous driving, I / O components 216 may include an interface to a vehicle’s bus for providing commands and information to and receiving information from vehicle systems 270 including propulsion (e.g., commands to increase or decrease speed or apply brakes) and steering systems (e.g., commands to turn wheels, change a route, or change a final destination) .
[0084] While shown to be coupled to each other via processor 204, components (such as processor 204, memory 206, image signal processor 212, display 214, and I / O components 216) may be coupled to each another in other various arrangements, such as via one or more local buses, which are not shown for simplicity. While image signal processor 212 is illustrated as separate from processor 204, image signal processor 212 may be a core of processor 204 that is an application processor unit (APU) , included in a system on chip (SoC) , or otherwise included with processor 204. While vehicle 100 is referred to in the examples herein for including aspects of the present disclosure, some device components may not be shown in Figure 2 to prevent obscuring aspects of the present disclosure. Additionally, other components, numbers of components, or combinations of components may be included in a suitable vehicle for performing aspects of the present disclosure. As such, the present disclosure is not limited to a specific device or configuration of components, including vehicle 100.
[0085] Vehicle 100 may communicate as a user equipment (UE) within wireless network 300, such as through WAN adaptor 252, as shown in FIG. 3. FIG. 3 is a block diagram illustrating details of an example wireless communication system according to one or more aspects. Wireless network 300 may, for example, include a 5G wireless network. As appreciated by those skilled in the art, components appearing in FIG. 3 are likely to have related counterparts in other network arrangements including, for example, cellular-style network arrangements and non-cellular-style-network arrangements (e.g., device-to-device or peer-to-peer or ad-hoc network arrangements, etc. ) .
[0086] Wireless network 300 illustrated in FIG. 3 includes nodes (e.g., communication nodes) , such as base stations 305 and other network entities. A base station may be a station that communicates with the UEs and may also be referred to as an evolved node B (eNB) , a next generation eNB (gNB) , an access point, a node, and the like. Each base station 305 may provide communication coverage for a particular geographic area. In 3GPP, the term “cell” may refer to this particular geographic coverage area of a base station or a base station subsystem serving the coverage area, depending on the context in which the term is used. In implementations of wireless network 300 herein, base stations 305 may be associated with a same operator or different operators (e.g., wireless network 300 may include a plurality of operator wireless networks) . Additionally, in implementations of wireless network 300 herein, base station 305 may provide wireless communications using one or more of the same frequencies (e.g., one or more frequency bands in licensed spectrum, unlicensed spectrum, or a combination thereof) as a neighboring cell. In some examples, an individual base station 305 or UE 315 may be operated by more than one network operating entity. In some other examples, each base station 305 and UE 315 may be operated by a single network operating entity.
[0087] A base station may provide communication coverage for a macro cell or a small cell, such as a pico cell or a femto cell, or other types of cell. A macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by UEs with service subscriptions with the network provider. A small cell, such as a pico cell, would generally cover a relatively smaller geographic area and may allow unrestricted access by UEs with service subscriptions with the network provider. A small cell, such as a femto cell, would also generally cover a relatively small geographic area (e.g., a home) and, in addition to unrestricted access, may also provide restricted access by UEs having an association with the femto cell (e.g., UEs in a closed subscriber group (CSG) , UEs for users in the home, and the like) . A base station for a macro cell may be referred to as a macro base station. A base station for a small cell may be referred to as a small cell base station, a pico base station, a femto base station or a home base station. In the example shown in FIG. 3, base stations 305d and 305e are regular macro base stations, while base stations 305a-305c are macro base stations enabled with one of three-dimension (3D) , full dimension (FD) , or massive MIMO. Base stations 305a-305c take advantage of their higher dimension MIMO capabilities to exploit 3D beamforming in both elevation and azimuth beamforming to increase coverage and capacity. Base station 305f is a small cell base station which may be a home node or portable access point. A base station may support one or multiple (e.g., two, three, four, and the like) cells.
[0088] Wireless network 300 may support synchronous or asynchronous operation. For synchronous operation, the base stations may have similar frame timing, and transmissions from different base stations may be approximately aligned in time. For asynchronous operation, the base stations may have different frame timing, and transmissions from different base stations may not be aligned in time. In some scenarios, networks may be enabled or configured to handle dynamic switching between synchronous or asynchronous operations.
[0089] UEs 315 are dispersed throughout the wireless network 300, and each UE may be stationary or mobile. It should be appreciated that, although a mobile apparatus is commonly referred to as a UE in standards and specifications promulgated by the 3GPP, such apparatus may additionally or otherwise be referred to by those skilled in the art as a mobile station (MS) , a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communications device, a remote device, a mobile subscriber station, an access terminal (AT) , a mobile terminal, a wireless terminal, a remote terminal, a handset, a terminal, a user agent, a mobile client, a client, a gaming device, an augmented reality device, vehicular component, vehicular device, or vehicular module, or some other suitable terminology.
[0090] Some non-limiting examples of a mobile apparatus, such as may include implementations of one or more of UEs 315, include a mobile, a cellular (cell) phone, a smart phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a laptop, a personal computer (PC) , a notebook, a netbook, a smart book, a tablet, a personal digital assistant (PDA) , and a vehicle. Although UEs 315a-j are specifically shown as vehicles, a vehicle may employ the communication configuration described with reference to any of the UEs 315a-315k.
[0091] In one aspect, a UE may be a device that includes a Universal Integrated Circuit Card (UICC) . In another aspect, a UE may be a device that does not include a UICC. In some aspects, UEs that do not include UICCs may also be referred to as IoE devices. UEs 315a-315d of the implementation illustrated in FIG. 3 are examples of mobile smart phone-type devices accessing wireless network 300. A UE may also be a machine specifically configured for connected communication, including machine type communication (MTC) , enhanced MTC (eMTC) , narrowband IoT (NB-IoT) and the like. UEs 315e-315k illustrated in FIG. 3 are examples of various machines configured for communication that access wireless network 300.
[0092] A mobile apparatus, such as UEs 315, may be able to communicate with any type of the base stations, whether macro base stations, pico base stations, femto base stations, relays, and the like. In FIG. 3, a communication link (represented as a lightning bolt) indicates wireless transmissions between a UE and a serving base station, which is a base station designated to serve the UE on the downlink or uplink, or desired transmission between base stations, and backhaul transmissions between base stations. UEs may operate as base stations or other network nodes in some scenarios. Backhaul communication between base stations of wireless network 300 may occur using wired or wireless communication links.
[0093] In operation at wireless network 300, base stations 305a-305c serve UEs 315a and 315b using 3D beamforming and coordinated spatial techniques, such as coordinated multipoint (CoMP) or multi-connectivity. Macro base station 305d performs backhaul communications with base stations 305a-305c, as well as small cell, base station 305f. Macro base station 305d also transmits multicast services which are subscribed to and received by UEs 315c and 315d. Such multicast services may include mobile television or stream video, or may include other services for providing community information, such as weather emergencies or alerts, such as Amber alerts or gray alerts.
[0094] Wireless network 300 of implementations supports mission critical communications with ultra-reliable and redundant links for mission critical devices, such UE 315e, which is a drone. Redundant communication links with UE 315e include from macro base stations 305d and 305e, as well as small cell base station 305f. Other machine type devices, such as UE 315f (thermometer) , UE 315g (smart meter) , and UE 315h (wearable device) may communicate through wireless network 300 either directly with base stations, such as small cell base station 305f, and macro base station 305e, or in multi-hop configurations by communicating with another user device which relays its information to the network, such as UE 315f communicating temperature measurement information to the smart meter, UE 315g, which is then reported to the network through small cell base station 305f. Wireless network 300 may also provide additional network efficiency through dynamic, low-latency TDD communications or low-latency FDD communications, such as in a vehicle-to-vehicle (V2V) mesh network between UEs 315i-315k communicating with macro base station 305e.
[0095] FIG. 4 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects. System 400 includes roads 480, 486, base station 405, and UEs or vehicles 402-424. A first plurality of vehicles 402-424 travel in travel direction 482 on road 480, while vehicle 408 travels in travel direction 484 on road 480. Additionally, one or more vehicles, such as vehicle 410, travel on road 486. Vehicles 402-424 may correspond to vehicle 100.
[0096] Ego vehicle 402 may identify data that it needs to perform an autonomous operation. For instance, processing system 284 of ego vehicle 402 may receive an indication from one or more components of ego vehicle 402 that data is needed to perform an autonomous operation. The data may be otherwise unavailable in memory 206. Accordingly, processing system 284, executing instructions 208, may cause ego vehicle 402 to seek data from base station 405. However, communication range 450 of base station 405 may not extend to a location of ego vehicle 402. Therefore, in response to identifying that ego vehicle is located outside communication range 450, processing system 284 may cause ego vehicle to initiate broadcast of a request message, such as request messages 430, which may be sent via one or more sidelink channels.
[0097] Accordingly, processing system 284 may generate request message 430. Request message 430 may include a first set of parameters. A first parameter of the first set of parameters may include a travel indicator indicating a travel direction of ego vehicle 402, a location indicator indicating a road identification (ID) on which ego vehicle 402 travels, or both. For instance, the location indicator may indicate that ego vehicle 402 travels on road 480. Additionally, the location indicator may include a road segment ID indicating a location of a segment of a road on which ego vehicle 402 travels at an instant of time at which ego vehicle 402 broadcasts request message 430. The first parameter may also indicate at least a first criterion for a vehicle that receives request message 430 (e.g., a receiving vehicle) to initiate a broadcast of a relay message, such as relay message 432.
[0098] The at least the first criterion may include or correspond to a condition that the receiving vehicle travels in a same direction and on a same road as ego vehicle 402.
[0099] Further, a second parameter of the first set of parameters may include or correspond to an index indicating implementation of the message mediated multi hop relay communication protocol. In response to receipt of response message 430 and based on the index, the receiving vehicle may determine that a message mediated multi hop relay communication protocol as described herein is being implemented. Additionally, a third parameter of the first set of parameters may be an identifier indicating an identity of ego vehicle 402. The identity of ego vehicle 402 may include or correspond to a code that uniquely identifies ego vehicle 402. For instance, the code may include or correspond to a vehicle identification number (VIN) .
[0100] Additionally, a fourth parameter of the first set of parameters may be a data indicator indicating data requested by ego vehicle 402. For instance, the data indicator may be a pointer identifying a location in a memory, such as a memory of base station 405 or a server associated with base station 405, in which the requested data is located. In implementations, request message 430 may include or correspond to one or more messages described in one or more technical standards and in which fields of the one or more messages are repurposed to implement the functionality described in the disclosure hereof.
[0101] Further, a fifth parameter of the first set of parameters may be a distance indicator indicating a maximum permissible distance between a receiving UE and a broadcasting UE. The distance indicator may be predicated on the road segment ID. For instance, a message received by the receiving UE, such as request message, a relay message, or a response message, may include a road segment ID associated with the broadcasting UE, identifying a segment of the road on which the broadcasting UE was positioned at a time at which it broadcasted the message. Based on data received by the receiving UE from sensor hub 250, the receiving UE may identify a road segment ID associated with a position of the receiving UE at a time at which the receiving UE receives the message from the broadcasting UE. Accordingly, based on the two road segment IDs, the receiving UE may approximate a distance separating the receiving UE from the broadcasting UE. In response to the distance exceeding a maximum permissible distance indicated by the distance indicator, the receiving UE may cease initiation of broadcast of a message.
[0102] According to other aspects, the first set of parameters may further include a decrement value and the distance indicator may be configured to be decremented by the decrement value at each hop in the multi-hop relay. According to additional aspects, the first set of parameters further may include an update function. In such case, the distance indicator may be configured to be updated according to the update function at each hop in the multi-hop relay. The update function can be based on at least one of a number of hops, a distance between hops, or a time delay between hops.
[0103] Processing system 284 may initiate broadcast, via a communication interface of ego vehicle such as via WAN 252, of request message 430. For example, ego vehicle 402 may broadcast request message 430 on one or more data sidelink channels, one or more control sidelink channels, or both. A plurality of vehicles, such as vehicles 404, 406, 408, 410, and 412 may receive broadcasted request message 430. Receiving vehicles 404-412 may decode request message 430. In response to decoding request message 430, one or more receiving vehicles 404-412 may determine that they do not satisfy the at least the first criterion indicated by the first parameter included in the first set of parameters. For example, vehicle 408 travels on road 480 but in travel direction 484. Accordingly, vehicle 408 may determine that it fails to satisfy the at least the first criterion. As another example, vehicle 410 may determine that it travels on road 486. Accordingly, vehicle 410 may determine that it fails to satisfy the at least the first criterion.
[0104] In contrast, vehicles 404, 406, and 412 may determine, based on decoding request message 430, that they satisfy the at least the first criterion. For instance, vehicles 404, 406, and 412 may determine that they travel on the same road (e.g., road 480) and in the same direction (e.g., travel direction 482) as ego vehicle 402. Accordingly, each of vehicles 404, 406, and 412 may be configured to initiate a relay operation in response to satisfying the at least the first criterion. In some implementations, as part of the relay operation, in accordance with satisfying the at least the first criterion, and in response to receipt of request message 430, each of vehicles 404, 406, and 412 may set a timer. The timer may include or correspond to a random value selected by each of vehicles 404, 406, and 412 from a range of values stored in a memory of each of vehicles 404, 406, and 412. For instance, vehicle 412 may select a first random value having a smaller magnitude than a second random value selected by vehicles 404 and 406. Further, each of vehicles 404, 406, and 412 may decrement the selected random value with a passage of a unit of time (e.g., decrement a unit of the random value after a passage of each microsecond) . A vehicle of vehicles 404, 406, or 412, the timer of which expires first (e.g., reaches a value of zero first) may be configured to broadcast relay message 432. For example, a timer set by vehicle 412 may expire prior to timers of vehicles 404, 406. Therefore, vehicle 412 may broadcast relay message 432. Additionally, vehicle 412 may broadcast a suppression message (not depicted) . In response to receipt of the suppression message, vehicles 404, 406 may cease initiation of broadcast of a second relay message. Alternatively, in response to detecting broadcast of relay message 432, vehicles 404, 406 may cease initiation of broadcast of a relay message. While a decrement operation is described with respect to the timers, an increment operation alternatively could be implemented. For example, a timer may be incremented after a passage of each unit of time (e.g., a passage of a microsecond) and the timer may cease incrementing after the timer reaches the randomly selected value.
[0105] Vehicle 412 may determine whether it is within communication range 450. In response to determining that it is not within communication range 450, vehicle 412 may initiate the relay operation. As part of the relay operation, a processing system of vehicle 412 may initiate broadcast of relay message 432. Relay message 432 may include a second set of parameters. A second parameter of the second set of parameters may indicate at least a second criterion for a receiving vehicle that receives the relay message to initiate a broadcast of a second relay message. The second parameter may include the travel indicator indicating the travel direction of ego vehicle 402, a locator indicating a current position of ego vehicle 402, such as a road ID on which ego vehicle 402 travels, a road segment ID at which ego vehicle 402 is located at a time at which relay vehicle 412 initiates broadcast of relay message 432, or a combination thereof. Additionally or alternatively, the second parameter may include a distance indicator indicating a maximum permissible distance between vehicle 412 and a vehicle that receives relay message 432 (e.g., a receiving vehicle) for the receiving vehicle to initiate broadcast of a second relay message. The maximum permissible distance may be a distance indicated or set by ego vehicle 402 and included as a parameter of the first set of parameters.
[0106] In some implementations, each relay vehicle may be configured to check whether it is in-coverage or out-of-coverage to determine if it is the last hop in the multi-hop relay. For example, a processing system of the relay vehicle may determine, based on signal strength or other indicators, whether the relay vehicle is within communication range of a base station or other network node. If the relay vehicle determines that it is in-coverage, it may transmit the relay message to the network node via an uplink channel. Prior to sending the relay message to the network node, the relay vehicle may broadcast a sidelink message to block other vehicles from further relaying the message.
[0107] To avoid duplicating the relaying of messages, each relay vehicle may maintain a relay buffer. After decoding a relayed packet, the relay vehicle checks the relay buffer to determine if the packet has been received before. If the packet is new, the relay vehicle adds the message packet ID and transmitter vehicle ID to the relay buffer. This allows the relay vehicle to keep track of which messages it has already processed and avoid relaying the same message multiple times.
[0108] In some implementations, it is not necessary for the relay vehicle to buffer the entire relayed packet. Instead, the relay vehicle may store just the message packet ID and transmitter vehicle ID, which are sufficient to uniquely identify the packet and avoid duplication.
[0109] To manage the size of the relay buffer and ensure it does not grow indefinitely, the relay vehicle may be configured to erase entries from the buffer after a preconfigured period of time has elapsed since the packet was last decoded. Alternatively, the relay vehicle may erase entries from the buffer using a first-in-first-out (FIFO) approach, where the oldest entries are removed when the buffer reaches a certain size. The specific time period or buffer size used for relay buffer management may be preconfigured in the relay vehicle.
[0110] To initiate broadcast of relay message 432, the processing system of vehicle 412 may generate relay message 432 based on request message 430. For example, the second set of parameters included in relay message 432 may include or correspond to the first set of parameters, some of which the processing system of vehicle 412 may modify. Additionally or alternatively, the second set of parameters included in relay message 432 may include different or additional parameters than the first set of parameters included in request message 430. For example, a parameter of the first set of parameters may include a hop indicator indicating a maximum allowed quantity of hops. Vehicle 412 may modify the hop indicator by decrementing a value of the hop indicator to indicate that a first hop occurred (e.g., broadcast, by ego vehicle 402, of request message 430) . The processing system of vehicle 412 may include the modified hop indicator as a parameter of the second set of parameters included in relay message 432. Alternatively, a hop indicator may be set to 0 in request message 430, and vehicle 412 may modify the hop indicator by incrementing a value of the hop indicator to indicate that the first hop occurred.
[0111] Vehicle 412 may broadcast relay message 432, and vehicles 414-418 may receive the broadcasted relay message 432. For instance, vehicle 412 may broadcast relay message on one or more sidelink channels. As depicted in FIG. 4, each of vehicles 414-418 may satisfy the at least the second criterion. For instance, each of vehicles 414-418 may travel on road 480 and in direction 482, which is the same path and same travel direction traveled by ego vehicle 402. However, as another example, one or more of vehicles 414-418 may not satisfy the at least the second criterion. To illustrate, the at least the second criterion may, in addition to conditioning initiation of a subsequent relay operation on a vehicle traveling on the same road and in the same direction as ego vehicle 402, may also condition the subsequent relay operation on a vehicle being within a threshold distance of vehicle 412. In such an implementation, one or more of vehicles 414, 416, or 418 may not satisfy the at least the second criterion. For example, in response to receiving relay message 432, vehicle 418, decoding relay message 432, may determine, based on the second parameter indicating the second criterion, that a distance separating vehicle 418 and vehicle 412 exceeds the maximum distance. Accordingly, vehicle 418 may ignore relay message 432. In contrast, vehicles 414 and 416 may satisfy the at least the second criterion. For instance, the at least the second criterion indicated by the second parameter may include that a receiving vehicle, such as vehicles 414, 416, are within a threshold distance of a broadcasting vehicle, such as vehicle 412 in addition to that the receiving vehicle is traveling on the same road and in the same direction as the broadcasting vehicle, ego vehicle 402, or both.
[0112] Accordingly, based on decoding relay message 432, the processing system of each of vehicle 414, 416 may determine that each of vehicle 414, 416 satisfy the at least the second criterion. In some implementations, each of vehicle 414, 416 may set a timer in accordance with determining that they satisfy the at least the second criterion. As shown in FIG. 4, the timer set by vehicle 416 expires prior to the timer set by vehicle 414. Accordingly, vehicle 416 broadcasts second relay message 434. Additionally, vehicle 416 may broadcast a second suppression message (not depicted) such that a receiving vehicle (e.g., a vehicle receiving the second suppression message) , such as vehicle 414, ceases initiation of broadcast of a relay message in response to receipt of the suppression message. In other implementations, a different or alternative technique may be used to select one of vehicle 414, 416 to broadcast second relay message 434. For instance, in lieu of setting a timer, whichever of vehicle 414, 416 first receives relay message 432 may broadcast second relay message 434 and suppression message. As another example, in lieu of broadcasting a suppression message, vehicle 414 may, in response to detecting broadcast, by vehicle 416 of second relay message 434, may cease initiation of broadcast of a third relay message.
[0113] Vehicles 420, 422, and 424 may receive second relay message 434. In response to receipt of second relay message 434, each of vehicles 420, 422, and 424 may determine whether they are within communication range 450. As depicted in FIG. 4, vehicle 424 is within communication range 450. Accordingly, in response to identifying that vehicle 424 is within communication range 450, a processing system of vehicle 424 may broadcast a third suppression message (not depicted) over one or more sidelink channels. In response to receipt of the third suppression message, vehicles 420, 422 may ignore second relay message 434.
[0114] Additionally, vehicle 424 may send third relay message 436 to node 405 via, for example, an uplink (UL) channel, such as a a physical uplink control channel (PUCCH) , a physical uplink shared channel (PUSCH) , or both. Like relay message 432 and second relay message 434, third relay message 436 may be generated based on request message 430. Additionally, third relay message 436 may include a third set of parameters that include or correspond to the second set of parameters, the first set of parameters, or both. In implementations, vehicle 424 may modify values of one or more parameters of the third set of parameters relative to values of the first set of parameters, the second set of parameters, or both. A parameter of the third set of parameters may include a data indicator indicating data requested by ego vehicle 402. For instance, the data indicator may indicate an address in a memory of base station 405 at which the requested data may be stored.
[0115] Base station 405 may decode third request message 436. Based on the data indicator included in the third request message 436, other parameters of the third set of parameters, or both, base station 405 may generate response message 438. Base station 405 may generate response message 438 in accordance with third relay message 436. For instance, response message 438 may include a fourth set of parameters that are analogous to the third set of parameters, some parameters of which base station 405 may modify. Additionally or alternatively, the fourth set of parameters may be distinct from the third set of parameters, may include one or more parameters not included in the third set of parameters, may include additional parameters including the parameters of the third set of parameters, or a combination thereof. To illustrate, a parameter of the fourth set of parameters may include a broadcast direction indicator indicating a broadcast direction of response message 438. Since base station 405 and one or more of vehicles 402-424 may include directional antennas capable of beamforming, a direction at which base station 405 is to broadcast response message 438 may be indicated in the broadcast direction parameter. As shown in FIG. 4, the broadcast direction of response message 438 is distinct from (e.g., opposite to) a broadcast direction of third relay message 436. Accordingly, a broadcast direction indicator included in the fourth set of parameters of response message 438 may distinct from a broadcast indicator included in the third set of parameters of third relay message 436. Further, a parameter of the fourth set of parameters may indicate at least a third criterion for a receiving vehicle, such as a vehicle receiving response message 438, to generate and broadcast a subsequent response message based on response message 438. The at least the third criterion may be analogous to the at least the first criterion, the at least the second criterion, or both. Base station 405 may be configured to transmit response message 438 to vehicle 424 via an downlink (DL) channel such as via a physical downlink control channel (PDCCH) , a physical downlink shared channel (PDSCH) , or a combination thereof.
[0116] Operations associated with response message 438 are described with reference to FIG. 5. FIG. 5 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects. System 500 includes base station 405 and roads 480, 486 as in system 400. Further, as in system 400, vehicles are configured to travel in travel directions 482, 484 on road 480. Additionally, system 500 includes ego vehicle 402, vehicle 424, and vehicles 520-534. While one or more of vehicles 520-534 may be the same vehicles as one or more of vehicles 404-422, due to dynamism of traffic flow, it is more likely that vehicles 520-534 are not the same vehicles as vehicles 404-422. System 500 is analogous to system 400, but depicts an instance of time subsequent to an instance of time depicted in FIG. 4. For example, FIG. 5 depicts operations that occur after vehicle 424 receives response message 438 from base station 405.
[0117] Each of vehicles 424 and 522-534 are configured to generate and broadcast second, third, fourth, and subsequent response messages based on response message 438 in a manner analogous to the generation and broadcast of relay messages. However, unlike relay messages, which carry a data request, the response messages carry the data corresponding to the data request. To illustrate, vehicle 424 may generate second response message 552 based on response message 438. Second response message 552 may include a fifth set of parameters, a parameter of which may indicate at least a fourth criterion for a vehicle that receives second response message 552 to generate and broadcast a third response message based on second response message 552. The at least the fifth criterion may include that the receiving vehicle travels on road 489, in direction 482, or both. Additionally or alternatively, the at least the fifth criterion may include that the receiving vehicle is within a threshold distance from the broadcasting vehicle.
[0118] Vehicle 424 may broadcast second response message 552, which vehicles 522-528 may receive. Vehicles 522-528 may decode second response message 552. Vehicles 524, 528 may determine, based on decoding second response message and in accordance with the parameter of the fifth set of parameters indicating the at least the fourth criterion, that vehicles 524, 528 fail to satisfy the at least the fourth criterion. For instance, vehicle 524 travels on road 486 while vehicle 528 travels in direction 484. Accordingly, vehicles 524, 528 fail to satisfy the at least the fourth criterion in which a condition is that a vehicle is to travel on the same road and in the same direction as ego vehicle 402. In contrast, vehicles 522, 526 may satisfy the at least the fourth criterion. Accordingly, in response to determining that vehicles 522, 526 satisfy the at least the fourth criterion, vehicles 522, 526 may set timers as described with reference to FIG. 4. As shown in FIG. 5, since the timer set by vehicle 526 expired prior to the timer set by vehicle 522, vehicle 526 may broadcast third response message 554 and may also broadcast a suppression message. In response to receipt of the suppression message, vehicle 522 may cease initiation of broadcast of a response message. Alternatively, in response to detecting that vehicle 526 broadcasted third response message 554, vehicle 522 may cease initiation of broadcast of a response message. In like manner, vehicle 526 may broadcast fourth response message 554, and vehicle 530 may broadcast fifth response message 556. Upon receipt of fifth response message 556, ego vehicle 402 may decode fifth response message 556. Based on data included in decoded fifth response message 556, ego vehicle 402 may perform an autonomous operation (e.g., an autonomous driving operation) .
[0119] FIG. 6 is a block diagram illustrating a system to facilitate message mediated multi hop relay communication according to one or more aspects. System 600 includes user equipment (UE) 602, UEs 620, 636, and node 638 (e.g., a base station) . While two UEs 620, 636 are depicted, system 600 may include additional UEs. UE 602 may include or correspond to ego vehicle 402, and UEs 620, 636 may include or correspond, respectively, to ego vehicle 402, vehicles 406-424 and vehicles 522-534. Node 638 may include or correspond to base station 405.
[0120] UE 602 includes processing system 604 and communication interface 616. Processing system 604 may include or correspond to processing system 284. Processing system includes one or more processors 606 (hereinafter referred to as “processor 606” ) and one or more memories 608 (hereinafter referred to as “memory 608” ) . Communication interface 616 may include or correspond to I / O components 216, one or more antennas, one or more transceivers, or the like.
[0121] Memory 608 is configured to store instructions 610, data 612, and parameters 614. Processor 606, when executing instructions 610, may be configured to implement the functionality described herein to facilitate message mediated multi hop relay communication. Data 612 may include or correspond to data to enable UE 602 to perform one or more autonomous operations. Parameters 614 may include or correspond to a set of parameters (e.g., a first set of parameters, a second set of parameters, etc. ) . For example, parameters 614 may include an index indicating implementation of a message mediated multi hop relay communication protocol such that, in response to receipt of a message that includes the index, a receiving UE (e.g., a receiving vehicle) implements the message mediated multi hop communication protocol described herein. Additionally, parameters 614 may include an identifier indicating an identity of a broadcasting UE. The broadcasting UE may be any UE configured to broadcast a message, such as a request message, a relay message, a response message, or a combination thereof. Further, parameters 614 may include a travel indicator indicating a travel direction of the broadcasting UE. For instance, if the broadcasting UE corresponds to UE 602 (e.g., the ego vehicle) , the travel indicator may indicate a travel direction of the ego vehicle. Moreover, parameters 614 may include a locator indicating a position of the broadcasting UE. The position may identify a path traveled by the broadcasting UE (e.g., a road ID) , a segment of the path at which the broadcasting UE is located at a time at which the broadcasting UE broadcasts the message (e.g., a road segment ID) , or both. Further, parameters 614 may include a broadcast direction indicator indicating a broadcast direction of the message. Additionally, parameters 614 may include a hop indicator indicating a maximum allowed quantity of hops. Further, parameters 614 may include a distance indicator indicating a maximum permissible distance between a receiving UE and the broadcasting UE. The receiving UE (e.g., a receiving vehicle) may be configured to receive the request message, the relay message, the response message, or a combination thereof. As another example, parameters 614 may include a data indicator indicating data requested by the broadcasting UE, such as data 612. In some implementations, parameters 614 may include or correspond to one or more fields of messages already used to facilitate communication protocols according to one or more standards.
[0122] UE 620 includes processing system 622 and communication interface 634. Processing system 622 may be analogous to processing system 604. Additionally, processing system includes one or more processors 606 (hereinafter referred to as “processor 624” ) and one or more memories 626 (hereinafter referred to as “memory 626” ) . Processor 624 may be analogous to processor 606, and memory 626 may be analogous to memory 608. Further, communication interface 634 may be analogous to communication interface 634.
[0123] Memory 626 include instructions 630 and parameters 632. Instructions 630 may be analogous to instructions 610 and, when executed by processor 624, may implement one or more functionalities described herein with reference to message mediated multi hop relay communication. Parameters 632 may include or correspond to parameters 614.
[0124] UE 636 may include components similar to those described with reference to UEs 602, 620. Node 638 (e.g., a base station) may including processing system 640 and communication interface 650. Processing system 640 includes one or more processors 642 (hereinafter referred to as “processor 642” ) and one or more memories (hereinafter referred to as “memory 644” ) . Processing system 640 and its components may be configured to perform functionality similar to functionalities described with reference to processing systems 604, 622 and their respective components. Memory 644 includes instructions 646 and parameters 648. Instructions 646 and parameters 648 may correspond to (e.g., may be analogous to) instructions 610, 630. Parameters 648 may correspond to (e.g., may be analogous to) parameters 614, 632.
[0125] Memory 644 may be configured to store instructions 646, parameters 648, and data 652. Instructions 646, when executed by processor 642, may configure node 638 to perform the functionality described herein with reference to message mediated multi hop relay communication. Parameters 648 may include, correspond to, or be analogous with parameters 614, 632. Data 652 may include or correspond to one or more instances of data, such as may facilitate an autonomous operation. For instance, data 652 may include or correspond to one or more instances of data associated with a data request.
[0126] During a cycle of operation, processing system 604 of UE 602 may receive an indication that data 612 is missing or unavailable. Accordingly, in response to receipt of the indication, processing system 604 may generate request message 652. Request message includes first set of parameters 654. First set of parameters 654 may include or correspond to one or more of parameters 614. Further, first set of parameters 654 may include a first parameter indicating at least a first criterion for a receiving UE, such as UE 620, to initiate broadcast of a relay message, such as relay message 660, generated in accordance with request message 652. The at least the first criterion may include or correspond to a condition that the receiving UE travels on a same road (e.g., having the same road ID) and in a same direction as UE 602. However, the at least first criterion may include other or different conditions. For instance, the at least first criterion may additionally indicate that a distance separating a UE that receives request message (e.g., UE 620) from a UE that broadcasts the request message (e.g., UE 602) may not exceeds a threshold distance, such as indicated by the first parameter.
[0127] Additionally, request message 652 includes data request 680. Data request 680 may include or correspond to request, initiated by processing system 604, for the missing or unavailable data. In particular, data request 680 may identify the missing or unavailable data. For instance, data request 680 may be a pointer identifying an address in a memory of node 638 or other device at which the missing or unavailable data may be located.
[0128] UE 602 may broadcast generated requested message 652. For example, UE 602 may broadcast request message 652 via one or more sidelink channels. A plurality of UEs (not depicted) that include UE 620 may receive request message 652. The processing system of each receiving UE, such as processing system 622 of UE 620, may decode request message 652. In response to determining, in accordance with the first parameter of first set of parameters 654 indicating the at least the first criterion, that UE 620 satisfies the at least the first criterion, processing system 622 of UE 620 may initiate broadcast of relay message 656.
[0129] To initiate broadcast of relay message 656, processing system 622 may generate relay message 656. Relay message 656 includes second set of parameters 658 and data request 682, which may include or correspond to data request 680. Second set of parameters may include or correspond to first set of parameters 654. In other implementations, processing system 622 may modify one or more parameters of first set of parameters 654 to generate second set of parameters 658 or to include among second set of parameters 658. For example, processing system 622 may modify a first value of a hop indicator of first set of parameters 654 to include among second set of parameters 658. The hop indicator may indicate a maximum allowed quantity of hops. For example, a first value of the hop indicator included among first set of parameters 654 may indicate a maximum of x hops. To generate relay message 656 that includes the hop indicator among second set of parameters 658, processing system 622 may decrement the hop indicator to indicate x-1 hops. In this manner, relay message 656 indicates that a hop, from UE 602 to UE 620, has already occurred.
[0130] As another example, processing system 622 may modify a second value of a distance indicator of first set of parameters 654 to include among second set of parameters 658. The distance indicator may indicate a maximum permissible distance between a receiving UE and a broadcasting UE. When included in first set of parameters 654, distance indictor may indicate a maximum permissible distance separating broadcasting UE, such as UE 602, from a receiving UE, such as UE 620. However, when included in second set of parameters 658, processing system 622 may modify the distance indicator to indicate a maximum allowable distance separating broadcasting UE 620 from receiving UE 636.
[0131] Prior to broadcasting relay message 656, processing system 622 of UE 620 may determine whether UE 620 is within a communication range of a node (e.g., a base station) , such as node 638. In response to determining that UE 620 is not within the communication range of node 638, UE 620 may broadcast relay message 656. A second plurality of UEs (not depicted) that include UE 636 may receive the broadcasted relay message 656 and a processing system of each UE of the second plurality of UEs may decode received relay message 656. A second parameter of the second set of parameters 658 may indicate an at least a second criterion for the receiving second plurality of UEs to broadcast a second relay message, such as relay message 660. The at least the second criterion may be the same as the at least the first criterion. Alternatively, the at least the second criterion may be distinct from the at least the first criterion, may include other conditions in addition to those of the at least the first criterion, may include fewer conditions that those of the at least the first criterion, or any of the foregoing.
[0132] A processing system of one or more of the second plurality of UEs may determine that the one or more UEs fail to satisfy the at least the second criterion. For example, the at least the second criterion may correspond to a parameter indicating a maximum permissible distance separating the broadcasting UE, such as UE 620, from the receiving UE of the second plurality of UEs. Based on a locator indicating a position of the broadcasting UE (e.g., a road segment ID indicating a road segment at which UE 620 is located) and included among second set of parameters 658, the receiving UE of the second plurality of UEs may determine that the distance separating the receiving UE from UE 620 exceeds the threshold distance. Accordingly, the receiving UE may ignore relay message 656 by ceasing steps to initiate broadcast of a second relay message, such as relay message 660.
[0133] However, other UEs of the second plurality of UEs, such as UE 636, may satisfy the at least the second criterion. For instance, a processing system of UE 636 (e.g., analogous to processing system 622 of UE 620) may determine, in accordance with one or more parameters of second set of parameters 658, that UE 636 satisfies the at least the second criterion. To illustrate, based on the locator indicator indicating the position of the broadcasting UE, such as UE 620, the processing system of UE 636 may determine that a distance separating UE 620 from UE 636 is within the threshold distance indicated by a distance indicator denoting a maximum permissible distance between a receiving UE, such as UE 636, and the broadcasting UE, such as UE 620, and included among second set of parameters 658. Accordingly, in response to determining that the at least the second criterion indicated by a parameter of second set of parameters 658 is satisfied, the processing system of UE 636 may initiate broadcast of a second relay message, such as relay message 660.
[0134] To initiate broadcast of relay message 660, the processing system of UE 636 is configured to generate relay message 660. Relay message 660 includes third set of parameters 662 and data request 684. Third set of parameters 662 may include or correspond to second set of parameters 658. Alternatively or additionally, one or more parameters of third set of parameters 662 may be in addition to second set of parameters 658, different from the second set of parameters 658, less than second set of parameters 658, or a combination thereof. Further, the processing system of UE 636 may modify one or more of the parameters of third set of parameters 662 that are common to second set of parameters 658. For instance, as above, a first value of a hop indicator of second set of parameters 658 may indicate a maximum of x-1 hops that may be performed. The processing system of UE 620 may modify a second value of the hop indicator included in third set of parameters 662 to indicate a maximum of x-2 hops that may be performed. In this manner, a memory of the quantity of hops already performed may be maintained. Data request 684 may be the same as data requests 682, 680
[0135] Prior to broadcasting relay message 660, a processing system of UE 636 may determine whether UE 636 is within communication range of a node, such as node 638. In response to determining that UE 636 is within communication range of node 638, the processing system of UE 636 may transmit relay message 660 to node 638 via a PUCCH, a PUSCH, or both. Accordingly, processing system 640 of node 638 may decode relay message 660. In response to data request 684 included in relay message 660, processing system 640 may be configured to identify data corresponding to data request 684. For example, processing system 640 may identify data 652 as corresponding to data request 684.
[0136] Additionally, processing system 640 may be configured to generate response message 664. Response message 664 may include data 668 and fourth set of parameters 670. Data 668 may include or correspond to data identified in relay message 660 and associated with data request 684.
[0137] Fourth set of parameters 670 may include or correspond to third set of parameters 662. Additionally or alternatively, fourth set of parameters 670 may include additional, fewer, or different parameters from third set of parameters 662. Further, processing system 640 may modify one or more parameters of fourth set of parameters 670 that include or correspond to third set of parameters 662. For example, a parameter of fourth set of parameters may include a broadcast direction indicator indicating a broadcast direction of a message (e.g., a request message, a relay message, a response message, or a combination thereof) . When included in third set of parameters 662, the broadcast direction indicator may indicate a first broadcast direction. However, when included in fourth set of parameters 670, processing system 640 may modify the broadcast direction indicator to indicate a second broadcast direction opposite to the first broadcast direction. As another example, a parameter of third set of parameters 662 may include a hop indicator indicating a maximum allowed quantity of hops. The hop indicator may indicate that the maximum quantity of hops is 0 hops, denoting that node 638 was the last allowed hop corresponding to a message. Processing system 640 may reinitialize a value of the hop indicator to indicate a maximum quantity of hops, such as x hops, to facilitate relay of a response message through system 600.
[0138] Additionally, node 638 may transmit response message 664 to UE 636. For example, node 638 may transmit response message 664 to UE 636 via a physical downlink control channel (PDCCH) , a physical downlink shared channel (PDSCH) , or both. Based on receipt of response message 664, a processing system of UE 636 may be configured to initiate broadcast of a second response message, such as response message 672. The processing system of UE 636 may be configured to generate response message 672 based on response message 664. For example, the processing system of UE 636 may be configured to include fifth set of parameters 676 in response message 672 that are based on fourth set of parameters 670. Further, the processing system of UE 636 may be configured to modify one or more parameters of fourth set of parameters 670 included among fifth set of parameters 676. A parameter of fifth set of parameters 676 may indicate an at least a third criterion for a UE that receives response message 672 to initiate broadcast of a third response message. For example, the at least the third criterion could correspond to a condition that the UE that receives response message 672 travels on a same road and in a same direction as UE 602. Further, the processing system of UE 636 may include data 674 in response messages 672. Data 674 may correspond to data 668.
[0139] The processing system of UE 636 may initiate broadcast of response message 672, and a plurality of UEs (not depicted) that include UE 620 may receive response message 672. Each UE of the plurality of UEs may decode response message 672. Among the plurality of UEs may be UEs that fail to satisfy the at least the third criterion indicated by a parameter of fifth set of parameters 676. For example, a first UE of the plurality of UEs may travel on a different road that one on which UE 602 travels. For instance, a processing system of first UE of the plurality of receiving UEs (e.g., the UEs that receive response message 672) may compare a first road ID, included among fifth set of parameters 676, and that indicate a road on which UE 602 travels with a second road ID stored in a memory of the processing system and that indicate an identity of the road on which the first UE travels. In response to determining that the road on which the first UE travels is distinct from a road on which UE 602 travels, the first UE may ignore response message 672.
[0140] In contrast, UE 602 may satisfy the at least the third criterion indicated by the parameter of fifth set of parameters 676. In response to determining that UE 602 satisfies the at least the third criterion indicated by the parameter, processing system 622 may initiate broadcast of response message 678. For example, processing system 622 may compare the first road ID included in fifth set of parameters 676 against a second road ID indicated by a parameter of parameters 632 stored in memory 626 and that denotes a road on which UE 620 travels. In response to identifying that the two road IDs are identical, processing system 622 may initiate broadcast of response message 678.
[0141] To initiate broadcast of response message 678, processing system 622 may generate response message 678 based on response message 672. Response message 678 may include data 690 and sixth set of parameters 692. Data 690 may include or correspond to data 674, 668. Sixth set of parameters 692 may include fifth set of parameters 676. Processing system 622 may modify one or more parameters of fifth set of parameters 676 that are included among sixth set of parameters 692. UE 620 may broadcast request message 678, and UE 602, which may be within a communication range of UE 620, may receive response message 678.
[0142] Processing system 604 of UE 602 may decode response message 678. Additionally, processing system 604 may extract data 690 and may execute an autonomous operation (e.g., an autonomous driving operation) in accordance with data 690. Further, in response to receipt of response message 678, UE 602 may broadcast a suppression message. When received by other UEs, the suppression message may cause the receiving UEs to cease broadcasting any relay messages, response messages, or both.
[0143] The disclosed message mediated multi hop relay communication protocol provides several advantages. One such advantage includes improved message broadcasting and reception. In a conventional multi hop relay system, a UE may be randomly selected to perform the function of a broadcasting UE that broadcasts a message. However, the selected UE may be poorly positioned to broadcast the message, to receive the message, or both. For example, the randomly selected UE may be distant from other UEs. Consequently, signals bearing messages broadcast or received by the selected UE may be attenuated and the associated data may be corrupted.
[0144] In contrast, by including, in messages, a parameter that indicates an at least a criterion for a UE that receives the message (e.g., a receiving UE) to initiate broadcast of the message, a broadcasting UE may be rapidly selected that provides improved message transmission. To illustrate, the at least one criterion indicated by the parameter may include or correspond to a maximum allowable distance indicator establishing a maximum distance between a receiving UE and the broadcasting UE. A receiving UE that fails to satisfy the foregoing criterion (e.g., exceeds the distance) may be a poor candidate for broadcasting a message based on the received message, since the signal carrying the message may be attenuated, with the result that the message and the data included in it may be corrupted. Accordingly, selecting a broadcasting UE based on an at least one criterion indicated by a parameter included in the message enhances broadcast and reception quality.
[0145] Another advantage includes a reduced likelihood of message flooding. In a conventional multi hop relay system, a plurality of UEs may broadcast a same message. Accordingly, over many hops and multiple UEs, a volume of broadcast messages may increase substantially. As a consequence, a communication network may be overwhelmed with messages.
[0146] In contrast, the disclosed message mediated multi hop relay communication protocol facilitates, for each hop, selection of a UE to broadcast the message. To illustrate, while a plurality of UEs may receive a broadcasted message, such as a broadcasted relay message, a subset of the plurality of UEs, constituting fewer than the plurality of UEs, may satisfy the at least one criterion indicated by a parameter included in the message to initiate broadcast of a message based on the received message. Additionally, among the subset of UEs that satisfy the at least one criterion, the UEs may set a timer, constituting a value selected from a range of values. The UE, the timer of which expires prior to the timers set by the other UEs, may broadcast the message and also may broadcast a suppression message that, when received by the other UEs, prevents the other UEs from also broadcasting the same message. In this manner, for each hop of a multi relay communication protocol, a single UE may broadcast the message, thereby obviating message flooding.
[0147] In some implementations, no UE may satisfy criteria (e.g., an at least one or more criterion) to receive response message 664 from node 638. For example, no UE may be sufficiently close to node 638 to receive response message 664. Accordingly, node 638 may delay transmission of response message 664 until a suitable UE is available to receive response message 664 and to ultimately relay response message 664 to UE 602. A suitable UE may include or correspond to a UE that satisfies one or more criteria stored in memory 644 of node 638.
[0148] Alternatively, based on a velocity of a UE or other UE characteristics obtained by node 638, node 638 may identify a UE likely to approach UE 602. Node may transmit response message 664 to such a UE, referred to as a carry UE. When the carry UE is proximate to UE 602, the carry UE may transmit a pinging message to UE 602 to establish a channel between the carry UE and UE 602. After establishing the channel, the carry UE may transmit the data corresponding to data request 680 via the established channel.
[0149] FIG. 7 is a ladder diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects. Depicted in FIG. 7 are UEs 702-710 and node 712. UEs 702-710 may include or correspond to vehicles 402-424, vehicles 522-534, UEs 602, 620, 636, or combinations thereof. Node 712 may include or correspond to base station 405, node 638, or combinations thereof. At block 720, UE 702 generates data request. For example, processing system of 604 of UE 602 may indicate an absence of data. At block 722, UE 702 broadcasts request message, such as request message 652, which may be received by UEs 704-708. At blocks 724-728, UEs 704-708 determine whether they are within communication range of node 712. In response to determining that they are not, the process continues. At block 730, UE 704 may determine that it does not satisfy an at least first criterion indicated in a parameter of a set of parameters included in the request message. Accordingly, UE 704 ignores the request message. In contrast, at blocks 732, 734, UEs 706, 708 may determine that they satisfy the at least the first criterion. Thus, at blocks 735, 738, each of UEs 706, 708 set a timer. At block 742, the timer set by UE 708 expires prior to a timer set by UE 706, which expires at block 740. Therefore, in response to expiration of its timer and at block 744, UE 708 broadcasts a relay message, such as relay message 660. Additionally, at block 746, UE 708 broadcasts a suppression message. While depicted as occurring later in time than broadcast of the relay message, UE 708 may broadcast the suppression message simultaneously with or prior to broadcast of the relay message. In response to receipt of the suppression message, UE 706 may cease initiating broadcast of a relay message. Alternatively, in some implementations, no suppression message may be broadcast. Accordingly, in such implementations, in response to detecting broadcast of the relay message, UE 706 may cease initiating broadcast of a relay message.
[0150] UE 710 receives the broadcasted relay message. In response to receipt of the relay message, UE 710 determines whether it is within communication range of node 712. In response to determining that it is within communication range of node 712, at block 760, UE 710 sends relay message to node 712 via an uplink channel. Based on the received relay message that includes the data request, node 712 may identify data corresponding to the data request.
[0151] FIG. 8 is a ladder diagram illustrating an example process that supports message mediated multi hop relay communication according to one or more aspects. Depicted in FIG. 8 are UEs 702, 710, 804-810, and node 712. UEs 702, 710, 804-810 may include or correspond to vehicles 402-424, vehicles 522-534, UEs 602, 620, 636, or combinations thereof. Node 712 may include or correspond to base station 405, node 638, or combinations thereof.
[0152] At block 820, UE 710 sends a relay message, such as relay message 660, to node 712. At block 822, node 712 sends a response message that includes data indicated by the data request included in the relay message to UE 710. The response message may include or correspond to response message 664. At block 824, UE 710 broadcasts the response message, which is received by UEs 806-810. At blocks 832-836, each of UEs 826-830 determine whether they satisfy an at least a first criterion included in a parameter of a set of parameters of the received response message. At block 834, UE 808 determines that it does not satisfy the at least the first criterion. Thus, UE 808 ignores the received response message. However, at blocks 832, 836, UEs 806, 810 determine that they do satisfy the at least the first criterion. Accordingly, at blocks 838, 846 each of UEs 806, 810 set timers. At block 842, the timer set by UE 810 expires prior to the timer set by UE 806. Thus, UE 810 broadcasts a response message. Additionally, at block 847, UE 810 broadcasts a suppression message, which is received by UE 806. In response to receipt of suppression message, UE 806 ceases initiation of a broadcast of a response message. In response to receipt of the response message, at blocks 848 and 850, UE 804 determines that it satisfies an at least second criterion included in the received response message and sets a timer in response to determining that it satisfies the at least the second criterion. In response to expiration of the timer, at block 854, UE 804 broadcasts the response message, which is received by UE 702. In response to receipt of the response message, UE 702 broadcasts a suppression message to stop broadcast of any additional messages (e.g., relay messages, response messages) .
[0153] FIG. 9 is a flow diagram illustrating an example process 900 that supports message mediated multi hop relay communication according to one or more aspects. Operations of process 900 may be performed by a vehicle, such as vehicle 100, 402; UE 315, 602, 702; or both described above with reference to FIGs. 1-8. Example operations (also referred to as “blocks” ) of process 900 may enable vehicles or UEs as described in this disclosure to support message mediated multi hop relay communication.
[0154] At block 902, a processing system associated with a vehicle, a UE, or both initiates a first broadcast of a request message that includes a first set of parameters. The first set of parameters includes a first parameter indicating at least a first criterion for a first UE to initiate a second broadcast of a relay message. For example, processing system 604 of UE 602 initiates a first broadcast of request message 652 that includes first set of parameters 654. First set of parameters 654 includes a first parameter indicating at least a first criterion for a first UE, such as UE 620, to initiate a second broadcast of a relay message, such as relay message 660. The at least the first criterion may include or correspond a condition or selection criterion that a UE receiving the request message (e.g., a receiving UE) satisfies to initiate the broadcast of the request message.
[0155] At block 904, a processing system associated with a vehicle, a UE, or both receives, in response to the broadcast of the request message, a response message. For example, in response to broadcast of request message 652, processing system 604 of UE 602 receives response message 678. The response message includes data indicated by the request message and comprises a second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message. For instance, response message 678 includes data 690 and sixth set of parameters 692 that includes a second parameter indicating an at least a second criterion for UE 620 to broadcast response message 678. The response message is received from the second UE in accordance with the second parameter. To illustrate, UE 602 receives response message 678 in accordance with UE 620 satisfying the at least the second criterion indicated by the second parameter. To illustrate, because UE 620 satisfies the at least the second criterion indicated by the second parameter, processing system 622 of UE 620 is configured to initiate broadcast of response message 678. The second UE is configured to receive the response message via a fourth broadcast initiated by a third UE that is within communication range of a node. For instance, UE 620 receives response message 672 via UE 636 that is within communication range of node 638.
[0156] In some implementations, the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to initiate the second broadcast of the relay message. For example, request message 652 when received by UE 620, which satisfies the at least the first criterion, is configured to cause UE 620 to initiate broadcast of relay message 656.
[0157] In some implementations, the relay message is broadcast in response to expiration of a timer set by the first UE in response to receipt, by the first UE, of the request message. For example, relay message 656 is broadcast in response to expiration of a timer set by UE 620 in response to receipt, by UE 620, of the request message 652.
[0158] In some implementations, the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to initiate a fifth broadcast of a suppression message. For example, request message 652, when received by UE 620 satisfying the at least the first criterion, is configured to cause UE 620 to initiate broadcast of a suppression message. The suppression message is configured to prevent other UEs that also received the request message, such as request message 652, from also broadcasting relay messages.
[0159] In some implementations, the suppression message is configured to cause a UE receiving the suppression message and that satisfies the at least the first criterion to cease initiation of a sixth broadcast of a second relay message. For example, and referring to FIG. 7, while UE 702 satisfies the at least the first criterion, receipt, by UE 702 of suppression message broadcast by UE 708, causes UE 702 to cease initiation of broadcast of a second relay message. By suppressing repetitive relay message broadcasts, message flooding may be avoided or obviated.
[0160] In some implementations, the first UE, the second UE, and the third UE each comprise vehicles. For example, referring to FIGs. 7 and 8, UEs 704-710 and UEs 804-810 each comprise vehicles. In some implementations, the UEs comprise autonomous vehicles. For example, UEs 602, 620 636, 704-710, 804-810 may include or correspond to partially or fully autonomous vehicles. In some implementations, the apparatus that includes the processing system configured to initiate broadcast of the request message is associated with UE 602, which is outside of a communication range of node 638.
[0161] In some implementations, the first set of parameters, such as first set of parameters 654, includes an index indicating implementation of a message mediated multi hop relay communication protocol. In some implementations, the first set of parameters includes an identifier indicating an identity of a broadcasting UE, the broadcasting UE configured to broadcast the request message, the relay message, the response message, or a combination thereof. For example, first set of parameters 654 includes an identifier indicating an identity of UE 602. As another example, second set of parameters 658 includes an identifier indicating an identity of UE 620.
[0162] In some implementations, the first set of parameters includes a travel indicator indicating a travel direction of the broadcasting UE. For example, first set of parameters 654 includes a travel indicator indicates a travel direction of UE 602. To illustrate, travel indicator indicates that a UE, such as ego vehicle 402, travels in travel direction 482.
[0163] In some implementations, the first set of parameters includes a locator indicating a position of the broadcasting UE, the position identifying a path traveled by the broadcasting UE, a segment of the path at which the broadcasting UE is located at a time at which the broadcasting UE broadcasts the request message, the relay message, the response message, or a combination thereof, or both. For example, first set of parameters 654 includes a locator that identifies a position of UE 602. The location may include or correspond to a road ID, identifying a path (e.g., a road) on which UE 602 travels, a road segment ID, identifying a segment of the path, or a combination thereof. As another example, second through six set of parameters, 674-692, may include a locator identifying, based on a road ID, a road segment ID, or both, a position of one or more of broadcasting UEs configured to broadcast a request message, a relay message, a response message, or combinations thereof.
[0164] In some implementations, the first set of parameters includes a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof. For example, first set of parameters 654 includes broadcast direction indicator indicating a broadcast direction of request message 652. As another example, fourth set of parameters 670 includes a broadcast direction indicator indicating a broadcast direction of response message 664. The broadcast direction of request message 652 is opposite to the broadcast direction of response message 664.
[0165] In some implementations, the first set of parameters includes a hop indicator indicating a maximum allowed quantity of hops. For example, first set of parameters 654 includes a hop indicator indicating a maximum allowed quantity of hops. Each of second set of parameters 658 through sixth set of parameters 692 may include the hop indicator, modified by the broadcasting device after each hop to indicate a number of hops that have occurred. In response to the hop indicator indicating that the maximum allowed quantity of hops has been met, a broadcasting UE may cease initiation of broadcast of a message.
[0166] In some implementations, the first set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE and the broadcasting UE, the receiving UE configured to receive the request message, the relay message, the response message, or a combination thereof. For example, second set of parameters 658 may include a distance indicator indicating a maximum permissible distance between UE 620 (e.g., a broadcasting UE) and UE 636 (e.g., a receiving UE) . In response to receipt, by UE 636 of broadcasted relay message 656 that includes the distance indicator and in response to a determination, by UE 636, that the distance separating UE 620, 635 exceeds the maximum permissible distance, UE 636 may determine that it does not satisfy an at least a first criterion to broadcast a relay message. In some implementations, UE 636 may determine that the distance exceeds the maximum permissible distance based on a road segment ID included among second set of parameters 658 indicating a segment of the road on which UE 620 was positioned at a time at which it broadcasted relay message 656.
[0167] In some implementations, the first set of parameters includes a date indicator indicating data requested by the broadcasting UE. For example, first set of parameters 654 includes a data indicator, which may include or correspond to data request 680, indicating data requested by UE 602. As another example, relay message 656 includes data request 682 may include or correspond to a data indicator.
[0168] In some implementations, the at least the first criterion includes that the first UE travels in a same travel direction as a broadcasting UE configured to broadcast the request message, the relay message, or both. For example, the at least the first criterion includes that UE 620 travels in a same direction as UE 602.
[0169] In some implementations, the at least the first criterion includes that the first UE travels on a same path as the broadcasting UE. For example, the at least the first criterion may include that UE 620 travels on the same road (e.g., based on a road ID) of UE 602.
[0170] In some implementations, the at least the first criterion includes that a distance separating the first UE and the broadcasting UE satisfies a maximum distance indicated by a third parameter of the first set of parameters. For example, the first criterion may include that a distance separating UE 620 and UE 602 satisfies a maximum distance indicated by a third parameter of first set of parameters 654.
[0171] In some implementations, the first set of parameters further includes a third parameter indicating a location, in a memory, of the data indicated by the request message. For example, first set of parameters 654 may include a third parameter indicating, a location, in a memory, of data corresponding to data request 680.
[0172] In some implementations, the first set of parameters further includes a fourth parameter indicating a broadcast direction of the request message, the relay message, or both and a travel direction of a broadcasting UE configured to broadcast the request message, the relay message, or both. For example, first set of parameters 654 may include a fourth parameter indicating a broadcast direction of request message 652, of relay message 656, or both and a travel direction of UE 602, 620, or both.
[0173] In some implementations, the memory includes a first memory of the node, a second memory of a server associated with the node, or a combination thereof. For example, the memory may include or correspond to memory 644.
[0174] In some implementations, the second set of parameters includes the first set of parameters. For example, second set of parameters 658 may include first set of parameters 654. In some implementations, the at least the second criterion includes that the second UE travels in a travel direction of a broadcasting UE configured to broadcast the response message, the second UE travels on a same path as the broadcasting UE, and a distance separating the second UE and the broadcasting UE satisfies a maximum distance. For example, the at least the second criterion includes that UE 620 travels in a travel direction of a broadcasting UE, such as UE 636, configured to broadcast the response message, such as response message 672. Additionally, the at least the second criterion includes that UE 620 travels on a same path (e.g., a same road having the same road ID) as the broadcasting UE, such as UE 636. Further, the at least the second criterion includes that a distance separating UE 620 and broadcasting UE 636 satisfies a maximum distance such as indicated by a distance indicator included in fifth set of parameters 676.
[0175] In some implementations, a broadcast direction of the response message is opposite to a travel direction of the first UE. For example, a broadcast direction of response message 672 may be opposite to a travel direction of UE 620.
[0176] In some implementations, the response message is received by the third UE from the node. For example, response message 664 is received by UE 636 from node 638. In some implementations, the processing system is further configured to initiate a fifth broadcast, in response to receipt of the response message, a suppression message, the suppression message configured to halt further relay of one or more relay messages. For example, in response to receipt of response message 678, processing system 604 of UE 602 is configured to initiate a broadcast of a suppression message. The suppression message configured to halt further relay (e.g., broadcast) of one or more relay messages or other messages.
[0177] In some implementations, the processing system is further configured to perform an autonomous operation in accordance with the data included in the response message and indicated by the request message. For example, in accordance with data 690 included in response message 678, processing system 604 of UE 602 is configured to perform an autonomous operation.
[0178] FIG. 10 is a flow diagram illustrating an example process 1000 that supports message mediated multi hop relay communication according to one or more aspects. Operations of process 1000 may be performed by a vehicle, such as vehicle 100, 412; UE 315, 620, 708; or combinations thereof as described above with reference to FIGs. 1-8. Example operations (also referred to as “blocks” ) of process 1000 may enable vehicles or UEs as described in this disclosure to support message mediated multi hop relay communication.
[0179] At block 1002, a processing system of a vehicle, a UE, or both receives a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the first UE. For example, processing system 622 of UE 620 receives request message 652 broadcast by UE 602 that is outside of a communication range of node 638. Request message includes a first set of parameters 654 including a first parameter, such as data request 680, indicating data requested by UE 602.
[0180] At block 1004, the processing system initiates, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message. The relay message includes a second set of parameters a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message. For example, processing system 622 of UE 620 initiate, in response to receipt of request message 652 and in accordance with satisfying an at least a first criterion indicated by a second parameter of first set of parameters 654, a first broadcast of relay message 656. Relay message 656 includes second set of parameters 658, a third parameter of which indicates an at least a second criterion for a second UE, such as UE 636, that receives relay message 656 to initiate a second broadcast of a second relay message, such as relay message 660.
[0181] At block 1006, the processing system receives, in response to the first broadcast of the first relay message, a response message. The response message includes the data indicated by the request message, and the response message is received via a second UE that is within the communication range. For example, processing system 622 of UE 620 receives, in response to the first broadcast of first relay message 656, response message 672. Response message 672 includes data 674 indicated by request message 652, and response message 672 is received from the second UE, such as UE 636 that is within communication range of node 638.
[0182] In some implementations, to initiate the broadcast of the relay message, the processing system is configured to set a timer, a value of which is randomly selected from a range of values stored in the one or more memories. For example, to initiate broadcast of relay message 656, processing system 622 of UE 620 is configured to set a timer, a value of which is randomly selected from a range of values stored in the one or more memories, such as memory 626.
[0183] In some implementations, the processing system is further configured to initiate, in response to the first broadcast of the relay message, a second broadcast of a suppression message. The suppression message is configured to prevent other UEs that receive the request message and that satisfy the at least the first criterion from broadcasting a third relay message. For example, processing system 622 of UE 620 is configured to initiate, in response to the first broadcast of relay message 656, a second broadcast of a suppression message, such as described with reference to FIG. 7. The suppression message is configured to prevent other UEs, such as UE 706, that receive request message 652 and that satisfy the at least the first criterion from broadcasting a third relay message.
[0184] In some implementations, to initiate the first broadcast of the relay message, the processing system is configured to initiate the first broadcast the relay message in response to expiration of the timer. For example, processing system 622 of UE 620 is configured to initiate the first broadcast of relay message 656 in response to expiration of timer set by processing system 622.
[0185] In some implementations, the first set of parameters includes an index indicating implementation of a message mediated multi hop relay communication protocol. For example, first set of parameters 654 includes an index indicating implementation a message mediated multi hop relay communication protocol. In this manner, processing system 622 of UE may implement the corresponding protocol.
[0186] In some implementations, the first set of parameters includes a first identifier indicating a first identity of the first UE. For example, first set of parameters 654 includes a first identifier indicating a first identify of UE 602.
[0187] In some implementations, the first set of parameters includes a second identifier indicating a second identity of a broadcasting UE if distinct from the first UE. For example, second set of parameters 658, which may include or correspond to first set of parameters 654, includes a second identifier indicating a second identity of a broadcasting UE, such as UE 620, if distinct from the first UE, such as UE 602.
[0188] In some implementations, the first set of parameters includes an indicator indicating a location, in a memory, of the data indicated by the request message. For example, first set of parameters 654 includes an indicator indicating a location, in memory 644, of data associated with data request 680.
[0189] In some implementations, the first set of parameters includes a travel indicator indicating a travel direction of the first UE. For example, first set of parameters includes a travel indicator indicating a travel direction of UE 602.
[0190] In some implementations, the first set of parameters includes a locator indicating a position of the first UE, the position identifying a path traveled by the first UE, a segment of the path at which the first UE is located at a time at which the first UE broadcasts the request message, or both. For example, first set of parameters 654 includes a locator indicating a position of UE 602, the position identifying a path traveled by UE 602 (e.g., a road ID) , a segment of the path at which the UE 602 is located at a time at which the UE 602 broadcasts request message 652 (e.g., a road segment ID) , or both.
[0191] In some implementations, the first set of parameters includes a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof. For example, first set of parameters 654 may indicate a broadcast direction of request message 652.
[0192] In some implementations, the first set of parameters includes a hop indicator indicating a maximum allowed quantity of hops. For example, first set of parameters 654 may include a hop indicator indicating a maximum allowed quantity of hops.
[0193] In some implementations, the first set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both. For example, first set of parameters 654 includes a distance indicator indicating a maximum permissible distance between a receiving UE, such as UE 620, and a broadcasting UE, such as UE 602. In some implementations, the receiving UE is configured to receive a relay message, a response message or both, and the broadcasting UE is configured to broadcast the relay message, the response message, or both.
[0194] In some implementations, the processing system is further configured to decrement the maximum allowed quantity of hops in response to receipt of the request message. For example, in response to receipt of request message 652, processing system 622 is configured to decrement the maximum allowed quantity of hops included in hop indicator of a parameter included in first set of parameters 654, thereby indicating occurrence of a hop (e.g., from UE 602 to UE 620) .
[0195] In some implementations, the processing system is further configured to modify the hop indicator included in the relay message to include the decremented maximum allowed quantity of hops. For example, processing system 622 may modify the hop indicator included as a parameter of second set of parameters 658 included in relay message 656 to include the decremented maximum allowed quantity of hops.
[0196] In some implementations, the processing system is associated with a fourth UE, and the at least the first criterion includes that the fourth UE travels in a same travel direction as the first UE, the fourth UE travels on a same path as the first UE, and a distance separating the fourth UE and the first UE satisfies a maximum threshold distance. For example, processing system 622 is associated with UE 620 and the at least the first criterion includes that the fourth UE, such as UE 620, travels in a same travel direction as the first UE, such as UE 602, the fourth UE travels on a same path as the first UE, and a distance separating the fourth UE and the first UE satisfies a maximum threshold distance.
[0197] In some implementations, to initiate the first broadcast of the relay message, the processing system is further configured to decode the request message. For example, to initiate broadcast of relay message 656, processing system 622 is configured to decode request message 652.
[0198] In some implementations, the relay message is configured to be received by a plurality of receiving UEs that satisfy the at least the second criterion. For example, relay message 656 is configured to be received by a plurality of receiving UEs that satisfy the at least the second criterion.
[0199] In some implementations, the relay message is further configured to cause each receiving UE of the plurality of receiving UE to set a timer having a random value, the random value selected from a range of values stored in one or more memories of each of the receiving UEs. For example, relay message 656 may be configured to cause each receiving UE of the plurality of UEs to set a timer having a random value. Each receiving UE may select the random value from range of values stored in one or more memories of each of the receiving UEs.
[0200] In some implementations, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to modify a first value of a hop indicator, included among the second set of parameters, and indicating a maximum allowed quantity of hops. For example, relay message 656 is configured to cause receiving UE 636 (e.g., that receives relay message 656) to modify a first value of a hop indicator, included among second set of parameters 658.
[0201] In some implementations, the relay message is further configured to cause a receiving UE to modify a second value of a distance indicator, included among the second set of parameters, and indicating a maximum permissible distance between the receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both. For example, relay message 656 is configured to cause receiving UE 636 to modify a second value of a distance indicator including among set of parameters 658. The distance indicator may indicate a maximum permissible distance between receiving UE 636 and broadcasting UE 620, between receiving UE 636 and UE 602, or both.
[0202] In some implementations, the relay message is configured to cause a receiving UE to store, in a buffer of the one or more memories of the receiving UE, an identifier indicating an identity of the broadcasting UE, wherein the identifier is included among the second set of parameters. For example, relay message 656 may be configured to cause receiving UE 636 to store, in a buffer of one or more memories of receiving UE 636, an identifier indicating an identity of broadcasting UE 620. The identifier may be included in second set of parameters 658.
[0203] In some implementations, the relay message is configured to cause a receiving UE to store, in the buffer, a message packet identifier included among the second set of parameters. For example, relay message 656 is configured to cause receiving UE 636 to store, in the buffer, a message packet identifier included among second set of parameters 658. The message packet identifier may identify relay message 656.
[0204] In some implementations, the relay message is configured to cause the receiving UE to broadcast the second relay message that includes a third set of parameters. For example UE 636 may broadcast (or initiate the broadcast of) relay message 660.
[0205] In some implementations, a second hop indicator and a second distance indicator of the third set of parameters are modified relative to the values of the hop indicator and the distance indicator included in the relay message. For example, a second hop indicator and a second distance indicator of third set of parameters 662 are modified relative to the values of the hop indicator and the distance indicator included in relay message 656 (e.g., among second set of parameters 658) .
[0206] In some implementations, a timer set by the receiving UE expires prior to timers set by other receiving UEs of the plurality of receiving UEs. For example, a timer set by receiving UE 636 may expire before timers set by other receiving UEs of a plurality of receiving UEs. Consequently, UE 636 may broadcast a second relay message in response to expiration of the timer.
[0207] In some implementations, the second relay message, which, when decoded by a second receiving UE that satisfies at least a second criterion indicated by a third parameter of the third set of parameters, is configured to cause the second receiving UE to broadcast a third relay message. For example, relay message 660, when decoded by a second receiving UE that satisfies the at least the second criterion indicated by a third parameter of third set of parameters 662, is configured to cause the second UE to broadcast a third relay message. In some implementations, the second receiving UE includes the third UE. For example, vehicle 424 may include or correspond to the third UE.
[0208] In some implementations, the response message includes a third set of parameters. For example, response message 672 includes fifth set of parameters 676. In some implementations, the third set of parameters include a broadcast direction indicator indicating a broadcast direction of the response message. For example, fifth set of parameters 676 includes a broadcast direction indicator indicating a broadcast direction of response message 672.
[0209] In some implementations, the broadcast direction is opposite of a travel direction indicated by a travel indicator included among the first set of parameters, the travel indicator indicating the travel direction of the first UE. For example, the broadcast direction of response message 672 is opposite of a travel direction of UE 602, the travel direction indicated by a travel indicator included among first set of parameters 654, the travel indicator indicating the travel direction of UE 602.
[0210] FIG. 11 is a flow diagram illustrating an example process 1100 that supports message mediated multi hop relay communication according to one or more aspects. Operations of process 1000 may be performed by a base station or node 305, 405, 638, 712 as described above with reference to FIGs. 1-8. Example operations (also referred to as “blocks” ) of process 1100 may enable vehicles, UEs, base station, or nodes as described in this disclosure to support message mediated multi hop relay communication.
[0211] At block 1102, a processing system of a node or a base station is configured to receive a relay message that includes a first set of parameters. The relay message is received from a first UE. For example, processing system 640 of node 638 receives relay messages 660 that includes third set of parameters 662. Relay message 660 is received from UE 636.
[0212] At block 1104, the processing system of the node or the base station is configured to initiate transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters. For example, processing system 640 of node 638 initiates transmission of response message 664 to UE 636 in response to receipt of relay message 660. Response message 664 includes fourth set of parameters and data 668 indicated by data request 684, which, in some implementations, may be a component of third set of parameters 662.
[0213] In some implementations, the first parameter of the first set of parameters includes an indicator that identifies an address in the one or more memories in which the data is stored. For example, data request 684 may include or correspond to the first parameter and may identify an address in memory 644 in which data corresponding to data request 684 is stored.
[0214] In some implementations, the data, when executed by second one or more processors of a second UE configure the second UE to perform an autonomous operation. For example, when executed by processing system 604 of UE 602, data 668 configures UE 602 to perform an autonomous driving operation (e.g., an autonomous driving operation) .
[0215] In some implementations, the second set of parameters includes a broadcast indicator indicating a broadcast direction of the response message. For example, fourth set of parameters 670 may include a broadcast indicator indicating a broadcast direction of response message 664.
[0216] In some implementations, the second set of parameters includes a travel indicator indicating a travel direction of a second UE that broadcast a request message indicating a request for the data. For example, fourth set of parameters 670 includes a travel indicator indicating a travel direction of UE 602 that broadcast request message 652.
[0217] In some implementations, the second set of parameters includes a location indicator indicating a position of the second UE, the position identifying a path traveled by the second UE. For example, fourth set of parameters includes a location indictor indicating a position of UE 602. The position identifies a path traveled by UE 602 (e.g., a road ID, a road segment ID) .
[0218] In some implementations, the second set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE that receives the response message and a broadcasting UE that broadcasts the response message. For example, fourth set of parameters 662 includes a distance indicator indicating a maximum permissible distance between a receiving UE that receives the response message, such as UE 620, and a broadcasting UE that broadcasts the response message, such as UE 636.
[0219] In some implementations, the distance indicator is configured to be modified by the receiving UE in response to receipt, by the receiving UE, of the response message. For example, UE 620 may modify the distance indicator in response to receipt of response message 672.
[0220] In some implementations, to initiate transmission of the response message, the processing system is configured to cause the response message to be transmitted on a physical downlink shared channel (PDSCH) , a physical downlink control channel (PDCCH) , or a combination thereof. For example, processing system 640 may be configured to cause response message 664 to be transmitted on a PDSCH, a PDCCH, or both.
[0221] In some implementations, to receive the relay message, the processing system is configured to receive the relay message via a physical uplink shared channel (PUSCH) , a physical uplink control channel (PUCCH) , or a combination thereof. For example, processing system 640 may be configured to cause relay message 660 to be received on a PUSCH, a PUCCH, or both.
[0222] In one or more aspects, techniques for supporting vehicular operations may include additional aspects, such as any single aspect or any combination of aspects described below or in connection with one or more other processes or devices described elsewhere herein. In a first aspect, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system is configured to initiate a first broadcast of a request message including a first set of parameters. The first set of parameters including a first parameter indicating at least a first criterion for a first user equipment (UE) to initiate a second broadcast of a relay message. Additionally, the processing system is configured to receive, in response to the first broadcast of the request message, a response message. The response message includes data indicated by the request message, further includes a second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message, and is received from the second UE via a third broadcast initiated by the second UE in accordance with the second parameter. The second UE is configured to receive the response message via a fourth broadcast initiated by a third UE that is within a communication range of a node. In some implementations, the apparatus includes a wireless device, such as a UE. In some other implementations, the apparatus may include a non-transitory computer-readable medium having program code recorded thereon and the program code may be executable by a computer for causing the computer to perform operations described herein with reference to the apparatus. In some implementations, the apparatus may include one or more means configured to perform operations described herein. In some implementations, a method may include one or more operations described herein with reference to the apparatus.
[0223] In a second aspect, in combination with the first aspect, the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to initiate the second broadcast of the relay message.
[0224] In a third aspect, in combination with one or more of the first aspect or the second aspect, the relay message is broadcast in response to expiration of a timer set by the first UE in response to receipt, by the first UE, of the request message.
[0225] In a fourth aspect, in combination with one or more of the first aspect through the third aspect, the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to initiate a fifth broadcast of a suppression message.
[0226] In a fifth aspect, in combination with one or more of the first aspect through the fourth aspect, the suppression message is configured to cause a UE receiving the suppression message and that satisfies the at least the first criterion to cease initiation of a sixth broadcast of a second relay message.
[0227] In a sixth aspect, in combination with one or more of the first aspect through the fifth aspect, the first set of parameters includes an index indicating implementation of a message mediated multi hop relay communication protocol.
[0228] In a seventh aspect, in combination with one or more of the first aspect through the sixth aspect, the first set of parameters includes an identifier indicating an identity of a broadcasting UE.
[0229] In an eighth aspect, in combination with one or more of the first aspect through the seventh aspect, the broadcasting UE configured to broadcast the request message, the relay message, the response message, or a combination thereof.
[0230] In a ninth aspect, in combination with one or more of the first aspect through the eighth aspect, the first set of parameters includes a travel indicator indicating a travel direction of the broadcasting UE.
[0231] In a tenth aspect, in combination with one or more of the first aspect through the ninth aspect, the first set of parameters includes a locator indicating a position of the broadcasting UE.
[0232] In an eleventh aspect, in combination with one or more of the first aspect through the tenth aspect, the position identifies a path traveled by the broadcasting UE, a segment of the path at which the broadcasting UE is located at a time at which the broadcasting UE broadcasts the request message, the relay message, the response message, or a combination thereof, or both.
[0233] In a twelfth aspect, in combination with one or more of the first aspect through the eleventh aspect, the first set of parameters includes a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof.
[0234] In a thirteenth aspect, in combination with one or more of the first aspect through the twelfth aspect, the first set of parameters includes a hop indicator indicating a maximum allowed quantity of hops.
[0235] In a fourteenth aspect, in combination with one or more of the first aspect through the thirteenth aspect, the first set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE and the broadcasting UE.
[0236] In a fifteenth aspect, in combination with one or more of the first aspect through the fourteenth aspect, the receiving UE is configured to receive the request message, the relay message, the response message, or a combination thereof.
[0237] In a sixteenth aspect, in combination with one or more of the first aspect through the fifteenth aspect, the first set of parameters includes a data indicator indicating data requested by the broadcasting UE.
[0238] In a seventeenth aspect, in combination with one or more of the first aspect through the sixteenth aspect, the at least the first criterion includes that the first UE travels in a same travel direction as a broadcasting UE configured to broadcast the request message, the relay message, or both.
[0239] In an eighteenth aspect, in combination with one or more of the first aspect through the seventeenth aspect, the at least the first criterion includes that the first UE travels on a same path as the broadcasting UE.
[0240] In a nineteenth aspect, in combination with one or more of the first aspect through the eighteenth aspect, the at least the first criterion includes that a distance separating the first UE and the broadcasting UE satisfies a maximum distance indicated by a third parameter of the first set of parameters.
[0241] In a twentieth aspect, in combination with one or more of the first aspect through the nineteenth aspect, the second set of parameters includes the first set of parameters.
[0242] In a twenty-first aspect, in combination with one or more of the first aspect through the twentieth aspect, the at least the second criterion includes that the second UE travels in a travel direction of a broadcasting UE configured to broadcast the response message.
[0243] In a twenty-second aspect, in combination with one or more of the first aspect through the twenty-first aspect, the at least the second criterion includes that the second UE travels on a same path as the broadcasting UE.
[0244] In a twenty-third aspect, in combination with one or more of the first aspect through the twenty-second aspect, the at least the second criterion includes that a distance separating the second UE and the broadcasting UE satisfies a maximum distance.
[0245] In a twenty-fourth aspect, in combination with one or more of the first aspect through the twenty-third aspect, a broadcast direction of the response message is opposite to a travel direction of the first UE.
[0246] In a twenty-fifth aspect, in combination with one or more of the first aspect through the twenty-fourth aspect, the response message is received by the third UE from the node.
[0247] In a twenty-sixth aspect, in combination with one or more of the first aspect through the twenty-fifth aspect, initiate a fifth broadcast, in response to receipt of the response message, of a suppression message .
[0248] In a twenty-seventh aspect, in combination with one or more of the first aspect through the twenty-sixth aspect, wherein the suppression message configured to halt further relay of one or more relay messages.
[0249] In a twenty-eighth aspect, in combination with one or more of the first aspect through the twenty-seventh aspect, the processing system is further configured to perform an autonomous operation in accordance with the data included in the response message and indicated by the request message.
[0250] In a twenty-ninth aspect, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system is configured to receive a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node. The request message includes a first set of parameters including a first parameter indicating data requested by the first UE. Additionally, the processing system is configured to initiate, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message. The relay message includes a second set of parameters, a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message. Further, the at least one processor is configured to receive, in response to the first broadcast of the first relay message, a response message. The response message includes the data indicated by the request message and the response message received via a third UE that is within the communication range. In some implementations, the apparatus includes a wireless device, such as a UE. In some other implementations, the apparatus may include a non-transitory computer-readable medium having program code recorded thereon and the program code may be executable by a computer for causing the computer to perform operations described herein with reference to the apparatus. In some implementations, the apparatus may include one or more means configured to perform operations described herein. In some implementations, a method may include one or more operations described herein with reference to the apparatus.
[0251] In a thirtieth aspect, in combination with the twenty-ninth aspect, the processing system is further configured to initiate, in response to the first broadcast of the relay message, a second broadcast of a suppression message.
[0252] In a thirty-first aspect, in combination with one or more of the twenty-ninth aspect through the thirtieth aspect, the suppression message is configured to prevent other UEs that receive the request message and that satisfy the at least the first criterion from broadcasting a third relay message.
[0253] In a thirty-second aspect, in combination with one or more of the twenty-ninth aspect through the thirty-first aspect, to initiate the first broadcast of the relay message, the processing system is configured to set a timer, a value of which is randomly selected from a range of values stored in the one or more memories.
[0254] In a thirty-third aspect, in combination with one or more of the twenty-ninth aspect through the thirty-second aspect, to initiate the first broadcast of the relay message, the processing system is configured to initiate the first broadcast the relay message in response to expiration of the timer.
[0255] In a thirty-fourth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-third aspect, the first set of parameters includes an index indicating implementation of a message mediated multi hop relay communication protocol.
[0256] In a thirty-fifth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-fourth aspect, the first set of parameters includes a first identifier indicating a first identity of the first UE.
[0257] In a thirty-sixth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-fifth aspect, the first set of parameters includes a second identifier indicating a second identity of a broadcasting UE if distinct from the first UE.
[0258] In a thirty-seventh aspect, in combination with one or more of the twenty-ninth aspect through the thirty-sixth aspect, the first set of parameters includes an indicator indicating a location, in a memory, of the data indicated by the request message.
[0259] In a thirty-eighth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-seventh aspect, the first set of parameters includes a travel indicator indicating a travel direction of the first UE.
[0260] In a thirty-ninth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-eighth aspect, the first set of parameters includes a locator indicating a position of the first UE, the position identifying a path traveled by the first UE, a segment of the path at which the first UE is located at a time at which the first UE broadcasts the request message, or both.
[0261] In a fortieth aspect, in combination with one or more of the twenty-ninth aspect through the thirty-ninth aspect, the first set of parameters includes a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof.
[0262] In a forty-first aspect, in combination with one or more of the twenty-ninth aspect through the fortieth aspect, the first set of parameters includes a hop indicator indicating a maximum allowed quantity of hops.
[0263] In a forty-second aspect, in combination with one or more of the twenty-ninth aspect through the forty-first aspect, the first set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both.
[0264] In a forty-third aspect, in combination with one or more of the twenty-ninth aspect through the forty-second aspect, the receiving UE is configured to receive a relay message, a response message or both.
[0265] In a forty-fourth aspect, in combination with one or more of the twenty-ninth aspect through the forty-third aspect, the broadcasting UE is configured to broadcast the relay message, the response message, or both.
[0266] In a forty-fifth aspect, in combination with one or more of the twenty-ninth aspect through the forty-fourth aspect, the relay message is configured to be received by a plurality of receiving UEs that satisfy the at least the second criterion.
[0267] In a forty-sixth aspect, in combination with one or more of the twenty-ninth aspect through the forty-fifth aspect, the relay message is further configured to cause each receiving UE of the plurality of receiving UE to set a timer having a random value, the random value selected from a range of values stored in one or more memories of each of the receiving UEs.
[0268] In a forty-seventh aspect, in combination with one or more of the twenty-ninth aspect through the forty-sixth aspect, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to modify a first value of a hop indicator, included among the second set of parameters, and indicating a maximum allowed quantity of hops.
[0269] In a forty-eighth aspect, in combination with one or more of the twenty-ninth aspect through the forty-seventh aspect, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to modify a second value of a distance indicator, included among the second set of parameters, and indicating a maximum permissible distance between the receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both.
[0270] In a forty-ninth aspect, in combination with one or more of the twenty-ninth aspect through the forty-eighth aspect, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to store, in a buffer of one or more memories of the receiving UE, an identifier indicating an identity of the broadcasting UE, wherein the identifier is included among the second set of parameters.
[0271] In a fiftieth aspect, in combination with one or more of the twenty-ninth aspect through the forty-ninth aspect, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to store, in the buffer, a message packet identifier included among the second set of parameters.
[0272] In a fifty-first aspect, in combination with one or more of the twenty-ninth aspect through the fiftieth aspect, the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to broadcast the second relay message that includes a third set of parameters.
[0273] In a fifty-second aspect, in combination with one or more of the twenty-ninth aspect through the fifty-first aspect, a second hop indicator and a second distance indicator of the third set of parameters are modified relative to the values of the hop indicator and the distance indicator included in the relay message.
[0274] In a fifty-third aspect, in combination with one or more of the twenty-ninth aspect through the fifty-second aspect, a timer set by the receiving UE expires prior to timers set by other receiving UEs of the plurality of receiving UEs.
[0275] In a fifty-fourth aspect, in combination with one or more of the twenty-ninth aspect through the fifty-third aspect, the second relay message, which, when decoded by a second receiving UE that satisfies at least a second criterion indicated by a third parameter of the third set of parameters, is configured to cause the second receiving UE to broadcast a third relay message.
[0276] In a fifty-fifth aspect, in combination with one or more of the twenty-ninth aspect through the fifty-fourth aspect, the second receiving UE includes the third UE.
[0277] In a fifty-sixth aspect, in combination with one or more of the twenty-ninth aspect through the fifty-fifth aspect, the response message includes a third set of parameters.
[0278] In a fifty-seventh aspect, in combination with one or more of the twenty-ninth aspect through the fifty-sixth aspect, the third set of parameters include a broadcast direction indicator indicating a broadcast direction of the response message.
[0279] In a fifty-eighth aspect, in combination with one or more of the twenty-ninth aspect through the fifty-seventh aspect, the broadcast direction is opposite of a travel direction indicated by a travel indicator included among the first set of parameters, the travel indicator indicating the travel direction of the first UE.
[0280] In a fifty-ninth aspect, an apparatus includes a processing system that includes one or more processors and one or more memories coupled with the one or more processors. The processing system is configured to receive a relay message that includes a first set of parameters, the relay message received from a first user equipment (UE) . Additionally, the processing system is configured to initiate transmission of a response message to the first UE in response to receipt of the relay message. The response message includes a second set of parameters and data indicated by a first parameter of the first set of parameters. In some implementations, the apparatus includes a wireless device, such as a node or base station. In some other implementations, the apparatus may include a non-transitory computer-readable medium having program code recorded thereon and the program code may be executable by a computer for causing the computer to perform operations described herein with reference to the apparatus. In some implementations, the apparatus may include one or more means configured to perform operations described herein. In some implementations, a method may include one or more operations described herein with reference to the apparatus.
[0281] In a sixtieth aspect, in combination with the fifty-ninth aspect, the first parameter of the first set of parameters includes an indicator that identifies an address in the one or more memories in which the data is stored.
[0282] In a sixty-first aspect, in combination with one or more of the fifty-ninth aspect through the sixtieth aspect, the data, when executed by second one or more processors of a second UE configure the second UE to perform an autonomous operation.
[0283] In a sixty-second aspect, in combination with one or more of the fifty-ninth aspect through the sixty-first aspect, the second set of parameters identifies a broadcast direction of the response message.
[0284] In a sixty-third aspect, in combination with one or more of the fifty-ninth aspect through the sixty-second aspect, the broadcast direction is opposite to a travel direction of a second UE that requested the data.
[0285] In a sixty-fourth aspect, in combination with one or more of the fifty-ninth aspect through the sixty-third aspect, the second set of parameters includes a broadcast indicator indicating a broadcast direction of the response message.
[0286] In a sixty-fifth aspect, in combination with one or more of the fifty-ninth aspect through the sixty-fourth aspect, the second set of parameters includes a travel indicator indicating a travel direction of a second UE that broadcast a request message indicating a request for the data.
[0287] In a sixty-sixth aspect, in combination with one or more of the fifty-ninth aspect through the sixty-fifth aspect, the second set of parameters includes a location indicator indicating a position of the second UE, the position identifying a path traveled by the second UE.
[0288] In a sixty-seventh aspect, in combination with one or more of the fifty-ninth aspect through the sixty-sixth aspect, the second set of parameters includes a distance indicator indicating a maximum permissible distance between a receiving UE that receives the response message and a broadcasting UE that broadcasts the response message.
[0289] In a sixty-seventh aspect, in combination with one or more of the fifty-ninth aspect through the sixty-sixth aspect, the distance indicator is configured to be modified by the receiving UE in response to receipt, by the receiving UE, of the response message.
[0290] Components, the functional blocks, and the modules described herein with respect to FIGs. 1-4 include processors, electronics devices, hardware devices, electronics components, logical circuits, memories, software codes, firmware codes, among other examples, or any combination thereof. Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, application, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, and / or functions, among other examples, whether referred to as software, firmware, middleware, microcode, hardware description language or otherwise. In addition, features discussed herein may be implemented via specialized processor circuitry, via executable instructions, or combinations thereof.
[0291] Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure. Skilled artisans will also readily recognize that the order or combination of components, methods, or interactions that are described herein are merely examples and that the components, methods, or interactions of the various aspects of the present disclosure may be combined or performed in ways other than those illustrated and described herein.
[0292] The various illustrative logics, logical blocks, modules, circuits and algorithm processes described in connection with the implementations disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. The interchangeability of hardware and software has been described generally, in terms of functionality, and illustrated in the various illustrative components, blocks, modules, circuits and processes described above. Whether such functionality is implemented in hardware or software depends upon the particular application and design constraints imposed on the overall system.
[0293] The hardware and data processing apparatus used to implement the various illustrative logics, logical blocks, modules and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose single-or multi-chip processor, a digital signal processor (DSP) , an application specific integrated circuit (ASIC) , a field programmable 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 herein. A general purpose processor may be a microprocessor, or, any conventional processor, controller, microcontroller, or state machine. In some implementations, a processor may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some implementations, particular processes and methods may be performed by circuitry that is specific to a given function.
[0294] In one or more aspects, the functions described may be implemented in hardware, digital electronic circuitry, computer software, firmware, including the structures disclosed in this specification and their structural equivalents thereof, or in any combination thereof. Implementations of the subject matter described in this specification also may be implemented as one or more computer programs, that is one or more modules of computer program instructions, encoded on a computer storage media for execution by, or to control the operation of, data processing apparatus.
[0295] If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. The processes of a method or algorithm disclosed herein may be implemented in a processor-executable software module which may reside on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that may be enabled to transfer a computer program from one place to another. A storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such computer-readable media may include random-access memory (RAM) , read-only memory (ROM) , electrically erasable programmable read-only memory (EEPROM) , CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer. Also, any connection may be properly termed a computer-readable medium. Disk and disc, as used herein, includes compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and instructions on a machine readable medium and computer-readable medium, which may be incorporated into a computer program product.
[0296] Various modifications to the implementations described in this disclosure may be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to some other implementations without departing from the spirit or scope of this disclosure. Thus, the claims are not intended to be limited to the implementations shown herein, but are to be accorded the widest scope consistent with this disclosure, the principles and the novel features disclosed herein.
[0297] Certain features that are described in this specification in the context of separate implementations also may be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation also may be implemented in multiple implementations separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.
[0298] Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Further, the drawings may schematically depict one more example processes in the form of a flow diagram. However, other operations that are not depicted may be incorporated in the example processes that are schematically illustrated. For example, one or more additional operations may be performed before, after, simultaneously, or between any of the illustrated operations. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products. Additionally, some other implementations are within the scope of the following claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve desirable results.
[0299] While aspects and implementations are described in this application by illustration to some examples, those skilled in the art will understand that additional implementations and use cases may come about in many different arrangements and scenarios. Innovations described herein may be implemented across many differing platform types, devices, systems, shapes, sizes, packaging arrangements. For example, implementations or uses may come about via integrated chip implementations or other non-module-component based devices (e.g., end-user devices, vehicles, communication devices, computing devices, industrial equipment, retail devices or purchasing devices, medical devices, AI-enabled devices, etc. ) . While some examples may or may not be specifically directed to use cases or applications, a wide assortment of applicability of described innovations may occur.
[0300] Implementations may range from chip-level or modular components to non-modular, non-chip-level implementations and further to aggregated, distributed, or original equipment manufacturer (OEM) devices or systems incorporating one or more described aspects. In some practical settings, devices incorporating described aspects and features may also necessarily include additional components and features for implementation and practice of claimed and described aspects. It is intended that innovations described herein may be practiced in a wide variety of implementations, including both large devices or small devices, chip-level components, multi-component systems (e.g., radio frequency (RF) -chain, communication interface, processor) , distributed arrangements, end-user devices, etc. of varying sizes, shapes, and constitution.
[0301] In the following description, numerous specific details are set forth, such as examples of specific components, circuits, and processes to provide a thorough understanding of the present disclosure. The term “coupled” as used herein means connected directly to or connected through one or more intervening components or circuits. Also, in the following description and for purposes of explanation, specific nomenclature is set forth to provide a thorough understanding of the present disclosure. However, it will be apparent to one skilled in the art that these specific details may not be required to practice the teachings disclosed herein. In other instances, well known circuits and devices are shown in block diagram form to avoid obscuring teachings of the present disclosure.
[0302] Some portions of the detailed descriptions which follow are presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer memory. In the present disclosure, a procedure, logic block, process, or the like, is conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, although not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system.
[0303] In the figures, a single block may be described as performing a function or functions. The function or functions performed by that block may be performed in a single component or across multiple components, and / or may be performed using hardware, software, or a combination of hardware and software. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps are described below generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure. Also, the example devices may include components other than those shown, including well-known components such as a processor, memory, and the like.
[0304] Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the present application, discussions utilizing the terms such as “accessing, ” “receiving, ” “sending, ” “using, ” “selecting, ” “determining, ” “normalizing, ” “multiplying, ” “averaging, ” “monitoring, ” “comparing, ” “applying, ” “updating, ” “measuring, ” “deriving, ” “settling, ” “generating” or the like, refer to the actions and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system’s registers and memories into other data similarly represented as physical quantities within the computer system’s registers, memories, or other such information storage, transmission, or display devices.
[0305] The terms “device” and “apparatus” are not limited to one or a specific number of physical objects (such as one smartphone, one camera controller, one processing system, and so on) . As used herein, a device may be any electronic device with one or more parts that may implement at least some portions of the disclosure. While the below description and examples use the term “device” to describe various aspects of the disclosure, the term “device” is not limited to a specific configuration, type, or number of objects. As used herein, an apparatus may include a device or a portion of the device for performing the described operations.
[0306] As used herein, including in the claims, the term “or, ” when used in a list of two or more items, means that any one of the listed items may be employed by itself, or any combination of two or more of the listed items may be employed. For example, if a composition is described as containing components A, B, or C, the composition may contain A alone; B alone; C alone; A and B in combination; A and C in combination; B and C in combination; or A, B, and C in combination.
[0307] Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive 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 (that is A and B and C) or any of these in any combination thereof.
[0308] Also, as used herein, the term “substantially” is defined as largely but not necessarily wholly what is specified (and includes what is specified; for example, substantially 90 degrees includes 90 degrees and substantially parallel includes parallel) , as understood by a person of ordinary skill in the art. In any disclosed implementations, the term “substantially” may be substituted with “within [a percentage] of” what is specified, where the percentage includes . 1, 1, 5, or 10 percent.
[0309] Also, as used herein, relative terms, unless otherwise specified, may be understood to be relative to a reference by a certain amount. For example, terms such as “higher” or “lower” or “more” or “less” may be understood as higher, lower, more, or less than a reference value by a threshold amount.
[0310] The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1.An apparatus for wireless communication at an autonomous vehicle comprising:a processing system that includes one or more processors and one or more memories coupled with the one or more processors, the processing system configured to:initiate a first broadcast of a request message comprising a first set of parameters, the first set of parameters including a first parameter indicating at least a first criterion for a first user equipment (UE) to initiate a second broadcast of a relay message including a distance indicator indicating a maximum permissible distance between a receiving UE and a broadcasting UE; andreceive a response message, the response message comprising:data indicated by the request message, anda second set of parameters including a second parameter indicating an at least a second criterion for a second UE to broadcast the response message,wherein the response message is received from the second UE via a third broadcast initiated by the second UE in accordance with the second parameter, the second UE configured to receive the response message via a fourth broadcast initiated by a third UE that is within a communication range of a node.2.The apparatus of claim 1, wherein the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to:initiate the second broadcast of the relay message, the relay message broadcast in response to expiration of a timer set by the first UE in response to receipt, by the first UE, of the request message.3.The apparatus of claim 2, wherein the request message, when received by the first UE that satisfies the at least the first criterion, is configured to cause the first UE to:initiate a fifth broadcast of a suppression message, andthe suppression message is configured to cause a UE receiving the suppression message and that satisfies the at least the first criterion to cease initiation of a sixth broadcast of a second relay message.4.The apparatus of claim 1, wherein the first set of parameters includes:an index indicating implementation of a message mediated multi hop relay communication protocol;an identifier indicating an identity of a broadcasting UE, the broadcasting UE configured to broadcast the request message, the relay message, the response message, or a combination thereof;a travel indicator indicating a travel direction of the broadcasting UE;a locator indicating a position of the broadcasting UE, the position identifying a path traveled by the broadcasting UE, a segment of the path at which the broadcasting UE is located at a time at which the broadcasting UE broadcasts the request message, the relay message, the response message, or a combination thereof, or both;a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof;a hop indicator indicating a maximum allowed quantity of hops;a data indicator indicating data requested by the broadcasting UE; ora combination thereof.5.The apparatus of claim 1, wherein the at least the first criterion includes that:the first UE travels in a same travel direction as a broadcasting UE configured to broadcast the request message, the relay message, or both,the first UE travels on a same path as the broadcasting UE,a distance separating the first UE and the broadcasting UE satisfies a maximum distance indicated by a third parameter of the first set of parameters, ora combination thereof.6.The apparatus of claim 1, wherein the second set of parameters includes the first set of parameters, and wherein the at least the second criterion includes that:the second UE travels in a travel direction of a broadcasting UE configured to broadcast the response message,the second UE travels on a same path as the broadcasting UE, anda distance separating the second UE and the broadcasting UE satisfies a maximum distance.7.The apparatus of claim 1, wherein the response message is received by the third UE from the node, and wherein the processing system is further configured to:initiate a fifth broadcast, in response to receipt of the response message, of a suppression message, the suppression message configured to halt further relay of one or more relay messages.8.The apparatus of claim 1, wherein the first set of parameters further includes a decrement value, and wherein the distance indicator is configured to be decremented by the decrement value at each hop in the multi-hop relay.9.The apparatus of claim 1, wherein the first set of parameters further includes an update function, and wherein the distance indicator is configured to be updated according to the update function at each hop in the multi-hop relay, the update function based on at least one of a number of hops, a distance between hops, or a time delay between hops.10.An apparatus for wireless communication at an autonomous vehicle comprising:a processing system that includes one or more processors and one or more memories coupled with the one or more processors, the processing system configured to:receive a request message broadcast by a first user equipment (UE) that is outside of a communication range of a node, the request message comprising a first set of parameters including a first parameter indicating data requested by the first UE;initiate, in response to receipt of the request message and in accordance with satisfying an at least a first criterion indicated by a second parameter of the first set of parameters, a first broadcast of a relay message, the relay message including a second set of parameters, a third parameter of which indicates an at least a second criterion for a second UE that receives the relay message to initiate a second broadcast of a second relay message; andreceive, in response to the first broadcast of the first relay message, a response message, the response message including the data indicated by the request message and the response message received via a third UE that is within the communication range.11.The apparatus of claim 10, wherein the processing system is further configured to:initiate, in response to the first broadcast of the relay message, a second broadcast of a suppression message, the suppression message configured to prevent other UEs that receive the request message and that satisfy the at least the first criterion from broadcasting a third relay message.12.The apparatus of claim 10, wherein, to initiate the first broadcast of the relay message, the processing system is configured to:set a timer, a value of which is randomly selected from a range of values stored in the one or more memories; andinitiate the first broadcast the relay message in response to expiration of the timer.13.The apparatus of claim 10, wherein the first set of parameters includes:an index indicating implementation of a message mediated multi hop relay communication protocol;a first identifier indicating a first identity of the first UE;a second identifier indicating a second identity of a broadcasting UE if distinct from the first UE;an indicator indicating a location, in a memory, of the data indicated by the request message;a travel indicator indicating a travel direction of the first UE;a locator indicating a position of the first UE, the position identifying a path traveled by the first UE, a segment of the path at which the first UE is located at a time at which the first UE broadcasts the request message, or both;a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof;a hop indicator indicating a maximum allowed quantity of hops;a distance indicator indicating a maximum permissible distance between a receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both, wherein the receiving UE is configured to receive a relay message, a response message or both, and wherein the broadcasting UE is configured to broadcast the relay message, the response message, or both; ora combination thereof.14.The apparatus of claim 10, wherein the relay message is configured to be received by a plurality of receiving UEs that satisfy the at least the second criterion, and wherein the relay message is further configured to cause each receiving UE of the plurality of receiving UE to set a timer having a random value, the random value selected from a range of values stored in one or more memories of each of the receiving UEs.15.The apparatus of claim 14, wherein the relay message is further configured to cause a receiving UE of the plurality of receiving UEs to:modify a first value of a hop indicator, included among the second set of parameters, and indicating a maximum allowed quantity of hops;modify a second value of a distance indicator, included among the second set of parameters, and indicating a maximum permissible distance between the receiving UE and a broadcasting UE, between the receiving UE and the first UE, or both;store, in a buffer of one or more memories of the receiving UE, an identifier indicating an identity of the broadcasting UE, wherein the identifier is included among the second set of parameters;store, in the buffer, a message packet identifier included among the second set of parameters; andbroadcast the second relay message that includes a third set of parameters, wherein:a second hop indicator and a second distance indicator of the third set of parameters are modified relative to the values of the hop indicator and the distance indicator included in the relay message, anda timer set by the receiving UE expires prior to timers set by other receiving UEs of the plurality of receiving UEs.16.The apparatus of claim 15, wherein the second relay message, which, when decoded by a second receiving UE that satisfies at least a second criterion indicated by a third parameter of the third set of parameters, is configured to cause the second receiving UE to broadcast a third relay message, and wherein the second receiving UE includes the third UE.17.The apparatus of claim 10, wherein:the response message includes a third set of parameters,the third set of parameters include a broadcast direction indicator indicating a broadcast direction of the response message, andthe broadcast direction is opposite of a travel direction indicated by a travel indicator included among the first set of parameters, the travel indicator indicating the travel direction of the first UE.18.An apparatus comprising:a processing system that includes one or more processors and one or more memories coupled with the one or more processors, the processing system configured to:receive a relay message that includes a first set of parameters, the relay message received from a first user equipment (UE) ; andinitiate transmission of a response message to the first UE in response to receipt of the relay message, the response message including a second set of parameters and data indicated by a first parameter of the first set of parameters.19.The apparatus of claim 18, wherein the first parameter of the first set of parameters includes an indicator that identifies an address in the one or more memories in which the data is stored, and wherein the data, when executed by second one or more processors of a second UE configure the second UE to perform an autonomous operation.20.The apparatus of claim 18, wherein the second set of parameters identifies a broadcast direction of the response message, and wherein the broadcast direction is opposite to a travel direction of a second UE that requested the data.21.The apparatus of claim 18, wherein the second set of parameters includes:a broadcast indicator indicating a broadcast direction of the response message;a travel indicator indicating a travel direction of a second UE that broadcast a request message indicating a request for the data;a location indicator indicating a position of the second UE, the position identifying a path traveled by the second UE; anda distance indicator indicating a maximum permissible distance between a receiving UE that receives the response message and a broadcasting UE that broadcasts the response message.22.The apparatus of claim 21, wherein the distance indicator is configured to be modified by the receiving UE in response to receipt, by the receiving UE, of the response message.23.A method performed by a first user equipment (UE) , the method comprising:broadcasting a request message comprising a first set of parameters, the first set of parameters including a first parameter indicating at least a first criterion for a second UE to initiate a second broadcast of a relay message; andreceiving, in response to the broadcasting the request message, a response message, the response message:including data indicated by the request message,comprising a second set of parameters including a second parameter indicating an at least a second criterion for a third UE to broadcast the response message, andreceived from the third UE via a third broadcast initiated by the third UE in accordance with the second parameter, the third UE configured to receive the response message via a fourth broadcast initiated by a fourth UE that is within a communication range of a node.24.The method of claim 23, wherein the request message, which, when received by the second UE that satisfies the at least the first criterion, is configured to cause the second UE to:initiate the second broadcast of the relay message, the relay message broadcast in response to expiration of a timer set by the second UE in response to receipt, by the second UE, of the request message.25.The method of claim 24, wherein the request message, which, when received by the second UE that satisfies the at least the first criterion, is configured to cause the second UE to:initiate a fifth broadcast of a suppression message, andthe suppression message is configured to cause a fifth UE receiving the suppression message and that satisfies the at least the first criterion to cease initiation of a sixth broadcast of a second relay message.26.The method of claim 23, wherein the second set of parameters includes the first set of parameters, and wherein the first set of parameters includes:an index indicating implementation of a message mediated multi hop relay communication protocol;an identifier indicating an identity of a broadcasting UE, the broadcasting UE configured to broadcast the request message, the relay message, the response message, or a combination thereof;a travel indicator indicating a travel direction of the broadcasting UE;a locator indicating a position of the broadcasting UE, the position identifying a path traveled by the broadcasting UE, a segment of the path at which the broadcasting UE is located at a time at which the broadcasting UE broadcasts the request message, the relay message, the response message, or a combination thereof, or both;a broadcast direction indicator indicating a broadcast direction of the request message, the relay message, the response message, or a combination thereof;a hop indicator indicating a maximum allowed quantity of hops;a distance indicator indicating a maximum permissible distance between a receiving UE and the broadcasting UE, the receiving UE configured to receive the request message, the relay message, the response message, or a combination thereof;a data indicator indicating data requested by the broadcasting UE; ora combination thereof.27.The method of claim 23, wherein the at least the first criterion includes that:the second UE travels in a same travel direction as a broadcasting UE configured to broadcast the request message, the relay message, or both, orthe second UE travels on a same path as the broadcasting UE.28.The method of claim 27, wherein a distance separating the second UE and the broadcasting UE satisfies a maximum distance indicated by a third parameter of the first set of parameters.29.The method of claim 23, wherein the response message is received by the fourth UE from the node, and wherein the method further comprises:broadcasting, in response to receipt of the response message, a suppression message, the suppression message configured to halt further relay of one or more relay messages.30.The method of claim 23, wherein the method further comprises:performing an autonomous operation in accordance with the data included in the response message and indicated by the request message.
Citation Information
Patent Citations
Information set and information transmission method for vehicle-mounted communication
CN113395298A
Relay node selection method and device
US20200404571A1
Operating method related to selection of relay UE in wireless communication system
US20230309009A1
Relay UE selection
US20230363057A1