A transmission method, device and storage medium

The links of the network device interface are divided into sub-link resources through the SDN controller, and the SRv6 Policy tunnel is used, combined with the sub-link identifier, and the exclusive and dynamic management of slice resources is realized, solving the problem of the inability to associate the underlying layer in the existing technology. The problem of sub-link physical resources provides physical resource guarantee for hard slicing and two-level slicing services.

CN115277548BActive Publication Date: 2024-12-31CHINA MOBILE COMM LTD RES INST +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202110480372.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-04-30
Publication Date
2024-12-31
Estimated Expiration
2041-04-30

AI Technical Summary

Technical Problem

The existing technology cannot effectively associate the underlying sublink physical resources, resulting in the inability to exclusively share slice resources and cannot meet the demand for hard slices. The existing FlexAlgo, SR-TE, SRv6 Policy technologies can only achieve logical isolation and cannot meet the exclusive use of user resources. need.

Method used

The links of the network device interface are divided into multiple sub-link resources through a software-defined network (SDN) controller, and the corresponding relationship between slice identification and resource requirements is established. The SRv6 Policy tunnel is used based on IPv6 source routing technology policy, combined with sub-link identification. Sub-Link Num enables exclusive and dynamic management of sub-link resources.

Benefits of technology

It realizes the exclusive enjoyment of each slice resource on the same physical link, solves the problems of resource waste and logical isolation in FlexAlgo technology, provides physical resource guarantee for hard slices, and meets the two levels of slicing of industry or virtual operators and user slices. Slicing scene requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115277548B_ABST
    Figure CN115277548B_ABST
Patent Text Reader

Abstract

The present invention discloses a transmission method, device and storage medium, including: an SDN controller divides the link corresponding to each network device interface into multiple sub-link resources according to the resource requirements of slice users; establishes a corresponding relationship between a slice identifier SliceID and resource requirements; establishes a one-to-one binding IPv6-based source routing technology policy SRv6Policy tunnel for the user according to the resource requirements of the slice user, and establishes a corresponding relationship between the slice identifier SliceID and the SRv6Policy tunnel. When providing services to the slice user, the forwarding device guides its service traffic to the SRv6Policy tunnel for transmission; establishes a corresponding relationship between SliceID and the sub-link resources of each interface on the SRv6Policy tunnel path. The present invention can meet the first-level slicing requirements of the sub-link granularity for exclusive use of the underlying physical resources, and can also meet the two-level slicing requirements of the sub-link granularity for exclusive use of the underlying physical resources of the industry or virtual operator slice + user slice.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a transmission method, device and storage medium. Background Art

[0002] Existing slicing technologies for data carrying include FlexAlgo (flexible algorithm) technology, SR-TE (Segment Routing-Traffic Engineering), and SRv6 Policy (SRv6 policy; SRv6: source routing technology based on IPv6, Segment Routing IPv6) tunnel technology.

[0003] 1. The following is a brief description of the FlexAlgo (FA) technology.

[0004] FA is based on the single topology of IGP (Interior Gateway Protocol). Each node and each L3 link corresponds to one or more FA algorithm spaces, which are published by the IGP protocol to form an IGP sub-path space.

[0005] The FA algorithm consists of three parts: MetricType, CalcType and Constraint. Different FA algorithms result in different sub-topologies. Therefore, FlexAlgo can divide the physical network into multiple virtual networks. Different SIDs (segment identifiers, SegmentIDentifier) ​​are used for message encapsulation in different FA slices, and different addresses are calculated separately to guide the message forwarding in the corresponding FA slice.

[0006] Figure 1 This is a schematic diagram of the physical networking topology of the device. Figure 2 The following is a schematic diagram of the sub-topology of different FA slices. As shown in the figure, the FA example is as follows: different nodes are added to different FAs based on IGP Metric or TE (Traffic Engineering) Metric path calculation. Different physical links are added to different FlexAlgos by setting color attributes and matching the path calculation constraints of different FAs (such as affinity attributes, including a certain color). In each FA slice, each node is assigned an independent SID. The different FA slice sub-topologies formed are as follows: Figure 2 As shown:

[0007] Automatic business diversion: By carrying FA-ID when announcing prefix SID, it means that a specific FA algorithm needs to be used to calculate this destination prefix. The business can find the corresponding FA-LSP (The Liskov Substitution Principle) based on a single prefix SID based on FA or a specific SR (Segment Routing) list.

[0008] 2. The following is a brief description of SR-TE and SRv6 Policy technologies.

[0009] SR-TE and SRv6 Policy are source routing tunnel technologies that can calculate a path Segmentlist that meets the user's SLA (Service-Level Agreement) requirements, such as latency and bandwidth.<SID1、SID2、…SIDn> , guiding user messages to be forwarded along the specified path in the network.

[0010] The tunnel path Segmentlist can be arranged with node SID or adjacency SID. When each hop SID in the path uses adjacency SID, the tunnel path is a strict path, and each hop is specified; when some SIDs in the path use node SID, the tunnel path is a one-hop loose path, because there may be different reachable links between the two nodes.

[0011] 1. The shortcomings of FlexAlgo slicing technology are:

[0012] FlexAlgo technology can only guarantee node selection and physical link selection, and realize coarse-grained slicing at the physical port level. However, in the existing network, it is impossible to ensure that there are multiple links between all nodes, so it is impossible to guarantee end-to-end exclusive use of slice resources. In addition, slice users of this solution can only exclusively use a certain physical link, and it is impossible to allocate multiple sub-link resources to different slice users. Therefore, for scenarios with physical isolation slice requirements, it will cause a huge waste of resources and is basically unusable.

[0013] 2. The shortcomings of SR-TE and SRv6 Policy technologies in slicing are:

[0014] SR-TE and SRv6 Policy solve the path planning problem by guiding packets to avoid congested sections and forward along the specified path. However, the resources on each physical link on the forwarding path, such as bandwidth, cannot be guaranteed because link resources are still shared by all tunnels and cannot be associated with the underlying sub-link physical resources. Only logical isolation is achieved, which cannot meet the hard slicing requirements for exclusive use of resources required by users.

[0015] Therefore, the deficiency of the prior art is that there is no slicing scheme that can associate the underlying sub-link physical resources. Summary of the invention

[0016] The present invention provides a transmission method, device and storage medium to solve the problem that there is no slicing scheme that can be associated with underlying sub-link physical resources.

[0017] The present invention provides the following technical solutions:

[0018] A transmission method, comprising:

[0019] The software-defined network SDN controller divides the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements;

[0020] Establish the corresponding relationship between slice ID SliceID and resource requirements;

[0021] According to the resource requirements of the slice user, a one-to-one binding IPv6-based source routing technology strategy SRv6 Policy tunnel is established for the user, and a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established.

[0022] During implementation, it further includes:

[0023] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0024] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0025] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0026] During implementation, it further includes:

[0027] The purpose of establishing a correspondence between a slice identifier SliceID and an SRv6 Policy tunnel is to allocate a slice identifier SliceID that can meet the resource requirements of slice users to the SRv6 Policy tunnel.

[0028] During implementation, it further includes:

[0029] The sub-link identifier Sub-Link Num is used to identify the sub-link resource. Each sub-link has its own underlying physical resource. By preserving and maintaining the correspondence between Sub-Link Num and each type of sub-link resource ID, it is compatible with various types of underlying physical sub-link resources.

[0030] During implementation, it further includes:

[0031] An identifier is added to the IPv6-based source routing technology capability subtype, length, value SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the Border Gateway Protocol link type BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0032] During implementation, it further includes:

[0033] An identifier is added to the End.X SID sub-TLV structure of the end segment identifier subtype, length, and value to indicate that the device is the adjacent SID of the virtual member sublink rather than the adjacent SID of the physical link.

[0034] During implementation, it further includes:

[0035] The link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure are used to announce the number of link slices and corresponding resource information.

[0036] In the implementation, one or a combination of the following processes is further included:

[0037] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0038] The SDN controller allocates forwarding plane SliceID resources to each user according to the needs of slice users in the FA slice topology, and establishes a corresponding relationship between SliceID and the resource needs of each slice user. The unallocated SliceID is temporarily reserved and has no resource requirements.

[0039] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0040] During implementation, it further includes:

[0041] The SDN controller maintains and / or updates the following information:

[0042] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0043] During implementation, it further includes:

[0044] The BGP SRv6 Policy message carries the SliceID information of the forwarding plane.

[0045] During implementation, it further includes:

[0046] Configure the mapping relationship between the color template and the forwarding plane SliceID so that the tunnel head node device obtains the corresponding SliceID based on the Color attribute of SRv6Policy.

[0047] During implementation, it further includes:

[0048] The SDN controller performs path calculation based on the SliceID information, FA topology, and the remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and uses the virtual member sub-link End.XSID for path orchestration.

[0049] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the forwarding device determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag set in the virtual member sub-link End.X SID when forwarding the message, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0050] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the SDN controller updates one or a combination of the following information based on the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resource information of the virtual member sub-link.

[0051] During implementation, it further includes:

[0052] The value space of the sub-link resource identifier is divided to distinguish the sub-link resource identifiers used by the FA slice and the user slice.

[0053] In implementation, when dividing the value space of the sub-link resource identifier, the sub-link resource corresponding to the Sub-Link Num with the upper 4 bits being 1 is allocated to the FA slice, and the remaining Sub-Link Num value space is allocated to the user slice.

[0054] During implementation, it further includes:

[0055] In each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to user slices are reserved for sharing by non-slice users in the FA slice topology. The traffic of non-slice users is carried by SRv6 BE.

[0056] In implementation, the FA slice is to divide the network into a corresponding number of FA slices based on FlexAlgo in a one-to-one correspondence according to the number of industries or virtual operators;

[0057] The SDN controller determines the FlexAlgo-based FA slice to which the slice user belongs based on the industry or virtual operator to which the slice user belongs.

[0058] A transmission method, comprising:

[0059] When providing services to the slice user, the forwarding device guides its service traffic to the SRv6 Policy tunnel for transmission;

[0060] A mapping relationship between SliceID and each interface sub-link resource is established on the SRv6 Policy tunnel path.

[0061] During implementation, it further includes:

[0062] One or a combination of the following information is flooded and announced in the interior gateway protocol IGP: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0063] During implementation, it further includes:

[0064] The tunnel head node device obtains the SliceID from the BGP SRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

[0065] During implementation, when the forwarding device guides slice user traffic to the SRv6 Policy tunnel for transmission, it allocates a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface for forwarding based on the SliceID carried in the slice user forwarding message, and maintains the correspondence between the SliceID and the sub-link resource and the status of the sub-link resource.

[0066] During implementation, when the forwarding device guides the slice user traffic to the SRv6 Policy tunnel for transmission, when the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarding message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-Link Num status.

[0067] A network device, comprising:

[0068] The processor reads the program in the memory and performs the following processes:

[0069] According to the resource requirements of slice users, the link corresponding to each network device interface is divided into multiple sub-link resources;

[0070] Establish the corresponding relationship between slice ID SliceID and resource requirements;

[0071] According to the resource requirements of the slice user, a one-to-one binding SRv6 Policy tunnel based on IPv6 source routing technology strategy is established for the user, and a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established;

[0072] A transceiver is used to receive and send data under the control of the processor.

[0073] During implementation, it further includes:

[0074] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0075] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0076] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0077] During implementation, it further includes:

[0078] The purpose of establishing a correspondence between a slice identifier SliceID and an SRv6 Policy tunnel is to allocate a slice identifier SliceID that can meet the resource requirements of slice users to the SRv6 Policy tunnel.

[0079] During implementation, it further includes:

[0080] The sub-link identifier Sub-Link Num is used to identify the sub-link resource. Each sub-link has its own underlying physical resource. By preserving and maintaining the correspondence between Sub-Link Num and each type of sub-link resource ID, it is compatible with various types of underlying physical sub-link resources.

[0081] During implementation, it further includes:

[0082] An identifier is added to the IPv6-based source routing technology capability subtype, length, value SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the Border Gateway Protocol link type BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0083] During implementation, it further includes:

[0084] An identifier is added to the End.X SID sub-TLV structure of the end segment identifier subtype, length, and value to indicate that the device is the adjacent SID of the virtual member sublink rather than the adjacent SID of the physical link.

[0085] During implementation, it further includes:

[0086] The link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure are used to announce the number of link slices and corresponding resource information.

[0087] In the implementation, one or a combination of the following processes is further included:

[0088] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0089] According to the needs of slice users in the FA slice topology, forwarding plane SliceID resources are allocated to each user, and a corresponding relationship between SliceID and the resource needs of each slice user is established. Unallocated SliceIDs are temporarily reserved and have no resource requirements;

[0090] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0091] During implementation, it further includes:

[0092] Maintain and / or update the following information:

[0093] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0094] During implementation, it further includes:

[0095] The BGP SRv6 Policy message carries the SliceID information of the forwarding plane.

[0096] During implementation, it further includes:

[0097] Configure the mapping relationship between the color template and the forwarding plane SliceID so that the tunnel head node device obtains the corresponding SliceID based on the Color attribute of SRv6Policy.

[0098] During implementation, it further includes:

[0099] Path calculation is performed based on SliceID information, FA topology, and remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and path arrangement is performed using the virtual member sub-link End.X SID.

[0100] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the forwarding device determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag set in the virtual member sub-link End.X SID when forwarding the message, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0101] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the SDN controller updates one or a combination of the following information based on the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resource information of the virtual member sub-link.

[0102] During implementation, it further includes:

[0103] The value space of the sub-link resource identifier is divided to distinguish the sub-link resource identifiers used by the FA slice and the user slice.

[0104] In implementation, when dividing the value space of the sub-link resource identifier, the sub-link resource corresponding to the Sub-Link Num with the upper 4 bits being 1 is allocated to the FA slice, and the remaining Sub-Link Num value space is allocated to the user slice.

[0105] During implementation, it further includes:

[0106] In each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to user slices are reserved for sharing by non-slice users in the FA slice topology. The traffic of non-slice users is carried by SRv6 BE.

[0107] In implementation, the FA slice is to divide the network into a corresponding number of FA slices based on FlexAlgo in a one-to-one correspondence according to the number of industries or virtual operators;

[0108] The FlexAlgo-based FA slice to which the slice user belongs is determined based on the industry or virtual operator to which the slice user belongs.

[0109] A network device, comprising:

[0110] A division module is used to divide the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements;

[0111] The corresponding module is used to establish the corresponding relationship between the slice identifier SliceID and the resource demand;

[0112] The binding module is used to establish a one-to-one binding IPv6-based source routing technology strategy SRv6 Policy tunnel for the user according to the resource requirements of the slice user, and establish a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel.

[0113] During implementation, it further includes:

[0114] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0115] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0116] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0117] During implementation, the binding module is further used to establish a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel to allocate a slice identifier SliceID to the SRv6 Policy tunnel that can meet the slice user resource requirements.

[0118] During implementation, the division module is further used to identify sub-link resources using the sub-link identifier Sub-Link Num. Each sub-link has its own exclusive underlying physical resources. By preserving and maintaining the correspondence between Sub-Link Num and each type of sub-link resource ID, it is compatible with various types of underlying physical sub-link resources.

[0119] During implementation, the binding module is further used to add an identifier to the IPv6-based source routing technology capability subtype, length, value SRv6Capabilities sub-TLV of the routing capability type, length, value Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the border gateway protocol link type BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0120] In implementation, the binding module is further used to add an identifier to the end segment identifier subtype, length, value End.X SID sub-TLV structure to indicate that the device is an adjacent SID of a virtual member sublink rather than an adjacent SID of a physical link.

[0121] During implementation, the binding module is further used to use the link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure to announce the number of link slices and corresponding resource information.

[0122] In implementation, the partitioning module is further used to perform one or a combination of the following processes:

[0123] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0124] According to the needs of slice users in the FA slice topology, forwarding plane SliceID resources are allocated to each user, and a corresponding relationship between SliceID and the resource needs of each slice user is established. Unallocated SliceIDs are temporarily reserved and have no resource requirements;

[0125] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0126] In implementation, the partitioning module is further used to maintain and / or update the following information:

[0127] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0128] During implementation, the binding module is further used to carry the SliceID information of the forwarding plane in the BGP SRv6 Policy message.

[0129] During implementation, the binding module is further used to configure the mapping relationship between the Color template and the forwarding plane SliceID, so that the tunnel head node device obtains the corresponding SliceID according to the Color attribute of the SRv6 Policy.

[0130] In implementation, the binding module is further used to perform path calculation based on SliceID information, FA topology, and remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and use the virtual member sub-link End.X SID for path orchestration.

[0131] During implementation, the binding module is further used to guide the slice user traffic to the SRv6 Policy tunnel for transmission, so that when the forwarding device forwards the message, it determines the slice sub-link physical resource on the outgoing interface according to the indication of the slice flag set in the virtual member sub-link End.X SID, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0132] During implementation, the binding module is further used to guide slice user traffic to SRv6 Policy tunnel transmission, and update one or a combination of the following information according to the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resource information of the virtual member sub-link.

[0133] During implementation, the division module is further used to distinguish the sub-link resource identifiers used by FA slices and user slices by dividing the value space of the sub-link resource identifiers.

[0134] During implementation, the division module is further used to allocate the sub-link resources corresponding to the Sub-Link Num with the upper 4 bits being 1 to the FA slice when dividing the value space of the sub-link resource identifier, and allocate the remaining Sub-Link Num value space to the user slice.

[0135] During implementation, the partitioning module is further used to reserve the remaining bandwidth resources in the total bandwidth that are not allocated to user slices in each FA slice topology, for sharing by non-slice users in the FA slice topology, and the traffic of non-slice users is carried through SRv6 BE.

[0136] In implementation, the partitioning module is further used for the FA slice to partition the network into a corresponding number of FA slices based on FlexAlgo that have a one-to-one correspondence according to the number of industries or virtual operators;

[0137] The FlexAlgo-based FA slice to which the slice user belongs is determined based on the industry or virtual operator to which the slice user belongs.

[0138] A network device, comprising:

[0139] The processor reads the program in the memory and performs the following processes:

[0140] When providing services to the slice user, the service traffic is directed to the SRv6 Policy tunnel for transmission;

[0141] Establish a correspondence between SliceID and each interface sub-link resource on the SRv6 Policy tunnel path;

[0142] A transceiver is used to receive and send data under the control of the processor.

[0143] During implementation, it further includes:

[0144] One or a combination of the following information is flooded and announced in the interior gateway protocol IGP: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0145] During implementation, it further includes:

[0146] The tunnel head node device obtains the SliceID from the BGP SRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

[0147] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, a sub-link resource that can meet the resource requirements of the SliceID is allocated from the idle sub-link resources of the corresponding physical output interface for forwarding according to the SliceID carried in the slice user forwarding message, and the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource are maintained.

[0148] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, when the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarded message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-Link Num status.

[0149] A network device, comprising:

[0150] A transmission module, used to guide the service traffic of the slice user to the SRv6Policy tunnel for transmission when providing services to the slice user;

[0151] The relationship module is used to establish the correspondence between SliceID and each interface sub-link resource on the SRv6 Policy tunnel path.

[0152] In implementation, the relationship module is further used to flood the internal gateway protocol IGP to announce one or a combination of the following information: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0153] During implementation, the relationship module is further used to enable the tunnel head node device to obtain the SliceID from the BGP SRv6Policy message sent by the SDN controller and write it into the corresponding position of the forwarding plane message.

[0154] During implementation, the transmission module is further used to guide slice user traffic to the SRv6 Policy tunnel for transmission. According to the SliceID carried in the slice user forwarding message, a sub-link resource that can meet the resource requirements of the SliceID is allocated from the idle sub-link resources of the corresponding physical output interface for forwarding, and the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource are maintained.

[0155] During implementation, the transmission module is further used to guide the slice user traffic to the SRv6 Policy tunnel for transmission. When the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarding message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: occupancy of the sub-link resource Sub-Link Num, the correspondence between SliceID and Sub-Link Num, and the Sub-Link Num status.

[0156] A computer-readable storage medium stores a computer program for executing the above transmission method.

[0157] The beneficial effects of the present invention are as follows:

[0158] The technical solution provided in the embodiment of the present invention is a resource-guaranteed bearer network slicing solution and mechanism based on FlexAlgo and SRv6. By extending the FlexAlgo technology and combining it with SRv6 tunnel encapsulation, the slice ID is carried on the forwarding plane, as well as the centralized control capability of SDN, to provide users with a dynamically adjustable sub-link-level resource-guaranteed data bearer network two-level slicing service. Among them, since the first-level slicing is implemented through the FlexAlgo technology, it can be used for slice isolation of different maintenance entities or allocation of different slices to different industries; since the second-level slicing uses the SRv6 tunnel technology, the slice ID is carried on the forwarding plane to implement the secondary user-level or service-level slicing within the first-level FA slice.

[0159] Since each slice can enjoy exclusive resources on the same physical link, compared with the existing FlexAlgo technology, it can solve the problem that each FlexAlgo slice can only enjoy one physical link, the isolation granularity is coarse, the existing network resources are basically unable to meet the needs, and it is impossible to deploy on a large scale to achieve hard isolation of slices.

[0160] Since it can provide underlying physical resource guarantees for slices and implement hard slicing, compared with existing SR-TE and SR Policy technologies, it can solve the problem of soft isolation only through tunnels and complete sharing of physical resources.

[0161] Since both the separate FA enhancement technology and the separate SRv6 Policy+forwarding plane slicing technology can only provide first-level slicing services, this solution provides a dynamically adjustable sub-link-level resource-guaranteed data bearer network two-level slicing service, which can meet the two-level slicing scenario requirements of industry or virtual operator slicing + user slicing. BRIEF DESCRIPTION OF THE DRAWINGS

[0162] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0163] Figure 1 It is a schematic diagram of the physical networking topology structure of the device in the background technology;

[0164] Figure 2 Schematic diagram of different FA slice topology structures in the background technology;

[0165] Figure 3 Schematic diagram of the implementation flow of the transmission method on the SDN controller side in an embodiment of the present invention;

[0166] Figure 4 This is a schematic diagram of the End.X SID sub-TLV structure after the Q-flag in an embodiment of the present invention;

[0167] Figure 5 This is a schematic diagram of the Sub-TLV structure of link slice information in an embodiment of the present invention;

[0168] Figure 6 Schematic diagram of the slice resource sub-sub-TLV structure in an embodiment of the present invention Figure 1 ;

[0169] Figure 7 Schematic diagram of the slice resource sub-sub-TLV structure in an embodiment of the present invention Figure 2 ;

[0170] Figure 8 Schematic diagram of ISIS SRv6 Capabilities sub-TLV structure expansion in an embodiment of the present invention;

[0171] Fig. 9 Schematic diagram of the extended structure of BGP-LS SRv6 Capabilities sub-TLV in an embodiment of the present invention;

[0172] Fig.10 This is a schematic diagram of the BGP SRv6 Policy extended SliceID structure in an embodiment of the present invention;

[0173] Fig.11 A schematic diagram of a network structure in an embodiment of the present invention;

[0174] Fig.12 This is a schematic diagram of allocation of End SID and End.X SID of each device in an embodiment of the present invention;

[0175] Fig.13 Schematic diagram of the topology of each FA slice in an embodiment of the present invention;

[0176] Fig.14 This is a schematic diagram of the SRv6 Policy tunnel forwarding process of a message of a power industry user 1 in an embodiment of the present invention;

[0177] Fig.15 This is a schematic diagram of the structure of a network device used as an SDN controller in an embodiment of the present invention;

[0178] Fig.16 It is a schematic diagram of the implementation flow of the transmission method on the forwarding device side in an embodiment of the present invention;

[0179] Fig.17 Schematic diagram of the structure of a network device used as a forwarding device in an embodiment of the present invention. DETAILED DESCRIPTION

[0180] The inventors noticed during the invention process that:

[0181] A slicing solution that can associate the underlying sub-link physical resources is needed to match the actual resource situation of the existing network, achieve exclusive use of the underlying physical resources at the granularity of each slice sub-link, and enhance the network value.

[0182] The specific implementation of the present invention will be described below in conjunction with the accompanying drawings.

[0183] In the description process, the implementation of the SDN controller and the forwarding device will be described respectively, and then an example of the coordinated implementation of the two will be given to better understand the implementation of the solution given in the embodiment of the present invention. This description does not mean that the two must be implemented in coordination or must be implemented separately. In fact, when the SDN controller and the forwarding device are implemented separately, they also solve the problems on their own side, and when the two are used in combination, better technical effects will be obtained.

[0184] Figure 3 The schematic diagram of the implementation process of the SDN controller side transmission method is shown in the figure, which may include:

[0185] Step 301: The SDN controller divides the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements;

[0186] Step 302: Establish a corresponding relationship between a slice identifier SliceID and a resource requirement;

[0187] Step 303: According to the resource requirements of the slice user, a one-to-one binding IPv6-based source routing technology policy SRv6 Policy tunnel is established for the user, and a corresponding relationship between the slice identifier SliceID and the SRv6Policy tunnel is established.

[0188] During implementation, it further includes:

[0189] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0190] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0191] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0192] During implementation, it further includes:

[0193] The purpose of establishing a correspondence between a slice identifier SliceID and an SRv6 Policy tunnel is to allocate a slice identifier SliceID that can meet the resource requirements of slice users to the SRv6 Policy tunnel.

[0194] The implementation on the forwarding device is described below.

[0195] Fig.16 The schematic diagram of the implementation flow of the transmission method on the forwarding device side is shown in the figure, which may include:

[0196] Step 1601: When providing services to the slice user, the forwarding device guides the service traffic to the SRv6Policy tunnel for transmission;

[0197] Step 1602: Establish a correspondence between SliceID and each interface sub-link resource on the SRv6 Policy tunnel path.

[0198] During implementation, it further includes:

[0199] One or a combination of the following information is flooded and announced in the interior gateway protocol IGP: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0200] During implementation, it further includes:

[0201] The tunnel head node device obtains the SliceID from the BGP SRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

[0202] During implementation, when the forwarding device guides slice user traffic to the SRv6 Policy tunnel for transmission, it allocates a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface for forwarding based on the SliceID carried in the slice user forwarding message, and maintains the correspondence between the SliceID and the sub-link resource and the status of the sub-link resource.

[0203] During implementation, when the forwarding device guides the slice user traffic to the SRv6 Policy tunnel for transmission, when the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarding message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-Link Num status.

[0204] The following mainly focuses on the SDN controller and combines it with the forwarding device to facilitate understanding of the relationship between the two.

[0205] In implementation, the FA slice is to divide the network into a corresponding number of FA slices based on FlexAlgo in a one-to-one correspondence according to the number of industries or virtual operators;

[0206] The SDN controller determines the FlexAlgo-based FA slice to which the slice user belongs based on the industry or virtual operator to which the slice user belongs.

[0207] That is, according to the number of industries or virtual operators, the network is divided into a corresponding number of FlexAlgo-based FA slices in advance, that is, there is a one-to-one correspondence between industries or virtual operators and FlexAlgo-based FA slices, which can be configured in advance. The controller determines the FlexAlgo-based FA slice to which the slice user belongs based on the industry or virtual operator to which the slice user belongs.

[0208] Specifically, the solution is a resource-guaranteed bearer network slicing solution and mechanism based on FlexAlgo and SRv6. By extending the existing FlexAlgo technology, combined with SRv6 tunnel encapsulation, carrying the slice ID on the forwarding plane and the centralized control capability of SDN (Software Defined Network), it provides users with a dynamically adjustable sub-link-level resource-guaranteed data bearer network two-level slicing service.

[0209] Among them, the first-level slicing is implemented through FlexAlgo technology, which can be used to isolate slices of different maintenance entities or allocate different slices to different industries; the second-level slicing uses SRv6 tunnel technology to carry the slice ID on the forwarding plane to realize the secondary user-level or service-level slicing within the first-level FA slice.

[0210] During implementation, the correspondence between the SliceID in the FlexAlgo-based FA slice to which the slice user belongs and the SRv6Policy tunnel is established, which is to establish the correspondence between the SliceID in the FA slice and the sub-link resources of each interface on the SRv6 Policy tunnel path.

[0211] The following mainly uses SliceID and Sub-Link Num as examples for explanation.

[0212] (1) SDN controller resource management mechanism.

[0213] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0214] The SDN controller allocates forwarding plane SliceID resources and corresponding bandwidth information to each user according to the needs of slice users in the FA slice topology, and the unallocated SliceID is temporarily reserved.

[0215] Specifically, the End.X SID allocation of virtual member sub-links within the FA slice topology, the total resource reservation mechanism and method, and the implementation of the forwarding plane SliceID quantity allocation rule within the FA slice topology will be explained below.

[0216] The SDN controller maintains and / or updates the following information:

[0217] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0218] Specifically, the following will explain the maintenance of the correspondence between the FA slice SliceID, the virtual member sub-link End.XSID and its total reserved resources, and the number of SliceIDs on the controller, as well as the maintenance and update of information such as the resource requirements and status of each SliceID, and the total remaining slice resources of the virtual member sub-link.

[0219] 1) End.X SID allocation and slice resource reservation of the virtual member sub-link of the FA level 1 slice.

[0220] First, a different Locator (locator) space needs to be allocated for each FA slice. Then, according to the topological requirements of the first-level FA slice, the controller allocates different End SIDs (end point SIDs) to each node in the FA slice topology in the Locator space, and allocates different End.X SIDs to each virtual member sub-link. At the same time, according to the bandwidth requirements of the first-level FA slice, the corresponding bandwidth resources are reserved for each FA slice topology. The End SID, End.X SID and the required reserved bandwidth information are sent to the corresponding device in the network. The device executes the corresponding configuration and saves the corresponding relationship between End.X SID and the reserved bandwidth. The specific details can be shown in the following table:

[0221] Table 1: Virtual member sub-link adjacency SID dynamic resource allocation table

[0222] FA slice ID End.X SID Reserved total bandwidth (G) 128 X1:1::1 (address space belonging to FA118) 5G 129 X2:1::1 (address space belonging to FA129) 10G 130 X3:1::1 (address space belonging to FA130) 15G

[0223] The above information can also be configured directly on the device and reported to the controller through BGP-LS (BGP link state, BGP-LinkState; BGP: Border Gateway Protocol, Border Gateway Protocol) so that the information of both parties is consistent.

[0224] If a 400G physical link pre-allocates 40 first-level FA slices, and each FA slice occupies 5G bandwidth, it means that 200G bandwidth is reserved for the FA slice topology, and only the remaining 200G bandwidth can be shared with non-slice users.

[0225] 2) Allocation of the number of forwarding plane SliceIDs within the FA slice topology.

[0226] The following describes the value allocation of SliceID of the secondary slice user forwarding plane, the corresponding resource allocation and the operating mechanism and solution of state maintenance.

[0227] A fixed number of SliceIDs are allocated to each FA slice; or, a certain number of SliceIDs are allocated to each FA slice and sent to the device.

[0228] Static allocation method: A fixed number of SliceIDs are allocated to each FA slice, such as 500. The forwarding plane SliceIDs reserved for the FA128 slice topology are 1 to 500, and the forwarding plane SliceIDs reserved for the FA129 slice topology are 501 to 1000. And so on. The forwarding plane SliceIDs reserved for the FAn slice topology are [(n-128)*500+1] to [(n-128)*500+500].

[0229] Dynamic allocation method: A certain number of SliceIDs are allocated to each FA slice and sent to the device. The SliceID information is flooded in the IGP and notified to each device.

[0230] 3) Allocation and status maintenance of the forwarding plane SliceID corresponding to the secondary slice user.

[0231] The controller allocates forwarding plane SliceID resources and corresponding bandwidth information to each user according to the needs of slice users in the FA slice topology, and temporarily reserves the unallocated SliceID;

[0232] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0233] Specifically, the controller allocates forwarding plane SliceID resources and corresponding bandwidth information to each user according to the needs of the secondary slice users in the primary FA slice topology, and temporarily reserves the unallocated SliceIDs. The details can be shown in the following table.

[0234] Table 2: Resource demand allocation table corresponding to forwarding plane SliceID

[0235]

[0236] The SliceIDs in the above table that have not yet been allocated bandwidth requirements can be updated at any time according to the bandwidth requirements of the subsequent newly added slice users. The controller is responsible for maintaining the dynamic update table and synchronously sending the above information to the device for storage. Among them, the status of SliceID includes idle, pre-occupied, occupied, unallocated, etc.

[0237] If the head node needs to be used for path calculation, each SliceID and the corresponding bandwidth resource information needs to be expanded through ISIS (Intermediate System to Intermediate System) and flooded in the IGP; if the controller is used for path calculation, no flooding is required.

[0238] 4) Sub-Link Num corresponds to resource allocation and status maintenance.

[0239] When the slice user traffic in the FA slice of FlexAlgo is directed to the SRv6 Policy tunnel for transmission, the forwarding device allocates a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface for forwarding based on the SliceID carried in the slice user forwarding message, and maintains the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource.

[0240] The following will describe a method in which the forwarding device allocates a sub-link resource (such as MTN (Metro transport network) sub-interface, VLAN (Virtual Local Area Network) enhanced sub-interface, channelized sub-interface resources, FlexE sub-interface, independent QoS (Quality of Service) queue, etc.) that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical output interface according to the SliceID carried in the slice user forwarding message; the correspondence between SliceID and sub-link resources and the dynamic maintenance mechanism and method of the status of sub-link resources are explained.

[0241] When the slice user traffic within the FA slice of FlexAlgo is guided to the SRv6 Policy tunnel for transmission, the Sub-Link Num is used to identify the underlying physical sub-link resources. Each sub-link has its own exclusive underlying physical resources. By saving and maintaining the correspondence between the Sub-Link Num and the IDs of various types of sub-link resources, various types of underlying physical sub-link resources are compatible.

[0242] Specifically, Sub-Link Num is introduced to uniformly identify the underlying physical sub-link resources. Each sub-link has its own exclusive underlying physical resources, such as MTN sub-interface, VLAN enhanced sub-interface, channelized sub-interface resources, FlexE sub-interface, independent QoS queue, etc. By saving and maintaining the correspondence between Sub-Link Num and the above-mentioned types of sub-link resource IDs, various types of underlying physical sub-link resources can be compatible.

[0243] Specifically, according to the needs of secondary slice users, the controller divides each physical link of all devices in the corresponding first-level FA slice topology into multiple isolated sub-links. Each sub-link has its own exclusive underlying physical resources, such as MTN sub-interface, VLAN enhanced sub-interface, Channel channelized sub-interface resources, FlexE sub-interface, independent QoS queue, etc., and is identified by Sub-Link Num. The sub-link identifier is 4 bytes long, of which the low bit represents the sub-link resource ID, such as MTNID, VLANID, ChannelID, FlexEID, QoSQueID. If the sub-link resource ID is less than 32 bits, the high bit is filled with 0.

[0244] During implementation, the value space of the sub-link resource identifier is divided to distinguish the sub-link resource identifiers used by the FA slice and the user slice.

[0245] User slices, also called forwarding plane slices, are slices of SRv6 tunnels that are established based on SliceID and associated with underlying sub-link resources.

[0246] In a specific implementation, when dividing the value space of the sub-link resource identifier, the sub-link resource corresponding to the Sub-Link Num whose upper 4 bits are 1 is allocated to the FA slice, and the remaining Sub-Link Num value space is allocated to the user slice.

[0247] For example, the sub-link resources corresponding to the Sub-Link Num whose upper 4 bits are 1 are allocated to the FA level 1 slice.

[0248] Taking the case where the sub-link resource is a channelized sub-interface as an example, the example may be as follows (for simplicity, each number in the following table represents an 8-bit decimal value):

[0249] Table 3: Sub-link physical resource allocation table

[0250]

[0251]

[0252] In specific implementation, 100M\200M\500M sub-link resources (the total amount cannot exceed the total bandwidth of the corresponding FA first-level slice) that are a certain percentage more than the actual second-level slice user demand can be pre-allocated on the device in advance, so that when new users come, the underlying sub-link resources are already available and the service can be quickly opened.

[0253] 1. In order to be compatible with various types of underlying resources, a sub-link identifier is introduced: Sub-Link Num. Sub-Link Num may not be required, and Channel ID may be used directly to identify a specific sub-link.

[0254] 2. You can also configure other physical resources besides Bandwidth for MTN sub-interface / VLAN enhanced sub-interface / Channel channelized sub-interface resources / FlexE sub-interface / independent QoS queue. Only bandwidth resources are used as an example here.

[0255] The controller sends the configuration of the above correspondence to each device in the network, and the device executes the relevant configuration locally and stores the above correspondence.

[0256] The controller is responsible for maintaining the status of each Sub-Link Num on the link, such as idle, pre-occupied, occupied, etc., and updates its status in real time according to the occupancy of the sub-link resource Sub-Link Num reported by the device through Telemetry.

[0257] (2) IGP floods the link information related to the slice.

[0258] One or a combination of the following information is announced in IGP flooding: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0259] The following will describe a method for IGP flooding to announce the End.X SID, the total reserved bandwidth, the number of SliceIDs, and the resource information corresponding to each SliceID of each FA slice virtual member sub-link on the link.

[0260] IGP floods the link information related to the slice, announcing the End.X of each FA slice on the link, the total reserved bandwidth, the number of SliceIDs, and the resource information corresponding to each SliceID.

[0261] 1) End.X SID information notification of the virtual member sub-link of the FA slice.

[0262] In implementation, a flag is added to the End.X SID sub-TLV structure to indicate that the device is the adjacent SID of the virtual member sub-link, rather than the adjacent SID of the physical link.

[0263] Specifically, the End.X SID sub-TLV (end segment identifier sub-TLV; TLV: type, length, value, Tag, Length, Value) structure is extended to add a flag to indicate that it is the adjacency SID of the virtual member sub-link rather than the adjacency SID of the physical link.

[0264] Figure 4The End.X SID sub-TLV structure diagram after the Q-flag. As shown in the figure, the Algorithm field corresponding to the End.X SID sub-TLV of each virtual member sub-link (see Figure 4 ) is consistent with the FA algorithm (Flexible Algorithm) used by the FA slice to which it belongs. A Q-flag is added to indicate that the adjacent SID is a virtual member sublink of a slice. After the Q-flag is extended, the End.X SID sub-TLV structure is as follows: Figure 4 shown.

[0265] An SRv6 node advertises multiple virtual member sub-link End.X SIDs by carrying multiple SRv6 End.X SID sub-TLVs in the same adjacency TLV.

[0266] 2) Link slice information notification: FA's SliceID (slice identifier) ​​and corresponding resource information notification.

[0267] The link slice information Sub-TLV and slice resource Sub-sub-TLV structures are used to announce the number of link slices and corresponding resource information.

[0268] Specifically, the newly defined link slice information Sub-TLV and slice resource Sub-sub-TLV (sub-sub-TLV) structure is used to announce the number of link slices and corresponding resource information.

[0269] The total reserved bandwidth resources of FA, the number of SliceIDs, and the slice resource information corresponding to each SliceID can be announced through the sub-TLV of GENINFO TLV (basic information TLV) in RFC6823. When the original system slice is full, the slice resource information of the interface can continue to be announced in the extended slice.

[0270] Figure 5 Schematic diagram of the link slice information Sub-TLV structure, the newly defined link slice information sub-TLV Figure 5 As shown, where:

[0271] Type (8bit): TBD (to be decided) pending application;

[0272] Length (8 bits): message length, excluding Type and Length;

[0273] Flags (8bit): flags;

[0274] Ibit: When set, it indicates that the link identification information is a 4-byte IPv4 (Internet Protocol Version 4) interface address;

[0275] Vbit: When set, it indicates that the link identifier is a 16-byte IPv6 (Internet Protocol Version 6) interface address;

[0276] Lbit: When set, it indicates that the link identification information is a 4-byte local link identification;

[0277] Xbit: When set, it indicates that the sublink identification information is the 16-byte End.X SID;

[0278] Bandwidth (8bit): total bandwidth of the slice;

[0279] Sub-Link Local Identifier (128bit): sub-link identifier;

[0280] SliceIDCount(8bit): number of slice IDs;

[0281] FirstSliceID (24bit): slice ID starting value;

[0282] Sub-sub-TLVs: Slice resource sub-sub-TLV, used to announce the resource information of each SliceID.

[0283] Figure 6 Schematic diagram of the sub-sub-TLV structure of slice resources Figure 1 As shown in the figure, the newly defined slice resource sub-sub-TLV is used to notify the resource information of SliceID. The structure is as follows:

[0284] Type (8bit): TBD, pending application;

[0285] Length (8 bits): message length;

[0286] Flags (8bit): reserved;

[0287] Reserved (16bit): reserved;

[0288] SliceID (24bit): slice ID value;

[0289] Optional Sub-sub-sub-TLVs: Carry the slice resource information corresponding to the SliceID (maximum reserved link bandwidth, available bandwidth, used bandwidth, latency, link packet loss rate, etc.), and can reuse the existing sub-TLV defined in RFC8570, as shown below:

[0290] Type Description 33 Unidirectional Link Delay 34 Min / Max Unidirectional Link Delay 35 Unidirectional Delay Variation 36 Unidirectional Link Loss 37 Unidirectional Residual Bandwidth 38 Unidirectional Available Bandwidth 39 Unidirectional Utilized Bandwidth

[0291] Figure 7 Schematic diagram of the sub-sub-TLV structure of slice resources Figure 2 Optional Sub-sub-sub-TLVs can also be filled directly with Bandwidth / Delay / ... The structural diagram is as follows Figure 7 As shown:

[0292] (3) Device slicing capability notification.

[0293] Add an identifier to the SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the SRv6Capability TLV of BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0294] Specifically, the SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the SRv6 Capability TLV of BGP-LS are extended to add a flag to indicate that the device supports the forwarding plane slicing processing capability.

[0295] An identifier is added to the FADF (Flexible Algorithm Definition Flags) sub-TLV of the FAD (Flexible Algorithm Definition) TLV of the BGP-LS Node NLRI (Node NLRI; NLRI: Network Layer Reachability Information) to indicate that the calculation is performed based on the virtual member sub-link information of the interface during path calculation.

[0296] Specifically, the FADF sub-TLV of the FAD TLV of the BGP-LS Node NLRI is extended, and a flag is added to indicate that the calculation is performed based on the virtual member sub-link information of the interface during path calculation.

[0297] 1) The SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV is extended to add a Q-flag to indicate that the device supports the forwarding plane slice processing capability. Figure 8 The following is a schematic diagram of the ISIS SRv6Capabilities sub-TLV structure expansion. Figure 8 shown.

[0298] 2) Expand the SRv6 Capability TLV of BGP-LS and add a Q-flag to notify the node that it has the forwarding plane slice processing capability. Fig. 9 The following is a schematic diagram of the extended structure of BGP-LS SRv6 Capabilities sub-TLV. Fig. 9 shown.

[0299] (5) Extend the BGP SRv6 Policy to carry the forwarding plane SliceID information.

[0300] The BGP SRv6 Policy message carries the SliceID information of the forwarding plane.

[0301] Specifically, the BGP SRv6 Policy structure is extended to carry the forwarding plane SliceID information.

[0302] Fig.10 The diagram of the extended SliceID structure of BGP SRv6 Policy is shown below. BGP SRv6 Policy is extended to add SliceID (shaded part). The format after extension is as follows: Fig.10 shown.

[0303] (6) Dynamic maintenance of the correspondence between the slice user forwarding plane SliceID and Sub-Link Num (sub-link identifier).

[0304] The following describes the mechanism and method for the forwarding device to synchronize the corresponding relationship between SliceID and Sub-Link Num and the occupancy status of the sub-link resource Sub-Link Num to the controller in real time through Telemetry.

[0305] When the slice user traffic in the FA slice of FlexAlgo is guided to the SRv6 Policy tunnel for transmission, when the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required by the SliceID according to the SliceID carried in the forwarded message, finds the unoccupied bandwidth sub-link resource Sub-LinkNum from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the controller through Telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-LinkNum status.

[0306] Specifically, when the first slice message arrives at the device, the device checks the local table to obtain the bandwidth resources required by SliceID according to the SliceID carried in the forwarded message, such as 100M, and then finds the unoccupied 100M sub-link resource Sub-Link Num from the local device sub-link resource table, assigns it to the SliceID, and forwards the slice user message from the corresponding sub-port, such as the information sub-interface, and updates the local sub-link resource Sub-Link Num status to occupied, and reports the updated sub-link resource Sub-Link Num occupancy status to the controller in real time through Telemetry. Table 4 is a table of the correspondence between SliceID and Sub-Link Num, and the specific relationship can be shown in the table.

[0307] Table 4: SliceID and Sub-Link Num correspondence table

[0308] SliceID Sub-Link Num 1 0001 2 0002 501 0003 502 0004 1001 0005 …… ……

[0309] (7) The color contained in the EAG (Extended Administrative Group) sub-TLV of each adjacency TLV corresponding to each physical link on the node must at least contain the color required to be included in the path calculation constraint of the FA slice to which each sub-link belongs.

[0310] (8) Slice topology generation.

[0311] The controller will know the FA slice to which the device belongs based on the FAD sub-TLV information reported by each forwarding device through BGP-LS; the FA slice to which the device belongs is known based on the color contained in the EAG sub-TLV of the adjacent TLV corresponding to each physical link combined with the FA path calculation constraint; based on the Q-flag setting of the FADF sub-TLV, it is known that when calculating the path, the device needs to calculate the path based on the virtual member sub-link, and then further based on the Algorithm of the virtual member sub-link End.X SID, the FA slice information to which the virtual sub-link corresponding to each physical link belongs is known, thereby forming different FA slice topologies on the controller.

[0312] (9) The forwarded message carries SliceID.

[0313] Method 1: The tunnel head node device obtains the SliceID from the BGP SRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

[0314] Specifically, the tunnel head node obtains the SliceID from the BGP SRv6 Policy message sent by the controller and writes it to the corresponding position of the forwarding plane message.

[0315] The controller combines the SliceID with the CadidatePath path (see the extended structure for details). Fig.10 ) is sent to the SRv6 tunnel head node through the BGP SRv6Policy protocol. When the head node device performs SRv6 tunnel encapsulation, it carries SliceID information in the forwarding message.

[0316] Method 2: Configure the mapping relationship between the color template and the forwarding plane SliceID. The tunnel head node device obtains the corresponding SliceID based on the Color attribute of SRv6Policy.

[0317] Specifically, a mapping relationship between the color template and the forwarding plane SliceID is configured. The head node device obtains the corresponding SliceID according to the Color attribute of the SRv6Policy and carries the SliceID information in the forwarding message.

[0318] Among them: SliceID information can be placed in the source address, FlowLabel (flow label) or HBH (Hop By Hop) field of the forwarded message; by using a flag bit in the TrafficClass (transmission class) field, it is indicated that the message carries SliceID information.

[0319] (10) Controller routing and forwarding device operation mechanism.

[0320] The controller performs path calculation based on the SliceID information, the FA topology, and the remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and uses the virtual member sub-link End.X SID for path orchestration.

[0321] The following describes a processing mechanism and method for the controller to perform path calculation based on SliceID information, FA topology and the remaining slice resources of its corresponding virtual member sub-link End.X, and use the virtual member sub-link End.X SID to perform path orchestration.

[0322] During implementation, in each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to user slices are reserved for sharing by non-slice users in the FA slice topology, and the traffic of non-slice users is carried through SRv6 BE.

[0323] Specifically, in each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to the secondary user slice are reserved for sharing by non-slice users in the FA topology, and the traffic of non-slice users is carried by SRv6 BE.

[0324] In each FA slice topology, the traffic of secondary slice users is carried through the SRv6 Policy tunnel, and its path is calculated by the controller or tunnel head node. Since only the SRv6 Policy strict path can provide slice users with exclusive slice services with strict physical resource guarantees for each hop from end to end, SRv6 Policy tunnels refer to SRv6 Policy strict paths.

[0325] According to the SLA requirements of bandwidth, latency, etc. proposed by the secondary slice user, the controller selects a SliceID with a status of "unassigned" (assuming it is x) from "Table 2: Resource requirement allocation table corresponding to forwarding plane SliceID", updates its "required bandwidth" information, and updates its status to "idle". At the same time, it creates a VPN for it and uses the tunnel strategy in binding mode to bind the SRv6 Policy tunnel one-to-one. In the primary FA slice topology where the secondary slice user is located (such as using FA as a path calculation factor), the user's SLA requirements (bandwidth, latency, etc.) are used as path calculation constraints to calculate the SRv6 Policy primary and backup CadidatePath (CP for short).

[0326] When calculating the path, the controller needs to combine the resource status of the virtual member sub-link End.X corresponding to its first-level FA topology (such as whether there are sufficient remaining slice bandwidth resources, whether the latency meets user requirements, etc.), and calculate an end-to-end primary and backup CP that meets the SLA requirements of the second-level slice users. There is only one segmentlist in each CP, and the path of each segmentlist is arranged using the End.X SID of the Locator space corresponding to the FA slice; at the same time, the status of SliceID(x) in "Table 2: Resource Demand Allocation Table Corresponding to Forwarding Plane SliceID" is updated to pre-occupied, and the SliceID(x) is sent to the head node forwarding device together with the primary and backup CP of the BGPSRv6 Policy.

[0327] After the SRv6 Policy is successfully delivered, the controller updates the real-time status of the SliceID(x) to occupied.

[0328] In implementation, when the slice user traffic within the FA slice of FlexAlgo is directed to the SRv6 Policy tunnel for transmission, the forwarding device determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag set in the virtual member sub-link End.X SID when forwarding the message, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0329] The following describes a processing mechanism and method in which, when forwarding a message, the forwarding device further determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag in the virtual member sub-link End.X SID, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0330] On the forwarding device, according to the SRv6 Policy path sent by the controller, the message is forwarded along the specified path. After determining the outbound interface, each device along the way knows the bandwidth resource requirements of the slice user according to the SliceID carried in the forwarded message, and allocates a Sub-Link Num that can meet the SliceID bandwidth requirement from the idle sub-link resources Sub-Link Num of the corresponding outbound interface. The forwarding device searches the locally stored "Table 3: Sub-link physical resource allocation table" according to the Sub-Link Num to determine the corresponding sub-link resource ID (such as ChannelID, etc.), and forwards the message through the sub-interface (such as the channelized sub-interface), thereby ensuring that the service traffic has exclusive channelized sub-interface physical resources; at the same time, the status of the Sub-LinkNum is updated to occupied, and the local "Table 4: SliceID and Sub-Link Num correspondence table" is updated, and the above information is reported to the controller through Telemetry.

[0331] When guiding the slice user traffic within the FA slice of FlexAlgo to the SRv6 Policy tunnel for transmission, the controller updates one or a combination of the following information based on the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the sub-link resource Sub-Link Num status, and the remaining slice resource information of the virtual member sub-link.

[0332] The following describes the mechanism and method by which the controller dynamically updates and maintains information such as the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resources of the virtual member sub-link based on the above information reported by the device.

[0333] After receiving the allocation information of Sub-Link Num reported by the forwarding device through Telemetry, the controller saves the corresponding relationship and updates the remaining slice bandwidth resource information of each virtual member sub-link End.X SID in the FA topology (such as: total reserved bandwidth - allocated Sub-Link Num bandwidth).

[0334] When both the primary and backup CP paths of a slice user fail, the BE escape path is taken. The escape path occupies resources of non-slice users in the FA slice topology.

[0335] The following is an example to illustrate.

[0336] (1) Network description.

[0337] Assume that there are devices A, B, C, D, E, F, G, and H in the network. They run the ISIS dynamic routing protocol and are in the same ISIS domain. All devices support the FA function and set the Q-flag of the FADF sub-sub-TLV they advertise to the outside.

[0338] A BGP-LS connection is established between the SDN controller and the forwarding device.

[0339] Fig.11 This is a schematic diagram of the network structure. The topology is as follows: Fig.11 shown.

[0340] (2) Slicing requirements.

[0341] Assume that there are currently three industry slicing requirements, with bandwidth requirements of 5G, 10G, and 15G respectively. The secondary user slicing requirements in each industry are shown in the table.

[0342]

[0343] (3) SRv6 address allocation

[0344] The network is divided into three FlexAlgo slices for the three industries. Each FA slice is assigned a different Locator space. In each address space, End SID (Q-flag set) and virtual member sub-link End.X SID (Q-flag set) are assigned to the devices and links contained in this FA slice. Fig.12 The diagram for allocating End SID and End.X SID to each device is as follows: Fig.12 shown.

[0345] The affinity attribute of each link in the network must at least include the affinity (color attribute) required by the path calculation constraint of the FA slice to which it belongs. The specific settings are as follows:

[0346] Link (bidirectional) Affinity attributes AB, AF, BC, FG, GH, HE, CG 0x00000111 (green, yellow, blue) CD,DE 0x00000101 (green, blue) BF 0x00000110 (green, yellow) DH 0x00000100 (green)

[0347] Fig.13 The topology diagram of each FA slice is shown below. Based on the above basic configuration, the SDN controller can form the following Fig.13 The 3 FA slice topologies are shown.

[0348] (4) FA level 1 slice resource reservation.

[0349] The controller reserves corresponding bandwidth resources for the corresponding virtual member sub-link End.X SID of each port of each device in each FA slice topology according to the bandwidth requirements of the first-level FA slice.

[0350] Taking a port of device A as an example, the total bandwidth reserved for virtual member sub-links is shown in the following table. The same applies to other devices.

[0351]

[0352] (5) Allocation of the number of forwarding plane SliceIDs within the FA slice topology.

[0353] A certain number of SliceIDs are allocated to each FA slice on the controller and sent to the device. For example, the forwarding plane SliceID reserved for the FA128 slice topology is 1 to 200 (i.e., FirstSliceID=1, SliceIDCount=200), the forwarding plane SliceID reserved for the FA129 slice topology is 201 to 600 (i.e., FirstSliceID=201, SliceIDCount=400), and the forwarding plane SliceID reserved for the FA130 slice topology is 601 to 1200 (i.e., FirstSliceID=601, SliceIDCount=600).

[0354] The SliceID information is flooded in the IGP and notified to each device.

[0355] (6) Forwarding plane SliceID allocation corresponding to secondary slice users

[0356] The controller allocates forwarding plane SliceID resources and corresponding bandwidth information to each user based on the needs of the secondary slice users in the primary FA slice topology, and temporarily reserves the unallocated SliceIDs.

[0357] Table 5: Resource requirement allocation table corresponding to forwarding plane SliceID

[0358]

[0359] The controller maintains the dynamic update table and sends the updated status to the device for storage at any time.

[0360] The device floods the link slice information in the IGP.

[0361] (5) Sub-Link Num corresponds to resource allocation and status maintenance.

[0362] According to the needs of the secondary slice users, the controller divides each physical link of all devices in the corresponding first-level FA slice topology into multiple isolated sub-links. Each sub-link has its own exclusive underlying physical resources and is identified by Sub-Link Num.

[0363] Configure the physical resources corresponding to the Sub-Link Num of each port of the device. Taking device A and Channel sub-interface resources as an example, the physical resource allocation of a port sub-link on device A is shown in the following table. Other devices are similar:

[0364]

[0365]

[0366] The Sub-Link Num and the corresponding physical resources pre-allocated on the device need to be a certain proportion more than the actual needs of the secondary slice users (for example, a certain number of 100M\200M\500M channelized sub-interface resources are reserved respectively, but the total amount cannot exceed the total bandwidth of the corresponding FA primary slice), so that when new users come, the sub-interfaces of the underlying link are already available and the service can be quickly opened.

[0367] The controller sends the configuration of the above correspondence to each device in the network, and the device executes the relevant configuration locally and stores the above correspondence.

[0368] (6)SRv6-Policy path calculation and message forwarding process.

[0369] Taking the slice resource activation of user 1 in the power industry as an example, the user needs a 200M bandwidth resource from node A to node E.

[0370] The Prefix-SID allocated to users in the power industry is in the Locator address space corresponding to FA130.

[0371] The controller creates a VPN for it that includes nodes A and E, uses the tunnel policy in binding mode to bind the SRv6 Policy tunnel one-to-one, and enables HSB configuration for the SRv6 Policy.

[0372] The controller calculates a primary and backup CP of SRv6Policy from A to E in the FA130 topology to meet the bandwidth requirement of 200M.

[0373] Taking node A as an example, when calculating the path, the controller checks the remaining resources of the X3:1:: and X3:3:: virtual member sub-links corresponding to the FA130 slice. Currently, the bandwidth of SliceID 601 meets the requirements and is idle. The controller performs the same operation on each device in the FA130 topology and arranges the calculated segmentlist paths of the primary and backup CPs using the End.X SID of the Locator space corresponding to the FA slice.

[0374] The calculated active and standby CP paths from A to E are as follows:

[0375] Main CP:<X3:1::100,X3:2::100,X3:3::100,X3:4::100> , SliceID=601

[0376] Backup CP:<X3:5::100,X3:6::100,X3:7::100,X3:8::100> , SliceID=601

[0377] The controller updates the status of SliceID 601 of each link in the FA130 topology to pre-occupancy, and sends the SliceID 601 along with the primary and backup CP paths to the head node A device through the BGP SRv6 Policy protocol.

[0378] Fig.14 Figure 1 is a schematic diagram of the SRv6 Policy tunnel forwarding process for power industry user 1. When the power industry user 1 message reaches the ingress node A device, the message forwarding process is as follows: Fig.14 shown.

[0379] Device A iterates the message to the SRv6 Policy tunnel (tunnel endpoint is E3:1:100) of slice FA130 according to the VPN routing policy, and then encapsulates the outer IPv6 message header of the SRv6 Policy tunnel. The segmentlist of its SRH is<X3:1::100,X3:2::100,X3:3::100,X3:4::100,E3:1::B100> (where E3:1::B100 is the VPN SID corresponding to the traffic), the current SL pointer points to X3:1::100; and according to the SliceID corresponding to the tunnel, the SliceID value 601 is written into the corresponding position of the forwarding message (such as: placed in FlowLable, HBH, source address, etc., and indicated by a flag bit of TrafficClass).

[0380] Device A searches the local table based on X3:1::100 in the DA field and learns that the outbound interface of the message is GE0 / 1 / 0. Based on the indication of the Q-flag setting of X3:1::100, it knows that it needs to further determine the underlying Sub-Link Num resource based on SliceID. Therefore, it allocates a Sub-Link Num 0004 that can meet the 200M bandwidth requirement of SliceID 601 from the idle sub-link resource Sub-Link Num of the corresponding outbound interface, and saves the corresponding relationship locally.

[0381] SliceID Sub-Link Num 601 0004

[0382] Device A updates the status of Sub-Link Num 0004 to occupied and reports the updated information to the controller via Telemetry. The bold text in the table indicates "occupied".

[0383]

[0384]

[0385] The device determines the corresponding information sub-interface of ChannelID 004 according to Sub-Link Num 0004, and forwards the message through the channelized sub-interface 004, thereby ensuring that the service traffic of user 1 has exclusive channelized sub-interface physical resources.

[0386] Subsequent devices in the path perform the same table lookup forwarding, update Sub-Link Num status and report to the controller until the message reaches the tunnel tail node E. This ensures that the traffic of power industry user 1 can obtain the physical resource guarantee of 200M channelized sub-interface on each link of the forwarding path.

[0387] Based on the same inventive concept, an SDN controller and a computer-readable storage medium are also provided in an embodiment of the present invention. Since the principles of solving the problem by these devices are similar to those of the transmission method, the implementation of these devices can refer to the implementation of the method, and the repeated parts will not be repeated.

[0388] When implementing the technical solution provided by the embodiment of the present invention, it can be implemented as follows.

[0389] Fig.15 The schematic diagram of the network device structure as an SDN controller is shown in the figure. As shown in the figure, the SDN controller includes:

[0390] The processor 1500 is used to read the program in the memory 1520 and execute the following process:

[0391] According to the resource requirements of slice users, the link corresponding to each network device interface is divided into multiple sub-link resources;

[0392] Establish the corresponding relationship between slice ID SliceID and resource requirements;

[0393] According to the resource requirements of the slice user, a one-to-one binding SRv6 Policy tunnel based on IPv6 source routing technology strategy is established for the user, and a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established;

[0394] The transceiver 1510 is configured to receive and send data under the control of the processor 1500 .

[0395] During implementation, it further includes:

[0396] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0397] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0398] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0399] During implementation, it further includes:

[0400] The purpose of establishing a correspondence between a slice identifier SliceID and an SRv6 Policy tunnel is to allocate a slice identifier SliceID that can meet the resource requirements of slice users to the SRv6 Policy tunnel.

[0401] During implementation, it further includes:

[0402] The sub-link identifier Sub-Link Num is used to identify the sub-link resource. Each sub-link has its own underlying physical resource. By preserving and maintaining the correspondence between Sub-Link Num and each type of sub-link resource ID, it is compatible with various types of underlying physical sub-link resources.

[0403] During implementation, it further includes:

[0404] An identifier is added to the IPv6-based source routing technology capability subtype, length, value SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the Border Gateway Protocol link type BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0405] During implementation, it further includes:

[0406] An identifier is added to the End.X SID sub-TLV structure of the end segment identifier subtype, length, and value to indicate that the device is the adjacent SID of the virtual member sublink rather than the adjacent SID of the physical link.

[0407] During implementation, it further includes:

[0408] The link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure are used to announce the number of link slices and corresponding resource information.

[0409] In the implementation, one or a combination of the following processes is further included:

[0410] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0411] According to the needs of slice users in the FA slice topology, forwarding plane SliceID resources are allocated to each user, and a corresponding relationship between SliceID and the resource needs of each slice user is established. Unallocated SliceIDs are temporarily reserved and have no resource requirements;

[0412] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0413] During implementation, it further includes:

[0414] Maintain and / or update the following information:

[0415] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0416] During implementation, it further includes:

[0417] The BGP SRv6 Policy message carries the SliceID information of the forwarding plane.

[0418] During implementation, it further includes:

[0419] Configure the mapping relationship between the color template and the forwarding plane SliceID so that the tunnel head node device obtains the corresponding SliceID based on the Color attribute of SRv6Policy.

[0420] During implementation, it further includes:

[0421] Path calculation is performed based on SliceID information, FA topology, and remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and path arrangement is performed using the virtual member sub-link End.X SID.

[0422] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the forwarding device determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag set in the virtual member sub-link End.X SID when forwarding the message, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0423] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the SDN controller updates one or a combination of the following information based on the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resource information of the virtual member sub-link.

[0424] During implementation, it further includes:

[0425] The value space of the sub-link resource identifier is divided to distinguish the sub-link resource identifiers used by the FA slice and the user slice.

[0426] During implementation, when dividing the value space of the sub-link resource identifier, the sub-link resource corresponding to the Sub-Link Num with the upper 4 bits being 1 is allocated to the FA slice, and the remaining Sub-Link Num value space is allocated to the user slice.

[0427] During implementation, it further includes:

[0428] In each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to user slices are reserved for sharing by non-slice users in the FA slice topology. The traffic of non-slice users is carried by SRv6 BE.

[0429] In implementation, the FA slice is to divide the network into a corresponding number of FA slices based on FlexAlgo in a one-to-one correspondence according to the number of industries or virtual operators;

[0430] The FlexAlgo-based FA slice to which the slice user belongs is determined based on the industry or virtual operator to which the slice user belongs.

[0431] Among them, Fig.15In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically linking together various circuits of one or more processors represented by processor 1500 and memory represented by memory 1520. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 1510 may be a plurality of components, namely, a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium. The processor 1500 is responsible for managing the bus architecture and general processing, and the memory 1520 may store data used by the processor 1500 when performing operations.

[0432] An embodiment of the present invention further provides a network device, including:

[0433] A division module is used to divide the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements;

[0434] The corresponding module is used to establish the corresponding relationship between the slice identifier SliceID and the resource demand;

[0435] The binding module is used to establish a one-to-one binding IPv6-based source routing technology strategy SRv6 Policy tunnel for the user according to the resource requirements of the slice user, and establish a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel.

[0436] During implementation, it further includes:

[0437] Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo;

[0438] SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs;

[0439] The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

[0440] During implementation, the binding module is further used to establish a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel to allocate a slice identifier SliceID to the SRv6 Policy tunnel that can meet the slice user resource requirements.

[0441] During implementation, the division module is further used to identify sub-link resources using the sub-link identifier Sub-Link Num. Each sub-link has its own exclusive underlying physical resources. By preserving and maintaining the correspondence between Sub-Link Num and each type of sub-link resource ID, it is compatible with various types of underlying physical sub-link resources.

[0442] During implementation, the binding module is further used to add an identifier to the IPv6-based source routing technology capability subtype, length, value SRv6Capabilities sub-TLV of the routing capability type, length, value Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the border gateway protocol link type BGP-LS to indicate that the device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

[0443] In implementation, the binding module is further used to add an identifier to the end segment identifier subtype, length, value End.X SID sub-TLV structure to indicate that the device is an adjacent SID of a virtual member sublink rather than an adjacent SID of a physical link.

[0444] During implementation, the binding module is further used to use the link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure to announce the number of link slices and corresponding resource information.

[0445] In implementation, the partitioning module is further used to perform one or a combination of the following processes:

[0446] When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends them to the device;

[0447] According to the needs of slice users in the FA slice topology, forwarding plane SliceID resources are allocated to each user, and a corresponding relationship between SliceID and the resource needs of each slice user is established. Unallocated SliceIDs are temporarily reserved and have no resource requirements;

[0448] The SliceID that has not yet been allocated bandwidth requirements will be updated according to the bandwidth requirements of the subsequent newly added slice users, and the updated information will be synchronously sent to the device.

[0449] In implementation, the partitioning module is further used to maintain and / or update the following information:

[0450] FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

[0451] During implementation, the binding module is further used to carry the SliceID information of the forwarding plane in the BGP SRv6 Policy message.

[0452] During implementation, the binding module is further used to configure the mapping relationship between the Color template and the forwarding plane SliceID, so that the tunnel head node device obtains the corresponding SliceID according to the Color attribute of the SRv6 Policy.

[0453] In implementation, the binding module is further used to perform path calculation based on SliceID information, FA topology, and remaining slice resource information of the virtual member sub-link End.X corresponding to the FA topology, and use the virtual member sub-link End.X SID for path orchestration.

[0454] During implementation, the binding module is further used to guide the slice user traffic to the SRv6 Policy tunnel for transmission, so that when the forwarding device forwards the message, it determines the slice sub-link physical resource on the outgoing interface according to the indication of the slice flag set in the virtual member sub-link End.X SID, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0455] During implementation, the binding module is further used to guide slice user traffic to SRv6 Policy tunnel transmission, and update one or a combination of the following information according to the information reported by the device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resource information of the virtual member sub-link.

[0456] During implementation, the division module is further used to distinguish the sub-link resource identifiers used by FA slices and user slices by dividing the value space of the sub-link resource identifiers.

[0457] During implementation, the division module is further used to allocate the sub-link resources corresponding to the Sub-Link Num with the upper 4 bits being 1 to the FA slice when dividing the value space of the sub-link resource identifier, and allocate the remaining Sub-Link Num value space to the user slice.

[0458] During implementation, the partitioning module is further used to reserve the remaining bandwidth resources in the total bandwidth that are not allocated to user slices in each FA slice topology, for sharing by non-slice users in the FA slice topology, and the traffic of non-slice users is carried through SRv6 BE.

[0459] In implementation, the partitioning module is further used for the FA slice to partition the network into a corresponding number of FA slices based on FlexAlgo that have a one-to-one correspondence according to the number of industries or virtual operators;

[0460] The FlexAlgo-based FA slice to which the slice user belongs is determined based on the industry or virtual operator to which the slice user belongs.

[0461] For the convenience of description, the various parts of the above-mentioned device are divided into various modules or units according to their functions and described separately. Of course, when implementing the present invention, the functions of each module or unit can be implemented in the same or multiple software or hardware.

[0462] Fig.17 The schematic diagram of the network device structure as a forwarding device is shown in the figure. As shown in the figure, the forwarding device includes:

[0463] The processor 1700 is used to read the program in the memory 1720 and execute the following process:

[0464] When providing services to the slice user, the service traffic is directed to the SRv6 Policy tunnel for transmission;

[0465] Establish a correspondence between SliceID and each interface sub-link resource on the SRv6 Policy tunnel path;

[0466] The transceiver 1710 is configured to receive and send data under the control of the processor 1700 .

[0467] During implementation, it further includes:

[0468] One or a combination of the following information is flooded and announced in the interior gateway protocol IGP: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0469] During implementation, it further includes:

[0470] The tunnel head node device obtains the SliceID from the BGP SRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

[0471] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, a sub-link resource that can meet the resource requirements of the SliceID is allocated from the idle sub-link resources of the corresponding physical output interface for forwarding according to the SliceID carried in the slice user forwarding message, and the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource are maintained.

[0472] During implementation, when the slice user traffic is directed to the SRv6 Policy tunnel for transmission, when the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarded message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-Link Num status.

[0473] Among them, Fig.17 In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically linking together various circuits of one or more processors represented by processor 1700 and memory represented by memory 1720. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 1710 may be a plurality of components, namely, a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium. The processor 1700 is responsible for managing the bus architecture and general processing, and the memory 1720 may store data used by the processor 1700 when performing operations.

[0474] An embodiment of the present invention further provides a network device, including:

[0475] A transmission module, used to guide the service traffic of the slice user to the SRv6Policy tunnel for transmission when providing services to the slice user;

[0476] The relationship module is used to establish the correspondence between SliceID and each interface sub-link resource on the SRv6 Policy tunnel path.

[0477] In implementation, the relationship module is further used to flood the internal gateway protocol IGP to announce one or a combination of the following information: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

[0478] During implementation, the relationship module is further used to enable the tunnel head node device to obtain the SliceID from the BGP SRv6Policy message sent by the SDN controller and write it into the corresponding position of the forwarding plane message.

[0479] During implementation, the transmission module is further used to guide slice user traffic to the SRv6 Policy tunnel for transmission. According to the SliceID carried in the slice user forwarding message, a sub-link resource that can meet the resource requirements of the SliceID is allocated from the idle sub-link resources of the corresponding physical output interface for forwarding, and the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource are maintained.

[0480] During implementation, the transmission module is further used to guide the slice user traffic to the SRv6 Policy tunnel for transmission. When the first slice message arrives at the device, the device searches the local table to obtain the bandwidth resources required for the SliceID according to the SliceID carried in the forwarding message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the local device sub-link resource table, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: occupancy of the sub-link resource Sub-Link Num, the correspondence between SliceID and Sub-Link Num, and the Sub-Link Num status.

[0481] For the convenience of description, the various parts of the above-mentioned device are divided into various modules or units according to their functions and described separately. Of course, when implementing the present invention, the functions of each module or unit can be implemented in the same or multiple software or hardware.

[0482] A computer-readable storage medium is also provided in an embodiment of the present invention. The computer-readable storage medium stores a computer program for executing the above transmission method.

[0483] For specific implementation, please refer to the implementation of the transmission method.

[0484] In summary, the technical solution provided in the embodiment of the present invention provides:

[0485] The SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the SRv6Capability TLV of BGP-LS are extended to add a flag to indicate that the device supports the forwarding plane slice processing capability.

[0486] The End.X SID sub-TLV structure is extended to add a flag to indicate that it is the adjacency SID of the virtual member sub-link rather than the adjacency SID of the physical link.

[0487] The newly defined link slice information Sub-TLV and slice resource Sub-sub-TLV structures are used to announce the number of link slices and corresponding resource information.

[0488] Furthermore, a method is provided for IGP flooding notification of the End.XSID, the reserved total bandwidth, the number of SliceIDs, and the resource information corresponding to each SliceID of each FA slice virtual member sub-link on the link.

[0489] End.X SID allocation, total resource reservation mechanism and method of virtual member sub-links within the FA slice topology, and the number of SliceID allocation rules for the forwarding plane within the FA slice topology.

[0490] The controller maintains the correspondence between FA slice ID, virtual member sub-link End.X SID and its total reserved resources, and the number of SliceIDs, and maintains and updates information such as the resource requirements and status of each SliceID, and the total remaining slice resources of the virtual member sub-link.

[0491] The BGP SRv6 Policy structure is extended to carry the forwarding plane SliceID information.

[0492] Furthermore, a method is provided for the tunnel head node to obtain the SliceID from the BGP SRv6 Policy message sent by the controller and write the SliceID into the corresponding position of the forwarding plane message.

[0493] Configure the mapping between the color template and the forwarding plane SliceID. The head node device obtains the corresponding SliceID based on the Color attribute of the SRv6 Policy.

[0494] The operating mechanism and method of value allocation, corresponding resource allocation and status maintenance of SliceID of the secondary slice user forwarding plane.

[0495] The controller performs path calculation based on SliceID information, FA topology and the remaining slice resources of its corresponding virtual member sub-link End.X, and uses the virtual member sub-link End.X SID to perform path orchestration processing mechanism and method.

[0496] When forwarding a message, the forwarding device further determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag in the virtual member sub-link End.X SID, and forwards the message through the corresponding sub-link physical resource sub-interface.

[0497] The forwarding device allocates a sub-link resource (such as MTN sub-interface, VLAN enhanced sub-interface, channelized sub-interface resources, FlexE sub-interface, independent QoS queue, etc.) that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical output interface according to the SliceID carried in the slice user forwarding message; the correspondence between SliceID and sub-link resources and the dynamic maintenance mechanism and method of the status of sub-link resources.

[0498] Furthermore, the introduction of Sub-Link Num is provided to uniformly identify the underlying physical sub-link resources. Each sub-link has its own exclusive underlying physical resources, such as MTN sub-interface, VLAN enhanced sub-interface, channelized sub-interface resources, FlexE sub-interface, independent QoS queue, etc. By saving and maintaining the correspondence between Sub-Link Num and the above-mentioned types of sub-link resource IDs, various types of underlying physical sub-link resources can be compatible.

[0499] Furthermore, a mechanism and method are provided for the forwarding device to synchronize the corresponding relationship between SliceID and Sub-LinkNum and the occupancy status of the sub-link resource Sub-Link Num to the controller in real time through Telemetry.

[0500] Furthermore, a mechanism and method are provided for the controller to dynamically update and maintain information such as the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the status of the sub-link resource Sub-Link Num, and the remaining slice resources of the virtual member sub-link based on the above information reported by the device.

[0501] By dividing the value space of the sub-link resource identifier, the sub-link resource identifiers used by the first-level slice and the second-level slice are distinguished.

[0502] Furthermore, it is provided that the sub-link resources corresponding to the Sub-Link Num whose upper 4 bits are 1 are allocated to the FA first-level slice, and the remaining Sub-Link Num value space is allocated to the second-level slice.

[0503] In each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to the secondary user slice are reserved for sharing by non-slice users in the FA topology. The traffic of non-slice users is carried by SRv6 BE.

[0504] In implementation, the FA slice is to divide the network into a corresponding number of FA slices based on FlexAlgo in a one-to-one correspondence according to the number of industries or virtual operators;

[0505] The SDN controller determines the FlexAlgo-based FA slice to which the slice user belongs based on the industry or virtual operator to which the slice user belongs.

[0506] This solution can achieve exclusive use of resources for each slice on the same physical link. Compared with the existing FlexAlgo technology, it can solve the problem that each slice of FlexAlgo can only enjoy one physical link, the isolation granularity is coarse, the existing network resources are basically unable to meet the needs, and it is impossible to deploy on a large scale to achieve hard isolation of slices.

[0507] This solution can provide underlying physical resource guarantees for slicing and implement hard slicing. Compared with the existing SR-TE and SRPolicy technologies, it can solve the problem of soft isolation only through tunnels and complete sharing of physical resources.

[0508] Both the separate FA enhancement technology and the separate SRv6 Policy+forwarding plane slicing technology can only provide first-level slicing services. This solution provides a dynamically adjustable sub-link-level resource-guaranteed data bearer network two-level slicing service, which can meet the two-level slicing scenario requirements of industry slicing + user slicing.

[0509] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.

[0510] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, 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 device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0511] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0512] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0513] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.

Claims

1. A transmission method, characterized in that: include: The software-defined network (SDN) controller divides the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements. Each sub-link resource has its own exclusive underlying physical resources. Establish the corresponding relationship between slice ID SliceID and resource requirements; According to the resource demand of the slice user, a one-to-one binding SRv6 Policy tunnel based on the IPv6 source routing technology strategy is established for the slice user, and a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established, wherein the corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established to allocate a slice identifier SliceID that can meet the resource demand of the slice user to the SRv6 Policy tunnel; Further including: The SliceID information of the forwarding plane is carried in the BGPSRv6 Policy message and sent to the SRv6 Policy tunnel head node; or, Configure the mapping relationship between the color template and the forwarding plane SliceID so that the SRv6 Policy tunnel ingress device obtains the corresponding SliceID based on the SRv6 Policy's Color attribute.

2. The method according to claim 1, characterized in that Further including: Slice users are users in the flexible algorithm FA slice based on the flexible algorithm FlexAlgo; SliceID is the SliceID in the FlexAlgo-based FA slice to which the slice user belongs; The SRv6 Policy tunnel is a tunnel in the FlexAlgo-based FA slice topology to which the slice user belongs.

3. The method according to claim 1, characterized in that Further including: The sub-link resource is identified by using the sub-link identifier Sub-Link Num, and the corresponding relationship between Sub-Link Num and each type of sub-link resource ID is saved and maintained to be compatible with various types of underlying physical sub-link resources.

4. The method according to claim 1, characterized in that Further including: Add an identifier to the IPv6-based source routing technology capability subtype, length, value SRv6 Capabilities sub-TLV of the Router CAPABILITY TLV and the IPv6-based source routing technology capability type, length, value SRv6 Capability TLV of the Border Gateway Protocol link type BGP-LS to indicate that the network device supports the ability to carry SliceID and perform slice processing on the forwarding plane.

5. The method according to claim 1, characterized in that Further including: An identifier is added to the end segment identifier subtype, length, and value End.X SID sub-TLV structure to indicate that the network device is an adjacent SID of a virtual member sublink rather than an adjacent SID of a physical link.

6. The method according to claim 1, characterized in that Further including: The link slice information subtype, length, value Sub-TLV and slice resource sub-subtype, length, value Sub-sub-TLV structure are used to announce the number of link slices and corresponding resource information.

7. The method according to claim 1 or 2, characterized in that: Further comprising one or a combination of the following processes: When allocating the number of SliceIDs, the SDN controller allocates a preset number of SliceIDs to each FA slice and then sends it to the network device; The SDN controller allocates forwarding plane SliceID resources to each slice user according to the needs of slice users in the FA slice topology, and establishes a corresponding relationship between SliceID and the resource requirements of each slice user. The unallocated SliceID is temporarily reserved and has no resource requirements. SliceIDs that have not yet been allocated resource requirements will be updated based on the resource requirements of subsequent newly added slice users, and the updated information will be synchronously sent to the network devices.

8. The method according to claim 1 or 2, characterized in that: Further including: The SDN controller maintains and / or updates the following information: FA slice SliceID, virtual member sub-link End.X SID, total reserved resources of virtual member sub-link End.X SID, correspondence between the number of SliceIDs, demand for resources of each SliceID, status of resources of each SliceID, and total remaining slice resources of the virtual member sub-link.

9. The method according to claim 1 or 2, characterized in that: Further including: The SDN controller performs path calculation based on the SliceID information, the FA slice topology, and the remaining slice resource information of the virtual member sub-link End.X corresponding to the FA slice topology, and uses the virtual member sub-link End.X SID for path orchestration.

10. The method according to claim 1, characterized in that When the slice user traffic is directed to the SRv6 Policy tunnel for transmission, the network device determines the slice sub-link physical resource on the outbound interface according to the indication of the slice flag in the virtual member sub-link End.X SID when forwarding the message, and forwards the message through the corresponding sub-link physical resource sub-interface.

11. The method according to claim 10, characterized in that When guiding slice user traffic to SRv6 Policy tunnel transmission, the SDN controller updates one or a combination of the following information based on the information reported by the network device: the correspondence between the SliceID of the virtual member sub-link and the sub-link resource Sub-Link Num, the sub-link resource Sub-Link Num status, and the remaining slice resource information of the virtual member sub-link.

12. The method according to claim 1, characterized in that Further including: The value space of the sub-link resource identifier is divided to distinguish the sub-link resource identifiers used by the FA slice and the user slice.

13. The method according to claim 12, characterized in that When dividing the value space of the sub-link resource identifier, the sub-link resource corresponding to the Sub-Link Num with the upper 4 bits being 1 is allocated to the FA slice, and the remaining Sub-Link Num value space is allocated to the user slice.

14. The method according to claim 1 or 2, characterized in that: Further including: In each FA slice topology, the remaining bandwidth resources in the total bandwidth that are not allocated to user slices are reserved for sharing by non-slice users in the FA slice topology. The traffic of non-slice users is carried by SRv6 BE.

15. The method of claim 2, 7, 12 or 13, wherein: The FA slice is a FlexAlgo-based FA slice that divides the network into a corresponding number of FA slices that have a one-to-one correspondence according to the number of industries or virtual operators; The SDN controller determines the FlexAlgo-based FA slice to which the slice user belongs based on the industry or virtual operator to which the slice user belongs.

16. A transmission method, characterized in that: include: When providing services to slice users, the forwarding device guides their service traffic to the SRv6 Policy tunnel for transmission; wherein the SRv6 Policy tunnel is assigned a slice identifier SliceID that can meet the resource requirements of the slice user; Each forwarding device along the SRv6 Policy tunnel path establishes a corresponding relationship between SliceID and the corresponding outbound interface sub-link resource. Each sub-link resource has its own underlying physical resources. Further including: Each forwarding device along the SRv6 Policy tunnel path allocates a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface according to the SliceID carried in the slice user forwarding message for forwarding, and maintains the correspondence between the SliceID and the sub-link resource and the status of the sub-link resource.

17. The method according to claim 16, characterized in that Further including: One or a combination of the following information is flooded and announced in the interior gateway protocol IGP: End.X SID of each FA slice virtual member sub-link on the link, the reserved total bandwidth, the number of SliceIDs, or the resource information corresponding to each SliceID.

18. The method according to claim 16, characterized in that Further including: The tunnel head node device obtains the SliceID from the BGPSRv6 Policy message sent by the SDN controller and writes it to the corresponding position of the forwarding plane message.

19. The method according to claim 16, characterized in that When the forwarding device guides the slice user traffic to the SRv6Policy tunnel for transmission, when the first slice message arrives at the forwarding device, the forwarding device searches the local table to obtain the bandwidth resources required by the SliceID according to the SliceID carried in the forwarding message, finds the unoccupied bandwidth sub-link resource Sub-Link Num from the sub-link resource table of the forwarding device, allocates it to the SliceID, forwards the slice user message from the corresponding sub-port, updates the local sub-link resource Sub-Link Num status to occupied, and reports one or a combination of the following updated information to the SDN controller through telemetry: sub-link resource Sub-Link Num occupancy, correspondence between SliceID and Sub-Link Num, and Sub-Link Num status.

20. A network device, characterized in that: include: The processor reads the program in the memory and performs the following processes: According to the resource requirements of slice users, the link corresponding to each network device interface is divided into multiple sub-link resources. Each sub-link resource has its own exclusive underlying physical resources. Establish the corresponding relationship between slice ID SliceID and resource requirements; According to the resource demand of the slice user, a one-to-one binding SRv6 Policy tunnel based on the IPv6 source routing technology strategy is established for the slice user, and a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established, wherein the corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is established to allocate a slice identifier SliceID that can meet the resource demand of the slice user to the SRv6 Policy tunnel; further comprising: carrying the SliceID information of the forwarding plane in the BGPSRv6 Policy message, and sending it to the SRv6 Policy tunnel head node; or, configuring the mapping relationship between the Color template and the forwarding plane SliceID, so that the SRv6 Policy tunnel head node device obtains the corresponding SliceID according to the Color attribute of the SRv6 Policy; A transceiver is used to receive and send data under the control of the processor.

21. A network device, characterized in that: include: The partitioning module is used to divide the link corresponding to each network device interface into multiple sub-link resources according to the slice user resource requirements. Each sub-link resource has its own exclusive underlying physical resources. The corresponding module is used to establish the corresponding relationship between the slice identifier SliceID and the resource demand; A binding module is used to establish a one-to-one binding of an IPv6-based source routing technology strategy SRv6 Policy tunnel for the slice user according to the resource demand of the slice user, and establish a corresponding relationship between a slice identifier SliceID and the SRv6 Policy tunnel, wherein establishing a corresponding relationship between the slice identifier SliceID and the SRv6 Policy tunnel is to allocate a slice identifier SliceID that can meet the resource demand of the slice user to the SRv6 Policy tunnel; The binding module is further used to carry the SliceID information of the forwarding plane in the BGPSRv6 Policy message and send it to the SRv6 Policy tunnel head node; or, configure the mapping relationship between the Color template and the forwarding plane SliceID, so that the SRv6Policy tunnel head node device obtains the corresponding SliceID according to the Color attribute of the SRv6 Policy.

22. A network device, characterized in that: include: The processor reads the program in the memory and performs the following processes: When providing services to slice users, their service traffic is directed to the SRv6 Policy tunnel for transmission; wherein the SRv6 Policy tunnel is allocated a slice identifier SliceID that can meet the resource requirements of the slice user; Each forwarding device along the SRv6 Policy tunnel path establishes a correspondence between SliceID and the corresponding outbound interface sub-link resource. Each sub-link resource has its own underlying physical resource. Each forwarding device along the SRv6 Policy tunnel path allocates a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface according to the SliceID carried in the slice user forwarding message for forwarding, and maintains the correspondence between the SliceID and the sub-link resource and the status of the sub-link resource. A transceiver is used to receive and send data under the control of the processor.

23. A network device, characterized in that: include: A transmission module, used to guide the service traffic of a slice user to the SRv6 Policy tunnel for transmission when providing services to the slice user; wherein the SRv6 Policy tunnel is allocated a slice identifier SliceID that can meet the resource requirements of the slice user; The relationship module is used for each forwarding device along the SRv6 Policy tunnel path to establish a corresponding relationship between the SliceID and the corresponding sub-link resource of the outbound interface. Each sub-link resource has its own underlying physical resource. It is also used for each forwarding device along the SRv6 Policy tunnel path to allocate a sub-link resource that can meet the resource requirements of the SliceID from the idle sub-link resources of the corresponding physical outbound interface according to the SliceID carried in the slice user forwarding message for forwarding, and maintain the corresponding relationship between the SliceID and the sub-link resource and the status of the sub-link resource.

24. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program for executing the method according to any one of claims 1 to 19.

Citation Information

Patent Citations

  • Network slicing method and device

    CN110944357A

  • Message processing method, related equipment and computer storage medium

    CN111107004A

  • Method, device and controller for realizing network slicing

    CN111225419A

  • Method for network slices to share uplink port, apparatus, and storage medium

    WO2021077995A1