WO2023231442A1 - 业务传输方法、设备和存储介质 - Google Patents

业务传输方法、设备和存储介质 Download PDF

Info

Publication number
WO2023231442A1
WO2023231442A1 PCT/CN2023/074845 CN2023074845W WO2023231442A1 WO 2023231442 A1 WO2023231442 A1 WO 2023231442A1 CN 2023074845 W CN2023074845 W CN 2023074845W WO 2023231442 A1 WO2023231442 A1 WO 2023231442A1
Authority
WO
WIPO (PCT)
Prior art keywords
label
bgp
slice
network device
tunnel
Prior art date
Application number
PCT/CN2023/074845
Other languages
English (en)
French (fr)
Inventor
戴春宁
彭少富
陈然
徐本崇
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2023231442A1 publication Critical patent/WO2023231442A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Definitions

  • the embodiments of the present disclosure relate to communication technology, and in particular, to a service transmission method, device and storage medium.
  • Border Gateway Protocol is a routing protocol between autonomous systems (Autonomous Systems, AS), used to exchange routing information between different AS domains.
  • the route of the egress PE can be propagated to the ingress PE through the BGP labeled unicast (BGP labeled Unicast, BGP-LU) mechanism. Labels are exchanged during the process, thereby establishing a label switching path (LSP) between cross-domain end-to-end devices to realize cross-domain network splicing.
  • BGP labeled Unicast BGP labeled Unicast
  • Embodiments of the present disclosure provide a service transmission method, network equipment, computer-readable storage media, and computer program products, aiming to solve the problem that network slicing resource selection cannot be implemented between cross-domain end-to-end devices.
  • an embodiment of the present disclosure provides a service transmission method, applied to a first network device.
  • the method includes:
  • BGP-LU routing information includes a plurality of color attribute information, and each of the Color attribute information includes a Color value and the Color value The corresponding slice Slice label;
  • the Slice entry includes a plurality of Slice labels and tunnel labels corresponding to the plurality of Slice labels.
  • the tunnel labels are used to identify the first A tunnel between a network device and the second network device;
  • the target tunnel is determined from the Slice entry according to the Slice label carried in the service message, and the service message is forwarded to the second network device through the target tunnel.
  • Internet equipment When receiving a service message from the third network device, the target tunnel is determined from the Slice entry according to the Slice label carried in the service message, and the service message is forwarded to the second network device through the target tunnel.
  • embodiments of the present disclosure provide a service transmission method, applied to a second network device, where the method includes:
  • the target tunnel for forwarding the service message is determined in the table entry;
  • the Slice entry includes a plurality of Slice labels and tunnel labels corresponding to the plurality of Slice labels.
  • the tunnel labels are used to identify one of the first network device and the second network device. tunnel between.
  • embodiments of the present disclosure provide a service transmission method, which is applied to a third network device.
  • the method includes:
  • an embodiment of the present disclosure provides a network device, including:
  • Program instructions are stored on the memory, and when executed by the processor, the program instructions cause the processor to perform any one of the above service transmission methods.
  • embodiments of the present disclosure provide a computer-readable storage medium that stores program instructions. When the program instructions are executed by a computer, any one of the above service transmission methods is implemented.
  • embodiments of the present disclosure provide a computer program product.
  • the computer program product stores program instructions. When executed by a computer, the program instructions enable the computer to implement the service transmission as described in any of the above. method.
  • BGP-LU routing information carries multiple Color attribute information, and each of the Color attribute information includes a Color value and a slice label corresponding to the Color value, so that the first network device obtains it from the second network device.
  • a Slice entry is created.
  • the Slice entry includes multiple Slice labels and tunnel labels corresponding to the multiple Slice labels one by one.
  • the first network device receives a service message from the third network device, it determines the Slice entry based on the Slice label carried in the service message.
  • the service packets described above reach the target tunnel of the next-hop network device.
  • multiple LSPs corresponding to different Color values are established between cross-domain end-to-end network devices.
  • Each LSP corresponds to an underlying network slicing resource, providing optional underlying network slicing resources for cross-domain transmission services. to meet different business requirements.
  • Figure 1 is a schematic diagram of a scenario for establishing an LSP between cross-domain end-to-end devices provided by related technologies
  • Figure 2 is a schematic flowchart of a service transmission method provided by an embodiment of the present disclosure
  • Figure 3a is a schematic diagram of the format of BGP-LU extended community attributes provided by related technologies
  • Figure 3b is a schematic diagram of the format of a BGP-LU extended community attribute provided by an embodiment of the present disclosure
  • Figure 4 is a schematic flowchart of creating a Slice entry provided by an embodiment of the present disclosure
  • Figure 5 is a schematic flowchart of determining a target tunnel provided by an embodiment of the present disclosure
  • Figure 6 is a schematic flowchart of a service transmission method provided by another embodiment of the present disclosure.
  • Figure 7 is a schematic flowchart of a service transmission method provided by another embodiment of the present disclosure.
  • Figure 8 is a schematic flowchart of a service transmission method provided by another embodiment of the present disclosure.
  • Figure 9 is a schematic flowchart of a service transmission method provided by another embodiment of the present disclosure.
  • Figure 10 is a schematic flowchart of a service transmission method provided by another embodiment of the present disclosure.
  • Figure 11a is a schematic diagram of a cross-domain network scenario in Example 1 of this disclosure.
  • Figure 11b is a schematic diagram of the BGP-LU label exchange table on ASBR1 in Example 1 of the present disclosure
  • Figure 11c is a schematic diagram of the Slice table entry 101-Slice-table in Example 1 of this disclosure.
  • Figure 11d is a schematic diagram of the BGP-LU label exchange table on ASBR2 in Example 1 of the present disclosure
  • Figure 11e is a schematic diagram of the Slice table entry 102-Slice-table in Example 1 of this disclosure.
  • Figure 11f is a schematic diagram of the BGP-LU LSP entry entry on PE2 in Example 1 of this disclosure.
  • Figure 12 is a schematic diagram of the cross-domain transmission scenario of service messages in Example 2 of this disclosure.
  • Figure 13a is a schematic diagram of a cross-domain network scenario in Example 3 of this disclosure.
  • Figure 13b is the BGP-LU label exchange table on ASBR1 in Example 3 of this disclosure.
  • Figure 13c is a schematic diagram of the Slice table entry 101-Slice-table in Example 3 of this disclosure.
  • Figure 13d is the BGP-LU label exchange table on C-ASBR in Example 3 of this disclosure.
  • Figure 13e is the BGP-LU label exchange table on ASBR2 in Example 3 of this disclosure.
  • Figure 13f is a schematic diagram of the Slice table entry 102-Slice-table in Example 3 of this disclosure.
  • Figure 14 is a schematic diagram of the cross-domain transmission scenario of service messages in Example 4 of the present disclosure.
  • Figure 15 is a schematic structural diagram of a first network device provided by an embodiment of the present disclosure.
  • Figure 16 is a schematic structural diagram of a second network device provided by an embodiment of the present disclosure.
  • Figure 17 is a schematic structural diagram of a third network device provided by an embodiment of the present disclosure.
  • At least one of the following and similar expressions refers to any group of these items, including any group of singular or plural items.
  • at least one of a, b, and c can represent: a, b, c, a and b, a and c, b and c, or, a and b and c, where a, b, c can be a single , or multiple.
  • Border Gateway Protocol is a routing protocol between autonomous systems (Autonomous Systems, AS), used to exchange routing information between different AS domains.
  • AS Autonomous Systems
  • BGP labeled Unicast BGP labeled Unicast
  • a schematic diagram of a scenario for establishing an LSP between cross-domain end-to-end devices is provided for related technologies.
  • AS1 and AS2 includes PE1 and ASBR1
  • AS2 includes PE1 and ASBR2
  • PE1 and PE2 are provider edge devices (Provider Edge, PE)
  • ASBR1 and ASBR2 are Autonomous System Boundary Router (ASBR).
  • AS1 and AS2 are divided into two logical slices SR-TE1 and SR-TE2 respectively.
  • the Color value corresponding to SR-TE1 is Color1
  • the Color value corresponding to SR-TE2 is Color value is Color2.
  • PE1 notifies PE2 of BGP-LU information via ASBR1 and ASBR2.
  • the BGP-LU information carries the routing address prefix (for example, 1.1.1.1/32).
  • the BGP-LU information each node creates an LSP based on the routing address prefix.
  • One prefix can only create one LSP, and the underlying network slice resource selection cannot be realized at the same time.
  • the BGP-LU information can carry multiple Color values, only one underlying logical slice can be fixed for service forwarding. , that is to say, different services can only be forwarded through fixed network slice resources between two endpoint devices across domains.
  • the BGP-LU information also carries two Color values (Color1 and Color2).
  • Color1 Color 1
  • SR-TE2 color 2
  • Color2 for example, LSP1 established based on Color1 in Figure 1).
  • embodiments of the present disclosure provide a service transmission method, network equipment, computer-readable storage media and computer program products, aiming to solve the problem that network slicing cannot be implemented between end-to-end devices in cross-domain scenarios. Resource selection issues.
  • FIG. 2 it is a schematic flow chart of a service transmission method provided by an embodiment of the present disclosure.
  • the implementation process of this method includes but is not limited to the following steps S110-S130:
  • Step S110 The first network device receives the Border Gateway Protocol-label unicast BGP-LU routing information from the second network device.
  • the BGP-LU routing information includes multiple color Color attribute information, and each Color attribute information includes a Color value and a Color attribute.
  • Step S120 The first network device creates a Slice entry based on the BGP-LU routing information.
  • the Slice entry includes multiple Slice labels and tunnel labels corresponding to the multiple Slice labels.
  • the tunnel labels are used to identify the first network device and the first network device. Tunnel between two network devices;
  • Step S130 When receiving the service packet from the third network device, the first network device determines the target tunnel from the Slice entry according to the Slice label carried in the service packet, and forwards the service packet to the second network device through the target tunnel.
  • the first network device described in the embodiment of the present disclosure represents an intermediate node between cross-domain end-to-end network devices, and the second network device represents the next hop node of the first network device in the service flow transmission path;
  • the third network device represents the previous hop node of the first network device in the service flow transmission path.
  • the first network device can be ASBR1 or ASBR2; when the first network device is ASBR1, the second network device refers to PE1, and the third network device refers to ASBR2; when the first network device is ASBR2 , the second network device refers to ASBR1, and the third network device refers to PE2.
  • the first network device receives BGP-LU routing information from the second network device.
  • the BGP-LU routing information carries multiple Color attribute information.
  • Each Color attribute information includes a Color value and a slice label corresponding to the Color value. .
  • the Color attribute information may be carried in BGP-LU extended community attribute information.
  • BGP-LU extended community attribute information provided by the embodiment of the present disclosure extends the traditional BGP-LU extended community attribute information, as shown in Figure 3a, which is a schematic diagram of the format of the BGP-LU extended community attribute provided for related technologies. (See standard protocol RFC9012); As shown in Figure 3b, it is a schematic diagram of the format of an extended community attribute of BGP-LU routing information provided by an embodiment of the present disclosure.
  • the extended community attribute information includes flags (Flags) Field, Slice field and Color Value field.
  • the original BGP-LU extended community attributes include a Flags field and a Color Value.
  • Flags is 2 bytes and has no specific semantics defined.
  • the receiving device directly transmits this field transparently; in the embodiment of the present disclosure, Redefine the Flags field to 1 byte and add a 1-byte Slice field.
  • the Slice field carries the Slice label and the Color Value field carries the Color value.
  • the BGP-LU routing information in this embodiment of the present disclosure carries multiple BGP-LU extended community attribute information as shown in Figure 3b.
  • the Color value and Slice label in each BGP-LU extended community attribute information are The only corresponding one.
  • the BGP-LU routing information contains two BGP-LU extended community attribute information.
  • the Color value carried in the first BGP-LU extended community attribute information is 1 and the corresponding Slice label is Slice1.
  • the second BGP-LU extended community attribute information carries The Color value carried in the extended community attribute information is 2, and the corresponding Slice label is Slice2.
  • the first network device creates a Slice entry based on the BGP-LU routing information.
  • the Slice entry includes multiple Slice labels and multiple tunnel labels.
  • the multiple Slice labels and multiple tunnel labels here are The tunnel labels have a one-to-one correspondence relationship, so that the first network device searches for the tunnel label corresponding to the Slice label from the Slice entry, and then determines the corresponding target tunnel according to the tunnel label.
  • the Slice entry contains two Slice labels (Slice1 and Slice2).
  • the tunnel label corresponding to Slice1 is SR-TE1
  • the tunnel label corresponding to Slice2 is SR-TE2.
  • creating a Slice entry based on BGP-LU routing information may include the following steps:
  • Step S121 Predefine a tunnel label corresponding to each tunnel between the first network device and the second network device.
  • a tunnel label is configured for each tunnel between the first network device and the second network device.
  • two tunnels are formed between the first network device and the second network device through slicing, respectively. These two tunnels are configured with labels SR-TE1 and SR-TE2.
  • Step S122 Determine the Slice label corresponding to each tunnel label based on the Color value corresponding to each tunnel.
  • each tunnel has a Color value predefined, and each tunnel between the first network device and the second network device has a different Color value, and each Color value can be corresponding in the BGP-LU routing information.
  • Slice label determine the Slice label corresponding to each tunnel, and establish a corresponding relationship between the Slice label corresponding to each tunnel and the tunnel label.
  • Step S123 Obtain the Slice entry based on the correspondence between the Slice label and the tunnel label.
  • the corresponding Slice label and tunnel label are recorded in the Slice entry to form the Slice entry. For example, if Slice1 and SR-TE1 both correspond to Color1, and Slice2 and SR-TE2 both correspond to Color2, then corresponding relationships between Slice1 and SR-TE1, and Slice2 and SR-TE2 are established respectively, and recorded in the Slice entry.
  • step S130 the target tunnel is determined from the Slice entry according to the Slice label carried in the service packet, which may include the steps shown in Figure 5:
  • Step S131 Determine the tunnel label corresponding to the Slice label carried in the service packet from the Slice table entry;
  • Step S132 Determine the target tunnel according to the tunnel label.
  • the tunnel label corresponding to Slice1 can be determined from the Slice table entry; if the Slice label carried by the service packet is Slice2, then the tunnel label corresponding to Slice1 can be determined from the Slice table entry. It is determined in the item that the tunnel label corresponding to Slice2 is SR-TE2. In this way, different slicing tunnels are selected for packet forwarding based on different business requirements of service packets, achieving the purpose of end-to-end network slicing in cross-domain scenarios.
  • the BGP-LU routing information may further include a first BGP-LU label corresponding to the second network device.
  • each network device in a cross-domain scenario can be configured with a unique BGP-LU label for the current BGP-LU route.
  • the BGP-LU labels of PE1, ASBR1, and ASBR2 correspond to 100, 101, and 102.
  • the BGP-LU routing information received by ASBR1 from PE1 carries the BGP-LU label 100 of PE1.
  • the method in the embodiment of the present disclosure may further include the steps shown in Figure 6:
  • Step S210 Obtain the second BGP-LU label corresponding to itself.
  • the first BGP-LU label is used to represent the BGP-LU label corresponding to the current BGP-LU route (for example, the route with the prefix 1.1.1.1/32) of the second network device
  • the second BGP-LU label is used It represents the BGP-LU label corresponding to the current BGP-LU route (the route with the prefix 1.1.1.1/32) of the first network device.
  • Step S220 Use the second BGP-LU label as the incoming BGP-LU label, use the first BGP-LU label as the outgoing BGP-LU label, and generate Slice entries corresponding to the incoming BGP-LU label and the outgoing BGP-LU label. index.
  • the Slice entry index is used to index the Slice entry corresponding to the incoming BGP-LU label.
  • the incoming BGP-LU label is the BGP-LU label of the node itself (i.e., the first network device), and the outgoing BGP-LU label is the BGP of the next hop node in the service transmission path (i.e., the second network device).
  • -LU label the embodiment of the present disclosure constructs a Slice entry index corresponding to the incoming BGP-LU label, so that the first network device can search for the Slice entry corresponding to the incoming BGP-LU label based on the Slice entry index.
  • Step S230 Record the corresponding relationship between the incoming BGP-LU label, the slice entry index, and the outgoing BGP-LU label in the pre-created BGP-LU label exchange table.
  • the incoming BGP-LU label is 102
  • the Slice table entry index is 102-Slice-table
  • the outgoing BGP-LU label is 101.
  • the corresponding relationship between the above incoming BGP-LU label, Slice entry index, and outgoing BGP-LU label is Recorded in the pre-created BGP-LU label exchange table.
  • the first network device obtains the second BGP-LU label corresponding to itself, it also includes the following steps:
  • Step S211 replace the first BGP-LU label in the BGP-LU routing information with the second BGP-LU label to obtain new BGP-LU routing information
  • Step S212 Send the new BGP-LU routing information to the third network device.
  • the first network device changes the first BGP-LU label in the original BGP-LU routing information (that is, the BGP-LU label of the second network device) Replace with the second BGP-LU label (that is, the BGP-LU label of the first network device itself), and send the BGP-LU routing information after the BGP-LU label has been replaced to the third network device to achieve the purpose of exchanging labels.
  • the service packet sent by the third network device to the first network device also carries the BGP-LU label, so that the first network device searches for the corresponding Slice entry index according to the BGP-LU label in the service packet. , and then obtain the corresponding Slice entry based on the Slice entry index.
  • the method in the embodiment of the present disclosure also includes the steps shown in Figure 7:
  • Step S311 Use the BGP-LU label carried in the service packet as the incoming BGP-LU label, and obtain the Slice entry index corresponding to the incoming BGP-LU label from the pre-created BGP-LU label exchange table;
  • Step S312 Obtain the Slice entry according to the Slice entry index.
  • the service packet received by ASBR1 from ASBR2 carries BGP-LU label 101
  • it will use BGP-LU label 101 as the incoming BGP-LU label and search for it in the incoming BGP-LU label item of the BGP-LU label exchange table.
  • the Slice table entry index corresponding to BGP-LU label 101 assuming that the Slice table entry index obtained is 101-Slice-table, then the Slice table entry corresponding to the Slice table entry index 101Slice-table is searched, which can be obtained from the search Obtain the tunnel label corresponding to the Slice label in the service packet from the Slice entry.
  • Step S321 Obtain the outgoing BGP-LU label corresponding to the incoming BGP-LU label from the pre-created BGP-LU label exchange table;
  • Step S322 Replace the BGP-LU label carried in the service packet with the outbound BGP-LU label.
  • the first network device replaces the BGP-LU label in the original service message received from the third network device with the outgoing BGP-LU label, obtains the new service message, and forwards it to the next hop node (section 1).
  • Two network devices so that the next hop node can obtain the Slice entry index based on the BGP-LU label in the received service message.
  • the service packet also carries a tunnel label, and the tunnel label carried by the service packet is used to indicate the tunnel through which the service packet reaches the first network device.
  • the method in the embodiment of the present disclosure may further include: replacing the tunnel label carried in the service packet with a tunnel label corresponding to the target tunnel.
  • the service packet carries a label stack
  • the label stack includes at least one of the following labels from the outer layer to the inner layer: tunnel label, BGP-LU label, Slice label, Slice label, VPN label, and destination address.
  • various labels that need to be carried by the service packet are encapsulated in the form of a label stack to obtain a label stack containing multiple layers of labels.
  • the first network device pops up the labels in order from the outer layer to the inner layer.
  • the label stack may include tunnel labels, BGP-LU labels, slice labels, slice labels, VPN labels, and destination addresses in order from the outer layer to the inner layer.
  • the tunnel label indicates the tunnel through which the service packet reaches the first network device
  • the BGP-LU label indicates the incoming BGP-LU label in the BGP-LU label exchange table of the first network device
  • the Slice tag indicates whether the inner layer contains Slice.
  • the Slice label indicates the slice used to transmit the service packet
  • the VPN label indicates the VPN routing label
  • the destination address indicates the destination address of the service packet.
  • the method in the embodiment of the present disclosure also includes: popping up the labels of each layer of the label stack in order from the outer layer to the inner layer; when popping up the BGP-LU If no Slice label pops up after the label, it is determined that the label stack does not carry the Slice label.
  • -LU label replace the BGP-LU label carried in the service packet with a BGP-LU label and then forward it to the second network device.
  • the first network device receives the service packet Then, pop up the labels of each layer of the label stack in order from the outer layer to the inner layer. First, the tunnel label pops up, and then the BGP-LU label pops up. If the label popped up after the BGP-LU label is not the default Slice label, it means that the label There is no Slice label in the inner layer of the stack.
  • the first network device can use the BGP-LU label as the incoming BGP-LU label and obtain the outgoing BGP-LU label corresponding to the incoming BGP-LU label from the pre-created BGP-LU label exchange table.
  • BGP-LU label after replacing the BGP-LU label carried in the service packet with the BGP-LU label, the service packet is directly forwarded to the second network device.
  • BGP-LU routing information carries multiple Color attribute information
  • each Color attribute information includes a Color value and a Slice label corresponding to the Color value, so that the first network device obtains the BGP-LU routing information from the second network device.
  • a Slice entry is created.
  • the Slice entry includes multiple Slice labels and tunnel labels corresponding to the multiple Slice labels one by one.
  • the first network device receives the service message from the third network device, it determines the target tunnel through which the service message reaches the next-hop network device from the Slice entry based on the Slice label carried in the service message.
  • multiple LSPs corresponding to different Color values are established between cross-domain end-to-end network devices.
  • Each LSP corresponds to an underlying network slicing resource, providing optional underlying network slicing resources for cross-domain transmission services. to meet different business needs.
  • FIG. 9 it is a schematic flow chart of a service transmission method provided by an embodiment of the present disclosure, including but not limited to the following steps S410-S420:
  • Step S410 The second network device adds multiple predefined color Color attribute information to the BGP-LU routing information.
  • Each Color attribute information includes a Color value and a slice Slice tag corresponding to the Color value;
  • Step S420 The second network device sends BGP-LU routing information to the first network device, so that the first network device creates a Slice table entry based on the BGP-LU routing information and extracts the Slice table entry from the Slice table based on the Slice label carried in the received service packet. Determine the destination tunnel for forwarding service packets.
  • the Slice entry includes multiple Slice labels and tunnel labels corresponding to the multiple Slice labels one by one.
  • the tunnel labels are used to identify the tunnel between the first network device and the second network device.
  • the first network device described in the embodiment of the present disclosure represents an intermediate node between cross-domain end-to-end network devices, and the second network device represents the next hop node of the first network device in the service flow transmission path;
  • the third network device represents the previous hop node of the first network device in the service flow transmission path.
  • the first network device can be ASBR1 or ASBR2; when the first network device is ASBR1, the second network device refers to PE1, and the third network device refers to ASBR2; when the first network device is ASBR2 , the second network device refers to ASBR1, and the third network device refers to PE2.
  • the second network device adds multiple Color attribute information to the BGP-LU routing information, where the Color attribute information may be BGP-LU extended community attribute information; the BGP-LU extended community attribute information includes a color value field and a slice. field, the Color value is carried in the color value field, and the Slice label is carried in the Slice field.
  • the Color attribute information may be BGP-LU extended community attribute information
  • the BGP-LU extended community attribute information includes a color value field and a slice. field, the Color value is carried in the color value field, and the Slice label is carried in the Slice field.
  • the BGP-LU extended community attribute information provided by the present disclosure extends the BGP-LU extended community attribute information of the related technology, as shown in Figure 3a, which is a schematic diagram of the format of the BGP-LU extended community attribute provided by the related technology ( See standard protocol RFC9012); as shown in Figure 3b, it is a schematic diagram of the format of the extended community attribute of BGP-LU routing information provided by an embodiment of the present disclosure.
  • the original BGP-LU extended community attributes include a Flags field and a Color Value. Flags is 2 bytes and has no specific semantics defined. The receiving device directly transmits this field transparently; in the embodiment of the present disclosure, Redefine the Flags field to 1 byte and add a 1-byte Slice field.
  • the Slice field carries the Slice label and the Color Value field carries the Color value.
  • the BGP-LU routing information in this embodiment of the present disclosure carries multiple BGP-LU extended community attribute information as shown in Figure 3b, and the Color value and Slice label in each Color attribute information are uniquely corresponding.
  • the BGP-LU routing information contains two BGP-LU extended community attribute information.
  • the Color value carried in the first BGP-LU extended community attribute information is 1 and the corresponding Slice label is Slice1.
  • the second BGP-LU extended community attribute information carries The Color value carried in the extended community attribute information is 2, and the corresponding Slice label is Slice2.
  • the BGP-LU routing information may also include the BGP routing prefix address (for example, 1.1.1.1/32).
  • the BGP route prefix address is determined by the egress PE node in the cross-domain network scenario.
  • the method in the embodiment of the present disclosure may also include:
  • Step S411 the second network device obtains the first BGP-LU label corresponding to itself;
  • Step S412 The second network device adds the first BGP-LU label to the BGP-LU routing information.
  • each network device in a cross-domain network scenario is configured with a unique BGP-LU label for the current BGP-LU route.
  • the BGP-LU labels of PE1, ASBR1, and ASBR2 correspond to 100, 101, and 102.
  • the BGP-LU routing information received by ASBR1 from PE1 carries the BGP-LU label (100) of PE1.
  • the second network device adds the first BGP-LU label corresponding to itself to the BGP-LU routing information before sending the BGP-LU routing information to the first network device.
  • FIG. 10 it is a schematic flow chart of a service transmission method provided by an embodiment of the present disclosure, including but not limited to the following step S510:
  • Step S510 The third network device sends the service packet carrying the slice label to the first network device, so that the first network device determines the target tunnel for the service packet to reach the next-hop network device from the Slice entry based on the Slice label.
  • the first network device described in the embodiment of the present disclosure represents an intermediate node between cross-domain end-to-end network devices, and the second network device represents the next hop node of the first network device in the service flow transmission path;
  • the third network device represents the previous hop node of the first network device in the service flow transmission path.
  • the first network device can be ASBR1 or ASBR2; when the first network device is ASBR1, the second network device refers to PE1, and the third network device refers to ASBR2; when the first network device is ASBR2 , the second network device refers to ASBR1, and the third network device refers to PE2.
  • the service packet may also carry a BGP-LU label.
  • the BGP-LU label is used to instruct the first network device to obtain the Slice entry index, and the Slice entry index is used to index the Slice entry.
  • the service packet sent by ASBR2 to ASBR1 carries BGP-LU label 101.
  • ASBR1 uses BGP-LU label 101 as the incoming BGP-LU label, and in the local BGP-LU Search the BGP-LU label entry in the label exchange table for the Slice entry index corresponding to BGP-LU label 101.
  • the Slice entry index obtained is 101-Slice-table, and then search for the Slice entry index 101Slice-table.
  • the corresponding Slice entry is obtained, and then the tunnel label corresponding to the Slice label in the service packet is obtained from the searched Slice entry.
  • the service packet may also carry a tunnel label.
  • the tunnel label is used to indicate the tunnel through which the third network device forwards the service packet. That is, the third network device forwards the service packet to the first network through the tunnel indicated by the tunnel label. equipment.
  • the service packet carries a label stack
  • the label stack includes at least one of the following labels from the outer layer to the inner layer: tunnel label, BGP-LU label, Slice label, Slice label, VPN label, and destination address.
  • various labels that need to be carried by the service packet are encapsulated in the form of a label stack to obtain a label stack containing multiple layers of labels.
  • the destination address, VPN label, Slice label, Slice label, BGP-LU label, and tunnel label are pushed into the label stack in sequence, so that from the outer layer to the inner layer, the tunnel label, BGP-LU label, and Slice label are sequentially , Slice label, VPN label, destination address.
  • the tunnel label indicates the tunnel through which the service packet reaches the first network device
  • the BGP-LU label indicates the incoming BGP-LU label in the BGP-LU label exchange table of the first network device
  • the Slice tag indicates whether the inner layer contains Slice.
  • the Slice label indicates the slice used to transmit the service packet
  • the VPN label indicates the VPN routing label
  • the destination address indicates the destination address of the service packet.
  • the structure of the above label stack is only exemplary. During specific implementation, the label stack may contain more or fewer labels.
  • FIG. 11a it is a schematic diagram of a cross-domain network scenario applicable to the embodiment of the present disclosure.
  • AS1 includes PE1 and ASBR1
  • AS2 includes PE1 and ASBR2.
  • AS1 and AS2 implement intra-network slicing in their respective networks through intra-domain network slicing technology. They are SR-TE1 and SR-TE2 respectively; inter-network slicing is implemented between AS1 and AS2 through inter-domain network slicing technology, which are sub-if1 and sub-if2 respectively.
  • This example solution uses BGP-LU to connect the networks of AS1 and AS2 to form multiple cross-domain end-to-end BGP-LU LSPs.
  • the specific implementation process is as follows:
  • Step S601 PE1 and ASBR1, ASBR1 and ASBR2, ASBR2 and PE2 establish BGP-LU neighbors respectively;
  • Step S602 PE1 sends BGP-LU routing information ⁇ 1.1.1.1/32+lable 100> to ASBR1.
  • the extended community attribute information carried by the BGP-LU routing information includes two ⁇ Color1+Slice1> and ⁇ Color2+Slice2> Color attribute information, label 100 here is the BGP-LU label corresponding to PE1;
  • Step S603 After receiving the BGP-LU routing information from PE1, ASBR1 generates the BGP-LU label exchange table as shown in Figure 11b, and also generates the Slice entry index 101-Slice-table.
  • the BGP-LU label exchange table includes the corresponding incoming BGP-LU label (in-lable), Slice table entry index (Slice-table) and out-BGP-LU label (out-lable).
  • the BGP-LU label exchange table of ASBR1 includes label exchange information ⁇ 101, 101- Slice-table,100>;
  • Step S604, ASBR1 generates the Slice table entry (101-Slice-table) as shown in Figure 11c.
  • the 101-Slice-table includes slice (Slice), out-slice (out-Slice), and next hop (next Hop).
  • 101-Slice-table includes two pieces of Slice information: ⁇ Slice1+Slice1+SR-TE1> and ⁇ Slice2+Slice2+SR-TE2>.
  • ASBR1 can obtain the output item based on the slice label Slice1.
  • the information ⁇ Slice1+SR-TE1> is iterated to SR-TE1, or the output information ⁇ Slice2+SR-TE2> obtained according to the slice label Slice2 is iterated to SR-TE2;
  • Step S605 After ASBR1 modifies the BGP-LU label 100 in the BGP-LU routing information to the BGP-LU label 101 corresponding to itself, it sends the BGP-LU routing information ⁇ 1.1.1.1/32+lable 101> to ASBR2.
  • the extended community attribute information carried in BGP-LU routing information includes two Color attribute information: ⁇ Color1+Slice1> and ⁇ Color2+Slice2>;
  • Step S606 After receiving the BGP-LU routing information from ASBR1, ASBR2 generates the BGP-LU label exchange table as shown in Figure 11d, and also generates the Slice entry index 102-Slice-table, which is in the BGP-LU label exchange table of ASBR2. , including label switching information ⁇ 102, 102-Slice-table, 101>;
  • Step S607 ASBR2 generates the Slice table entry (102-Slice-table) as shown in Figure 11e.
  • 102-Slice-table includes ⁇ Slice1+Slice1+sub-if1> and ⁇ Slice2+Slice2+sub-if2 >Two Slice information
  • ASBR2 can get the output information ⁇ Slice1+sub-if1> based on the slice label Slice1, iterate to sub-if1, or get the item information ⁇ Slice2+sub-if2> based on the slice label Slice2, iterate to sub -if2;
  • Step S608 After ASBR2 modifies the BGP-LU label 101 in the BGP-LU routing information to the BGP-LU label 102 corresponding to itself, it sends the BGP-LU routing information ⁇ 1.1.1.1/32+lable 102> to PE2.
  • the extended community attribute information carried in BGP-LU routing information includes two Color attribute information: ⁇ Color1+Slice1> and ⁇ Color2+Slice2>;
  • Step S609 PE2 receives the BGP-LU routing information from ASBR2. On the control plane, it generates the BGP-LU LSP entry as shown in Figure 11f based on the routing address prefix (Prefix) and Color value.
  • the BGP-LU LSP entry In the entry information corresponding to ⁇ 1.1.1.1/32+Color1>, the outgoing label stack is 102/Slice1, and it can be iterated to SR-TE1 through Color1 and the routing next hop address; ⁇ 1.1.1.1/32+Color2 >In the corresponding output information, the output label stack is 102/Slice2, and it can be iterated to SR-TE2 through Color2 and the routing next hop address.
  • Step S701 MP-BGP neighbor is established directly or indirectly between PE1 and PE2, and VPN routes are exchanged.
  • PE1 sends VPN1 route ⁇ RD1+10.1.1.1/32+VPN-lable 300> to PE2, carrying Color1;
  • Step S702 After receiving the route from VPN1, PE2 iterates to the BGP-LU entry ⁇ 1.1.1.1/32+Color1> based on the route next hop address 1.1.1.1 and Color1, and creates the route 10.1.1.1/ in the VPN1 routing table. 32 forwarding entries;
  • Step S703 PE2 receives the service packet with the destination address 10.1.1.1 from CE12 (Customer Edge, CE), searches the VPN1 routing table, and then based on the forwarding entry information of route 10.1.1.1/32,
  • the outer label stack of the encapsulated message is encapsulated in order from the inside out: the destination address 10.1.1.1, VPN routing label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 102, and tunnel label SR-TE1.
  • the Slice label can be obtained by applying for Base Special-Purpose MPLS Label to the Multi-Protocol Label Switching IANA.
  • the Slice label is used to identify its inner label as a Slice label.
  • the Slice label is called "Slice- mark”.
  • Step S704 After ASBR2 receives the service packet sent by PE2 from the slice tunnel SR-TE1, it pops the labels of the label stack in sequence, and obtains the Slice entry index Slice-table102 from the BGP-LU label exchange table based on the BGP-LU label 102. If the inner label in the service packet is Slice-mark, continue to use the inner label Slice1 to find the item information ⁇ Slice1+sub-if1> in Slice-table102. After the search is successful, perform label exchange and encapsulate the label stack. From the inside out, the destination address 10.1.1.1, VPN routing label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 101, and tunnel label sub-if1 are encapsulated in order;
  • Step S705 After ASBR1 receives the service packet sent by ASBR2 from the slice tunnel sub-if1, it pops the labels of the label stack in sequence, and obtains the Slice entry index Slice-table101 from the BGP-LU label exchange table based on the BGP-LU label 101. If the inner label in the service packet is Slice-mark, continue to use the inner label Slice1 to find the item information ⁇ Slice1+SR-TE1> in Slice-table102. After the search is successful, perform label exchange and encapsulate it sequentially from the inside to the outside. Destination address 10.1.1.1, VPN route label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 100, tunnel label SR-TE1;
  • Step S706 After PE1 receives the service packet sent by ASBR1 from the slice tunnel SR-TE1, it pops up the labels of the label stack in sequence. It can be determined to be a local pop-up based on the label. Then it continues to use the inner label 300 to find VPN1 and continues to use the inner label.
  • the layer destination address 10.1.1.1 searches for a route in the VPN1 routing table and sends the packet to CE11.
  • AS1 and AS2 need to pass through the core network C-ASBR that does not support slicing.
  • VPN services with different business requirements can still choose different BGP-LU LSPs in the slicing network, and the services pass through the core network C-ASBR.
  • BGP-LU LSPs for forwarding according to the traditional BGP-LU LSP path, the specific implementation process is as follows:
  • Step S801 PE1 and ASBR1, ASBR1 and C-ASBR, C-ASBR and ASBR2, ASBR2 and PE2 establish BGP-LU neighbors respectively;
  • Step S802 PE1 sends BGP-LU routing information ⁇ 1.1.1.1/32+lable 100> to ASBR1.
  • the extended community attribute information carried by the BGP-LU routing information includes two ⁇ Color1+Slice1> and ⁇ Color2+Slice2> Color attribute information, label 100 here is the BGP-LU label corresponding to PE1;
  • Step S803 After receiving the BGP-LU routing information from PE1, ASBR1 generates label switching information ⁇ in-lable: 101, Slice-table: 101-Slice-table, in the BGP-LU label switching table as shown in Figure 13b. out-lable: 100>;
  • Step S804 ASBR1 generates the Slice table entry (101-Slice-table) as shown in Figure 13c, which includes ⁇ Slice1+Slice1+SR-TE1> and ⁇ Slice2+Slice2+SR-TE2>.
  • ASBR1 can obtain the output information ⁇ Slice1+SR-TE1> based on the slice label Slice1 and iterate to SR-TE1, or obtain the output information ⁇ Slice2+SR-TE2> based on the slice label Slice2 and iterate to SR-TE2;
  • Step S805 After ASBR1 modifies the BGP-LU label 100 in the BGP-LU routing information to the BGP-LU label 101 corresponding to itself, it sends the BGP-LU routing information ⁇ 1.1.1.1/32+lable 101> to C-ASBR.
  • the extended community attribute information carried by the BGP-LU routing information includes two Color attribute information: ⁇ Color1+Slice1> and ⁇ Color2+Slice2>;
  • Step S806 C-ASBR generates the BGP-LU label exchange table as shown in Figure 13d, including incoming BGP-LU label (in-lable), outgoing BGP-LU label (out-lable) and next hop (next Hop) Three items, for example, in-lable is 201, out-lable is 101, and next Hop is if2.
  • Step S807 C-ASBR modifies the BGP-LU label 100 in the BGP-LU routing information to the BGP-LU label 201 corresponding to itself, and sends the BGP-LU routing information ⁇ 1.1.1.1/32+lable 201> to PE2. Transparently transmits the extended community attributes, carrying the original extended community information ⁇ Color1+Slice1> and ⁇ Color2+Slice2>;
  • Step S808 ASBR2 receives the BGP-LU routing information from C-ASBR, generates the BGP-LU label exchange table as shown in Figure 13e, and also generates the Slice entry index 102-Slice-table, which is included in the BGP-LU label exchange table of ASBR2. Includes label switching information ⁇ 102, 102-Slice-table, 201>;
  • Step S809 ASBR2 generates the Slice table entry (102-Slice-table) as shown in Figure 13f.
  • 102-Slice-table includes two slices: ⁇ Slice1+Slice1+if1> and ⁇ Slice2+Slice2+if1> information;
  • Step S21 ASBR2 modifies the BGP-LU label 201 in the BGP-LU routing information to the BGP-LU label 102 corresponding to itself, and then sends the BGP-LU routing information ⁇ 1.1.1.1/32+lable 102> to PE2.
  • the extended community attribute information carried in BGP-LU routing information includes two Color attribute information: ⁇ Color1+Slice1> and ⁇ Color2+Slice2>;
  • Step S811, PE2 receives the BGP-LU routing information from ASBR2. On the control plane, it generates a BGP-LU LSP entry entry based on the routing prefix address and Color value (consistent with the example in Figure 11f).
  • BGP-LU LSP entry entry in the ⁇ 1.1.1.1/32+Color1> entry export information, label stack 102/Slice1 is taken out, and iterates to SR-TE1 through Color1 and the routing next hop address; ⁇ 1.1.1.1/32+Color2> entry export In the information, the label stack 102/Slice2 is taken out, and it is iterated to SR-TE2 through Color2 and the routing next hop address.
  • Step S901, Step S701, MP-BGP neighbor is established directly or indirectly between PE1 and PE2, and VPN routes are exchanged.
  • PE1 sends VPN1 route ⁇ RD1+10.1.1.1/32+VPN-lable300> to PE2, carrying Color1;
  • Step S902 After receiving the route from VPN1, PE2 iterates to the BGP-LU entry ⁇ 1.1.1.1/32+Color1> based on the route next hop address 1.1.1.1 and Color1, and creates the route 10.1.1.1/ in the VPN1 routing table. 32 forwarding entries;
  • Step S903 PE2 receives the service packet with the destination address 10.1.1.1 from CE12 (Customer Edge, CE), searches the VPN1 routing table, and then based on the forwarding entry information of route 10.1.1.1/32, The outer label stack of the encapsulated message is encapsulated in order from the inside out: the destination address 10.1.1.1, VPN routing label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 102, and tunnel label SR-TE1.
  • CE12 Customer Edge, CE
  • the outer label stack of the encapsulated message is encapsulated in order from the inside out: the destination address 10.1.1.1, VPN routing label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 102, and tunnel label SR-TE1.
  • Step S904 After ASBR2 receives the service packet sent by PE2 from the slice tunnel SR-TE1, it pops the labels of the label stack in sequence, and obtains the Slice entry index Slice-table102 from the BGP-LU label exchange table based on the BGP-LU label 102. If the inner label in the service packet is Slice-mark, continue to use the inner label Slice1 to find the item information ⁇ Slice1+if1> in Slice-table102. After the search is successful, perform label exchange and encapsulate the label stack from the inside out. Encapsulate the destination address 10.1.1.1, VPN route label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 201, and tunnel label if1 in sequence, and then send the service packet to C-ASBR via if1;
  • Step S905 C-ASBR receives the service packet from ASBR2, pops the labels of the label stack in sequence, and determines the output information from the BGP-LU label exchange table according to the BGP-LU label 201.
  • the output information includes the output BGP-LU label 101, Exit the tunnel label if2, then perform label switching, encapsulate the label stack, and encapsulate the destination address 10.1.1.1, VPN routing label 300, Slice label Slice1, Slice mark Slice-mark, BGP-LU label 101, and tunnel label if2 from the inside out. Then send the service message to ASBR1 via if2;
  • Step S906 After receiving the service packet from C-ASBR, ASBR1 pops up the labels of the label stack in sequence, and obtains the Slice entry index Slice-table101 from the BGP-LU label exchange table based on BGP-LU label 101. If the service packet contains If the layer label is Slice-mark, continue to use the inner layer label Slice1 to find the item information ⁇ Slice1+SR-TE1> in Slice-table102. After the search is successful, perform label exchange and encapsulate the destination addresses 10.1.1.1, 10.1.1.1, and SR-TE1 from the inside out.
  • VPN routing label 300 Slice label Slice1, Slice mark Slice-mark, BGP-LU label 100, tunnel label SR-TE1, and then sends the service packet to ASBR1 via SR-TE1;
  • Step S907 After PE1 receives the service packet from ASBR1, it pops up the labels of the label stack in sequence. It can be determined as a local pop-up based on the label. Then it continues to use the inner label 300 to find VPN1, and continues to use the inner destination address 10.1.1.1 in VPN1. Find the route in the routing table and send the packet to CE11.
  • the disclosed embodiment uses BGP-LU technology to realize the splicing of different networks.
  • BGP-LU routing carries multiple Color attribute information during network interaction, and the network edge device is established based on prefix and Color.
  • BGP-LU LSP multiple BGP-LU LSPs can be established with the same prefix and different Colors.
  • Each BGP-LU LSP selects different low-level logical slices based on Color.
  • multi-layer label stack technology is used to push the slice label into the inner layer of the BGP-LU label, so that after the service traverses the non-sliced network and enters the sliced network, it still has the ability to select slice resources and solves the problem of sliced networks. Deployed step by step and compatible with existing networks.
  • An embodiment of the present disclosure also provides a first network device.
  • the first network device 10 includes but is not limited to:
  • the memory 12 stores program instructions. When executed by the processor 11, the program instructions cause the processor 11 to execute the service transmission method executed on the first network device side as described in any of the above embodiments.
  • processor 11 and memory 12 may be connected through a bus or other means.
  • the processor 11 can be a central processing unit (Central Processing Unit, CPU).
  • the processor can also be other general-purpose processors, Digital Signal Processor (DSP), Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • the processor 11 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of the present disclosure.
  • the memory 12 can be used to store non-transitory software programs and non-transitory computer executable programs, such as the service transmission method executed on the first network device side described in any embodiment of the present disclosure.
  • the processor 11 implements the above-mentioned service transmission method executed on the first network device side by running non-transient software programs and instructions stored in the memory 12 .
  • the memory 12 may include a storage program area and a storage data area, wherein the storage program area may store an operating system and an application program required for at least one function; the storage data area may store the service transmission method executed on the first network device side as described above or Training methods for spectrum sensing models.
  • the memory 12 may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage device.
  • the memory 12 optionally includes memories remotely located relative to the processor 11 , and these remote memories can be connected to the processor 11 through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
  • the non-transitory software programs and instructions required to implement the above-mentioned service transmission method executed on the first network device side are stored in the memory 12.
  • the first method provided by any embodiment of the present disclosure is executed.
  • the embodiment of the present disclosure also provides a second network device.
  • the second network device 20 includes but is not limited to:
  • the memory 22 stores program instructions. When executed by the processor 21, the program instructions cause the processor 21 to execute the service transmission method executed on the second network device side as described in any of the above embodiments.
  • processor 21 and memory 22 may be connected through a bus or other means.
  • the processor 21 can be a central processing unit (Central Processing Unit, CPU).
  • the processor can also be other general-purpose processors, Digital Signal Processor (DSP), Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • the processor 21 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of the present disclosure.
  • the memory 22 can be used to store non-transitory software programs and non-transitory computer executable programs, such as the service transmission method executed on the second network device side described in any embodiment of the present disclosure.
  • the processor 21 implements the above-mentioned service transmission method executed on the second network device side by running non-transient software programs and instructions stored in the memory 22 .
  • the memory 22 may include a stored program area and a stored data area, wherein the stored program area may store an operating system and an application program required for at least one function; the stored data area may store the service transmission method executed on the second network device side as described above or Training methods for spectrum sensing models.
  • memory 22 may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device.
  • the memory 22 optionally includes memory located remotely relative to the processor 21, and these remote memories can be connected to the processor 21 through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
  • the non-transitory software programs and instructions required to implement the above-mentioned service transmission method executed on the second network device side are stored in the memory 22.
  • the first step provided by any embodiment of the present disclosure is executed. 2.
  • the embodiment of the present disclosure also provides a third network device.
  • the third network device 30 includes but is not limited to:
  • Program instructions are stored on the memory 32. When executed by the processor 31, the program instructions cause the processor 31 to execute the service transmission method executed by the third network device side as described in any of the above embodiments.
  • processor 31 and memory 32 may be connected through a bus or other means.
  • the processor 31 can be a central processing unit (Central Processing Unit, CPU).
  • the processor can also be other general-purpose processors, Digital Signal Processor (DSP), Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • the processor 31 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of the present disclosure.
  • the memory 32 can be used to store non-transitory software programs and non-transitory computer executable programs, such as the service transmission method executed on the third network device side described in any embodiment of the present disclosure.
  • the processor 31 implements the above-mentioned service transmission method executed by the third network device side by running the non-transient software program and instructions stored in the memory 32 .
  • the memory 32 may include a stored program area and a stored data area, wherein the stored program area may store an operating system and an application program required for at least one function; the stored data area may store the service transmission method executed by the third network device side as described above or Training methods for spectrum sensing models.
  • memory 32 may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage device.
  • the memory 32 optionally includes memory located remotely relative to the processor 31 , and these remote memories may be connected to the processor 31 through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
  • the non-transitory software programs and instructions required to implement the above-mentioned service transmission method executed on the third network device side are stored in the memory 32.
  • the third step provided by any embodiment of the present disclosure is executed.
  • Embodiments of the present disclosure also provide a computer-readable storage medium.
  • the computer-readable storage medium stores program instructions. When the program instructions are executed by the computer, the service transmission method described in any of the above embodiments is implemented.
  • the computer storage media of the embodiments of the present disclosure may be any combination of one or more computer-readable media.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.
  • the computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples (non-exhaustive list) of computer readable storage media include: electrical connections having one or more conductors, portable computer disks, hard drives, random access memory (RAM), read only memory (ROM), Erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including, but not limited to, wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.
  • Computer program code for performing operations of the present disclosure may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages, or a combination thereof.
  • Programming language such as "C” or a similar programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through the Internet). connect).
  • LAN local area network
  • WAN wide area network
  • Internet service provider such as an Internet service provider through the Internet. connect
  • Embodiments of the present disclosure provide a computer program product.
  • the computer program product stores program instructions. When executed by a computer, the program instructions enable the computer to implement the service transmission method described in any of the above embodiments.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开实施例提供了一种业务传输方法、设备和存储介质,其中,该方法包括:第一网络设备接收来自第二网络设备的边界网关协议-标签单播BGP-LU路由信息,所述BGP-LU路由信息包括多个颜色Color属性信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签;当接收到来自第三网络设备的业务报文,根据所述业务报文携带的Slice标签从Slice表项中确定目标隧道,通过所述目标隧道转发所述业务报文给所述第二网络设备。在跨域的端到端网络设备间建立起多条分别对应不同Color值的LSP,每条LSP对应一个底层网络切片资源。

Description

业务传输方法、设备和存储介质
相关申请的交叉引用
本申请基于申请号为202210608576.0、申请日为2022年5月31日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本公开实施例涉及通信技术,特别是涉及一种业务传输方法、设备和存储介质。
背景技术
边界网关协议(Border Gateway Protocol,BGP)是一种自治系统(Autonomous System,AS)间的路由协议,用于在不同的AS域之间交换路由信息。
当出口提供商边缘设备(Provider Edge,PE)和入口PE位于不同的AS域时,可以通过BGP标签单播(BGP lableed Unicast,BGP-LU)机制将出口PE的路由传播给入口PE,在传播过程中交换标签,从而在跨域的端到端设备间建立起标签交换路径(lable Switching Path,LSP),实现跨域网络拼接。
但是,BGP-LU路由在跨域传播过程中,由于是基于路由地址前缀创建LSP,一个前缀只能创建一个LSP,无法同时实现底层网络切片资源选择,所以不同的业务在跨域的两个端点设备之间只能通过固定的网络切片资源进行转发。
发明内容
本公开实施例提供一种业务传输方法、网络设备、计算机可读存储介质和计算机程序产品,旨在解决跨域的端到端设备间无法实现网络切片资源选择的问题。
第一方面,本公开实施例提供了一种业务传输方法,应用于第一网络设备,所述方法包括:
接收来自第二网络设备的边界网关协议-标签单播BGP-LU路由信息,所述BGP-LU路由信息包括多个颜色Color属性信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签;
根据所述BGP-LU路由信息创建Slice表项,所述Slice表项中包括多个所述Slice标签、与多个所述Slice标签逐一对应的隧道标签,所述隧道标签用于标识所述第一网络设备和所述第二网络设备之间的隧道;
当接收到来自第三网络设备的业务报文,根据所述业务报文携带的Slice标签从所述Slice表项中确定目标隧道,通过所述目标隧道转发所述业务报文给所述第二网络设备。
第二方面,本公开实施例提供了一种业务传输方法,应用于第二网络设备,所述方法包括:
将预先定义的多个颜色Color属性信息添加至BGP-LU路由信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签;
向第一网络设备发送所述BGP-LU路由信息,以使得所述第一网络设备根据所述BGP-LU路由信息创建Slice表项以及根据接收到的业务报文携带的Slice标签从所述Slice表项中确定转发所述业务报文的目标隧道;
其中,所述Slice表项中包括多个所述Slice标签、与多个所述Slice标签逐一对应的隧道标签,所述隧道标签用于标识所述第一网络设备和所述第二网络设备之间的隧道。
第三方面,本公开实施例提供了一种业务传输方法,应用于第三网络设备,所述方法包括:
向第一网络设备发送携带切片Slice标签的业务报文,以使得所述第一网络设备根据所述Slice标签从Slice表项中确定所述业务报文到达下一跳网络设备的目标隧道。
第四方面,本公开实施例提供了一种网络设备,包括:
处理器和存储器;
所述存储器上存储有程序指令,所述程序指令当被所述处理器执行时使得所述处理器执行如上任一所述的业务传输方法。
第五方面,本公开实施例提供了一种计算机可读存储介质,存储有程序指令,所述程序指令被计算机执行时,实现如上任一所述的业务传输方法。
第六方面,本公开实施例提供了一种计算机程序产品,所述计算机程序产品存储有程序指令,所述程序指令在由计算机执行时,使得所述计算机实施如上任一所述的的业务传输方法。
本公开实施例,通过BGP-LU路由信息携带多个Color属性信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签,使得第一网络设备从第二网络设备获得BGP-LU路由信息后,创建Slice表项,所述Slice表项中包括多个所述Slice标签、与多个所述Slice标签逐一对应的隧道标签。当第一网络设备接收到来自第三网络设备业务报文,则根据业务报文携带的Slice标签从Slice表项中确定所 述业务报文到达下一跳网络设备的目标隧道。如此,在跨域的端到端网络设备间建立起多条分别对应不同Color值的LSP,每条LSP对应一个底层网络切片资源,为跨域传输的业务提供了可选择的底层网络切片资源,以满足不同的业务要求。
附图说明
图1是相关技术提供的跨域端到端设备间建立LSP的场景示意图;
图2是本公开的一个实施例提供的业务传输方法的流程示意图;
图3a是相关技术提供的BGP-LU扩展团体属性的格式示意图;
图3b是本公开实施例提供的一种BGP-LU扩展团体属性的格式示意图;
图4是本公开实施例提供的创建Slice表项的流程示意图;
图5是本公开实施例提供的确定目标隧道的流程示意图;
图6是本公开的另一个实施例提供的业务传输方法的流程示意图;
图7是本公开的另一个实施例提供的业务传输方法的流程示意图;
图8是本公开的另一个实施例提供的业务传输方法的流程示意图;
图9是本公开的另一个实施例提供的业务传输方法的流程示意图;
图10是本公开的另一个实施例提供的业务传输方法的流程示意图;
图11a是本公开示例一中的跨域网络场景示意图;
图11b是本公开示例一中的ASBR1上的BGP-LU标签交换表的示意图;
图11c是本公开示例一中的Slice表项101-Slice-table的示意图;
图11d是本公开示例一中的ASBR2上的BGP-LU标签交换表的示意图;
图11e是本公开示例一中的Slice表项102-Slice-table的示意图;
图11f是本公开示例一中的PE2上的BGP-LU LSP入口表项的示意图;
图12是本公开示例二中的业务报文跨域传输场景示意图;
图13a是本公开示例三中的跨域网络场景示意图;
图13b是本公开示例三中的ASBR1上的BGP-LU标签交换表;
图13c是本公开示例三中的Slice表项101-Slice-table的示意图;
图13d是本公开示例三中的C-ASBR上的BGP-LU标签交换表;
图13e是本公开示例三中的ASBR2上的BGP-LU标签交换表;
图13f是本公开示例三中的Slice表项102-Slice-table的示意图;
图14是本公开示例四中的业务报文跨域传输场景示意图;
图15是本公开实施例提供的第一网络设备的结构示意图;
图16是本公开实施例提供的第二网络设备的结构示意图;
图17是本公开实施例提供的第三网络设备的结构示意图。
具体实施方式
为了使本公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本公开,并不用于限定本公开。
应了解,在本公开实施例的描述中,如果有描述到“第一”、“第二”等只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组,包括单项或复数项的任意组。例如,a、b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c,或者,a和b和c,其中a,b,c可以是单个,也可以是多个。
此外,下面所描述的本公开各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
边界网关协议(Border Gateway Protocol,BGP)是一种自治系统(Autonomous System,AS)间的路由协议,用于在不同的AS域之间交换路由信息。当出口提供商边缘设备(Provider Edge,PE)和入口PE位于不同的AS域时,可以通过BGP标签单播(BGP lableed Unicast,BGP-LU)机制将出口PE的路由传播给入口PE,在传播过程中交换标签,从而在跨域的端到端设备间建立起标签交换路径(lable Switching Path,LSP),实现跨域网络拼接。
如图1所示,为相关技术提供的跨域端到端设备间建立LSP的场景示意图。在图1所示场景中,包括AS1和AS2两个AS域,其中,AS1包括PE1和ASBR1,AS2包括PE1和ASBR2,PE1、PE2为提供商边缘设备(Provider Edge,PE),ASBR1和ASBR2为自治系统边界路由器(Autonomous System Boundary Router,ASBR)。AS1和AS2分别被划分成两个逻辑切片SR-TE1和SR-TE2,其中SR-TE1对应的Color值为Color1,SR-TE2对应的 Color值为Color2。按照传统的BGP-LU机制,PE1经ASBR1、ASBR2向PE2通告BGP-LU信息,BGP-LU信息中携带路由地址前缀(例如,1.1.1.1/32),BGP-LU信息在跨域传播过程中,各节点基于路由地址前缀创建LSP,一个前缀只能创建一条LSP,无法同时实现底层网络切片资源选择,即使BGP-LU信息能携带多个Color值,也只能固定一条底层逻辑切片进行业务转发,也就是说,不同的业务在跨域的两个端点设备之间只能通过固定的网络切片资源进行转发。举例来说,BGP-LU信息除携带路由地址前缀(1.1.1.1/32)之外,还携带两个Color值(Color1和Color2),但由于传统机制下每个前缀只能建立一条LSP,所以只能基于Color1固定选择SR-TE1或者基于Color2固定选择SR-TE2构建一条LSP(例如图1中基于Color1建立的LSP1),无法分别选择SR-TE1和SR-TE2创建多条LSP,因此也就无法实现跨域场景下端到端的网络切片。
为了解决上述问题,本公开实施例提供了本公开实施例提供一种业务传输方法、网络设备、计算机可读存储介质和计算机程序产品,旨在解决跨域场景下端到端设备间无法实现网络切片资源选择的问题。
如图2所示,为本公开实施例提供的一种业务传输方法的流程示意图。该方法的实现过程包括但不限于如下步骤S110-S130:
步骤S110,第一网络设备接收来自第二网络设备的边界网关协议-标签单播BGP-LU路由信息,BGP-LU路由信息包括多个颜色Color属性信息,每个Color属性信息包括Color值和Color值对应的切片Slice标签。
步骤S120,第一网络设备根据BGP-LU路由信息创建Slice表项,Slice表项中包括多个Slice标签、与多个Slice标签逐一对应的隧道标签,隧道标签用于标识第一网络设备和第二网络设备之间的隧道;
步骤S130,第一网络设备当接收到来自第三网络设备的业务报文,根据业务报文携带的Slice标签从Slice表项中确定目标隧道,通过目标隧道转发业务报文给第二网络设备。
需说明的是,本公开实施例描述的第一网络设备表征跨域端到端网络设备之间的中间节点,第二网络设备表征业务流传输路径中第一网络设备的下一跳节点;第三网络设备表征业务流传输路径中第一网络设备的上一跳节点。以图1所示场景为例,第一网络设备可以为ASBR1或者ASBR2;当第一网络设备为ASBR1时,第二网络设备指PE1,第三网络设备指ASBR2;当第一网络设备为ASBR2时,第二网络设备指ASBR1,第三网络设备指PE2。
下面依次对图2所示的步骤进行介绍。
在步骤S110中,第一网络设备从第二网络设备接收BGP-LU路由信息,该BGP-LU路由信息携带多个Color属性信息,每个Color属性信息包括Color值和Color值对应的切片Slice标签。
示例性的,Color属性信息可以承载于BGP-LU扩展团体属性信息中。应了解,本公开实施例提供的BGP-LU扩展团体属性信息对传统的BGP-LU扩展团体属性信息进行了扩展,如图3a所示,为相关技术提供的BGP-LU扩展团体属性的格式示意图(参见标准协议RFC9012);如图3b所示,为本公开实施例提供的一种BGP-LU路由信息的扩展团体属性的格式示意图,本公开实施例中,扩展团体属性信息包括标志(Flags)字段、切片(Slice)字段和颜色值(Color Value)字段。原BGP-LU扩展团体属性中,包括标志(Flags)字段和颜色值(Color Value),其中Flags为2字节,未定义具体语义,接收设备直接透传该字段;而本公开实施例中,将Flags字段重新定义为1字节,并增加1字节的Slice字段,通过Slice字段承载Slice标签,通过Color Value字段承载Color值。
可以理解的是,本公开实施例的BGP-LU路由信息携带有多个如图3b所示的BGP-LU扩展团体属性信息,每个BGP-LU扩展团体属性信息中的Color值和Slice标签是唯一对应的。例如,BGP-LU路由信息中包含两个BGP-LU扩展团体属性信息,第一个BGP-LU扩展团体属性信息中承载的Color值为1、对应的Slice标签为Slice1,第二个BGP-LU扩展团体属性信息中承载的Color值为2、对应的Slice标签为Slice2。
在步骤S120中,第一网络设备根据BGP-LU路由信息创建Slice表项,可以理解的是,该Slice表项中包括了多个Slice标签和多个隧道标签,这里的多个Slice标签和多个隧道标签是逐一对应的关系,以使得第一网络设备从Slice表项中查找与Slice标签对应的隧道标签,进而可以根据隧道标签确定对应的目标隧道。例如,Slice表项中包含了两个Slice标签(Slice1和Slice2),Slice1对应的隧道标签为SR-TE1,Slice2对应的隧道标签为SR-TE2。
示例性的,如图4所示,根据BGP-LU路由信息创建Slice表项,具体可以包括以下步骤:
步骤S121,预先定义第一网络设备和第二网络设备之间的每个隧道对应的隧道标签。
可以理解的是,为第一网络设备和第二网络设备之间的每个隧道分别配置一个隧道标签,例如,第一网络设备和第二网络设备之间通过切片形成有两个隧道,分别为这两个隧道配置标签SR-TE1、SR-TE2。
步骤S122,根据每个隧道对应的Color值,确定每个隧道标签对应的Slice标签。
可以理解的是,每个隧道预先定义有Color值,第一网络设备和第二网络设备之间的每个隧道具有不同的Color值,进而可根据每个Color值在BGP-LU路由信息中对应的Slice标签,确定每个隧道对应的Slice标签,将每个隧道对应的Slice标签和隧道标签建立对应关系。
步骤S123,根据Slice标签和隧道标签的对应关系,获得Slice表项。
可以理解的是,将对应的Slice标签和隧道标签记录于Slice表项中,形成Slice表项。例如,Slice1和SR-TE1均对应Color1,Slice2和SR-TE2均对应Color2,则将Slice1和SR-TE1、Slice2和SR-TE2分别建立对应关系,并记录在Slice表项中。
步骤S130中,根据业务报文携带的Slice标签从Slice表项中确定目标隧道,具体可以包括如图5所示的步骤:
步骤S131,从Slice表项中确定与业务报文携带的Slice标签对应的隧道标签;
步骤S132,根据隧道标签确定目标隧道。
举例来说,如果业务报文携带的Slice标签为Slice1,那么可以从Slice表项中确定与Slice1对应的隧道标签为SR-TE1;如果业务报文携带的Slice标签为Slice2,那么可以从Slice表项中确定与Slice2对应的隧道标签为SR-TE2。如此,实现根据业务报文的不同业务需求,选择不同的切片隧道进行报文转发,达到跨域场景下端到端网络切片的目的。
本公开实施例中,BGP-LU路由信息还可以包括与第二网络设备对应的第一BGP-LU标签。具体实现时,跨域场景下的每个网络设备可以分别针对当前BGP-LU路由配置唯一的BGP-LU标签。例如,PE1、ASBR1、ASBR2的BGP-LU标签对应为100、101、102,ASBR1从PE1接收的BGP-LU路由信息中携带PE1的BGP-LU标签100。
示例性的,在接收来自第二网络设备的BGP-LU路由信息之后,本公开实施例的方法还可以包括如图6所示的步骤:
步骤S210,获取与自身对应的第二BGP-LU标签。
可以理解的是,第一BGP-LU标签用于表征第二网络设备针对当前BGP-LU路由(例如前缀为1.1.1.1/32的路由)对应的BGP-LU标签,第二BGP-LU标签用于表征第一网络设备针对当前BGP-LU路由(前缀为1.1.1.1/32的路由)对应的BGP-LU标签。
步骤S220,将第二BGP-LU标签作为入BGP-LU标签,将第一BGP-LU标签作为出BGP-LU标签,以及生成与入BGP-LU标签和出BGP-LU标签对应的Slice表项索引。
其中,Slice表项索引用于索引与入BGP-LU标签对应的Slice表项。
可以理解的是,入BGP-LU标签为本节点自身(即第一网络设备)的BGP-LU标签,出BGP-LU标签为业务传输路径中下一跳节点(即第二网络设备)的BGP-LU标签,本公开实施例通过构建与入BGP-LU标签对应的Slice表项索引,使得第一网络设备可根据Slice表项索引查找与入BGP-LU标签对应的Slice表项。
步骤S230,将入BGP-LU标签、Slice表项索引和出BGP-LU标签的对应关系记录于预先创建的BGP-LU标签交换表。
例如,入BGP-LU标签为102,Slice表项索引为102-Slice-table,出BGP-LU标签为101,将上述入BGP-LU标签、Slice表项索引和出BGP-LU标签的对应关系记录于预先创建的BGP-LU标签交换表中。
需说明的是,第一网络设备在获取与自身对应的第二BGP-LU标签之后,还包括以下步骤:
步骤S211,将BGP-LU路由信息中的第一BGP-LU标签更换为第二BGP-LU标签,得到新的BGP-LU路由信息;
步骤S212,将新的BGP-LU路由信息发送给第三网络设备。
可以理解的是,第一网络设备从第二网络设备接收到BGP-LU路由信息后,将原BGP-LU路由信息中的第一BGP-LU标签(即第二网络设备的BGP-LU标签)更换为第二BGP-LU标签(即第一网络设备自身的BGP-LU标签),将更换BGP-LU标签后的BGP-LU路由信息发送给第三网络设备,以达到交换标签的目的。
可以理解的是,第三网络设备向第一网络设备发送的业务报文中还携带BGP-LU标签,以使得第一网络设备根据业务报文中的BGP-LU标签查找对应的Slice表项索引,进而根据Slice表项索引获取对应的Slice表项。
具体的,在根据业务报文携带的Slice标签从Slice表项中确定目标隧道之前,本公开实施例的方法还包括如图7所示的步骤:
步骤S311,将业务报文携带的BGP-LU标签作为入BGP-LU标签,从预先创建的BGP-LU标签交换表中获取与入BGP-LU标签对应的Slice表项索引;
步骤S312,根据Slice表项索引获取Slice表项。
举例来说,ASBR1从ASBR2接收的业务报文中携带BGP-LU标签101,则将BGP-LU标签101作为入BGP-LU标签,在BGP-LU标签交换表的入BGP-LU标签项中查找与BGP-LU标签101对应的Slice表项索引,假设查找得到的Slice表项索引为101-Slice-table,则进而查找与Slice表项索引101Slice-table对应的Slice表项,这样可以从查找得到的Slice表项中获取与业务报文中的Slice标签对应的隧道标签。
需说明的是,在通过目标隧道转发业务报文给第二网络设备之前,本公开实施例的方法还可以包括如图8所示的步骤:
步骤S321,从预先创建的BGP-LU标签交换表中获取与入BGP-LU标签对应的出BGP-LU标签;
步骤S322,将业务报文携带的BGP-LU标签更换为出BGP-LU标签。
可以理解的是,第一网络设备将从第三网络设备接收的原业务报文中的BGP-LU标签更换为出BGP-LU标签,得到新的业务报文并转发给下一跳节点(第二网络设备),以使得下一跳节点可以根据接收到的业务报文中的BGP-LU标签获取Slice表项索引。
需说明的是,业务报文还携带隧道标签,业务报文携带的隧道标签用于指示业务报文到达第一网络设备所经过的隧道。
在通过目标隧道转发业务报文给第二网络设备之前,本公开实施例的方法还可以包括:将业务报文携带的隧道标签更换为目标隧道对应的隧道标签。
示例性的,业务报文携带标签栈,标签栈从外层往内层包括以下标签中的至少之一:隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。
具体而言,将业务报文需携带的各种标签以标签栈形式进行封装,得到包含多层标签的标签栈。第一网络设备接收到业务报文后,按照从外层向内层的顺序依次弹出标签。示例性的,标签栈从外层往内层可以依次包括隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。其中,隧道标签指示业务报文到达第一网络设备所经过的隧道,BGP-LU标签指示第一网络设备的BGP-LU标签交换表中的入BGP-LU标签,Slice标记指示内层是否包含Slice标签,Slice标签指示传输业务报文所用的切片,VPN标签指示VPN路由标签,目的地址指示业务报文的目的地址。
需说明的是,当接收到来自第三网络设备的业务报文,本公开实施例的方法还包括:按照从外层往内层的顺序依次弹出标签栈的各层标签;当弹出BGP-LU标签后没有弹出Slice标记,则确定标签栈没有携带Slice标签,将BGP-LU标签作为入BGP-LU标签,从预先创建的BGP-LU标签交换表中获取与入BGP-LU标签对应的出BGP-LU标签,将业务报文携带的BGP-LU标签更换为出BGP-LU标签后转发给第二网络设备。
具体而言,当业务报文携带的标签栈从外层往内层依次包括隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址时,第一网络设备接收到业务报文后,按照从外层往内层的顺序依次弹出标签栈的各层标签,首先弹出隧道标签,其次弹出BGP-LU标签,如果BGP-LU标签后面弹出的标签不是预设Slice标记,说明该标签栈内层没有Slice标签,这种情况下,第一网络设备可以将BGP-LU标签作为入BGP-LU标签,从预先创建的BGP-LU标签交换表中获取与入BGP-LU标签对应的出BGP-LU标签,将业务报文携带的BGP-LU标签更换为出BGP-LU标签之后,将业务报文直接转发给第二网络设备。
本公开实施例,通过BGP-LU路由信息携带多个Color属性信息,每个Color属性信息包括Color值和Color值对应的Slice标签,使得第一网络设备从第二网络设备获得BGP-LU路由信息后,创建Slice表项,Slice表项中包括多个Slice标签、与多个Slice标签逐一对应的隧道标签。当第一网络设备接收到来自第三网络设备业务报文,则根据业务报文携带的Slice标签从Slice表项中确定业务报文到达下一跳网络设备的目标隧道。如此,在跨域的端到端网络设备间建立起多条分别对应不同Color值的LSP,每条LSP对应一个底层网络切片资源,为跨域传输的业务提供了可选择的底层网络切片资源,以满足不同的业务需求。
如图9所示,为本公开实施例提供的一种业务传输方法的流程示意图,包括但不限于如下步骤S410-S420:
步骤S410,第二网络设备将预先定义的多个颜色Color属性信息添加至BGP-LU路由信息,每个Color属性信息包括Color值和Color值对应的切片Slice标签;
步骤S420,第二网络设备向第一网络设备发送BGP-LU路由信息,以使得第一网络设备根据BGP-LU路由信息创建Slice表项以及根据接收到的业务报文携带的Slice标签从Slice表项中确定转发业务报文的目标隧道。
其中,Slice表项中包括多个Slice标签、与多个Slice标签逐一对应的隧道标签,隧道标签用于标识第一网络设备和第二网络设备之间的隧道。
需说明的是,本公开实施例描述的第一网络设备表征跨域端到端网络设备之间的中间节点,第二网络设备表征业务流传输路径中第一网络设备的下一跳节点;第三网络设备表征业务流传输路径中第一网络设备的上一跳节点。以图1所示场景为例,第一网络设备可以为ASBR1或者ASBR2;当第一网络设备为ASBR1时,第二网络设备指PE1,第三网络设备指ASBR2;当第一网络设备为ASBR2时,第二网络设备指ASBR1,第三网络设备指PE2。
下面依次对图9所示的步骤进行介绍。
在步骤S410中,第二网络设备向BGP-LU路由信息添加多个Color属性信息,其中,Color属性信息可以为BGP-LU扩展团体属性信息;BGP-LU扩展团体属性信息包括颜色值字段和切片字段,Color值承载于颜色值字段中,Slice标签承载于Slice字段中。
应了解,本公开提供的BGP-LU扩展团体属性信息对相关技术的BGP-LU扩展团体属性信息进行了扩展,如图3a所示,为相关技术提供的BGP-LU扩展团体属性的格式示意图(参见标准协议RFC9012);如图3b所示,为本公开实施例提供的一种BGP-LU路由信息的扩展团体属性的格式示意图。原BGP-LU扩展团体属性中,包括标志(Flags)字段和颜色值(Color Value),其中Flags为2字节,未定义具体语义,接收设备直接透传该字段;而本公开实施例中,将Flags字段重新定义为1字节,并增加1字节的Slice字段,通过Slice字段承载Slice标签,通过Color Value字段承载Color值。可以理解的是,本公开实施例的BGP-LU路由信息携带有多个如图3b所示的BGP-LU扩展团体属性信息,每个Color属性信息中的Color值和Slice标签是唯一对应的。例如,BGP-LU路由信息中包含两个BGP-LU扩展团体属性信息,第一个BGP-LU扩展团体属性信息中承载的Color值为1、对应的Slice标签为Slice1,第二个BGP-LU扩展团体属性信息中承载的Color值为2、对应的Slice标签为Slice2。
需说明的是,BGP-LU路由信息还可以包括BGP路由前缀地址(例如1.1.1.1/32)。该BGP路由前缀地址是由跨域网络场景下的出PE节点确定。
需说明的是,第二网络设备在向第一网络设备发送BGP-LU路由信息之前,本公开实施例的方法还可以包括:
步骤S411,第二网络设备获取与自身对应的第一BGP-LU标签;
步骤S412,第二网络设备将第一BGP-LU标签添加至BGP-LU路由信息中。
可以理解的是,跨域网络场景下的每个网络设备分别针对当前BGP-LU路由配置唯一的BGP-LU标签。例如,PE1、ASBR1、ASBR2的BGP-LU标签对应为100、101、102,ASBR1从PE1接收的BGP-LU路由信息中携带PE1的BGP-LU标签(100)。第二网络设备在向第一网络设备发送BGP-LU路由信息之前将与自身对应的第一BGP-LU标签添加至BGP-LU路由信息中。
如图10所示,为本公开实施例提供的一种业务传输方法的流程示意图,包括但不限于如下步骤S510:
步骤S510,第三网络设备向第一网络设备发送携带切片Slice标签的业务报文,以使得第一网络设备根据Slice标签从Slice表项中确定业务报文到达下一跳网络设备的目标隧道。
需说明的是,本公开实施例描述的第一网络设备表征跨域端到端网络设备之间的中间节点,第二网络设备表征业务流传输路径中第一网络设备的下一跳节点;第三网络设备表征业务流传输路径中第一网络设备的上一跳节点。以图1所示场景为例,第一网络设备可以为ASBR1或者ASBR2;当第一网络设备为ASBR1时,第二网络设备指PE1,第三网络设备指ASBR2;当第一网络设备为ASBR2时,第二网络设备指ASBR1,第三网络设备指PE2。
需说明的是,业务报文还可以携带BGP-LU标签,BGP-LU标签用于指示第一网络设备获得Slice表项索引,Slice表项索引用于索引Slice表项。
举例来说,ASBR2向ASBR1发送的业务报文中携带BGP-LU标签101,如此,使得ASBR1接收到该业务报文后,将BGP-LU标签101作为入BGP-LU标签,在本地BGP-LU标签交换表的入BGP-LU标签项中查找与BGP-LU标签101对应的Slice表项索引,假设查找得到的Slice表项索引为101-Slice-table,再查找与Slice表项索引101Slice-table对应的Slice表项,进而从查找得到的Slice表项中获取与业务报文中的Slice标签对应的隧道标签。
需说明的是,业务报文还可以携带隧道标签,隧道标签用于指示第三网络设备转发业务报文的隧道,即第三网络设备通过该隧道标签指示的隧道转发业务报文给第一网络设备。
需说明的是,业务报文携带标签栈,标签栈从外层往内层包括以下标签中的至少之一:隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。
具体而言,将业务报文需携带的各种标签以标签栈形式进行封装,得到包含多层标签的标签栈。示例性的,将目的地址、VPN标签、Slice标签、Slice标记、BGP-LU标签、隧道标签依次压入标签栈中,使得从外层往内层依次为隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。其中,隧道标签指示业务报文到达第一网络设备所经过的隧道,BGP-LU标签指示第一网络设备的BGP-LU标签交换表中的入BGP-LU标签,Slice标记指示内层是否包含Slice标签,Slice标签指示传输业务报文所用的切片,VPN标签指示VPN路由标签,目的地址指示业务报文的目的地址。
需说明的是,上述标签栈的结构仅仅是示例性的,具体实现时,标签栈可以包含更多或者更少的标签。
为更好理解本公开实施例的方案,下面通过几个具体示例进行说明。
示例一:
如图11a所示,为本公开实施例适用的一种跨域网络场景示意图。在图11a所示场景中,包括AS1和AS2两个AS域,其中,AS1包括PE1和ASBR1,AS2包括PE1和ASBR2,AS1和AS2在各自网络中通过域内网络切片技术,实现了网络内切片,分别为SR-TE1和SR-TE2;AS1和AS2之间通过域间网络切片技术,实现了网络间切片,分别为sub-if1和sub-if2。本示例方案基于BGP-LU将AS1和AS2的网络打通,形成多条跨域的端到端的BGP-LU LSP,具体实现过程如下:
步骤S601,PE1和ASBR1、ASBR1和ASBR2、ASBR2和PE2分别建立BGP-LU邻居;
步骤S602,PE1向ASBR1发送BGP-LU路由信息<1.1.1.1/32+lable 100>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两个Color属性信息,这里的lable 100为对应PE1的BGP-LU标签;
步骤S603,ASBR1从PE1接收BGP-LU路由信息后,生成如图11b所示的BGP-LU标签交换表,同时生成Slice表项索引101-Slice-table,BGP-LU标签交换表包括对应的入BGP-LU标签(in-lable)、Slice表项索引(Slice-table)和出BGP-LU标签(out-lable),ASBR1的BGP-LU标签交换表中,包括标签交换信息<101,101-Slice-table,100>;
步骤S604,ASBR1生成如图11c所示的Slice表项(101-Slice-table),在101-Slice-table中包含切片(Slice)、出切片(out-Slice)、下一跳(next Hop)三项信息,其中,Slice项包括多个切片标签,out-Slice项包括与各切片标签对应的出切片标签,next Hop包括与各切片标签对应的隧道标签,out-Slice和next Hop构成与Slice对应的出项信息,本示例中,101-Slice-table包括<Slice1+Slice1+SR-TE1>和<Slice2+Slice2+SR-TE2>两条Slice信息,ASBR1可以根据切片标签Slice1得到的出项信息<Slice1+SR-TE1>迭代到SR-TE1,或者根据切片标签Slice2得到的出项信息<Slice2+SR-TE2>迭代到SR-TE2;
步骤S605,ASBR1将BGP-LU路由信息中的BGP-LU标签100修改为与自身对应的BGP-LU标签101后,向ASBR2发送BGP-LU路由信息<1.1.1.1/32+lable 101>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两条Color属性信息;
步骤S606,ASBR2从ASBR1接收该BGP-LU路由信息后,生成如图11d所示的BGP-LU标签交换表,同时生成Slice表项索引102-Slice-table,ASBR2的BGP-LU标签交换表中,包括标签交换信息<102,102-Slice-table,101>;
步骤S607,ASBR2生成如图11e所示的Slice表项(102-Slice-table),本示例中,102-Slice-table包括<Slice1+Slice1+sub-if1>和<Slice2+Slice2+sub-if2>两条Slice信息,ASBR2可以根据切片标签Slice1得到出项信息<Slice1+sub-if1>,迭代到sub-if1,或者根据切片标签Slice2得到出项信息<Slice2+sub-if2>,迭代到sub-if2;
步骤S608,ASBR2将BGP-LU路由信息中的BGP-LU标签101修改为与自身对应的BGP-LU标签102后,向PE2发送BGP-LU路由信息<1.1.1.1/32+lable 102>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两条Color属性信息;
步骤S609,PE2从ASBR2接收到BGP-LU路由信息,在控制面,基于路由地址前缀(Prefix)和Color值生成如图11f所示的BGP-LU LSP入口表项,根据该BGP-LU LSP入口表项,<1.1.1.1/32+Color1>对应的出项信息中,出标签栈为102/Slice1,通过Color1和路由下一跳地址可迭代到SR-TE1;<1.1.1.1/32+Color2>对应的出项信息中,出标签栈为102/Slice2,通过Color2和路由下一跳地址可迭代到SR-TE2。
至此,完成了在PE1和PE2之间建立多条跨域端到端BGP-LU LSP(LSP1和LSP2)。
示例二:
如图12所示,基于示例一的方法在PE1和PE2之间建立多条跨域端到端的BGP-LU LSP之后,若存在多个不同业务需求的VPN业务,可以选择不同的BGP-LU LSP,例如,VPN1的业务需要选择切片SR-TE1进行端到端的传输时,具体实现过程如下:
步骤S701,PE1和PE2之间直接或间接建立MP-BGP邻居,交互VPN路由,PE1向PE2发送VPN1的路由<RD1+10.1.1.1/32+VPN-lable 300>,携带Color1;
步骤S702,PE2收到VPN1的路由后,根据路由下一跳地址1.1.1.1和Color1迭代到BGP-LU表项<1.1.1.1/32+Color1>,在VPN1路由表中创建路由10.1.1.1/32的转发表项;
步骤S703,PE2从CE12(为用户边缘设备(Customer Edge,CE))接收到目的地址为10.1.1.1的业务报文,查找VPN1路由表,然后根据路由10.1.1.1/32的转发表项信息,封装报文外层标签栈,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签102、隧道标签SR-TE1。
需说明的是,Slice标记可以向多协议标签交换IANA注册申请Base Special-Purpose MPLS Label而获得,Slice标记用于标识其内层标签为Slice标签,本公开实施例将Slice标记称为“Slice-mark”。
步骤S704,ASBR2从切片隧道SR-TE1接收由PE2发送的业务报文后,依次弹出标签栈的标签,根据BGP-LU标签102从BGP-LU标签交换表中得到Slice表项索引Slice-table102,如果业务报文中内层标签为Slice-mark,则继续使用内层标签Slice1在Slice-table102中查找出项信息<Slice1+sub-if1>,查中后,进行标签交换,封装标签栈,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签101、隧道标签sub-if1;
步骤S705,ASBR1从切片隧道sub-if1接收由ASBR2发送的业务报文后,依次弹出标签栈的标签,根据BGP-LU标签101从BGP-LU标签交换表中得到Slice表项索引Slice-table101,如果业务报文中内层标签为Slice-mark,则继续使用内层标签Slice1在Slice-table102中查找出项信息<Slice1+SR-TE1>,查中后,进行标签交换,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签100、隧道标签SR-TE1;
步骤S706,PE1从切片隧道SR-TE1接收由ASBR1发送的业务报文后,依次弹出标签栈的标签,其可根据标签确定为本地弹出,则继续使用内层标签300查找到VPN1,继续使用内层目的地址10.1.1.1在VPN1路由表中查找路由,将报文发送给CE11。
示例三:
如图13a所示,AS1和AS2之间需要经过不支持切片的核心网络C-ASBR,不同业务需求的VPN业务在切片网络中仍然可以选择不同的BGP-LU LSP,业务经过核心网络C-ASBR按照传统BGP-LU LSP路径转发,具体实现过程如下:
步骤S801,PE1和ASBR1、ASBR1和C-ASBR、C-ASBR和ASBR2、ASBR2和PE2分别建立BGP-LU邻居;
步骤S802,PE1向ASBR1发送BGP-LU路由信息<1.1.1.1/32+lable 100>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两个Color属性信息,这里的lable 100为对应PE1的BGP-LU标签;
步骤S803,ASBR1从PE1接收该BGP-LU路由信息后,在如图13b所示的BGP-LU标签交换表中生成标签交换信息<in-lable:101,Slice-table:101-Slice-table,out-lable:100>;
步骤S804,ASBR1生成如图13c所示的Slice表项(101-Slice-table),在101-Slice-table中包括<Slice1+Slice1+SR-TE1>和<Slice2+Slice2+SR-TE2>两条Slice信息,ASBR1可以根据切片标签Slice1得到出项信息<Slice1+SR-TE1>迭代到SR-TE1,或者根据切片标签Slice2得到出项信息<Slice2+SR-TE2>迭代到SR-TE2;
步骤S805,ASBR1将BGP-LU路由信息中的BGP-LU标签100修改为与自身对应的BGP-LU标签101后,向C-ASBR发送BGP-LU路由信息<1.1.1.1/32+lable 101>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两条Color属性信息;
步骤S806,C-ASBR生成如图13d所示的BGP-LU标签交换表,包括入BGP-LU标签(in-lable)、出BGP-LU标签(out-lable)和下一跳(next Hop)三项,示例性的,in-lable为201,out-lable为101,next Hop为if2。
步骤S807,C-ASBR将BGP-LU路由信息中的BGP-LU标签100修改为与自身对应的BGP-LU标签201,向PE2发送BGP-LU路由信息<1.1.1.1/32+lable 201>,透传扩展团体属性,携带原来的扩展团体信息<Color1+Slice1>和<Color2+Slice2>;
步骤S808,ASBR2从C-ASBR接收BGP-LU路由信息,生成如图13e所示的BGP-LU标签交换表,同时生成Slice表项索引102-Slice-table,ASBR2的BGP-LU标签交换表中包括标签交换信息<102,102-Slice-table,201>;
步骤S809,ASBR2生成如图13f所示的Slice表项(102-Slice-table),本示例中,102-Slice-table包括<Slice1+Slice1+if1>和<Slice2+Slice2+if1>两条Slice信息;
步骤S21,ASBR2将BGP-LU路由信息中的BGP-LU标签201修改为与自身对应的BGP-LU标签102后,向PE2发送BGP-LU路由信息<1.1.1.1/32+lable 102>,该BGP-LU路由信息携带的扩展团体属性信息中包括<Color1+Slice1>和<Color2+Slice2>两条Color属性信息;
步骤S811,PE2从ASBR2接收到BGP-LU路由信息,在控制面,基于路由前缀地址和Color值生成BGP-LU LSP入口表项(与图11f示例一致),根据该BGP-LU LSP入口表项,<1.1.1.1/32+Color1>表项出口信息中,出标签栈102/Slice1,并通过Color1和路由下一跳地址迭代到SR-TE1;<1.1.1.1/32+Color2>表项出口信息中,出标签栈102/Slice2,并通过Color2和路由下一跳地址迭代到SR-TE2。
至此,完成了在PE1和PE2之间建立多条跨域端到端的BGP-LU LSP。
示例四:
如图14所示,基于示例三的方法在PE1和PE2之间建立多条跨域端到端的BGP-LU LSP之后,若存在多个不同业务需求的VPN业务,可以选择不同的BGP-LU LSP,例如,VPN1的业务需要选择切片SR-TE1进行端到端的传输时,具体实现过程如下:
步骤S901,步骤S701,PE1和PE2之间直接或间接建立MP-BGP邻居,交互VPN路由,PE1向PE2发送VPN1的路由<RD1+10.1.1.1/32+VPN-lable300>,携带Color1;
步骤S902,PE2收到VPN1的路由后,根据路由下一跳地址1.1.1.1和Color1迭代到BGP-LU表项<1.1.1.1/32+Color1>,在VPN1路由表中创建路由10.1.1.1/32的转发表项;
步骤S903,PE2从CE12(为用户边缘设备(Customer Edge,CE))接收到目的地址为10.1.1.1的业务报文,查找VPN1路由表,然后根据路由10.1.1.1/32的转发表项信息,封装报文外层标签栈,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签102、隧道标签SR-TE1。
步骤S904,ASBR2从切片隧道SR-TE1接收由PE2发送的业务报文后,依次弹出标签栈的标签,根据BGP-LU标签102从BGP-LU标签交换表中得到Slice表项索引Slice-table102,如果业务报文中内层标签为Slice-mark,则继续使用内层标签Slice1在Slice-table102中查找出项信息<Slice1+if1>,查中后,进行标签交换,封装标签栈,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签201、隧道标签if1,然后经if1向C-ASBR发送业务报文;
步骤S905,C-ASBR从ASBR2接收业务报文,依次弹出标签栈的标签,根据BGP-LU标签201从BGP-LU标签交换表中确定出项信息,出项信息包括出BGP-LU标签101、出隧道标签if2,然后进行标签交换,封装标签栈,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签101、隧道标签if2,然后经if2向ASBR1发送业务报文;
步骤S906,ASBR1从C-ASBR接收业务报文后,依次弹出标签栈的标签,根据BGP-LU标签101从BGP-LU标签交换表中得到Slice表项索引Slice-table101,如果业务报文中内层标签为Slice-mark,则继续使用内层标签Slice1在Slice-table102中查找出项信息<Slice1+SR-TE1>,查中后,进行标签交换,从内往外依次封装目的地址10.1.1.1、VPN路由标签300、Slice标签Slice1、Slice标记Slice-mark、BGP-LU标签100、隧道标签SR-TE1,然后经SR-TE1向ASBR1发送业务报文;
步骤S907,PE1从ASBR1接收业务报文后,依次弹出标签栈的标签,其可根据标签确定为本地弹出,则继续使用内层标签300查找到VPN1,继续使用内层目的地址10.1.1.1在VPN1路由表中查找路由,将报文发送给CE11。
基于以上步骤,业务穿越传统核心网络进入切片网络后,仍然能够按需选择不同切片资源进行转发,克服了相关技术两个切片网络通过传统核心网络相连的场景下,业务无法在两个切片网络中选择不同切片资源进行转发的问题。
本公开实施例在端到端跨域的网络切片方案中,使用BGP-LU技术实现不同网络拼接,BGP-LU路由在网络交互中,携带多个Color属性信息,网络边界设备基于前缀和Color建立BGP-LU LSP,同一个前缀和不同的Color可以建立多条BGP-LU LSP,每个BGP-LU LSP依据Color选择不同的低层逻辑切片。在数据面上,利用多层标签栈技术,在BGP-LU标签的内层压入切片Slice标签,以实现业务穿越非切片网络后,进入切片网络,仍然具备选择切片资源的能力,解决切片网络分步部署,且兼容现有网络。
需说明的是,本公开实施例中尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。
另外,在本公开实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本公开实施例还提供了一种第一网络设备,如图15所示,该第一网络设备10包括但不限于:
处理器11和存储器12;
存储器12上存储有程序指令,程序指令当被处理器11执行时使得处理器11执行如上任意实施例描述的第一网络设备侧执行的业务传输方法。
上述处理器11和存储器12可以通过总线或者其他方式连接。
应能理解的是,该处理器11可以采用中央处理单元(Central Processing Unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门矩阵(Field Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器11采用一个或多个集成电路,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器12作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本公开任意实施例描述的第一网络设备侧执行的业务传输方法。处理器11通过运行存储在存储器12中的非暂态软件程序以及指令,从而实现上述的第一网络设备侧执行的业务传输方法。
存储器12可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述的第一网络设备侧执行的业务传输方法或者频谱感知模型的训练方法。此外,存储器12可以包括高速随机存取存储器,还可以包括非暂态存储器,比如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器12可选包括相对于处理器11远程设置的存储器,这些远程存储器可以通过网络连接至该处理器11。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述的第一网络设备侧执行的业务传输方法所需的非暂态软件程序以及指令存储在存储器12中,当被一个或者多个处理器11执行时,执行本公开任意实施例提供的第一网络设备侧执行的业务传输方法。
本公开实施例还提供了一种第二网络设备,如图16所示,该第二网络设备20包括但不限于:
处理器21和存储器22;
存储器22上存储有程序指令,程序指令当被处理器21执行时使得处理器21执行如上任意实施例描述的第二网络设备侧执行的业务传输方法。
上述处理器21和存储器22可以通过总线或者其他方式连接。
应能理解的是,该处理器21可以采用中央处理单元(Central Processing Unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门矩阵(Field Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器21采用一个或多个集成电路,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器22作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本公开任意实施例描述的第二网络设备侧执行的业务传输方法。处理器21通过运行存储在存储器22中的非暂态软件程序以及指令,从而实现上述的第二网络设备侧执行的业务传输方法。
存储器22可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述的第二网络设备侧执行的业务传输方法或者频谱感知模型的训练方法。此外,存储器22可以包括高速随机存取存储器,还可以包括非暂态存储器,比如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至该处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述的第二网络设备侧执行的业务传输方法所需的非暂态软件程序以及指令存储在存储器22中,当被一个或者多个处理器21执行时,执行本公开任意实施例提供的第二网络设备侧执行的业务传输方法。
本公开实施例还提供了一种第三网络设备,如图17所示,该第三网络设备30包括但不限于:
处理器31和存储器32;
存储器32上存储有程序指令,程序指令当被处理器31执行时使得处理器31执行如上任意实施例描述的第三网络设备侧执行的业务传输方法。
上述处理器31和存储器32可以通过总线或者其他方式连接。
应能理解的是,该处理器31可以采用中央处理单元(Central Processing Unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门矩阵(Field Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器31采用一个或多个集成电路,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器32作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本公开任意实施例描述的第三网络设备侧执行的业务传输方法。处理器31通过运行存储在存储器32中的非暂态软件程序以及指令,从而实现上述的第三网络设备侧执行的业务传输方法。
存储器32可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述的第三网络设备侧执行的业务传输方法或者频谱感知模型的训练方法。此外,存储器32可以包括高速随机存取存储器,还可以包括非暂态存储器,比如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器32可选包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至该处理器31。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述的第三网络设备侧执行的业务传输方法所需的非暂态软件程序以及指令存储在存储器32中,当被一个或者多个处理器31执行时,执行本公开任意实施例提供的第三网络设备侧执行的业务传输方法。
本公开实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有程序指令,程序指令被计算机执行时,实现如上任意实施例描述的业务传输方法。
本公开实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本公开实施例提供一种计算机程序产品,计算机程序产品存储有程序指令,程序指令在由计算机执行时,使得计算机实施如上任意实施例描述的业务传输方法。
以上是对本公开的若干实施进行了具体说明,但本公开并不局限于上述实施方式,熟悉本领域的技术人员在不违背本公开范围的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本公开所限定的范围内。

Claims (22)

  1. 一种业务传输方法,应用于第一网络设备,所述方法包括:
    接收来自第二网络设备的边界网关协议-标签单播BGP-LU路由信息,所述BGP-LU路由信息包括多个颜色Color属性信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签;
    根据所述BGP-LU路由信息创建Slice表项,所述Slice表项中包括多个所述Slice标签、与多个所述Slice标签逐一对应的隧道标签,所述隧道标签用于标识所述第一网络设备和所述第二网络设备之间的隧道;
    当接收到来自第三网络设备的业务报文,根据所述业务报文携带的Slice标签从所述Slice表项中确定目标隧道,通过所述目标隧道转发所述业务报文给所述第二网络设备。
  2. 根据权利要求1所述的方法,其中,所述根据所述BGP-LU路由信息创建Slice表项,包括:
    预先定义所述第一网络设备和所述第二网络设备之间的每个隧道对应的隧道标签;
    根据每个隧道对应的Color值,确定每个隧道标签对应的Slice标签;
    根据所述Slice标签和所述隧道标签的对应关系,获得所述Slice表项。
  3. 根据权利要求1所述的方法,其中,所述BGP-LU路由信息还包括与所述第二网络设备对应的第一BGP-LU标签;
    在接收来自第二网络设备的BGP-LU路由信息之后,所述方法还包括:
    获取与自身对应的第二BGP-LU标签;
    将所述第二BGP-LU标签作为入BGP-LU标签,将所述第一BGP-LU标签作为出BGP-LU标签,以及生成与所述入BGP-LU标签和所述出BGP-LU标签对应的Slice表项索引;
    将所述入BGP-LU标签、所述Slice表项索引和所述出BGP-LU标签的对应关系记录于预先创建的BGP-LU标签交换表;
    其中,所述Slice表项索引用于索引与所述入BGP-LU标签对应的Slice表项。
  4. 根据权利要求3所述的方法,其中,在获取与自身对应的第二BGP-LU标签之后,所述方法还包括:
    将所述BGP-LU路由信息中的第一BGP-LU标签更换为所述第二BGP-LU标签,得到新的BGP-LU路由信息;
    将新的BGP-LU路由信息发送给所述第三网络设备。
  5. 根据权利要求1所述的方法,其中,所述根据所述业务报文携带的Slice标签从所述Slice表项中确定目标隧道,包括:
    从所述Slice表项中确定与所述业务报文携带的Slice标签对应的隧道标签;
    根据隧道标签确定所述目标隧道。
  6. 根据权利要求1所述的方法,其中,所述业务报文还携带BGP-LU标签;
    在根据所述业务报文携带的Slice标签从所述Slice表项中确定目标隧道之前,所述方法还包括:
    将所述业务报文携带的BGP-LU标签作为入BGP-LU标签,从预先创建的BGP-LU标签交换表中获取与所述入BGP-LU标签对应的Slice表项索引;
    根据所述Slice表项索引获取所述Slice表项。
  7. 根据权利要求6所述的方法,其中,在通过所述目标隧道转发所述业务报文给所述第二网络设备之前,所述方法还包括:
    从预先创建的BGP-LU标签交换表中获取与所述入BGP-LU标签对应的出BGP-LU标签;
    将所述业务报文携带的BGP-LU标签更换为所述出BGP-LU标签。
  8. 根据权利要求7所述的方法,其中,所述业务报文还携带隧道标签;
    在通过所述目标隧道转发所述业务报文给所述第二网络设备之前,所述方法还包括:
    将所述业务报文携带的所述隧道标签更换为所述目标隧道对应的隧道标签。
  9. 根据权利要求1所述的方法,其中,所述业务报文携带标签栈,所述标签栈从外层往内层包括以下标签中的至少之一:隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。
  10. 根据权利要求9所述的方法,其中,当接收到来自第三网络设备的业务报文,所述方法还包括:
    按照从外层往内层的顺序依次弹出所述标签栈的各层标签;
    当弹出所述BGP-LU标签后没有弹出所述Slice标记,则确定所述标签栈没有携带所述Slice标签,将所述BGP-LU标签作为入BGP-LU标签,从预先创建的BGP-LU标签交换表中获取与所述入BGP-LU标签对应的出BGP-LU标签,将所述业务报文携带的BGP-LU标签更换为所述出BGP-LU标签后转发给所述第二网络设备。
  11. 根据权利要求1所述的方法,其中,所述BGP-LU路由信息还包括BGP路由前缀地址。
  12. 一种业务传输方法,应用于第二网络设备,所述方法包括:
    将预先定义的多个颜色Color属性信息添加至BGP-LU路由信息,每个所述Color属性信息包括Color值和所述Color值对应的切片Slice标签;
    向第一网络设备发送所述BGP-LU路由信息,以使得所述第一网络设备根据所述BGP-LU路由信息创建Slice表项以及根据接收到的业务报文携带的Slice标签从所述Slice表项中确定转发所述业务报文的目标隧道;
    其中,所述Slice表项中包括多个所述Slice标签、与多个所述Slice标签逐一对应的隧道标签,所述隧道标签用于标识所述第一网络设备和所述第二网络设备之间的隧道。
  13. 根据权利要求12所述的方法,其中,在向第一网络设备发送所述BGP-LU路由信息之前,所述方法包括:
    获取与自身对应的第一BGP-LU标签;
    将所述第一BGP-LU标签添加至所述BGP-LU路由信息中。
  14. 根据权利要求12所述的方法,其中,所述Color属性信息为BGP-LU扩展团体属性信息;
    所述BGP-LU扩展团体属性信息包括颜色值字段和切片字段,所述Color值承载于所述颜色值字段中,所述Slice标签承载于所述切片字段中。
  15. 根据权利要求12所述的方法,其中,所述BGP-LU路由信息包括BGP路由前缀地址。
  16. 一种业务传输方法,应用于第三网络设备,所述方法包括:
    向第一网络设备发送携带切片Slice标签的业务报文,以使得所述第一网络设备根据所述Slice标签从Slice表项中确定所述业务报文到达下一跳网络设备的目标隧道。
  17. 根据权利要求16所述的方法,其中,所述业务报文还携带BGP-LU标签,所述BGP-LU标签用于指示所述第一网络设备获得Slice表项索引,所述Slice表项索引用于索引所述Slice表项。
  18. 根据权利要求16所述的方法,其中,所述业务报文还携带隧道标签,所述隧道标签用于指示所述第三网络设备转发所述业务报文的隧道。
  19. 根据权利要求16所述的方法,其中,所述业务报文携带标签栈,所述标签栈从外层往内层包括以下标签中的至少之一:隧道标签、BGP-LU标签、Slice标记、Slice标签、VPN标签、目的地址。
  20. 一种网络设备,包括:
    处理器和存储器;
    其中,所述存储器上存储有程序指令,所述程序指令当被所述处理器执行时使得所述处理器执行权利要求1-19任一项所述的业务传输方法。
  21. 一种计算机可读存储介质,存储有程序指令,其中,所述程序指令被计算机执行时,实现权利要求1-19任一项所述的业务传输方法。
  22. 一种计算机程序产品,存储有程序指令,其中,所述程序指令在由计算机执行时,使得所述计算机实施权利要求1-19任意一项所述的业务传输方法。
PCT/CN2023/074845 2022-05-31 2023-02-07 业务传输方法、设备和存储介质 WO2023231442A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210608576.0 2022-05-31
CN202210608576.0A CN117201379A (zh) 2022-05-31 2022-05-31 业务传输方法、设备和存储介质

Publications (1)

Publication Number Publication Date
WO2023231442A1 true WO2023231442A1 (zh) 2023-12-07

Family

ID=88998410

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/074845 WO2023231442A1 (zh) 2022-05-31 2023-02-07 业务传输方法、设备和存储介质

Country Status (2)

Country Link
CN (1) CN117201379A (zh)
WO (1) WO2023231442A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110932895A (zh) * 2019-11-26 2020-03-27 中国联合网络通信集团有限公司 一种网络切片的报文转发方法和装置
CN111224874A (zh) * 2018-11-27 2020-06-02 中兴通讯股份有限公司 一种路径构建的方法及相关设备
US10887225B1 (en) * 2019-09-30 2021-01-05 Juniper Networks, Inc. Building a label sequence in Border Gateway Protocol (BGP) labeled network layer reachability information (NLRI) on next hop (NH) attribute change
CN112995030A (zh) * 2021-02-07 2021-06-18 中兴通讯股份有限公司 一种业务处理方法、装置、存储介质及电子装置
WO2022007702A1 (zh) * 2020-07-06 2022-01-13 华为技术有限公司 一种报文处理方法及网络设备
CN114258109A (zh) * 2020-09-23 2022-03-29 华为技术有限公司 一种路由信息传输方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111224874A (zh) * 2018-11-27 2020-06-02 中兴通讯股份有限公司 一种路径构建的方法及相关设备
US10887225B1 (en) * 2019-09-30 2021-01-05 Juniper Networks, Inc. Building a label sequence in Border Gateway Protocol (BGP) labeled network layer reachability information (NLRI) on next hop (NH) attribute change
CN110932895A (zh) * 2019-11-26 2020-03-27 中国联合网络通信集团有限公司 一种网络切片的报文转发方法和装置
WO2022007702A1 (zh) * 2020-07-06 2022-01-13 华为技术有限公司 一种报文处理方法及网络设备
CN114258109A (zh) * 2020-09-23 2022-03-29 华为技术有限公司 一种路由信息传输方法及装置
CN112995030A (zh) * 2021-02-07 2021-06-18 中兴通讯股份有限公司 一种业务处理方法、装置、存储介质及电子装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. BASHANDY, ED. INDIVIDUAL CONTRIBUTOR C. FILSFILS CISCO SYSTEMS P. MOHAPATRA SPROUTE NETWORKS: "BGP Prefix Independent Convergence draft-ietf-rtgwg-bgp-pic-18.txt ;draft-ietf-rtgwg-bgp-pic-18.txt", BGP PREFIX INDEPENDENT CONVERGENCE DRAFT-IETF-RTGWG-BGP-PIC-18.TXT ;DRAFT-IETF-RTGWG-BGP-PIC-18.TXT ;INTERNET-DRAFT: NETWORK WORKING GROUP, INTERNET ENGINEERING TASK FORCE, IETF; STANDARDWORKINGDRAFT, INTERNET SOCIETY (ISOC) 4, RUE DES FALAISES CH- 1, no. 18, 9 April 2022 (2022-04-09), Internet Society (ISOC) 4, rue des Falaises CH- 1205 Geneva, Switzerland, pages 1 - 31, XP015151340 *

Also Published As

Publication number Publication date
CN117201379A (zh) 2023-12-08

Similar Documents

Publication Publication Date Title
WO2021063232A1 (zh) 建立bier转发表项的方法、装置和系统
US11991012B2 (en) Packet forwarding method, packet sending apparatus, and packet receiving apparatus
US10924399B2 (en) Segment routing packet policies and functions including an engineered reverse reply path providing efficiencies in communicating packets in a network
EP3643022B1 (en) A method for establishing segment routing for ipv6 tunnel
US10361884B2 (en) Virtual private network forwarding and nexthop to transport mapping scheme
US10038650B2 (en) System and method for tunnel stitching transport
US9338079B2 (en) Method of routing multicast traffic
EP2974169B1 (en) Seamless segment routing
WO2016177087A1 (zh) 一种传输bier报文的方法及装置
EP4131872A1 (en) Multicast traffic transmission method and apparatus, communication node, and storage medium
EP3278513B1 (en) Transforming a service packet from a first domain to a second domain
CN112262553A (zh) 在软件定义网络交换机的分组处理流水线中跟踪分组的装置和方法
CN110912796B (zh) 一种通信方法、设备和系统
EP4040738A1 (en) Message processing method, device and system
WO2020135395A1 (zh) 一种跨内部网关协议的前缀标识通告方法和装置
WO2019165900A1 (zh) 一种处理组播数据报文的方法及装置
JP2023514630A (ja) 転送エントリ生成方法、パケット送信方法、ネットワークデバイス、およびシステム
WO2022127586A1 (zh) 报文处理方法、节点及计算机可读存储介质
US10404598B1 (en) Managing next hop groups in routers
CN113726653B (zh) 报文处理方法及装置
US20230353479A1 (en) Edge Computing Data and Service Discovery Using an Interior Gateway Protocol (IGP)
CN112511398B (zh) 一种防止流量绕行的方法及装置
WO2023231442A1 (zh) 业务传输方法、设备和存储介质
WO2023208056A1 (zh) 处理报文的方法、装置以及系统
WO2024011950A1 (zh) 信息处理方法、设备和计算机可读存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23814641

Country of ref document: EP

Kind code of ref document: A1