CN115550252A - Method, device, equipment and storage medium for routing publishing and forwarding message - Google Patents

Method, device, equipment and storage medium for routing publishing and forwarding message Download PDF

Info

Publication number
CN115550252A
CN115550252A CN202110726967.8A CN202110726967A CN115550252A CN 115550252 A CN115550252 A CN 115550252A CN 202110726967 A CN202110726967 A CN 202110726967A CN 115550252 A CN115550252 A CN 115550252A
Authority
CN
China
Prior art keywords
message
node
routing
autonomous domain
vpn sid
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202110726967.8A
Other languages
Chinese (zh)
Inventor
陈新隽
王海波
王丽丽
赵科强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110726967.8A priority Critical patent/CN115550252A/en
Priority to PCT/CN2022/101251 priority patent/WO2023274083A1/en
Publication of CN115550252A publication Critical patent/CN115550252A/en
Pending legal-status Critical Current

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

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

The application provides a method, a device, equipment and a storage medium for issuing and forwarding a message by a route, belonging to the technical field of network communication. In the application, when a VPN route is released between autonomous domains, a second node of a second autonomous domain sends a first route message to a first node of a first autonomous domain, wherein the first route message comprises a VPN SID, a prefix address associated with the VPN SID and a first next hop. And after receiving the first routing message, the first node of the first autonomous domain modifies the next hop without modifying the VPN SID to obtain a second routing message. The first node advertises the second routing message in the first autonomous domain. Therefore, when the VPN route is issued between the autonomous domains, the VPN SID is not modified, and the route issuing process can be simplified.

Description

Method, device, equipment and storage medium for routing publishing and forwarding message
Technical Field
The present application relates to the field of network communication technologies, and in particular, to a method, an apparatus, a device, and a storage medium for routing a packet.
Background
The internet is divided into a plurality of Autonomous Systems (AS), and a multi-protocol external gateway protocol (MP-EBGP) is operated between different autonomous systems. The edge routing device in the autonomous domain distributes all Virtual Private Network (VPN) routing information in the autonomous domain to an edge routing device in another autonomous domain through the MP-EBG. The edge routing device in the other autonomous domain redistributes the label for the received VPN routing information and performs the notification in the autonomous domain in which the edge routing device is positioned.
Thus, the edge routing devices of each autonomous domain distribute labels for all the VPN routing information, and the processing complexity is high.
Disclosure of Invention
The application provides a method, a device, equipment and a storage medium for issuing and forwarding a message by a route, which can simplify the process of issuing the route and the process of forwarding the message.
In a first aspect, the present application provides a method for route distribution, where the method is applied to a first node of a first autonomous domain, and the first node is an edge routing device of the first autonomous domain, and the method includes: receiving a first routing message sent by a second node of a second autonomous domain, wherein the second node is edge routing equipment of the second autonomous domain, the first routing message comprises a VPN SID and a prefix address and a first next hop which are associated with the VPN SID, the first next hop is a second node, and the first routing message is used for sending a message destined for the prefix address; obtaining a second routing message, wherein the second routing message comprises a VPN SID, a prefix address and a second next hop, the second next hop is a first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; and advertising a second routing message in the first autonomous domain, wherein the second routing message is used for sending the message destined for the prefix address.
In the solution shown in the present application, the segment identifier (segment identifier) SID is a segment routing internet protocol version six (SRv 6) SID. The first node is an edge routing device of a first autonomous domain. The second node is an edge routing device of the second autonomous domain. When the VPN route is issued between the autonomous domains, the first node receives a first route message sent by a second node of a second autonomous domain, and the first node obtains a second route 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 different from the next hop in the first routing message. The first node advertises the second routing message in the first autonomous domain. Thus, when the VPN route is released between autonomous domains, the edge routing device in the autonomous domain does not modify the VPN SID, and the route releasing process can be simplified.
In one possible implementation, the method further includes: and correspondingly adding the VPN SID in the first routing message and the first next hop to a routing table. In this way, the message addressed to the prefix address in the first routing message can be forwarded.
In one possible implementation manner, receiving a first routing message sent by a second node of a second autonomous domain includes: and receiving a first routing message sent by a second node of the second autonomous domain through an External Border Gateway Protocol (EBGP). Therefore, the routing release among the autonomous domains can be realized.
In a possible implementation manner, the first routing message further includes a color (color) parameter, where the color parameter is a color parameter configured in the second autonomous domain; before the first autonomous domain advertises the second routing message, further comprising: and if the color parameter configured on the first node is inconsistent with the color parameter in the first routing message, modifying the color parameter in the second routing message into the color parameter configured on the first node.
According to the scheme, the first node is configured with the color parameter, and 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 into the color parameter configured on the first node. Thus, the color parameters can be flexibly used by each autonomous domain.
In a possible implementation manner, the first routing message does not include a color parameter; before the first autonomous domain advertises the second routing message, further comprising: and if the first node is configured with the color parameter, adding the color parameter configured on the first node in the second routing message. In this way, the second autonomous domain is not configured with the color parameter, and the first autonomous domain is configured with the color parameter, so that each autonomous domain can flexibly use the SRv6 tunnel.
In a second aspect, the present application provides a method for route distribution, where the method is applied to a second node of a second autonomous domain, and the second node is an edge routing device of the second autonomous domain, where the method includes: receiving a third routing message sent by a third node of the second autonomous domain, wherein the third routing message comprises 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 for sending a message destined for the prefix address; obtaining a first routing message, wherein the first routing message comprises a VPN SID, a prefix address and a first next hop, the first next hop is a second node, and the VPN SID in the first routing message is the same as the VPN SID in a third routing message; and sending a first routing message to a first node of the first autonomous domain, wherein the first node is an edge routing device of the first autonomous domain, and the first routing message is used for sending a message addressed to the prefix address.
In the solution shown in the present application, 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 different from the next hop in the third routing message. The second node sends a first routing message to a first node of the first autonomous domain. Thus, when the VPN route is released between autonomous domains, the edge routing device in the autonomous domain does not modify the VPN SID, and the route releasing process can be simplified.
In one possible implementation, the method further includes: and correspondingly adding the VPN SID and the third next hop in the third routing message to the routing table. In this way, the message addressed to the prefix address in the third routing message can be forwarded.
In one possible implementation, sending a first routing message to a first node of a first autonomous domain includes: a first routing message is sent to a first node of the first autonomous domain via EBGP. Therefore, the routing release among the autonomous domains can be realized.
In a third aspect, the present application provides a method for forwarding a packet, where the method is applied to a second node of a second autonomous domain, and the second node is an edge routing device of the second autonomous domain, and the method includes: receiving a first message sent by a first node of a first autonomous domain, wherein the first node is edge routing equipment of the first autonomous domain, the first message comprises a VPN SID, and the first message is an SRv6 message destined to a prefix address associated with the VPN SID; determining a forwarding strategy of the first message in the second autonomous domain based on the VPN SID; and sending the first message based on the forwarding strategy, wherein the VPN SID included in the first message sent based on the forwarding strategy is the same as the VPN SID included in the received first message.
According to the scheme, the second node of the second autonomous domain receives the first message sent by the first node of the first autonomous domain, and the forwarding strategy of the first message in the second autonomous domain is determined by using the VPN SID. And then the second node sends the first message based on the forwarding strategy. The first message received by the second node is the same as the VPN SID in the first message sent by the second node. Therefore, when the message is forwarded between the autonomous domains, the VPN SID does not need to be modified, and the message forwarding process can be simplified.
In a possible implementation manner, determining a forwarding policy of the first packet in the second autonomous domain based on the VPN SID includes: if the VPN SID is associated with SRv6Policy tunnel information, determining that a forwarding strategy of the first message in the second autonomous domain is a strategy based on an SRv6Policy tunnel; if the VPN SID is not associated with SRv6Policy (Policy) tunnel information, determining that a forwarding Policy of the first packet in the second autonomous domain is a Policy based on an SRv6 minimum cost (BE) tunnel. In this way, the forwarding Policy can be accurately determined by whether or not the VPN SID is associated with SRv6Policy tunnel information.
In one possible implementation, the method further includes: receiving a third routing message sent by a third node of the second autonomous domain, wherein the third routing message comprises a VPN SID, a prefix address and a next hop, and the next hop in the third routing message is the third node; and correspondingly adding the VPN SID and the next hop in the third routing message to a routing table.
In the solution shown in the present application, in the process of routing publishing, the second node adds the VPN SID and the next hop to its own routing table. In the process of message forwarding, the second node can search the next hop in the routing table based on the VPN SID, so as to realize the rapid forwarding of the message.
In a possible implementation manner, the sending the first packet based on the forwarding policy includes: if the forwarding strategy is based on the SRv6Policy tunnel, the SRv6Policy tunnel information is encapsulated in the first message based on the corresponding next hop of the VPN SID in the routing table, and a second message is obtained; sending a second message; and if the forwarding strategy is based on the SRv6 BE tunnel, sending a first message by using an outgoing interface corresponding to the next hop. In this way, the second autonomous domain can forward the message through different SRv6 tunnels.
In one possible implementation, the method further includes: obtaining a first routing message, wherein the first routing message comprises a VPN SID, a prefix address and a next hop of the first routing message, the next hop of the first routing message is a second node, and the VPN SID in the first routing message is the same as the VPN SID in the third routing message; a first routing message is sent to the first node.
According to the scheme, in the process of route release, the second node obtains a first route message, and the prefix address in the first route message is the same as the prefix address in the third route 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 different from the next hop in the third routing message. The second node sends a first routing message to a second node of the first autonomous domain. Thus, when the VPN route is released between autonomous domains, the edge routing device in the autonomous domain does not modify the VPN SID, and the route releasing process can be simplified.
In one possible implementation manner, the destination address field in the header of the internet protocol version six (ipv 6) packet of the first packet received by the second node includes the VPN SID.
In a fourth aspect, the present application provides a method for forwarding a packet, where the method is applied to a first node of a first autonomous domain, and the first node is an edge routing device of the first autonomous domain, and the method includes: receiving a first message, wherein the first message comprises a VPN SID, and the first message is an SRV6 message to a prefix address associated with the VPN SID; determining a next hop based on the VPN SID, wherein the next hop is a second node of the second autonomous domain, and the second node is an edge routing device of the second autonomous domain; and sending a first message based on the next hop, wherein the VPN SID included in the sent first message is the same as the VPN SID included in the received first message.
In the scheme shown in the application, a first node of a first autonomous domain receives a first message, determines a next hop based on a VPN SID in the first message, and then sends the first message based on the next hop. The VPN SID included in the first message sent by the first node is the same as the VPN SID included in the received first message. Therefore, when the message is forwarded between the autonomous domains, the VPN SID does not need to be modified, and the message forwarding process can be simplified.
In one possible implementation, before determining the next hop based on the VPN SID, the method further comprises: receiving a first routing message sent by a second node, wherein the first routing message comprises a VPN SID, a prefix address and a next hop; correspondingly adding the VPN SID and the next hop in the first routing message to a routing table; determining a next hop based on the VPN SID, comprising: in the routing table, a next hop corresponding to the VPN SID is determined.
In the solution shown in the present application, in the process of routing release, the first node adds the VPN SID and the next hop to its own routing table. In the process of message forwarding, the first node can search the next hop in the routing table based on the VPN SID, so as to realize the rapid forwarding of the message.
In one possible implementation, the method further includes: obtaining a second routing message, wherein the second routing message comprises a VPN SID, a prefix address and a next hop of the second routing message, the next hop of the second routing message is a first node, and the VPN SID in the first routing message is the same as the VPN SID in the second routing message; a second routing message is advertised at the first autonomous domain.
According to the scheme, in the process of route publishing, a first node obtains a second route message, and the prefix address in the second route message is the same as the prefix address in the first route 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 different from the next hop in the first routing message. The first node advertises the second routing message in the first autonomous domain. Thus, when the VPN route is released between the autonomous domains, the edge routing equipment of the autonomous domain does not modify the VPN SID, and the route releasing process can be simplified.
In one possible implementation, receiving the first packet includes: and receiving the first message through the SRv6 BE tunnel or the SRv6Policy tunnel. In this way, SRv6 tunnels can be flexibly used in the first autonomous domain.
In one possible implementation, the destination address field in the IPv6 header of the first packet sent includes the VPN SID. In this way, the first packet can be forwarded based on the VPN SID.
In a fifth aspect, the present application provides an apparatus for route distribution, where the apparatus is applied to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the apparatus includes:
a receiving module, configured to receive a first routing message sent by a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, the first routing message includes a VPN SID, a prefix address associated with the VPN SID, and a first next hop, the first next hop is the second node, and the first routing message is used to send a packet addressed to the prefix address;
a publishing module to:
obtaining a second routing message, where 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 VPN SID in the first routing message is the same as the VPN SID in the second routing message;
and advertising the second routing message in the first autonomous domain, wherein the second routing message is used for sending a message addressed to the prefix address.
In one possible implementation, the apparatus further includes:
an adding module, configured to correspondingly add the VPN SID and the first next hop in the first routing message to a routing table.
In a possible implementation manner, the receiving module is configured to receive, through an external border gateway protocol EBGP, a first routing message sent by a second node in a second autonomous domain.
In a possible implementation manner, the first routing message further includes a color parameter, where the color parameter is a color parameter configured in the second autonomous domain; the issuing module is further configured to modify the color parameter in the second routing message to be the color parameter 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 before the first autonomous domain advertises the second routing message.
In a possible implementation manner, the first routing message does not include a color parameter;
the issuing module is further configured to, before the first autonomous domain advertises the second routing message, add, to the second routing message, a color parameter configured on the first node if the first node is configured with the color parameter.
In a sixth aspect, the present application provides an apparatus for route distribution, where the apparatus is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the apparatus includes:
a receiving module, configured to receive a third routing message sent by a third node of 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 a packet addressed to the prefix address;
a publishing module, configured to obtain a first routing message, where the first routing message includes the VPN SID, the prefix address, and a first next hop, the first next hop 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;
a sending module, configured to send the first routing message to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the first routing message is used to send a packet addressed to the prefix address.
In one possible implementation, the apparatus further includes:
and an adding module, configured to correspondingly add the VPN SID and the third next hop in the third routing message to a routing table.
In a possible implementation manner, the sending module is configured to send the first routing message to a first node of a first autonomous domain through EBGP.
In a seventh aspect, the present application provides an apparatus for forwarding a packet, where the apparatus is applied to a second node of a second autonomous domain, and the second node is an edge routing device of the second autonomous domain, and the apparatus includes:
a receiving module, configured to receive a first packet sent by a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, the first packet includes a VPN SID, and the first packet is an SRv6 packet addressed to a prefix address associated with the VPN SID;
a policy determination module, configured to determine, based on the VPN SID, a forwarding policy of the first packet in the second autonomous domain;
and a sending module, configured to send the first packet based on the forwarding policy, where a VPN SID included in the first packet sent based on the forwarding policy is the same as a VPN SID included in the received first packet.
In one possible implementation manner, the policy determining module is configured to:
if the VPN SID is associated with SRv6Policy tunnel information, determining that a forwarding Policy of the first message in the second autonomous domain is a Policy based on the SRv6Policy tunnel;
and if the VPN SID is not associated with SRv6Policy tunnel information, determining that the forwarding Policy of the first message in the second autonomous domain is a Policy based on an SRv6 BE tunnel.
In a possible implementation manner, the receiving module is further configured to receive a third routing message sent by a third node of the second autonomous domain, where the third routing message includes the VPN SID, the prefix address, and a next hop in the third routing message is the third node; correspondingly adding the VPN SID and the next hop in the third routing message to a routing table.
In a possible implementation manner, the sending module is configured to:
if the forwarding Policy is based on the Policy of the SRv6Policy tunnel, encapsulating SRv6Policy tunnel information in the first message based on the corresponding next hop of the VPN SID in the routing table to obtain a second message; sending the second message;
and if the forwarding strategy is a strategy based on an SRv6 BE tunnel, sending the first message by using an output interface corresponding to the next hop.
In one possible implementation, the apparatus further includes: a publishing module, configured to obtain a first routing message, where the first routing message includes the VPN SID, the prefix address, and a next hop of the first routing 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.
In a possible implementation manner, the destination address field in the IPv6 header of the received first packet includes the VPN SID.
In an eighth aspect, the present application provides a device for forwarding a packet, where the device is applied to a first node of 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 packet, where the first packet includes a VPN SID, and the first packet is an SRV6 packet addressed to a prefix address associated with the VPN SID;
a next hop determination module, configured to determine a next hop based on the VPN SID, where the next hop is a second node of a second autonomous domain, and the second node is an edge routing device of the second autonomous domain;
and the sending module is used for sending the first message based on the next hop, wherein the VPN SID contained in the sent first message is the same as the VPN SID contained in the received first message.
In a possible implementation manner, the receiving module is further configured to receive a first routing message sent by the second node before determining a next hop based on the VPN SID, where the first routing message includes 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;
and the next hop determining module is configured to determine, in the routing table, a next hop corresponding to the VPN SID.
In one possible implementation, the apparatus 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 a next hop of the second 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; advertising the second routing message at the first autonomous domain.
In a possible implementation manner, the receiving module is configured to:
and receiving the first message through an SRv6 BE tunnel or an SRv6Policy tunnel.
In a possible implementation manner, the destination address field in the IPv6 header of the sent first packet includes the VPN SID.
In a ninth aspect, the present application provides a route distribution system, which includes the apparatus of the fifth aspect and the apparatus of the sixth aspect.
In a tenth aspect, the present application provides a route distribution system, which includes the apparatus of the seventh aspect and the apparatus of the eighth aspect.
In an eleventh aspect, the present application provides an apparatus for route distribution, where the apparatus is applied to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the apparatus includes a processor and a memory, where the memory is configured to store program codes, and the processor is configured to call the program codes in the memory to enable the apparatus to perform the method for route distribution provided in the first aspect or any optional manner of the first aspect.
In a twelfth aspect, the present application provides a route distribution device, including a network interface, a memory, and a processor connected to the memory;
the network interface is used for receiving a first routing message sent by a second node of a second autonomous domain;
the memory is to store program instructions;
the processor is configured to execute the program instructions to cause the route issuing device to perform the route issuing method provided in the first aspect or any one of the optional manners of the first aspect.
In a thirteenth aspect, the present application provides a computer-readable storage medium, in which at least one instruction is stored, and the instruction is read by a processor to cause a route issuing device to execute the method for route issuing provided by the first aspect or any one of the optional manners of the first aspect.
In a fourteenth aspect, the present application provides a computer program product comprising computer instructions stored in a computer readable storage medium. The processor of the route distribution device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the route distribution device performs the method for route distribution provided by the first aspect or any one of the options of the first aspect.
In a fifteenth aspect, the present application provides an apparatus for route distribution, which is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the apparatus includes a processor and a memory, where the memory is configured to store program codes, and the processor is configured to call the program codes in the memory to cause the apparatus to execute a method for route distribution provided in any one of the second aspect or the second aspect.
In a sixteenth aspect, the present application provides a route distribution device, including a network interface, a memory, and a processor connected to the memory;
the network interface is used for receiving a third routing message sent by a third node of the second autonomous domain and sending a first routing message to a first node of the first autonomous domain;
the memory is to store program instructions;
the processor is configured to execute the program instructions to cause the route issuing device to execute the route issuing method provided in the second aspect or any optional manner of the second aspect.
In a seventeenth aspect, the present application provides a computer-readable storage medium having at least one instruction stored therein, the instruction being read by a processor to cause a route distribution device to perform the method for route distribution provided in the second aspect or any one of the alternatives of the second aspect.
In an eighteenth aspect, the present application provides a computer program product comprising computer instructions stored in a computer readable storage medium. The processor of the route distribution device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to make the route distribution device execute the route distribution method provided by the second aspect or any one of the alternatives of the second aspect.
In a nineteenth aspect, the present application provides an apparatus for forwarding a packet, where the apparatus is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the apparatus includes a processor and a memory, where the memory is configured to store program codes, and the processor is configured to call the program codes in the memory to enable the apparatus to execute a method for forwarding a packet provided in the third aspect or any optional manner of the third aspect.
In a twentieth aspect, the present application provides a message forwarding device, including a network interface, a memory, and a processor connected to the memory;
the network interface is used for receiving a first message sent by a first node of a first autonomous domain and sending the first message based on the next hop and the forwarding strategy;
the memory is to store program instructions;
the processor is configured to execute the program instructions to enable the message forwarding device to execute the method for forwarding a message provided in any optional manner of the third aspect or the third aspect.
In a twenty-first aspect, the present application provides a computer-readable storage medium, where at least one instruction is stored in the storage medium, and the instruction is read by a processor to cause a message forwarding device to execute the method for forwarding a message provided in the third aspect or any optional manner of the third aspect.
In a twenty-second aspect, 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 executes the computer instructions, so that the message forwarding device executes the method for forwarding a message provided in the third aspect or any optional manner of the third aspect.
In a twenty-third aspect, the present application provides an apparatus for forwarding a packet, where the apparatus is applied to a first node of a first autonomous domain, and the first node is an edge routing device of the first autonomous domain, the apparatus includes a processor and a memory, where the memory is configured to store program codes, and the processor is configured to call the program codes in the memory to enable the apparatus to execute the method for forwarding a packet provided in any one of the fourth aspect and the fourth aspect.
In a twenty-fourth aspect, 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 packet sent by a first node of a first autonomous domain, and send the first packet based on the next hop and the forwarding policy;
the memory is to store program instructions;
the processor is configured to execute the program instructions to enable the message forwarding device to execute the method for forwarding a message provided in any one of the fourth aspect and the fourth aspect.
In a twenty-fifth aspect, the present application provides a computer-readable storage medium, where at least one instruction is stored, where the instruction is read by a processor to cause a message forwarding device to execute the method for forwarding a message provided in the fourth aspect or any one of the options of the fourth aspect.
In a twenty-sixth aspect, 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 executes the computer instructions, so that the message forwarding device executes the method for forwarding a message provided in the fourth aspect or any optional manner of the fourth aspect.
Drawings
Fig. 1 is a schematic diagram of a format of an SRv6 packet according to an exemplary embodiment of the present application;
fig. 2 is a schematic diagram of a format of an SRv6SID provided in an exemplary embodiment of the present application;
fig. 3 is a schematic diagram illustrating two autonomous domains publishing VPN routing information and forwarding packets according to 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 flowchart illustrating a method for route distribution according to an exemplary embodiment of the present application;
fig. 7 is a flowchart illustrating a method for route distribution according to an exemplary embodiment of the present application;
fig. 8 is a flowchart illustrating a method for route distribution according to an exemplary embodiment of the present application;
fig. 9 is a flowchart illustrating a method for forwarding a packet according to an exemplary embodiment of the present application;
fig. 10 is a flowchart illustrating a method for forwarding a packet according to an exemplary embodiment of the present application;
fig. 11 is a flowchart illustrating a method for forwarding a packet according to an exemplary embodiment of the present application;
fig. 12 is a flowchart illustrating a method for forwarding a packet according to an exemplary embodiment of the present application;
fig. 13 is a flowchart illustrating a method for forwarding a packet according to 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 illustrating different autonomous domains using different tunnels as provided by an exemplary embodiment of the present application;
fig. 16 is a schematic structural diagram of an apparatus for route distribution according to an exemplary embodiment of the present application;
fig. 17 is a schematic structural diagram of an apparatus for route distribution according to an exemplary embodiment of the present application;
fig. 18 is a schematic structural diagram of an apparatus for forwarding a packet according to an exemplary embodiment of the present application;
fig. 19 is a schematic structural diagram of an apparatus for routing distribution according to an exemplary embodiment of the present application;
FIG. 20 is a schematic block diagram of an apparatus provided in an exemplary embodiment of the present application;
fig. 21 is a schematic structural diagram of an apparatus provided in an exemplary embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Some concepts of terms related to the embodiments of the present application are explained below.
(1) Segment Routing (SR)
SR is a tunneling technique based on a source route forwarding mode. The basic design idea of the SR is as follows: the state of each flow is maintained at the head node of the traffic flow, without the need to maintain the state of each flow at the intermediate and tail nodes. The head node and the tail node are the head node and the tail node of the SR tunnel.
(2) SR message
The SR packet includes an SR header and an Internet Protocol (IP) packet. The SR header is encapsulated in an IP header and an IP payload (payload) shell. From the sequence of the message header to the message tail, the SR message is sequentially an SR header, an IP header, and an IP payload from front to back.
Wherein, the SR header is usually added to the message by the header node of the SR tunnel. The SR header includes path information of the SR tunnel. For example, the SR header includes information of at least one node or at least one link in the SR tunnel.
IP packets are sometimes also referred to as data packets, traffic packets, or raw packets. The IP payload includes traffic data. The IP packet includes, but is not limited to, an internet protocol version4 (IPv 4) packet or an IPv6 packet. And under the condition that the IP message is an IPv4 message, the IP header is specifically an IPv4 header. And under the condition that the IP message is an IPv6 message, the IP header is specifically an IPv6 header.
(3) SRv6 message
The SRv6 message is one of SR messages, and when the SR message is an SRv6 message, an SR header in the SR message is an SRv6 header. Fig. 1 is a schematic diagram of a format of an SRv6 message. As shown in fig. 1, the SRv6 header includes an IPv6 basic header and a 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 load length (payload length) field, a next header (next header) field, a valid hop limit (hop limit) field, an IPv6 message Source Address (SA) field, and an IPv6 message destination address (destination address, SA) field. Some fields in the IPv6 basic header are explained below.
The version field is used to identify the protocol version of the current IP and has a value of 6.
the traffic class field is used to identify quality of service (QoS).
The flow label field is used to indicate load sharing. For example, the backbone node does not need to perform Hash (Hash) according to the content in the inner layer packet header, and only needs to perform Hash according to the flow label to realize flow-based load sharing.
The payload length field identifies the message payload length in the SRv6 message, excluding the IPv6 base header.
The next header field identifies the type of the next header.
And the hop limit field identifies the forwarding times of the SRv6 message between the routers, and when the field is reduced by 1 and 0 after the SRv6 message is forwarded once, the SRv6 message is discarded.
The SA field identifies the source address of the SRv6 message.
The DA field identifies the destination address of the SRv6 message.
The SRH includes a next header (next header) field, an extended header length (header extended length) field, a routing type (routing type) field, a number of remaining Segments (SL), a last Segment index (last entry) field, flags (flags) field, a tag (tag) field, and a Segment List (Segment List), which may also be abbreviated as SID List.
Some fields in SRH are explained below.
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 has a unit of 8 bytes.
The routing type field is used to indicate the type of routing header, and the value of the routing type field is 4 for SRH.
The SL field is used to indicate the number of intermediate nodes that should still be accessed before reaching the destination node. The SL field functions as a pointer to the active SID in the segment list. For example, if the segment list of SRH includes 5 SIDs, i.e., SID0, SID1, SID2, SID3 and SID4, and SL takes a value of 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 packets.
A Segment List includes one or more SRv6 SIDs. Each SRv6SID is in the form of an IPv6 address. The Segment List is encoded in a way that the paths are arranged in reverse order: the last Segment is at the first position of Segment List (Segment List [0 ]), and the first Segment is at the last position of Segment List (Segment List [ n ]). The last Segment refers to the Segment that the SRv6 message passes through last, and the first Segment refers to the Segment that the SRv6 message passes through first.
Optionally, SRH further includes one or more type, length, value (TLV).
(4) Segment identification (segment ID, SID)
SID is the core element of SR. In [ RFC8402 Segment Routing Architecture ], a Segment (Segment) is defined as the following semantics: a segment can present any instruction, and service based (a SID can represent any topology, instruction, or service). The SID is used to identify a unique segment. SIDs in SRv6 are in the form of IPv6 addresses, and may also be referred to as SRv6 SIDs (Segment identifiers) in general.
(5)SRv6 SID
The SRv6SID is in the form of an IPv6 address, which may be considered an IPv6 address. The length of the SRv6SID is 128 bits. Fig. 2 is a schematic diagram of an SRv6 SID. As shown in fig. 2, the SRv6SID includes three parts: location identity (locator), function (function), and parameters (args). The locator occupies the high bits of the SRv6SID, the args occupies the low bits of the SRv6SID, and the function occupies the other bits of the SRv6 SID. The locator is used to locate to the node that issued the SRv6 SID. One locator represents an IPv6 network segment, and the IPv6 address under the network segment can be distributed as the SRv6 SID. The function represents instructions of the device, the instructions are preset on the device, and the function part is used for instructing the issue node of the SRv6SID to perform corresponding functional operation. args is an optional parameter, and may define information such as flows and services of some messages.
The SRv6SID includes End SID, end.x SID, end.dt4 SID, and the like, depending on the function of the SRv6 SID. The End SID is used for identifying a certain destination address prefix in the network; the end.X SID is used to identify a certain link in the network; end.DT4 SID represents Provider Edge (PE) type end node (Endpoint) SID for identifying a certain IPv4VPN instance in the network. And the forwarding action corresponding to the end.DT4 SID is to decapsulate the message and search the routing table of the IPv4VPN instance for forwarding. The end.DT4 SID can be generated through static configuration, and can also be automatically allocated in the dynamic SID range of the Locator through BGP.
The VPN SID mentioned later herein belongs to any one of two-layer VPN, three-layer VPN, public network, etc., for example, EDN.DT4SID, END.DX4 SID, END.DT6 SID, END.DX6 SID, end.DX2 SID, and End.DT2U SID, etc. And the end.DT6 SID represents the Endpoint SID of the PE type and is used for identifying a certain IPv6 VPN instance in the network. Dxx 4SID represents an Endpoint SID of a PE type of three-layer cross-connect, which is used to identify a certain IPv4 user edge (CE) in the network. Dxx 6SID represents an Endpoint SID of a PE type three-layer cross-connect, for identifying a certain IPv6 CE in the network. Dx2 SID represents a two-tier cross-connect Endpoint SID used to identify an Endpoint. Dt2u SID represents an Endpoint SID for two-layer cross-connect and for performing a unicast Media Access Control (MAC) table lookup function, for identifying an Endpoint.
(6) SR tunnel
An SR tunnel is a virtual point-to-point connection from a head node to a 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 IPv6 SR function. The transmission path of the encapsulated packet in the network is called SR tunnel.
The SR tunnel comprises an SRv6 BE tunnel, an SRv6Policy tunnel and the like. The SRv6Policy tunnel may also be referred to as an SRv6 Traffic Engineering (TE) Policy tunnel.
The SRv6 BE tunnel is a network segment through a release position identifier (locator), and nodes in the SRv6 calculate the optimal route reaching the locator network segment according to a shortest path first algorithm. The path corresponding to the optimal route is an SRv6 BE tunnel. Optionally, when a locator network segment is released, an Interior Gateway Protocol (IGP) may be used in one autonomous domain, and EBGP may be used in different autonomous domains.
The SRv6Policy tunnel is a new tunnel drainage technology developed on the basis of the SRv6 technology, and the path of the SRv6Policy tunnel is a SID List (Segment List) represented as a specified path. Each SID list is an end-to-end path from a head node to a tail node and indicates that intermediate nodes traversed in the network follow a specified path, rather than following a computed shortest path. The SRv6Policy tunnel includes three parts: a head node, a coloring or color (color) parameter, and a tail node. The head node is a node generated by an SRv6Policy tunnel; the color parameter is an extended group attribute carried by an SRv6Policy tunnel; the tail node is the end node of the SRv6Policy tunnel. The color parameter defines a service-level agreement (SLA) policy at an application level, and can plan a transmission path based on a specific service SLA. An SRv6Policy tunnel may contain multiple candidate paths (candidate paths). The candidate paths carry priority attributes. And taking the effective candidate path with the highest priority as the main path of the SRv6Policy tunnel. A candidate path may contain multiple Segment lists, each carrying a Weight (Weight) attribute. Load sharing can be formed between multiple Segment lists.
(7) Local SID table (local SID table)
The local SID table is a table that the SRv6 enabled node would maintain. The local SID table is used for storing the SRv6SID generated by the node and the information related to the SRv6 SID. For example, the local SID table includes SRv6SID, SID type, and SID-bound egress interface, etc., SRv6 SID-associated VPN instance (instance), etc.
(8) VPN Routing Forwarding (VRF)
VRFs may also be referred to as VPN instances. A VPN instance is a specialized entity that PEs establish and maintain for directly connected sites (sites). Each site has its own VPN instance on a PE, each VPN instance containing routing and forwarding tables to one or more CEs to which the PE is directly connected. In the embodiments of the present application, the VRF may be a two-layer VPN instance, a three-layer VPN instance, and the like.
The following describes a related art of the embodiment of the present application.
With the increasing network scale, the internet is divided into a plurality of autonomous domains, and VPN routing information needs to be diffused among different autonomous domains. In one implementation, MP-EBGP is run between different autonomous domains. And the edge routing equipment in the autonomous domain distributes all VPN routing information in the autonomous domain to the edge routing equipment in another autonomous domain through MP-EBGP. The edge routing device in the other autonomous domain redistributes labels for the received VPN routing information and performs notification in the autonomous domain where the edge routing device is located.
For example, fig. 3 is a schematic diagram of two autonomous domains publishing VPN routing information and forwarding packets. As shown in fig. 3, it is assumed that there are two autonomous domains, namely autonomous domain 1 and autonomous domain 2, where Autonomous System Border Router (ASBR) 1, access router (ACC) 1, ASBR2, and the like in the autonomous domain 1, and ASBR3, ASBR4, PE1, PE2, and the like in the autonomous domain 2. CE1 is connected to ACC1, CE2 is connected to PE1 and PE2, and CE2 has an address of 2.2.2.2. In current option (option) B, after PE1 sends the VPN route for CE2 to ASBR3, the VPN route includes the address, next hop and label L1 of CE2, 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 floods the VPN route within autonomous domain 1. In this way, when the message is subsequently transmitted, after receiving the message sent by the ACC1 (the message is sent to the CE 2), the ASBR1 switches the label L3 to the label L2 and sends the label L2 to the ASBR3. After receiving the message sent by the ASBR1, the ASBR3 switches the label L2 to the label L1. The ASBR3 sends the packet of the exchange label to the PE1, the PE1 pops up the label L1, and sends the packet to the CE2 based on the address of the CE2, and only part of the content of the packet is shown in fig. 3. In this way, the edge routing devices of each autonomous domain allocate labels to all VPN routing information, so that label switching is also required when forwarding a packet, and the processing complexity is high.
In another implementation, in option A, for A VPN client (VPN-A) that needs to cross an autonomous domain, A same VPN-A needs to be configured on the ASBR of the autonomous domain. The ASBR of an autonomous domain regards the ASBR of the opposite end as the CE equipment of the ASBR. In this way, for two autonomous domains, as for a multi-protocol label switching (MPLS) VPN service operating in one autonomous domain, a VPN route in the autonomous domain is first diffused to an ASBR of the autonomous domain, and the ASBR then diffuses a VPN route to an ASBR of another autonomous domain. After receiving the VPN route, the ASBR of the other autonomous domain diffuses the VPN route in the autonomous domain. Thus, the intercommunication of VPN routes of two autonomous domains is realized. In option a, creating VPN instances for each VPN results in an excessive number of VPN instances on the ASBRs, since the ASBRs in the autonomous domain need to manage all VPN routes. Moreover, since the ASBRs are commonly forwarded through IP, different interfaces are required to be used for each VPN across autonomous domains, and the requirements on the ASBRs are relatively high. Moreover, if the VPN spans a plurality of autonomous domains, the intermediate autonomous domains must support the VPN, and the configuration is large. In addition, the message transmission is not end-to-end.
In the embodiment of the application, the VPN SID in the SRv6 is used as a label, and when the VPN route is issued between the autonomous domains, the VPN SID is not modified, that is, label switching is not performed, so that the issuing mode of the VPN route in option B and the forwarding mode of the message are optimized. Furthermore, the edge routing device in an autonomous domain does not need to treat the ASBR of another autonomous domain as its own CE, and therefore does not need to create a VPN instance for each VPN. And because the VPN SID is carried end to end when the message is forwarded, the end to end service can be realized compared with option A. In addition, by adopting the embodiment of the application, each subdomain can be flexibly controlled according to the strategy of each subdomain.
The execution body of the embodiment of the present application is described below.
The application provides a method for forwarding a packet, and an execution main body of the method can be a first node of a first autonomous domain or a second node of a second autonomous domain. The first node may be an edge routing device of a first autonomous domain, such as an ASBR, PE, aggregation (AGG) node, or the like. The second node may be an edge routing device of a second autonomous domain, such as an ASBR, PE, metro Core (MC), or the like.
The application also provides a method for issuing the route, and an execution subject of the method can be a first node of the first autonomous domain or a second node of the second autonomous domain.
When the first node mentioned in the present application performs route distribution, it is called a route distribution device, and when the first node performs packet forwarding, it may be called a packet forwarding device. Similarly, when the second node performs route distribution, it is called a route distribution device, and when the second node performs packet forwarding, it may be called a packet forwarding device. That is to say, the first node and the second node are devices with functions of routing, issuing and forwarding messages.
An application scenario of the embodiment of the present application is described below.
Fig. 4 is an exemplary application scenario. As shown in fig. 4, 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 comprises the first node, the ACC connected to CE1 and some other nodes, such as AGGs, PEs, etc., which are not shown in fig. 4. The second autonomous domain comprises a second node, a third node connected to CE2 and some other nodes, such as PEs, etc., in which the third node aggregates links with the PEs. There is a connection between the first node and the second node.
FIG. 5 is another exemplary application scenario. As shown in fig. 5, 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 comprises the first node, the node connecting CE1 and some other nodes, such as ACC, AGG, etc., which are not shown in fig. 5. The second autonomous domain comprises a second node, a third node connected to CE2 and some other nodes, such as PEs, etc., in which the third node aggregates links with the PEs. The third autonomous domain includes a plurality of PEs (PE 1 to PE 2). The first node is connected to PE1 and PE2 is connected to the second node. Fig. 5 only shows that a third autonomous domain exists between the first autonomous domain and the second autonomous domain, but it is needless to say that a plurality of autonomous domains exist between the first autonomous domain and the second autonomous domain, and the scheme of the present application can also be used.
It should BE noted that, in the application scenarios shown in fig. 4 and fig. 5, the first autonomous domain and the second autonomous domain may use an SRv6 tunnel to transmit the packet, where the SRv6 tunnel is an SRv6policy tunnel or an SRv6 BE tunnel.
It should be further noted that the network architectures shown in fig. 4 and fig. 5 are only examples, and cannot be used to limit the application scenarios of the embodiments of the present application.
The following describes a method flow of route distribution with reference to fig. 4, and refer to fig. 6. Fig. 6 illustrates an example of the address of the distribution CE 2.
Step S601, a third node of 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, where the third routing message includes a VPN SID, a prefix address associated with the VPN SID, and a third next hop, and the third next hop is the third node, and the third routing message is used to send a packet addressed to the prefix address.
The prefix address is an address of the CE2, and the prefix address may also be referred to as a private network routing prefix or the like.
In this embodiment, the third node of the second autonomous domain is connected with CE2, and issues the prefix address of CE2 to the first autonomous domain. The third node generates a VPN SID or acquires a statically configured VPN SID, adds the prefix address of CE2 and an outgoing interface to the prefix address to the VRF, adds the VPN SID in a local SID table, and associates the VPN SID with the VRF. And the third node sends a third routing message through the BGP, wherein the third routing message comprises the prefix address of the CE2, a third next hop and the VPN SID, and the third next hop is the third node. The second node receives the third routing message.
Optionally, 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 a third routing message sent by the third node through the BGP.
Optionally, a Route Reflector (RR) 1 is connected to each of the third node and the second node. When the third node sends the third routing message to the second node, the third node sends the third routing message to RR1, and RR1 sends the third routing message to the second node. And the second node receives the third routing message sent by the RR 1.
Optionally, a routing table is created on the second node, and the routing table may be a VPN SID routing table. The routing table includes a VPN SID field, a next hop field, etc. In the second autonomous domain, if an SRv6 BE tunnel is formed 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. In the second autonomous domain, if an SRv6policy tunnel is between the third node and the second node, the third routing message further includes a color parameter, where the color parameter is a color parameter configured on the third node in the second autonomous domain. And the second node correspondingly adds the VPN SID, the third next hop and the color parameter into the routing table. In addition, when the prefix address is added to the routing table, the prefix address in the third routing message can be correspondingly added.
It should be noted that, under the condition that the third routing message includes a color parameter, 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, where the first routing message includes a VPN SID, a prefix address, and a first next hop, the first next hop 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 fact that the VPN SID in the first routing message is the same as the VPN SID in the third routing message means 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, namely the VPN SID is not modified when a route is issued.
In this embodiment, after receiving the third routing message, the second node modifies a third next hop in the third routing message into a first next hop (the first next hop is the second node), and obtains the first routing message; or after receiving the third routing message, the second node obtains the prefix address and the VPN SID from the third routing message, and then generates a first routing message, wherein the first routing message comprises the VPN SID, the prefix address and a first next hop.
Step S603, the second node sends a first routing message to the first node of the first autonomous domain.
The first node is an edge routing device of a first autonomous domain, and the first routing message is used for sending a message addressed to the prefix address.
In this embodiment, the second node sends a first routing message to the first node of the first autonomous domain, where the first routing message is used to send a packet addressed to a prefix address in the first routing message.
Optionally, an EBGP neighbor is established between the second node and the first node. The second node sends the first routing message to the first node through the EBGP.
Optionally, the second node and the first node are both connected to the route reflector RR2. When the second node sends the first routing message to the first node, the second node sends the first routing message to the RR2. RR2 sends a first routing message to the first node. The first node receives a first routing message sent by the RR2.
Step S604, the first node receives a first routing message sent by a second node of the second autonomous domain, where the second node is an edge routing device, the first routing message includes a VPN SID, a prefix address associated with the VPN SID, and a first next hop, the first next hop is the second node, and the first routing message is used to send a packet addressed to the prefix address.
Optionally, in step S604, the first node receives the first routing message sent by the second node through the EBGP.
Optionally, a routing table is created on the first node, which may be a VPN SID routing table. The routing table includes a VPN SID field, a next hop field, etc. And the first node correspondingly adds the VPN SID and the first next hop in the first routing message to a routing table. In addition, when the first node is added 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 a second routing message, where the second routing message includes a VPN SID, a prefix address, and a second next hop, the second 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 VPN SID in the first routing message is the same as the VPN SID in the second routing message, which means 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 SID is not modified when the route is released.
In this embodiment, after receiving the first routing message, the first node modifies a first next hop in the first routing message into a second next hop (the second next hop is the first node), and obtains a second routing message; or after receiving the first routing message, the first node obtains the prefix address and the VPN SID from the first routing message and then generates a second routing message, wherein the second routing message comprises the VPN SID, the prefix address and a second next hop.
Step S606, the first node advertises a second routing message in the first autonomous domain, where the second routing message is used to send a packet addressed to the prefix address.
In this embodiment, 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. Thus, the first autonomous domain has a route to the prefix address.
Optionally, the first node establishes a BGP neighbor with the ACC, and the first node sends the second routing message to the ACC through the BGP. Or, the first node and the ACC of the first autonomous domain are both connected to RR3, and the first node sends the second routing message to RR 3. RR3 sends a second routing message to the ACC. Thus, the ACC receives the second routing message, and adds the prefix address, the VPN SID, and the next hop to the forwarding table of the VRF. In addition, the ACC advertises a prefix address to attached CE1, so that CE1 stores the prefix address of CE 2. Thus, subsequent CE1 can send a message to CE 2.
To better understand the flow of FIG. 6, a schematic diagram of the address of the publishing CE2 is given in conjunction with FIG. 4. Referring to FIG. 7, the VPN SID is tagged in the routing message. In FIG. 7, the prefix address of CE2 is 2.2.2.2 and the value of VPN SID is VPN SID1.
For the flow shown in fig. 6, in the second autonomous domain, if an SRv6policy tunnel is located between the third node and the second node, the third routing message further includes a color parameter, where the color parameter is a color parameter configured on the third node in the second autonomous domain. 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. Thus, after the ACC of the first autonomous domain receives the second routing message, the VPN SID, the next hop and the color parameter are correspondingly added to the routing table. In this way, the color parameter acquired by the ACC of the first autonomous domain belongs to the first autonomous domain configuration.
For the flow shown in fig. 6, in the second autonomous domain, if an SRv6 BE tunnel is between the third node and the second node, the third routing message does not include a color parameter. The first routing message received by the first node does not include the color parameter. The first node may determine whether itself is configured with the color parameter, and if itself is configured with the color parameter, add the color parameter to the second routing message. After receiving 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.
It should be noted that, in the case that the second routing message includes a color parameter, the controller is connected to the first autonomous domain. The controller issues information of the SRv6policy tunnel to the ACC, indicating that the end of the SRv6policy tunnel is the first node, the color parameter and a Segment List including the SID of the node through which the first node is reached. Thus, the message from the ACC to the first node is to overlay SRH, which includes the Segment List indicated by the controller. Of course, the information of the SRv6policy tunnel in the ACC may also be statically configured.
As known from the method flow of route distribution shown in FIG. 6, during the distribution of the VPN route, the VPN SID is not modified, and the VPN SID is end-to-end.
The route distribution process in fig. 6 is illustrated by taking the application scenario in fig. 4 as an example, when the process is applied to the scenario in fig. 5, if the third autonomous domain uses the SRv6 BE tunnel, and the second node sends the route message to the first node, the first route message may not pass through the third autonomous domain, for example, an EBGP neighbor is established between the first node and the second node, and the first route message is directly sent, or the first node and the second node are both connected to an RR, and the first route message is sent through the RR. If the third autonomous domain uses the SRv6policy tunnel, the first routing message passes through the third autonomous domain, and only the next hop is modified without modifying the VPN SID when the first routing message passes through the third autonomous domain. FIG. 8 provides the process of publishing the CE2 address in FIG. 5, where the third autonomous domain uses an SRv6policy tunnel in FIG. 8 and the VPN SID is tagged in the routing message. In FIG. 8, the prefix address of CE2 is 2.2.2.2 and the value of VPN SID is VPN SID1.
Next, a flow of forwarding a packet based on the process of issuing a route shown in fig. 6 is described, referring to fig. 9. Fig. 9 is still the application scenario applied to fig. 4. In fig. 9, a process that a message passes through the first autonomous domain in a process that the CE1 sends the message to the CE2 is taken as an example for description, see steps S901 to S903.
Step S901, the first node receives a first packet, where the first packet includes a VPN SID, and the first packet is an SRV6 packet addressed to a prefix address associated with the VPN SID.
In this embodiment, when the CE1 sends a packet to the CE2, an IP packet sent to the CE2 is generated, and a destination address of the IP packet is a prefix address of the CE 2. The IP packet may be an IPv4 packet, an IPv6 packet, and the like, and this embodiment of the application takes the IP packet as an IPv4 packet as an example for description. CE1 sends IP message to ACC. And the ACC receives the IP message from the interface bound with the VRF. The ACC provides a first packet to the first node. There are many ways in which the first node receives the first packet, which provide three possible ways, namely ways one to three.
In the first mode, the first node receives the first message through an SRv6 BE tunnel.
In the first mode, the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, and finds the associated VPN SID and the next hop. If an SRv6 BE tunnel is used between the ACC and the first node, the ACC uses the VPN SID as the destination address. The ACC encapsulates an IPv6 message header for the IP message, the destination address in the IPv6 message header is the VPN SID, and the source IP address is the SID of the ACC. After the IP message encapsulates the IPv6 message header, a first message is generated. And the ACC determines the route matched with the VPN SID according to the longest matching principle. And the ACC sends the message outwards according to the route until the first message reaches the first node. It should be noted here that, each node that passes from the ACC to the first node determines the route to which the VPN SID is matched according to the longest matching rule.
In the second mode, the first node receives the first message through the SRv6policy tunnel.
In the second mode, the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, finds the associated VPN SID, and determines, based on the color parameter and the next hop corresponding to the VPN SID, SRv6policy tunnel information associated with the color parameter and the next hop, where the next hop is the first node. The SRv6policy tunnel information includes a Segment List to the first node, the Segment List including an ACC. And the ACC encapsulates the SRH and IPv6 basic header on the outer layer of the IP message to obtain the encapsulated message. The SRH includes a Segment List and a VPN SID, which is located in Segment List's Segment List [0]. The encapsulated packet is forwarded to the first node according to the path specified by the Segment List. When the encapsulated message passes through a tail node (endpoint) node, checking an SL value in an SRH, if SL is greater than 0, subtracting 1 from the SL value, updating a destination address in an IPv6 basic head into an address indicated by SL, and searching a routing table according to the destination address in the IPv6 basic head for forwarding; if SL is equal to 0, updating the destination address in the IPv6 basic header to the address indicated by SL, popping up SRH, and searching a routing table according to the destination address in the IPv6 basic header for forwarding. The first message received by the first node comprises an IPv6 basic header and an SRH, wherein the destination address contained in the IPv6 basic header is the SID of the first node, SL in the SRH is equal to 0, segment List in the SRH only contains VPN SID.
And in the third mode, the first node receives the first message through the SRv6policy tunnel and the direct connection link. An SRv6policy tunnel is arranged between the ACC and a previous node of the first node, and the direct connection link is a link between the previous node and the first node.
In the third mode, the ACC matches the prefix address of the IP packet in the forwarding table of the VRF, finds the associated VPN SID, and determines, based on the color parameter and the next hop corresponding to the VPN SID, SRv6policy tunnel information associated with the color parameter and the next hop, where the next hop is the first node. The SRv6policy tunnel information includes a Segment List to a previous node of the first node, the Segment List including an ACC. And the ACC encapsulates the SRH and IPv6 basic header on the outer layer of the IP message to obtain the encapsulated message. The SRH includes a Segment List and a VPN SID, which is located in Segment List's Segment List [0]. The encapsulated packet is forwarded to a node before the first node according to the path specified by the Segment List. And the previous node of 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 the first message is obtained at the moment. The first message comprises an IPv6 basic header and an IP message, and the destination address in the IPv6 basic header is the VPN SID. And the previous node of the first node sends the first message to the first node through the direct link.
Step S902, the first node determines a next hop based on the VPN SID, where the next hop is a second node of the second autonomous domain, and the second node is an edge routing device of the second autonomous domain.
In this embodiment, as can be seen from the flow shown in fig. 6, a routing table including the VPN SID is established on the first node. The first node determines a next hop corresponding to the VPN SID in the routing table. The next hop is a second node of the second autonomous domain.
Step S903, the first node transmits a first packet based on the next hop, where a VPN SID included in the transmitted first packet is the same as a VPN SID included in the received first packet. In the first message sent, the destination address field in the IPv6 header includes the VPN SID.
Wherein, the IPv6 message header is an IPv6 basic header.
In this embodiment, the first node determines the outgoing interface corresponding to the next hop by using the next hop. The first node sends a first message through the outgoing interface. In the first transmitted message, the destination address field in the IPv6 header includes the VPN SID, indicating that label switching is not performed at the first node, so that the processing can be simplified.
In step S903, it should be noted that, in step S901, the first packet is received in different manners, and headers of the first packet sent by the first node in step S903 may be different. The method comprises the following specific steps:
if the first or third mode is adopted in step S901, the first node directly sends the first packet received from the ACC.
If the second method is adopted in step S901, the first packet received by the first node includes an IPv6 basic header and an SRH, SL in the SRH is equal to 0, segment List in the SRH only includes a VPN SID. And the first node updates the destination address in the IPv6 basic header into the VPN SID in the Segment List and pops up the SRH of the first message. At this time, the first packet includes the IP packet sent by the IPv6 basic header and CE 1. Here, the first node only modifies the header, so it can also be considered as sending the first packet.
The forwarding message flow shown in fig. 9 is applied to the application scenario shown in fig. 4. When the packet forwarding process shown in fig. 9 is applied to the application scenario shown in fig. 5, if the third autonomous domain forwards the first packet using the SRv6 BE tunnel, in step S903, the first packet is sent to the third autonomous domain, and a node in the third autonomous domain determines a route to which the VPN SID is matched according to the longest matching rule, and sends the first packet to the second autonomous domain according to the route. If the SRv6policy tunnel is used for forwarding the first packet in the third autonomous domain, the next hop is PE1 in the third autonomous domain in step S902, and the first packet is sent to PE1 in step S903. In the third autonomous domain, the first message is forwarded between the PE1 and the PE2 by using an SRv6policy tunnel. The PE2 sends a first message to the second node.
In step S903, the first packet sent by the first node may reach the second node of the second autonomous domain, and a process of forwarding the packet based on the process of issuing the route shown in fig. 6 is described next, referring to fig. 10. Fig. 10 is an application scenario applied to fig. 4 and 5. In fig. 10, a process in which a message passes through the second autonomous domain in a process in which the CE1 transmits the message to the CE2 is described as an example.
Step S1001, a second node receives a first packet sent by a first node, where the first node is an edge routing device in a first autonomous domain, the first packet includes a VPN SID, and the first packet is an SRV6 packet addressed to a prefix address associated with the VPN SID.
In this embodiment, the first packet includes an IPv6 basic header and an IP packet, and a destination address in the IPv6 basic header is a VPN SID. The source address in the IPv6 base header is the address of the ACC.
Here, if 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 is directly received from the first node. If the packet forwarding process shown in fig. 10 is applied to the application scenario shown in fig. 5, the first packet received by the second node is received from the first node indirectly, and the first packet sent from the first node is forwarded through the third autonomous domain.
Step S1002, the second node determines a forwarding strategy of the first message in the second autonomous domain based on the VPN SID.
Wherein, the forwarding policy may be considered as a tunnel policy.
In this embodiment, the manner of determining the forwarding policy of the first packet in the second autonomous domain is: if the VPN SID is associated with SRv6Policy tunnel information, determining that a forwarding strategy of the first message in the second autonomous domain is a strategy based on an SRv6Policy tunnel; and if the VPN SID is not associated with SRv6Policy tunnel information, determining that the forwarding strategy of the first message in the second autonomous domain is a strategy based on an SRv6 BE tunnel. Illustratively, through the process shown in fig. 6, a routing table including the VPN SID is established on the second node. If the routing table comprises the color parameter corresponding to the VPN SID, determining that the SRv6Policy tunnel information is associated with the VPN SID, otherwise, determining that the SRv6Policy tunnel information is not associated with the VPN SID.
Step S1003, the second node sends the first packet based on the forwarding policy, where the VPN SID included in the first packet sent based on the forwarding policy is the same as the VPN SID included in the received first packet.
In this embodiment, there are multiple ways for the second node to send the first packet based on the forwarding policy, and two feasible ways are provided here, which are the first way and the second way.
If the forwarding Policy is based on the Policy of the SRv6Policy tunnel, the second node encapsulates SRV6Policy tunnel information in the first message based on the corresponding next hop of the VPN SID in the routing table to obtain a second message; and sending the second message.
In the first mode, an SRv6policy 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, and as can be seen from the process shown in fig. 6, the next hop belongs to the second autonomous domain, and the next hop is a third node of the second autonomous domain. And the second node determines SRv6policy 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, wherein the next hop is a third node. The SRv6policy tunnel information includes a Segment List destined for the third node, the Segment List including the second node. And the second node packages the SRH on the outer layer of the IP message to obtain a second message, wherein the second message comprises the IP message, the IPv6 basic header and the SRH. The SRH includes a Segment List and a VPN SID, the VPN SID being located in Segment List [0]. The encapsulated packet will be forwarded to the third node according to the path specified by the Segment List. The third node is a tail node of the SRv6policy tunnel, the message received by the third node comprises an IPv6 basic header and an SRH, the destination address included by the IPv6 basic header is the SID of the third node, SL in the SRH is equal to 0, and Segment List in the SRH only comprises the VPN SID.
And after receiving the second message, the third node updates the VPN SID in the SRH of the second message to an 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 VRF forwarding table to find out the outlet interface, and sends the IP message to CE2 through the outlet interface.
And in the second mode, if the forwarding strategy is based on the SRv6 BE tunnel, the first message is sent by using the outgoing interface corresponding to the next hop.
In the second mode, the second node determines the outgoing interface corresponding to the next hop by using the next hop. The first node sends a first message through the output interface. And after receiving the first message, the third node pops up an IPv6 header of the first message, and determines a VRF (virtual router redundancy protocol) corresponding to the VPN SID in a local SID table by using the VPN SID in the IPv6 header. And using the address of the CE2 in a forwarding table of the VRF to find an outgoing interface, and sending the IP message to the CE2 through the outgoing interface.
For better understanding of the flows of fig. 9 and fig. 10, a schematic diagram of sending a message from CE1 to CE2 is given in conjunction with fig. 4, see fig. 11 and fig. 12. FIG. 11 depicts a process for sending a message using an SRv6 BE tunnel; the process of sending a message using an SRv6policy tunnel is described in fig. 12. In fig. 12, step S901 adopts the second method. In FIGS. 11 and 12, the prefix address of CE2 is 2.2.2.2 and the value of VPN SID is VPN SID1.
For better understanding of the flows of fig. 9 and fig. 10, a schematic diagram of sending a message from CE1 to CE2 is given in conjunction with fig. 5, see fig. 13. The process of sending a message using an SRv6policy tunnel is described in fig. 13. In fig. 13, step S901 adopts the second method. In FIG. 13, the prefix address of CE2 is 2.2.2.2 and the value of VPN SID is VPN SID1.
By the embodiment of the application, the VPN SID is unique in the message forwarding process of the cross autonomous domain, and label switching is not needed at the edge routing equipment, so that the processing is simple. And the VPN SID is directly associated with the SRv6 tunnel, so that the intermediate node does not need to maintain VPN SID resources, and the control of the control plane on the intermediate node is reduced.
Specifically, label switching is not required in the application, and the method is simplified compared with the option B scheme. Also, end-to-end is achieved since the VPN SID is end-to-end. And the VPN SID is used as a unique service identifier and is carried end to end, and each autonomous domain can sense the service corresponding to the VPN SID, so that unified management and various control strategies (such as optimized forwarding path, service analysis, statistics, charging and the like) are facilitated. And although the VPN SID is end-to-end, each autonomous domain tunnel is configured in each autonomous domain, and an end-to-end tunnel is not required. The number of convergence side tunnels can be reduced. For example, as shown in fig. 14, there are 4K base stations under PE3 (in fig. 14, the base stations are ACCs), and in the existing solution, each ACC to PE3 needs to create an SRv6policy tunnel, see (a) in fig. 14. However, after the scheme of the present application is adopted, an SRv6policy tunnel is created between the ACC and the MC1, and the aggregation side PE3 only needs to create one SRv6policy tunnel with the PE1, and does not need to create one SRv6policy tunnel for each ACC and PE3, which simplifies the end-to-end SRv6policy tunnel deployment, see (b) in fig. 14. In fig. 14 (a) and 14 (b), the arrowed curves represent the established SRv6policy tunnel.
In addition, each autonomous domain tunnel is configured for each autonomous domain, one autonomous domain can deploy an SRv6policy tunnel, and the other autonomous domain cannot deploy an SRv6policy tunnel, and under such a condition, end-to-end SRv6 services can be deployed, so that when a plurality of autonomous domains adopt different controllers, the end-to-end SRv6 services can be deployed without cooperation of each controller. For example, in the application scenario of fig. 4, as shown in fig. 15, a first autonomous domain uses controller 1 to control, the first autonomous domain deploys an SRv6policy tunnel; the second autonomous domain, which deploys SRv6 BE tunnels, is controlled using controller 2.
The method embodiment of the present application is introduced above, and the device for routing distribution and the device for forwarding a packet of the present application are introduced below from the perspective of logic functions.
Fig. 16 is a block diagram of a device for routing distribution according to an embodiment of the present application. The apparatus may be implemented as part or all of an apparatus in software, hardware, or a combination of both. The apparatus for route distribution is applied to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the apparatus for route distribution provided in this embodiment of the present application can implement the process illustrated in fig. 6 in this embodiment of the present application, and includes: a receiving module 1610 and a publishing module 1620, wherein:
a receiving module 1610, configured to receive a first routing message sent by a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, the first routing message includes a VPN SID, a prefix address associated with the VPN SID, and a first next hop, the first next hop is the second node, and the first routing message is used to send a packet addressed to the prefix address, and specifically may be used to implement the receiving function of step S604 and execute an implicit step included in step S604;
a publishing module 1620 configured to:
obtaining a second routing message, where 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 VPN SID in the first routing message is the same as the VPN SID in the second routing message;
and advertising the second routing message in the first autonomous domain, wherein the second routing message is used for sending a message addressed to the prefix address, and specifically may be used for implementing the publishing function of steps S605 and S606 and executing the implicit steps included in steps S605 and S606.
In one possible implementation, as shown in fig. 16, the apparatus further includes:
an adding module 1630, configured to correspondingly add the VPN SID and the first next hop in the first routing message to a routing table.
In a possible implementation manner, the receiving module 1610 is configured to receive, through EBGP, a first routing message sent by a second node of a second autonomous domain.
In a possible implementation manner, the first routing message further includes a color parameter, where the color parameter is a color parameter configured in the second autonomous domain; the issuing module 1620 is further configured to modify the color parameter in the second routing message to be the color parameter 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 before the first autonomous domain advertises the second routing message.
In a possible implementation manner, the first routing message does not include a color parameter;
the issuing module 1620 is further configured to, before the first autonomous domain advertises the second routing message, add the color parameter configured on the first node to the second routing message if the first node is configured with the color parameter.
Fig. 17 is a block diagram of a device for route distribution according to an embodiment of the present application. The apparatus may be implemented as part or all of the apparatus by software, hardware or a combination of both. The apparatus for route distribution is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the apparatus for route distribution provided in this embodiment of the present application can implement the process described in fig. 6 in this embodiment of the present application, and includes: a receiving module 1710, a publishing module 1720, and a sending module 1730, wherein:
a receiving module 1710, configured to receive a third routing message sent by a third node of 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, where the third next hop is the third node, and the third routing message is used to send a packet addressed to the prefix address, and may be specifically used to implement the receiving function of step S601 and execute an implicit step included in step S601;
a publishing module 1720, configured to obtain a first routing message, where the first routing message includes the VPN SID, the prefix address, and a first next hop, the first next hop 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, and may specifically be configured to implement the publishing function in step S602 and execute the implicit step included in step S602;
a sending module 1730, configured to send the first routing message to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the first routing message is used to send a packet addressed to the prefix address, and may specifically be used to implement the sending function of step S603 and execute an implicit step included in step S603.
In one possible implementation, as shown in fig. 17, the apparatus further includes:
an adding module 1740, configured to correspondingly add the VPN SID and the third next hop in the third routing message to a routing table.
In a possible implementation manner, the sending module 1730 is configured to send the first routing message to a first node of a first autonomous domain through EBGP.
Fig. 18 is a structural diagram of a device for forwarding a packet according to an embodiment of the present application. The apparatus may be implemented as part or all of an apparatus in software, hardware, or a combination of both. The apparatus for forwarding a packet is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the apparatus for forwarding a packet provided in this application embodiment may implement the process described in fig. 10 in this application embodiment, and the apparatus includes: a receiving module 1810, a policy determination module 1820, and a sending module 1830, wherein:
a receiving module 1810, configured to receive a first packet sent by a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, the first packet includes a VPN SID, and the first packet is an SRv6 packet addressed to a prefix address associated with the VPN SID, and is specifically configured to implement the receiving function of step S1001 and execute an implicit step included in step S1001;
a policy determining module 1820, configured to determine, based on the VPN SID, a forwarding policy of the first packet in the second autonomous domain, and specifically, may be configured to implement the policy and the next hop determining function in step S1002 and execute an implicit step included in step S1002;
a sending module 1830, configured to send the first packet based on the forwarding policy, where a VPN SID included in the first packet sent based on the forwarding policy is the same as a VPN SID included in the received first packet, and may specifically be used to implement the sending function in step S1003 and execute the implicit step included in step S1003.
In one possible implementation, the policy determining module 1820 is configured to:
if the VPN SID is associated with SRv6Policy tunnel information, determining that a forwarding Policy of the first message in the second autonomous domain is a Policy based on the SRv6Policy tunnel;
and if the VPN SID is not associated with SRv6Policy tunnel information, determining that the forwarding Policy of the first message in the second autonomous domain is a Policy based on an SRv6 BE tunnel.
In a possible implementation manner, the receiving module 1810 is further configured to receive a third routing message sent by a third node of the second autonomous domain, where the third routing message includes the VPN SID, the prefix address, and a next hop, and the next hop in the third routing message is the third node; correspondingly adding the VPN SID and the next hop in the third routing message to a routing table.
In one possible implementation manner, the sending module 1830 is configured to:
if the forwarding Policy is based on the SRv6Policy tunnel, encapsulating SRv6Policy tunnel information in the first message based on the corresponding next hop of the VPN SID in the routing table to obtain a second message; sending the second message;
and if the forwarding strategy is a strategy based on an SRv6 BE tunnel, using an output interface corresponding to the next hop to send the first message.
In one possible implementation manner, as shown in fig. 18, the apparatus 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 a next hop of the first routing 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 1830 further sends the first routing message to the first node.
In a possible implementation manner, the destination address field in the IPv6 header of the received first packet includes the VPN SID.
Fig. 19 is a structural diagram of a device for forwarding a packet according to an embodiment of the present application. The apparatus may be implemented as part or all of an apparatus in software, hardware, or a combination of both. The apparatus for forwarding a packet is applied to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the apparatus for forwarding a packet provided in this application may implement the process illustrated in fig. 9 in this application embodiment, and includes: a receiving module 1910, a next hop determining module 1920, and a transmitting module 1930, wherein:
a receiving module 1910, configured to receive a first packet, where the first packet includes a virtual private network segment routing identifier VPN SID, and the first packet is an SRV6 packet addressed to a prefix address associated with the VPN SID, and specifically may be used to implement the receiving function of step S901 and execute an implicit step included in step S901;
a next hop determining module 1920, configured to determine a next hop based on the VPN SID, where the next hop is a second node of a second autonomous domain, and the second node is an edge routing device of the second autonomous domain, and specifically may be configured to implement the next hop determining function in step S902 and execute the implicit step included in step S902;
a sending module 1930, configured to send the first packet based on the next hop, where a VPN SID included in the sent first packet is the same as a VPN SID included in the received first packet, and may specifically be used to implement the sending function in step S903 and execute the implicit step included in step S903.
In a possible implementation manner, the receiving module 1910 is further configured to receive a first routing message sent by the second node before determining a next hop based on the VPN SID, where the first routing message includes 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 1920 is configured to determine, in the routing table, a next hop corresponding to the VPN SID.
In one possible implementation, the apparatus further includes: an issuing module 1940, configured to obtain a second routing message, where the second routing message includes the VPN SID, the prefix address, and a next hop of the second 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; advertising the second routing message at the first autonomous domain.
In one possible implementation, the receiving module 1910:
and receiving the first message through an SRv6 BE tunnel or an SRv6Policy tunnel.
In a possible implementation manner, the destination address field in the IPv6 header of the first packet to be sent includes the VPN SID.
In the embodiments of the present application, the division of the module of the device for routing and the module of the device for forwarding a packet is schematic, and is only a logic function division, and there may be another division manner in actual implementation. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode.
The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially or partially contributed by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a network device or the like) to execute all or part of the steps of the method in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a portable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, an optical disk, or other various media capable of storing program codes.
Fig. 20 is a schematic structural diagram of an apparatus 200 according to an embodiment of the present disclosure.
Optionally, in conjunction with fig. 4 and fig. 5, the apparatus 200 shown in fig. 20 is optionally a first node and a second node in fig. 4 and fig. 5. In addition, the device 200 shown in fig. 20 may be, optionally, the route issuing device and the message forwarding device described above.
The device 200 is optionally implemented by a general 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 (NP), a Graphics Processing Unit (GPU), a neural-Network Processing Unit (NPU), a Data Processing Unit (DPU), a microprocessor, or one or more integrated circuits for implementing the present disclosure. For example, the processor 201 includes an application-specific integrated circuit (ASIC), a Programmable Logic Device (PLD), or a combination thereof. PLDs are, for example, complex Programmable Logic Devices (CPLDs), field-programmable gate arrays (FPGAs), general Array Logic (GAL), or any combination thereof.
A communication bus 202 is used to transfer information between the above components. The communication bus 202 may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 20, but this is not intended to represent only one bus or type of bus.
The Memory 203 is, for example, but not limited to, a ROM or other type of static storage device that can store static information and instructions, a RAM or other type of dynamic storage device that can store information and instructions, an EEPROM, a compact disk read-only Memory (CD-ROM) or other optical disk storage, optical disk storage (including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage device, 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. The memory 203 is, for example, separate and connected to the processor 201 via the communication bus 202. The memory 203 may also be integrated with the processor 201.
The network interface 204 uses any transceiver or the like 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, for example, an ethernet interface. The ethernet interface may be an optical interface, an electrical interface, or a combination thereof. The wireless network interface may be a Wireless Local Area Network (WLAN) interface, a cellular network interface, or a combination thereof.
In particular implementations, processor 201 may include one or more CPUs, as one embodiment.
In particular implementations, device 200 may include multiple processors, as one embodiment. Each of these processors may be a single-Core Processor (CPU) or a multi-Core Processor (CPU). A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
In some embodiments, the memory 203 is used to store program code 210 for implementing the present scheme, and the processor 201 can execute the program code 210 stored in the memory 203. That is, the device 200 may implement the method for route distribution and/or the method for forwarding a packet provided by the method embodiment through the processor 201 and the program code 210 in the memory 203.
Referring to fig. 21, fig. 21 is a schematic structural diagram of an apparatus 300 according to an embodiment of the present disclosure.
Optionally, in conjunction with fig. 4 and fig. 5, the apparatus 200 shown in fig. 21 is optionally a first node and a second node in fig. 4 and fig. 5. In addition, the device 300 shown in fig. 21 may be the route issuing device and the message forwarding device described above optionally.
The apparatus 300 comprises: a main control board 310 and an interface board 330.
The main control board 310 is also called a Main Processing Unit (MPU) or a route processor card (route processor card), and the main control board 310 is used for controlling and managing various components in the device 300, including routing computation, device management, device maintenance, and protocol processing functions. The main control board 310 includes: a central processor 311 and a memory 312 (the memory 312 is not shown in fig. 21).
The interface board 330 is also called a 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, such as flexible ethernet services interfaces (FlexE clients), a POS (packet over son/SDH) interface, and the like. The interface board 330 includes: a central processor 331, a network processor 332, a forwarding table entry memory 334, and a Physical Interface Card (PIC) 333.
The central processor 331 of the interface board 330 is used for controlling and managing the interface board 330 and communicating with the central processor 311 of the main control board 310.
The network processor 332 is configured to implement forwarding processing and/or routing issuing processing of the packet. The network processor 332 is in the form of, for example, a forwarding chip. Specifically, the network processor 332 is configured to forward the received message based on the forwarding table stored in the forwarding table entry memory 334, and if the destination address of the message is the address of the device 300, send the message to a CPU (e.g., the central processing unit 311) for processing; 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 outgoing interface corresponding to the destination address.
The physical interface card 333 is used to implement the interfacing function of the physical layer, from which the original traffic enters the interface board 330, and the processed messages are sent out from the physical interface card 333. The physical interface card 333, also called a daughter card, may be installed on the interface board 330, and is responsible for converting the optical signal into a message, performing validity check on the message, and forwarding the message to the network processor 332 for processing. In some embodiments, a central processor may also perform the functions of network processor 332, such as implementing software forwarding based on a general purpose CPU, so that network processor 332 is not required in physical interface card 333.
Optionally, the device 300 includes a plurality of interface boards, for example, the device 300 further includes an interface board 340, and the interface board 340 includes: a central processor 341, a network processor 342, a forwarding entry store 344, and a physical interface card 343.
Optionally, device 300 further comprises a switch fabric 320. The switch board 320 is also called a Switch Fabric Unit (SFU), for example. In the case of a network device having a plurality of interface boards 330, the switch board 320 is used to complete data exchange between the interface boards. For example, interface board 330 and interface board 340 communicate, for example, through switch board 320.
The main control board 310 is coupled to an interface board 330. For example. The main control board 310, the interface board 330, the interface board 340, and the switch board 320 are connected to the system backplane through the system bus for communication. In a possible implementation manner, an inter-process communication (IPC) channel is established between the main control board 310 and the interface board 330, and the main control board 310 and the interface board 330 communicate with each other through the IPC channel.
Logically, the apparatus 300 includes a control plane including the main control board 310 and the central processor 331, and a forwarding plane including various components performing forwarding, such as a forwarding table entry memory 334, a physical interface card 333, and a network processor 332. The control plane performs functions of a router, generating a forwarding table, processing signaling and protocol messages, configuring and maintaining the state of the device, and the like, and issues the generated forwarding table to the forwarding plane, and in the forwarding plane, the network processor 332 looks up the table of the message received by the physical interface card 333 and forwards the table based on the forwarding table issued by the control plane. The forwarding table issued by the control plane is stored in, for example, the forwarding table entry storage 334. In some embodiments, the control plane and the forwarding plane are, for example, completely separate and not on the same device.
The operations on the interface board 340 are the same as the operations on the interface board 330, and for brevity, are not described again. The device 300 of this embodiment may correspond to the first node or the second node in the above-mentioned method embodiments, and the main control board 310 and the interface boards 330 and/or 340 in the device 300 implement, for example, functions and/or various steps implemented by the first node or the second node in the above-mentioned method embodiments, which are not described herein again for brevity.
It should be noted that there may be one or more main control boards, and when there are more than one main control boards, for example, the main control boards include a main control board and a standby main control board. The interface board may have one or more blocks, and the stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on an interface board. The exchange network board may not have one or more blocks, and when there are more blocks, the load sharing redundancy backup can be realized together.
In some embodiments, the present application provides a computer program product comprising computer instructions stored in a computer readable storage medium. The processor of the route distribution device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to cause the route distribution device to execute the route distribution method.
In some embodiments, 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 executes the computer instructions, so that the message forwarding device executes the message forwarding method.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments.
The terms "first" and "second," and the like in the description and in the claims of the embodiments of the present application, are used for distinguishing between different objects, and not for describing a particular order of the objects, nor are they to be construed as indicating or implying relative importance. For example, the first means and the second means are used to distinguish different means, rather than to describe a particular means.
In the embodiment of the application, "and/or" means three cases, for example, A and/or B means three cases of A, B, A and B.
In the present examples, unless otherwise specified, the meaning of "at least one" means one or more, and the meaning of "a plurality" means two or more.
The above-described embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in 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 loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that includes one or more available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a Digital Video Disk (DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), among others.
The above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and these modifications or substitutions do not depart from the scope of the technical solutions of the embodiments of the present application.

Claims (25)

1.A method for route distribution, applied to a first node of a first autonomous domain, the first node being an edge routing device of the first autonomous domain, the method comprising:
receiving 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, the first routing message includes a virtual private network segment routing identifier (VPN SID), a prefix address associated with the VPN SID, and a first next hop, the first next hop is the second node, and the first routing message is used for sending a packet addressed to the prefix address;
obtaining a second routing message, wherein 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 VPN SID in the first routing message is the same as the VPN SID in the second routing message;
and advertising the second routing message in the first autonomous domain, wherein the second routing message is used for sending a message addressed to the prefix address.
2. The method of claim 1, further comprising:
correspondingly adding the VPN SID and the first next hop in the first routing message to a routing table.
3. The method according to claim 1 or 2, wherein the receiving the first routing message sent by the second node of the second autonomous domain comprises:
and receiving a first routing message sent by a second node of the second autonomous domain through an External Border Gateway Protocol (EBGP).
4. The method according to any one of claims 1 to 3, wherein the first routing message further comprises a coloring color parameter, and the color parameter is a color parameter configured in the second autonomous domain; before the first autonomous domain advertises the second routing message, further comprising:
and if the color parameter configured on the first node is inconsistent with the color parameter in the first routing message, modifying the color parameter in the second routing message into the color parameter configured on the first node.
5. The method according to claim 4, wherein the first routing message does not include a color parameter;
before the first autonomous domain advertises the second routing message, further comprising:
and if the first node is configured with the color parameter, adding the color parameter configured on the first node into the second routing message.
6. A method for routing distribution, applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, the method includes:
receiving a third routing message sent by a third node of the second autonomous domain, where the third routing message includes a virtual private network segment routing identifier (VPN SID), a prefix address associated with the VPN SID, and a third next hop, where the third next hop is the third node, and the third routing message is used to send a packet addressed to the prefix address;
obtaining a first routing message, where the first routing message includes the VPN SID, the prefix address, and a first next hop, the first next hop is the second node, and a VPN SID in the first routing message is the same as a VPN SID in the third routing message;
and sending the first routing message to a first node of a first autonomous domain, wherein the first node is an edge routing device of the first autonomous domain, and the first routing message is used for sending a message addressed to the prefix address.
7. The method of claim 6, further comprising:
correspondingly adding the VPN SID and the third next hop in the third routing message to a routing table.
8. The method of claim 6 or 7, wherein sending the first routing message to the first node of the first autonomous domain comprises:
and sending the first routing message to a first node of the first autonomous domain through an External Border Gateway Protocol (EBGP).
9. A method for forwarding a packet is applied to a second node of a second autonomous domain, where the second node is an edge routing device of the second autonomous domain, and the method includes:
receiving a first message sent by a first node of a first autonomous domain, wherein the first node is edge routing equipment of the first autonomous domain, the first message comprises a virtual private network segment routing identifier (VPN SID), and the first message is a segment routing Internet protocol (SRv 6) message of a prefix address associated with the VPN SID;
determining a forwarding strategy of the first message in the second autonomous domain based on the VPN SID;
and sending the first message based on the forwarding strategy, wherein the VPN SID included in the first message sent based on the forwarding strategy is the same as the VPN SID included in the received first message.
10. The method of claim 9, wherein determining the forwarding policy of the first packet in the second autonomous domain based on the VPN SID comprises:
if the VPN SID is associated with SRv6Policy tunnel information of a segment routing Internet protocol sixth edition, determining that the forwarding Policy of the first message in the second autonomous domain is a Policy based on the SRv6Policy tunnel;
and if the VPN SID is not associated with SRv6Policy tunnel information, determining that the forwarding strategy of the first message in the second autonomous domain is a strategy based on an SRv6 minimum cost BE tunnel.
11. The method according to claim 9 or 10, further comprising:
receiving a third routing message sent by a third node of the second autonomous domain, wherein the third routing message includes the VPN SID, the prefix address, and a next hop, and the next hop in the third routing message is the third node;
correspondingly adding the VPN SID and the next hop in the third routing message to a routing table.
12. The method of claim 11, wherein sending the first packet based on the forwarding policy comprises:
if the forwarding Policy is based on the Policy of the SRv6Policy tunnel, encapsulating SRv6Policy tunnel information in the first message based on the corresponding next hop of the VPN SID in the routing table to obtain a second message; sending the second message;
and if the forwarding strategy is a strategy based on an SRv6 BE tunnel, sending the first message by using an output interface corresponding to the next hop.
13. The method of claim 11, further comprising:
obtaining a first routing message, where the first routing message includes the VPN SID, the prefix address, and a next hop of the first routing 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;
sending the first routing message to the first node.
14. The method according to any of claims 9 to 13, wherein the destination address field in an internet protocol version six, IPv6, header of the received first packet comprises the VPN SID.
15. A method for forwarding a packet is applied to a first node of a first autonomous domain, where the first node is an edge routing device of the first autonomous domain, and the method includes:
receiving a first message, wherein the first message comprises a virtual private network segment routing identifier (VPN SID), and the first message is a segment routing Internet protocol (SRV) version six (6) message of a prefix address associated with the VPN SID;
determining a next hop based on the VPN SID, wherein the next hop is a second node of a second autonomous domain, the second node being an edge routing device of the second autonomous domain;
and sending the first message based on the next hop, wherein the VPN SID included in the sent first message is the same as the VPN SID included in the received first message.
16. The method of claim 15, wherein prior to determining a next hop based on the VPN SID, the method further comprises:
receiving a first routing message sent by the second node, wherein the first routing message comprises 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 determining a next hop based on the VPN SID includes:
and determining a next hop corresponding to the VPN SID in the routing table.
17. The method of claim 16, further comprising:
obtaining a second routing message, wherein the second routing message includes the VPN SID, the prefix address, and a next hop of the second 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;
advertising the second routing message at the first autonomous domain.
18. The method according to any of claims 15 to 17, wherein the receiving a first message comprises:
and receiving the first message through a segment routing Internet protocol sixth edition SRv6 minimum cost BE tunnel or an SRv6 strategy Policy tunnel.
19. The method according to any of claims 15 to 18, wherein the destination address field in an internet protocol version six, IPv6, header of the transmitted first packet comprises the VPN SID.
20. An apparatus for route distribution, applied to a first node of a first autonomous domain, the first node being an edge routing device of the first autonomous domain, the apparatus comprising a processor and a memory, the memory storing program code, the processor being configured to invoke the program code in the memory to cause the apparatus to perform the method of any of claims 1 to 5.
21. An apparatus for route distribution, applied to a second node of a second autonomous domain, the second node being an edge routing device of the second autonomous domain, the apparatus comprising a processor and a memory, the memory being configured to store program code, the processor being configured to invoke the program code in the memory to cause the apparatus to perform the method according to any of claims 6 to 8.
22. An apparatus for forwarding packets, the apparatus being applied to a second node of a second autonomous domain, the second node being an edge routing device of the second autonomous domain, the apparatus comprising a processor and a memory, the memory being configured to store program code, the processor being configured to invoke the program code in the memory to cause the apparatus to perform the method according to any of claims 9 to 14.
23. An apparatus for forwarding packets, the apparatus being applied to a first node of a first autonomous domain, the first node being an edge routing device of the first autonomous domain, the apparatus comprising a processor and a memory, the memory being configured to store program code, the processor being configured to invoke the program code in the memory to cause the apparatus to perform the method according to any of claims 15 to 19.
24. A route distribution system, characterized in that the system comprises the apparatus according to claim 20 and the apparatus according to claim 21.
25. A forwarding messaging system, characterized in that the system comprises an apparatus according to claim 22 and an apparatus according to claim 23.
CN202110726967.8A 2021-06-29 2021-06-29 Method, device, equipment and storage medium for routing publishing and forwarding message Pending CN115550252A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110726967.8A CN115550252A (en) 2021-06-29 2021-06-29 Method, device, equipment and storage medium for routing publishing and forwarding message
PCT/CN2022/101251 WO2023274083A1 (en) 2021-06-29 2022-06-24 Route publishing method and apparatus, packet forwarding method and apparatus, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110726967.8A CN115550252A (en) 2021-06-29 2021-06-29 Method, device, equipment and storage medium for routing publishing and forwarding message

Publications (1)

Publication Number Publication Date
CN115550252A true CN115550252A (en) 2022-12-30

Family

ID=84690058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110726967.8A Pending CN115550252A (en) 2021-06-29 2021-06-29 Method, device, equipment and storage medium for routing publishing and forwarding message

Country Status (2)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118041848A (en) * 2024-04-11 2024-05-14 常熟理工学院 Method for realizing post-disaster area monitoring system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116095000B (en) * 2023-02-13 2024-05-10 烽火通信科技股份有限公司 Route issuing method, device, equipment and readable storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830352B (en) * 2018-08-07 2022-09-23 中兴通讯股份有限公司 Method and device for realizing VPN cross-domain and boundary node
CN113411243B (en) * 2018-10-23 2024-03-19 华为技术有限公司 Data transmission method and device
US11025522B2 (en) * 2019-05-04 2021-06-01 Juniper Networks, Inc. Path monitoring system (PMS) controller or ingress node based multiprotocal label switching (MPLS) ping and traceroute in inter- autonomous system (AS) segment routing (SR) networks
CN112511423A (en) * 2020-09-03 2021-03-16 中兴通讯股份有限公司 Message processing method, boundary device and computer readable medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118041848A (en) * 2024-04-11 2024-05-14 常熟理工学院 Method for realizing post-disaster area monitoring system

Also Published As

Publication number Publication date
WO2023274083A1 (en) 2023-01-05

Similar Documents

Publication Publication Date Title
CN108574639B (en) EVPN message processing method, device and system
CN108989202B (en) Fabric path context based forwarding for virtual nodes
CN108989213B (en) Transmitting LSP settings using selected fabric paths between virtual nodes
CN108989203B (en) Advertising selected fabric paths for service routing in virtual nodes
CN108574630B (en) EVPN message processing method, device and system
US10659352B2 (en) Signaling private context forwarding tables for a private forwarding layer
CN112087386B (en) Message processing method, device and system
US20230300070A1 (en) Packet Sending Method, Device, and System
CN114500369A (en) Method, equipment and system for controlling routing iteration
CN114465920B (en) Method, device and system for determining corresponding relation
WO2023274083A1 (en) Route publishing method and apparatus, packet forwarding method and apparatus, device, and storage medium
CN113973082A (en) Message processing method and network equipment
CN114374634A (en) Message forwarding method and network equipment
US20230155930A1 (en) Packet Processing Method and Network Device
WO2022222750A1 (en) Packet forwarding method and apparatus, network device, and storage medium
EP4203425A1 (en) Method, device and system for forwarding message
CN113904981A (en) Routing information processing method and device, electronic equipment and storage medium
CN114598635A (en) Message transmission method and device
WO2023045871A1 (en) Packet processing method, network device and system
WO2022166465A1 (en) Message processing method and related apparatus
CN112910771B (en) Connection establishment method, device, equipment and storage medium
CN114697251A (en) Routing processing method, related device and network system
WO2024007762A1 (en) Route publishing method, and communication method and apparatus
WO2023236880A1 (en) Message control method and related device
CN109861912B (en) Optimizing fabric path forwarding for virtual nodes within an electronic device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination