WO2016115823A1 - 标签构造以及标签报文转发方法及装置 - Google Patents

标签构造以及标签报文转发方法及装置 Download PDF

Info

Publication number
WO2016115823A1
WO2016115823A1 PCT/CN2015/082236 CN2015082236W WO2016115823A1 WO 2016115823 A1 WO2016115823 A1 WO 2016115823A1 CN 2015082236 W CN2015082236 W CN 2015082236W WO 2016115823 A1 WO2016115823 A1 WO 2016115823A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
label
segment list
message
segment
Prior art date
Application number
PCT/CN2015/082236
Other languages
English (en)
French (fr)
Inventor
彭少富
陈然
廖婷
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to US15/544,749 priority Critical patent/US10581733B2/en
Priority to EP15878495.9A priority patent/EP3249865B1/en
Publication of WO2016115823A1 publication Critical patent/WO2016115823A1/zh

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/34Source routing
    • 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
    • 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/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • H04L47/724Admission control; Resource allocation using reservation actions during connection setup at intermediate nodes, e.g. resource reservation protocol [RSVP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Definitions

  • the present invention relates to the field of communications, and in particular to a tag structure and a tag message forwarding method and apparatus.
  • a typical service bearer network may include a Customer Edge (CE) router, a Provider Edge (PE) router, a carrier backbone router, and a Route Reflecter (RR).
  • the Open Shortest Path First (OSPF) protocol/Intermediate System to Intermediate System Routing Protocol (IS-IS) is used as the internal gateway protocol (Interior Gateway).
  • IGP which uses the BGP-4 multi-protocol extended border gateway protocol (MP-BGP, where BGP is the border gateway protocol) to transmit virtual private network (VPN) information, using the label distribution protocol (Label).
  • MP-BGP multi-protocol extended border gateway protocol
  • Label virtual private network
  • Label label distribution protocol
  • the Distribution Protocol abbreviated as LDP
  • RSVP-TE Resource Reservation Protocol-Traffic Engineering
  • the typical service bearer network deployment has the following problems: many types of routing protocols and complex deployments; because of the forwarding mechanism based on the destination address, data packets cannot be forwarded based on the requirements of each source; The bandwidth and delay requirements of the application cannot be dynamically deployed according to the network conditions. When a link in the network is congested, the forwarding path cannot be automatically adjusted.
  • the Resource Reservation Protocol (RSVP) can implement the bandwidth pre-requisite.
  • static configuration is generally used to deploy dynamic mode.
  • full-mesh RSVP-TE needs to be deployed, which consumes a large amount of resources.
  • RSVP technology is mature, the actual deployment ratio is very low.
  • the IETF proposes a segment routing (SR) technology.
  • the SR is a method based on source address routing.
  • SR information that affects the shortest path forwarding
  • data is added to the data packet.
  • the message is forwarded by the shortest path according to the information of the specified path nodes.
  • the SR information is mainly composed of the segment global routing block (SR Global Block, SRGB for short) and the offset (index).
  • the index of each node is unique, and the index value is performed in the SRGB range. Offset, you can identify the node.
  • By specifying the path forwarding function of the SR you can easily implement complex network functions such as load balancing and process engineering of the network, and fast rerouting.
  • the source node guides the packet forwarding through the segment list segment list.
  • the segment list is converted into a traditional label stack, and the packet is inserted into the traditional label stack. Go to the header of the message sent by the source node.
  • MPLS Multi-Protocol Label Switching
  • the forwarding plane hardware needs to be upgraded to support deeper label stack processing capabilities.
  • the embodiments of the present invention provide a label structure and a label message forwarding method and apparatus, so as to at least solve the problem that the forwarding plane hardware in the related art needs to be upgraded to support a deeper label stack processing capability, and a load efficiency problem and an MTU problem.
  • a label configuration and a label message forwarding method including: a node receiving a message, wherein the message carries a segment list and a segment list identifier for identifying the segment list
  • the node constructs a label forwarding table according to the segment list and the segment list identifier, and forwards according to the label forwarding table; and/or, the node maintains a mapping between the segment list and the segment list identifier relationship.
  • the message is sent by the ingress node after receiving the segment list and the segment list identifier sent by the controller, and/or the message is sent by the controller.
  • the node receives the message sent by the controller through a southbound interface protocol; and/or the node receives the message sent by the ingress node through an extended internal gateway protocol IGP.
  • the southbound interface protocol includes: a border gateway protocol-link state routing protocol BGP-LS, a path calculation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • the method further includes: the node receiving the revocation message sent by the controller or the ingress node, where the revocation message is used to instruct the node to delete the mapping relationship between the segment list and the segment list identifier, And/or, used to instruct the node to delete the label forwarding table.
  • the node does not construct the label rotation.
  • the published label entry wherein the inner label is constructed according to the global label block SRGB and the segment list identifier of the next node of the node.
  • the segment list identifier is a label Label, or an index index, wherein the global label is an index index offset in a case where all the global label blocks SRGB of all nodes in the SR domain are the same.
  • the node constructs a label according to a segment routing global label block SRGB of the node and the segment list identifier.
  • the output label stack comprising at least one of: an inner layer label, one or more outer layer labels; wherein the inner layer label is a global label according to a next node of the node
  • the block SRGB and the segment list identifier are configured, and the one or more outer tags include at least one of the following: a tag corresponding to the node identifier corresponding to the remaining node, and the node identifier corresponding to the next node of the node corresponds to s Mark.
  • the node constructs the out label including one or more of the outer label according to the specified readable label depth Stack.
  • the ingress node is in the case that the indication flag bit indicates that the label needs to be encapsulated according to the specified readable label depth.
  • Constructing a label stack, the output label stack comprising at least one of: an inner label, an outer label; wherein the inner label is the farthest package that can be encapsulated according to a specified range of the readable label depth.
  • the segment of the node in the segment list is configured by the global tag block SRGB and the segment list identifier; one or more of the outer tags are from the outside to the inside as follows: the first node in the segment list corresponds to The label is determined according to the direct next hop represented by the shortest path of the first node in the entry node to the segment list; the label corresponding to the second to mth node in the segment list is according to the segment list Determined by the previous node of the node; the mth node is determined by the farthest no
  • the node in the farthest segment list that can be encapsulated according to the specified readable label depth-scoped range is the last node in the segment list, and the inner layer is not included in the outgoing label stack. label.
  • the ingress node constructs a label if the indication flag indicates that the label does not need to be encapsulated according to the specified readable label depth.
  • a stack the outbound label stack comprising at least one of: an inner layer label, an outer layer label; wherein the inner layer label is according to a global label block SRGB of the first node other than the ingress node in the segment list and Segment list identifier Constructed; the outer label is determined according to a direct next hop represented by a shortest path of the first node other than the ingress node in the entry node to the segment list.
  • the inner layer tag is not included in the tag stack.
  • the node is another node in the segment list except the ingress node: the indication flag indicates that the label does not need to be encapsulated according to the specified readable label depth
  • the outbound label stack of the node configuration includes at least one of: an inner layer label and an outer layer label; wherein the inner layer label is according to a global label block SRGB of the next node of the node and the The segment list identifier is constructed; the outer label is constructed according to the global label block SRGB of the direct next hop and the identifier of the next node represented by the shortest path of the node to the next node of the node.
  • the node is another node in the segment list except the ingress node, and the indication flag bit indicates that the label needs to be encapsulated according to the specified readable label depth.
  • the node i constructs a label stack, and the output label stack includes at least one of the following: an inner label, an outer label; wherein the inner label is within a range determined by the depth of the specified readable label
  • the segment of the node m in the farthest segment list that can be encapsulated is routed by the global tag block SRGB and the segment list identifier; one or more of the outer tags are from outside to inside: the next node of the node i
  • the label corresponding to i+1 is determined according to the direct next hop represented by the shortest path of the node i to the next node i+1 of the node; the node i+2 to the node m in the segment list
  • Corresponding tags are determined according to a previous node of the node
  • the node in the farthest segment list that can be encapsulated according to the specified readable label depth-scoped range is the last node in the segment list, and the inner layer is not included in the outgoing label stack. label.
  • the specified readable label depth is greater than or equal to 2, and the node is not larger than the specified readable label depth when encapsulating the label stack of the message.
  • the specified readable label depth is configured by display, or is a minimum value of the entire network obtained by learning.
  • the node between the node and the next node includes at least one of: an SR node and/or a non-SR node; and/or a tunnel between the node and the next node includes the following One of the following: label distribution protocol label switching path LDP LSP, traffic engineering extension based resource reservation protocol label switching path RSVP-TE LSP, border gateway protocol label switching path BGP LSP, segment routing label switching path SR LSP.
  • the segment list identifier is a node identifier of the node.
  • a label configuration and a label message forwarding method including: a controller sends a message to a node, where the message carries a segment list and is used to identify the segment a segment list identifier of the list, the segment list and the segment list identifier are used to instruct the node to construct a tag forwarding table and forward according to the tag forwarding table; and/or, the segment list and the segment list identifier And is used to instruct the node to maintain a mapping relationship between the segment list and the segment list identifier.
  • controller sending the message to the node includes: the controller sending the message to the node by a southbound interface protocol.
  • the southbound interface protocol includes: a border gateway protocol-link state routing protocol BGP-LS, a path calculation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • the method further includes: the controller sending a revocation message to the node by using the southbound interface protocol, where the revocation message is used for Instructing the node to delete the mapping relationship between the segment list and the segment list identifier, and/or to instruct the node to delete the tag forwarding table.
  • a label configuration and a label message forwarding method are further provided, including: an ingress node receives a message sent by a controller, where the message carries a segment list and is used to identify the a segment list identifier of the segment list; the ingress node sends the message to the node, wherein the message is used to instruct the node to construct a tag forwarding table, and forward according to the tag forwarding table; and/or, The message is used to indicate that the node maintains a mapping relationship between the segment list and the segment list identifier.
  • the initiating node sending the message to the node comprises: the ingress node sending the message to the node by sending an extended Interior Gateway Protocol IGP message to the node.
  • the method further includes: the ingress node receiving a revocation message sent by the controller by using a southbound interface protocol, where the revocation message is used to indicate The node deletes the mapping relationship between the segment list and the segment list identifier, and/or is used to instruct the node to delete the tag forwarding table; after receiving the revocation message, the ingress node passes the The node sends an extended Interior Gateway Protocol IGP message to instruct the node to delete the mapping relationship between the segment list and the segment list identifier, and/or instruct the node to delete the tag forwarding table.
  • IGP extended Interior Gateway Protocol
  • the southbound interface protocol includes: a border gateway protocol-link state routing protocol BGP-LS, a path calculation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • the sending, by the ingress node, the received revocation message to the node comprises: sending, by the ingress node, the message to the node by sending an extended Interior Gateway Protocol (IGP) message to the node.
  • IGP Interior Gateway Protocol
  • a tag configuration and a tag message forwarding device are provided.
  • the device is applied to a node, and includes: a first receiving module, configured to receive a message, where the message carries a segment a list and a segment list identifier for identifying the segment list; a building module configured to construct a tag forwarding table according to the segment list and the segment list identifier, and forward according to the tag forwarding table; and/or Maintaining a mapping relationship between the segment list and the segment list identifier.
  • the second receiving module is configured to receive a revocation message sent by the controller or the ingress node, where the revocation message is used to instruct the node to delete the mapping relationship between the segment list and the segment list identifier, and/ Or, used to instruct the node to delete the label forwarding table.
  • a label configuration and a label message forwarding device comprising: a first sending module, configured to send a message to a node, where The message carries a segment list and a segment list identifier for identifying the segment list, and the segment list and the segment list identifier are used to instruct the node to construct a tag forwarding table and forward according to the tag forwarding table; And/or, the segment list and the segment list identifier are used to indicate that the node maintains a mapping relationship between the segment list and the segment list identifier.
  • the apparatus further includes: a second sending module, configured to send a revocation message to the node by using a southbound interface protocol, where the revocation message is used to instruct the node to delete the segment list and the segment list identifier
  • a second sending module configured to send a revocation message to the node by using a southbound interface protocol, where the revocation message is used to instruct the node to delete the segment list and the segment list identifier
  • the mapping relationship between the two, and/or is used to instruct the node to delete the label forwarding table.
  • the southbound interface protocol includes: a border gateway protocol-link state routing protocol BGP-LS, a path calculation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • a tag configuration and a tag message forwarding device are further provided.
  • the device is applied to an ingress node, and includes: a third receiving module, configured to receive a message sent by the controller, where The message carries a segment list and a segment list identifier for identifying the segment list.
  • the third sending module is configured to send the message to the node, where the message is used to instruct the node to construct a label switch. Publishing, and forwarding according to the label forwarding table; and/or, the message is used to instruct the node to maintain a mapping relationship between the segment list and the segment list identifier.
  • the apparatus further includes: a fourth receiving module, configured to receive a revocation message sent by the controller by using a southbound interface protocol, where the revocation message is used to instruct the node to delete the segment list and the segment list a mapping relationship between the identifiers, and/or for indicating that the node deletes the label forwarding table; and the fourth sending module is configured to send the extended internal gateway protocol to the node after receiving the revocation message
  • the IGP message is used to instruct the node to delete the mapping relationship between the segment list and the segment list identifier, and/or instruct the node to delete the tag forwarding table.
  • the southbound interface protocol includes: a border gateway protocol-link state routing protocol BGP-LS, a path computation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • a node receives a message, where the message carries the segment list and a segment list identifier for identifying the segment list; the node identifies the segment list and the segment list according to the segment list Constructing a label forwarding table, and forwarding according to the label forwarding table; and/or, the node maintains a mapping relationship between the segment list and the segment list identifier, and solves the need for upgrade support of the forwarding plane hardware existing in the related art.
  • the deeper problem of the processing capacity of the label stack, the load efficiency problem and the MTU problem thereby achieving the requirement of reducing the processing capacity of the label stack of the forwarding plane hardware, and effectively solving the load efficiency problem and the MTU problem.
  • FIG. 1 is a flowchart of a first tag configuration and a tag message forwarding method according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a second label configuration and a label message forwarding method according to an embodiment of the present invention
  • FIG. 3 is a flowchart of a third tag configuration and a tag message forwarding method according to an embodiment of the present invention
  • FIG. 4 is a structural block diagram of a first tag configuration and a tag message forwarding device according to an embodiment of the present invention
  • FIG. 5 is a first preferred structural block diagram of a first tag configuration and a tag message forwarding device according to an embodiment of the present invention
  • FIG. 6 is a second tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • FIG. 7 is a block diagram showing a first preferred structure of a second tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • FIG. 8 is a third tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • FIG. 9 is a block diagram showing a first preferred structure of a third tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • FIG. 10 is a block diagram of an explicit route in an SR network according to Embodiment 1 of the present invention.
  • FIG. 11 is a flowchart of explicit routing in an SR network according to Embodiment 1 of the present invention.
  • FIG. 13 is a tag table forwarding table constructed on an R2 node according to Embodiment 1 of the present invention.
  • 15 is a schematic diagram of a format of a data packet carrying an SR packet header sent by the controller to the ingress node R0 according to the first embodiment of the present invention
  • 16 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an A1 node to a next node according to an embodiment of the present invention
  • 17 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an R1 node to a next node according to the first embodiment of the present invention
  • FIG. 18 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an A2 node to a next node according to Embodiment 1 of the present invention
  • 19 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an R2 node to a next node according to the first embodiment of the present invention
  • 20 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an A3 node to a next node according to the first embodiment of the present invention
  • FIG. 21 is a flowchart of explicit routing in an SR network according to Embodiment 2 of the present invention.
  • FIG. 1 is a flowchart of a first label configuration and a label message forwarding method according to an embodiment of the present invention. Including the following steps:
  • Step S102 The node receives the message, where the message carries a segment list and a segment list identifier for identifying the segment list.
  • Step S104 The node constructs a label forwarding table according to the segment list and the segment list identifier, and forwards according to the label forwarding table; and/or, the node maintains a mapping relationship between the segment list and the segment list identifier.
  • the depth of the label constructed by the node can be effectively reduced, thereby reducing the requirement of the label stack processing capability of the forwarding plane hardware, thereby solving the forwarding surface existing in the related art.
  • the hardware needs to be upgraded to support the deeper label stack processing capability and the load efficiency problem and the MTU problem, thereby achieving the requirement of reducing the label stack processing capability of the forwarding plane hardware, and effectively solving the load efficiency problem and the MTU problem.
  • the foregoing message may be sent by the ingress node after receiving the segment list and the segment list identifier sent by the controller, or may be directly sent by the controller.
  • the node may receive the message from the controller. And/or, the node receives the above message from the ingress node, where the message is sent by the ingress node after receiving the segment list and the segment list identifier sent by the controller, that is, the ingress node first receives the segment list sent by the controller and The segment list identifier is then sent to the node by the received segment list and segment list identifier.
  • the node When the node receives the message sent by the controller, the node may receive the above message sent by the controller through the southbound interface protocol; and/or, when the node receives the message from the ingress node, the node may receive the ingress node through the extended internal gateway.
  • the above message sent by the protocol IGP message The above message sent by the protocol IGP message.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS or a path computation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • the node may further receive a revocation message sent by the controller or the ingress node, where the revocation message is used to indicate that the node deletes the mapping relationship between the segment list and the segment list identifier. , and / or, used to instruct the node to delete the label forwarding table.
  • the node constructs the label forwarding table according to the segment list and the segment list identifier, there may be multiple construction manners.
  • the node in the case that the above node is the last node in the segment list, and the node If the previous node does not carry the inner label in the forwarding packet, the node does not construct the label entry in the label forwarding table; wherein the inner label is a global label block SRGB and a segment list according to the next node of the node The logo is constructed.
  • segment list identifier may be of various types.
  • the segment list identifier may be a label Lable or an index index, where the global label is a global label of all nodes in the SR domain.
  • the index Sindex of the block SRGB is the same.
  • the label forwarding table may be constructed in the following manner:
  • the node may be routed according to the segment of the node.
  • the global label block SRGB and the segment list identifier are constructed into a label, and the label stack is constructed, and the output label stack may include at least one of the following: an inner label, one or more outer labels; wherein the inner label is based on The global label block SRGB and the segment list identifier of the next node of the node may be configured, and the one or more outer labels may include at least one of the following: a label corresponding to the node identifier corresponding to the remaining node, and the next node of the node corresponds to The node ID corresponds to the label.
  • the node constructs an outgoing label stack including one or more outer labels according to the specified readable label depth.
  • the label forwarding table may also be constructed in the following manner:
  • the indication flag indicates that the label needs to be readable according to the specified
  • the ingress node constructs a label stack, and the output label stack includes at least one of an inner label and an outer label, wherein the inner layer identifier is according to the specified readable label depth.
  • the segment of the node in the farthest segment list that can be encapsulated by the specified range is constructed by the global tag block SRGB and the segment list identifier; one or more outer tags are as follows from the outside to the inside: the first in the segment list The label corresponding to the node is determined according to the direct next hop indicated by the shortest path of the first node in the entry node to the segment list; the label corresponding to the second node to the mth node in the segment list is according to the segment The previous node of the node in the list is determined; the mth node is the farthest node in the list of segments that can be encapsulated according to the scope of the specified readable label stack. Set.
  • the above-mentioned node in the farthest segment list that can be encapsulated according to the specified readable label depth-scoped range is the last node in the segment list, and the inner label is not included in the outgoing label stack.
  • the label forwarding table may also be configured in the following manner: the indication flag bit does not need to be specified according to the specified
  • the ingress node constructs a label stack, and the output label stack includes at least one of the following: an inner label, an outer label; wherein the inner label is based on the entry in the segment list
  • the global label block SRGB and the segment list identifier of the first node outside the node are constructed; the outer label is the direct next hop according to the shortest path of the first node except the entry node in the entry node to the segment list. definite.
  • the tag stack does not include the inner tag.
  • the outbound label stack constructed by the node may include at least one of the following: an inner label, an outer label; wherein the inner label may be based on the global label block SRGB and the segment list of the node's next node. Identification structure; the outer label may be constructed according to the identifier of the global label block SRGB and the next node of the direct next hop represented by the shortest path of the node to the next node of the node.
  • the node in the case that the segment list identifier is an index, the node is another node in the segment list other than the ingress node, and the indication flag bit needs to be encapsulated according to the specified readable label depth.
  • the node i constructs a label stack, and the output label stack may include at least one of the following: an inner label, an outer label; wherein the inner label is capable according to a specified range of the readable label depth
  • the segment of node m in the farthest segment list of the encapsulation is constructed by the global tag block SRGB and the segment list identifier; one or more outer tags are from outside to inside: the tag corresponding to the next node i+1 of node i Is a direct next hop determination based on the shortest path from node i to the next node i+1 of the node; the label corresponding to node i+2 to node m in the segment list is based on the node in the segment list Determined by the previous
  • the above-mentioned node in the farthest segment list that can be encapsulated according to the specified readable label depth is the last node in the segment list, and the inner label is not included in the outgoing label stack.
  • the specified readable label depth mentioned above may be greater than or equal to 2, and the node is not deeper than the readable label stack specified by the node when encapsulating the label stack of the message. Moreover, the stack depth is configurable. In an optional embodiment, the specified readable label depth may be configured by display or the minimum value of the entire network obtained by learning.
  • the node between the node and the next node of the node may comprise different types of nodes.
  • the node between the node and the next node of the node may comprise at least one of the following: an SR node and / or non-SR node; and / or, the tunnel between the node and the next node includes one of the following: label distribution protocol label delivery The LDP LSP, the resource reservation protocol label switching path RSVP-TE LSP, the border gateway protocol label switching path BGP LSP, and the segment routing label switching path SR LSP.
  • the above-mentioned segment list is identified as the node identifier of the node.
  • FIG. 2 is a flowchart of a second label configuration and a label message forwarding method according to an embodiment of the present invention. As shown in FIG. 2, the method includes the following steps:
  • step S202 the controller sends a message to the node, where the message carries a segment list and a segment list identifier for identifying the segment list, where the segment list and the segment list identifier are used to instruct the node to construct a tag forwarding table according to The tag forwarding table is forwarded; and/or the segment list and the segment list identifier are used to indicate a mapping relationship between the node maintenance segment list and the segment list identifier.
  • the controller sends the segment list and the segment list identifier for constructing the label forwarding table to the node, and the node constructs the label forwarding table according to the segment list and the segment list identifier, which can effectively reduce the depth of the label of the node, thereby reducing
  • the requirements of the processing capability of the label stack of the forwarding plane hardware thereby solving the problem that the forwarding plane hardware in the related art needs to be upgraded to support deeper label stack processing capability, as well as the load efficiency problem and the MTU problem, thereby achieving the label reduction of the forwarding plane hardware.
  • the stack processing capability requirements effectively solve the effects of load efficiency problems and MTU problems.
  • the controller When the controller sends a message to the node, there may be multiple transmission methods. In an optional embodiment, the controller may send a message to the node through the southbound interface protocol.
  • the southbound interface protocol is not limited.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS, a path computation unit communication protocol PCEP, and an open flow. Protocol OPENFLOW or network configuration protocol Netconf.
  • the controller may also send a revocation message to the node.
  • the controller sends the revocation message to the node through the southbound interface protocol, where the revocation message is used.
  • the node is instructed to delete the mapping relationship between the segment list and the segment list identifier, and/or to instruct the node to delete the tag forwarding table.
  • FIG. 3 is a flowchart of a third label configuration and a label message forwarding method according to an embodiment of the present invention. As shown in FIG. 3, the method includes the following steps:
  • Step S302 the ingress node receives the message sent by the controller, where the message carries a segment list and a segment list identifier for identifying the segment list;
  • Step S304 the ingress node sends the message to the node, where the message is used to instruct the node to construct a label forwarding table, and forwards according to the label forwarding table; and/or the message is used to indicate that the node maintains the segment list and the segment list.
  • the mapping relationship of the identity is used to indicate that the node maintains the segment list and the segment list.
  • the ingress node sends the segment list and the segment list identifier for constructing the label forwarding table to the node, and the node constructs the label forwarding table according to the segment list and the segment list identifier, which can effectively reduce the depth of the label of the node, thereby reducing
  • the requirements of the processing capability of the label stack of the forwarding plane hardware thereby solving the problem that the forwarding plane hardware in the related art needs to be upgraded to support deeper label stack processing capability, as well as the load efficiency problem and the MTU problem, thereby achieving the label reduction of the forwarding plane hardware.
  • the stack processing capability requirements effectively solve the effects of load efficiency problems and MTU problems.
  • the ingress node may send the message to the node when sending the message to the node.
  • the ingress node may send the message to the node by sending an extended internal gateway protocol IGP message to the node, where The extended IGP message is the above message.
  • the revocation message may also be sent to the node.
  • the ingress node first receives the revocation message sent by the controller through the southbound interface protocol, where the revocation message And indicating that the node deletes the mapping relationship between the segment list and the segment list identifier, and/or is used to instruct the node to delete the tag forwarding table; after receiving the revocation message, the ingress node may send the extended internal gateway protocol to the node.
  • the IGP message instructs the node to delete the mapping relationship between the segment list and the segment list identifier, and/or instructs the node to delete the tag forwarding table.
  • the type of the southbound interface protocol is not limited.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS, a path calculation unit communication protocol PCEP, and an open flow. Protocol OPENFLOW or network configuration protocol Netconf.
  • the revocation message may be sent to the node by sending the extended internal gateway protocol IGP message to the node, where the extended IGP message is the revocation message.
  • a tag configuration and a tag message forwarding device are provided.
  • the device is used to implement the foregoing embodiments and preferred embodiments, and details are not described herein.
  • the term "module” may implement a combination of software and/or hardware of a predetermined function.
  • the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
  • FIG. 4 is a structural block diagram of a first tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • the device is applied to a node. As shown in FIG. 4, the device includes a first receiving module 42 and a building module 44. The device will be described below.
  • the first receiving module 42 is configured to receive a message, where the message carries a segment list and a segment list identifier for identifying the segment list; the building module 44 is connected to the first receiving module 42 and is set according to the segment list. And the segment list identifier constructs a label forwarding table, and forwards according to the label forwarding table; and/or, sets a mapping relationship between the maintenance segment list and the segment list identifier.
  • the foregoing message received by the first receiving module 42 may be sent by the ingress node after receiving the segment list and the segment list identifier sent by the controller, or may be directly sent by the controller.
  • the node The message may be received from the controller; and/or the node receives the message from the ingress node, wherein the message is sent by the ingress node after receiving the segment list and the segment list identifier sent by the controller, ie, the ingress node receives the message first The segment list and the segment list identifier sent by the controller, and then the received segment list and the segment list identifier are sent to the node.
  • the first receiving module 42 may receive the above message sent by the controller through the southbound interface protocol; and/or, at the first receiving module 42, receive the message from the ingress node.
  • the first receiving module 42 can receive the above message sent by the ingress node through the extended Interior Gateway Protocol IGP message.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS or a path computation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • FIG. 5 is a first preferred structural block diagram of a first tag configuration and a tag message forwarding device according to an embodiment of the present invention. As shown in FIG. 5, the device includes, in addition to all the modules shown in FIG. The receiving module 52 is described below.
  • the second receiving module 52 is connected to the foregoing building module 44, and is configured to receive a revocation message sent by the controller or the ingress node, where the revocation message is used to instruct the node to delete the mapping relationship between the segment list and the segment list identifier, and/ Or, it is used to instruct the node to delete the label forwarding table.
  • the above-mentioned building module 44 may have multiple construction manners when constructing the label forwarding table.
  • the node in the case where the above node is the last node in the segment list, and the previous one of the nodes If the node does not carry the inner label in the forwarding packet, the node does not construct the label entry in the label forwarding table; wherein the inner label is constructed according to the global label block SRGB and the segment list identifier of the next node of the node. .
  • segment list identifier may be of various types.
  • the segment list identifier may be a label Lable or an index index, where the global label is a global label of all nodes in the SR domain.
  • the index Sindex of the block SRGB is the same.
  • the building module 44 may also construct a tag forwarding table in the following manner:
  • the node in the case that the node is not the last node, the node may be based on the The segment routing global label block SRGB and the segment list identifier of the node are constructed into the label, and the label stack is constructed.
  • the output label stack may include at least one of the following: an inner label, one or more outer labels; wherein, the inner label The layer label is constructed according to the global label block SRGB and the segment list identifier of the next node of the node, and the one or more outer labels may include at least one of the following: a label corresponding to the node identifier corresponding to the remaining node, the node The label corresponding to the node identifier corresponding to the next node.
  • the node constructs an outgoing label stack including one or more outer labels according to the specified readable label depth.
  • the building block 44 may also construct a tag forwarding table in such a manner that, in another optional embodiment, when the node is an ingress node, the indication flag indicates that it needs to be specified according to the specified
  • the ingress node constructs a label stack
  • the output label stack includes at least one of an inner label and an outer label, wherein the inner layer identifier is readable according to the specified
  • the segment of the node in the farthest segment list that can be encapsulated by the depth of the tag depth is encapsulated by the global tag block SRGB and the segment list identifier; one or more outer tags are as follows from the outside to the inside:
  • the label corresponding to the first node is determined according to the direct next hop represented by the shortest path of the first node in the entry node to the segment list; the label corresponding to the second node to the mth node in the segment list, Is determined according to
  • the above-mentioned node in the farthest segment list that can be encapsulated according to the specified readable label depth-scoped range is the last node in the segment list, and the inner label is not included in the outgoing label stack.
  • the building module 44 may also construct a label forwarding table in the following manner: the indication flag indicates that it is not required to be specified according to the specified
  • the ingress node constructs a label stack, and the output label stack includes at least one of the following: an inner label and an outer label; wherein the inner label is divided according to the segment list
  • the global label block SRGB and the segment list identifier of the first node outside the ingress node are constructed; the outer label is the direct connection according to the shortest path of the first node except the ingress node in the entry node to the segment list. Jump OK.
  • the tag stack does not include the inner tag.
  • the outbound label stack constructed by the node may include at least one of the following: an inner label, an outer label; wherein the inner label may be based on the global label block SRGB and the segment list of the node's next node. Identification structure; the outer label may be constructed according to the identifier of the global label block SRGB and the next node of the direct next hop represented by the shortest path of the node to the next node of the node.
  • the node in the case that the segment list identifier is an index, the node is another node in the segment list other than the ingress node, and the indication flag bit needs to be encapsulated according to the specified readable label depth.
  • the node i constructs a label stack, and the output label stack may include at least one of the following: an inner label, an outer label; wherein the inner label is capable according to a specified range of the readable label depth
  • the segment of node m in the farthest segment list of the encapsulation is constructed by the global tag block SRGB and the segment list identifier; one or more outer tags are from outside to inside: the tag corresponding to the next node i+1 of node i Is a direct next hop determination based on the shortest path from node i to the next node i+1 of the node; the label corresponding to node i+2 to node m in the segment list is based on the node in the segment list Determined by the previous
  • the above-mentioned node in the farthest segment list that can be encapsulated according to the specified readable label depth is the last node in the segment list, and the inner label is not included in the outgoing label stack.
  • the specified readable label depth mentioned above may be greater than or equal to 2, and the node is not deeper than the readable label stack specified by the node when encapsulating the label stack of the message. Moreover, the stack depth is configurable. In an optional embodiment, the specified readable label depth may be configured by display or the minimum value of the entire network obtained by learning.
  • the node between the node and the next node of the node may comprise different types of nodes.
  • the node between the node and the next node of the node may comprise at least one of the following: an SR node and And/or the non-SR node; and/or the tunnel between the node and the next node includes one of the following: a label distribution protocol label switching path LDP LSP, a traffic engineering extension based resource reservation protocol label switching path RSVP-TE LSP, Border gateway protocol label switching path BGP LSP, segment routing label switching path SR LSP.
  • the above-mentioned segment list is identified as the node identifier of the node.
  • FIG. 6 is a second tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • the device is applied to a controller. As shown in FIG. 6, the device includes a first sending module 62. Description.
  • the first sending module 62 is configured to send a message to the node, where the message carries a segment list and a segment list identifier for identifying the segment list, and the segment list and the segment list identifier are used to indicate that the node constructs a label forwarding table. And forwarding according to the label forwarding table; and/or, the segment list and the segment list identifier are used to indicate a mapping relationship between the node maintenance segment list and the segment list identifier.
  • the first sending module 62 sends a message to the node, there may be multiple sending methods.
  • the message may be sent to the node through the southbound interface protocol.
  • the southbound interface protocol is not limited.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS, a path computation unit communication protocol PCEP, and an open flow. Protocol OPENFLOW or network configuration protocol Netconf.
  • FIG. 7 is a first preferred structural block diagram of a second tag configuration and a tag message forwarding device according to an embodiment of the present invention. As shown in FIG. 7, the device includes, in addition to all the modules shown in FIG. The second transmitting module 72 will be described below.
  • the second sending module 72 is connected to the first sending module 62, and is configured to send a revocation message to the node by using a southbound interface protocol, where the revocation message is used to instruct the node to delete the mapping relationship between the segment list and the segment list identifier. , and / or, used to instruct the node to delete the label forwarding table.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS, a path computation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • FIG. 8 is a third tag configuration and tag message forwarding device according to an embodiment of the present invention.
  • the device is applied to an ingress node.
  • the device includes a third receiving module 82 and a third transmitting module 84. The device will be described below.
  • the third receiving module 82 is configured to receive a message sent by the controller, where the message carries a segment list and a segment list identifier for identifying the segment list.
  • the third sending module 84 is connected to the third receiving module 82. And being configured to send a message to the node, where the message is used to indicate that the node included in the segment list constructs a label forwarding table, and forwards according to the label forwarding table; and/or, the message is used to indicate that the node maintains the segment list and the segment The mapping relationship of the list identifier.
  • the third sending module 84 may send multiple types of sending manners when sending the foregoing message to the node.
  • the third sending module 84 may send the extended internal gateway protocol IGP message to the node. The message is sent to the node, wherein the extended IGP message is the above message.
  • FIG. 9 is a first preferred structural block diagram of a third tag configuration and a tag message forwarding device according to an embodiment of the present invention. As shown in FIG. 9, the device includes, in addition to all the modules shown in FIG. The four receiving module 92 and the fourth transmitting module 94 are described below.
  • the fourth receiving module 92 is connected to the third sending module 84, and is configured to receive a revocation message sent by the controller through the southbound interface protocol, where the revocation message is used to instruct the node to delete the mapping between the segment list and the segment list identifier.
  • the relationship, and/or, is used to instruct the node to delete the label forwarding table;
  • the fourth sending module 94 is connected to the fourth receiving module 92, and is configured to send the extended Interior Gateway Protocol IGP message to the node after receiving the revocation message.
  • the node is instructed to delete the mapping relationship between the segment list and the segment list identifier, and/or instruct the node to delete the tag forwarding table.
  • the southbound interface protocol may include: a border gateway protocol-link state routing protocol BGP-LS, a path computation unit communication protocol PCEP, an open flow protocol OPENFLOW, or a network configuration protocol Netconf.
  • an explicit routing method in the segment routing SR network is also provided in the embodiment of the present invention.
  • the label stack that is converted into the segment list is “flattened”, so that the network has the capability of specifying the route of the source of the segmentation route, and does not perform any upgrade on the current network forwarding chip.
  • the method is implemented by the following scheme:
  • the segment list may be a network protocol address list ip address list, or a global label list, or an index list index list, or a mixture thereof, that is, a list of information that can identify a segment node segment node.
  • the segment list and the segment id can be uniformly allocated by the controller or the segment list is directly configured by the ingress node of the ingress node, and the ingress node sends the configured segment list to the controller, and the segment id is assigned by the controller, and the segment id can be simply referred to as SL-SID.
  • the SL-SID can be a label label or an index.
  • an index is used as an example for description. It can be determined that the Label can be calculated according to SRGB[index].
  • the controller can notify the SL-SID to the corresponding segment node in the segment list through the southbound interface protocol, wherein the controller can pass the border gateway protocol-link state routing protocol (Border Gateway) The Protocol-Link State (referred to as BGP-LS) or the Path Computation Element Communication Protocol (PCEP) notifies the SL-SID to the ingress node, and the ingress node passes the extended internal gateway (Interior Gateway, referred to as Flooding in the SR domain for the IGP) protocol.
  • Border Gateway border gateway protocol-link state routing protocol
  • PCEP Path Computation Element Communication Protocol
  • the controller or the ingress node calculates the label stack for the segment list-directed packet from the ingress node, it can be based on the global specified specific readable label depth (specific RLD) policy.
  • Specific RLD to encapsulate the label stack.
  • the specific RLD is the specified readable label depth, can be explicitly configured, or learns the minimum RLD of the entire network through the protocol, but the final specific RLD must be forced to be greater than or equal to 2 to support at least one layer of virtual private network (Virtual Private Network (referred to as VPN) label plus a layer of SR label.
  • VPN Virtual Private Network
  • the label entry is on the last node of the segment list, last segment node (denoted as Node_n) as follows:
  • the label entry may not be created on the last segment node (denoted as Node_n), provided that the label entry of the second-to-last SR NODE is also implemented by using the optimization mentioned below.
  • the tag SRGB_Node_n[SL-SID] is carried in the forwarded message.
  • the label entry is on the non-last node, that is, the non-last segment node (denoted as Node_i) as follows:
  • Specific RLD Explicitly configured or learned the minimum RLD of the entire network through the protocol, but the specific RLD must be greater than or equal to 2.
  • Outer layer multiple labels corresponding to the NODE-SIDs corresponding to the remaining SR NODEs (ie, Node_i+1, ... Node_n);
  • Inner layer the label corresponding to the SL-SID
  • Nexthop/port the shortest path to Node_i+1 (including ECMP/FRR);
  • the nexthop/port is the direct next hop and the outbound interface represented by the shortest path of the Node_i node to the Node_i+1 node.
  • the node between the Node_i node and the Node_i+1 node, including the nexthop node, may be an SR node or a non-SR node. That is, the tunnels of Node_i to Node_i+1 may be LSPs such as LDP/RSVP-TE/BGP/SR. In the following description, the SR LSP is taken as an example for description.
  • the outbound label stack of the corresponding label entry of the SL-SID on the Node_i is composed of the label corresponding to the plurality of outer NODE-SIDs and the label corresponding to the inner SL-SID.
  • Multiple outer labels are in order from outside to inside:
  • the FLAG of the corresponding label entry of the SL-SID on the Node_i indicates whether the label stack needs to be encapsulated according to the specific RLD. If yes, the depth of the label stack when the packet is forwarded away from the Node_i does not exceed the specific RLD. Try to encapsulate more tags.
  • the tag stack may contain the private network service label, the label corresponding to the outer NODE-SIDs, and the label corresponding to the inner SL-SID. For this reason, the generated label entry is It is necessary to include a label corresponding to a plurality of outer NODE-SIDs (ie, Node_i+1, ... Node_n) and a label corresponding to the inner layer SL-SID.
  • the label stack may contain the private network service label, the label corresponding to the next NODE-SID, and the corresponding SL-SID of the inner layer. For this reason, the generated label entry only needs to include the label corresponding to the outer NODE-SID (ie, Node_i+1) and the label corresponding to the inner SL-SID.
  • the above FLAG can be specified according to a policy.
  • the label corresponding to the inner layer SL-SID in the label stack of the above message is determined according to the next SR NODE (Node_i+1), that is, the inner layer SL- in the label stack.
  • the tag corresponding to the SID is SRGB_Node_i+1[SL-SID]. Then, the entire label stack of the message is from outside to inside as follows:
  • SRGB_Node_i+1[SL-SID] may not be included in the outgoing label stack of the label entry. This is because with SRGB_nexthop[Node_i+1-SID], the message can already be delivered to Node_n.
  • the label corresponding to the inner SL-SID in the label stack of the packet may be determined according to the farthest Node_m that can be encapsulated according to the scope of the specific RLD, that is, in the label stack.
  • the tag corresponding to the inner layer SL-SID is SRGB_Node_m[SL-SID]. Then, the entire label stack of the message is from outside to inside as follows:
  • SRGB_Node_m[SL-SID] may not be included in the outgoing label stack of the label entry. Because with SRGB_Node_m-1[Node_m-SID], the message can already be delivered to Node_n.
  • the label corresponding to the inner layer SL-SID in the label stack of the ingress node packet is determined according to the first SR NODE (Node_1), that is, the inner layer in the label stack, when the label stack is not encapsulated according to the specific RLD.
  • the tag corresponding to the SL-SID is SRGB_Node_1[SL-SID].
  • the label corresponding to the outer node Node_1 is determined by the next hop according to the shortest path of the ingress node to the node_1, that is, the label corresponding to the outer node Node_1 in the label stack is SRGB_nexthop[Node_1-SID]. Then, the entire label stack of the ingress node message is from outside to inside as follows:
  • node1 is the first node in the SR list; if the ingress node is the first node in the SR list, node1 is the second node in the SR list .
  • Node_1 happens to be Node_n (the last node in the SR list), as an optimization, SRGB_Node_1[SL-SID] may not be included in the label stack of the message. Because with SRGB_nexthop[Node_1-SID], the message can already be delivered to Node_n.
  • the label corresponding to the inner SL-SID in the label stack of the packet is determined according to the farthest Node_m that can be encapsulated according to the scope of the specific RLD, that is, the label stack.
  • the label corresponding to the layer SL-SID is SRGB_Node_m[SL-SID].
  • the label corresponding to the outer node Node_1 is determined by the next hop according to the shortest path of the ingress node to the node_1, that is, the label corresponding to the outer node Node_1 in the label stack is SRGB_nexthop[Node_1-SID].
  • the label corresponding to the outer Node 2 is determined according to Node_1, that is, the label corresponding to the outer Node_2 in the label stack is SRGB_Node1[Node_2-SID].
  • the label corresponding to the outer Node3 is determined according to Node_2, that is, the label corresponding to the outer Node_3 in the label stack is SRGB_Node2[Node_3-SID], and so on. Then, the entire label stack of the message is from outside to inside as follows:
  • Node_m happens to be Node_n (the last node in the SR list), and as an optimization, the message stack of the message may not necessarily contain SRGB_Node_m[SL-SID]. Because with SRGB_Node_m-1[Node_m-SID], the message can already be delivered to Node_n.
  • the SL-SID assigned to the segment list may be the node-SID assigned to the segment node.
  • the corresponding segment node in the segment list After the corresponding segment node in the segment list receives the segment list and the SL-SID, it generates a corresponding label entry of the SL-SID.
  • the shortest path next hop of R0 to R1 is an A1 node
  • the shortest path next hop of R1 to R2 is a hop.
  • the A2 node, the shortest path from R2 to R3, the next hop is the A3 node
  • the end-to-end tunnel from R0 to R3 is designated through the R1, R2, and R3 nodes
  • R0 is the ingress node.
  • the traffic binding segment list on R0 can be configured by itself or by The controller centrally delivers the device, and so on.
  • the segment list of the traffic binding can be: ⁇ R1, R2, R3>, which is a list that can identify the node information, such as ip address list, global label list, index list; the traffic binding segment list can also be a direct Used for the label stack ⁇ Label 1, Label 2> of the message header.
  • the segment list ⁇ R1, R2, R3> can be recorded as SL1, and the controller also assigns a segment id to the SL1, which is assumed to be 300.
  • the SID assigned to the segment list can be referred to as SL-SID, and the SL-SID can be Label. It may also be an index. In the present embodiment, an index is taken as an example for description. It can be determined that the Label can be calculated by SRGB[index].
  • 11 is a flowchart of explicit routing in an SR network according to Embodiment 1 of the present invention. As shown in FIG. 11, the process includes:
  • step S1102 the controller will advertise the segment list ⁇ R1, R2, R3> and SL-SID300 to each node included in the list through the southbound interface protocol.
  • the southbound interface protocol can be BGP-LS or PCEP.
  • the BGP-LS or PCEP neighbor relationship exists between the controller and each node in the SR domain.
  • the controller carries the segment list ⁇ R1, R2, R3> and SL-SID300 by extending the new message in BGP-LS or PCEP and sends it to each node included in the list.
  • a new message can be defined as: SR-LIST Segment ID allocation msg.
  • the BGP-LS or PCEP can carry the segment list ⁇ R1, R2, R3> and SL-SID300 information through an SR-LIST Segment ID allocation msg and send it to the R1, R2, and R3 nodes.
  • Step S1104 After R1, R2, and R3 receive the SR-LIST Segment ID allocation msg message carrying the segment list ⁇ R1, R2, R3> and SL-SID300, the label entry corresponding to the SL-SID is constructed.
  • the configured label entry configuration policy specifies that the label does not need to be encapsulated according to the specific RLD, and the label entry is constructed according to the label of the SL-SID300 label entry on the SR node.
  • the absolute label assigned by the SR node to the segment list (actually the SRGB of the SR node is offset by SL-SID300)
  • the outgoing label is the absolute label assigned by the next SR node to the segment list (actually the next SR)
  • the SRGB of the node is offset by SL-SID300) and the necessary outer tunnel label is iterated.
  • the outer tunnel can support ECMP/FRR and the like.
  • FIG. 12 is a tag table forwarding table constructed on the R1 node according to the first embodiment of the present invention.
  • R2 Because remote R2 is not directly connected to the next hop, you can continue to iterate over the outer label, which can be the label assigned by the protocol such as LDP/RSVP-TE/BGP/SR. Taking the SR tag as an example, R1 needs to superimpose the outer label SRGB_A2[index_R2].
  • FIG. 13 is a label table forwarding table constructed on the R2 node according to the first embodiment of the present invention.
  • FIG. 14 is a label table forwarding table constructed on the R3 node according to the first embodiment of the present invention.
  • the specific packet forwarding process can be as follows:
  • the segment list in the "flow binding segment list” can be directly the label stack, or the ip address list, that is, ⁇ R1, R2, R3>. If it is an ip address list, the ingress node needs to convert it into a label. Stack. The following is described in two cases:
  • the traffic binding segment list of the ingress node R0 is: ⁇ SRGB_A1[INDEX_R1], SRGB_R1[300]>, which can generally be calculated and output by the controller, as shown in FIG. 15, FIG. 15 is a first embodiment according to the present invention.
  • the inner layer label is offset by the SL-SID (that is, the SL-SID: 300 assigned to SL1 in this embodiment) in the SRGB of the first segment node (ie, SRGB_R1 in this embodiment). In this embodiment, it is SRGB_R1 [300].
  • the outer label is the forwarding label of the ingress to the first segment node, and may be a label of an LSP such as LDP/RSVP-TE/BGP/STATIC/SR.
  • the label is an SR label, that is, an ingress node to a first segment.
  • the SRGB (ie, SRGB_A1) of the node's direct next hop is offset by the INDEX of the first segment node (ie, INDEX_R1), which is SRGB_A1[INDEX_R1].
  • the converted segment list is shown in Figure 15.
  • FIG. 16 is a schematic diagram showing the format of a data packet carrying an SR packet header forwarded by an A1 node to a next node according to an embodiment of the present invention.
  • R1 is the direct next hop of A1.
  • the R1 node After receiving the packet, the R1 node searches the label forwarding table according to the outer label SRGB_R1[300] (Fig. 12), and exchanges the outer label as SRGB_R2[300] and then switches. To R2. Since R2 is not directly connected to R1, it continues to iterate over the outer label, which can be a label assigned by protocols such as LDP/RSVP-TE/BGP/SR. Taking the SR tag as an example, R1 needs to superimpose the outer label SRGB_A2[index_R2].
  • FIG. 17 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an R1 node to a next node according to the first embodiment of the present invention.
  • A2 is the direct next hop of R1. After receiving the message, it searches the label forwarding table according to the outer label SRGB_A2[index_R2], pops the outer label, and transfers the message to R2.
  • Figure 18 is based on this.
  • R2 After receiving the message, R2 searches for the label forwarding table according to the outer label SRGB_R2[300] (Fig. 13), and exchanges the outer label as SRGB_A3[INDEX_R3] and transfers the message to A3, which is according to the present invention.
  • FIG. 20 is a schematic diagram of a format of a data packet carrying an SR packet header forwarded by an A3 node to a next node according to the first embodiment of the present invention.
  • R3 After receiving the packet, R3 searches for the label forwarding table (Fig. 14) according to the outer label SRGB_R3[INDEX_R3], and pops up the label. Or the outer label is ejected in advance in the penultimate hop.
  • FIG. 21 is a flowchart of explicit routing in an SR network according to Embodiment 2 of the present invention. As shown in FIG. 21, the method includes:
  • step S2102 the controller will advertise the segment list ⁇ R1, R2, R3> and SL-SID300 information to the ingress node in the list through the southbound interface protocol.
  • the southbound interface protocol can be BGP-LS or PCEP.
  • the BGP-LS or PCEP neighbor relationship exists between the controller and each node in the SR domain.
  • the controller carries the segment list ⁇ R1, R2, R3> and SL-SID300 by extending the new message in BGP-LS or PCEP, and sends it to the ingress node in the list.
  • SR-LIST Segment ID allocation msg we can define a new message: SR-LIST Segment ID allocation msg.
  • the BGP-LS or PCEP can carry the segment list ⁇ R1, R2, R3> and SL-SID300 information through an SR-LIST Segment ID allocation msg and send it to the ingress node in the list.
  • Step S2104 The ingress node advertises the segment list ⁇ R1, R2, R3> and SL-SID300 information to all nodes of the SR domain by using the newly extended IGP message.
  • the SR node included in the segment list t ⁇ R1, R2, R3> receives the segment list ⁇ R1, R2, R3> and SL-SID300 information and constructs a label forwarding table.
  • the other nodes in the SR domain do not need to generate corresponding label tables. Item, but the maintenance item needs to maintain the mapping relationship between segment list ⁇ R1, R2, R3> to SL-SID300.
  • the controller can also send the SR-LIST Segment ID allocation msg to the ingress node. After R0 is received, the maintenance entry saves the mapping relationship from SL1 to SID-300.
  • the configuration of the label forwarding table of all the nodes included in the segment list is the same as that of the first embodiment.
  • the specific packet forwarding process is the same as that of the first embodiment. For details, refer to the first embodiment.
  • FIG. 22 is a flowchart of explicit routing in an SR network according to Embodiment 3 of the present invention. As shown in FIG. 22, the method includes:
  • step S2202 the controller sends the segment list ⁇ R1, R2, R3> and SL-SID300 to each node and the ingress node included in the list before being revoked by the southbound interface protocol.
  • the southbound interface protocol can be BGP-LS or PCEP.
  • the BGP-LS or PCEP neighbor relationship exists between the controller and each node in the SR domain.
  • the controller will revoke the segment list ⁇ R1, R2, R3> and SL-SID300 previously sent to each node included in the list by the extended BGP-LS or PCEP revocation message.
  • the BGP-LS can revoke the segment list ⁇ R1, R2, R3> and SL-SID300 previously sent to each node included in the list through an extended BGP-LS or PCEP revocation message.
  • Step S2204 After receiving the segment list ⁇ R1, R2, R3> and SL-SID300 revocation messages, each node included in the list deletes the local label forwarding table, and the ingress node deletes the local maintenance for saving the segment list ⁇ R1, R2. , R3> The entry to the mapping relationship of SL-SID300.
  • step S2302 the controller will cancel the segment list ⁇ R1, R2, R3> and SL-SID300 of the ingress node previously sent to the SR domain through the southbound interface protocol.
  • the southbound interface protocol can be BGP-LS or PCEP.
  • the BGP-LS or PCEP neighbor relationship exists between the controller and each node in the SR domain.
  • the controller will revoke the segment list ⁇ R1, R2, R3> and SL-SID300 previously included in the list containing the ingress node by the extended BGP-LS or PCEP revocation message.
  • the BGP-LS can revoke the segment list ⁇ R1, R2, R3> and SL-SID300 previously sent to each node included in the list through an extended BGP-LS or PCEP revocation message.
  • Step S2304 After receiving the segment list ⁇ R1, R2, R3> and SL-SID300 revocation messages, the ingress node of the SR domain deletes the locally maintained mapping relationship for saving the segment list ⁇ R1, R2, R3> to the SL-SID300.
  • the entry of the IGP revocation message is sent to the other nodes in the SR domain to delete the local label forwarding table or delete the entry for saving the mapping relationship between the segment list ⁇ R1, R2, R3> and the SL-SID300.
  • the basic difference is the same as that in the first embodiment.
  • the main difference is that the label entry configuration policy is configured in the embodiment to specify as many labels as possible according to the specific RLD.
  • FIG. 24 is a flowchart of explicit routing in an SR network according to Embodiment 5 of the present invention. As shown in FIG. 24, the method includes:
  • step S2402 the controller will advertise the segment list ⁇ R1, R2, R3> and SL-SID300 to each node included in the list through the southbound interface protocol.
  • the southbound interface protocol can be BGP-LS or PCEP.
  • the BGP-LS or PCEP neighbor relationship exists between the controller and each node in the SR domain.
  • the controller carries the segment list ⁇ R1, R2, R3> and SL-SID300 by extending the new message in BGP-LS or PCEP and sends it to each node included in the list.
  • SR-LIST Segment ID allocation msg we can define a new message: SR-LIST Segment ID allocation msg.
  • the BGP-LS or PCEP can carry the segment list ⁇ R1, R2, R3> and SL-SID300 information through an SR-LIST Segment ID allocation msg and send it to the R1, R2, and R3 nodes.
  • Step S2404, R1, R2, and R3 receive the SR-LIST Segment ID allocation msg message carrying the segment list ⁇ R1, R2, R3> and SL-SID300, and combine the label entry configuration policy: specify to construct the SL according to the specific RLD. The label entry corresponding to the SID.
  • FLAG The label needs to be encapsulated according to the specific RLD
  • Inner layer SRGB_R3[300];
  • Nexthop/port The shortest path to R2 (including ECMP/FRR), in this case, single-hop A2.
  • FLAG The label needs to be encapsulated according to the specific RLD
  • Inner layer SRGB_R3[300];
  • Nexthop/port The shortest path to R2 (including ECMP/FRR), in this case, single-hop A3.
  • the specific packet forwarding process is as follows:
  • the segment list in the "flow binding segment list” can be directly the label stack, or the ip address list, that is, ⁇ R1, R2, R3>. If it is an ip address list, the ingress node needs to convert it into a label. Stack. The following are described in several cases:
  • the ingress node needs to convert the ip address list to the outgoing label stack, it can be as follows:
  • the ingress node can completely customize a stricter control line when it is implemented internally. Only the SR tag generates two layers, that is, it produces the same result as the first one issued by the controller. include:
  • the inner label SRGB_R1[300] is determined according to the first SR NODE R1 for SL-SID300.
  • the converted segment list is shown in Figure 15.
  • A1 is the direct next hop of R0. After receiving the message, it searches the label forwarding table according to the outer label SRGB_A1[INDEX_R1], pops the outer label, and transfers the message to R1.
  • R1 is the direct next hop of A1.
  • the R1 node After receiving the packet, the R1 node searches for the label forwarding table according to the outer label SRGB_R1[300]. If FLAG indicates that you want to encapsulate the label as much as possible, you can put the label entry.
  • the entire outgoing label stack is used as the SR label, ie ⁇ SRGB_A2[index_R2], SRGB_R2[index_R3], SRGB_R3[300]>, and the message is sent to A2.
  • A2 is the direct next hop of R1. After receiving the packet, it searches the label forwarding table according to the outer label SRGB_A2[index_R2], pops the outer label, and transfers the message to R2.
  • R2 After receiving the packet, R2 searches for the label forwarding table according to the outer label SRGB_R2[index_R3], and the outer label is SRGB_A3[INDEX_R3], that is, the entire SR label stack in the packet becomes ⁇ SRGB_A3[INDEX_R3], SRGB_R3 [300]> and forward the message to A3. Note that the label SRGB_R3[300] corresponding to SL-SID300 will not be exposed on R2 due to the behavior of taking as many package labels as possible on R1. Although a similar tag entry SRGB_R2 [300] is also prepared for the SL-SID 300 on R2, it is not used in this embodiment.
  • the A3 node is the direct next hop of R2. After receiving the packet, it searches for the label forwarding table according to the outer label SRGB_A3[INDEX_R3], and exchanges the outer label as SRGB_R3[INDEX_R3], that is, the entire packet.
  • the SR tag stack becomes ⁇ SRGB_R3[INDEX_R3], SRGB_R3[300]>, and the message is transferred to R3.
  • R3 After receiving the packet, R3 searches for the label forwarding table according to the outer label SRGB_R3[INDEX_R3] and pops up the label. Continue to find the label forwarding table according to the outer label SRGB_R3[300] and pop up the label. Among them, SRGB_R3[INDEX_R3] or may pop up in advance in the penultimate hop.
  • modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
  • the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
  • the invention is not limited to any specific combination of hardware and software.
  • the label configuration and the label message forwarding method and apparatus provided by the embodiments of the present invention have the following beneficial effects: effectively reducing the label stack processing capability requirements of the forwarding plane hardware, and reasonably solving the load efficiency problem and the MTU problem.

Landscapes

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

Abstract

本发明提供了一种标签构造以及标签报文转发方法及装置,其中,该方法包括:节点接收消息,其中,该消息中携带有段列表和用于标识段列表的段列表标识;上述节点根据段列表和段列表标识构建标签转发表,并根据标签转发表进行转发;和/或,上述节点维护段列表和段列表标识的映射关系,过本发明,解决了相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,进而达到了降低转发面硬件的标签栈处理能力要求,有效解决载荷效率问题与MTU问题的效果。

Description

标签构造以及标签报文转发方法及装置 技术领域
本发明涉及通信领域,具体而言,涉及一种标签构造以及标签报文转发方法及装置。
背景技术
一个典型的业务承载网络可以包括用户边缘(Customer Edge,简称为CE)路由器、运营商边缘(Provider Edge,简称为PE)路由器、营运商骨干路由器以及路由反射器(Route Reflecter,简称为RR)。通常采用开放式最短路径优先(Open Shortest Path First,简称为OSPF)协议/中间系统到中间系统的路由选择协议(Intermediate System to Intermediate System Routing Protocol,简称为IS-IS)作为内部网关协议(Interior Gateway Protocol,简称为IGP),采用BGP-4多协议扩展边界网关协议(MP-BGP,其中BGP为边界网关协议)传递虚拟专用网络(Virtual Private Network,简称为VPN)信息,采用标签分发协议(Label Distribution Protocol,简称为LDP)分发标签以及采用基于流量工程扩展的资源预留协议(Resource Reservation Protocol-Traffic Engineering,简称为RSVP-TE)为特定应用或目的地业务部署流量工程和带宽预留。但是,典型的业务承载网络部署存在如下几个问题:路由协议种类多,部署复杂;由于基于目的地址的转发机制,因此不能基于每个源端的需求进行数据报文的转发;源端在满足特定应用的带宽和延时需求时,不能根据网络情况动态地部署,在网络中某一条链路拥塞时,不能自动调整转发路径;资源预留协议(Resource Reservation Protocol,简称为RSVP)能够实现带宽预留,但是,实际部署一般采用静态配置而部署动态方式,另外,如果要实现完善的带宽保障,需要部署全互连(full-mesh)的RSVP-TE,资源消耗大。RSVP技术虽然已经成熟,但是实际部署的比例非常低等。
基于上述问题,IETF提出段路由(Segment Routing,简称为SR)技术,SR是一种基于源地址进行路由的方法,通过在数据报文外叠加一层影响现有最短路径转发的SR信息,数据报文根据这些指定路径节点信息进行最短路径转发。SR信息主要是由该节点的段路由全局标签块(SR Global Block,简称为SRGB)和偏移量(index)两部组成,每个节点的index是唯一的,SRGB范围内再按照index值进行偏移,就能够标识该节点。通过SR指定路径转发功能,可以便捷地实现网络的负载均衡和流程工程,以及快速重路由等复杂网络功能。
也就是在数据面,由源节点通过段列表segment list引导报文转发,对于多协议标签交换(Multi-Protocol Label Switching,简称为MPLS)转发面,就是将segment list转换成传统的标签栈,插入到源节点发出的报文头中。
然而,由于段segment信息可以支持很长,这意味着需要转换成很深的标签栈。带来两个问题:
1.转发面硬件需要升级支持更深的标签栈处理能力。
2.载荷效率问题与最大传输单元(Maximum Transmission Unit,简称为MTU)问题。
针对相关技术中存在的上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种标签构造以及标签报文转发方法及装置,以至少解决相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题。
根据本发明实施例的一个方面,提供了一种标签构造以及标签报文转发方法,包括:节点接收消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;所述节点根据所述段列表和所述段列表标识构建标签转发表,并根据所述标签转发表进行转发;和/或,所述节点维护所述段列表和所述段列表标识的映射关系。
进一步地,所述消息是入口节点在接收到控制器发送的所述段列表和所述段列表标识之后发送的,和/或,所述消息是所述控制器发送的。
进一步地,所述节点接收所述控制器通过南向接口协议发送的所述消息;和/或,所述节点接收所述入口节点通过扩展的内部网关协议IGP发送的所述消息。
进一步地,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
进一步地,所述方法还包括:所述节点接收控制器或者入口节点发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
进一步地,在所述节点为所述段列表中的最后一个节点的情况下,并且,所述节点的前一个节点不在转发报文中携带内层标签的情况下,所述节点不构造标签转发表中的标签表项;其中,所述内层标签是根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的。
进一步地,所述段列表标识是标签Label、或者索引index,其中,所述全局标签是在SR域内所有节点的全局标签块SRGB都相同情况下的索引index偏移。
进一步地,在所述段列表标识是索引的情况下,在所述节点为非最后一个节点的情况下,所述节点根据本节点的段路由全局标签块SRGB和所述段列表标识构造入标签,并且,构造出标签栈,所述出标签栈包括以下至少之一:内层标签、一个或多个外层标签;其中,所述内层标签是根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的,所述一个或多个外层标签包括以下至少之一:剩余节点对应的节点标识所对应的标签,所述节点的下一个节点对应的节点标识所对应的标签。
进一步地,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述节点根据指定的可读标签深度构造包括一个或多个所述外层标签的所述出标签栈。
进一步地,在所述段列表标识是索引的情况下,所述节点为入口节点的情况下,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述入口节点构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签是根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点的段路由全局标签块SRGB和所述段列表标识构造的;一个或多个所述外层标签从外至内依次如下:所述段列表中的第一个节点所对应的标签,是根据入口节点至段列表中的第一个节点最短路径表示的直连下一跳确定;所述段列表中的第二个至第m个节点对应的标签,是根据段列表中的该节点的前一个节点确定的;所述第m个节点是根据指定的可读标签栈深度辖定的范围所能封装的段列表中的最远一个节点确定。
进一步地,所述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,所述出标签栈中不包括所述内层标签。
进一步地,在所述段列表标识是索引,所述节点为入口节点情况下,在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,所述入口节点构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签根据段列表中的除入口节点之外第一个节点的全局标签块SRGB和所述段列表标识 构造的;所述外层标签是根据入口节点至段列表中除入口节点之外的第一个节点的最短路径表示的直连下一跳确定的。
进一步地,在所述段列表除入口节点之外的第一个节点也是段列表中的最后一个节点的情况下,所述标签栈中不包括所述内层标签。
进一步地,在所述段列表标识是索引的情况下,所述节点为除入口节点之外的段列表中的其他节点:在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,所述节点构造的出标签栈包括以下至少之一:内层标签、一个外层标签;其中,所述内层标签根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的;所述外层标签根据所述节点至所述节点的下个节点的最短路径表示的直连下一跳的全局标签块SRGB和所述下一个节点的标识构造的。
进一步地,在所述段列表标识是索引的情况下,所述节点为除入口节点之外的段列表中的其他节点,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述节点i构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点m的段路由全局标签块SRGB和所述段列表标识构造的;一个或多个所述外层标签从外至内:所述节点i的下一个节点i+1所对应的标签,是根据所述节点i至所述节点的下一个节点i+1的最短路径表示的直连下一跳确定;所述段列表中的节点i+2至节点m对应的标签,是根据段列表中的该节点的前一个节点确定的;所述节点i是指除入口节点之外的段列表中的其他节点;所述节点m是根据指定的可读标签栈深度辖定的范围所能封装的段列表中的最远一个节点确定。
进一步地,所述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,所述出标签栈中不包括所述内层标签。
进一步地,所述指定的可读标签深度大于等于2,所述节点在封装报文的标签栈时不大于所述指定的可读标签深度。
进一步地,所述指定的可读标签深度是通过显示配置的,或者是通过学习得到的全网的最小值。
进一步地,所述节点和所述下一节点之间的节点包括以下至少之一:SR节点和/或非SR节点;和/或,所述节点和所述下一节点之间的隧道包括以下之一:标签分发协议标签交换路径LDP LSP、基于流量工程扩展的资源预留协议标签交换路径RSVP-TE LSP、边界网关协议标签交换路径BGP LSP、段路由标签交换路径SR LSP。
进一步地,在所述段列表中只包括一个节点的情况下,所述段列表标识为所述节点的节点标识。
根据本发明实施例的另一方面,提供了一种标签构造以及标签报文转发方法,包括:控制器将消息发送给节点,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识,所述段列表和所述段列表标识用于指示所述节点构建标签转发表并根据所述标签转发表进行转发;和/或,所述段列表和所述段列表标识用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
进一步地,所述控制器将所述消息发送给所述节点包括:所述控制器通过南向接口协议将所述消息发送给所述节点。
进一步地,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
进一步地,在所述控制器将所述消息发送给所述节点之后,还包括:所述控制器通过所述南向接口协议将撤销消息发送给所述节点,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
根据本发明实施例的另一方面,还提供了一种标签构造以及标签报文转发方法,包括:入口节点接收控制器发送的消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;入口节点将所述消息发送给节点,其中,所述消息用于指示所述节点构建标签转发表,并根据所述标签转发表进行转发;和/或,所述消息用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
进一步地,所述入口节点将所述消息发送给所述节点包括:所述入口节点通过向所述节点发送扩展的内部网关协议IGP消息的方式将所述消息发送给所述节点。
进一步地,在所述入口节点将所述消息发送给所述节点之后,还包括:所述入口节点接收所述控制器通过南向接口协议发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表;所述入口节点接收所述撤销消息后,通过向所述节点发送扩展的内部网关协议IGP消息来指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,指示所述节点删除所述标签转发表。
进一步地,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
进一步地,所述入口节点将接收的所述撤销消息发送给所述节点包括:所述入口节点通过向所述节点发送扩展的内部网关协议IGP消息的方式将所述消息发送给所述节点。
根据本发明实施例的一个方面,提供了一种标签构造以及标签报文转发装置,该装置应用于节点中,包括:第一接收模块,设置为接收消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;构建模块,设置为根据所述段列表和所述段列表标识构建标签转发表,并根据所述标签转发表进行转发;和/或,用于维护所述段列表和所述段列表标识的映射关系。
进一步地,第二接收模块,设置为接收控制器或者入口节点发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
根据本发明实施例的另一方面,还提供了一种标签构造以及标签报文转发装置,该装置应用于控制器中,包括:第一发送模块,设置为将消息发送给节点,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识,所述段列表和所述段列表标识用于指示所述节点构建标签转发表并根据所述标签转发表进行转发;和/或,所述段列表和所述段列表标识用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
进一步地该装置还包括:第二发送模块,设置为通过南向接口协议将撤销消息发送给所述节点,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
进一步地,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
根据本发明实施例的另一方面,还提供了一种标签构造以及标签报文转发装置,该装置应用于入口节点中,包括:第三接收模块,设置为接收控制器发送的消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;第三发送模块,设置为将所述消息发送给节点,其中,所述消息用于指示所述节点构建标签转发表,并根据所述标签转发表进行转发;和/或,所述消息用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
进一步地,该装置还包括:第四接收模块,设置为接收所述控制器通过南向接口协议发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表;第四发送模块,设置为在接收所述撤销消息后,通过向所述节点发送扩展的内部网关协议IGP消息来指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,指示所述节点删除所述标签转发表。
进一步地,南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
通过本发明实施例,采用节点接收消息,其中,所述消息中携带有所述段列表和用于标识所述段列表的段列表标识;所述节点根据所述段列表和所述段列表标识构建标签转发表,并根据所述标签转发表进行转发;和/或,所述节点维护所述段列表和所述段列表标识的映射关系,解决了相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,进而达到了降低转发面硬件的标签栈处理能力要求,有效解决载荷效率问题与MTU问题的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的第一种标签构造以及标签报文转发方法的流程图;
图2是根据本发明实施例的第二种标签构造以及标签报文转发方法的流程图;
图3是根据本发明实施例的第三种标签构造以及标签报文转发方法的流程图;
图4是根据本发明实施例的第一种标签构造以及标签报文转发装置的结构框图;
图5是根据本发明实施例的第一种标签构造以及标签报文转发装置的第一种优选结构框图;
图6是根据本发明实施例的第二种标签构造以及标签报文转发装置;
图7是根据本发明实施例的第二种标签构造以及标签报文转发装置的第一种优选结构框图;
图8是根据本发明实施例的第三种标签构造以及标签报文转发装置;
图9是根据本发明实施例的第三种标签构造以及标签报文转发装置的第一种优选结构框图;
图10为根据本发明实施例一的SR网络中的显式路由的架构图;
图11是根据本发明实施例一的SR网络中的显式路由的流程图;
图12是根据本发明实施例一的R1节点上构造的标签表转发表;
图13是根据本发明实施例一的R2节点上构造的标签表转发表;
图14是根据本发明实施例一的R3节点上构造的标签表转发表;
图15是根据本发明实施例一的控制器下发给ingress节点R0的携带SR报文头的数据报文格式的示意图;
图16是根据本发明实施一例的A1节点转发给下一节点的携带SR报文头的数据报文格式的示意图;
图17是根据本发明实施例一的R1节点转发给下一节点的携带SR报文头的数据报文格式的示意图;
图18是根据本发明实施例一的A2节点转发给下一节点的携带SR报文头的数据报文格式的示意图;
图19是根据本发明实施例一的R2节点转发给下一节点的携带SR报文头的数据报文格式的示意图;
图20是根据本发明实施例一的A3节点转发给下一节点的携带SR报文头的数据报文格式的示意图;
图21是根据本发明实施例二的SR网络中的显式路由的流程图;
图22是根据本发明实施例三的SR网络中的显式路由的流程图;
图23是根据本发明实施例四的SR网络中的显式路由的流程图;
图24是根据本发明实施例五的SR网络中的显式路由的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种标签构造以及标签报文转发方法,图1是根据本发明实施例的第一种标签构造以及标签报文转发方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,节点接收消息,其中,该消息中携带有段列表和用于标识段列表的段列表标识;
步骤S104,上述节点根据段列表和段列表标识构建标签转发表,并根据标签转发表进行转发;和/或,上述节点维护段列表和段列表标识的映射关系。
通过上述步骤,通过根据段列表和段列表标识构建标签转发表,可以有效降低节点构建的标签的深度,从而降低转发面硬件的标签栈处理能力的要求,进而解决了相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,进而达到了降低转发面硬件的标签栈处理能力要求,有效解决载荷效率问题与MTU问题的效果。
上述消息可以是入口节点在接收到控制器发送的段列表和段列表标识之后发送的,也可以是直接由控制器发送的,在一个可选的实施例中,节点可以从控制器接收上述消息;和/或,节点从入口节点接收上述消息,其中,该消息是入口节点在接收到控制器发送的段列表和段列表标识之后发送的,即,入口节点先接收控制器发送的段列表和段列表标识,然后将接收到的段列表和段列表标识发送给节点。
在节点接收控制器发送的消息时,节点可以接收控制器通过南向接口协议发送的上述消息;和/或,在节点从入口节点接收上述消息时,该节点可以接收入口节点通过扩展的内部网关协议IGP消息发送的上述消息。
上述的南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS或者路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
在一个可选的实施例中,在节点接收上述消息之后,还可以接收控制器或者入口节点发送的撤销消息,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表。
在节点根据段列表和段列表标识构建标签转发表时,可以有多种构建方式,在一个可选的实施例中,在上述节点为段列表中的最后一个节点的情况下,并且,该节点的前一个节点不在转发报文中携带内层标签的情况下,节点不构造标签转发表中的标签表项;其中,该内层标签是根据节点的下一个节点的全局标签块SRGB和段列表标识构造的。
上述的段列表标识的类型可以为多种,在一个可选的实施例中,上述的段列表标识可以是标签Lable,或者是索引index,其中,该全局标签是在SR域内所有节点的全局标签块SRGB都相同情况下的索引index偏移。
在上述段列表标识为索引index的情况下,可以采用如下方式构造标签转发表:在一个可选的实施例中,在节点为非最后一个节点的情况下,该节点可以根据本节点的段路由全局标签块SRGB和段列表标识构造入标签,并且,构造出标签栈,该出标签栈可以包括以下至少之一:内层标签、一个或多个外层标签;其中,该内层标签是根据节点的下一个节点的全局标签块SRGB和段列表标识构造的,上述的一个或多个外层标签可以包括以下至少之一:剩余节点对应的节点标识所对应的标签,节点的下一个节点对应的节点标识所对应的标签。
在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,节点根据指定的可读标签深度构造包括一个或多个外层标签的出标签栈。
在上述段列表标识为索引index的情况下,还可以采用如下方式构造标签转发表:在另一个可选的实施例中,在节点为入口节点时,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,入口节点构造出标签栈,该出标签栈包括以下至少之一,内层标签、外层标签,其中,该内层标识是根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点的段路由全局标签块SRGB和段列表标识构造的;一个或多个外层标签从外至内依次如下:段列表中的第一个节点所对应的标签,是根据入口节点至段列表中的第一个节点最短路径表示的直连下一跳确定;段列表中的第二个节点至第m个节点对应的标签,是根据段列表中的该节点的前一个节点确定;该第m个节点是根据指定的可读标签栈深辖定的范围所能封装的段列表中的最远一个节点确定。
上述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,并且,出标签栈中不包含内层标签。
在一个可选的实施例中,在上述段列表标识为索引index,且节点为入口节点的情况下,还可以采用如下方式构造标签转发表:在指示标志位指示不需要根据指定的可 读标签深度来封装出标签的情况下,入口节点构造出标签栈,该出标签栈包括以下至少之一:内层标签、外层标签;其中,该内层标签是根据段列表中的除入口节点之外第一个节点的全局标签块SRGB和段列表标识构造的;外层标签是根据入口节点至段列表中除入口节点之外的第一个节点的最短路径表示的直连下一跳确定的。
在上述的段列表除入口节点之外的第一个节点也是段列表中的最后一个节点的情况下,上述标签栈中不包含内层标签。
在一个可选的实施例中,在段列表标识是索引的情况下,节点为除入口节点之外的段列表中的其他节点时,在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,节点构造的出标签栈可以包括以下至少之一:内层标签、一个外层标签;其中,该内层标签可以根据节点的下一个节点的全局标签块SRGB和段列表标识构造;该外层标签可以根据节点至该节点的下个节点的最短路径表示的直连下一跳的全局标签块SRGB和下一个节点的标识构造。
在一个可选的实施例中,在段列表标识是索引的情况下,节点为除入口节点之外的段列表中的其他节点,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,节点i构造出标签栈,该出标签栈可以包括以下至少之一:内层标签、外层标签;其中,该内层标签根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点m的段路由全局标签块SRGB和段列表标识构造的;一个或多个外层标签从外至内:节点i的下一个节点i+1所对应的标签,是根据节点i至该节点的下一个节点i+1的最短路径表示的直连下一跳确定;段列表中的节点i+2至节点m对应的标签,是根据段列表中的该节点的前一个节点确定的;上述节点i是指除入口节点之外的段列表中的其他节点;节点m是根据指定的可读取标签栈深辖定的范围所能封装的段列表中的最远一个节点确定的。
上述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,出标签栈中不包括内层标签。
上述所提到的指定的可读标签深度可以大于等于2,并且,节点在封装报文的标签栈时不大于节点所指定的可读标签栈深的。并且,该栈深是可配置的,在一个可选的实施例中,该指定的可读标签深度可以是通过显示配置的,或者是通过学习得到的全网的最小值。
节点和该节点的下一节点之间的节点可以包括不同类型的节点,在一个可选的实施例中,节点和该节点的下一节点之间的节点可以包括以下至少之一:SR节点和/或非SR节点;和/或,节点和下一节点之间的隧道包括以下之一:标签分发协议标签交 换路径LDP LSP、基于流量工程扩展的资源预留协议标签交换路径RSVP-TE LSP、边界网关协议标签交换路径BGP LSP、段路由标签交换路径SR LSP。
在上述段列表中只包括一个节点的情况下,上述段列表标识为节点的节点标识。
图2是根据本发明实施例的第二种标签构造以及标签报文转发方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,控制器将消息发送给节点,其中,该消息中携带有段列表和用于标识该述段列表的段列表标识,上述段列表和段列表标识用于指示节点构建标签转发表并根据该标签转发表进行转发;和/或,该段列表和段列表标识用于指示节点维护段列表和段列表标识的映射关系。
通过上述步骤,控制器将用于构造标签转发表的段列表和段列表标识发送给节点,由节点根据该段列表和段列表标识构造标签转发表,可以有效降低节点的标签的深度,从而降低转发面硬件的标签栈处理能力的要求,进而解决了相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,进而达到了降低转发面硬件的标签栈处理能力要求,有效解决载荷效率问题与MTU问题的效果。
在上述控制器将消息发送给节点时,可以有多种发送方法,在一个可选的实施例中,上述控制器可以通过南向接口协议将消息发送给节点。
其中,上述南向接口协议的类型不限,在一个可选的实施中,上述南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
控制器在将消息发送给节点之后,还可以向节点发送撤销消息,在一个可选的实施例中,控制器通过上述的南向接口协议将撤销消息发送给节点,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表。
图3是根据本发明实施例的第三种标签构造以及标签报文转发方法的流程图,如图3所示,该方法包括如下步骤:
步骤S302,入口节点接收控制器发送的消息,其中,该消息中携带有段列表和用于标识该段列表的段列表标识;
步骤S304,入口节点将上述消息发送给节点,其中,该消息用于指示节点构建标签转发表,并根据该标签转发表进行转发;和/或,该消息用于指示节点维护段列表和段列表标识的映射关系。
通过上述步骤,入口节点将用于构造标签转发表的段列表和段列表标识发送给节点,由节点根据该段列表和段列表标识构造标签转发表,可以有效降低节点的标签的深度,从而降低转发面硬件的标签栈处理能力的要求,进而解决了相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,进而达到了降低转发面硬件的标签栈处理能力要求,有效解决载荷效率问题与MTU问题的效果。
入口节点在将上述消息发送给节点时可以有多种发送方式,在一个可选的实施例中,入口节点可以通过向节点发送扩展的内部网关协议IGP消息的方式将消息发送给节点,其中,该扩展的IGP消息为上述消息。
在入口节点将消息发送给节点之后,还可以向该节点发送撤销消息,在一个可选的实施例中,上述入口节点首先接收控制器通过南向接口协议发送的撤销消息,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表;上述入口节点在接收到撤销消息后,可以通过向节点发送扩展的内部网关协议IGP消息来指示节点删除段列表及段列表标识之间的映射关系,和/或,指示节点删除标签转发表。
上述的南向接口协议的类型不限,在一个可选的实施例中,上述南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
其中,入口节点将接收的撤销消息发送给节点时,可以通过向节点发送扩展的内部网关协议IGP消息的方式将上述撤销消息发送给节点,其中,该扩展的IGP消息为上述撤销消息。
在本实施例中还提供了一种标签构造以及标签报文转发装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的第一种标签构造以及标签报文转发装置的结构框图,该装置应用于节点中,如图4所示,该装置包括第一接收模块42和构建模块44,下面对该装置进行说明。
第一接收模块42,设置为接收消息,其中,该消息中携带有段列表和用于标识该段列表的段列表标识;构建模块44,连接至上述第一接收模块42,设置为根据段列表和段列表标识构建标签转发表,并根据标签转发表进行转发;和/或,设置为维护段列表和段列表标识的映射关系。
第一接收模块42接收的上述消息可以是入口节点在接收到控制器发送的段列表和段列表标识之后发送的,也可以是直接由控制器发送的,在一个可选的实施例中,节点可以从控制器接收上述消息;和/或,节点从入口节点接收上述消息,其中,该消息是入口节点在接收到控制器发送的段列表和段列表标识之后发送的,即,入口节点先接收控制器发送的段列表和段列表标识,然后将接收到的段列表和段列表标识发送给节点。
在第一接收模块42接收控制器发送的消息时,该第一接收模块42可以接收控制器通过南向接口协议发送的上述消息;和/或,在第一接收模块42从入口节点接收上述消息时,该第一接收模块42可以接收入口节点通过扩展的内部网关协议IGP消息发送的上述消息。
上述的南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS或者路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
图5是根据本发明实施例的第一种标签构造以及标签报文转发装置的第一种优选结构框图,如图5所示,该装置除包括图4所示的所有模块外,还包括第二接收模块52,下面对该装置进行说明。
第二接收模块52,连接至上述构建模块44,设置为接收控制器或者入口节点发送的撤销消息,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表。
上述的构建模块44在构建标签转发表时,可以有多种构建方式,在一个可选的实施例中,在上述节点为段列表中的最后一个节点的情况下,并且,该节点的前一个节点不在转发报文中携带内层标签的情况下,节点不构造标签转发表中的标签表项;其中,该内层标签是根据节点的下一个节点的全局标签块SRGB和段列表标识构造的。
上述的段列表标识的类型可以为多种,在一个可选的实施例中,上述的段列表标识可以是标签Lable,或者是索引index,其中,该全局标签是在SR域内所有节点的全局标签块SRGB都相同情况下的索引index偏移。
在上述段列表标识为索引index的情况下,构建模块44还可以采用如下方式构造标签转发表:在一个可选的实施例中,在节点为非最后一个节点的情况下,该节点可以根据本节点的段路由全局标签块SRGB和段列表标识构造入标签,并且,构造出标签栈,该出标签栈可以包括以下至少之一:内层标签、一个或多个外层标签;其中,该内层标签是根据节点的下一个节点的全局标签块SRGB和段列表标识构造的,上述的一个或多个外层标签可以包括以下至少之一:剩余节点对应的节点标识所对应的标签,节点的下一个节点对应的节点标识所对应的标签。
在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,节点根据指定的可读标签深度构造包括一个或多个外层标签的出标签栈。
在上述段列表标识为索引index的情况下,构建模块44还可以采用如下方式构造标签转发表:在另一个可选的实施例中,在节点为入口节点时,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,入口节点构造出标签栈,该出标签栈包括以下至少之一,内层标签、外层标签,其中,该内层标识是根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点的段路由全局标签块SRGB和段列表标识构造的;一个或多个外层标签从外至内依次如下:段列表中的第一个节点所对应的标签,是根据入口节点至段列表中的第一个节点最短路径表示的直连下一跳确定;段列表中的第二个节点至第m个节点对应的标签,是根据段列表中的该节点的前一个节点确定;该第m个节点是根据指定的可读标签栈深辖定的范围所能封装的段列表中的最远一个节点确定。
上述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,并且,出标签栈中不包含内层标签。
在一个可选的实施例中,在上述段列表标识为索引index,且节点为入口节点的情况下,构建模块44还可以采用如下方式构造标签转发表:在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,入口节点构造出标签栈,该出标签栈包括以下至少之一:内层标签、外层标签;其中,该内层标签是根据段列表中的除入口节点之外第一个节点的全局标签块SRGB和段列表标识构造的;外层标签是根据入口节点至段列表中除入口节点之外的第一个节点的最短路径表示的直连下一跳确定的。
在上述的段列表除入口节点之外的第一个节点也是段列表中的最后一个节点的情况下,上述标签栈中不包含内层标签。
在一个可选的实施例中,在段列表标识是索引的情况下,节点为除入口节点之外的段列表中的其他节点时,在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,节点构造的出标签栈可以包括以下至少之一:内层标签、一个外层标签;其中,该内层标签可以根据节点的下一个节点的全局标签块SRGB和段列表标识构造;该外层标签可以根据节点至该节点的下个节点的最短路径表示的直连下一跳的全局标签块SRGB和下一个节点的标识构造。
在一个可选的实施例中,在段列表标识是索引的情况下,节点为除入口节点之外的段列表中的其他节点,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,节点i构造出标签栈,该出标签栈可以包括以下至少之一:内层标签、外层标签;其中,该内层标签根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点m的段路由全局标签块SRGB和段列表标识构造的;一个或多个外层标签从外至内:节点i的下一个节点i+1所对应的标签,是根据节点i至该节点的下一个节点i+1的最短路径表示的直连下一跳确定;段列表中的节点i+2至节点m对应的标签,是根据段列表中的该节点的前一个节点确定的;上述节点i是指除入口节点之外的段列表中的其他节点;节点m是根据指定的可读取标签栈深辖定的范围所能封装的段列表中的最远一个节点确定的。
上述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,出标签栈中不包括内层标签。
上述所提到的指定的可读标签深度可以大于等于2,并且,节点在封装报文的标签栈时不大于节点所指定的可读标签栈深的。并且,该栈深是可配置的,在一个可选的实施例中,该指定的可读标签深度可以是通过显示配置的,或者是通过学习得到的全网的最小值。
节点和该节点的下一节点之间的节点可以包括不同类型的节点,在一个可选的实施例中,节点和该节点的下一节点之间的节点可以包括以下至少之一:SR节点和/或非SR节点;和/或,节点和下一节点之间的隧道包括以下之一:标签分发协议标签交换路径LDP LSP、基于流量工程扩展的资源预留协议标签交换路径RSVP-TE LSP、边界网关协议标签交换路径BGP LSP、段路由标签交换路径SR LSP。
在上述段列表中只包括一个节点的情况下,上述段列表标识为节点的节点标识。
图6是根据本发明实施例的第二种标签构造以及标签报文转发装置,该装置应用于控制器中,如图6所示,该装置包括第一发送模块62,下面对该装置进行说明。
第一发送模块62,设置为将消息发送给节点,其中,该消息中携带有段列表和用于标识该段列表的段列表标识,该段列表和段列表标识用于指示节点构建标签转发表并根据该标签转发表进行转发;和/或,该段列表和段列表标识用于指示节点维护段列表和段列表标识的映射关系。
第一发送模块62在将消息发送给节点时,可以有多种发送方法,在一个可选的实施例中,可以通过南向接口协议将消息发送给节点。
其中,上述南向接口协议的类型不限,在一个可选的实施中,上述南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
图7是根据本发明实施例的第二种标签构造以及标签报文转发装置的第一种优选结构框图,如图7所示,该装置除包括图6所示的所有模块外,还包括第二发送模块72,下面对该装置进行说明。
第二发送模块72,连接至上述第一发送模块62,设置为通过南向接口协议将撤销消息发送给节点,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表。
上述南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
图8是根据本发明实施例的第三种标签构造以及标签报文转发装置,该装置应用于入口节点中,如图8所示,该装置包括第三接收模块82和第三发送模块84,下面对该装置进行说明。
第三接收模块82,设置为接收控制器发送的消息,其中,该消息中携带有段列表和用于标识该段列表的段列表标识;第三发送模块84,连接至上述第三接收模块82,设置为将消息发送给节点,其中,该消息用于指示段列表中包含的节点构建标签转发表,并根据标签转发表进行转发;和/或,该消息用于指示节点维护段列表和段列表标识的映射关系。
上述第三发送模块84在将上述消息发送给节点时可以有多种发送方式,在一个可选的实施例中,第三发送模块84可以通过向节点发送扩展的内部网关协议IGP消息的方式将消息发送给节点,其中,该扩展的IGP消息为上述消息。
图9是根据本发明实施例的第三种标签构造以及标签报文转发装置的第一种优选结构框图,如图9所示,该装置除包括图8所示的所有模块外,还包括第四接收模块92和第四发送模块94,下面对该装置进行说明。
第四接收模块92,连接至上述第三发送模块84,设置为接收控制器通过南向接口协议发送的撤销消息,其中,该撤销消息用于指示节点删除段列表及段列表标识之间的映射关系,和/或,用于指示节点删除标签转发表;第四发送模块94,连接至上述第四接收模块92,设置为在接收到撤销消息后,通过向节点发送扩展的内部网关协议IGP消息来指示节点删除段列表及段列表标识之间的映射关系,和/或,指示节点删除标签转发表。
上述的南向接口协议可以包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
为了解决相关技术中存在的转发面硬件需要升级支持更深的标签栈处理能力的问题以及载荷效率问题与MTU问题,在本发明实施例中还提供了一种段路由SR网络中的显式路由方法,将段列表segment list转换成的标签栈“拉平”,使网络既具备分段路由的源指定路由的能力,又可以对现网转发面芯片不作任何升级。该方法通过如下方案实现:
分配一个段列表标识segment id用于唯一标识segment list。该segment list可以是网络协议地址列表ip address list,或者是全球标签列表global label list,或者索引列表index list,或者是它们的混合,即能够标识段节点segment node的信息组成的列表。
上述的segment list及segment id可以由控制器统一分配或者segment list由入库节点ingress节点直接配置,ingress节点将配置的segment list发送给控制器,由控制器分配segment id,该segment id可以简称为SL-SID。
该SL-SID可以是标签Label,或者索引index,在本实施例中以index为例进行描述,可以确定的是,Label可以根据SRGB[index]计算得到。
控制器可以通过南向接口协议将SL-SID通知给segment list内相应的segment节点,其中,控制器可以通过边界网关协议-链路状态路由协议(Border Gateway  Protocol-Link State,简称为BGP-LS)或者路径计算单元通信协议(Path Computation Element Communication Protocol,简称为PCEP)将SL-SID通知给ingress节点,由ingress节点通过扩展的内部网关(Interior Gateway,简称为IGP)协议在SR域内泛洪。
控制器或者ingress节点为从ingress节点出发的受segment list引导的报文计算标签栈时,可以根据全局的指定的可读标签深度(specific Readable label depth,简称为specific RLD)策略,根据或不根据specific RLD来封装出标签栈。其中,该specific RLD是指定的可读标签深度,可显式配置,或通过协议学习到全网的最小RLD,但最终的specific RLD必须强制大于等于2,以至少支持一层虚拟专用网络(Virtual Private Network,简称为VPN)标签加上一层SR标签。
该标签表项在段列表的最后一个节点last segment node(记为Node_n)上如下:
入标签:SRGB_Node_n[SL-SID];
label operation:POP;
FLAG:标签终结。
在一个可选的实施例中,上述标签表项在last segment node(记为Node_n)上可以不用创建,前提是倒数第二个SR NODE的标签表项也采用如下提到的优化实现,不会在转发报文中携带标签SRGB_Node_n[SL-SID]。
标签表项在非最后一个节点,即非last segment node(记为Node_i)上如下:
入标签:SRGB_Node_i[SL-SID];
label operation:SWAP;
FLAG:是否需要根据specific RLD来封装出标签;
specific RLD:可显式配置,或通过协议学习到全网的最小RLD,但specific RLD必须强制大于等于2。
出标签栈:
外层:剩余SR NODEs(即Node_i+1,...Node_n)对应的NODE-SIDs对应的多个标签;
内层:SL-SID对应的标签;
nexthop/port:至Node_i+1的最短路径(含ECMP/FRR);
其中,上述nexthop/port是Node_i节点至Node_i+1节点的最短路径表示的直连下一跳与出接口。在Node_i节点与Node_i+1节点之间的节点,包括nexthop节点在内,可以是SR节点或者non-SR节点。即Node_i至Node_i+1的隧道可以是LDP/RSVP-TE/BGP/SR等LSP。下述描述中是以SR LSP为例进行说明。
Node_i上的SL-SID相应的标签表项的出标签栈由外层多个NODE-SIDs对应的标签,以及内层SL-SID对应的标签构成。多个外层标签按从外至内的顺序为:
SRGB_nexthop[Node_i+1-SID]
SRGB_Node_i+1[Node_i+2-SID]
SRGB_Node_i+2[Node_i+3-SID]......
SRGB_Node_n-1[Node_n-SID]
Node_i上的SL-SID相应的标签表项的FLAG,表明是否需要根据specific RLD来封装出标签栈,如果是的话,是指报文转发离开Node_i时的标签栈深度只要不超过specific RLD,就可以尽量封装更多的标签,此时标签栈中可能包含私网业务标签、外层多个NODE-SIDs对应的标签、以及内层SL-SID对应的标签,为此,生成的标签表项中就需要包含外层多个NODE-SIDs(即Node_i+1,...Node_n)对应的标签以及内层SL-SID对应的标签。如果不需要根据specific RLD来封装出标签栈,就可以尽量封装更少的标签,此时标签栈中可能包含私网业务标签、下一个NODE-SID对应的标签、以及内层SL-SID对应的标签,为此,生成的标签表项中就只需要包含外层一个NODE-SID(即Node_i+1)对应的标签以及内层SL-SID对应的标签。
其中,上述的FLAG可以根据策略指定。
当不需要根据specific RLD来封装出标签栈时,上述报文的标签栈中内层SL-SID对应的标签,是根据下一个SR NODE(Node_i+1)确定,即标签栈中内层SL-SID对应的标签为SRGB_Node_i+1[SL-SID]。则,报文的整个标签栈从外至内如下:
SRGB_nexthop[Node_i+1-SID]
SRGB_Node_i+1[SL-SID]
VPN service Labels
Node_i+1如果恰好就是Node_n,在一个可选的实施例中,标签表项的出标签栈中可以不必要包含SRGB_Node_i+1[SL-SID]。这是因为凭借SRGB_nexthop[Node_i+1-SID],报文已经能投递到Node_n。
当需要根据specific RLD来封装出标签栈时,报文的标签栈中内层SL-SID对应的标签,可以是根据specific RLD辖定的范围所能封装的最远一个Node_m确定,即标签栈中内层SL-SID对应的标签为SRGB_Node_m[SL-SID]。则,报文的整个标签栈从外至内如下:
SRGB_nexthop[Node_i+1-SID]
SRGB_Node_i+1[Node_i+2-SID]
SRGB_Node_i+2[Node_i+3-SID]......
SRGB_Node_m-1[Node_m-SID]
SRGB_Node_m[SL-SID]
VPN service Labels
以上标签个数不能超过specific RLD。在一个可选的实施例中,当Node_m恰好就是Node_n时,标签表项的出标签栈中可以不必要包含SRGB_Node_m[SL-SID]。因为凭借SRGB_Node_m-1[Node_m-SID],报文已经能投递到Node_n。其中,不需要根据specific RLD来封装出标签栈时,ingress节点的报文的标签栈中内层SL-SID对应的标签,是根据第一个SR NODE(Node_1)确定,即标签栈中内层SL-SID对应的标签为SRGB_Node_1[SL-SID]。外层Node_1对应的标签,是根据ingress node至Node_1的最短路径表示的直连下一跳(nexthop)确定,即标签栈中外层Node_1对应的标签为SRGB_nexthop[Node_1-SID]。则,ingress节点报文的整个标签栈从外至内如下:
SRGB_nexthop[Node_1-SID]
SRGB_Node_1[SL-SID]
VPN service Labels
如果ingress节点不是SR list中的第一个节点,那么node1就是SR list中的第一个节点;如果如果ingress节点是SR list中的第一个节点,那么node1就是SR list中的第二个节点。
Node_1如果恰好就是Node_n(就是SR list中的最后一个节点),则作为一种优化,报文的标签栈中可以不必要包含SRGB_Node_1[SL-SID]。因为凭借SRGB_nexthop[Node_1-SID],报文已经能投递到Node_n。
当需要根据specific RLD来封装出标签栈时,报文的标签栈中内层SL-SID对应的标签,是根据specific RLD辖定的范围所能封装的最远一个Node_m确定,即标签栈中内层SL-SID对应的标签为SRGB_Node_m[SL-SID]。外层Node_1对应的标签,是根据ingress node至Node_1的最短路径表示的直连下一跳(nexthop)确定,即标签栈中外层Node_1对应的标签为SRGB_nexthop[Node_1-SID]。外层Node2对应的标签,是根据Node_1确定,即标签栈中外层Node_2对应的标签为SRGB_Node1[Node_2-SID]。外层Node3对应的标签,是根据Node_2确定,即标签栈中外层Node_3对应的标签为SRGB_Node2[Node_3-SID],依次类推。则,报文的整个标签栈从外至内如下:
SRGB_nexthop[Node_1-SID]
SRGB_Node_1[Node_2-SID]
SRGB_Node_2[Node_3-SID]......
SRGB_Node_m-1[Node_m-SID]
SRGB_Node_m[SL-SID]
VPN service Labels
以上标签个数不能超过specific RLD。
Node_m恰好就是Node_n(就是SR list中的最后一个节点),则作为一种优化,报文的标签栈中可以不必要包含SRGB_Node_m[SL-SID]。因为凭借SRGB_Node_m-1[Node_m-SID],报文已经能投递到Node_n。
如果segment list中只包含一个segment node,那么为该segment list分配的SL-SID就可以是为该segment node分配的node-SID。
segment list内相应的segment节点收到segment list及SL-SID后,生成SL-SID相应的标签表项。
下面结合具体的实施例对本发明进行说明。
实施例一
图10为根据本发明实施例一的SR网络中的显式路由的架构图,如图10所示,R0到R1的最短路径下一跳是A1节点,R1到R2的最短路径下一跳是A2节点,R2到R3的最短路径下一跳是A3节点,R0到R3端到端的隧道指定通过R1、R2及R3节点,R0是ingress节点,R0上的流量绑定segment list可以自身配置或者由控制器集中设备下发等。流量绑定的segment list可以为:<R1,R2,R3>,是一个能标识节点信息的列表,如ip address list、global label list、index list;流量绑定的segment list也可以是一个能直接用于报文头的出标签栈<Label 1,Label 2>。可以将segment list<R1,R2,R3>记为SL1,控制器为SL1还分配segment id,假设为300,可以简称这种为segment list分配的SID为SL-SID,SL-SID可以是Label,也可以是index,在本实施例中以index为例进行说明。可以确定的是,Label可以由SRGB[index]计算得到。图11是根据本发明实施例一的SR网络中的显式路由的流程图,如图11所示,该流程包括:
步骤S1102,控制器将通过南向接口协议将segment list<R1,R2,R3>及SL-SID300通告给list中包含的每个节点。
其中,南向接口协议可以是BGP-LS或者PCEP。控制器与SR域内各节点均存在BGP-LS或者PCEP邻居关系。控制器通过扩展BGP-LS或者PCEP中新的消息来携带segment list<R1,R2,R3>及SL-SID300,并发送给list中包含的每个节点。可以定义新的消息为:SR-LIST Segment ID allocation msg。BGP-LS或者PCEP可以通过一个SR-LIST Segment ID allocation msg承载segment list<R1,R2,R3>及SL-SID300信息,并发送给R1、R2及R3节点。
步骤S1104:R1、R2及R3接收到携带segment list<R1,R2,R3>及SL-SID300的SR-LIST Segment ID allocation msg消息后,构建SL-SID对应的标签表项。
在该实施例中,所构建的标签表项配置策略指定不需要根据specific RLD来对报文封装出标签,则所构建的标签表项按照:SR节点上的SL-SID300标签表项的入标签是本SR节点为segment list分配的绝对标签(实际上就是本SR节点的SRGB用SL-SID300做偏移),出标签是下一个SR节点为segment list分配的绝对标签(实际上就是下一个SR节点的SRGB用SL-SID300做偏移),再迭代必要的外层隧道标签。外层隧道可以支持ECMP/FRR等。
其中,segment list<R1,R2,R3>中包含的每个节点构建标签转发表的过程如下:
1、R1收到后,检查发现:
last segment=R3
next segment=R2
则构造的标签表转发表如图12所示,图12是根据本发明实施例一的R1节点上构造的标签表转发表。
由于remote R2非直连下一跳,则可以继续迭代外层标签,可以是LDP/RSVP-TE/BGP/SR等协议分配的标签。以SR标签为例,R1需要叠加外层标签SRGB_A2[index_R2]。
2、R2收到后,检查发现:
last segment=R3
next segment=R3
则构造的标签转发表如图13所示,图13是根据本发明实施例一的R2节点上构造的标签表转发表。
3、R3收到后,检查发现:
last segment=R3,为自身,不做额外处理。
R3上已经建立的标签转发表,可以如图14所示,图14是根据本发明实施例一的R3节点上构造的标签表转发表。
其具体的报文转发流程可以如下:
“流量绑定segment list”中的segment list可以直接是出标签栈,也可以是ip address list,即<R1,R2,R3>,如果是ip address list,则ingress node需要将它转换成出标签栈。下面分两种情况描述:
1、ingress节点R0的流量绑定segment list为:<SRGB_A1[INDEX_R1],SRGB_R1[300]>,一般可由控制器计算好后下发,如图15所示,图15是根据本发明实施例一的控制器下发给ingress节点R0的携带SR报文头的数据报文格式的示意图。
2、如果ingress需要自身将ip address list转换成出标签栈,可以是如下的方法:
内层标签为第一个segment node的SRGB(即本实施例中的SRGB_R1)中用SL-SID(即本实施例中为SL1分配的SL-SID:300)作偏移。本实施例中,为SRGB_R1[300]。
外层标签为ingress至第一个segment node的转发标签,可以是LDP/RSVP-TE/BGP/STATIC/SR等LSP的标签,本实施例中,为SR标签,即ingress节点至第一个segment node的直连下一跳的SRGB(即SRGB_A1)中用第一个segment node的INDEX(即INDEX_R1)做偏移,为SRGB_A1[INDEX_R1]。
转换后的segment list见图15所示。
A1:A1是R0的直连下一跳,其接收到报文后,根据外层标签SRGB_A1[INDEX_R1]查找标签转发表,弹出外层标签,并将报文转到R1,构造的报文如图16所示,图16是根据本发明实施一例的A1节点转发给下一节点的携带SR报文头的数据报文格式的示意图。
R1:R1是A1的直连下一跳,R1节点收到报文后,根据外层标签SRGB_R1[300]查找标签转发表(图12),并交换外层标签为SRGB_R2[300]并将转到R2。由于R2非R1的直连一跳,所以继续迭代外层标签,可以是LDP/RSVP-TE/BGP/SR等协议分配的标签。以SR标签为例,R1需要叠加外层标签SRGB_A2[index_R2]。图17是根据本发明实施例一的R1节点转发给下一节点的携带SR报文头的数据报文格式的示意图。
A2:A2是R1的直连下一跳,其接收到报文后,根据外层标签SRGB_A2[index_R2]查找标签转发表,弹出外层标签,并将报文转到R2,图18是根据本发明实施例一的A2节点转发给下一节点的携带SR报文头的数据报文格式的示意图。
R2:R2收到报文后,根据外层标签SRGB_R2[300]查找标签转发表(图13),并交换外层标签为SRGB_A3[INDEX_R3]并将报文转到A3,图19是根据本发明实施例一的R2节点转发给下一节点的携带SR报文头的数据报文格式的示意图。
A3:A3节点是R2的直连下一跳,其接收到报文后,根据外层标签SRGB_A3[INDEX_R3]查找标签转发表,并交换外层标签为SRGB_R3[INDEX_R3]并将报文转到R3,图20是根据本发明实施例一的A3节点转发给下一节点的携带SR报文头的数据报文格式的示意图。
R3:R3收到报文后,根据外层标签SRGB_R3[INDEX_R3]查找标签转发表(图14),弹出标签。或者在倒数第二跳提前弹出外层标签。
实施例二
图21是根据本发明实施例二的SR网络中的显式路由的流程图,如图21所示,包括:
步骤S2102,控制器将通过南向接口协议将segment list<R1,R2,R3>及SL-SID300信息通告给list中的ingress节点。
其中,南向接口协议可以是BGP-LS或者PCEP。控制器与SR域内各节点均存在BGP-LS或者PCEP邻居关系。控制器通过扩展BGP-LS或者PCEP中新的消息来携带segment list<R1,R2,R3>及SL-SID300,并发送给list中ingress节点。这里,我们可以定义新的消息为:SR-LIST Segment ID allocation msg。BGP-LS或者PCEP可以通过一个SR-LIST Segment ID allocation msg承载segment list<R1,R2,R3>及SL-SID300信息,并发送给list中ingress节点。
步骤S2104,ingress节点通过新扩展的IGP消息将segment list<R1,R2,R3>及SL-SID300信息通告给SR域的所有节点。该segment list t<R1,R2,R3>中包含的SR节点接收到segment list<R1,R2,R3>及SL-SID300信息后构建标签转发表,SR域的其他节点不需要生成相应的标签表项,但需要维护表项保存segment list<R1,R2,R3>到SL-SID300的映射关系。
比如,ingress节点需要根据IP address list自己计算出标签栈的话,则控制器也可以向ingress node下发包含SR-LIST Segment ID allocation msg。R0收到后,维护表项保存SL1到SID-300的映射关系。
segment list中包含的所有节点的标签转发表的构建与实施例一相同,具体的报文转发流程也与实施例一相同,具体可以参见实施例一。
实施例三
该实施例下,控制器向segment list<R1,R2,R3>中包含的每个节点通告撤销消息撤销之前通告的segment list<R1,R2,R3>和SL-SID300,可以定义新的撤销消息为SR-LIST Segment ID revocation msg。图22是根据本发明实施例三的SR网络中的显式路由的流程图,如图22所示,包括:
步骤S2202,控制器将通过南向接口协议撤销之前发送给list中包含的每个节点及ingress node的segment list<R1,R2,R3>及SL-SID300。
其中,南向接口协议可以为BGP-LS或者PCEP。控制器与SR域内各节点均存在BGP-LS或者PCEP邻居关系。在本发明中,控制器将通过扩展的BGP-LS或者PCEP撤销消息撤销之前发送给list中包含的每个节点的segment list<R1,R2,R3>及SL-SID300。BGP-LS可以通过一个扩展的BGP-LS或者PCEP撤销消息撤销之前发送给list中包含的每个节点的segment list<R1,R2,R3>及SL-SID300。
步骤S2204,list中包含的每个节点接收到segment list<R1,R2,R3>及SL-SID300撤销消息后,删除本地标签转发表,ingress node删除本地维护的用于保存segment list<R1,R2,R3>到SL-SID300的映射关系的表项。
实施例四
该实施例下,控制器向SR域的ingress节点通告撤销消息撤销之前通告的segment list<R1,R2,R3>和SL-SID300,可以定义新的撤销消息为SR-LIST Segment ID revocation msg。图23是根据本发明实施例四的SR网络中的显式路由的流程图,如图23所示,包括:
步骤S2302,控制器将通过南向接口协议撤销之前发送给SR域的ingress节点的segment list<R1,R2,R3>及SL-SID300。
其中,南向接口协议可以为BGP-LS或者PCEP。控制器与SR域内各节点均存在BGP-LS或者PCEP邻居关系。在本发明中,控制器将通过扩展的BGP-LS或者PCEP撤销消息撤销之前发送给list中包含ingress节点的segment list<R1,R2,R3>及SL-SID300。BGP-LS可以通过一个扩展的BGP-LS或者PCEP撤销消息撤销之前发送给list中包含的每个节点的segment list<R1,R2,R3>及SL-SID300。
步骤S2304,SR域的ingress节点接收到segment list<R1,R2,R3>及SL-SID300撤销消息后,删除本地维护的用于保存segment list<R1,R2,R3>到SL-SID300的映射关系的表项,并通过发送扩展的IGP撤销消息通告SR域内的其他节点删除本地标签转发表或者删除用于保存segment list<R1,R2,R3>到SL-SID300的映射关系的表项。
实施例五
与实施例一基本相同,主要区别是在本实施例中所构建的标签表项配置策略指定需要根据specific RLD来对报文封装尽量多的出标签。
图24是根据本发明实施例五的SR网络中的显式路由的流程图,如图24所示,包括:
步骤S2402,控制器将通过南向接口协议将segment list<R1,R2,R3>及SL-SID300通告给list中包含的每个节点。
其中,南向接口协议可以是BGP-LS或者PCEP。控制器与SR域内各节点均存在BGP-LS或者PCEP邻居关系。控制器通过扩展BGP-LS或者PCEP中新的消息来携带segment list<R1,R2,R3>及SL-SID300,并发送给list中包含的每个节点。这里,我们可以定义新的消息为:SR-LIST Segment ID allocation msg。BGP-LS或者PCEP可以通过一个SR-LIST Segment ID allocation msg承载segment list<R1,R2,R3>及SL-SID300信息,并发送给R1、R2及R3节点。
步骤S2404,R1、R2及R3接收到携带segment list<R1,R2,R3>及SL-SID300的SR-LIST Segment ID allocation msg消息后,并结合标签表项配置策略:指定根据specific RLD构建SL-SID对应的标签表项。
其中,segment list<R1,R2,R3>中包含的每个节点构建标签转发表的过程如下:
1、R1收到后,检查发现:
last segment=R3
next segment=R2
则构造的标签表转发表如下所示:
入标签:SRGB_R1[300];
label operation:SWAP;
FLAG:需要根据specific RLD来封装出标签;
specific RLD:5;
出标签栈:
外层:SRGB_A2[index_R2];
SRGB_R2[index_R3];
内层:SRGB_R3[300];
nexthop/port:至R2的最短路径(含ECMP/FRR),本例中为单跳A2。
2、R2收到后,检查发现:
last segment=R3
next segment=R3
则构造的标签转发表如下所示:
入标签:SRGB_R1[300];
label operation:SWAP;
FLAG:需要根据specific RLD来封装出标签;
specific RLD:5;
出标签栈:
外层:SRGB_A3[index_R3];
内层:SRGB_R3[300];
nexthop/port:至R2的最短路径(含ECMP/FRR),本例中为单跳A3。
3、R3收到后,检查发现:
last segment=R3。
则构造的标签转发表如下所示:
入标签:SRGB_R3[300];
label operation:POP;
FLAG:标签终结。
其具体的报文转发流程如下:
“流量绑定segment list”中的segment list可以直接是出标签栈,也可以是ip address list,即<R1,R2,R3>,如果是ip address list,则ingress node需要将它转换成出标签栈。下面分几种情况描述:
1、ingress节点R0的流量绑定segment list为标签栈:<SRGB_A1[INDEX_R1],SRGB_R1[300]>,一般可由控制器计算好后下发。本实例中假设控制器即使明知specific RLD=5,也命令ingress node只封装如上两层SR标签。
2、如果ingress节点需要将ip address list转换成出标签栈,可以是如下:
1)根据ingress节点R0至第一个SR NODE R1的最短路径表示的直连下一跳A1,为R1确定最外层标签SRGB_A1[INDEX_R1]。
2)根据第一个SR NODE R1为第二个SR NODE R2确定次外层标签SRGB_R1[INDEX_R2]。
3)根据第二个SR NODE R2为第三个SR NODE R3确定次外层标签SRGB_R2[INDEX_R3]。
4)取m=3,则根据第三个SR NODE R3为SL-SID300确定内层标签SRGB_R3[300]。
以上将引入4层SR标签,考虑承载的私网业务标签的话,就有可能超越specific RLD=5了。实际上,作为一种可能的实现,ingress节点完全可以在内部实现时再订一条更严格的控制线,只让SR标签产生两层,即产生与第一种由控制器下发一样的结果,包括:
1)根据ingress节点R0至第一个SR NODE R1的最短路径表示的直连下一跳A1,为R1确定最外层标签SRGB_A1[INDEX_R1]。
2)取m=1,则根据第一个SR NODE R1为SL-SID300确定内层标签SRGB_R1[300]。
转换后的segment list见图15所示。
A1:A1是R0的直连下一跳,其接收到报文后,根据外层标签SRGB_A1[INDEX_R1]查找标签转发表,弹出外层标签,并将报文转到R1。
R1:R1是A1的直连下一跳,R1节点收到报文后,根据外层标签SRGB_R1[300]查找标签转发表,FLAG表明想尽量多的封装出标签,则可以把标签表项的整个出标签栈都作为SR标签,即<SRGB_A2[index_R2],SRGB_R2[index_R3],SRGB_R3[300]>,报文发给A2。
A2:A2是R1的直连下一跳,其接收到报文后,根据外层标签SRGB_A2[index_R2]查找标签转发表,弹出外层标签,并将报文转到R2。
R2:R2收到报文后,根据外层标签SRGB_R2[index_R3]查找标签转发表,交换外层标签为SRGB_A3[INDEX_R3],即报文中的整个SR标签栈变为<SRGB_A3[INDEX_R3],SRGB_R3[300]>,并将报文转到A3。注意由于之前R1上采取了尽量多封装标签的行为,导致SL-SID300对应的标签SRGB_R3[300]不会在R2上暴露。虽然R2上也为SL-SID300准备了类似的标签表项SRGB_R2[300],但是在该实施例中不会被用到。
A3:A3节点是R2的直连下一跳,其接收到报文后,根据外层标签SRGB_A3[INDEX_R3]查找标签转发表,并交换外层标签为SRGB_R3[INDEX_R3],即报文中的整个SR标签栈变为<SRGB_R3[INDEX_R3],SRGB_R3[300]>,并将报文转到R3。
R3:R3收到报文后,根据外层标签SRGB_R3[INDEX_R3]查找标签转发表,弹出标签。继续根据外层标签SRGB_R3[300]查找标签转发表,弹出标签。其中,SRGB_R3[INDEX_R3]或可能在倒数第二跳提前弹出。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
工业实用性
如上所述,本发明实施例提供的一种标签构造以及标签报文转发方法及装置具有以下有益效果:有效地降低转发面硬件的标签栈处理能力要求,合理地解决载荷效率问题与MTU问题。

Claims (37)

  1. 一种标签构造以及标签报文转发方法,包括:
    节点接收消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;
    所述节点根据所述段列表和所述段列表标识构建标签转发表,并根据所述标签转发表进行转发;和/或,所述节点维护所述段列表和所述段列表标识的映射关系。
  2. 根据权利要求1所述的方法,其中,所述消息是入口节点在接收到控制器发送的所述段列表和所述段列表标识之后发送的,和/或,所述消息是所述控制器发送的。
  3. 根据权利要求2所述的方法,其中,
    所述节点接收所述控制器通过南向接口协议发送的所述消息;和/或,
    所述节点接收所述入口节点通过扩展的内部网关协议IGP发送的所述消息。
  4. 根据权利要求3所述的方法,其中,
    所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
  5. 根据权利要求1所述的方法,其中,所述方法还包括:
    所述节点接收控制器或者入口节点发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
  6. 根据权利要求1至5中任一项所述的方法,其中,
    在所述节点为所述段列表中的最后一个节点的情况下,并且,所述节点的前一个节点不在转发报文中携带内层标签的情况下,所述节点不构造标签转发表中的标签表项;其中,所述内层标签是根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的。
  7. 根据权利要求1至5中任一项所述的方法,其中,所述段列表标识是全局标签、或者索引index,其中,所述全局标签是在SR域内所有节点的全局标签块SRGB都相同情况下的索引index偏移。
  8. 根据权利要求7所述的方法,其中,在所述段列表标识是索引的情况下,
    在所述节点为非最后一个节点的情况下,所述节点根据本节点的段路由全局标签块SRGB和所述段列表标识构造入标签,并且,构造出标签栈,所述出标签栈包括以下至少之一:内层标签、一个或多个外层标签;其中,所述内层标签是根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的,所述一个或多个外层标签包括以下至少之一:剩余节点对应的节点标识所对应的标签,所述节点的下一个节点对应的节点标识所对应的标签。
  9. 根据权利要求8所述的方法,其中,在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述节点根据指定的可读标签深度构造包括一个或多个所述外层标签的所述出标签栈。
  10. 根据权利要求7所述的方法,其中,在所述段列表标识是索引的情况下,所述节点为入口节点的情况下,
    在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述入口节点构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签是根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点的段路由全局标签块SRGB和所述段列表标识构造的;一个或多个所述外层标签从外至内依次如下:所述段列表中的第一个节点所对应的标签,是根据入口节点至段列表中的第一个节点最短路径表示的直连下一跳确定;所述段列表中的第二个至第m个节点对应的标签,是根据段列表中的该节点的前一个节点确定的;所述第m个节点是根据指定的可读标签栈深度辖定的范围所能封装的段列表中的最远一个节点确定。
  11. 根据权利要求10所述的方法,其中,
    所述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,所述出标签栈中不包括所述内层标签。
  12. 根据权利要求7所述的方法,其中,在所述段列表标识是索引,所述节点为入口节点情况下,
    在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,所述入口节点构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签根据段列表中的除入口节点之外第一个节点的全局标签块SRGB和所述段列表标识构造的;所述外层标签是根据入口节点至段列表中除入口节点之外的第一个节点的最短路径表示的直连下一跳确定的。
  13. 根据权利要求12所述的方法,其中,
    在所述段列表除入口节点之外的第一个节点也是段列表中的最后一个节点的情况下,所述标签栈中不包括所述内层标签。
  14. 根据权利要求7所述的方法,其中,在所述段列表标识是索引的情况下,所述节点为除入口节点之外的段列表中的其他节点:
    在指示标志位指示不需要根据指定的可读标签深度来封装出标签的情况下,所述节点构造的出标签栈包括以下至少之一:内层标签、一个外层标签;其中,所述内层标签根据所述节点的下一个节点的全局标签块SRGB和所述段列表标识构造的;所述外层标签根据所述节点至所述节点的下个节点的最短路径表示的直连下一跳的全局标签块SRGB和所述下一个节点的标识构造的。
  15. 根据权利要求7所述的方法,其中,在所述段列表标识是索引的情况下,所述节点为除入口节点之外的段列表中的其他节点,
    在指示标志位指示需要根据指定的可读标签深度来封装出标签的情况下,所述节点i构造出标签栈,所述出标签栈包括以下至少之一:内层标签、外层标签;其中,所述内层标签根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点m的段路由全局标签块SRGB和所述段列表标识构造的;一个或多个所述外层标签从外至内:所述节点i的下一个节点i+1所对应的标签,是根据所述节点i至所述节点的下一个节点i+1的最短路径表示的直连下一跳确定;所述段列表中的节点i+2至节点m对应的标签,是根据段列表中的该节点的前一个节点确定的;所述节点i是指除入口节点之外的段列表中的其他节点;所述节点m是根据指定的可读标签栈深度辖定的范围所能封装的段列表中的最远一个节点确定。
  16. 根据权利要求15所述的方法,其中,
    所述的根据指定的可读标签深度辖定的范围所能封装的最远一个段列表中的节点是段列表中的最后一个节点,所述出标签栈中不包括所述内层标签。
  17. 根据权利要求8至16中任一项所述的方法,其中,所述指定的可读标签深度大于等于2,所述节点在封装报文的标签栈时不大于指定的可读标签深度。
  18. 根据权利要求17所述的方法,其中,所述指定的可读标签深度是通过显示配置的,或者是通过学习得到的全网的最小值。
  19. 根据权利要求18所述的方法,其中,
    所述节点和所述下一节点之间的节点包括以下至少之一:SR节点和/或非SR节点;和/或,
    所述节点和所述下一节点之间的隧道包括以下之一:标签分发协议标签交换路径LDP LSP、基于流量工程扩展的资源预留协议标签交换路径RSVP-TE LSP、边界网关协议标签交换路径BGP LSP、段路由标签交换路径SR LSP。
  20. 根据权利要求1所述的方法,其中,在所述段列表中只包括一个节点的情况下,所述段列表标识为所述节点的节点标识。
  21. 一种标签构造以及标签报文转发方法,包括:
    控制器将消息发送给节点,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识,所述段列表和所述段列表标识用于指示所述节点构建标签转发表并根据所述标签转发表进行转发;和/或,所述段列表和所述段列表标识用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
  22. 根据权利要求21所述的方法,其中,所述控制器将所述消息发送给所述节点包括:
    所述控制器通过南向接口协议将所述消息发送给所述节点。
  23. 根据权利要求22所述的方法,其中,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
  24. 根据权利要求23所述的方法,其中,在所述控制器将所述消息发送给所述节点之后,还包括:
    所述控制器通过所述南向接口协议将撤销消息发送给所述节点,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
  25. 一种标签构造以及标签报文转发方法,包括:
    入口节点接收控制器发送的消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;
    入口节点将所述消息发送给节点,其中,所述消息用于指示所述节点构建标签转发表,并根据所述标签转发表进行转发;和/或,所述消息用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
  26. 根据权利要求25所述的方法,其中,所述入口节点将所述消息发送给所述节点包括:
    所述入口节点通过向所述节点发送扩展的内部网关协议IGP消息的方式将所述消息发送给所述节点。
  27. 根据权利要求25所述的方法,其中,在所述入口节点将所述消息发送给所述节点之后,还包括:
    所述入口节点接收所述控制器通过南向接口协议发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表;
    所述入口节点接收所述撤销消息后,通过向所述节点发送扩展的内部网关协议IGP消息来指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,指示所述节点删除所述标签转发表。
  28. 根据权利要求27所述的方法,其中,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
  29. 根据权利要求27所述的方法,其中,所述入口节点将接收的所述撤销消息发送给所述节点包括:
    所述入口节点通过向所述节点发送扩展的内部网关协议IGP消息的方式将所述消息发送给所述节点。
  30. 一种标签构造以及标签报文转发装置,应用于节点中,包括:
    第一接收模块,设置为接收消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;
    构建模块,设置为根据所述段列表和所述段列表标识构建标签转发表,并根据所述标签转发表进行转发;和/或,用于维护所述段列表和所述段列表标识的映射关系。
  31. 根据权利要求30所述的装置,其中,还包括:
    第二接收模块,设置为接收控制器或者入口节点发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
  32. 一种标签构造以及标签报文转发装置,应用于控制器中,包括:
    第一发送模块,设置为将消息发送给节点,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识,所述段列表和所述段列表标识用于指示所述节点构建标签转发表并根据所述标签转发表进行转发;和/或,所述段列表和所述段列表标识用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
  33. 根据权利要求32所述的装置,其中,还包括:
    第二发送模块,设置为通过南向接口协议将撤销消息发送给所述节点,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表。
  34. 根据权利要求33所述的装置,其中,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
  35. 一种标签构造以及标签报文转发装置,应用于入口节点中,包括:
    第三接收模块,设置为接收控制器发送的消息,其中,所述消息中携带有段列表和用于标识所述段列表的段列表标识;
    第三发送模块,设置为将所述消息发送给节点,其中,所述消息用于指示所述节点构建标签转发表,并根据所述标签转发表进行转发;和/或,所述消息用于指示所述节点维护所述段列表和所述段列表标识的映射关系。
  36. 根据权利要求35所述的装置,其中,还包括:
    第四接收模块,设置为接收所述控制器通过南向接口协议发送的撤销消息,其中,所述撤销消息用于指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,用于指示所述节点删除所述标签转发表;
    第四发送模块,设置为在接收所述撤销消息后,通过向所述节点发送扩展的内部网关协议IGP消息来指示所述节点删除所述段列表及段列表标识之间的映射关系,和/或,指示所述节点删除所述标签转发表。
  37. 根据权利要求36所述的装置,其中,所述南向接口协议包括:边界网关协议-链路状态路由协议BGP-LS、路径计算单元通信协议PCEP、开放流协议OPENFLOW或者网络配置协议Netconf。
PCT/CN2015/082236 2015-01-19 2015-06-24 标签构造以及标签报文转发方法及装置 WO2016115823A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/544,749 US10581733B2 (en) 2015-01-19 2015-06-24 Methods and devices for constructing label and forwarding label packet
EP15878495.9A EP3249865B1 (en) 2015-01-19 2015-06-24 Method and devices for constructing label and forwarding label packet

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510026562.8A CN105871722B (zh) 2015-01-19 2015-01-19 标签构造以及标签报文转发方法及装置
CN201510026562.8 2015-01-19

Publications (1)

Publication Number Publication Date
WO2016115823A1 true WO2016115823A1 (zh) 2016-07-28

Family

ID=56416343

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/082236 WO2016115823A1 (zh) 2015-01-19 2015-06-24 标签构造以及标签报文转发方法及装置

Country Status (4)

Country Link
US (1) US10581733B2 (zh)
EP (1) EP3249865B1 (zh)
CN (1) CN105871722B (zh)
WO (1) WO2016115823A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113206787A (zh) * 2020-01-31 2021-08-03 中国移动通信有限公司研究院 分段标识的处理方法及设备

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO2776466T3 (zh) * 2014-02-13 2018-01-20
CN106936713B (zh) * 2015-12-30 2020-02-21 华为技术有限公司 一种标签管理方法,数据流处理方法及设备
US10171338B2 (en) * 2016-02-08 2019-01-01 Cisco Technology, Inc. On-demand next-hop resolution
US9992105B2 (en) * 2016-03-30 2018-06-05 Juniper Networks, Inc. Label switched path reporting
CN108111414B (zh) * 2016-11-25 2021-01-26 新华三技术有限公司 一种基于段路由的标签部署方法和装置
CN108123871B (zh) * 2016-11-28 2021-10-26 中兴通讯股份有限公司 等价多路径ecmp处理方法及装置
CN108737124B (zh) * 2017-04-13 2022-07-19 中兴通讯股份有限公司 一种信息通告方法及装置
CN107124360B (zh) * 2017-04-24 2019-12-06 新华三技术有限公司 标签封装方法及装置
US10742548B1 (en) * 2017-06-02 2020-08-11 Juniper Networks, Inc. Per path and per link traffic accounting
CN107566272B (zh) * 2017-10-17 2021-10-12 新华三技术有限公司 转发表建立方法及数据转发方法
CN108259341B (zh) * 2017-12-06 2020-12-29 新华三技术有限公司 一种前缀标签分配方法和sdn控制器
CN109981457B (zh) * 2017-12-27 2021-09-07 华为技术有限公司 一种报文处理的方法、网络节点和系统
US11184235B2 (en) * 2018-03-06 2021-11-23 Cisco Technology, Inc. In-band direct mode performance loss measurement in software defined networks
CN110290068B (zh) 2018-03-19 2021-09-14 华为技术有限公司 一种粘连标签的发送方法、接收方法及设备
US11323365B2 (en) * 2018-05-17 2022-05-03 Telefonaktiebolaget Lm Ericsson (Publ) Tearing down a label switched path through a communications network
CN110557337B (zh) * 2018-05-30 2021-12-28 中兴通讯股份有限公司 一种分段路由路径计算方法、装置及计算机存储介质
CN114598642A (zh) 2018-06-25 2022-06-07 华为技术有限公司 发送网络性能参数、计算网络性能的方法和网络节点
CN110661700B (zh) 2018-06-30 2021-10-15 华为技术有限公司 一种传输路径故障的处理方法、装置及系统
CN110784403B (zh) * 2018-07-30 2022-07-15 中兴通讯股份有限公司 路径标识传输方法、装置和计算机可读存储介质
CN110784402B (zh) * 2018-07-30 2023-07-04 中兴通讯股份有限公司 路径标识传输方法、装置和计算机可读存储介质
CN109067657B (zh) * 2018-08-24 2021-03-26 新华三技术有限公司 一种报文处理方法和装置
WO2020049577A1 (en) * 2018-09-07 2020-03-12 Telefonaktiebolaget Lm Ericsson (Publ) Network node, first node, second node and methods performed thereby for routing a packet through a path
CN112689976B (zh) * 2018-10-05 2022-04-05 华为技术有限公司 扩展控制器的边界网关协议链路状态
CN109246011B (zh) * 2018-10-25 2021-05-25 新华三技术有限公司 一种报文转发方法及装置
CN109347740B (zh) * 2018-11-19 2022-03-01 新华三技术有限公司 报文转发方法和装置
CN111385206B (zh) * 2018-12-29 2022-04-22 北京华为数字技术有限公司 报文转发的方法、网络系统、相关设备及计算机存储介质
CN111600797B (zh) * 2019-02-21 2022-12-30 华为技术有限公司 一种数据传输方法、节点以及系统
CN112398729B (zh) 2019-08-14 2022-03-29 华为技术有限公司 一种链路状态信息的处理方法及装置
CN111541614B (zh) * 2020-01-21 2022-04-08 中国银联股份有限公司 报文转发方法以及网络节点
CN116192726A (zh) * 2020-03-20 2023-05-30 华为技术有限公司 转发路径建立方法、装置以及计算机可读存储介质
US11477041B2 (en) * 2020-03-31 2022-10-18 Nokia Solutions And Networks Oy Stateless multicast based on local label spaces
CN112333094B (zh) * 2020-11-27 2022-10-18 迈普通信技术股份有限公司 数据传输处理方法、装置、网络设备及可读存储介质
CN114039861B (zh) * 2021-12-20 2024-02-06 浪潮思科网络科技有限公司 一种基于tipc协议改造的链式拓扑感知方法、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101243654A (zh) * 2005-08-08 2008-08-13 思科技术公司 用于使能标签交换数据分组的路由选择的方法和装置
CN101771561A (zh) * 2008-12-31 2010-07-07 华为技术有限公司 一种标签转发表项建立方法、节点设备和系统
CN103124236A (zh) * 2013-02-27 2013-05-29 迈普通信技术股份有限公司 路由和标签的管理方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2472760A1 (en) * 2010-12-30 2012-07-04 Nokia Siemens Networks Oy Optical communication system and method for data processing in an optical network
SE539967C2 (sv) * 2012-03-01 2018-02-13 Vaederstad Holding Ab Lantbruksredskap med matningsanordning för luftflödesbaseradmatning av granulärt eller pulverformigt material
US9049233B2 (en) * 2012-10-05 2015-06-02 Cisco Technology, Inc. MPLS segment-routing
US9537769B2 (en) * 2013-03-15 2017-01-03 Cisco Technology, Inc. Opportunistic compression of routing segment identifier stacks
US9537718B2 (en) * 2013-03-15 2017-01-03 Cisco Technology, Inc. Segment routing over label distribution protocol
CN104243311B (zh) * 2013-06-08 2018-05-25 华为技术有限公司 报文处理的方法及路由器
US9762488B2 (en) * 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
US9912577B2 (en) * 2014-04-17 2018-03-06 Cisco Technology, Inc. Segment routing—egress peer engineering (SP-EPE)
US9516118B2 (en) * 2014-05-12 2016-12-06 Telefonaktiebolaget L M Ericsson (Publ) Scalable segment identifier allocation in segment routing
US9602308B2 (en) * 2014-06-23 2017-03-21 International Business Machines Corporation Servicing packets in a virtual network and a software-defined network (SDN)
CN106330200B (zh) * 2015-07-09 2019-09-10 华邦电子股份有限公司 执行于通量图形处理器的低密度奇偶校验解码方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101243654A (zh) * 2005-08-08 2008-08-13 思科技术公司 用于使能标签交换数据分组的路由选择的方法和装置
CN101771561A (zh) * 2008-12-31 2010-07-07 华为技术有限公司 一种标签转发表项建立方法、节点设备和系统
CN103124236A (zh) * 2013-02-27 2013-05-29 迈普通信技术股份有限公司 路由和标签的管理方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PREVIDI, S. ET AL.: "Segment Routing with IS - IS Routing Protocol Draft-previdi-filsfils-isis-segment-routing-02", INTERNET -DRAFT, 20 March 2013 (2013-03-20), pages 1 - 27, XP015091832 *
See also references of EP3249865A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113206787A (zh) * 2020-01-31 2021-08-03 中国移动通信有限公司研究院 分段标识的处理方法及设备

Also Published As

Publication number Publication date
CN105871722B (zh) 2020-02-14
US10581733B2 (en) 2020-03-03
EP3249865B1 (en) 2022-05-18
CN105871722A (zh) 2016-08-17
US20180019944A1 (en) 2018-01-18
EP3249865A1 (en) 2017-11-29
EP3249865A4 (en) 2018-01-17

Similar Documents

Publication Publication Date Title
WO2016115823A1 (zh) 标签构造以及标签报文转发方法及装置
CN110912795B (zh) 一种传输控制方法、节点、网络系统及存储介质
CN106656781B (zh) 一种报文传输的方法、装置和系统
CN111385206B (zh) 报文转发的方法、网络系统、相关设备及计算机存储介质
US9660897B1 (en) BGP link-state extensions for segment routing
WO2020063201A1 (zh) 网络切片的创建方法及装置
US9998368B2 (en) Zone routing system
Atlas et al. An architecture for IP/LDP fast reroute using maximally redundant trees (MRT-FRR)
US9525619B2 (en) Scalable edge node protection using segment routing
US8155000B2 (en) Technique for enabling traffic engineering on CE-CE paths across a provider network
US11743166B2 (en) Provisioning non-colored segment routing label switched paths via segment routing policies in border gateway protocol
EP2911350B1 (en) Neighbor-label distribution with label distribution protocol
US8462783B2 (en) Method and a node device for transferring a message based on traffic engineering tunnels
CN101243648B (zh) 用于使能标签交换数据分组的路由选择的方法和装置
WO2015184852A1 (zh) Sr信息获取方法及建立sr网络的方法
US9571387B1 (en) Forwarding using maximally redundant trees
WO2015131560A1 (zh) 一种分配分段路由标记的方法和分段路由节点
EP3886378B1 (en) Seamless end-to-end segment routing across metropolitan area networks
WO2018033060A1 (zh) 报文转发方法及装置
US11240063B2 (en) Methods, nodes and computer readable media for tunnel establishment per slice
Atlas et al. RFC 7812: An Architecture for IP/LDP Fast Reroute Using Maximally Redundant Trees (MRT-FRR)

Legal Events

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

Ref document number: 15878495

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15544749

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015878495

Country of ref document: EP