A data transmission method, apparatus, device, and storage medium

By dividing data subsets based on load balancing weights in the SR Policy model and scheduling them to network slices, the load imbalance problem in multi-network slice scenarios is solved, achieving efficient resource utilization and improved data transmission speed.

CN117793011BActive Publication Date: 2025-12-16RUIJIE NETWORKS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211157648.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-22
Publication Date
2025-12-16
Estimated Expiration
2042-09-22

AI Technical Summary

Technical Problem

In multiple network slicing scenarios, there is a problem of load imbalance when scheduling service traffic through SR Policy, resulting in low resource utilization and data transmission congestion.

Method used

By dividing the business dataset into M data subsets based on the load balancing weights corresponding to each of the M segment lists in the SR Policy model, and scheduling them to the corresponding network slices for transmission, the weight values ​​of the segment lists are configured using the physical performance of each network slice to ensure that the data is allocated to the appropriate path according to the transmission capacity.

Benefits of technology

It achieves load balancing across multiple network slice scenarios, avoids network slices from being idle, improves resource utilization, and enhances data transmission speed and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117793011B_ABST
    Figure CN117793011B_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a kind of data transmission method, device, equipment and storage medium, related to communication technical field, the method comprises: obtaining the service data set to be transmitted, based on the load balancing weight corresponding to each M Segment list in SR Policy model, corresponding service data set is divided into M data subsets, according to the network slice identifier bound by M Segment list, the data subset corresponding to M Segment list is given to the corresponding M candidate network slice, and M data subset is transmitted to target node by M candidate network slice.Based on the network slice identifier bound by M Segment list respectively, M data subset is respectively scheduled to corresponding network slice and is transmitted, to realize the load balancing when data transmission is carried out by multiple network slices, avoid network slice idling, improve resource utilization.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present application relate to the technical field of communication, and particularly relate to a data transmission method, device, apparatus and storage medium. BACKGROUND

[0002] In the prior art, a network slice can flexibly define its own logical topology, and can meet the differentiated needs of different industries and different users. An ingress node of the network slice encapsulates a network slice identifier (Slice ID) in a hop-by-hop option header (HBH) extension header of an Internet Protocol version 6 (IPv6) packet, and other nodes determine a corresponding forwarding channel according to the Slice ID in the HBH header when forwarding the packet, so that service traffic can be forwarded on a designated network slice in the network.

[0003] In the related art, a Slice ID is bound to an SR Policy, the SR Policy is bound to the network slice, and then the service traffic is scheduled to the corresponding network slice for forwarding through the SR Policy. However, when there are multiple network slices, scheduling service traffic through the SR Policy can cause load imbalance. SUMMARY

[0004] Embodiments of the present application provide a data transmission method, device, apparatus and storage medium, for load balancing of data transmission in a multiple network slice scenario.

[0005] In one aspect, the present application provides a data transmission method, comprising:

[0006] obtaining a set of service data to be transmitted;

[0007] If M Segment lists (path segment lists) in an SR Policy (segment routing policy) model each bind a network slice identifier, then the set of service data is divided into M data subsets according to the load balancing weights corresponding to the M Segment lists, respectively.

[0008] According to the network slice identifiers bound to the M Segment lists, the data subsets corresponding to the M Segment lists are distributed to the corresponding M candidate network slices, and the M data subsets are transmitted to a target node through the M candidate network slices.

[0009] In the embodiments of the present application, the to-be-transmitted service data set is divided into M data subsets according to the load balancing weights corresponding to the M Segment lists in the SR Policy model, so that more data is allocated to the path with a larger weight, and less data is allocated to the path with a smaller weight. Since the network slice identifier is bound to each of the M Segment lists, the M data subsets can be respectively scheduled to the network slices corresponding to the M network slice identifiers for transmission, so as to realize load balancing when data is transmitted through multiple network slices, avoid network slice idling, and improve resource utilization.

[0010] Optionally, the method further comprises:

[0011] The load balancing weight corresponding to each of the M Segment lists is determined based on the data transmission capability of the bound M candidate network slices.

[0012] In the embodiments of the present application, the data transmission capability of each network slice is different, which depends on the physical performance of each network slice. The size of the Segment list weight value is configured according to the transmission capability of each network slice, so that data is allocated to the corresponding path according to the transmission capability of each network slice, avoiding the problems of data transmission congestion and slow transmission.

[0013] Optionally, the method further comprises:

[0014] The network slice identifier bound to each Segment list is located in the sub-TLVs field of each Segment list.

[0015] In the embodiments of the present application, the sub-TLVs field is included in the message format of each Segment list. When the Segment list is bound, the network slice identifier is bound to the sub-TLVs field in the Segment list, so that data can be forwarded on the specified network slice, and load balancing of multiple network slices can be realized.

[0016] Optionally, the method further comprises:

[0017] The SR Policy model comprises a plurality of candidate paths and a preference value corresponding to each candidate path, each candidate path comprises a plurality of Segment lists and a load balancing weight corresponding to each Segment list.

[0018] In the SR Policy model, there can be multiple candidate paths, each of which has a corresponding preference value. Similarly, in each candidate path, there can be multiple Segment lists, each of which has a corresponding weight value. The candidate path with a higher preference value and the Segment list with a higher load balancing weight are preferentially selected for data forwarding, so that data transmission is faster.

[0019] Optionally, the method further comprises:

[0020] If the SR Policy model is bound with M network slice identifiers, a target path with the highest preference value is selected from the multiple candidate paths.

[0021] According to the load balancing weights corresponding to the N Segment lists included in the target path, the service data set is divided into N data subsets.

[0022] From the M candidate network slices, N target network slices are selected, and the N data subsets are sent to a target node through the N target network slices, wherein M is a positive integer greater than N.

[0023] In the embodiments of the present application, the path with a larger preference value is selected as the target path, which can improve the efficiency of data transmission. According to the load balancing weights corresponding to the Segment lists, the data is distributed, which can improve the speed of data transmission.

[0024] Optionally, the method further comprises:

[0025] The selecting, from the M candidate network slices, N target network slices comprises:

[0026] Based on the data transmission capabilities of the M candidate network slices, N target network slices are selected from the M candidate network slices.

[0027] In the embodiments of the present application, the network slice with stronger data transmission capability is selected as the target network slice from the multiple candidate network slices, so that only the network slice with stronger data transmission capability is used during data transmission, thereby improving the speed of data transmission.

[0028] In one aspect, the embodiments of the present application provide a data transmission device, which comprises:

[0029] The acquisition module is configured to acquire a service data set to be transmitted.

[0030] The distribution module is configured to, if each of M path lists in a segment routing policy (SR Policy) model is bound with a network slice identifier, divide the service data set into M data subsets according to load balancing weights corresponding to the M path lists respectively, where M is a positive integer greater than 1.

[0031] The division module is configured to, according to the network slice identifiers bound to the M path lists, distribute the data subsets corresponding to the M path lists to M candidate network slices respectively, and transmit the M data subsets to a target node through the M candidate network slices.

[0032] Optionally, the load balancing weights corresponding to the M path lists are determined based on data transmission capabilities of the M candidate network slices.

[0033] Optionally, the network slice identifier bound to each path list is located in a sub-TLVs field of each path list.

[0034] Optionally, the SR Policy model includes a plurality of candidate paths and a preference value corresponding to each candidate path, each candidate path includes a plurality of path lists and a load balancing weight corresponding to each path list.

[0035] Optionally, the acquisition module is further configured to:

[0036] If the SR Policy model is bound with M network slice identifiers, select a target path with the highest preference value from the plurality of candidate paths;

[0037] According to load balancing weights corresponding to N path lists included in the target path, divide the service data set into N data subsets, where N is a positive integer greater than or equal to 1 and N is less than M;

[0038] From the M candidate network slices, select N target network slices, and send the N data subsets to a target node through the N target network slices.

[0039] Optionally, the acquisition module is specifically configured to:

[0040] Based on data transmission capabilities of the M candidate network slices, select N target network slices from the M candidate network slices.

[0041] In an aspect, an embodiment of the present application provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the data transmission method when executing the program.

[0042] In an aspect, an embodiment of the present application provides a computer readable storage medium, which stores a computer program executable by a computer device, and when the program is executed on the computer device, the computer device executes the steps of the data transmission method.

[0043] In an embodiment of the present application, the service data set to be transmitted is divided into M data subsets according to the load balancing weights corresponding to the M Segment lists in the SR Policy model, so that more data is allocated to the path with larger weight and less data is allocated to the path with smaller weight. Since the network slice identifiers are respectively bound to the M Segment lists, the M data subsets can be respectively scheduled to the network slices corresponding to the M network slice identifiers for transmission, so as to realize load balancing when data is transmitted through multiple network slices, avoid network slice idling, and improve resource utilization. Meanwhile, the data transmission capacity of each network slice is different, which depends on the physical performance of each network slice. According to the transmission capacity of each network slice, the size of the Segment list weight value is configured, so that data is allocated to the corresponding path according to the transmission capacity of each network slice, avoiding the problems of data transmission congestion and slow transmission. In an embodiment of the present application, the network slice with stronger data transmission capacity is selected as the target network slice from the candidate network slices, so that only the network slice with stronger data transmission capacity is used during data transmission, thereby improving the speed of data transmission. BRIEF DESCRIPTION OF DRAWINGS

[0044] Figure 1 A system architecture diagram is provided for an embodiment of the present application.

[0045] Figure 2 A flowchart of a data transmission method is provided for an embodiment of the present application. Figure One ;

[0046] Figure 3 A structure diagram of an SR Policy model is provided for an embodiment of the present application. Figure One ;

[0047] Figure 4 A structure diagram of an SR Policy model is provided for an embodiment of the present application. Figure Two ;

[0048] Figure 5 A Segment list packet format diagram is provided for an embodiment of the present application.Figure One ;

[0049] Figure 6 A Segment list message format provided for an embodiment of the present application Figure Two ;

[0050] Figure 7 A flowchart of a data transmission method provided for an embodiment of the present application Figure Two ;

[0051] Figure 8 A flowchart of a data transmission method provided for an embodiment of the present application Figure Three ;

[0052] Figure 9 A structure diagram of a data transmission device provided for an embodiment of the present application

[0053] Figure 10 A structure diagram of a computer device provided for an embodiment of the present application. DETAILED DESCRIPTION

[0054] In order to make the objectives, technical solutions and advantages of the present application clearer, further detailed description will be made to the present application in combination with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application, and are not used to limit the present application.

[0055] In order to facilitate understanding, the terms involved in the embodiments of the present application are explained as follows.

[0056] Segment Routing (SR) is a protocol for forwarding data packets on a network based on the concept of source routing. SR divides the network path into segments, and assigns Segment ID (SID) to these segments and network nodes. By sequentially arranging SIDs, i.e. Segment List of the path, a forwarding path can be obtained.

[0057] Segment Routing Policy (SR Policy) is a policy based on SR. SR Policy uses the following three-tuple as Key to globally uniquely identify a SR Policy:

[0058] Headend: identifies the head node of the SR Policy. The Headend can direct traffic into a SR Policy.

[0059] Color: an ID of the SR Policy, which can be associated with a series of service attributes, such as low latency, high bandwidth, etc., and can be understood as a service requirement template ID. Currently, there is no display coding rule, and the value is assigned by the administrator. For example, a policy with an end-to-end latency of less than 10 milliseconds can be assigned a Color of 100.

[0060] Endpoint: an identifier of the destination address of the SR Policy.

[0061] Reference Figure 1 , which is a system architecture diagram applicable to an embodiment of the present application, and the system at least includes a terminal device 101, a source node 102 and a target node 103.

[0062] The terminal device 101 is pre-installed with a service application, wherein the service application is a client application, a web application, a small program application, etc. The terminal device 101 can be a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart home appliance, a smart voice interaction device, a smart vehicle device, etc., but is not limited thereto.

[0063] The source node 102 is a server for realizing data transmission, and the target node 103 is a background server corresponding to the service application. The source node 102 and the target node 103 can be independent physical servers, can be a server cluster or a distributed system composed of multiple physical servers, or can be a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content distribution networks (CDN), and basic cloud computing services such as big data and artificial intelligence platforms.

[0064] The terminal device 101 and the source node 102 can be directly or indirectly connected through wired or wireless communication; the source node 102 and the target node 103 can be directly or indirectly connected through wired or wireless communication, which is not limited in the present application. The source node 102 and the target node 103 perform data transmission through one or more network slices.

[0065] Based on the system architecture diagram of Figure 1 , an embodiment of the present application provides a flow of a data transmission method, as shown in Figure 2 , the flow of the method is executed by a computer device, which can be the source node 102 as shown in Figure 1 , and includes the following steps:

[0066] Step 201, obtaining a service data set to be transmitted.

[0067] Specifically, the source node obtains the business dataset to be transmitted, which can be one or more of the following: files, images, videos, and audio.

[0068] Step 202: If each of the M segment lists in the SR Policy model is bound to a network slice identifier, then based on the load balancing weights corresponding to each of the M segment lists, the business dataset is divided into M data subsets, where M is a positive integer greater than 1.

[0069] Specifically, a network slice identifier refers to the number assigned to each network slice initially, represented by a Slice ID. Each Slice ID uniquely corresponds to one network slice. During configuration, a network slice identifier is bound to a Segmentlist.

[0070] In some embodiments, the SR Policy model includes multiple candidate paths and a preference value corresponding to each candidate path. Each candidate path includes multiple segment lists and a load balancing weight corresponding to each segment list.

[0071] For example, such as Figure 3 As shown, the SR Policy includes two candidate paths: Candidate Path 1 and Candidate Path 2. Candidate Path 1 corresponds to preference value 1, and Candidate Path 2 corresponds to preference value 2. Candidate Path 1 contains Segment list 11 and Segment list 12, where Segment list 11 corresponds to load balancing weight 11, and Segment list 12 corresponds to load balancing weight 12; Candidate Path 2 contains Segment list 21 and Segment list 22, where Segment list 21 corresponds to load balancing weight 21, and Segment list 22 corresponds to load balancing weight 22.

[0072] In this embodiment of the application, in the SR Policy model, there can be multiple candidate paths, each with a corresponding preference value. Similarly, each candidate path has multiple segment lists, each with a corresponding weight value. The candidate path with the higher preference value and the segment list with the higher load balancing weight are selected for data forwarding, making data transmission faster.

[0073] In some embodiments, the load balancing weights corresponding to each of the M segment lists are determined based on the data transmission capabilities of the M candidate network slices bound together.

[0074] Specifically, the data transmission capability of the network slice is its own physical performance, such as bandwidth. After being bound with the Segment list, the data transmission capability is matched with the amount of data to be transmitted according to its own data transmission capability. The load balancing weight of the Segment list is set according to the data transmission capability of each network slice, that is, the stronger the data transmission capability, the greater the load balancing weight; the weaker the data transmission capability, the smaller the load balancing weight. According to the load balancing weight corresponding to each of the M Segment lists in the SR Policy model, the service data set to be transmitted is divided into M data subsets.

[0075] For example, as shown in Figure 4 , it is assumed that the set SR Policy includes two candidate paths, candidate path 1 and candidate path 2. The candidate path 1 corresponds to a preference value 1, and the candidate path 2 corresponds to a preference value 2. The candidate path 1 includes Segment list 11 and Segment list 12, wherein the Segment list 11 corresponds to a load balancing weight 11 and is bound with a Slice ID 11 of a network slice 1, and the Segment list 12 corresponds to a load balancing weight 12 and is bound with a Slice ID 12 of a network slice 2. The candidate path 2 includes Segment list 21 and Segment list 22, wherein the Segment list 21 corresponds to a load balancing weight 21 and is bound with a Slice ID 21 of a network slice 3, and the Segment list 22 corresponds to a load balancing weight 22 and is bound with a Slice ID 22 of a network slice 4.

[0076] It is assumed that the bandwidth of the network slice 1 is 4G, the bandwidth of the network slice 2 is 2G, the bandwidth of the network slice 3 is 4G, and the bandwidth of the network slice 4 is 2G. The load balancing weights 11, 12, 21 and 22 are configured as 2, 1, 2 and 1, respectively.

[0077] In the embodiments of the present application, the data transmission capabilities of each network slice are different, which depends on the physical performance of each network slice. The size of the Segment list weight value is configured according to the transmission capability of each network slice, so that the data is distributed to the corresponding path according to the transmission capability of each network slice, thereby avoiding the problems of data transmission congestion and slow transmission.

[0078] In some embodiments, the network slice identifier bound with each Segment list is located in the sub-TLVs field of each Segment list.

[0079] For example, as shown in Figure 5As shown, the message format of Segment list contains the following: type, length, flag bit, reserved, multi-topology identification, algorithm, weight, and sub-TLVs. To carry the Slice ID, the sub-TLVs of Segment list need to be extended, and the format of sub-TLVs is as follows: Figure 6 As shown, when configuring the SR Policy, the Slice ID is carried in the sub-TLVs field.

[0080] In the embodiments of the present application, the message format of each Segment list contains a sub-TLVs field, and when binding with the Segment list, the network slice identifier is bound to the sub-TLVs field in the Segment list. In this way, data can be forwarded on the specified network slice, and load balancing of multiple network slices can be realized.

[0081] Step 203, according to the network slice identifier bound to the M Segment lists, divide the M data subsets corresponding to the M Segment lists into the corresponding M candidate network slices, and transmit the M data subsets to the target node through the M candidate network slices.

[0082] Specifically, after binding the network slice identifier to the Segment list, the data subset is allocated to the corresponding network slice based on the network slice identifier, and the data subset is transmitted to the target node through the network slice.

[0083] For example, referring to Figure 4 When the service data set of 6G is obtained, the service data set of 6G is divided into four subsets, i.e., subset 1, subset 2, subset 3, and subset 4, based on the load balancing weight 11, the load balancing weight 12, the load balancing weight 21, and the load balancing weight 22. The data amount of subset 1 is 2G, the data amount of subset 2 is 1G, the data amount of subset 3 is 2G, and the data amount of subset 4 is 1G. Subset 1 is transmitted to the target node through network slice 1, subset 2 is transmitted to the target node through network slice 2, subset 3 is transmitted to the target node through network slice 3, and subset 4 is transmitted to the target node through network slice 4.

[0084] In the embodiments of the present application, the service data set to be transmitted is divided into M data subsets according to the load balancing weights corresponding to the M Segment lists in the SR Policy model, so that more data is allocated to the path with a larger weight and less data is allocated to the path with a smaller weight. Since the network slice identifiers are respectively bound to the M Segment lists, the M data subsets can be respectively scheduled to the network slices corresponding to the M network slice identifiers for transmission, so as to realize load balancing when data is transmitted through multiple network slices, avoid network slice idling, and improve resource utilization.

[0085] In some embodiments, the embodiments of the present application also provide a data transmission method, as shown in Figure 7 The method comprises the following steps:

[0086] Step 701, if the SR Policy model is bound with M network slice identifiers, selecting a target path with the highest preference value from multiple candidate paths;

[0087] Specifically, in the SR Policy model, there are multiple candidate paths for selection. Based on the preference values corresponding to the multiple candidate paths, the candidate paths can be divided into a primary path and a backup path. The candidate path with the highest preference value is the primary path, and the other candidate paths are backup paths. When the primary path is normal, the primary path is selected as the target path. When the primary path is abnormal, the backup path with the highest preference value is selected as the target path.

[0088] Step 702, dividing a service data set into N data subsets according to the load balancing weights corresponding to N Segment lists contained in the target path, N being a positive integer greater than or equal to 1 and smaller than M;

[0089] For example, it is assumed that there are two Segment lists on the target path, the load balancing weight of the Segment list 1 is 1, and the load balancing weight of the Segment list 2 is 2. When a service data set of 6G is obtained, the service data set of 6G is divided into a data subset 1 of 2G and a data subset 2 of 4G.

[0090] Step 703, selecting N target network slices from M candidate network slices, and sending the N data subsets to a target node through the N target network slices.

[0091] Specifically, N target network slices can be selected from the M candidate network slices based on the data transmission capabilities of the M candidate network slices, or N target network slices can be randomly selected from the M candidate network slices. Then, the N data subsets are sent to the target node through the N target network slices. When there are multiple network slices, the required network slices are selected, data is allocated according to the preference values of the paths and the load balancing weights of the Segment lists, and the remaining network slices do not transmit data.

[0092] For example, when a 6G service data set is obtained, the 6G service data set is divided into a 2G data subset 1 and a 4G data subset 2, and then network slice 1 and network slice 2 with high data transmission capabilities are selected from the four network slices, wherein the data transmission capability of network slice 1 is greater than that of network slice 2. Data subset 2 is sent to the target node through network slice 1, and data subset 1 is sent to the target node through network slice 2.

[0093] In the embodiments of the present application, the path with a larger preference value is selected as the target path, which can improve the efficiency of data transmission. Allocating data according to the respective load balancing weights of the Segment lists can improve the speed of data transmission.

[0094] In order to better explain the embodiments of the present application, the flowchart of a data transmission method provided by the embodiments of the present application is introduced below in combination with a specific implementation scenario. The method is interactively executed by a source node and a target node, and includes the following steps, as shown in Figure 8

[0095] Step 801: The source node configures an SR Policy.

[0096] Specifically, the Headend, Endpoint, and Color of the SR Policy are specified.

[0097] Step 802: The source node configures multiple candidate paths and corresponding preference values.

[0098] Step 803: The source node configures the load balancing weights of the Segment List under each candidate path, and binds each Segment List with a Slice ID.

[0099] Specifically, the load balancing weights of the corresponding Segment lists are determined based on the data transmission capabilities of the network slices corresponding to the Slice IDs.

[0100] Step 804: The source node obtains a service data set to be transmitted.

[0101] ​At step 805, the source node divides the service data set into multiple data subsets according to the load balancing weights corresponding to the multiple Segment lists respectively.

[0102] At step 806, the source node distributes the data subsets corresponding to the multiple Segment lists to the corresponding network slices according to the network slice identifiers bound to the multiple Segment lists.

[0103] At step 807, the source node transmits the data subsets to the target node through the corresponding network slices.

[0104] In the embodiments of the present application, the service data set to be transmitted is divided into M data subsets according to the load balancing weights corresponding to the M Segment lists in the SR Policy model, so that more data is allocated to the path with a larger weight and less data is allocated to the path with a smaller weight. Since the network slice identifiers are bound to the M Segment lists respectively, the M data subsets can be scheduled to the network slices corresponding to the M network slice identifiers for transmission, so as to realize load balancing when data is transmitted through multiple network slices, avoid network slice idling, and improve resource utilization.

[0105] Based on the same technical concept, the embodiments of the present application provide a data transmission device, as shown in Figure 9 The device 900 includes:

[0106] In one aspect, the embodiments of the present application provide a data transmission device, which includes:

[0107] The acquisition module 901 is configured to acquire a service data set to be transmitted.

[0108] The distribution module 902 is configured to, if M path lists Segment lists in a segment routing policy SR Policy model are each bound with a network slice identifier, divide the service data set into M data subsets according to load balancing weights corresponding to the M Segment lists respectively, M being a positive integer greater than 1.

[0109] The division module 903 distributes the data subsets corresponding to the M Segment lists to the corresponding M candidate network slices according to the network slice identifiers bound to the M Segment lists, and transmits the M data subsets to a target node through the M candidate network slices.

[0110] Optionally, the load balancing weights corresponding to the M Segment lists are determined based on data transmission capabilities of the bound M candidate network slices.

[0111] Optionally, each Segment list binds a network slice identifier in a sub-TLVs field of each Segment list.

[0112] Optionally, the SR Policy model includes a plurality of candidate paths and a corresponding preference value of each candidate path, each candidate path includes a plurality of Segment lists and a corresponding load balancing weight of each Segment list.

[0113] Optionally, the obtaining module 901 is further configured to:

[0114] If the SR Policy model binds M network slice identifiers, a target path with the highest preference value is selected from the plurality of candidate paths;

[0115] According to the load balancing weight corresponding to the N Segment lists included in the target path, the service data set is divided into N data subsets, N is a positive integer greater than or equal to 1, and N is less than M;

[0116] From the M candidate network slices, N target network slices are selected, and the N data subsets are sent to the target node through the N target network slices.

[0117] Optionally, the obtaining module 901 is specifically configured to:

[0118] Based on the data transmission capability of the M candidate network slices, N target network slices are selected from the M candidate network slices.

[0119] In the embodiments of the present application, by obtaining the size of the data set to be transmitted, the data set is distributed according to the weight of each path, the path with larger weight is allocated more data, and the path with smaller weight is allocated less data. By binding the network slice identifier with the Segment list, the data is transmitted to the destination node through the network slice, the purpose of distributing the data according to the size of each path is achieved, data congestion is avoided, flexible and fast transmission is achieved, and data can be forwarded on the specified slice in the network.

[0120] Based on the same technical concept, the embodiments of the present application provide a computer device, which can be a terminal or a server, such as Figure 10 For example, the computer device includes at least one processor 1001 and a memory 1002 connected to the at least one processor. In the embodiments of the present application, the specific connection medium between the processor 1001 and the memory 1002 is not limited, Figure 10The processor 1001 and the memory 1002 are connected by a bus as an example. The bus can be divided into an address bus, a data bus, a control bus and the like.

[0121] In the embodiments of the present application, the memory 1002 stores instructions executable by the at least one processor 1001, and the at least one processor 1001 can execute the steps included in the above data transmission method by executing the instructions stored in the memory 1002.

[0122] The processor 1001 is the control center of the computer device, and can connect various parts of the computer device by using various interfaces and lines, and perform data transmission by running or executing instructions stored in the memory 1002 and calling data stored in the memory 1002. Optionally, the processor 1001 can include one or more processing units, and the processor 1001 can integrate an application processor and a modem processor, wherein the application processor mainly processes an operating system, a user interface and an application program, and the modem processor mainly processes wireless communication. It can be understood that the above-mentioned modem processor can also not be integrated into the processor 1001. In some embodiments, the processor 1001 and the memory 1002 can be implemented on the same chip, and in some embodiments, they can also be implemented on independent chips respectively.

[0123] The processor 1001 can be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array or other programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, and can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as hardware processor execution or executed by a combination of hardware and software modules in the processor.

[0124] The memory 1002, as a non-volatile computer readable storage medium, can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 1002 can include at least one type of storage medium, for example, can include flash memory, hard disk, multimedia card, card type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic storage, magnetic disk, optical disk, etc. The memory 1002 is any other medium capable of carrying or storing desired program codes in the form of instructions or data structures and capable of being accessed by a computer, but is not limited thereto. The memory 1002 in the embodiments of the present application can also be a circuit or any other device capable of realizing a storage function, used for storing program instructions and / or data.

[0125] Based on the same inventive concept, the embodiments of the present application provide a computer readable storage medium storing a computer program executable by a computer device, which, when executed on the computer device, causes the computer device to perform the steps of the data transmission method.

[0126] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) containing computer-usable program code.

[0127] The present application is described with reference to flowcharts and / or block diagrams of the method, device (system) and computer program product according to the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, as well as a combination of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus produce a machine that implements the flowcharts and / or block diagrams. Figure One one flow or multiple flows and / or blocksFigure One means for performing the function specified by the block or blocks.

[0128] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the flow Figure One flow or flows and / or blocks Figure One means for performing the function specified by the block or blocks.

[0129] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the flow Figure One flow or flows and / or blocks Figure One steps of means for performing the function specified by the block or blocks.

[0130] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the apparent, such modifications and variations are to be included within the scope of the application and the equivalent of such.

Claims

1. A data transmission method applied to a source node, characterized in that, include: Obtain the business dataset to be transmitted; If each of the M path lists in the Segment Routing Policy (SR Policy) model is bound to a network slice identifier, then based on the load balancing weights corresponding to each of the M Segment lists, the business dataset is divided into M data subsets, where M is a positive integer greater than 1. Based on the network slice identifiers bound to the M segment lists, the data subsets corresponding to the M segment lists are assigned to the corresponding M candidate network slices, and the M data subsets are transmitted to the target node through the M candidate network slices.

2. The method as described in claim 1, characterized in that, The load balancing weights corresponding to each of the M segment lists are determined based on the data transmission capabilities of the M candidate network slices bound together.

3. The method as described in claim 1, characterized in that, The network slice identifier bound to each segment list is located in the sub-TLVs field of each segment list.

4. The method as described in claim 1, characterized in that, The SR Policy model includes multiple candidate paths and a preference value corresponding to each candidate path. Each candidate path includes multiple segment lists and a load balancing weight corresponding to each segment list.

5. The method as described in claim 4, characterized in that, Also includes: If the SR Policy model is bound to M network slice identifiers, then the target path with the highest preference value is selected from the multiple candidate paths; Based on the load balancing weights corresponding to the N segment lists contained in the target path, the business dataset is divided into N data subsets, where N is a positive integer greater than or equal to 1 and N is less than M. From the M candidate network slices, select N target network slices, and send the N data subsets to the target node through the N target network slices.

6. The method as described in claim 5, characterized in that, The step of selecting N target network slices from the M candidate network slices includes: Based on the data transmission capabilities of the M candidate network slices, N target network slices are selected from the M candidate network slices.

7. A data transmission device, characterized in that, include: The acquisition module is used to acquire the business dataset to be transmitted. The distribution module is used to divide the business dataset into M data subsets based on the load balancing weights corresponding to the M path lists in the segment routing policy (SR Policy) model, where M is a positive integer greater than 1, if each of the M path lists is bound to a network slice identifier. The partitioning module is used to assign the data subsets corresponding to the M segment lists to the corresponding M candidate network slices based on the network slice identifiers bound to the M segment lists, and then transmit the M data subsets to the target node through the M candidate network slices.

8. The apparatus as claimed in claim 7, characterized in that, The load balancing weights corresponding to each of the M segment lists are determined based on the data transmission capabilities of the M candidate network slices bound together.

9. The apparatus as claimed in claim 7, characterized in that, The network slice identifier bound to each segment list is located in the sub-TLVs field of each segment list.

10. The apparatus as claimed in claim 7, characterized in that, The SR Policy model includes multiple candidate paths and a preference value corresponding to each candidate path. Each candidate path includes multiple segment lists and a load balancing weight corresponding to each segment list.

11. The apparatus as claimed in claim 7, characterized in that, The acquisition module is also used for: If the SR Policy model is bound to M network slice identifiers, then the target path with the highest preference value is selected from the multiple candidate paths; Based on the load balancing weights corresponding to the N segment lists contained in the target path, the business dataset is divided into N data subsets, where N is a positive integer greater than or equal to 1 and N is less than M. From the M candidate network slices, select N target network slices, and send the N data subsets to the target node through the N target network slices.

12. The apparatus as claimed in claim 7, characterized in that, The acquisition module is specifically used for: Based on the data transmission capabilities of the M candidate network slices, N target network slices are selected from the M candidate network slices.

13. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method according to any one of claims 1 to 6.

14. A computer-readable storage medium, characterized in that, It stores a computer program executable by a computer device, which, when run on the computer device, causes the computer device to perform the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Business processing method and device, storage medium and electronic device

    CN112995030A

  • Load balancing method, device and system

    CN114024969A