Data transmission method, electronic device and computer program product

By introducing a backup channel into the transmission channel and performing data unit storage, merging, and deduplication processing, the problem of data loss when the transmission channel bandwidth is insufficient is solved, ensuring the integrity and normal operation of the business data flow.

CN121864672APending Publication Date: 2026-04-14ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZTE CORP
Filing Date
2025-12-31
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

When there is no available bandwidth in the transmission channel, manually changing the channel for transmitting service data streams will result in the loss of data units, affecting the normal operation of the service.

Method used

By introducing a backup channel into the transmission channel and storing and merging the identification information of data units when the primary/backup switchover conditions are met, and performing merging and deduplication processing, the integrity of data is ensured during the switchover process.

Benefits of technology

This prevented the loss of data units and ensured the normal operation and integrity of business data flow.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121864672A_ABST
    Figure CN121864672A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method, electronic equipment and a computer program product, and relates to the technical field of communication, the method is applied to a first node, and the method comprises the following steps: receiving each data unit of a service data stream sent by a second node through a first channel, and receiving each data unit of the service data stream sent by the second node through the second channel, in response to the received first switching information, storing the data units received from the first channel and the second channel, and performing main / standby switching on the working states of the first channel and the second channel after a preset duration; and carrying out merging and duplicate removal processing on the stored data units transmitted by the first channel and the second channel according to the identification information in the main-standby switching process to obtain a service data stream. The method is used for solving the problem of data unit loss during transmission channel replacement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of communication technology, and in particular to a data transmission method, electronic device, and computer program product. Background Technology

[0002] Currently, network slicing technology can be used to divide the data into multiple logically independent transmission channels to transmit business data streams.

[0003] In related technologies, when there is no available bandwidth resources in the transmission channel, it is necessary to manually change the transmission channel for the transmission service data stream.

[0004] However, manually changing the transmission channel often leads to the loss of data units in the business data stream, affecting the normal operation of the business. Summary of the Invention

[0005] This disclosure provides a data transmission method, electronic device, and computer program product that can avoid the problem of data unit loss when changing the transmission channel of the transmission service data stream.

[0006] In a first aspect, this disclosure provides a data transmission method applied to a first node. The method includes: receiving data units of a service data stream sent by a second node through a first channel, and receiving data units of a service data stream sent by a second node through a second channel; each data unit carries identification information, which indicates the position of the data unit in the service data stream; the first channel is a transmission channel in a primary state, and the second channel is a transmission channel in a standby state; in response to receiving first switching information, storing the data units received from the first channel and the second channel, and performing a primary / standby switchover of the working states of the first channel and the second channel after a preset time; the first switching information is sent when the primary / standby switchover conditions are met in the first channel; during the primary / standby switchover process, merging and deduplicating the stored data units transmitted by the first channel and the second channel according to the identification information to obtain the service data stream.

[0007] In a second aspect, this disclosure provides a data transmission apparatus applied to a first node, the apparatus including various functional modules for the method described in the first aspect above.

[0008] Thirdly, this disclosure provides a data transmission method applied to a second node. The method includes: transmitting each data unit in a service data stream to the first node via a first channel, and transmitting each data unit in a service data stream to the first node via a second channel; each data unit carries identification information, which indicates the position of the data unit in the service data stream; the first channel is a transmission channel in a primary state, and the second channel is a transmission channel in a standby state; in response to the first channel meeting the primary / standby switchover condition, sending first switching information to the first node; the first switching information instructs the first node to store the data units received from the first and second channels, and to merge and deduplicate the data units transmitted from the first and second channels according to the identification information during the primary / standby switchover process to obtain the service data stream.

[0009] Fourthly, this disclosure provides a data transmission apparatus applied to a second node, the apparatus including various functional modules for the method described in the third aspect above.

[0010] Fifthly, this disclosure provides an electronic device, including: a processor and a memory; the memory storing processor-executable instructions; the processor being configured to, when executing the aforementioned instructions, cause the electronic device to perform the method described in the first or third aspect above.

[0011] In a sixth aspect, this disclosure provides a readable storage medium comprising: software instructions; which, when executed in an electronic device, cause the electronic device to implement the methods provided in the first or third aspect above.

[0012] In a seventh aspect, this disclosure provides a computer program product including computer instructions that, when executed on an electronic device, cause the electronic device to perform the methods provided in the first or third aspect above.

[0013] The technical solutions provided in this disclosure have at least the following beneficial effects: In the technical solution provided by this disclosure, a first node can receive each data unit of a service data stream sent by a second node through a first channel, and also receive each data unit of a service data stream sent by a second node through a second channel. Each data unit carries identification information indicating its position in the service data stream. In this way, when the first channel meets the primary / backup switchover conditions, the first node can store the data units received from the first and second channels. During the primary / backup switchover process, the stored data units transmitted through the first and second channels are merged and deduplicated based on the identification information to obtain a complete and lossless service data stream. This avoids the problem of data unit loss when changing the transmission channel for the service data stream, ensuring the normal operation of the service. Attached Figure Description

[0014] The accompanying drawings are provided to further understand the technical solutions of the present invention and constitute a part of the specification. They are used together with the embodiments of this disclosure to explain the technical solutions of the present invention and do not constitute a limitation on the technical solutions of the present invention.

[0015] Figure 1 A schematic flowchart illustrating a data transmission method provided in an embodiment of this disclosure; Figure 2 This is a schematic diagram of primary and backup transmission of business data flow provided in an embodiment of this disclosure; Figure 3 A schematic diagram illustrating the creation of a second channel provided in an embodiment of this disclosure; Figure 4 This is a schematic diagram of the merging and deduplication process provided in an embodiment of this disclosure; Figure 5 This is a schematic diagram of channel rebinding provided in an embodiment of the present disclosure; Figure 6 A flowchart illustrating another data transmission method provided in this embodiment of the disclosure; Figure 7 This is a schematic diagram of the channel binding protection process provided in the embodiments of this disclosure; Figure 8 This is a schematic diagram of the composition of a data transmission device provided in an embodiment of the present disclosure; Figure 9 A schematic diagram illustrating the composition of another data transmission apparatus provided in an embodiment of this disclosure; Figure 10 This is a schematic diagram illustrating the composition of an electronic device provided in an embodiment of this disclosure. Detailed Implementation

[0016] The technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this disclosure.

[0017] Unless the context otherwise requires, throughout the specification and claims, the term "comprise" and other forms such as the third-person singular "comprises" and the present participle "comprising" are interpreted as open-ended and encompassing, meaning "including, but not limited to." In the description of the specification, terms such as "one embodiment," "some embodiments," "exemplary embodiments," "example," "specific example," or "some examples" are intended to indicate that a particular feature, structure, material, or characteristic associated with that embodiment or example is included in at least one embodiment or example of this disclosure. The illustrative representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics mentioned may be included in any suitable manner in any one or more embodiments or examples.

[0018] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this disclosure, unless otherwise stated, "a plurality of" means two or more.

[0019] In this disclosure, the terms "exemplarily" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplarily" or "for example" in this disclosure should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of the terms "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.

[0020] In addition, the use of “based on” implies openness and inclusivity, because processes, steps, calculations or other actions “based on” one or more of the stated conditions or values ​​may in practice be based on additional conditions or values ​​beyond those stated.

[0021] As described in the background section, in related technologies, when there is no available bandwidth resource in the transmission channel, it is necessary to manually change the transmission channel for transmitting service data streams. However, manually changing the transmission channel often leads to the loss of data units in the service data stream, affecting the normal operation of the service.

[0022] As an example, the Metro Transport Network (MTN) is a lightweight hard isolation technology architecture. While being compatible with mainstream Ethernet protocol stacks, MTN technology meets the differentiated requirements of the 5G era, such as hard isolation, low latency, and high reliability, further enhancing the carrying capacity of 5G networks. MTN technology can transmit service data streams through MTN channels.

[0023] Furthermore, in MTN technology, when the time slots of an MTN channel cannot meet the bandwidth requirements of a service, it is often necessary to optimize bandwidth by changing the number of time slots (MTN clients) within the MTN channel. Current time slot adjustment techniques involve changing the number of time slots within the same channel group; when there are no available time slots within the same channel group, the bandwidth requirements cannot be met.

[0024] Similarly, the small-granularity timeslot adjustment of the MTN Fine Granularity Channel (MTN FG Channel) changes the number of small-granularity timeslots within the same timeslot (MTN client). When there are no available small-granularity timeslots within the same timeslot (MTN client), the service bandwidth requirements cannot be met.

[0025] Based on this, embodiments of this disclosure provide a data transmission method, electronic device, and computer program product that can perform lossless replacement when changing the channel for transmitting service data streams, thereby avoiding the problem of data unit loss when changing the channel for transmitting service data streams.

[0026] The data transmission method provided in this disclosure can be executed by a data transmission device. This data transmission device can be any node performing data transmission. For example, a node can be a provider edge device (PE) or other electronic devices with data transmission capabilities. In some embodiments, the data transmission device can also be a processor (e.g., a central processing unit (CPU)) in the aforementioned electronic device; or, the data transmission device can also be a software system or platform in the aforementioned electronic device; or, the data transmission device can also be a functional module in the aforementioned electronic device used to execute the data transmission method, etc. This disclosure does not impose any limitations on these aspects.

[0027] For the sake of simplicity, the following description will use the execution subjects of the data transmission method provided in this embodiment as the first node and the second node as examples.

[0028] Figure 1This is a flowchart illustrating a data transmission method provided in an embodiment of this disclosure. The method can be executed by a first node, such as... Figure 1 As shown, the data transmission method may include the following steps: S101, receiving each data unit of the service data stream sent by the second node through the first channel, and receiving each data unit of the service data stream sent by the second node through the second channel.

[0029] Each data unit carries identification information, which indicates the position of the data unit in the business data flow. The first channel is the transmission channel in the primary working state, and the second channel is the transmission channel in the standby working state.

[0030] As an example, taking the MTN scenario, the data unit in the business data stream can specifically be a code block. Alternatively, taking other scenarios as examples, the data unit in the business data stream can also be a frame, cell, or data packet, etc. This disclosure does not limit the specific form of the data unit.

[0031] As an example, the identification information carried by a data unit can be the sequence number of the data unit in the business data flow.

[0032] For example, Figure 2 This is a schematic diagram illustrating the primary and backup transmission of service data streams provided in an embodiment of this disclosure. Figure 2 As shown, after the second node converts the service message into a service data stream containing multiple data units, it can mark the data units with identification information. Figure 2 (Taking S1, S2, ..., S6 and S7 as examples), the second node can then copy the data units in the business data stream, creating two business data streams. One business data stream is transmitted through the first channel, and the other business data stream is transmitted through the second channel. The first node can select from the two received business data streams to obtain the business data stream for subsequent processing.

[0033] In some possible embodiments, prior to S101 above, the first node may also negotiate with the second node to create a second channel on other physical layer links carrying the first channel, as a protection channel for the first channel.

[0034] The other physical layer links used to create the second channel can be any of the following: a first physical layer link that does not carry a channel, or a second physical layer link with available bandwidth resources. The second physical layer link is a physical layer link that carries channels other than the first channel.

[0035] As an example, the bandwidth provided by the second channel, which is negotiated and created by the first node and the second node, meets the service bandwidth requirements or is greater than the bandwidth provided by the first channel.

[0036] For example, Figure 3 This is a schematic diagram illustrating the creation of a second channel according to an embodiment of this disclosure. Figure 3 As shown, taking the example of three physical layer links (PHY1, PHY2, and PHY3) between the first and second nodes, assuming that channel group 1 has been created on PHY1, and the first channel is a channel in channel group 1, PHY2 is a physical layer link without a channel, and channel group 2 has been created on PHY3, which includes channel 2, then the first node can negotiate with the second node to create a second channel on either PHY2 or PHY3. Figure 3 (Channel 3 is shown as an example).

[0037] S102. In response to receiving the first switching information, the data units received from the first channel and the second channel are stored, and the working state of the first channel and the second channel is switched from primary to standby after a preset time.

[0038] The first handover information is sent when the first channel meets the primary / standby switchover conditions. For example, the first handover information may be sent by the second node in response to the first channel meeting the primary / standby switchover conditions, or it may be sent by the control device in response to the first channel meeting the primary / standby switchover conditions. This embodiment of the present disclosure does not limit the sending entity of the first handover information. The preset duration can be preset in the first node; for example, the preset duration can be set to 10 seconds, 30 seconds, 1 minute, 3 minutes, or 5 minutes, etc. This embodiment of the present disclosure does not limit the specific duration of the preset duration.

[0039] As an example, the second node may be equipped with an anomaly simulation device, which can send simulated anomaly information to the first node as the first switching information.

[0040] As an example, as described above, the first channel is a transmission channel in the primary state, and the second channel is a transmission channel in the standby state. In this case, a primary / standby switch is performed on the first and second channels, that is, the first channel is switched from the primary state to the standby state, and the second channel is switched from the standby state to the primary state.

[0041] As an example, the conditions for primary / standby switchover may include at least one of the following: the bandwidth provided by the first channel cannot meet the service bandwidth adjustment requirements, the channel group to which the first channel belongs cannot meet the service bandwidth adjustment requirements, or the first channel fails.

[0042] For example, if the first channel has two remaining idle MTN time slots, each providing 5 gigabits per second (Gbps), meaning the first channel can still provide 10 Gbps of bandwidth, and assuming the service bandwidth adjustment demand is 15 Gbps, the 10 Gbps bandwidth provided by the first channel cannot meet the 15 Gbps demand. Therefore, the first channel meets the primary / backup switchover conditions. Alternatively, if the first channel has two remaining MTN small-granularity time slots, each providing 10 megabits per second (Mbps), meaning the first channel can still provide 20 Mbps of bandwidth, and assuming the service bandwidth adjustment demand is 30 Mbps, the 20 Mbps bandwidth provided by the first channel cannot meet the 30 Mbps demand. Therefore, the first channel meets the primary / backup switchover conditions.

[0043] For example, if the channel group containing the first channel has two remaining idle MTN time slots, each providing 5 gigabits per second (Gbps), meaning the channel group can provide 10 Gbps of bandwidth, and assuming the service bandwidth adjustment requirement is 15 Gbps, the 10 Gbps bandwidth provided by the channel group cannot meet this requirement. Therefore, the first channel meets the primary / backup switchover conditions. Alternatively, if the channel group containing the first channel has two remaining MTN small-granularity time slots, each providing 20 megabits per second (Mbps), meaning the channel group can provide 20 Mbps of bandwidth, and assuming the service bandwidth adjustment requirement is 30 Mbps, the 20 Mbps bandwidth provided by the channel group cannot meet this requirement. Therefore, the first channel meets the primary / backup switchover conditions.

[0044] It should be understood that if the first node directly switches the working status of the first channel and the second channel in response to receiving the first switching information, it may result in the first node not storing enough data units transmitted from the two channels, which may result in the inability to find data units that are adjacent in the business data stream and thus the inability to splice together a complete and lossless business data stream.

[0045] In the data transmission method provided in this embodiment, the first node can, in response to receiving first switching information, store the data units received from the first channel and the second channel, and perform a primary / backup switch of the working states of the first channel and the second channel only after a preset time. In this way, the first node can obtain enough data units transmitted from both channels, making it easier to find adjacent data units in the service data stream, thus facilitating subsequent merging to obtain a complete and lossless service data stream and preventing the loss of data units in the service data stream.

[0046] In some possible embodiments, before receiving the first switching information, the first node may by default process the data units received through the first channel (according to the business logic corresponding to the business data flow) and discard the data units received through the second channel.

[0047] S103. During the primary / backup switchover process, the data units transmitted by the first and second channels in the storage are merged and deduplicated according to the identification information to obtain the service data stream.

[0048] For example, Figure 4 This is a schematic diagram illustrating the merging and deduplication process provided in an embodiment of this disclosure. Figure 4 As shown above, in the above Figure 2 Based on the two business data streams shown, one business data stream is transmitted through the first channel and the other through the second channel, the second node can send a first switching information to the first node. The first node can respond to the first switching information, confirming that it has received a primary / standby switching instruction, and that the primary / standby status of the first and second channels is about to switch. It then stores the data units received from the first and second channels. Taking the second channel's latency as less than the first channel's as an example, assuming the stored identifiers of the data units received from the first channel are S1, S2, S3, and S4, and the stored identifiers of the data units received from the second channel are S4, S5, S6, and S7, meaning the second channel has lost the data units with identifiers S1, S2, and S3. The first node can merge the stored data units (S1, S2, S3, S4) received from the first channel and the stored data units (S4, S5, S6, S7) received from the second channel to obtain merged data units (S1, S2, S3, S4, S4, S5, S6, S7). Then, the redundant data unit with the identifier S4 is deduplicated (or discarded) to obtain merged and deduplicated data units (S1, S2, S3, S4, S5, S6, S7), thus obtaining a complete and lossless business data stream.

[0049] In some possible embodiments, after switching the working states of the first channel and the second channel to primary or backup after a preset time, the first node can switch the working state of the second channel from backup to primary, process the data units received through the second channel, and discard the data units received through the first channel.

[0050] In the data transmission method provided in this embodiment, a first node can receive each data unit of a service data stream sent by a second node through a first channel, and also receive each data unit of a service data stream sent by a second node through a second channel. Each data unit carries identification information indicating its position in the service data stream. Thus, when the first channel meets the primary / backup switchover conditions, the second node sends first switching information to the first node. The first node can store the data units received from the first and second channels, and during the primary / backup switchover process, merge and deduplicate the stored data units transmitted from the first and second channels according to the identification information to obtain a complete and lossless service data stream. This avoids the problem of data unit loss when changing the transmission channel of the service data stream, ensuring the normal operation of the service.

[0051] In some possible embodiments, after the first channel switches from the primary state to the standby state, the first node can also negotiate with the second node to switch the first channel from the first channel group to the second channel group so that the first channel meets the primary / standby fallback condition.

[0052] The first channel group and the second channel group are carried on different physical layer links; the second channel group is any one of the following: a first idle channel group without bound channels, or a second idle channel group with available idle bandwidth resources. The second idle channel group is bound to channels other than the first channel.

[0053] As an example, the primary / backup fallback conditions may include at least one of the following: the bandwidth provided by the first channel meets the service bandwidth adjustment requirements, the channel group to which the first channel belongs meets the service bandwidth adjustment requirements, and the first channel has been repaired.

[0054] For example, if switching the first channel to the second channel group provides four idle MTN time slots, each offering 5 Gbps, meaning the first channel can still provide 20 Gbps of bandwidth, and assuming the service bandwidth adjustment requirement is 15 Gbps, the 20 Gbps bandwidth provided by the first channel can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition. Alternatively, if switching the first channel to the second channel group provides four MTN small-granularity time slots, each offering 10 Mbps, meaning the first channel can provide 40 Mbps of bandwidth, and assuming the service bandwidth adjustment requirement is 30 Mbps, the 40 Mbps bandwidth provided by the first channel can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition.

[0055] For example, if after the first channel is switched to the second channel group, the second channel group can provide four idle MTN time slots, each providing 5 Gbps, meaning the second channel group can provide an additional 20 Gbps of bandwidth. Assuming the service bandwidth adjustment requirement is 15 Gbps, the 20 Gbps bandwidth provided by the second channel group can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition. Alternatively, if after the first channel is switched to the second channel group, the second channel group can provide four MTN small-granularity time slots, each providing 10 Mbps, meaning the second channel group can provide 40 Mbps of bandwidth. Assuming the service bandwidth adjustment requirement is 30 Mbps, the 40 Mbps bandwidth provided by the second channel group can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition.

[0056] As an example, the second channel group can be the channel group with the best transmission quality parameters among the candidate channel groups that meet the service bandwidth adjustment requirements. Transmission quality parameters may include at least one of the following: latency, priority parameter, and bandwidth.

[0057] For example, the priority parameter can specifically be a metric value, and the magnitude of the metric value is negatively correlated with the level of priority.

[0058] As another example, the second channel group can also be a user-specified channel group.

[0059] For example, Figure 5 This is a schematic diagram of channel binding replacement provided in an embodiment of this disclosure. Figure 5As shown, taking the example of three physical layer links (PHY1, PHY2, and PHY3) between the first and second nodes, assuming that channel group 1 has been created on PHY1 (channel 1 is channel 1 within channel group 1), channel group 2 has been created on PHY2, and channel group 3 has been created on PHY3, with PHY2 having a latency of 20 microseconds (µs), a priority parameter of 20, and a bandwidth of 100 Gbps; and PHY3 having a latency of 100 µs, a priority parameter of 10, and a bandwidth of 80 Gbps. If the user chooses to rebind the channel group based on latency, the first node can choose channel group 2; if the user chooses to choose based on priority, the first node can choose channel group 3; and if the user chooses to choose based on bandwidth, the first node can choose channel group 2.

[0060] For example, the above also applies. Figure 5 Taking the channel rebinding diagram shown as an example, users can also specify to rebind the first channel to channel group 2 or channel group 3.

[0061] In some possible embodiments, after switching the first channel from the first channel group to the second channel group so that the first channel meets the primary / backup fallback conditions, the bandwidth resources of the second channel group (e.g., MTN time slots) can be used to adjust the bandwidth of the first channel to meet the service bandwidth adjustment requirements.

[0062] For example, if the first channel group has two remaining idle MTN time slots, each providing 5Gbps of bandwidth, and the service bandwidth adjustment requirement is 15Gbps, the remaining idle MTN time slots in the first channel group cannot meet this requirement. After switching the first channel from the first channel group to the second channel group, assuming the second channel group has five remaining idle MTN time slots, three of these slots can be allocated to the first channel, extending its bandwidth by 15Gbps to meet the service bandwidth adjustment requirement.

[0063] For example, if the first channel group has two remaining idle MTN small-granularity time slots, each providing 10Mbps of bandwidth, and the service bandwidth adjustment requirement is 30Mbps, the remaining idle MTN small-granularity time slots in the first channel group cannot meet this requirement. After switching the first channel from the first channel group to the second channel group, assuming the second channel group has five remaining idle MTN small-granularity time slots, three of these slots can be allocated to the first channel, extending its bandwidth by 30Mbps to meet the service bandwidth adjustment requirement.

[0064] It should be understood that in related technologies, time slot adjustment changes the number of time slots within the same channel group. When there are no available time slots within the same channel group, the service bandwidth requirements cannot be met. Similarly, in MTN fine-grained channel, small-granular time slot adjustment changes the number of small-granular time slots within the same time slot. When there are no available small-granular time slots within the same time slot, the service bandwidth requirements cannot be met.

[0065] The data transmission method provided in this disclosure can, after the first channel switches from a primary state to a standby state, negotiate with the second node to switch the first channel from the first channel group to the second channel group, so that the first channel meets the primary / standby fallback condition. The first channel group and the second channel group are carried on different physical layer links. That is, the data transmission method provided in this disclosure can call the bandwidth resources of different channel groups or physical layer links to adjust resources. Compared with the related technologies, which only adjust resources in the same channel group or the same time slot, this improves the flexibility of resource adjustment and solves the limitation problem of related technologies when adjusting resources only in the same channel group or the same time slot.

[0066] In some possible embodiments, after the first channel switches from the primary state to the standby state, the first node may also respond to the received second switching information to perform a primary / standby switch between the working states of the first channel and the second channel, and after the working state of the first channel returns to the primary state, negotiate with the second node to delete the second channel in order to release the bandwidth resources occupied by the second channel.

[0067] The second handover information is sent when the first channel meets the primary / standby fallback condition. For example, the second handover information may be sent by the second node in response to the first channel meeting the primary / standby fallback condition, or it may be sent by the control device in response to the first channel meeting the primary / standby fallback condition. This embodiment of the present disclosure does not limit the sending entity of the second handover information.

[0068] As an example, as described above, the primary / backup fallback conditions may include at least one of the following: the bandwidth provided by the first channel meets the service bandwidth adjustment requirements, the channel group to which the first channel belongs meets the service bandwidth adjustment requirements, and the first channel has been repaired from a fault.

[0069] As an example, after the first channel switches from the primary state to the standby state, the working states of the first and second channels are switched from primary to standby, that is, the working state of the first channel is switched from the standby state to the primary state, and the working state of the second channel is switched from the primary state to the standby state.

[0070] Based on the understanding of the above embodiments, Figure 6 This is a schematic diagram of the channel rebinding protection process provided in an embodiment of this disclosure. Figure 6As shown, the first node and the second node can first transmit service data streams through the first channel in the primary state, then negotiate to create a second channel in the standby state, and perform a primary-standby switchover when the primary-standby switchover conditions are met, switching the first channel to the standby state and the second channel to the primary state. Then, perform channel rebinding, rebinding the first channel to another channel group and using the bandwidth resources of other channel groups to expand the bandwidth of the first channel. When the primary-standby switchover conditions are met, perform a primary-standby fallback, switching the first channel to the primary state and the second channel to the standby state. Finally, delete the second channel.

[0071] The data transmission method provided in this disclosure allows service data streams to be transmitted through a primary channel. Before rebinding the primary channel, a backup intermediate channel is created as a protection channel for subsequent service data stream transmission. This facilitates normal service data stream transmission during subsequent channel group rebinding and bandwidth adjustments to the primary channel, preventing service data stream transmission interruptions.

[0072] After the primary / standby switchover, that is, after switching the first channel to standby status and the second channel to primary status, the service data stream is transmitted through the second channel. Then, the first channel is re-bound to other channel groups with more bandwidth resources, and the bandwidth resources of other channel groups are used to expand the bandwidth of the first channel. Then, the primary / standby switchover is performed, switching the first channel to primary status and the second channel to standby status. The service data stream is transmitted through the first channel with expanded bandwidth to meet the service bandwidth adjustment requirements.

[0073] Finally, after the first channel, with its expanded bandwidth, can meet the business bandwidth adjustment requirements, the second channel is deleted to release the bandwidth resources occupied by the second channel as a temporary protection channel, thus avoiding waste of bandwidth resources.

[0074] The data transmission method provided in this embodiment of the present disclosure has been described above with the first node as the execution subject. Next, the data transmission method provided in this embodiment of the present disclosure will be described with the second node as the execution subject.

[0075] Figure 7 This is a schematic flowchart illustrating another data transmission method provided in an embodiment of this disclosure. Figure 7 As shown, the method may include the following steps: S201. Transmit each data unit in the service data stream to the first node through the first channel, and transmit each data unit in the service data stream to the first node through the second channel.

[0076] Each data unit carries identification information, which is used to indicate the position of the data unit in the business data flow. The first channel is the transmission channel in the primary working state, and the second channel is the transmission channel in the standby working state.

[0077] In some possible embodiments, prior to S201 above, the second node may also negotiate with the first node to create a second channel on other physical layer links carrying the first channel, as a protection channel for the first channel.

[0078] Among them, other physical layer links are any one of the following: a first physical layer link that does not carry a channel, or a second physical layer link with available bandwidth resources, wherein the second physical layer link is a physical layer link that carries a channel other than the first channel. The specific process for negotiating and creating the second channel can be referred to the above. Figure 3 As mentioned above, it will not be repeated here.

[0079] S202. In response to the first channel meeting the primary / backup switchover conditions, send the first switchover information to the first node.

[0080] The first switching information is used to instruct the first node to store the data units received from the first channel and the second channel, and to merge and deduplicate the data units transmitted by the first channel and the second channel according to the identification information during the primary / backup switching process to obtain the service data stream.

[0081] As an example, the conditions for primary / standby switchover may include at least one of the following: the bandwidth provided by the first channel cannot meet the service bandwidth adjustment requirements, the channel group to which the first channel belongs cannot meet the service bandwidth adjustment requirements, or the first channel fails.

[0082] For example, if the first channel has two remaining idle MTN time slots, each providing 5 Gbps (meaning the first channel can still provide 10 Gbps of bandwidth), and the service bandwidth adjustment requirement is 15 Gbps, then the 10 Gbps bandwidth provided by the first channel cannot meet the 15 Gbps requirement. Therefore, the first channel meets the primary / backup switchover conditions. Alternatively, if the first channel has two remaining MTN small-granularity time slots, each providing 10 Mbps (meaning the first channel can still provide 20 Mbps of bandwidth), and the service bandwidth adjustment requirement is 30 Mbps, then the 20 Mbps bandwidth provided by the first channel cannot meet the 30 Mbps requirement. Therefore, the first channel meets the primary / backup switchover conditions.

[0083] For example, if the channel group containing the first channel has two remaining idle MTN time slots, each providing 5 Gbps (meaning the channel group can provide 10 Gbps of bandwidth), and the service bandwidth adjustment requirement is 15 Gbps, the 10 Gbps bandwidth provided by the channel group cannot meet this requirement. Therefore, the first channel meets the primary / backup switchover conditions. Alternatively, if the channel group containing the first channel has two remaining MTN small-granularity time slots, each providing 20 Mbps (meaning the channel group can provide 20 Mbps of bandwidth), and the service bandwidth adjustment requirement is 30 Mbps, the 20 Mbps bandwidth provided by the channel group cannot meet this requirement. Therefore, the first channel also meets the primary / backup switchover conditions.

[0084] In some possible embodiments, after the first channel switches from the primary state to the standby state, the second node can also negotiate with the first node to switch the first channel from the first channel group to the second channel group, so that the first channel meets the primary / standby fallback condition.

[0085] The first channel group and the second channel group carry different physical layer links. For example, the second channel group can be any of the following: a first idle channel group without bound channels, or a second idle channel group with available bandwidth resources. The second idle channel group is bound to channels other than the first channel.

[0086] As an example, the primary / backup fallback conditions may include at least one of the following: the bandwidth provided by the first channel meets the service bandwidth adjustment requirements, the channel group to which the first channel belongs meets the service bandwidth adjustment requirements, and the first channel has been repaired.

[0087] For example, if switching the first channel to the second channel group provides four idle MTN time slots, each offering 5 Gbps, meaning the first channel can still provide 20 Gbps of bandwidth, and assuming the service bandwidth adjustment requirement is 15 Gbps, the 20 Gbps bandwidth provided by the first channel can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition. Alternatively, if switching the first channel to the second channel group provides four MTN small-granularity time slots, each offering 10 Mbps, meaning the first channel can provide 40 Mbps of bandwidth, and assuming the service bandwidth adjustment requirement is 30 Mbps, the 40 Mbps bandwidth provided by the first channel can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition.

[0088] For example, if after the first channel is switched to the second channel group, the second channel group can provide four idle MTN time slots, each providing 5 Gbps, meaning the second channel group can provide an additional 20 Gbps of bandwidth. Assuming the service bandwidth adjustment requirement is 15 Gbps, the 20 Gbps bandwidth provided by the second channel group can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition. Alternatively, if after the first channel is switched to the second channel group, the second channel group can provide four MTN small-granularity time slots, each providing 10 Mbps, meaning the second channel group can provide 40 Mbps of bandwidth. Assuming the service bandwidth adjustment requirement is 30 Mbps, the 40 Mbps bandwidth provided by the second channel group can meet this requirement, thus confirming that the first channel meets the primary / backup fallback condition.

[0089] As an example, the second channel group can be the channel group with the best transmission quality parameters among the candidate channel groups that meet the service bandwidth adjustment requirements. Transmission quality parameters may include at least one of the following: latency, priority parameter, and bandwidth.

[0090] For example, the priority parameter can specifically be a metric value, and the magnitude of the metric value is negatively correlated with the level of priority.

[0091] As another example, the second channel group can also be a user-specified channel group.

[0092] In some possible embodiments, after the first channel switches from the primary state to the standby state, the second node may, in response to the first channel meeting the primary / standby fallback condition, send a second switching information to the first node, and after the working state of the first channel falls back to the primary state, negotiate with the first node to delete the second channel in order to release the bandwidth resources occupied by the second channel.

[0093] The second switching information is used to instruct the first node to perform a primary / backup switch on the working status of the first channel and the second channel.

[0094] As an example, as described above, the primary / backup fallback conditions may include at least one of the following: the bandwidth provided by the first channel meets the service bandwidth adjustment requirements, the channel group to which the first channel belongs meets the service bandwidth adjustment requirements, and the first channel has been repaired from a fault.

[0095] As an example, after the first channel switches from the primary state to the standby state, the working states of the first and second channels are switched from primary to standby, that is, the working state of the first channel is switched from the standby state to the primary state, and the working state of the second channel is switched from the primary state to the standby state.

[0096] Based on the understanding of the above embodiments, this disclosure also provides the following solutions for four lossless binding scenarios: Scenario 1: Automatic selection and lossless rebinding of transmission channels including MTN time slots.

[0097] Based on the above Figure 5 Taking the example of three physical layer links, PHY1, PHY2, and PHY3, between the first and second nodes, it is assumed that channel group 1 has been created on PHY1, the first channel is channel 1 in channel group 1, the latency of PHY2 is 20 microseconds (us), the priority parameter is 20, and the bandwidth is 100Gbps; the latency of PHY3 is 100us, the priority parameter is 10, and the bandwidth is 80Gbps.

[0098] If the user chooses to select the channel group for rebinding based on latency, then channel group 2 can be created on PHY2, which has lower latency, for rebinding. If the user chooses to select the channel group for rebinding based on priority parameter, then channel group 3 can be created on PHY3, which has a lower priority parameter (priority parameter size is negatively correlated with priority level), for rebinding. If the user chooses to select the channel group for rebinding based on bandwidth, then channel group 2 can be created on PHY2, which has higher bandwidth, for rebinding.

[0099] During the re-binding process, as described above Figure 2 As shown, a new second channel can be created to form a channel protection group with the first channel. The first channel is in primary mode, and the second channel is a protection channel in standby mode.

[0100] In order to losslessly switch the service data stream transmitted on the first channel to the second channel, as described above Figure 4 As shown, after the second node converts the service message into a service data stream containing multiple data units, it can mark the data units with identification information. Figure 4 (Taking S1, S2, ..., S6 and S7 as examples), the second node can then copy the data units in the service data stream, creating two service data streams. One service data stream is transmitted through the first channel, and the other is transmitted through the second channel. Under normal circumstances, the first node can select the service data stream transmitted through the first channel from the two received service data streams for subsequent processing.

[0101] When starting a lossless swap, please continue to refer to the above. Figure 4The second node can send a first handover message to the first node. The first node, in response to the first handover message, confirms that it has received a primary / standby handover instruction, indicating a handover between the primary and standby states of the first and second channels. It then stores the data units received from both channels. Taking the second channel's latency as less than the first channel's as an example, assuming the stored identifiers of the data units received from the first channel are S1, S2, S3, and S4, and the stored identifiers of the data units received from the second channel are S4, S5, S6, and S7, then the second channel has lost the data units identified by S1, S2, and S3. The first node can merge the stored data units (S1, S2, S3, S4) received from the first channel and the stored data units (S4, S5, S6, S7) received from the second channel to obtain merged data units (S1, S2, S3, S4, S4, S5, S6, S7). Then, the redundant data unit with the identifier S4 is deduplicated (or discarded) to obtain merged and deduplicated data units (S1, S2, S3, S4, S5, S6, S7), thus obtaining a complete and lossless business data stream.

[0102] After the lossless swap is completed, please continue to refer to the above. Figure 5 The first channel (i.e., channel 1) can be re-bonded to channel group 2 of PHY2 or channel group 3 of PHY3. The MTN timeslot of the first channel can then be adjusted to meet the service bandwidth adjustment requirements.

[0103] After rebinding the first channel to another channel group and adjusting the MTN timeslot of the first channel to meet the service bandwidth adjustment requirements, the working status of the first and second channels can be switched back to primary / backup, the service data stream can be switched back to the first channel for transmission, the protection relationship between the first and second channels can be canceled, and the second channel can be deleted.

[0104] Scenario 2: Automatic selection and lossless rebinding of transmission channels including MTN small-granularity time slots.

[0105] Scenario 2 is similar to Scenario 1 in that it involves selecting the channel group for rebinding, creating a second protection channel during the rebinding process, losslessly switching the service data stream transmitted on the first channel to the second channel, and rebinding the first channel to another channel group. Therefore, it will not be described in detail here. After rebinding the first channel to another channel group, the MTN granularity of the first channel can be adjusted to meet the service bandwidth adjustment requirements. After rebinding the first channel to another channel group and adjusting the MTN granularity of the first channel to meet the service bandwidth adjustment requirements, the working status of the first and second channels can be switched back to primary / standby mode. The service data stream is then switched back to the first channel for transmission, the protection relationship between the first and second channels is canceled, and the second channel is deleted.

[0106] Scenario 3: Forced lossless rebinding of transmission channels including MTN time slots.

[0107] Based on the above Figure 5 Taking the example of three physical layer links (PHY1, PHY2, and PHY3) between the first and second nodes, and assuming that channel group 1 has already been created on PHY1, with the first channel being channel 1 within channel group 1, the user can force a rebinding of a specific PHY. For example, if PHY2 is specified, channel group 2 can be created on PHY2 for rebinding. The user can also force a rebinding of a specific channel group. For example, if channel group 3 is specified on PHY3, the first channel can subsequently be rebinded to channel group 3.

[0108] During the re-binding process, as described above Figure 2 As shown, a new second channel can be created to form a channel protection group with the first channel. The first channel is in primary mode, and the second channel is a protection channel in standby mode.

[0109] The process of losslessly switching the service data stream transmitted on the first channel to the second channel can be referred to in Scenario 1 above, and will not be repeated here.

[0110] After the lossless swap is completed, please continue to refer to the above. Figure 5 The first channel (i.e., channel 1) can be re-bound to channel group 2 of PHY2 or channel group 3 of PHY3 according to the user's mandatory specification. The MTN timeslot of the first channel can also be adjusted to meet the service bandwidth adjustment requirements.

[0111] After rebinding the first channel to another channel group and adjusting the MTN timeslot of the first channel to meet the service bandwidth adjustment requirements, the working status of the first and second channels can be switched back to primary / backup, the service data stream can be switched back to the first channel for transmission, the protection relationship between the first and second channels can be canceled, and the second channel can be deleted.

[0112] Scenario 4: Forced lossless rebinding of transmission channels including MTN small-granularity time slots.

[0113] Scenario 4 is similar to Scenario 3 above, involving selecting the channel group for rebinding, creating a second protection channel during the rebinding process, losslessly switching the service data stream transmitted on the first channel to the second channel, and rebinding the first channel to another channel group. Therefore, it will not be described in detail again. After rebinding the first channel to another channel group, the MTN granularity of the first channel can be adjusted to meet the service bandwidth adjustment requirements. After rebinding the first channel to another channel group and adjusting the MTN granularity of the first channel to meet the service bandwidth adjustment requirements, the working status of the first and second channels can be switched back to primary / backup, the service data stream can be switched back to the first channel for transmission, the protection relationship between the first and second channels can be canceled, and the second channel can be deleted.

[0114] It should be noted that the above description focuses on optimizing a single channel, the first channel. This embodiment can also optimize multiple transmission channels in batches using similar processes as described above, such as lossless switching of the first channel, changing the channel group, adjusting bandwidth resources, switching service data back to the first channel, and deleting the second channel used as a protection channel. This embodiment does not impose any limitations on this approach.

[0115] The foregoing primarily describes the solutions provided by the embodiments of this disclosure from a methodological perspective. To achieve the aforementioned functions, each device, such as a first node or a second node, includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, in conjunction with the algorithmic steps of the examples described in the embodiments disclosed herein, this disclosure can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Experts may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this disclosure.

[0116] This disclosure embodiment can divide the first node or the second node into functional modules according to the above method embodiment. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one functional module. The integrated module can be implemented in hardware or software. It should be noted that the module division in this disclosure embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods. The following description uses the example of dividing each functional module according to each function.

[0117] In an exemplary embodiment, this disclosure also provides a data transmission device that can be applied to the first node described above. Figure 8This is a schematic diagram illustrating the composition of a data transmission apparatus provided in an embodiment of this disclosure. Figure 8 As shown, the data transmission device may include a first communication module 801 and a first processing module 802.

[0118] The first communication module 801 is used to receive each data unit of the service data stream sent by the second node through the first channel, and to receive each data unit of the service data stream sent by the second node through the second channel; each data unit carries identification information, which is used to indicate the position of the data unit in the service data stream; the first channel is a transmission channel in the primary working state, and the second channel is a transmission channel in the standby working state.

[0119] The first processing module 802 is used to respond to receiving the first switching information, store the data units received from the first channel and the second channel, and perform a primary / backup switch on the working state of the first channel and the second channel after a preset time. The first switching information is sent when the first channel meets the primary / backup switch conditions. During the primary / backup switch, the stored data units transmitted by the first channel and the second channel are merged and deduplicated according to the identification information to obtain the service data stream.

[0120] In some possible embodiments, the first communication module 801 is further configured to negotiate with the second node to create a second channel on other physical layer links of the physical layer link carrying the first channel before receiving each data unit of the service data stream sent by the second node through the first channel and before receiving each data unit of the service data stream sent by the second node through the second channel; the other physical layer links are any one of the following: a first physical layer link that does not carry a channel, a second physical layer link with idle bandwidth resources, and the second physical layer link is a physical layer link that carries other channels besides the first channel.

[0121] In some possible embodiments, the first communication module 801 is further configured to negotiate with the second node to switch the first channel from the first channel group to the second channel group after the first channel switches from the primary state to the standby state, so that the first channel meets the primary / standby fallback condition; the first channel group and the second channel group are carried on different physical layer links; the second channel group is any one of the following: a first idle channel group without bound channels, a second idle channel group with idle bandwidth resources, or a second spatial channel group bound to other channels besides the first channel.

[0122] In some possible embodiments, the first communication module 801 is further configured to, in response to receiving the second switching information, perform a primary / backup switch on the working states of the first channel and the second channel after the first channel switches from the primary state to the backup state, and negotiate with the second node to delete the second channel after the working state of the first channel is reversed back to the primary state; the second switching information is sent when the first channel meets the primary / backup reversal conditions.

[0123] In some possible embodiments, the first processing module 802 is further configured to process the data units received through the first channel and discard the data units received through the second channel before the first communication module 801 receives the first switching information.

[0124] In some possible embodiments, the first processing module 802 is further configured to, after performing a primary / backup switch on the working states of the first channel and the second channel after a preset time, in response to completing the switch of the working state of the second channel from the backup state to the primary state, process the data units received through the second channel and discard the data units received through the first channel.

[0125] In an exemplary embodiment, this disclosure also provides a data transmission device that can be applied to the second node described above. Figure 9 This is a schematic diagram illustrating the composition of another data transmission apparatus provided in an embodiment of this disclosure. (See diagram below.) Figure 9 As shown, the data transmission device may include: a second communication module 901 and a second processing module 902.

[0126] The second communication module 901 is used to transmit each data unit in the service data stream to the first node through the first channel, and to transmit each data unit in the service data stream to the first node through the second channel; each data unit carries identification information, which is used to indicate the position of the data unit in the service data stream; the first channel is a transmission channel in the primary working state, and the second channel is a transmission channel in the standby working state.

[0127] The second processing module 902 is used to send first switching information to the first node in response to the first channel meeting the primary / backup switchover conditions. The first switching information is used to instruct the first node to store the data units received from the first channel and the second channel, and to merge and deduplicate the data units transmitted by the first channel and the second channel according to the identification information during the primary / backup switchover process to obtain the service data stream.

[0128] In some possible embodiments, the second communication module 901 is further configured to negotiate with the first node to create a second channel on other physical layer links of the physical layer link carrying the first channel before transmitting each data unit in the service data stream to the first node through the first channel and before transmitting each data unit in the service data stream to the first node through the second channel; the other physical layer links are any one of the following: a first physical layer link that does not carry a channel, a second physical layer link with idle bandwidth resources, and the second physical layer link is a physical layer link that carries other channels besides the first channel.

[0129] In some possible embodiments, the second communication module 901 is further configured to negotiate with the first node to switch the first channel from the first channel group to the second channel group after the first channel switches from the primary state to the standby state, so that the first channel meets the primary / standby fallback condition; the first channel group and the second channel group are carried on different physical layer links; the second channel group is any one of the following: a first idle channel group without bound channels, a second idle channel group with idle bandwidth resources, and the second idle channel group is bound to other channels besides the first channel.

[0130] In some possible embodiments, the second communication module 901 is further configured to send second switching information to the first node in response to the first channel meeting the primary / standby fallback condition after the first channel switches from the primary state to the standby state, and negotiate with the first node to delete the second channel after the working state of the first channel falls back to the primary state; the second switching information is used to instruct the first node to perform primary / standby switchover on the working states of the first channel and the second channel.

[0131] It should be noted that the above Figure 8 or Figure 9 Modules in a module can also be called units; for example, a processing module can be called a processing unit. Additionally, in... Figure 8 or Figure 9 In the embodiments shown, the names of the modules may not be the same as those shown in the figure. For example, the communication module may also be called the transceiver module or the acquisition module.

[0132] Figure 8 or Figure 9If the various modules in the present disclosure are implemented as software functional modules and sold or used as independent products, they can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of this disclosure, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause an electronic device (which may be a mobile phone, personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this disclosure. Storage media for storing computer software products include: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, optical disks, and other media capable of storing program code.

[0133] In an exemplary embodiment, this disclosure also provides an electronic device. Figure 10 This is a schematic diagram illustrating the composition of an electronic device provided in an embodiment of this disclosure. For example... Figure 10 As shown, the electronic device includes a processor 1002, a communication interface 1003, and a bus 1004. As an example, the electronic device may also include a memory 1001.

[0134] Processor 1002 may implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with this disclosure. Processor 1002 may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with this disclosure. Processor 1002 may also be a combination that implements computing functions, such as including one or more microprocessor combinations, a combination of a DSP and a microprocessor, etc.

[0135] Communication interface 1003 is used to connect with other devices via a communication network. This communication network can be Ethernet, wireless access network, wireless local area network (WLAN), etc.

[0136] The memory 1001 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto.

[0137] As one possible implementation, the memory 1001 can exist independently of the processor 1002. The memory 1001 can be connected to the processor 1002 via a bus 1004 and is used to store instructions or program code. When the processor 1002 calls and executes the instructions or program code stored in the memory 1001, it can implement the data transmission method provided in this embodiment of the disclosure.

[0138] In another possible implementation, the memory 1001 can also be integrated with the processor 1002.

[0139] Bus 1004 can be an extended industry standard architecture (EISA) bus, etc. Bus 1004 can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 10 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0140] Through the above description of the implementation methods, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of electronic devices or servers can be divided into different functional modules to complete all or part of the functions described above.

[0141] In exemplary embodiments, this disclosure also provides a readable storage medium including software instructions that, when executed in an electronic device, cause the electronic device to perform the methods described in the above embodiments. The readable storage medium can also be an external storage device of the electronic device, such as a plug-in hard drive, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the electronic device. Further, the readable storage medium can include both internal storage units and external storage devices of the electronic device. The readable storage medium is used to store the software instructions and other programs and data required by the electronic device. The readable storage medium can also be used to temporarily store data that has been output or will be output. In some embodiments, the readable storage medium includes a non-transitory computer-readable storage medium.

[0142] In an exemplary embodiment, this disclosure also provides a computer program product including computer instructions that, when executed on an electronic device, cause the electronic device to perform the methods described in the above method embodiments.

[0143] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software programs, implementation can be, in whole or in part, in the form of a computer program product. This computer program product includes one or more computer-executable instructions. When these computer-executable instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this disclosure is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer-executable instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer-executable instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device containing one or more servers, data centers, etc., that can be integrated with the medium. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape) or an optical medium (e.g., DVD), etc.

[0144] Although this disclosure has been described herein in conjunction with various embodiments, those skilled in the art will understand and implement other variations of the disclosed embodiments by reviewing the accompanying drawings, the disclosure, and the appended claims in carrying out the claimed disclosure. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce a good effect.

[0145] Although this disclosure has been described in conjunction with specific features and embodiments, it will be apparent that various modifications and combinations can be made therein without departing from the spirit and scope of this disclosure. Accordingly, this specification and drawings are merely exemplary illustrations of the disclosure as defined by the appended claims and are to be considered as covering any and all modifications, variations, combinations, or equivalents within the scope of this disclosure. It is obvious that those skilled in the art can make various alterations and modifications to this disclosure without departing from its spirit and scope. Thus, this disclosure is also intended to include any such modifications and modifications that fall within the scope of the claims of this disclosure and their equivalents.

[0146] The above description is merely a specific embodiment of this disclosure, but the scope of protection of this disclosure is not limited thereto. Any changes or substitutions within the technical scope disclosed in this disclosure should be included within the scope of protection of this disclosure. Therefore, the scope of protection of this disclosure should be determined by the scope of the claims.

Claims

1. A data transmission method, characterized in that, Applied to the first node, the method includes: The system receives each data unit of the service data stream sent by the second node through the first channel, and receives each data unit of the service data stream sent by the second node through the second channel; each data unit carries identification information, which is used to indicate the position of the data unit in the service data stream; the first channel is a transmission channel in the primary working state, and the second channel is a transmission channel in the standby working state. In response to receiving the first switching information, the data units received from the first channel and the second channel are stored, and the working state of the first channel and the second channel is switched to primary / standby after a preset time; the first switching information is sent when the primary / standby switchover conditions of the first channel are met; During the primary / backup switchover process, the data units transmitted by the first and second channels stored in the database are merged and deduplicated according to the identification information to obtain the service data stream.

2. The method according to claim 1, characterized in that, Before receiving each data unit of the service data stream sent by the second node through the first channel, and before receiving each data unit of the service data stream sent by the second node through the second channel, the method further includes: Negotiate with the second node to create the second channel on other physical layer links of the physical layer link carrying the first channel; the other physical layer links are any one of the following: a first physical layer link that does not carry a channel, a second physical layer link with available bandwidth resources, and the second physical layer link is a physical layer link that carries other channels besides the first channel.

3. The method according to claim 1, characterized in that, The conditions for primary / backup switching include at least one of the following: the bandwidth provided by the first channel cannot meet the service bandwidth adjustment requirements, the channel group to which the first channel belongs cannot meet the service bandwidth adjustment requirements, or the first channel fails.

4. The method according to claim 1, characterized in that, The method further includes: After the first channel switches from the primary state to the standby state, it negotiates with the second node to switch the first channel from the first channel group to the second channel group so that the first channel meets the primary / standby fallback condition; the first channel group and the second channel group are carried on different physical layer links; the second channel group is any one of the following: a first idle channel group without bound channels, a second idle channel group with idle bandwidth resources, and the second idle channel group is bound to other channels besides the first channel.

5. The method according to claim 4, characterized in that, The second channel group is the channel group with the best transmission quality parameters among the candidate channel groups that meet the service bandwidth adjustment requirements; the transmission quality parameters include at least one of the following: latency, priority parameter, and bandwidth.

6. The method according to claim 1, characterized in that, The method further includes: After the first channel switches from the primary state to the standby state, in response to receiving the second switching information, the working states of the first channel and the second channel are switched from primary to standby. After the working state of the first channel is reversed back to the primary state, the second channel is negotiated with the second node to be deleted. The second switching information is sent when the first channel meets the primary / standby revert conditions.

7. The method according to any one of claims 4 or 6, characterized in that, The primary / backup fallback conditions include at least one of the following: the bandwidth provided by the first channel meets the service bandwidth adjustment requirements, the channel group to which the first channel belongs meets the service bandwidth adjustment requirements, and the first channel has been repaired.

8. The method according to claim 1, characterized in that, The method further includes: Before receiving the first switching information, the data units received through the first channel are processed, and the data units received through the second channel are discarded.

9. The method according to claim 1, characterized in that, After performing a primary / backup switch between the first channel and the second channel after a preset time period, the method further includes: In response to the completion of switching the working state of the second channel from standby state to primary state, the data units received through the second channel are processed and the data units received through the first channel are discarded.

10. A data transmission method, characterized in that, Applied to the second node, the method includes: Each data unit in the service data stream is transmitted to the first node through the first channel, and each data unit in the service data stream is transmitted to the first node through the second channel; each data unit carries identification information, which is used to indicate the position of the data unit in the service data stream; the first channel is a transmission channel in the primary working state, and the second channel is a transmission channel in the standby working state. In response to the first channel meeting the primary / backup switchover condition, a first switchover message is sent to the first node; the first switchover message is used to instruct the first node to store the data units received from the first channel and the second channel, and to merge and deduplicate the data units transmitted from the first channel and the second channel according to the identification information during the primary / backup switchover process to obtain the service data stream.

11. The method according to claim 10, characterized in that, Before transmitting each data unit of the service data stream to the first node via the first channel, and before transmitting each data unit of the service data stream to the first node via the second channel, the method further includes: Negotiate with the first node to create the second channel on other physical layer links of the physical layer link carrying the first channel; the other physical layer links are any one of the following: a first physical layer link that does not carry a channel, a second physical layer link with available bandwidth resources, and the second physical layer link is a physical layer link that carries other channels besides the first channel.

12. The method according to claim 10, characterized in that, The primary / backup switchover conditions include any one of the following: the bandwidth provided by the first channel cannot meet the service bandwidth adjustment requirements, the channel group to which the first channel belongs cannot meet the service bandwidth adjustment requirements, or the first channel fails.

13. The method according to claim 10, characterized in that, The method further includes: After the first channel switches from the primary state to the standby state, it negotiates with the first node to switch the first channel from the first channel group to the second channel group so that the first channel meets the primary / standby fallback condition; the first channel group and the second channel group are carried on different physical layer links; the second channel group is any one of the following: a first idle channel group without bound channels, a second idle channel group with idle bandwidth resources, and the second idle channel group is bound to other channels besides the first channel.

14. The method according to claim 13, characterized in that, The second channel group is the channel group with the best transmission quality parameters among the candidate channel groups that meet the service bandwidth adjustment requirements; the transmission quality parameters include at least one of the following: latency, priority parameter, and bandwidth.

15. The method according to claim 10, characterized in that, The method further includes: After the first channel switches from the primary state to the standby state, in response to the first channel meeting the primary / standby rollback condition, a second switching information is sent to the first node, and after the working state of the first channel is rolled back to the primary state, the second channel is negotiated with the first node to be deleted; the second switching information is used to instruct the first node to perform a primary / standby switch on the working states of the first channel and the second channel.

16. An electronic device, characterized in that, The electronic device includes: a memory and a processor; The memory stores instructions that the processor can execute; When the processor is configured to execute the instructions, it causes the electronic device to implement the method as described in any one of claims 1-15.

17. A computer program product, characterized in that, include: Computer instructions; When the computer instructions are executed in an electronic device, the electronic device causes the electronic device to perform the method as described in any one of claims 1-15.