WO2023274083A1 - Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage - Google Patents

Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage Download PDF

Info

Publication number
WO2023274083A1
WO2023274083A1 PCT/CN2022/101251 CN2022101251W WO2023274083A1 WO 2023274083 A1 WO2023274083 A1 WO 2023274083A1 CN 2022101251 W CN2022101251 W CN 2022101251W WO 2023274083 A1 WO2023274083 A1 WO 2023274083A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
message
routing
autonomous domain
vpn sid
Prior art date
Application number
PCT/CN2022/101251
Other languages
English (en)
Chinese (zh)
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 WO2023274083A1 publication Critical patent/WO2023274083A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • 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
    • 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
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • H04L45/507Label distribution

Definitions

  • the present application relates to the technical field of network communication, in particular to a method, device, device and storage medium for routing, publishing and forwarding messages.
  • the Internet is divided into multiple autonomous systems (ASs), and the multi-protocol external border gateway protocol (MP-EBGP) runs between different ASs.
  • the edge routing device in the autonomous domain publishes all virtual private network (virtual private network, VPN) routing information in the autonomous domain to the edge routing device in another autonomous domain through MP-EBGP.
  • the edge routing device in the other autonomous domain redistributes a label for the received VPN routing information, and advertises it in the autonomous domain where it is located.
  • edge routing devices of each autonomous domain assign labels to all VPN routing information, and the processing complexity is high.
  • the present application provides a method, device, device and storage medium for route publishing and message forwarding, which can simplify the process of route publishing and message forwarding.
  • the present application provides a method for routing distribution, the method is applied to a first node in a first autonomous domain, and the first node is an edge routing device in the first autonomous domain, and the method includes: receiving The first routing message sent by the second node of the second node, wherein the second node is the edge routing device of the second autonomous domain, the first routing message includes the VPN SID, the prefix address associated with the VPN SID, and the first next hop, the first The next hop is the second node, and the first routing message is used to send the message to the prefix address; the second routing message is obtained, wherein the second routing message includes the VPN SID, the prefix address and the second next hop, and the second The next hop is the first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; the second routing message is advertised in the first autonomous domain, wherein the second routing message is used to send to the prefix address message.
  • the VPN segment identifier (segment identifier) SID is a segment routing internet protocol version 6 (segment routing internet protocol version 6, SRv6) SID.
  • the first node is an edge routing device of the first autonomous domain.
  • the second node is an edge routing device of the second autonomous domain.
  • the first node receives the first routing message sent by the second node in the second autonomous domain, and the first node obtains the second routing message.
  • the prefix address in the second routing message is the same as the prefix address in the first routing message; the VPN SID in the second routing message is the same as the VPN SID in the first routing message; the next hop in the second routing message is the same as the first The next hops in routing messages are not the same.
  • the first node advertises the second routing message in the first autonomous domain. In this way, when the VPN routes are advertised between autonomous domains, the edge routing devices of the autonomous domains do not modify the VPN SID, which simplifies the process of routing advertisement.
  • the method further includes: adding the VPN SID in the first routing message and the first next hop correspondingly to the routing table. In this way, in this way, the message sent to the prefix address in the first routing message can be forwarded.
  • receiving the first routing message sent by the second node in the second autonomous domain includes: receiving the routing message sent by the second node in the second autonomous domain through an external border gateway protocol (external border gateway protocol, EBGP).
  • EBGP external border gateway protocol
  • the first routing message further includes a coloring (color) parameter, where the color parameter is a color parameter configured in the second autonomous domain; before the first autonomous domain notifies the second routing message, it further includes: If the color parameter configured on the first node is inconsistent with the color parameter in the first routing message, modify the color parameter in the second routing message to be the color parameter configured on the first node.
  • a coloring (color) parameter where the color parameter is a color parameter configured in the second autonomous domain
  • the color parameter is configured on the first node. If the color parameter configured on the first node is inconsistent with the color parameter in the first routing message, the first node can modify the color parameter in the second routing message It is the color parameter configured on the first node. In this way, each autonomous domain can flexibly use the color parameter.
  • the first routing message does not include the color parameter; before the first autonomous domain notifies the second routing message, it also includes: if the first node is configured with the color parameter, then in the second routing message Add the color parameter configured on the first node. In this way, the color parameter is not configured in the second autonomous domain, but the color parameter is configured in the first autonomous domain, so that each autonomous domain can flexibly use the SRv6 tunnel.
  • the present application provides a method for routing distribution, the method is applied to a second node in a second autonomous domain, and the second node is an edge routing device in the second autonomous domain, the method includes: receiving the second autonomous domain The third routing message sent by the third node, wherein, the third routing message includes the VPN SID, the prefix address associated with the VPN SID and the third next hop, the third next hop is the third node, and the third routing message uses To send the message to the prefix address; obtain the first routing message, wherein the first routing message includes VPN SID, prefix address and the first next hop, the first next hop is the second node, in the first routing message
  • the VPN SID in the third routing message is the same as the VPN SID in the third routing message; the first routing message is sent to the first node in the first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the first routing message is used for Send packets destined for the prefix address.
  • the second node in the second autonomous domain receives the third routing message sent by the third node in the second autonomous domain, and the second node obtains the first routing message.
  • the prefix address in the first routing message is the same as the prefix address in the third routing message;
  • the VPN SID in the first routing message is the same as the VPN SID in the third routing message;
  • the next hop in the first routing message is the same as the third routing message The next hops in routing messages are not the same.
  • the second node sends the first routing message to the first node in the first autonomous domain. In this way, when the VPN routes are advertised between autonomous domains, the edge routing devices of the autonomous domains do not modify the VPN SID, which simplifies the route advertisement process.
  • the method further includes: adding the VPN SID in the third routing message and the third next hop correspondingly to the routing table. In this way, the message sent to the prefix address in the third routing message can be forwarded.
  • sending the first routing message to the first node in the first autonomous domain includes: sending the first routing message to the first node in the first autonomous domain through EBGP. In this way, route advertisement between autonomous domains can be realized.
  • the present application provides a method for forwarding packets, the method is applied to a second node in a second autonomous domain, and the second node is an edge routing device in the second autonomous domain, the method includes: receiving the first autonomous The first message sent by the first node of the domain, wherein the first node is the edge routing device of the first autonomous domain, the first message includes the VPN SID, and the first message is the SRv6 address sent to the prefix address associated with the VPN SID. message; determine the forwarding policy of the first message in the second autonomous domain based on the VPN SID; The VPN SID included in a packet is the same.
  • the second node in the second autonomous domain receives the first message sent by the first node in the first autonomous domain, and uses the VPN SID to determine the forwarding policy of the first message in the second autonomous domain. Then the second node sends the first packet based on the forwarding policy.
  • the first packet received by the second node is the same as the VPN SID in the first packet sent by the second node. In this way, when packets are forwarded between autonomous domains, there is no need to modify the VPN SID, which simplifies the packet forwarding process.
  • determining the forwarding policy of the first message in the second autonomous domain based on the VPN SID includes: if the VPN SID is associated with SRv6 Policy tunnel information, determining the forwarding policy of the first message in the second autonomous domain The forwarding policy is based on the SRv6 Policy tunnel; if the VPN SID is not associated with SRv6 policy (Policy) tunnel information, then determine that the forwarding policy of the first packet in the second autonomous domain is based on the SRv6 best effort (BE) tunnel strategy. In this way, the forwarding policy can be accurately determined according to whether the VPN SID is associated with SRv6 Policy tunnel information.
  • Policy SRv6 policy
  • the method further includes: receiving a third routing message sent by a third node in the second autonomous domain, where the third routing message includes the VPN SID, prefix address and next hop, and the third routing message includes: The next hop in the routing message is the third node; the VPN SID and the next hop in the third routing message are correspondingly added to the routing table.
  • the second node adds the VPN SID and the next hop in its own routing table.
  • the second node can search the next hop based on the VPN SID in the routing table to realize fast forwarding of the message.
  • the first message is sent based on the forwarding policy, including: if the forwarding policy is a policy based on the SRv6 Policy tunnel, then based on the next hop corresponding to the VPN SID in the routing table, in the first message Encapsulate the SRv6 Policy tunnel information in the document to obtain the second packet; send the second packet; if the forwarding policy is based on the SRv6 BE tunnel, use the outbound interface corresponding to the next hop to send the first packet. In this way, packets in the second autonomous domain can be forwarded through different SRv6 tunnels.
  • the method further includes: obtaining the first routing message, wherein the first routing message includes the VPN SID, the prefix address and the next hop of the first routing information, and the next hop of the first routing message Be the second node, the VPN SID in the first routing message is the same as the VPN SID in the third routing message; send the first routing message to the first node.
  • the second node obtains the first routing message, and the prefix address in the first routing message is the same as the prefix address in the third routing message; the VPN SID in the first routing message is the same as The VPN SID in the third routing message is the same; the next hop in the first routing message is different from the next hop in the third routing message.
  • the second node sends the first routing message to the second node in the first autonomous domain. In this way, when the VPN routes are advertised between autonomous domains, the edge routing devices of the autonomous domains do not modify the VPN SID, which simplifies the route advertisement process.
  • the destination address field in the Internet protocol version 6 (internet protocol version 6, IPv6) packet header of the first packet received by the second node includes the VPN SID.
  • the present application provides a method for forwarding a message, the method is applied to a first node in a first autonomous domain, and the first node is an edge routing device in the first autonomous domain, and the method includes: receiving the first message
  • the first message includes the VPN SID, and the first message is an SRV6 message destined for the prefix address associated with the VPN SID; the next hop is determined based on the VPN SID, and the next hop is the second autonomous domain
  • the second node, the second node is the edge routing device of the second autonomous domain; based on the next hop, the first message is sent, wherein, the VPN SID included in the first message sent is the same as that in the received first message
  • the included VPN SID is the same.
  • the first node in the first autonomous domain receives the first message, determines the next hop based on the VPN SID in the first message, and then sends the first message based on the next hop.
  • the VPN SID included in the first packet sent by the first node is the same as the VPN SID included in the received first packet. In this way, when packets are forwarded between autonomous domains, there is no need to modify the VPN SID, which simplifies the packet forwarding process.
  • the method before determining the next hop based on the VPN SID, further includes: receiving a first routing message sent by the second node, wherein the first routing message includes the VPN SID, the prefix address and the next hop Hop; The VPN SID in the first routing message and the next hop are correspondingly added to the routing table; Determine the next hop based on the VPN SID, including: in the routing table, determine the next hop corresponding to the VPN SID.
  • the first node adds the VPN SID and the next hop in its own routing table.
  • the first node can search the next hop based on the VPN SID in the routing table to realize fast forwarding of the message.
  • the method further includes: obtaining a second routing message, where the second routing message includes the next hop of the VPN SID, the prefix address and the second routing message, and the next hop of the second routing message Be the first node, the VPN SID in the first routing message is the same as the VPN SID in the second routing message; advertise the second routing message in the first autonomous domain.
  • the first node obtains the second routing message, and the prefix address in the second routing message is the same as the prefix address in the first routing message; the VPN SID in the second routing message is the same as The VPN SID in the first routing message is the same; the next hop in the second routing message is different from the next hop in the first routing message.
  • the first node advertises the second routing message in the first autonomous domain. In this way, when the VPN routes are advertised between autonomous domains, the edge routing devices of the autonomous domains do not modify the VPN SID, which simplifies the route advertisement process.
  • receiving the first message includes: receiving the first message through an SRv6 BE tunnel or an SRv6 Policy tunnel.
  • the SRv6 tunnel can be flexibly used in the first autonomous domain.
  • the destination address field in the IPv6 packet header of the first packet sent includes the VPN SID.
  • the first packet can be forwarded based on the VPN SID.
  • the present application provides a device for publishing routes, which is applied to a first node in a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the device includes:
  • a receiving module configured to receive a first routing message sent by a second node of a second autonomous domain, wherein the second node is an edge routing device of the second autonomous domain, and the first routing message includes a VPN SID .
  • the second routing message includes the VPN SID, the prefix address and a second next hop, the second next hop is the first node, and the first routing
  • the VPN SID in the message is identical with the VPN SID in the second routing message
  • the device further includes:
  • An adding module configured to add the VPN SID in the first routing message and the first next hop correspondingly to a routing table.
  • the receiving module is configured to receive the first routing message sent by the second node in the second autonomous domain through an external border gateway protocol (EBGP).
  • EBGP external border gateway protocol
  • the first routing message further includes a color parameter, where the color parameter is a color parameter configured in the second autonomous domain; If the color parameter configured on the first node is inconsistent with the color parameter in the first routing message before the autonomous domain notifies the second routing message, modify the color parameter in the second routing message to be the color parameter in the first routing message.
  • the color parameter configured on a node If the color parameter configured on a node is inconsistent with the color parameter in the first routing message before the autonomous domain notifies the second routing message, modify the color parameter in the second routing message to be the color parameter in the first routing message.
  • the color parameter is not included in the first routing message
  • the publishing module is further configured to add the first node in the second routing message if the first node is configured with a color parameter before the first autonomous domain notifies the second routing message The color parameter configured above.
  • the present application provides a device for publishing routes, which is applied to a second node in a second autonomous domain, where the second node is an edge routing device in the second autonomous domain, and the device includes:
  • a receiving module configured to receive a third routing message sent by a third node in the second autonomous domain, wherein the third routing message includes a VPN SID, a prefix address associated with the VPN SID, and a third next hop, the The third next hop is the third node, and the third routing message is used to send a message destined for the prefix address;
  • a publishing module configured to obtain a first routing message, wherein the first routing message includes the VPN SID, the prefix address and a first next hop, the first next hop being the second node,
  • the VPN SID in the first routing message is identical to the VPN SID in the third routing message;
  • a sending module configured to send the first routing message to a first node in the first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the first routing message is used to send Packets destined for the prefix address.
  • the device further includes:
  • An adding module configured to add the VPN SID in the third routing message and the third next hop correspondingly to a routing table.
  • the sending module is configured to send the first routing message to the first node in the first autonomous domain through EBGP.
  • the present application provides a device for forwarding messages, which is applied to a second node in a second autonomous domain, where the second node is an edge routing device in the second autonomous domain, and the device includes:
  • a receiving module configured to receive a first message sent by a first node in a first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the first message includes a VPN SID, The first message is an SRv6 message destined for the prefix address associated with the VPN SID;
  • a policy determination module configured to determine a forwarding policy of the first message in the second autonomous domain based on the VPN SID
  • a sending module configured to send the first packet based on the forwarding strategy, wherein the VPN SID included in the first packet sent based on the forwarding strategy is the same as the VPN SID included in the received first packet.
  • the policy determination module is configured to:
  • VPN SID is associated with SRv6 Policy tunnel information, then determining that the forwarding strategy of the first message in the second autonomous domain is based on the strategy of the SRv6 Policy tunnel;
  • the forwarding policy of the first message in the second autonomous domain is a policy based on the SRv6 BE tunnel.
  • the receiving module is further configured to receive a third routing message sent by a third node in the second autonomous domain, where the third routing message includes the VPN SID, The prefix address and the next hop, the next hop in the third routing message is the third node; the VPN SID and the next hop in the third routing message are correspondingly added to the route surface.
  • the sending module is configured to:
  • the forwarding strategy is a strategy based on the SRv6 Policy tunnel
  • the forwarding strategy is a strategy based on the SRv6 Policy tunnel
  • the forwarding policy is a policy based on the SRv6 BE tunnel, then use the outbound interface corresponding to the next hop to send the first packet.
  • the device further includes: an publishing module, configured to obtain a first routing message, where the first routing message includes the VPN SID, the prefix address, and the first routing message The next hop of the information, the next hop of the first routing message is the second node, and the VPN SID in the first routing message is the same as the VPN SID in the third routing message;
  • the sending module further sends the first routing message to the first node.
  • the destination address field in the IPv6 packet header of the received first packet includes the VPN SID.
  • the present application provides a device for forwarding messages, which is applied to a first node in a first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the device includes:
  • a receiving module configured to receive a first message, wherein the first message includes a VPN SID, and the first message is an SRV6 message destined for a prefix address associated with the VPN SID;
  • a next hop determination module configured to determine a next hop based on the VPN SID, wherein the next hop is a second node of a second autonomous domain, and the second node is an edge route of the second autonomous domain equipment;
  • a sending module configured to send the first packet based on the next hop, wherein the VPN SID included in the sent first packet is the same as the VPN SID included in the received first packet.
  • the receiving module is further configured to receive a first routing message sent by the second node before determining the next hop based on the VPN SID, where the first routing message Including the VPN SID, the prefix address and the next hop; correspondingly adding the VPN SID and the next hop in the first routing message to a routing table;
  • the next hop determining module is configured to determine the next hop corresponding to the VPN SID in the routing table.
  • the device further includes: an issuing module, configured to obtain a second routing message, where the second routing message includes the VPN SID, the prefix address, and the second routing message The next hop of the message, the next hop of the second routing message is the first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; in the second routing message An autonomous domain advertises the second routing message.
  • an issuing module configured to obtain a second routing message, where the second routing message includes the VPN SID, the prefix address, and the second routing message The next hop of the message, the next hop of the second routing message is the first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; in the second routing message An autonomous domain advertises the second routing message.
  • the receiving module is configured to:
  • the destination address field in the IPv6 packet header of the first packet sent includes the VPN SID.
  • the present application provides a route publishing system, which includes the device described in the fifth aspect and the device described in the sixth aspect.
  • the present application provides a route distribution system, which includes the device described in the seventh aspect and the device described in the eighth aspect.
  • the present application provides a device for advertising routes, which is applied to a first node in a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the device includes a processor and a memory, the memory is used to store program codes, and the processor is used to call the program codes in the memory so that the device executes the route publishing provided in the first aspect or in any optional manner of the first aspect method.
  • the present application provides a route publishing device, which includes a network interface, a memory, and a processor connected to the memory;
  • the network interface is configured to receive the first routing message sent by the second node in the second autonomous domain
  • the memory is used to store program instructions
  • the processor is configured to execute the program instructions, so that the route publishing device executes the route publishing method provided in the first aspect or any optional manner of the first aspect.
  • the present application provides a computer-readable storage medium, at least one instruction is stored in the storage medium, and the instruction is read by a processor so that the route issuing device executes any one of the above-mentioned first aspect or the first aspect.
  • the method of route publishing provided by an optional method.
  • the present application provides a computer program product, where the computer program product includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
  • the processor of the route publishing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the route publishing device executes the route publishing provided in the first aspect or any optional method of the first aspect Methods.
  • the present application provides a device for advertising routes, which is applied to a second node in a second autonomous domain, where the second node is an edge routing device in the second autonomous domain, and the device includes a processor and a memory, the memory is used to store program codes, and the processor is used to call the program codes in the memory so that the device executes the route publishing provided in the second aspect or in any optional manner of the second aspect method.
  • the present application provides a route publishing device, where the route publishing device includes a network interface, a memory, and a processor connected to the memory;
  • the network interface is configured to receive a third routing message sent by a third node in the second autonomous domain, and send a first routing message to the first node in the first autonomous domain;
  • the memory is used to store program instructions
  • the processor is configured to execute the program instructions, so that the route publishing device executes the route publishing method provided in the second aspect or any optional manner of the second aspect.
  • the present application provides a computer-readable storage medium, at least one instruction is stored in the storage medium, and the instruction is read by a processor so that the route publishing device executes any one of the second aspect or the second aspect.
  • the provided route publishing method is not limited to:
  • the present application provides a computer program product, where the computer program product includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
  • the processor of the route publishing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the route publishing device executes the route publishing provided in the second aspect or in any optional manner of the second aspect. method.
  • the present application provides a device for forwarding messages, which is applied to a second node in a second autonomous domain, where the second node is an edge routing device in the second autonomous domain, and the device includes processing A device and a memory, the memory is used to store program codes, and the processor is used to call the program codes in the memory so that the device executes the forwarding message provided in the third aspect or in any optional manner of the third aspect text method.
  • the present application provides a message forwarding device, where the message forwarding device includes a network interface, a memory, and a processor connected to the memory;
  • the network interface is configured to receive a first message sent by a first node in the first autonomous domain, and send the first message based on the next hop and the forwarding policy;
  • the memory is used to store program instructions
  • the processor is configured to execute the program instructions, so that the packet forwarding device executes the packet forwarding method provided in the third aspect or any optional manner of the third aspect.
  • the present application provides a computer-readable storage medium, at least one instruction is stored in the storage medium, and the instruction is read by a processor so that the message forwarding device performs any of the third aspect or the third aspect.
  • a method of forwarding packets provided by an optional method.
  • the present application provides a computer program product, where the computer program product includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
  • the processor of the message forwarding device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the message forwarding device performs the forwarding provided by the third aspect or any optional method of the third aspect message method.
  • the present application provides a device for forwarding messages, which is applied to a first node in a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the device includes A processor and a memory, the memory is used to store program codes, and the processor is used to call the program codes in the memory so that the device executes the forwarding provided by the fourth aspect or any optional manner of the fourth aspect message method.
  • the present application provides a message forwarding device, where the message forwarding device includes a network interface, a memory, and a processor connected to the memory;
  • the network interface is configured to receive a first message sent by a first node in the first autonomous domain, and send the first message based on the next hop and the forwarding policy;
  • the memory is used to store program instructions
  • the processor is configured to execute the program instructions, so that the packet forwarding device executes the packet forwarding method provided in the fourth aspect or any optional manner of the fourth aspect.
  • the present application provides a computer-readable storage medium, at least one instruction is stored in the storage medium, and the instruction is read by a processor so that the message forwarding device performs any of the fourth aspect or the fourth aspect.
  • a method of forwarding packets provided by an optional method.
  • the present application provides a computer program product, where the computer program product includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
  • the processor of the message forwarding device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the message forwarding device performs the forwarding provided by the fourth aspect or any optional mode of the fourth aspect. message method.
  • FIG. 1 is a schematic diagram of the format of an SRv6 message provided by an exemplary embodiment of the present application
  • Fig. 2 is a schematic diagram of the format of the SRv6 SID provided by an exemplary embodiment of the present application
  • FIG. 3 is a schematic diagram of two autonomous domains publishing VPN routing information and forwarding messages provided by an exemplary embodiment of the present application
  • Fig. 4 is a schematic diagram of an application scenario provided by an exemplary embodiment of the present application.
  • Fig. 5 is a schematic diagram of an application scenario provided by an exemplary embodiment of the present application.
  • FIG. 6 is a schematic flowchart of a method for publishing routes provided by an exemplary embodiment of the present application.
  • FIG. 7 is a schematic flowchart of a method for publishing routes provided by an exemplary embodiment of the present application.
  • FIG. 8 is a schematic flowchart of a method for publishing routes provided by an exemplary embodiment of the present application.
  • Fig. 9 is a schematic flowchart of a method for forwarding a message provided by an exemplary embodiment of the present application.
  • FIG. 10 is a schematic flowchart of a method for forwarding a message provided by an exemplary embodiment of the present application.
  • Fig. 11 is a schematic flowchart of a method for forwarding a message provided by an exemplary embodiment of the present application.
  • Fig. 12 is a schematic flowchart of a method for forwarding a message provided by an exemplary embodiment of the present application.
  • Fig. 13 is a schematic flowchart of a method for forwarding a message provided by an exemplary embodiment of the present application
  • Fig. 14 is a schematic diagram of an established tunnel provided by an exemplary embodiment of the present application.
  • Fig. 15 is a schematic diagram of different autonomous domains using different tunnels provided by an exemplary embodiment of the present application.
  • Fig. 16 is a schematic structural diagram of a device for advertising routes provided by an exemplary embodiment of the present application.
  • Fig. 17 is a schematic structural diagram of a device for advertising routes provided by an exemplary embodiment of the present application.
  • FIG. 18 is a schematic structural diagram of a device for forwarding messages provided by an exemplary embodiment of the present application.
  • FIG. 19 is a schematic structural diagram of a device for advertising routes provided by an exemplary embodiment of the present application.
  • Fig. 20 is a schematic structural diagram of a device provided by an exemplary embodiment of the present application.
  • Fig. 21 is a schematic structural diagram of a device provided by an exemplary embodiment of the present application.
  • segment routing segment routing
  • SR is a tunneling technology based on source routing forwarding mode.
  • the basic design idea of SR is: maintain the state of each flow at the head node of the service flow, without maintaining the state of each flow at the intermediate node and tail node.
  • the head node and the tail node are the head node and the tail node of the SR tunnel.
  • the SR packet includes an SR header and an Internet Protocol (internet protocol, IP) packet.
  • IP Internet Protocol
  • the SR header is encapsulated in the outer layer of the IP header and IP payload. From the sequence of the packet header to the packet tail, the SR packet is followed by the SR header, the IP header, and the IP payload.
  • the SR header is usually added to the message by the head node of the SR tunnel.
  • the SR header includes path information of the SR tunnel.
  • the SR header includes information of at least one node or at least one link in the SR tunnel.
  • IP packets are sometimes called data packets, service packets, or original packets.
  • the IP payload includes service data.
  • the IP packet includes but is not limited to an Internet protocol version 4 (internet protocol version4, IPv4) packet or an IPv6 packet.
  • IPv4 Internet protocol version 4, IPv4
  • IPv6 IPv6
  • An SRv6 packet is a type of SR packet. If the SR packet is an SRv6 packet, the SR header in the SR packet is an SRv6 header.
  • FIG. 1 is a schematic diagram of the format of an SRv6 packet. As shown in Figure 1, the SRv6 header includes an IPv6 basic header and a segment routing header (segment routing header, SRH).
  • the IPv6 basic header includes a version number (version) field, a traffic class (traffic class) field, a flow label (flow label) field, a payload length (payload length) field, a next header (next header) field, and an effective hop count ( hop limit) field, IPv6 packet source address (source address, SA) field and IPv6 packet destination address (destination address, SA) field.
  • the version field is used to identify the protocol version of the current IP, and the value is 6.
  • the traffic class field is used to identify the quality of service (quality of service, QoS).
  • the flow label field is used to indicate load sharing.
  • the backbone node does not need to perform hashing (Hash) according to the content in the inner packet header, but only needs to perform hashing according to the flow label to realize flow-based load sharing.
  • the payload length field identifies the payload length of the SRv6 packet except the IPv6 basic header.
  • the next header field identifies the type of the next header.
  • the hop limit field identifies the number of times an SRv6 packet is forwarded between routers. Each time an SRv6 packet is forwarded, this field decreases by 1. When it reaches 0, the SRv6 packet is discarded.
  • the SA field identifies the source address of the SRv6 packet.
  • the DA field identifies the destination address of the SRv6 packet.
  • SRH includes the next header (next header) field, extended header length (header extended length) field, routing type (routing type) field, the number of remaining segments (segments Left, SL), the last segment index (last entry) field, flag (flags) field, tag (tag) field and segment list (Segment List), etc.
  • Segment List can also be referred to as SID list for short.
  • the next header field is used to identify the type of the next header of the SRH.
  • the header extended length field is used to indicate the length of the SRH, and the unit is 8 bytes.
  • the routing type field is used to indicate the type of the routing header. For SRH, the value of the routing type field is 4.
  • the SL field is used to indicate the number of intermediate nodes that should still be visited before reaching the destination node.
  • the SL field acts as a pointer to the active SID in the segment list. For example, if the segment list of the SRH includes 5 SIDs, namely SID0, SID1, SID2, SID3 and SID4, and the value of SL is 2, it indicates that the active SID in the segment list is SID2.
  • the last entry field indicates the index of the last segment in the SID list.
  • the tag field is used to identify the same group of data packets.
  • the Segment List includes one or more SRv6 SIDs. Each SRv6 SID is in the form of an IPv6 address.
  • the Segment List is encoded by reverse ordering the paths: the last Segment is at the first position of the Segment List (Segment List[0]), and the first Segment is at the last position of the Segment List (Segment List[n]) .
  • the last segment refers to the segment that the SRv6 packet passes through last, and the first segment refers to the segment that the SRv6 packet passes through first.
  • the SRH also includes one or more types, lengths, and values (tag length value, TLV).
  • SID is the core element of SR.
  • a segment can represent any instruction, topological or service based (a SID can represent any topology, instruction or service).
  • SID is used to identify a unique segment.
  • the SID in SRv6 is in the form of an IPv6 address, and it is usually called SRv6 SID (Segment Identifier).
  • the SRv6 SID has the form of an IPv6 address and can be considered as an IPv6 address.
  • the length of SRv6 SID is 128 bits.
  • Figure 2 is a schematic diagram of an SRv6 SID. As shown in Figure 2, the SRv6 SID includes three parts: location identifier (locator), function (function) and parameters (arguments, args).
  • locator occupies the high bit of the SRv6 SID, the args occupies the low bit of the SRv6 SID, and the function occupies the other bits of the SRv6 SID.
  • the locator is used to locate the node that issued the SRv6 SID.
  • a locator represents an IPv6 network segment, and the IPv6 addresses under this network segment can be allocated as SRv6 SIDs.
  • function represents the instructions of the device, which are pre-set on the device, and the function part is used to instruct the issuing node of the SRv6 SID to perform corresponding functional operations.
  • args is an optional parameter, which can define information such as flow and service of some packets.
  • SRv6 SID includes End SID, End.X SID and End.DT4 SID, etc.
  • End SID is used to identify a certain destination address prefix in the network;
  • End.X SID is used to identify a certain link in the network;
  • End.DT4 SID indicates the provider edge (PE) type end node (Endpoint) SID, used to identify an IPv4VPN instance in the network.
  • PE provider edge
  • Endpoint End node
  • the forwarding action corresponding to the End.DT4 SID is to decapsulate the packet, and search the routing table of the IPv4VPN instance for forwarding.
  • the End.DT4 SID can be generated through static configuration, or automatically allocated within the dynamic SID range of Locator through BGP.
  • the VPN SID mentioned later belongs to any kind of SID such as Layer 2 VPN, Layer 3 VPN, public network, etc., for example, EDN.DT4 SID, END.DX4 SID, END.DT6 SID, END.DX6 SID, End.DX2 SID and End.DT2U SID etc.
  • End.DT6 SID represents the Endpoint SID of PE type, which is used to identify an IPv6VPN instance in the network.
  • End.DX4 SID indicates the Endpoint SID of a PE-type Layer 3 cross-connect, which is used to identify an IPv4 user edge (customer edge, CE) in the network.
  • End.DX6 SID indicates the Endpoint SID of PE-type Layer 3 cross-connection, which is used to identify an IPv6 CE in the network.
  • End.DX2 SID indicates the Endpoint SID of the Layer 2 cross-connect, which is used to identify an endpoint.
  • the End.DT2U SID represents the Endpoint SID for Layer 2 cross-connection and unicast media access control (media access control, MAC) table lookup function, which is used to identify an endpoint.
  • media access control media access control
  • An SR tunnel is a virtual point-to-point connection from the head node to the tail node.
  • the head node encapsulates the IPv6 message, so that the encapsulated message is transmitted to the tail node in the network with the IPv6SR function enabled.
  • the path through which encapsulated packets are transmitted on the network is called an SR tunnel.
  • SR tunnels include SRv6 BE tunnels and SRv6 Policy tunnels.
  • An SRv6 Policy tunnel can also be called an SRv6 traffic engineering (traffic engineering, TE) Policy tunnel.
  • the SRv6 BE tunnel publishes the location identification (locator) network segment, and the nodes in SRv6 calculate the optimal route to the locator network segment according to the shortest path first algorithm.
  • the path corresponding to the optimal route is an SRv6 BE tunnel.
  • an interior gateway protocol can be used within an autonomous domain
  • EBGP can be used between different autonomous domains.
  • SRv6 Policy tunnel is a new tunnel diversion technology developed on the basis of SRv6 technology.
  • the path of SRv6 Policy tunnel is a SID list (Segment List) represented as a specified path.
  • SID list is an end-to-end path from the head node to the tail node, and instructs passing intermediate nodes in the network to follow the specified path instead of following the calculated shortest path.
  • An SRv6 Policy tunnel consists of three parts: a head node, a coloring or color (color) parameter, and a tail node.
  • the head node is the node generated by the SRv6Policy tunnel; the color parameter is the extended community attribute carried by the SRv6 Policy tunnel; the tail node is the end node of the SRv6Policy tunnel.
  • the color parameter defines an application-level service-level agreement (SLA) policy, which can plan transmission paths based on specific business SLAs.
  • SLA service-level agreement
  • An SRv6 Policy tunnel can contain multiple candidate paths. Candidate paths carry a priority attribute. The valid candidate path with the highest priority is used as the primary path of the SRv6 Policy tunnel.
  • a candidate path can contain multiple Segment Lists, and each Segment List carries a Weight attribute. Load sharing can be formed between multiple Segment Lists.
  • the local SID table is a table maintained by SRv6-enabled nodes.
  • the local SID table is used to save the SRv6 SID generated by this node and the information associated with the SRv6 SID.
  • the local SID table includes the SRv6 SID, the SID type, the outgoing interface bound to the SID, and the VPN instance (instance) associated with the SRv6 SID.
  • VPN routing forwarding virtual routing forwarding
  • a VRF can also be called a VPN instance.
  • a VPN instance is a special entity established and maintained by PEs for directly connected sites. Each site has its own VPN instance on the PE, and each VPN instance contains routing and forwarding tables to one or more CEs directly connected to the PE.
  • the VRF may be a Layer 2 VPN instance, a Layer 3 VPN instance, or the like.
  • MP-EBGP runs between different autonomous domains.
  • An edge routing device in an autonomous domain advertises all VPN routing information in the autonomous domain to an edge routing device in another autonomous domain through MP-EBGP.
  • the edge routing device in the other autonomous domain redistributes a label for the received VPN routing information, and advertises it in the autonomous domain where it is located.
  • FIG. 3 is a schematic diagram of two autonomous domains publishing VPN routing information and forwarding packets.
  • autonomous domain 1 includes autonomous system border router (autonomous system border router, ASBR) 1, access router (access router, ACC )1 and ASBR2, and autonomous domain 2 includes ASBR3, ASBR4, PE1, and PE2.
  • ACC1 is connected to CE1, PE1 and PE2 are connected to CE2, and the address of CE2 is 2.2.2.2.
  • the VPN route includes CE2's address, next hop and label L1, and the next hop is PE1.
  • ASBR3 modifies the next hop to ASBR3 and switches label L1 to label L2.
  • ASBR3 sends the VPN route to ASBR1.
  • ASBR1 modifies the next hop to ASBR1 and switches label L2 to label L3.
  • ASBR1 diffuses the VPN route in AS1.
  • ASBR1 when transmitting packets subsequently, after ASBR1 receives the packet sent by ACC1 (the packet is sent to CE2), it exchanges label L3 for label L2 and sends it to ASBR3.
  • ASBR3 switches label L2 to label L1.
  • ASBR3 sends the message for exchanging labels to PE1, PE1 pops out the label L1, and based on the address of CE2, sends the message to CE2. Only part of the message is shown in FIG. 3 . In this way, edge routing devices in each autonomous domain assign labels to all VPN routing information, which also requires label switching when forwarding packets, and the processing complexity is high.
  • VPN-A for a VPN client (VPN-A) that needs to cross autonomous domains, the same VPN-A needs to be configured on the ASBR in the autonomous domain.
  • An ASBR in an autonomous domain regards the peer ASBR as its own CE device. In this way, for two autonomous domains, it is the same as the multi-protocol label switching (multi-protocol label switching, MPLS) VPN service running in one autonomous domain.
  • the ASBR spreads the VPN route to another ASBR in the autonomous domain. After receiving the VPN route, the ASBR in the other autonomous domain diffuses the VPN route in the autonomous domain. In this way, the intercommunication of the VPN routes of the two autonomous domains is realized.
  • the VPN SID in SRv6 is used as the label, and the VPN SID is not modified when the VPN route is released between autonomous domains, that is to say, the label exchange is not performed, and the method of publishing the VPN route in option B and the size of the message are optimized. forwarding method.
  • the edge routing device in an autonomous domain does not need to regard the ASBR of another autonomous domain as its own CE, so it does not need to create a VPN instance for each VPN.
  • the VPN SID is carried end-to-end when the message is forwarded, compared with option A, the service can be realized end-to-end.
  • each autonomous domain can be flexibly controlled according to the policy of each autonomous domain.
  • the present application provides a method for forwarding messages, and the execution subject of the method may be a first node in a first autonomous domain or a second node in a second autonomous domain.
  • the first node may be an edge routing device of the first autonomous domain, such as an ASBR, a PE, an aggregation (aggregation, AGG) node, and the like.
  • the second node may be an edge routing device of the second autonomous domain, such as ASBR, PE, metro core (metro core, MC) and so on.
  • the present application also provides a method for route announcement, and the execution body of the method may be the first node in the first autonomous domain or the second node in the second autonomous domain.
  • the first node mentioned in this application is called a route publishing device when it advertises a route, and it may be called a message forwarding device when it forwards a message.
  • a route publishing device when it advertises a route, it is called a route advertising device, and when it forwards a message, it may be called a message forwarding device. That is to say, the first node and the second node are devices capable of advertising routes and forwarding messages.
  • Fig. 4 is an exemplary application scenario.
  • the network includes a first autonomous domain and a second autonomous domain.
  • the first autonomous domain is adjacent to the second autonomous domain.
  • the first autonomous domain includes the first node, the ACC connected to CE1 and some other nodes, such as AGG, PE, etc. Other nodes are not shown in FIG. 4 .
  • the second autonomous domain includes a second node, a third node connected to CE2 and some other nodes, such as PEs, etc.
  • the link aggregation between the third node and PE. There is a connection between the first node and the second node.
  • Fig. 5 is another exemplary application scenario.
  • the network includes a first autonomous domain, a second autonomous domain and a third autonomous domain.
  • the first autonomous domain is adjacent to the second autonomous domain, and the second autonomous domain is adjacent to the third autonomous domain.
  • the first autonomous domain includes a first node, a node connected to CE1 and some other nodes, such as ACC, AGG, etc., and other nodes are not shown in FIG. 5 .
  • the second autonomous domain includes a second node, a third node connected to CE2 and some other nodes, such as PEs, etc.
  • the third autonomous domain includes multiple PEs (PE1 to PE2).
  • the first node is connected to PE1, and PE2 is connected to the second node.
  • FIG. 5 only shows that there is a third autonomous domain between the first autonomous domain and the second autonomous domain.
  • there are multiple autonomous domains between the first autonomous domain and the second autonomous domain and the solution of this application can also be used.
  • the first autonomous domain and the second autonomous domain can use SRv6 tunnels to transmit packets, and the SRv6 tunnels are SRv6 policy tunnels or SRv6 BE tunnels.
  • FIG. 4 and FIG. 5 is only an example, and cannot be used to limit the application scenario of the embodiment of the present application.
  • FIG. 6 the address of CE2 is issued as an example for illustration.
  • Step S601 the third node in the second autonomous domain sends a third routing message to the second node, and the second node receives the third routing message sent by the third node, wherein the third routing message includes the VPN SID and the information associated with the VPN SID A prefix address and a third next hop, where the third next hop is a third node, and the third routing message is used to send packets destined for the prefix address.
  • the prefix address is the address of CE2, and the prefix address can also be called a private network routing prefix and the like.
  • the third node in the second autonomous domain is connected to CE2, and advertises the prefix address of CE2 to the first autonomous domain.
  • the third node generates a VPN SID or obtains a statically configured VPN SID, adds the prefix address of CE2 and the outgoing interface to the prefix address to the VRF, adds the VPN SID to the local SID table, and associates the VPN SID with the VRF.
  • the third node sends the third routing message through BGP, the third routing message includes the prefix address of CE2, the third next hop and the VPN SID, and the third next hop is the third node.
  • the second node receives the third routing message.
  • the third node and the second node are BGP neighbors, and the third node sends the third routing message to the second node through BGP.
  • the second node receives the third routing message sent by the third node through BGP.
  • both the third node and the second node are connected to a route reflector (route reflector, RR) 1.
  • route reflector route reflector
  • a routing table is created on the second node, and the routing table may be a VPN SID routing table.
  • the routing table includes VPN SID field, next hop field, etc.
  • the second node if there is an SRv6 BE tunnel between the third node and the second node, the second node correspondingly adds the VPN SID and the third next hop to the routing table.
  • the third routing message also includes a color parameter, which is the color parameter configured on the third node in the second autonomous domain.
  • the second node correspondingly adds the VPN SID, the third next hop and the color parameter to the routing table.
  • the prefix address in the third routing message can also be correspondingly added.
  • the color parameter on the third node is statically configured, or the second autonomous domain is connected to a controller, and the controller configures the color parameter for the third node.
  • Step S602 the second node obtains a first routing message, wherein the first routing message includes a VPN SID, a prefix address and a first next hop, the first next hop is the second node, the VPN SID in the first routing message and The VPN SID in the third routing message is the same.
  • the VPN SID in the first routing message is the same as the VPN SID in the third routing message, indicating that the value of the VPN SID in the first routing message is the same as the value of the VPN SID in the third routing message, that is, VPN The SID is not modified.
  • the second node after the second node receives the third routing message, it modifies the third next hop in the third routing message to the first next hop (the first next hop is the second node), and obtains the A routing message; or after the second node receives the third routing message, it obtains the prefix address and VPN SID from the third routing message, and then generates the first routing message, and the first routing message includes the VPN SID, the prefix address and the first routing message. one jump.
  • Step S603 the second node sends a first routing message to the first node in the first autonomous domain.
  • the first node is an edge routing device of the first autonomous domain, and the first routing message is used to send a message destined for the prefix address.
  • the second node sends a first routing message to the first node in the first autonomous domain, where the first routing message is used to send a packet destined for the prefix address in the first routing message.
  • an EBGP neighbor relationship is established between the second node and the first node.
  • the second node sends the first routing message to the first node through EBGP.
  • both the second node and the first node are connected to the route reflector RR2.
  • the second node sends the first routing message to the first node
  • the second node sends the first routing message to RR2.
  • RR2 sends the first routing message to the first node.
  • the first node receives the first routing message sent by RR2.
  • Step S604 the first node receives the first routing message sent by the second node in the second autonomous domain, wherein the second node is an edge routing device, and the first routing message includes the VPN SID, the prefix address associated with the VPN SID, and the first routing message.
  • the next hop, the first next hop is the second node, and the first routing message is used to send a message destined for the prefix address.
  • step S604 the first node receives the first routing message sent by the second node through EBGP.
  • a routing table is created on the first node, and the routing table may be a VPN SID routing table.
  • the routing table includes VPN SID field, next hop field, etc.
  • the first node correspondingly adds the VPN SID and the first next hop in the first routing message to the routing table.
  • the first node may also correspondingly add the prefix address in the first routing message.
  • Step S605 the first node obtains the second routing message, the second routing message includes VPN SID, prefix address and second next hop, the second next hop is the first node, the VPN SID in the first routing message and the second Same VPN SID in routing messages.
  • the VPN SID in the first routing message is the same as the VPN SID in the second routing message, indicating that the value of the VPN SID in the first routing message is the same as the value of the VPN SID in the second routing message, that is, the VPN The SID is not modified.
  • the first node after the first node receives the first routing message, it modifies the first next hop in the first routing message to the second next hop (the second next hop is the first node), and obtains the first routing message.
  • Two routing messages or after the first node receives the first routing message, it obtains the prefix address and VPN SID from the first routing message, and then generates the second routing message, and the second routing message includes the VPN SID, the prefix address and the second routing message. one jump.
  • step S606 the first node advertises a second routing message in the first autonomous domain, and the second routing message is used to send packets destined for the prefix address.
  • the first node after the first node obtains the second routing message, the first node advertises the second routing message in the first autonomous domain, so that the second routing message is diffused in the first autonomous domain. In this way, there is a route to the prefix address in the first autonomous domain.
  • the first node establishes a BGP neighbor relationship with the ACC, and the first node sends the second routing message to the ACC through BGP.
  • both the first node and the ACC of the first autonomous domain are connected to RR3, and the first node sends the second routing message to RR3.
  • RR3 sends the second routing message to the ACC.
  • the ACC receives the second routing message, and the ACC adds the prefix address, the VPN SID, and the next hop to the forwarding table of the VRF.
  • the ACC advertises the prefix address to the connected CE1, so that CE1 stores the prefix address of CE2. In this way, CE1 can send packets to CE2 subsequently.
  • FIG. 7 a schematic diagram of issuing the address of CE2 is given in conjunction with Figure 4, see Figure 7, the VPN SID is used as a label in the routing message.
  • the prefix address of CE2 is 2.2.2.2
  • the value of VPN SID is VPN SID1.
  • the third routing message also includes a color parameter, which is the color parameter of the third node in the second autonomous domain.
  • the color parameter configured on the node Before step 606, if the color parameter configured on the first node is inconsistent with the color parameter in the first routing message, the first node modifies the color parameter in the second routing message to the color parameter configured on the first node. In this way, after receiving the second routing message, the ACC in the first autonomous domain correspondingly adds the VPN SID, the next hop, and the color parameter in the routing table. In this way, the color parameter obtained by the ACC of the first autonomous domain belongs to the configuration of the first autonomous domain.
  • the third routing message does not include the color parameter.
  • the color parameter is also not included in the first routing message received by the first node.
  • the first node may determine whether it is configured with a color parameter, and if it is configured with a color parameter, add the color parameter in the second routing message.
  • the ACC correspondingly adds the VPN SID, next hop and the color parameter in the routing table. In this way, the color parameter acquired by the ACC of the first autonomous domain belongs to the configuration in the first autonomous domain.
  • the first autonomous domain is connected to the controller.
  • the controller sends information about the SRv6 policy tunnel to the ACC, which indicates that the end of the SRv6 policy tunnel is the first node, the color parameter, and the Segment List, which includes the SIDs of the nodes passing through to reach the first node.
  • the message from the ACC to the first node needs to be superimposed on the SRH, and the SRH includes the Segment List indicated by the controller.
  • the SRv6 policy tunnel information in the ACC can also be statically configured.
  • the route publishing process in Figure 6 is illustrated by taking the application scenario in Figure 4 as an example.
  • the third autonomous domain uses the SRv6 BE tunnel
  • the second node sends a routing message to the first node
  • the first routing message may not pass through the third autonomous domain.
  • the first routing message may be sent directly, or both the first node and the second node are connected to the RR, and the first routing message is sent through the RR. Route messages.
  • the third autonomous domain uses the SRv6 policy tunnel, the first routing message must pass through the third autonomous domain.
  • Figure 8 provides the process of issuing the CE2 address in Figure 5.
  • the third autonomous domain uses the SRv6 policy tunnel, and the VPN SID is used as a label in the routing message.
  • the prefix address of CE2 is 2.2.2.2
  • the value of VPN SID is VPN SID1.
  • FIG. 9 is still the application scenario applied to FIG. 4 .
  • the process of sending a message from CE1 to CE2 is taken as an example for illustration, see step S901 to step S903 .
  • Step S901 the first node receives a first packet, wherein the first packet includes a VPN SID, and the first packet is an SRV6 packet destined for a prefix address associated with the VPN SID.
  • CE1 when CE1 sends a message to CE2, it generates an IP message sent to CE2, and the destination address of the IP message is the prefix address of CE2.
  • the IP packet may be an IPv4 packet, or an IPv6 packet, etc., and the embodiment of the present application uses an IPv4 packet as an example for illustration.
  • CE1 sends an IP packet to the ACC.
  • the ACC receives IP packets from the interface bound to the VRF.
  • the ACC provides the first packet to the first node.
  • there are multiple ways for the first node to receive the first message Three feasible ways are provided as follows, see ways 1 to 3.
  • the first node receives the first packet through the SRv6 BE tunnel.
  • the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, and finds the associated VPN SID and next hop.
  • the ACC directly uses the VPN SID as the destination address.
  • the ACC encapsulates the IPv6 packet header for the IP packet.
  • the destination address in the IPv6 packet header is the VPN SID
  • the source IP address is the SID of the ACC.
  • the first packet is generated.
  • ACC determines the route matched by the VPN SID according to the longest match principle.
  • the ACC sends outwards according to the route until the first packet reaches the first node. What needs to be explained here is that each node that passes through from the ACC to the first node determines the route matched by the VPN SID according to the longest match principle.
  • the first node receives the first message through the SRv6 policy tunnel.
  • the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, finds the associated VPN SID, and determines the SRv6 associated with the color parameter and the next hop based on the color parameter and the next hop corresponding to the VPN SID.
  • Policy tunnel information where the next hop is the first node.
  • the SRv6 policy tunnel information includes the Segment List to the first node, and the Segment List includes ACC.
  • the ACC encapsulates the SRH and the basic IPv6 header in the outer layer of the IP packet to obtain the encapsulated packet.
  • SRH includes Segment List and VPN SID, and VPN SID is located in Segment List[0] in Segment List.
  • the packet After encapsulation, the packet will be forwarded to the first node according to the path specified by the Segment List.
  • the encapsulated message passes through the tail node (endpoint) node, check the SL value in SRH, if SL is greater than 0, then subtract 1 from the SL value, and update the destination address in the IPv6 basic header to the address indicated by SL , look up the routing table according to the destination address in the IPv6 basic header to forward; if SL is equal to 0, update the destination address in the IPv6 basic header to the address indicated by SL, and pop up the SRH, and search for the route according to the destination address in the IPv6 basic header The table is forwarded.
  • the first message received by the first node includes an IPv6 basic header and SRH
  • the destination address included in the IPv6 basic header is the SID of the first node
  • SL in the SRH is equal to 0
  • the Segment List in the SRH only includes the VPN SID.
  • the first node receives the first message through the SRv6 policy tunnel and the direct link.
  • the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, finds the associated VPN SID, and determines the SRv6 associated with the color parameter and the next hop based on the color parameter and the next hop corresponding to the VPN SID.
  • Policy tunnel information where the next hop is the first node.
  • the SRv6 policy tunnel information includes the Segment List of the previous node to the first node, and the Segment List includes ACC.
  • the ACC encapsulates the SRH and the basic IPv6 header in the outer layer of the IP packet to obtain the encapsulated packet.
  • SRH includes Segment List and VPN SID, and VPN SID is located in Segment List[0] in Segment List.
  • the packet After encapsulation, the packet will be forwarded to the node preceding the first node according to the path specified by the Segment List.
  • the node preceding the first node updates the destination address in the IPv6 basic header to the address indicated by the SL, and pops up the SRH, and obtains the first packet at this time.
  • the first message includes an IPv6 basic header and an IP packet, and the destination address in the IPv6 basic header is a VPN SID.
  • the node preceding the first node sends the first packet to the first node through the direct link.
  • Step S902 the first node determines a next hop based on the VPN SID, wherein the next hop is a second node in the second autonomous domain, and the second node is an edge routing device in the second autonomous domain.
  • a routing table including the VPN SID is established on the first node.
  • the first node determines the next hop corresponding to the VPN SID in the routing table.
  • the next hop is the second node in the second autonomous domain.
  • Step S903 the first node sends a first packet based on the next hop, wherein the VPN SID included in the sent first packet is the same as the VPN SID included in the received first packet.
  • the destination address field in the IPv6 message header includes the VPN SID.
  • the IPv6 packet header is an IPv6 basic header.
  • the first node uses the next hop to determine the outbound interface corresponding to the next hop.
  • the first node sends the first packet through the outbound interface.
  • the destination address field in the IPv6 header includes the VPN SID, indicating that label switching is not performed on the first node, so the processing can be simplified.
  • step S903 that different methods are used to receive the first message in step S901, and the message header of the first message sent by the first node in step S903 may be different. details as follows:
  • step S901 the first node directly sends the first message received from the ACC.
  • the first message received by the first node includes the IPv6 basic header and the SRH, the SL in the SRH is equal to 0, and the Segment List in the SRH only includes the VPN SID.
  • the first node updates the destination address in the IPv6 basic header to the VPN SID in the Segment List, and ejects the SRH of the first message.
  • the first packet includes the IPv6 basic header and the IP packet sent by CE1.
  • the processing performed by the first node is only to modify the packet header, so it can also be considered that the first node still sends the first packet.
  • the packet forwarding process shown in FIG. 9 is applied to the application scenario shown in FIG. 4 .
  • the packet forwarding process shown in Figure 9 is applied to the application scenario shown in Figure 5 .
  • the nodes in the third autonomous domain determine the route matched by the VPN SID according to the longest match principle, and send the first message to the second autonomous domain according to the route.
  • the SRv6 policy tunnel is used to forward the first message in the third autonomous domain, then in step S902, the next hop is PE1 in the third autonomous domain, and in step S903, the first message will be sent to PE1.
  • the SRv6 policy tunnel is used between PE1 and PE2 to forward the first packet. PE2 sends the first packet to the second node.
  • step S903 the first message sent by the first node will reach the second node in the second autonomous domain.
  • step S903 the process of forwarding the message based on the process of publishing the route shown in FIG. 6 will be described, see FIG. 10 .
  • Fig. 10 is an application scenario applied to Fig. 4 and Fig. 5 .
  • the process of the message passing through the second autonomous domain during the process of sending the message from CE1 to CE2 is taken as an example for illustration.
  • Step S1001 the second node receives the first message sent by the first node, wherein the first node is the edge routing device of the first autonomous domain, the first message includes the VPN SID, and the first message is directed to the VPN SID association SRV6 packets with prefix addresses.
  • the first packet includes an IPv6 basic header and an IP packet
  • the destination address in the IPv6 basic header is the VPN SID.
  • the source address in the IPv6 basic header is the address of the ACC.
  • the packet forwarding process shown in FIG. 10 is applied to the application scenario shown in FIG. 4 , the first packet received by the second node comes directly from the first node. If the message forwarding process shown in Figure 10 is applied to the application scenario shown in Figure 5, the first message received by the second node comes directly from the first node, and the first message sent from the first node passes through the third Autonomous domain forwarding.
  • Step S1002 the second node determines the forwarding policy of the first message in the second autonomous domain based on the VPN SID.
  • the forwarding policy can be regarded as a tunneling policy.
  • the method of determining the forwarding policy of the first message in the second autonomous domain is: if the VPN SID is associated with SRv6 Policy tunnel information, then determine that the forwarding policy of the first message in the second autonomous domain is based on SRv6 Policy tunnel policy; if the VPN SID is not associated with SRv6 Policy tunnel information, it is determined that the forwarding policy of the first packet in the second autonomous domain is a policy based on the SRv6 BE tunnel.
  • a routing table including the VPN SID is established on the second node. If the routing table includes the color parameter corresponding to the VPN SID, it is determined that the VPN SID is associated with SRv6 Policy tunnel information; otherwise, it is determined that the VPN SID is not associated with SRv6 Policy tunnel information.
  • Step S1003 the second node sends a first packet based on the forwarding strategy, wherein the VPN SID included in the first packet sent based on the forwarding strategy is the same as the VPN SID included in the received first packet.
  • Method 1 if the forwarding policy is based on the SRv6 Policy tunnel, the second node encapsulates the SRV6 Policy tunnel information in the first packet based on the next hop corresponding to the VPN SID in the routing table to obtain the second packet; sends the second message.
  • an SRv6 policy tunnel is established between the second node and the third node.
  • the second node determines the color parameter and the next hop corresponding to the VPN SID in the routing table. As can be seen from the flow shown in Figure 6, the next hop belongs to the second autonomous domain, and the next hop is the second autonomous domain.
  • third node The second node determines the SRv6 policy tunnel information associated with the color parameter and the next hop based on the color parameter and the next hop corresponding to the VPN SID, where the next hop is the third node.
  • the SRv6 policy tunnel information includes the Segment List to the third node, and the Segment List includes the second node.
  • the second node encapsulates the SRH in the outer layer of the IP message to obtain the second message, and the second message includes the IP message, the IPv6 basic header and the SRH.
  • SRH includes Segment List and VPN SID, and VPN SID is located in Segment List[0] in Segment List.
  • the packet will be forwarded to the third node according to the path specified by the Segment List.
  • the third node is the tail node of the SRv6 policy tunnel.
  • the packet received by the third node includes the IPv6 basic header and SRH.
  • the destination address included in the IPv6 basic header is the SID of the third node.
  • SL in SRH is equal to 0, and Segment List in SRH Only VPN SIDs are included.
  • the VPN SID in the SRH of the second message is updated to the IPv6 basic header.
  • the third node uses the VPN SID in the IPv6 basic header to determine the corresponding VRF in the local SID table, and pops up the IPv6 basic header and SRH.
  • the third node uses the address of CE2 in the forwarding table of the VRF to find the outbound interface, and sends the IP message to CE2 through the outbound interface.
  • Method 2 If the forwarding policy is based on the SRv6 BE tunnel, use the outbound interface corresponding to the next hop to send the first packet.
  • the second node uses the next hop to determine the outbound interface corresponding to the next hop.
  • the first node sends the first packet through the outbound interface.
  • the third node pops up the IPv6 header of the first message, and uses the VPN SID in the IPv6 header to determine the VRF corresponding to the VPN SID in the local SID table. Use the address of CE2 in the VRF forwarding table to find out the outbound interface, and send the IP packet to CE2 through the outbound interface.
  • FIG. 11 describes the process of using the SRv6 BE tunnel to send packets
  • Figure 12 describes the process of using the SRv6 policy tunnel to send packets.
  • Step S901 in FIG. 12 adopts the second method.
  • the prefix address of CE2 is 2.2.2.2
  • the value of VPN SID is VPN SID1.
  • FIG. 13 describes the process of sending packets using the SRv6 policy tunnel.
  • Step S901 in FIG. 13 adopts the second method.
  • the prefix address of CE2 is 2.2.2.2
  • the value of VPN SID is VPN SID1.
  • the VPN SID is unique during the inter-autonomous domain message forwarding process, and label switching is not required at the edge routing device, so the processing is relatively simple. Moreover, the VPN SID is directly associated with the SRv6 tunnel, and the intermediate node does not need to maintain the VPN SID resource, which reduces the control of the control face to the intermediate node.
  • label switching is not required in this application, which is simplified compared to the solution of option B.
  • the VPN SID is end-to-end, it also realizes end-to-end.
  • the VPN SID is used as the unique identifier of the service and is carried end-to-end.
  • Each autonomous domain can perceive the service corresponding to the VPN SID, which is convenient for unified management and various control strategies (such as optimizing the forwarding path, business analysis, statistics and billing, etc.) .
  • the tunnels in each autonomous domain are configured in each autonomous domain, and there is no need to use end-to-end tunnels. The number of aggregation-side tunnels can be reduced.
  • each autonomous domain tunnel is configured by each autonomous domain.
  • One autonomous domain can deploy SRv6 policy tunnels, while the other autonomous domain cannot deploy SRv6 policy tunnels.
  • end-to-end SRv6 services can also be deployed.
  • end-to-end SRv6 services can be deployed without the cooperation of each controller.
  • the first autonomous domain is controlled by controller 1
  • SRv6 policy tunnels are deployed in the first autonomous domain
  • the second autonomous domain is controlled by controller 2
  • the second autonomous domain deploys SRv6 BE tunnel.
  • FIG. 16 is a structural diagram of an apparatus for advertising routes provided by an embodiment of the present application.
  • the device can be implemented as a part or all of the device through software, hardware or a combination of the two.
  • the route publishing device is applied to the first node of the first autonomous domain, and the first node is the edge routing device of the first autonomous domain.
  • the route publishing device provided in the embodiment of the present application can realize the embodiment of the present application Figure 6 According to the process described above, the device includes: a receiving module 1610 and a publishing module 1620, wherein:
  • the receiving module 1610 is configured to receive a first routing message sent by a second node in a second autonomous domain, where the second node is an edge routing device in the second autonomous domain, and the first routing message includes a VPN
  • the prefix address associated with the SID, the VPN SID, and the first next hop, the first next hop is the second node, and the first routing message is used to send a message to the prefix address, Specifically, it can be used to realize the receiving function of step S604 and execute the implicit steps included in step S604;
  • the second routing message includes the VPN SID, the prefix address and a second next hop, the second next hop is the first node, and the first routing
  • the VPN SID in the message is identical with the VPN SID in the second routing message
  • the second routing message is notified in the first autonomous domain, wherein the second routing message is used to send a message destined for the prefix address, and specifically can be used to implement the publishing functions of steps S605 and S606 and execute Steps S605 and S606 contain implicit steps.
  • the device further includes:
  • Adding module 1630 configured to add the VPN SID in the first routing message and the first next hop correspondingly to a routing table.
  • the receiving module 1610 is configured to receive the first routing message sent by the second node in the second autonomous domain through EBGP.
  • the first routing message further includes a color parameter, and the color parameter is a color parameter configured in the second autonomous domain; If the color parameter configured on the first node is inconsistent with the color parameter in the first routing message before an autonomous domain notifies the second routing message, modify the color parameter in the second routing message to the The color parameter configured on the first node.
  • the color parameter is not included in the first routing message
  • the publishing module 1620 is further configured to add the first color parameter to the second routing message if the first node is configured with a color parameter before the first autonomous domain notifies the second routing message.
  • FIG. 17 is a structural diagram of an apparatus for advertising routes provided by an embodiment of the present application.
  • the device can be implemented as a part or all of the device through software, hardware or a combination of the two.
  • the route publishing device is applied to the second node of the second autonomous domain, and the second node is the edge routing device of the second autonomous domain.
  • the route publishing device provided in the embodiment of the present application can realize the embodiment of the present application Figure 6 In the process described above, the device includes: a receiving module 1710, a publishing module 1720, and a sending module 1730, wherein:
  • the receiving module 1710 is configured to receive a third routing message sent by a third node in the second autonomous domain, where the third routing message includes a VPN SID, a prefix address associated with the VPN SID, and a third next hop, The third next hop is the third node, and the third routing message is used to send the message to the prefix address, which can be specifically used to implement the receiving function in step S601 and execute the hidden message included in step S601. with steps;
  • Publishing module 1720 configured to obtain a first routing message, wherein the first routing message includes the VPN SID, the prefix address and a first next hop, and the first next hop is the second node , the VPN SID in the first routing message is the same as the VPN SID in the third routing message, which can specifically be used to implement the publishing function in step S602 and perform the implicit steps included in step S602;
  • a sending module 1730 configured to send the first routing message to a first node in the first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the first routing message is used for Sending the message to the prefix address may specifically be used to implement the sending function of step S603 and perform the implicit steps included in step S603.
  • the device further includes:
  • Adding module 1740 configured to correspondingly add the VPN SID and the third next hop in the third routing message to a routing table.
  • the sending module 1730 is configured to send the first routing message to the first node in the first autonomous domain through EBGP.
  • FIG. 18 is a structural diagram of an apparatus for forwarding packets provided by an embodiment of the present application.
  • the device can be implemented as a part or all of the device through software, hardware or a combination of the two.
  • the device for forwarding a message is applied to a second node in a second autonomous domain, and the second node is an edge routing device of the second autonomous domain.
  • the device for forwarding a message provided in this embodiment of the application can implement the embodiment of this application
  • the process described in FIG. 10 the device includes: a receiving module 1810, a policy determining module 1820, and a sending module 1830, wherein:
  • a receiving module 1810 configured to receive a first message sent by a first node in a first autonomous domain, where the first node is an edge routing device in the first autonomous domain, and the first message includes a VPN SID , the first message is an SRv6 message destined for the prefix address associated with the VPN SID, which can specifically be used to realize the receiving function of step S1001 and perform the implicit steps included in step S1001;
  • the policy determination module 1820 is configured to determine the forwarding policy of the first message in the second autonomous domain based on the VPN SID, specifically, it may be used to implement the policy and next hop determination function in step S1002 and perform step S1002 including the implicit steps of
  • the sending module 1830 is configured to send the first packet based on the forwarding strategy, wherein the VPN SID included in the first packet sent based on the forwarding strategy is the same as the VPN SID included in the received first packet , specifically can be used to realize the sending function of step S1003 and execute the implicit steps included in step S1003.
  • the policy determination module 1820 is configured to:
  • VPN SID is associated with SRv6 Policy tunnel information, then determining that the forwarding strategy of the first message in the second autonomous domain is based on the strategy of the SRv6 Policy tunnel;
  • the forwarding policy of the first message in the second autonomous domain is a policy based on the SRv6 BE tunnel.
  • the receiving module 1810 is further configured to receive a third routing message sent by a third node in the second autonomous domain, where the third routing message includes the VPN SID , the prefix address and the next hop, the next hop in the third routing message is the third node; the VPN SID and the next hop in the third routing message are correspondingly added to routing table.
  • the sending module 1830 is configured to:
  • the forwarding strategy is a strategy based on the SRv6 Policy tunnel
  • the forwarding strategy is a strategy based on the SRv6 Policy tunnel
  • the forwarding policy is a policy based on the SRv6 BE tunnel, then use the outbound interface corresponding to the next hop to send the first packet.
  • the device further includes: an issuing module 1840, configured to obtain a first routing message, where the first routing message includes the VPN SID, the prefix address and the next hop of the first routing message, the next hop of the first routing message is the second node, the VPN SID in the first routing message is the same as the VPN in the third routing message SIDs are the same;
  • the sending module 1830 further sends the first routing message to the first node.
  • the destination address field in the IPv6 packet header of the received first packet includes the VPN SID.
  • FIG. 19 is a structural diagram of an apparatus for forwarding packets provided by an embodiment of the present application.
  • the device can be implemented as a part or all of the device through software, hardware or a combination of the two.
  • the device for forwarding the message is applied to the first node of the first autonomous domain, and the first node is the edge routing device of the first autonomous domain.
  • the device for forwarding the message provided by the embodiment of the present application can realize the embodiment of the present application
  • the process described in FIG. 9 the device includes: a receiving module 1910, a next hop determining module 1920, and a sending module 1930, wherein:
  • the receiving module 1910 is configured to receive a first message, wherein the first message includes a virtual private network segment routing identifier VPN SID, and the first message is an SRV6 message destined for a prefix address associated with the VPN SID Specifically, it can be used to realize the receiving function of step S901 and execute the implicit steps included in step S901;
  • a next hop determining module 1920 configured to determine a next hop based on the VPN SID, wherein the next hop is a second node of a second autonomous domain, and the second node is an edge of the second autonomous domain
  • the routing device can specifically be used to implement the next hop determination function in step S902 and perform the implicit steps included in step S902;
  • the sending module 1930 is configured to send the first packet based on the next hop, wherein the VPN SID included in the sent first packet is the same as the VPN SID included in the received first packet, specifically It can be used to realize the sending function of step S903 and execute the implicit steps included in step S903.
  • the receiving module 1910 is further configured to receive a first routing message sent by the second node before determining the next hop based on the VPN SID, where the first routing The message includes the VPN SID, the prefix address and the next hop; adding the VPN SID and the next hop in the first routing message to a routing table;
  • the next hop determining module 1920 is configured to determine the next hop corresponding to the VPN SID in the routing table.
  • the device further includes: an publishing module 1940, configured to obtain a second routing message, where the second routing message includes the VPN SID, the prefix address, and the second The next hop of the routing message, the next hop of the second routing message is the first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; in the The first autonomous domain advertises the second routing message.
  • an publishing module 1940 configured to obtain a second routing message, where the second routing message includes the VPN SID, the prefix address, and the second The next hop of the routing message, the next hop of the second routing message is the first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; in the The first autonomous domain advertises the second routing message.
  • the receiving module 1910 :
  • the destination address field in the IPv6 packet header of the first packet sent includes the VPN SID.
  • the division of the module of the device for route publishing and the module of the device for forwarding messages is schematic, and it is only a logical function division. In actual implementation, there may be other division methods.
  • Each functional module in each embodiment may be integrated into one processor, or physically exist separately, or two or more modules may be integrated into one module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules.
  • the integrated module is realized in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of software products, and the computer software products are stored in a storage medium
  • several instructions are included to make a computer device (which may be a network device, etc.) execute all or part of the steps of the methods in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disc and other media that can store program codes. .
  • FIG. 20 is a schematic structural diagram of a device 200 provided by an embodiment of the present application.
  • the device 200 shown in FIG. 20 may be the first node and the second node in FIG. 4 and FIG. 5 .
  • the device 200 shown in FIG. 20 may optionally be the route publishing device and packet forwarding device described above.
  • the Device 200 is optionally implemented by a generic bus architecture.
  • the device 200 includes at least one processor 201 , a communication bus 202 , a memory 203 and at least one network interface 204 .
  • the processor 201 is, for example, a general-purpose CPU, a network processor (network processor, NP), a graphics processing unit (graphics processing unit, GPU), a neural network processor (neural-network processing units, NPU), a data processing unit (data processing unit) , DPU), microprocessor, or one or more integrated circuits for implementing the scheme of the present application.
  • the processor 201 includes an application-specific integrated circuit (application-specific integrated circuit, ASIC), a programmable logic device (programmable logic device, PLD) or a combination thereof.
  • the PLD is, for example, a complex programmable logic device (complex programmable logic device, CPLD), a field-programmable gate array (field-programmable gate array, FPGA), a general array logic (generic array logic, GAL) or any combination thereof.
  • complex programmable logic device complex programmable logic device, CPLD
  • field-programmable gate array field-programmable gate array
  • GAL general array logic
  • the communication bus 202 is used to transfer information between the aforementioned components.
  • the communication bus 202 can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used in FIG. 20 , but it does not mean that there is only one bus or one type of bus.
  • the memory 203 is, for example, a ROM or other types of static storage devices that can store static information and instructions, another example of a RAM or other types of dynamic storage devices that can store information and instructions, and another example is an electrically erasable programmable read-only memory (electrically erasable Programmable read-only Memory, EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), Disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, without limitation.
  • the memory 203 exists independently, for example, and is connected to the processor 201 through the communication bus 202 .
  • the memory 203 can also be integrated with the processor 201 .
  • Network interface 204 uses any transceiver-like device for communicating with other devices or a communication network.
  • the network interface 204 includes a wired network interface, and may also include a wireless network interface.
  • the wired network interface may be an Ethernet interface, for example.
  • the Ethernet interface can be an optical interface, an electrical interface or a combination thereof.
  • the wireless network interface may be a wireless local area network (wireless local area networks, WLAN) interface, a cellular network interface or a combination thereof.
  • the processor 201 may include one or more CPUs.
  • the device 200 may include multiple processors. Each of these processors can be a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
  • a processor herein may refer to one or more devices, circuits, and/or processing cores for processing data such as computer program instructions.
  • the memory 203 is used to store the program code 210 for implementing the solution of the present application, and the processor 201 can execute the program code 210 stored in the memory 203 . That is, the device 200 can use the processor 201 and the program code 210 in the memory 203 to implement the route advertisement method and/or the packet forwarding method provided by the method embodiment.
  • FIG. 21 is a schematic structural diagram of a device 300 provided in an embodiment of the present application.
  • the device 200 shown in FIG. 21 may be the first node and the second node in FIG. 4 and FIG. 5 .
  • the device 300 shown in FIG. 21 can optionally be the route publishing device and packet forwarding device described above.
  • the device 300 includes: a main control board 310 and an interface board 330 .
  • the main control board is also called a main processing unit (main processing unit, MPU) or a route processing card (route processor card). Equipment maintenance, protocol processing functions.
  • the main control board 310 includes: a central processing unit 311 and a memory 312 (the memory 312 is not shown in FIG. 21 ).
  • the interface board 330 is also called a line interface unit card (line processing unit, LPU), a line card (line card), or a service board.
  • the interface board 330 is used to provide various service interfaces and implement forwarding of data packets.
  • the service interface includes but is not limited to an Ethernet interface, a POS (packet over sONET/SDH) interface, etc., and the Ethernet interface is, for example, a flexible ethernet service interface (flexible ethernet clients, FlexE clients).
  • the interface board 330 includes: a central processing unit 331 , a network processor 332 , a forwarding entry storage 334 and a physical interface card (physical interface card, PIC) 333 .
  • the central processor 331 on the interface board 330 is used to control and manage the interface board 330 and communicate with the central processor 311 on the main control board 310 .
  • the network processor 332 is configured to implement message forwarding processing and/or route publishing processing.
  • the form of the network processor 332 is, for example, a forwarding chip.
  • the network processor 332 is used to forward the received message based on the forwarding table stored in the forwarding table item storage 334, and if the destination address of the message is the address of the device 300, the message is sent to the CPU (such as If the destination address of the message is not the address of the device 300, the next hop and the outgoing interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the destination The outbound interface corresponding to the address.
  • the physical interface card 333 is used to implement the interconnection function of the physical layer.
  • the original traffic enters the interface board 330 through this, and the processed packets are sent out from the physical interface card 333 .
  • the physical interface card 333 is also called a daughter card, which can be installed on the interface board 330, and is responsible for converting the photoelectric signal into a message, checking the validity of the message and forwarding it to the network processor 332 for processing.
  • the central processing unit can also perform the functions of the network processor 332 , such as implementing software forwarding based on a general-purpose CPU, so that the network processor 332 is not required in the physical interface card 333 .
  • the device 300 includes multiple interface boards.
  • the device 300 further includes an interface board 340 , and the interface board 340 includes: a central processing unit 341 , a network processor 342 , a forwarding entry storage 344 and a physical interface card 343 .
  • the device 300 further includes a switching fabric unit 320 .
  • the SFU 320 is also called, for example, a switch fabric unit (SFU).
  • SFU switch fabric unit
  • the SFU board 320 is used to complete data exchange between the interface boards.
  • the interface board 330 communicates with the interface board 340 through, for example, the switching fabric board 320 .
  • the main control board 310 is coupled to the interface board 330 .
  • the main control board 310 , the interface board 330 and the interface board 340 , and the switching fabric board 320 are connected to the system backplane through the system bus to realize intercommunication.
  • an inter-process communication protocol IPC
  • IPC inter-process communication
  • the device 300 includes a control plane and a forwarding plane.
  • the control plane includes a main control board 310 and a central processing unit 331.
  • the forwarding plane includes various components for performing forwarding, such as a forwarding entry storage 334, a physical interface card 333, and a network processor. 332.
  • the control plane executes routers, generates forwarding tables, processes signaling and protocol packets, configures and maintains device status, and other functions.
  • the control plane sends the generated forwarding tables to the forwarding plane.
  • the network processor 332 The issued forwarding table looks up and forwards the packets received by the physical interface card 333 .
  • the forwarding table issued by the control plane is saved in the forwarding table item storage 334, for example.
  • the control plane and the forwarding plane are, for example, completely separated and not on the same device.
  • the operations on the interface board 340 are the same as those on the interface board 330 , and will not be repeated for brevity.
  • the device 300 in this embodiment may correspond to the first node or the second node in the above method embodiments, and the main control board 310, the interface board 330 and/or 340 in the device 300, for example, implement the first node in the above method embodiments
  • the functions and/or various steps implemented by a node or the second node are not repeated here.
  • main control boards there may be one or more main control boards, and when there are multiple main control boards, it includes, for example, an active main control board and a standby main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards it provides. There may also be one or more physical interface cards on the interface board. There may be no SFU, or there may be one or more SFUs. When there are multiple SFUs, they can jointly implement load sharing and redundant backup.
  • the present application provides a computer program product comprising computer instructions stored in a computer readable storage medium.
  • the processor of the route publishing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the route publishing device executes the route publishing method.
  • the present application provides a computer program product comprising computer instructions stored in a computer readable storage medium.
  • the processor of the message forwarding device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the message forwarding device executes the method for forwarding messages.
  • first and second in the description and claims of the embodiments of the present application are used to distinguish different objects, not to describe a specific order of objects, nor can they be interpreted as indicating or implying relative importance sex.
  • a first device and a second device are used to distinguish different devices rather than to describe a specific device.
  • the above-mentioned embodiments may be fully or partially implemented by software, hardware, firmware or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, all or part of the processes or functions described in accordance with the embodiments of the present application will be generated.
  • the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server, or data center by wired (eg, coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (eg, infrared, wireless, microwave, etc.) means.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center integrated with one or more available media.
  • the available medium may be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (such as a digital video disk (DVD)), or a semiconductor medium (for example, a solid state disk (solid state disk, SSD) etc. .
  • a magnetic medium for example, a floppy disk, a hard disk, a tape
  • an optical medium such as a digital video disk (DVD)
  • DVD digital video disk
  • semiconductor medium for example, a solid state disk (solid state disk, SSD) etc.

Landscapes

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

Abstract

La présente demande se rapporte au domaine technique des communications de réseau, et concerne un procédé et un appareil de publication de route, un procédé et un appareil de réacheminement de paquets, un dispositif, et un support de stockage. Dans la présente demande, lorsqu'une route VPN est publiée entre des systèmes autonomes, un second nœud du second système autonome envoie un premier message de route à un premier nœud du premier système autonome, le premier message de route comprenant une identification de segment de réseau privé virtuel (SID de VPN), une adresse de préfixe associée à la SID de VPN, et un premier saut suivant. Après réception du premier message de route, le premier nœud du premier système autonome modifie le saut suivant sans modifier la SID de VPN afin d'obtenir un second message de route. Le premier nœud annonce le second message de route dans le premier système autonome. De cette manière, lorsqu'une route VPN est publiée entre des systèmes autonomes, la SID de VPN n'est pas modifiée, et ainsi, le processus de publication de route peut être simplifié.
PCT/CN2022/101251 2021-06-29 2022-06-24 Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage WO2023274083A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110726967.8A CN115550252A (zh) 2021-06-29 2021-06-29 路由发布和转发报文的方法、装置、设备和存储介质
CN202110726967.8 2021-06-29

Publications (1)

Publication Number Publication Date
WO2023274083A1 true WO2023274083A1 (fr) 2023-01-05

Family

ID=84690058

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/101251 WO2023274083A1 (fr) 2021-06-29 2022-06-24 Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage

Country Status (2)

Country Link
CN (1) CN115550252A (fr)
WO (1) WO2023274083A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116095000A (zh) * 2023-02-13 2023-05-09 烽火通信科技股份有限公司 路由发布方法、装置、设备及可读存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118041848A (zh) * 2024-04-11 2024-05-14 常熟理工学院 一种灾后地区监测系统的实现方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830352A (zh) * 2018-08-07 2020-02-21 中兴通讯股份有限公司 一种vpn跨域的实现方法、装置和边界节点
WO2020083016A1 (fr) * 2018-10-23 2020-04-30 华为技术有限公司 Procédé et dispositif de transmission de données
CN111901184A (zh) * 2019-05-04 2020-11-06 瞻博网络公司 路径监视系统控制器或多协议标签交换ping和路由追踪
CN112511423A (zh) * 2020-09-03 2021-03-16 中兴通讯股份有限公司 报文处理方法、边界设备和计算机可读介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830352A (zh) * 2018-08-07 2020-02-21 中兴通讯股份有限公司 一种vpn跨域的实现方法、装置和边界节点
WO2020083016A1 (fr) * 2018-10-23 2020-04-30 华为技术有限公司 Procédé et dispositif de transmission de données
CN111901184A (zh) * 2019-05-04 2020-11-06 瞻博网络公司 路径监视系统控制器或多协议标签交换ping和路由追踪
CN112511423A (zh) * 2020-09-03 2021-03-16 中兴通讯股份有限公司 报文处理方法、边界设备和计算机可读介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116095000A (zh) * 2023-02-13 2023-05-09 烽火通信科技股份有限公司 路由发布方法、装置、设备及可读存储介质
CN116095000B (zh) * 2023-02-13 2024-05-10 烽火通信科技股份有限公司 路由发布方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN115550252A (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
US11936552B2 (en) Method and device for implementing VPN cross-domain, and border node
CN108574639B (zh) Evpn报文处理方法、设备及系统
CN108574630B (zh) Evpn报文处理方法、设备及系统
US8467411B1 (en) Service-specific forwarding in an LDP-RSVP hybrid network
US9350646B2 (en) MPLS traffic engineering for point-to-multipoint label switched paths
WO2020134139A1 (fr) Procédé de transmission de données de service, dispositif de réseau, et système de réseau
WO2023274083A1 (fr) Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage
US20230300070A1 (en) Packet Sending Method, Device, and System
US11240063B2 (en) Methods, nodes and computer readable media for tunnel establishment per slice
US11362954B2 (en) Tunneling inter-domain stateless internet protocol multicast packets
WO2022012689A1 (fr) Procédé d'annonce de routage et dispositif associé
WO2023045871A1 (fr) Procédé de traitement de paquets, dispositif de réseau et système
WO2023011149A1 (fr) Procédé de communication basé sur un routage de segment sur la version 6 du protocole internet (srv6)
WO2022048418A1 (fr) Procédé, dispositif et système de transfert de message
CN114598635A (zh) 报文传输的方法和装置
US20230353479A1 (en) Edge Computing Data and Service Discovery Using an Interior Gateway Protocol (IGP)
WO2024007762A1 (fr) Procédé de publication de voie d'acheminement, et procédé et appareil de communication
WO2023213216A1 (fr) Procédé de traitement de paquets et dispositif associé
WO2022116615A1 (fr) Procédé de transmission de message, procédé d'acquisition de correspondance, et appareil et système
US10924395B2 (en) Seamless multipoint label distribution protocol (mLDP) transport over a bit index explicit replication (BIER) core
WO2023169364A1 (fr) Procédé et appareil de génération de routage, et procédé et appareil de transfert de message de données
WO2023159975A1 (fr) Procédé de planification de réseau, dispositif de réseau, et support de stockage lisible
WO2022012690A1 (fr) Procédé d'annonce de routeur et dispositif associé
US20230261963A1 (en) Underlay path discovery for a wide area network
WO2022042610A1 (fr) Procédé de traitement d'informations, dispositif de commande de réseau, nœud et support de stockage lisible par ordinateur

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: 22831897

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE