A multi-transmission and selective reception method, device and related equipment
By exchanging negotiation messages between the receiver and sender to determine the status of multiple transmission and reception, the problems of data loss and resource waste during multiple transmission and reception anomalies are solved, thus achieving stability and reliability in the communication process.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2024-11-29
- Publication Date
- 2026-05-29
AI Technical Summary
In multiple-send selective reception (MSDR) technology, when an anomaly occurs at the sending or receiving end, communication continues according to the MSDR protocol, leading to data loss or resource waste.
The receiving end and the sending end exchange their respective multi-transmission and selective reception status by sending negotiation messages to each other. Based on the status information, they determine whether multi-transmission and selective reception can be performed. If multi-transmission and selective reception cannot be performed, they switch to a non-multi-transmission and selective reception mode to avoid data loss and resource waste.
By adjusting communication methods in a timely manner, data loss and resource waste caused by one party's lack of multi-transmit/selective receiving capabilities can be prevented, thus ensuring the stability and reliability of the communication process.
Smart Images

Figure CN122120115A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a method, apparatus and related equipment for multiple transmission and reception. Background Technology
[0002] In current multiple-selection (MSG) technologies, after configuring the MSG protocol between the sender and its corresponding receiver, if one end malfunctions, the other end will still perform MSG according to the protocol, leading to data loss or resource waste. For example, if the receiver malfunctions and cannot receive multiple identical data streams, the sender will still send multiple identical data streams to the receiver, resulting in resource waste. Similarly, if the sender malfunctions and sends an increased number of data streams, the receiver will still receive the number of data streams specified by the MSG protocol, leading to data loss. It should be noted that the MSG protocol includes the number of identical data streams and the identifier of the identical data streams. Summary of the Invention
[0003] This application provides a method, apparatus, and related equipment for multiple transmission and reception. The transmitting end and the receiving end can quickly sense whether the other party is capable of multiple transmission and reception by sending their respective multiple transmission and reception statuses, and then switch between multiple transmission and reception and non-multiple transmission and reception to avoid long-term data loss and resource waste.
[0004] In a first aspect, this application provides a method for multiple-transmission selective reception, the method comprising: a receiving end receiving a first negotiation message sent by a first sending end, the first negotiation message including first status information, the first status information being used to indicate the current multiple-transmission selective reception status of the first sending end, the multiple-transmission selective reception status including enabling the multiple-transmission selective reception function or disabling the multiple-transmission selective reception function; the receiving end obtaining second status information, the second status information being used to indicate the current multiple-transmission selective reception status of the receiving end; the receiving end determining whether to engage in multiple-transmission selective reception with the first sending end based on the first status information and the second status information, and if it is determined that multiple-transmission selective reception with the first sending end cannot be engaged, the receiving end communicating with the first sending end in a non-multiple-transmission selective reception manner or terminating the communication with the first sending end.
[0005] Implementing the above scheme, the receiving end exchanges its multi-transmission selection status with the sending end by sending negotiation messages. Based on the status of both parties, it determines whether multi-transmission selection is possible. If multi-transmission selection is not possible, the receiving end promptly adjusts its communication method with the sending end, thereby reducing data loss and resource waste caused by multi-transmission selection. For example, when the receiving end malfunctions and cannot receive multiple identical data streams, the sending end receives a negotiation message from the receiving end indicating that multi-transmission selection is disabled. Based on the content of this negotiation message, the sending end determines that it can no longer engage in multi-transmission selection with the receiving end and sends the data stream to the receiving end individually. Conversely, when the sending end malfunctions and sends an increased number of data streams, the receiving end receives a negotiation message from the sending end indicating that multi-transmission selection is disabled. Based on the content of this negotiation message, the receiving end determines that it can no longer engage in multi-transmission selection with the sending end and stops receiving data streams from the sending end from multiple forwarding paths.
[0006] In one possible implementation of the first aspect, after the receiving end obtains the second status information, the method further includes: the receiving end sending a second negotiation message to the first sending end, the second negotiation message including the second status information.
[0007] In one possible implementation of the first aspect, the receiving end determines whether it can perform multiple-transmission selective reception with the first sending end based on the first status information and the second status information, including: if the first status information indicates that the first sending end has not enabled the multiple-transmission selective reception function, or if the second status information indicates that the receiving end has not enabled the multiple-transmission selective reception function, the receiving end determines that it cannot perform multiple-transmission selective reception with the first sending end.
[0008] By implementing the above scheme, when it is determined that either the sending end or the receiving end is unable to perform multiple transmission and reception, the entire system will not perform multiple transmission and reception. This can effectively prevent data loss and resource waste caused by one party forcibly performing multiple transmission and reception when the two parties are communicating, thereby ensuring the stability and reliability of the communication process.
[0009] In one possible implementation of the first aspect, the method further includes: the receiving end sending a third negotiation message to the second sending end, the third negotiation message including third status information, the third status information being used to indicate the current multi-transmission selective reception status of the receiving end; the receiving end determining whether a fourth negotiation message has been received within a first time threshold, the fourth negotiation message including fourth status information, the fourth status information being used to indicate that the second sending end has not enabled the multi-transmission selective reception function; if no fourth negotiation message is received within the first time threshold, the receiving end determines that it cannot perform multi-transmission selective reception with the second sending end, and communicates with the second sending end in a non-multi-transmission selective reception manner or terminates the communication with the second sending end.
[0010] Implementing the above scheme, if the fourth negotiation message from the second sender is not received within the specified time, choosing to communicate using a non-multiple-send selective method or terminating communication can avoid data loss and resource waste caused by continuing to communicate using the multiple-send selective method when the conditions for multiple-send selective are not met. By specifying a waiting time range for both parties participating in multiple-send selective, if no response is received within this time range, it is determined that multiple-send selective cannot proceed. This effectively eliminates the uncertainty for both parties regarding whether to continue multiple-send selective communication, avoiding prolonged waiting for feedback from the other party, and allowing both ends of the communication to make timely decisions.
[0011] In one possible implementation of the first aspect, the first negotiation message further includes a first identifier, which is an identifier that uniquely identifies the first sender, and the second negotiation message further includes a second identifier, which is an identifier that uniquely identifies the receiver. The method further includes: when the receiver determines that it can perform multiple transmission and selective reception with the first sender, it determines the stream identifier ID for performing multiple transmission and selective reception with the first sender based on the first identifier and the second identifier.
[0012] In one possible implementation of the first aspect, the first identifier includes one or more of the router identifier ID, loopback interface address, and route locator address of the first sender, and the second identifier includes one or more of the router ID, loopback interface address, and route locator address of the receiver. Determining the flow ID for multiple transmission and selective reception with the first sender based on the first identifier and the second identifier includes: the receiver using a combination of the first identifier and the second identifier as the flow ID for multiple transmission and selective reception with the first sender.
[0013] Implementing the above scheme, the data stream ID during multi-transmission selection is determined by combining the first identifier (containing one or more of the router ID, loopback interface address, and router locator address of the sending end) and the second identifier (containing one or more of the router ID, loopback interface address, and router locator address of the receiving end). In complex communication network environments, there are numerous interactions between different communication ends. The data stream ID determined by the combination of the first and second identifiers can clearly distinguish each multi-transmission selection data stream. Furthermore, when transmission errors, significant data loss, or excessive latency occur during multi-transmission selection, the ID of the problematic data stream can quickly identify which two communication ends have experienced a communication failure, thereby greatly improving the efficiency of fault diagnosis and ensuring the stability of the communication system.
[0014] In one possible implementation of the first aspect, the first negotiation message further includes a first stream count, which is the number of data streams that the first sender can process when performing multiple-transmission selective reception. The second negotiation message further includes a second stream count, which is the number of data streams that the receiver can process when performing multiple-transmission selective reception. The method further includes: when the receiver determines that it can perform multiple-transmission selective reception with the first sender, it determines the number of data streams when performing multiple-transmission selective reception with the first sender based on the first stream count and the second stream count.
[0015] In one possible implementation of the first aspect, determining the number of data streams for multiple transmission and reception with the first transmitter based on the number of first streams and the number of second streams includes: the receiver using the smaller of the number of first streams and the number of second streams as the number of data streams for multiple transmission and reception with the first transmitter.
[0016] Implementing the above scheme, since the first negotiation message contains the number of data streams the sender can process during multi-transmission selective reception (the aforementioned number of first streams), and the second negotiation message contains the number of data streams the receiver can process (the aforementioned number of second streams), the sender can determine the number of data streams the receiver can process after receiving the second negotiation message, and the receiver can determine the number of data streams the sender can process after receiving the first negotiation message. Because both communicating parties clearly know each other's processing capabilities, setting the number of data streams for multi-transmission selective reception based on this ensures that the number of data streams set during multi-transmission selective reception matches the actual processing capabilities of both parties. This avoids an excessive number of data streams, which could lead to data loss and resource waste, thus ensuring the stability of multi-transmission selective reception. For example, if the sender experiences an anomaly that increases the number of data streams it sends, the receiver determines the change in the number of data streams sent by the sender based on the negotiation message, updates the number of data streams specified in the multi-transmission selective reception protocol according to the content of the negotiation message, and then receives the multiple data streams corresponding to that number.
[0017] Secondly, this application provides a multi-transmission selective reception device, comprising: a receiving module, configured to receive a first negotiation message sent by a first transmitting end, the first negotiation message including first status information, the first status information indicating the current multi-transmission selective reception status of the first transmitting end, the multi-transmission selective reception status including enabling the multi-transmission selective reception function or disabling the multi-transmission selective reception function; a processing module, configured to acquire second status information, the second status information indicating the current multi-transmission selective reception status of the multi-transmission selective reception device; the processing module is further configured to determine whether to perform multi-transmission selective reception with the first transmitting end based on the first status information and the second status information, and if it is determined that multi-transmission selective reception with the first transmitting end cannot be performed, to communicate with the first transmitting end in a non-multi-transmission selective reception manner or to terminate the communication with the first transmitting end.
[0018] In one possible implementation of the second aspect, the apparatus further includes a sending module for: sending a second negotiation message to a first sending end, the second negotiation message including second status information.
[0019] In one possible implementation of the second aspect, the processing module is specifically configured to: determine that multiple transmission and reception cannot be performed with the first transmitter when the first status information indicates that the first transmitter has not enabled the multiple transmission and reception function, or when the second status information indicates that the multiple transmission and reception device has not enabled the multiple transmission and reception function.
[0020] In one possible implementation of the second aspect, the sending module is further configured to send a third negotiation message to the second sending end, the third negotiation message including third status information, the third status information being used to indicate the current multi-transmission and reception status of the multi-transmission and reception device; the receiving module is further configured to determine whether a fourth negotiation message has been received within a first time threshold, the fourth negotiation message including fourth status information, the fourth status information being used to indicate the current multi-transmission and reception status of the second sending end; if no fourth negotiation message is received within the first time threshold, the processing module determines that multi-transmission and reception cannot be performed with the second sending end, and communicates with the second sending end using a non-multi-transmission and reception method or terminates communication with the second sending end.
[0021] In one possible implementation of the second aspect, the first negotiation message further includes a first identifier, which is an identifier that uniquely identifies the first sender, and the second negotiation message further includes a second identifier, which is an identifier that uniquely identifies the multi-transmission and selective reception device. The processing module is further configured to: determine the flow identifier ID for multi-transmission and selective reception with the first sender based on the first identifier and the second identifier when it is determined that multi-transmission and selective reception with the first sender is possible.
[0022] In one possible implementation of the second aspect, the first identifier includes one or more of the router identifier ID, loopback interface address, and route locator address of the first sender, and the second identifier includes one or more of the router ID, loopback interface address, and route locator address of the multi-transmit / receive device. The processing module is specifically used to: use the combination of the first identifier and the second identifier as the flow ID when performing multi-transmit / receive with the first sender.
[0023] In one possible implementation of the second aspect, the first negotiation message further includes a first stream count, which is the number of data streams that the first transmitter can process when performing multi-transmission selective reception. The second negotiation message further includes a second stream count, which is the number of data streams that the multi-transmission selective reception device can process when performing multi-transmission selective reception. The processing module is further configured to: determine the number of data streams when performing multi-transmission selective reception with the first transmitter based on the first stream count and the second stream count, when it is determined that multi-transmission selective reception with the first transmitter is possible.
[0024] In one possible implementation of the second aspect, the processing module is specifically configured to: use the smaller of the number of first streams and the number of second streams as the number of data streams when performing multiple transmit / receive with the first sender.
[0025] Thirdly, this application provides a computing device including a processor and a memory, the processor being configured to execute instructions stored in the memory to cause the computing device to perform the multiple-receiver method as described in the first aspect and any possible implementation thereof.
[0026] Fourthly, this application provides a computer program product containing instructions that, when executed by a computing device, cause the computing device to perform the multiple-receive method as described in the first aspect and any possible implementation thereof.
[0027] Fifthly, this application provides a computer-readable storage medium including computer program instructions, which, when executed by a computing device, enable the computing device to perform a multiple-receive method as described in the first aspect and any possible implementation thereof.
[0028] The second, third, fourth and fifth aspects mentioned above all have various possible designs similar to the first aspect and any possible implementation of the first aspect, and can produce corresponding technical effects, which will not be elaborated here.
[0029] Based on the implementation methods provided in the above aspects, this application can be further combined to provide more implementation methods. Attached Figure Description
[0030] Figure 1 This is a schematic diagram of a vehicle-to-ground network structure provided in this application;
[0031] Figure 2 This is a schematic diagram of a multi-send selective reception method provided in this application;
[0032] Figure 3 This is an architectural diagram of a multi-transmitter selective receiver provided in this application;
[0033] Figure 4This is a schematic diagram of the structure of a computing device provided in this application. Detailed Implementation
[0034] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0035] In the field of communication technology, reliable data transmission has always been a key concern. Current communication systems are limited by technology, making data transmission susceptible to environmental interference, leading to data loss. For example, in urban environments, numerous buildings and trees reflect, refract, and scatter wireless signals, making the path of the data stream from the sender to the receiver complex and varied. Because the arrival times and phases of data streams along different paths differ, the superposition of these different paths can cause data loss.
[0036] To improve the reliability of data stream transmission, existing methods employ multiple-send-select (MSS) technology. MSS technology involves the sending end copying the data stream to be sent to the receiving end and sending multiple copied data streams simultaneously or at intervals to the receiving end. The receiving end then selects the data stream from the received streams that has no data loss or has a minimal data loss rate for reception, thereby improving the reliability of data stream transmission.
[0037] In current multiple-selective (MSG) technologies, after configuring the MSG protocol between the sender and its corresponding receiver, if one end malfunctions, the other end will still perform MSG according to the protocol, resulting in data loss or resource waste. For example, if the receiver malfunctions and cannot receive multiple identical data streams, the sender will still send multiple identical data streams to the receiver, leading to resource waste. Similarly, if the sender malfunctions and sends an increased number of data streams, the receiver will still receive the number of data streams specified by the MSG protocol, resulting in data loss.
[0038] For example, see Figure 1 , Figure 1 This is a schematic diagram of a vehicle-to-ground network structure provided in this application, such as... Figure 1As shown, the vehicle-to-ground network mainly includes a vehicle-to-ground backhaul system and a vehicle-mounted base station system. The vehicle-to-ground backhaul system includes millimeter-wave base stations, an Intellectual Property Radio Access Network (IPRAN) private network, a millimeter-wave core network, and routers. The vehicle-mounted base station system mainly includes vehicle-mounted routers, front-end customer premises equipment (CPE), and rear-end CPE. The millimeter-wave base stations are used to transmit and receive wireless signals in the millimeter-wave band. The IPRAN private network is used to efficiently transmit data between the base station and the millimeter-wave core network in the mobile network. The millimeter-wave core network is the central network for processing millimeter-wave band communication data and is used to manage and allocate network resources. The front-end CPE and rear-end CPE are used to communicate with external networks, including providing network access channels for signals to enter the vehicle-mounted base station system.
[0039] exist Figure 1 In the vehicle-to-ground network shown, data from the onboard router in the vehicle-mounted base station system can reach the router in the vehicle-to-ground backhaul system via two paths: the front CPE and the rear CPE. When the train is running in a tunnel, the distance and angle between the front and rear CPEs and the millimeter-wave base station in the tunnel are constantly changing, causing the wireless signal strength of the front and rear CPEs to fluctuate, resulting in data loss.
[0040] To address the aforementioned issues, this application provides a multiple-transmitter selective-receiver method applicable to a communication system comprising a receiver and a transmitter.
[0041] The multiple-transmission selective reception method includes: the receiving end receiving a first negotiation message, which includes the current multiple-transmission selective reception status of the sending end, including whether the multiple-transmission selective reception function is enabled or disabled; the receiving end sending a second negotiation message to the sending end, which includes the current multiple-transmission selective reception status of the receiving end; the receiving end determining whether it can conduct multiple-transmission selective reception with the sending end based on the first negotiation message and the second negotiation message; if it is determined that it cannot conduct multiple-transmission selective reception with the sending end, the receiving end communicating with the sending end in a non-multiple-transmission selective reception manner or terminating the communication with the sending end. In the above method, the receiving end quickly senses whether the sending end is capable of multi-transmission selection by exchanging their respective multi-transmission selection statuses. It then switches between multi-transmission selection and non-multi-transmission selection to avoid prolonged data loss and resource waste. For example, if the receiving end malfunctions and cannot receive multiple identical data streams, the sending end receives a negotiation message from the receiving end indicating that the receiving end has disabled multi-transmission selection. Based on the content of this negotiation message, the sending end determines that it can no longer engage in multi-transmission selection with the receiving end and sends the data stream to the receiving end as a single transmission. Conversely, if the sending end malfunctions and the number of data streams it sends increases, the receiving end receives a negotiation message from the sending end indicating that the sending end has disabled multi-transmission selection. Based on the content of this negotiation message, the receiving end determines that it can no longer engage in multi-transmission selection with the sending end, i.e., it no longer receives data streams from the sending end from multiple forwarding paths.
[0042] The following is combined with Figure 2 To introduce the multi-shot selection method provided in this application, see [link to relevant documentation]. Figure 2 , Figure 2 This is a schematic diagram of a multi-transmission selective reception method provided in this application, such as... Figure 2 As shown, the multiple-transmission selective reception method includes the following steps:
[0043] S201: The receiving end receives the first negotiation message sent by the sending end.
[0044] The aforementioned first negotiation message includes first status information, which is used to indicate the current multi-transmission and selective reception status of the sender. The multi-transmission and selective reception status includes enabling the multi-transmission and selective reception function and disabling the multi-transmission and selective reception function. It should be understood that the current status of the sender can only be one of enabling or disabling the multi-transmission and selective reception function.
[0045] It should be understood here that the aforementioned first status information is the value of a field in the first negotiation message. The value of this field is used to carry the multi-transmission and selective reception status of the sender. For example, there is a field "status" in the header field of the first negotiation message. This field contains 1 bit. When the value of the field "status" is 1, it indicates that the current multi-transmission and selective reception status of the sender is that the multi-transmission and selective reception function is enabled; when the value of the field "status" is 0, it indicates that the current multi-transmission and selective reception status of the sender is that the multi-transmission and selective reception function is not enabled.
[0046] The receiving end receives the first negotiation message sent by the sending end, specifically including: the sending end encapsulates a message containing its own multi-transmission and selective reception status, and then sends it to the receiving end through data transmission. After receiving the first negotiation message, the receiving end parses the first negotiation message to obtain the sending end's multi-transmission and selective reception status.
[0047] The aforementioned sending end can transmit a message containing the multiple transmit / receive status to the receiving end in either a wired or wireless manner. Wired methods include fiber optic communication, Ethernet, serial and parallel interfaces, etc.; wireless methods include wireless networks (Wi-Fi), Bluetooth, ZigBee, etc. It should be understood that this application does not limit the method by which the sending end transmits information to the receiving end.
[0048] Optionally, the first negotiation message also includes a first identifier, which is a unique identifier for the sending end. Specifically, it can be one or more of the sending end's router ID, loopback interface address, and locator address. The router ID is an identifier used to uniquely identify a router in a network system. Its function is to provide a stable and distinguishable identifier for the router, thereby facilitating the transmission of the router's routing information in the network system. The router ID can be manually configured or automatically generated by the router. In the case of manual configuration, the network administrator enters a unique number within the network system as the router ID at the router's configuration interface according to the needs of the network system and network planning requirements. In the case of automatic generation, the router ID can be obtained by the router based on its own interface Internet Protocol (IP) address and a preset algorithm to calculate the IP address of the interface. It should be understood here that when the first identifier includes a router ID, the sending end contains at least one router. A LoopbackInterface is a virtual network interface, and its address is the IP address assigned to this interface. It is primarily used as a stable and distinguishable identifier in network management and testing environments. In a network system, the LoopbackInterface address can serve as a fixed reference point, especially when the physical interface address of a router is prone to change due to network topology variations. Because the LoopbackInterface is a virtual network interface, it remains relatively stable. A Locator address is an identifier used to locate network nodes (including routers, head nodes, and tail nodes). Unlike a router ID, which focuses on the device's own identification and is used for communication and routing information exchange between routers, and is a fixed identifier used to uniquely identify its corresponding router, the Locator address assists in the routing process, allowing data to flow more rationally within the network system based on the location of each network node. The Locator address includes the physical location (e.g., the geographical location of a data center) or logical location (e.g., the location of a router within a virtual network partition) of the network node.
[0049] It should be understood here that the aforementioned first identifier is a value within a field in the first negotiation message. This field's value is used to carry the unique identifier of the sender. For example, in the header field of the first negotiation message, there is a field called "SessionId". When the first identifier is a router ID, the address corresponding to the value in the "SessionId" field could be 2.2.2.2; when the first identifier is a LoopbackInterface address, the address corresponding to the value in the "SessionId" field could be 10.1.1.1 / 32, where / 32 represents a subnet mask of 255.255.255.255; when the first identifier is a Locator address, the address corresponding to the value in the "SessionId" field could be 203.0.113.5. Furthermore, a prefix field can be added next to the "SessionId" field to indicate the type of the first identifier. For example, the address corresponding to the value in "SessionId" could be 2.2.2.2, and the prefix field value could be 01, where 01 indicates that the type of the first identifier is a router ID.
[0050] It should be understood here that by carrying the sender's unique identifier in the first negotiation message, the receiver can obtain the sender's unique identifier after receiving and parsing the first negotiation message. Based on the sender's unique identifier, the receiver can not only determine with whom to conduct multi-transmission and selective reception, but also encrypt and identify the information to be sent, so that only the sender can receive and parse the sent information.
[0051] Optionally, the first negotiation message may also include the number of first streams, which is the number of data streams that the sender can process when performing multiple transmit and receive. For example, if the sender can process 5 data streams when performing multiple transmit and receive, then the number of first streams is 5.
[0052] It should be understood here that the number of first streams mentioned above is the value of a field in the first negotiation message. The value of this field is used to carry the number of data streams that the sender can process when performing multiple transmit and receive. For example, there is a field "flowNum" in the header field of the first negotiation message. This field can include 4 bits. When the value of "flowNum" is 1000, it means that the sender is performing multiple transmit and receive and can process 8 data streams.
[0053] It should be understood here that by carrying the number of data streams that the sender can process in the first negotiation message, the receiver can obtain the number of data streams that the sender can process after receiving and parsing the first negotiation message. The receiver determines the number of data streams when performing multiple transmit / receive with the sender by comparing the number of data streams that the sender can process with the number of data streams that it can process.
[0054] Optionally, the receiving end receiving the first negotiation message sent by the sending end further includes: the receiving end determining whether it has received the first negotiation message sent by the sending end within a time threshold; if the receiving end has not received the first negotiation message sent by the sending end within the time threshold, it determines that it cannot perform multiple-send-selection with the sending end, and executes S205.
[0055] The aforementioned time threshold can be set manually or obtained by the receiving end based on the corresponding algorithm and the previously collected sending time of the sending end. This application does not limit the method of obtaining the time threshold.
[0056] This means that if the receiving end does not receive the first negotiation message from the sending end within a time threshold, it determines that it cannot engage in multiple-send selective reception. This avoids data loss and resource waste caused by the receiving end still communicating using multiple-send selective reception when the sending end does not meet the conditions for multiple-send selective reception. By specifying a waiting time range for the participating receiving end, if it does not receive the first negotiation message from the sending end within this time range, it is determined that it cannot engage in multiple-send selective reception. This effectively eliminates the uncertainty for the receiving end regarding whether to continue multiple-send selective reception during the communication process, avoiding a prolonged state of waiting for feedback from the other party, and allowing the receiving end to make appropriate decisions in a timely manner.
[0057] Similarly, a time threshold can be set in the sending end. The sending end determines whether it receives the second negotiation message sent by the receiving end within the time threshold. If the sending end does not receive the second negotiation message sent by the receiving end within the time threshold, it determines that it cannot perform multiple-send selection with the receiving end.
[0058] For details regarding the content of the aforementioned second negotiation message, please refer to the relevant description in S202 below.
[0059] S202: The receiving end sends a second negotiation message to the sending end.
[0060] The aforementioned second negotiation message includes second status information, which indicates the current multi-transmission / receiver status of the receiving end. This multi-transmission / receiver status includes two states: multi-transmission / receiver enabled and multi-transmission / receiver disabled. It should be understood that the receiving end's current status can only be either multi-transmission / receiver enabled or multi-transmission / receiver disabled.
[0061] It should be understood here that the above-mentioned second status information is the value of a field in the second negotiation message. For details, please refer to the relevant content of the first status information in S201 above. This application will not elaborate further here.
[0062] The receiving end sends a second negotiation message to the sending end, which specifically includes: the receiving end obtaining its own multi-transmission and selective reception status, encapsulating a message containing its own multi-transmission and selective reception status, and then sending it to the sending end via data transmission. After receiving the second negotiation message, the sending end obtains the receiving end's multi-transmission and selective reception status by parsing the second negotiation message.
[0063] The receiving end can send a message containing its own multiple-transmit select-receive status to the sending end in either a wired or wireless manner. For a description of wired and wireless transmission, please refer to the relevant content in S201 above. This application will not elaborate further here.
[0064] Optionally, the second negotiation message may also include a second identifier, which is a unique identifier for the receiving end. Specifically, it may be one or more of the receiving end's router ID, LoopbackInterface address, and route Locator address. For a description of the router ID, LoopbackInterface address, and route Locator address, please refer to the relevant content in S201 above. This application will not elaborate further here.
[0065] It should be understood here that the second identifier mentioned above is the value of a field in the second negotiation message. For details, please refer to the relevant content of the first identifier in S201 above. This application will not elaborate further here.
[0066] It should be understood here that by carrying the unique identifier of the receiver in the second negotiation message, the sender can obtain the unique identifier of the receiver after receiving and parsing the second negotiation message. Based on the unique identifier of the receiver, the sender can not only determine with whom to conduct multi-transmission and selection, but also encrypt and identify the information to be sent, so that only the receiver can receive and parse the sent information.
[0067] Optionally, the second negotiation message may also include a second stream count, which is the number of data streams that the receiver can process when performing multiple transmit / receive.
[0068] It should be understood here that the number of the second stream is a value in a field of the second negotiation message. For details, please refer to the relevant content of the number of the first stream in S201 above. This application will not elaborate further here.
[0069] It should be understood here that by carrying the number of data streams that the receiver can process in the second negotiation message, the sender can obtain the number of data streams that the receiver can process after receiving and parsing the second negotiation message. The sender determines the number of data streams to be processed when performing multiple transmit / receive with the receiver by comparing the number of data streams that the receiver can process with the number of data streams that it can process.
[0070] It should be noted that there is no strict order between S201 and S202, and S201 and S202 can be performed simultaneously. That is, the receiving end can send the second negotiation message to the sending end and then receive the first negotiation message sent by the sending end, and the receiving end can send the second negotiation message to the sending end and receive the first negotiation message sent by the sending end at the same time.
[0071] S203: The receiving end determines whether it can perform multiple-transmission and selective-reception with the sending end based on the content of the first negotiation message and the content of the second negotiation message. If it is determined that it can perform multiple-transmission and selective-reception with the sending end, the receiving end executes S204; if it is determined that it cannot perform multiple-transmission and selective-reception with the sending end, the receiving end executes S205.
[0072] As can be seen from the descriptions in S201 and S202, the content of the first negotiation message includes first status information, and the content of the second negotiation message includes second status information. For a description of the first status information, please refer to the relevant content in S201 above, and for a description of the second status information, please refer to the relevant content in S202 above. This application will not elaborate further here.
[0073] The receiving end determines whether it can perform multi-transmission selective reception with the sending end based on the content of the first negotiation message and the content of the second negotiation message. Specifically, this includes: the receiving end determining the current multi-transmission selective reception status of the sending end based on the first status information; and the receiving end determining whether to perform multi-transmission selective reception with the sending end based on the current multi-transmission selective reception status of the sending end and its own current multi-transmission selective reception status. If the receiving end determines that the sending end's current multi-transmission selective reception status is enabled, and its own current multi-transmission selective reception status is also enabled, it determines that it can perform multi-transmission selective reception with the sending end, and the receiving end executes S204. If the receiving end determines that the sending end's current multi-transmission selective reception status is disabled, or its own current multi-transmission selective reception status is disabled, it determines that it cannot perform multi-transmission selective reception with the sending end, and the receiving end executes S205.
[0074] This means that when it is determined that either the receiving end or the sending end cannot perform multiple-transmission selection, the entire system will not perform multiple-transmission selection. This effectively prevents data loss and resource waste caused by one party forcibly performing multiple-transmission selection when the two parties are communicating, thus ensuring the stability and reliability of the communication process.
[0075] S204: The receiver and transmitter communicate using a multiple-send selective-receive method.
[0076] The receiver and sender communicate using a multiple-transmission-selective method, which includes: the sender copying the original information to obtain multiple identical pieces of information; the sender sending these multiple pieces of information to the receiver through multiple different communication paths; the receiver obtaining these multiple pieces of information from the multiple communication paths, checking the completeness of each piece of information, and selecting the information with the best quality for reception.
[0077] The aforementioned sending end is the party that sends multiple pieces of information during the communication process between the sending end and the receiving end, and the aforementioned receiving end is the party that receives multiple pieces of information during the communication process between the sending end and the receiving end.
[0078] Optionally, when the first negotiation message includes a first identifier and the second negotiation message includes a second identifier, the communication between the receiving end and the sending end using a multiple-send selective-receive method further includes: the receiving end using a combination of the first identifier and the second identifier as the stream ID when the receiving end and the sending end perform multiple-send selective-receive; the sending end copying the original information, obtaining multiple identical pieces of information, and adding header information to each piece of information, the header information including the stream ID when performing multiple-send selective-receive; the sending end sending these multiple pieces of information to the receiving end through multiple different communication paths; the receiving end obtaining these multiple pieces of information from the multiple communication paths, checking the completeness of each piece of information, and selecting the piece of information with the best quality for reception.
[0079] For a description of the first and second identifiers mentioned above, please refer to the relevant content in S201 and S202 above, which will not be repeated here.
[0080] This section explains that the data stream ID for multiple-transmission selective reception is determined by combining the first identifier (containing one or more of the sender's router ID, LoopbackInterface address, and Locator address) and the second identifier (containing one or more of the receiver's router ID, LoopbackInterface address, and Locator address). In complex communication network environments, there are numerous interactions between different communication ends. The data stream ID determined by combining the first and second identifiers can clearly distinguish each multiple-transmission selective reception data stream. Furthermore, when transmission errors, significant data loss, or excessive latency occur during multiple-transmission selective reception, the problematic data stream ID can quickly identify which two communication ends have experienced a communication failure, thereby greatly improving troubleshooting efficiency and ensuring the stability of the communication system.
[0081] Optionally, when the first negotiation message includes the number of first streams and the second negotiation message includes the number of second streams, the communication between the receiver and the sender using a multi-transmission selective reception method further includes: the receiver using the smaller of the number of first streams and the number of second streams as the number of streams when the receiver and the sender perform multi-transmission selective reception; the sender copying the original information to obtain multiple identical pieces of information, the number of which is the same as the number of streams when performing multi-transmission selective reception; the sender sending these multiple pieces of information to the receiver through multiple different communication paths; the receiver obtaining these multiple pieces of information from the multiple communication paths, checking the completeness of each piece of information, and selecting the information with the best quality for reception.
[0082] For a description of the number of first-order and second-order items mentioned above, please refer to the relevant content in S201 and S202 above. This application will not elaborate further here.
[0083] This explains that since the first negotiation message contains the number of data streams the sender can process during multi-transmission selective reception (the aforementioned number of first streams), and the second negotiation message contains the number of data streams the receiver can process (the aforementioned number of second streams), the sender can determine the number of data streams the receiver can process after receiving the second negotiation message, and the receiver can determine the number of data streams the sender can process after receiving the first negotiation message. Because both the sender and receiver are aware of each other's processing capabilities, setting the number of data streams for multi-transmission selective reception based on this ensures that the number of data streams set during multi-transmission selective reception matches the actual processing capabilities of both parties. This avoids an excessive number of data streams, which could lead to data loss and resource waste, thus ensuring the stability of multi-transmission selective reception. For example, if the sender experiences an anomaly that increases the number of data streams it sends, the receiver determines the change in the number of data streams sent by the sender based on the negotiation message, updates the number of data streams specified in the multi-transmission selective reception protocol according to the content of the negotiation message, and then receives the multiple data streams corresponding to that number.
[0084] S205: The receiver and transmitter communicate using a non-multiple-transmit selective-receive method or terminate communication.
[0085] The aforementioned non-multiple-transmitter-selective-receiver methods include single-path transmission and broadcast methods. Single-path transmission involves the sender transmitting data to the receiver through a single communication path. This method is suitable for communication scenarios where transmission rate and reliability requirements are not high. When the data processing capability of either the sender or receiver decreases—for example, if the sender can only process a small amount of data due to an anomaly—the sender and receiver can communicate using single-path transmission. Broadcast method involves the sender sending the same data to all possible receivers. Each receiver decides whether to receive the data based on its own settings and needs. This method is suitable for communication scenarios where one sender corresponds to multiple receivers. When the identifier of either the sender or receiver changes—for example, if the receiver's network identifier changes due to a network topology update—the sender can broadcast the information to the receiver.
[0086] It should be understood here that the above Figure 2 This application describes the multiple transmit / receive method provided by the receiving end from the perspective of the receiving end. Since the steps taken by the receiving end and the transmitting end when using the multiple transmit / receive method provided by this application are similar, the relevant descriptions of the transmitting end side in the above-mentioned multiple transmit / receive method can be found in the relevant content of the receiving end side, and will not be elaborated further here.
[0087] In summary, in this multi-transmission selective reception method, the receiving end receives a first negotiation message sent by the sending end, which includes whether the sending end enables the multi-transmission selective reception function; the receiving end sends a second negotiation message to the sending end, which also includes whether the receiving end enables the multi-transmission selective reception function; the receiving end determines whether it can perform multi-transmission selective reception with the sending end based on the first and second negotiation messages. If it determines that multi-transmission selective reception with the sending end is not possible, it communicates with the sending end using a non-multi-transmission selective reception method or terminates communication with the sending end. In this method, the receiving end quickly senses whether the sending end can perform multi-transmission selective reception by exchanging their respective multi-transmission selective reception statuses, and then switches between multi-transmission selective reception and non-multi-transmission selective reception, avoiding prolonged data loss and resource waste.
[0088] For the sake of simplicity, the above method embodiments are described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to this application. Other reasonable combinations of steps that those skilled in the art can conceive of based on the above description also fall within the scope of protection of this application. Again, those skilled in the art should be familiar with the fact that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to this application.
[0089] See Figure 3 , Figure 3 This is an architectural diagram of a multi-transmitter selective receiver provided in this application, such as... Figure 3 As shown, Figure 3 The device includes a multi-transmission selective receiver 300 and a transmitter 310. The multi-transmission selective receiver 300 is used to perform network transmissions including multi-transmission selective receiver with the transmitter 310. The transmitter 310 is used to perform various network transmissions including multi-transmission selective receiver with the multi-transmission selective receiver 300. It should be noted that the multi-transmission selective receiver 300 can also be referred to as a transmitter.
[0090] The multi-transmitter selective receiver 300 can be further divided into multiple unit modules, such as... Figure 3 As shown, the multi-transmitter selective receiver 300 also includes a receiving module 301, a transmitting module 302, and a processing module 303. It should be understood that... Figure 3 The number and names of the unit modules included in the multi-receiver device 300 are merely examples provided in this application. The multi-receiver device 300 may include more or fewer unit modules, and the names of the unit modules are not limited to [specific examples would be inserted here]. Figure 3The name of the unit module in the above-mentioned multi-transmitter selective receiver 300 may include a network environment detection module. The network environment detection module is used to detect the transmission status of the network transmission path between the multi-transmitter selective receiver 300 and the transmitter 310, and send the detected results to the transmitter module 302 and the receiver module 301. Figure 3 The receiving module 301 and the transmitting module 302 in the middle can be combined into a communication module; Figure 3 The name of the sending module 302 can be changed to the first negotiation module. It should be understood that the above example is for illustration only and should not be regarded as a specific limitation.
[0091] The receiving module 301, transmitting module 302, and processing module 303 in the above-mentioned multi-transmitter selective receiver 300 are described below.
[0092] The receiving module 301 is used to receive the first negotiation message sent by the sending end 310. The first negotiation message includes first status information, first identifier and first stream number.
[0093] The receiving module 301 can be used to implement the above. Figure 2 Method S201 in the middle.
[0094] The first identifier mentioned above is a unique identifier for the sender 310, which can be one or more of the router ID, LoopbackInterface address, and Locator address of the sender 310.
[0095] The number of first streams mentioned above refers to the number of data streams that the transmitter 310 can process when performing multiple transmit / receive operations.
[0096] The aforementioned first status information is used to indicate the current multi-transmission and multi-reception status of the transmitter 310. The multi-transmission and multi-reception status includes enabling the multi-transmission and multi-reception function and disabling the multi-transmission and multi-reception function.
[0097] For a description of the first identifier, the number of first flows, and the first status information, please refer to the above. Figure 2 The relevant content at S201 will not be elaborated upon here.
[0098] Optionally, the receiving module 301 receives the first negotiation message sent by the sending end 310, specifically including: the receiving module 301 determining whether it receives the first negotiation message sent by the sending end 310 within the time threshold; if the receiving module 301 does not receive the first negotiation message sent by the sending end 310 within the time threshold, it determines that it cannot perform multiple transmission and selective reception with the sending end 310.
[0099] The aforementioned time threshold can be set manually or obtained by the multi-transmitter selective receiver 300 based on the corresponding algorithm and the previously collected transmission time of the transmitter 310. This application does not limit the method of obtaining the time threshold.
[0100] Here, it is understood that if the receiving module 301 does not receive the first negotiation message sent by the sending end 310 within a time threshold, it determines that it cannot engage in multi-transmission selective reception with the sending end 310. This avoids data loss and resource waste caused by the multi-transmission selective reception device 300 continuing to communicate in the multi-transmission selective reception mode when the sending end 310 does not meet the conditions for multi-transmission selective reception. By specifying a waiting time range for the receiving module 301, if it does not receive the first negotiation message sent by the sending end 310 within this time range, it is determined that it cannot engage in multi-transmission selective reception with the sending end 310. This effectively eliminates the uncertainty of the multi-transmission selective reception device 300 regarding whether to continue multi-transmission selective reception during the multi-transmission selective reception communication process, avoiding a long period of waiting for feedback from the other party, and allowing the multi-transmission selective reception device 300 to make corresponding decisions in a timely manner.
[0101] The sending module 302 is used to send a second negotiation message to the sending end 310. The second negotiation message includes second status information, a second identifier, and a second stream count.
[0102] The sending module 302 can be used to implement the above. Figure 2 Method S202 in the text.
[0103] The aforementioned second identifier is a unique identifier for the multi-transmitter selective receiver 300, and may specifically be one or more of the router ID, LoopbackInterface address, and Locator address of the multi-transmitter selective receiver 300.
[0104] The number of the second streams mentioned above refers to the number of data streams that the multi-transmission and reception device 300 can process when performing multi-transmission and reception.
[0105] The aforementioned second status information is used to indicate the current multiple-transmission selection status of the multiple-transmission selection device 300.
[0106] For a description of the second identifier, the number of second flows, and the second status information, please refer to the above. Figure 2 The relevant content at S202 will not be elaborated upon here.
[0107] Processing module 303 is used to determine whether the multi-transmission selective receiver 300 can perform multi-transmission selective receiver with the transmitter 310 based on the first status information and the second status information. If it is determined that multi-transmission selective receiver cannot be performed with the transmitter 310, the processing module 303 can communicate with the transmitter 310 in a non-multi-transmission selective receiver manner or terminate the communication with the transmitter 310.
[0108] The processing module 303 can be used to implement the above. Figure 2 Methods S203, S204, and S205 in the text.
[0109] The processing module 303 determines whether multiple transmission and reception can be performed between the multiple transmission and reception device 300 and the transmitting end 310 based on the first status information and the second status information. Specifically, it includes: if it is determined that multiple transmission and reception can be performed between the multiple transmission and reception device 300 and the transmitting end 310, updating the calculation method of the flow ID when multiple transmission and reception is performed between the multiple transmission and reception device 300 and the transmitting end 310 based on the first identifier and the second identifier, and updating the number of flows when multiple transmission and reception is performed between the multiple transmission and reception device 300 and the transmitting end 310 based on the first number of flows and the second number of flows.
[0110] The aforementioned processing module 303 determines whether multiple-transmission selective reception device 300 and transmitter 310 can perform multiple-transmission selective reception based on the first status information and the second status information. Specifically, the processing module 303 determines the current multiple-transmission selective reception status of transmitter 310 based on the first status information; the processing module 303 obtains the current multiple-transmission selective reception status of multiple-transmission selective reception device 300; and the processing module 303 determines whether multiple-transmission selective reception device 300 and transmitter 310 can perform multiple-transmission selective reception based on the current multiple-transmission selective reception status of transmitter 310 and the current multiple-transmission selective reception status of multiple-transmission selective reception device 300. If the processing module 303 determines that the current multi-transmission and reception state of the transmitting end 310 is enabled and the current multi-transmission and reception state of the multi-transmission and reception device 300 is also enabled, the processing module 303 determines that the multi-transmission and reception device 300 can perform multi-transmission and reception with the transmitting end 310; if the processing module 303 determines that the current multi-transmission and reception state of the transmitting end 310 is disabled, or if the current multi-transmission and reception state of the multi-transmission and reception device 300 is not enabled, the processing module 303 determines that the multi-transmission and reception device 300 cannot perform multi-transmission and reception with the transmitting end 310.
[0111] It should be understood here that when the processing module 303 determines that the multi-transmission selective receiver 300 can perform multi-transmission selective receiver with the transmitter 310, the multi-transmission selective receiver 300 and the transmitter 310 communicate using the multi-transmission selective receiver method; when the processing module 303 determines that the multi-transmission selective receiver 300 cannot perform multi-transmission selective receiver with the transmitter 310, the multi-transmission selective receiver 300 and the transmitter 310 communicate using a non-multi-transmission selective receiver method or terminate communication.
[0112] It should be understood here that when either the multi-transmitter / receiver device 300 or the transmitter 310 is unable to perform multi-transmitter / receiver, the entire system will not perform multi-transmitter / receiver. This effectively prevents data loss and resource waste caused by one party forcibly performing multi-transmitter / receiver when the two parties are communicating, thereby ensuring the stability and reliability of the communication process.
[0113] The above-mentioned processing module 303 updates the calculation method of the stream ID when the multi-transmission selective receiver 300 and the transmitter 310 perform multi-transmission selective receiver according to the first identifier and the second identifier. Specifically, the processing module 303 uses the combination of the first identifier and the second identifier as the stream ID when the multi-transmission selective receiver 300 and the transmitter 310 perform multi-transmission selective receiver.
[0114] The ID of the data stream determined by the combination of the first identifier and the second identifier can clearly distinguish each multi-transmission and selection data stream. Furthermore, when transmission errors, large amounts of data loss, or excessive latency occur during the multi-transmission and selection process, the ID of the problematic data stream can be used to quickly determine which two communication ends have failed in communication, thereby greatly improving the efficiency of troubleshooting and ensuring the stability of the communication system.
[0115] The processing module 303 updates the number of streams when multiple transmission and reception are performed between the multiple transmission and reception device 300 and the transmitter 310 based on the number of first streams and the number of second streams. Specifically, the processing module 303 uses the smaller value between the number of first streams and the number of second streams as the number of streams when multiple transmission and reception are performed between the multiple transmission and reception device 300 and the transmitter 310.
[0116] Using the smaller value between the number of first streams and the number of second streams as the number of streams when the multi-transmission and reception device 300 and the transmitter 310 perform multi-transmission and reception, the normal multi-transmission and reception between the multi-transmission and reception device 300 and the transmitter 310 can be guaranteed, and the situation of data loss caused by too many data streams sent by the transmitter can be reduced.
[0117] It should be noted that, in other embodiments, the receiving module 301 can be used to perform... Figure 2 In any step of the multiple-transmission selection method, the sending module 302 can be used to execute Figure 2 In the multi-transmission selective reception method, the processing module 303 can be used to execute any step. The steps implemented by the receiving module 301, the transmitting module 302, and the processing module 303 can be specified as needed and implemented by the receiving module 301, the transmitting module 302, and the processing module 303 respectively. Figure 2 The different steps in the multiple transmit / receive method are used to realize all the functions of the receiving end.
[0118] In summary, the multi-transmission selective receiver 300 receives a first negotiation message sent by the sender 310 through the receiving module 301. The first negotiation message includes whether the sender 310 enables the multi-transmission selective receiver function. The sending module 302 sends a second negotiation message to the sender 310. The second negotiation message includes whether the multi-transmission selective receiver 300 enables the multi-transmission selective receiver function. The processing module 303 determines whether the multi-transmission selective receiver 300 can perform multi-transmission selective receiver with the sender 310 based on the first and second negotiation messages. If it is determined that multi-transmission selective receiver with the sender 310 cannot perform multi-transmission selective receiver, the processing module 303 controls the multi-transmission selective receiver 300 to communicate with the sender 310 in a non-multi-transmission selective receiver mode or terminates the communication with the sender 310. In the aforementioned device, the multiple-transmission selective receiver 300 quickly senses whether the other party is capable of multiple-transmission selective receiver by exchanging their respective multiple-transmission selective receiver statuses with the transmitter 310, and then switches between multiple-transmission selective receiver and non-multiple-transmission selective receiver to avoid long-term data loss and resource waste.
[0119] This application also provides a computing device. See [link to application]. Figure 4 , Figure 4 This is a schematic diagram of the structure of a computing device provided in this application, such as... Figure 4 As shown, the computing device 400 includes a bus 402, a processor 404, a memory 406, and a communication interface 408. The processor 404, the memory 406, and the communication interface 408 communicate with each other via the bus 402. The computing device 400 can be a server or a terminal device. It should be understood that this application does not limit the number of processors and memories in the computing device 400.
[0120] Bus 402 can be a Peripheral Component Interconnect Express (PCIe) bus, an Extended Industry Standard Architecture (EISA) bus, a Unified Bus (Ubus or UB), a Compute Express Link (CXL) bus, a Cache Coherent Interconnect for Accelerators (CCIX) bus, etc. The Unified Bus is also known as the Lingqu Bus. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 4 The symbol is represented by only one line, but this does not mean that there is only one bus or one type of bus.
[0121] Processor 404 may include any one or more of the following computing devices: central processing unit (CPU), graphics processing unit (GPU), microprocessor (MP) or digital signal processor (DSP), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), complex programmable logical device (CPLD), neural network processing unit (NPU), system on chip (SoC), offload card, accelerator card, etc.
[0122] Memory 406 may include volatile memory, such as random access memory (RAM). Processor 404 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD). Furthermore, memory 406 may also be implemented using storage class memory (SCM), phase change memory (PCM), or other types of storage media.
[0123] It is worth noting that the same type of storage medium can be configured in the same computing device to realize the function of memory 406, or two or more types of storage media can be configured to realize the function of memory 406. This application does not limit this.
[0124] The memory 406 stores executable program code, and the processor 404 executes the executable program code to implement the functions of the aforementioned receiving module 301, transmitting module 302, and processing module 303, thereby achieving the above-mentioned functions. Figure 2 The multiple-send selective reception method in the above. That is, the memory 406 stores the method for executing the above. Figure 2 The instructions for the multiple-send selective-receive method in the code.
[0125] The communication interface 408 uses, but is not limited to, transceiver modules such as network interface cards and transceivers to enable communication between the computing device 400 and other devices or communication networks.
[0126] As one possible implementation, the computing device 400 may include multiple types of processors 404, that is, the computing device 400 is a heterogeneous device. For example, the computing device 400 includes a CPU and a GPU, and the above-mentioned functions can be executed by at least one of the processors 404. Figure 2 The operational steps corresponding to the multiple-send selective reception method are described below. For the sake of brevity, they will not be elaborated here.
[0127] This application also provides a computer program product containing instructions. The computer program product may be a software or program product containing instructions, capable of running on a computing device or stored on any usable medium. When the computer program product is run on at least one computing device, it causes the at least one computing device to perform the above-described... Figure 2 The multiple-selection method in the middle.
[0128] This application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium capable of being stored by a computing device or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive). The computer-readable storage medium includes instructions that instruct a computing device to perform the above-described... Figure 2 The multiple-selection method in the middle.
[0129] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of this application.
Claims
1. A method for multiple transmissions and selective reception, characterized in that, The method includes: The receiving end receives a first negotiation message sent by the first sending end. The first negotiation message includes first status information. The first status information is used to indicate the current multi-transmission and selective reception status of the first sending end. The multi-transmission and selective reception status includes enabling the multi-transmission and selective reception function or disabling the multi-transmission and selective reception function. The receiving end acquires second status information, which is used to indicate the current multiple transmit / receive status of the receiving end. The receiving end determines whether to perform multiple-transmission selective reception with the first sending end based on the first status information and the second status information. If it is determined that multiple-transmission selective reception with the first sending end is not possible, the receiving end communicates with the first sending end in a non-multiple-transmission selective reception manner or terminates the communication with the first sending end.
2. The method according to claim 1, characterized in that, After the receiving end acquires the second status information, the method further includes: The receiving end sends a second negotiation message to the first sending end, the second negotiation message including second status information.
3. The method according to claim 1 or 2, characterized in that, The receiving end determines whether it can perform multiple-transmission selective reception with the first sending end based on the first status information and the second status information, including: If the first status information indicates that the first transmitter has not enabled the multi-transmission and selective reception function, or if the second status information indicates that the receiver has not enabled the multi-transmission and selective reception function, the receiver determines that it cannot perform multi-transmission and selective reception with the first transmitter.
4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: The receiving end sends a third negotiation message to the second sending end. The third negotiation message includes third status information, which is used to indicate the current multiple transmit / receive status of the receiving end. The receiving end determines whether it receives a fourth negotiation message within a first time threshold. The fourth negotiation message includes fourth status information, which is used to indicate the current multiple transmit / receive status of the second sending end. If the fourth negotiation message is not received within the first time threshold, the receiving end determines that it cannot perform multiple-send selective reception with the second sending end, and communicates with the second sending end in a non-multiple-send selective reception manner or terminates the communication with the second sending end.
5. The method according to any one of claims 1 to 4, characterized in that, The first negotiation message further includes a first identifier, which is an identifier that uniquely identifies the first sender; the second negotiation message further includes a second identifier, which is an identifier that uniquely identifies the receiver; the method further includes: When the receiving end determines that it can perform multiple-transmission selective reception with the first sending end, it determines the stream identifier ID for performing multiple-transmission selective reception with the first sending end based on the first identifier and the second identifier.
6. The method according to claim 5, characterized in that, The first identifier includes one or more of the router identifier ID, loopback interface address, and route locator address of the first sending end; the second identifier includes one or more of the router ID, loopback interface address, and route locator address of the receiving end; and determining the flow ID for multi-transmission selection with the first sending end based on the first identifier and the second identifier includes: The receiving end uses a combination of the first identifier and the second identifier as the stream ID when performing multiple transmit / receive operations with the first sending end.
7. The method according to any one of claims 1 to 6, characterized in that, The first negotiation message further includes a first stream count, which is the number of data streams that the first sender can process when performing multiple-transmission selective reception. The second negotiation message further includes a second stream count, which is the number of data streams that the receiver can process when performing multiple-transmission selective reception. The method further includes: When the receiving end determines that it can perform multiple-transmission selective reception with the first sending end, it determines the number of data streams for multiple-transmission selective reception with the first sending end based on the number of the first stream and the number of the second stream.
8. The method according to claim 7, characterized in that, The step of determining the number of data streams for multi-transmission and selective reception with the first transmitter based on the number of the first stream and the number of the second stream includes: The receiving end uses the smaller of the first number of streams and the second number of streams as the number of data streams when performing multiple transmit / receive operations with the first sending end.
9. A multi-transmission selective receiver, characterized in that, The device includes: The receiving module is used to receive a first negotiation message sent by a first sending end. The first negotiation message includes first status information. The first status information is used to indicate the current multi-transmission and selective reception status of the first sending end. The multi-transmission and selective reception status includes enabling the multi-transmission and selective reception function or disabling the multi-transmission and selective reception function. The processing module is used to acquire second status information, which is used to indicate the current multi-transmission and reception status of the multi-transmission and reception device. The processing module is further configured to determine whether to perform multiple-transmission selective reception with the first sending end based on the first status information and the second status information. If it is determined that multiple-transmission selective reception with the first sending end is not possible, the module shall communicate with the first sending end in a non-multiple-transmission selective reception manner or terminate the communication with the first sending end.
10. The apparatus according to claim 9, characterized in that, The device further includes a transmitting module, the transmitting module being used for: A second negotiation message is sent to the first sending end, the second negotiation message including second status information.
11. The apparatus according to claim 9 or 10, characterized in that, The processing module is specifically used for: If the first status information indicates that the first transmitting end has not enabled the multi-transmission and selective reception function, or if the second status information indicates that the multi-transmission and selective reception device has not enabled the multi-transmission and selective reception function, it is determined that multi-transmission and selective reception with the first transmitting end is not possible.
12. The apparatus according to any one of claims 9 to 11, characterized in that, The sending module is further configured to send a third negotiation message to the second sending end. The third negotiation message includes third status information, which is used to indicate the current multi-transmission and reception status of the multi-transmission and reception device. The receiving module is further configured to determine whether a fourth negotiation message is received within a first time threshold, the fourth negotiation message including fourth status information, the fourth status information being used to indicate the current multiple-send-selective-receive status of the second sending end; If the fourth negotiation message is not received within the first time threshold, the processing module determines that it cannot perform multiple-send selective reception with the second sender, and communicates with the second sender in a non-multiple-send selective reception manner or terminates the communication with the second sender.
13. The apparatus according to any one of claims 9 to 12, characterized in that, The first negotiation message further includes a first identifier, which is a unique identifier for the first sender; the second negotiation message further includes a second identifier, which is a unique identifier for the multi-transmit / receive device; the processing module is further configured to: If it is determined that multiple transmissions can be selectively received with the first sender, the flow identifier ID for multiple transmissions can be determined based on the first identifier and the second identifier.
14. The apparatus according to claim 13, characterized in that, The first identifier includes one or more of the router identifier ID, loopback interface address, and route locator address of the first sender; the second identifier includes one or more of the router ID, loopback interface address, and route locator address of the multi-send selective receiver; the processing module is specifically used for: The combination of the first identifier and the second identifier is used as the stream ID when performing multiple transmit / receive operations with the first sender.
15. The apparatus according to any one of claims 9 to 14, characterized in that, The first negotiation message further includes a first stream count, which is the number of data streams that the first sender can process when performing multi-transmission selective reception. The second negotiation message further includes a second stream count, which is the number of data streams that the multi-transmission selective reception device can process when performing multi-transmission selective reception. The processing module is further configured to: If it is determined that multiple transmission and reception can be performed with the first transmitter, the number of data streams for multiple transmission and reception with the first transmitter is determined based on the number of the first stream and the number of the second stream.
16. The apparatus according to claim 15, characterized in that, The processing module is specifically used for: The smaller of the number of the first stream and the number of the second stream is taken as the number of data streams when performing multiple transmit / receive operations with the first sender.
17. A computing device, characterized in that, The computing device includes a processor and a memory, the processor being configured to execute instructions stored in the memory to cause the computing device to perform the operational steps of the method as described in any one of claims 1 to 8.
18. A computer program product containing instructions, characterized in that, When the instruction is executed by the computing device, the computing device performs the operational steps of the method as described in any one of claims 1 to 8.
19. A computer-readable storage medium, characterized in that, It includes computer program instructions, which, when executed by a computing device, cause the computing device to perform the operational steps of the method as described in any one of claims 1 to 8.