WO2015054904A1 - 转发报文的方法、控制器、转发设备和网络*** - Google Patents

转发报文的方法、控制器、转发设备和网络*** Download PDF

Info

Publication number
WO2015054904A1
WO2015054904A1 PCT/CN2013/085501 CN2013085501W WO2015054904A1 WO 2015054904 A1 WO2015054904 A1 WO 2015054904A1 CN 2013085501 W CN2013085501 W CN 2013085501W WO 2015054904 A1 WO2015054904 A1 WO 2015054904A1
Authority
WO
WIPO (PCT)
Prior art keywords
link
node
forwarding
label
global label
Prior art date
Application number
PCT/CN2013/085501
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 PCT/CN2013/085501 priority Critical patent/WO2015054904A1/zh
Priority to EP13895758.4A priority patent/EP3043519B1/en
Priority to CN201380079969.6A priority patent/CN105594167B/zh
Publication of WO2015054904A1 publication Critical patent/WO2015054904A1/zh
Priority to US15/098,790 priority patent/US10021023B2/en

Links

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/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/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical 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/28Routing or path finding of packets in data switching networks using route fault recovery

Definitions

  • the invention relates to a method, a controller, a forwarding device and a system for forwarding a message. Background technique
  • Virtual operators are now emerging, and they operate through virtual networks provided by the underlying network operators. From the perspective of virtual operators, they want to be able to see an independent network for management and business operations, but from the perspective of the basic network operators, they do not want to expose the details of the underlying physical network to the virtual operators. This requires a better way for the network to virtualize.
  • the basic components of a network are links and nodes, so if the build requires a network, there is a need for better ways to virtualize network nodes and links.
  • the VPN itself has the concept of a virtual network and is heavily deployed. Virtual operators need not only virtualize the edge service network, but also build a virtual infrastructure network to operate on the underlying physical network.
  • VNO virtual network operator
  • the purpose of the embodiments of the present invention is to provide a method, a device, and a network system for forwarding a message, so as to improve the efficiency of the virtualized network.
  • embodiments of the present invention adopt the following technical solutions.
  • an embodiment of the present invention provides a network system, where the network system includes at least one controller and multiple forwarding devices, where the multiple forwarding devices form a plurality of network topologies, and the at least one controller is configured to
  • the virtual link requires different attribute requirements of the basic link in the network topology, and allocates a link global label according to the attribute requirement for the basic link in the network topology; and the global label of the link and the ⁇ network topology ID
  • the link binding relationship between the basic link identifier and the attribute > is sent to the multiple forwarding devices; the link global label assigned to each virtual link is different; and the multiple forwarding devices are used to receive the The link binding relationship is generated, and the label forwarding entry includes a mapping relationship between the global label of the link and the virtual link forwarding information, where the virtual link forwarding information includes the global label corresponding to the link.
  • the link global label includes two or more labels.
  • the controller includes: a link global label allocation module and a link binding relationship sending a module, where the link global label allocation module is configured to allocate a link globally according to an attribute requirement of the basic link in the network topology according to different attribute requirements of the virtual link to the basic link in the network topology. a label, the virtual global node assigned by the controller to each virtual link is different; the link binding relationship sending module is configured to: after the link global label allocation module allocates a link global label A link binding relationship is sent to the plurality of forwarding devices.
  • the forwarding device includes: a receiving module, a label forwarding entry generating module And a forwarding module, where the receiving module is configured to receive a link binding relationship between the global label of the link and the virtual link, and the label forwarding entry generating module is configured to generate, according to the link binding relationship a label forwarding entry that includes a mapping relationship between the link global label and the virtual link forwarding information.
  • the forwarding module is configured to: when the first packet received by the forwarding device carries the first link global label, the forwarding The module searches for the first label forwarding entry corresponding to the first link global label according to the first link global label, so as to determine forwarding information of the first virtual link corresponding to the first link global label, after the first The attribute processing corresponding to the global label of the link forwards the first packet from the basic link corresponding to the global label of the first link.
  • the forwarding device further includes a link label adding module, when the segment routing is forwarded by Segment Routing, Determining, by the one of the plurality of forwarding devices, the forwarding label as the ingress forwarding device, when the second packet to be received is to pass through the basic link of the network topology, and is to be forwarded according to the second attribute requirement, the link label The adding module adds the second link global label of the second packet to the ⁇ network topology ID, the basic link identifier, and the second attribute.
  • the controller includes: a first processor and a first interface, where the a processor, configured to allocate a link global label according to an attribute requirement for the basic link in the network topology according to different attribute requirements of the virtual link to the basic link in the network topology; And sending the link binding relationship formed by the first processor to the link global label to the multiple forwarding devices.
  • the forwarding device includes: a second interface, a second processor, and a third processor.
  • the second interface is configured to receive a link binding relationship between the global label of the link and the network topology ID, the basic link identifier, and the attribute.
  • a second processor configured to generate, according to the link binding relationship, a label forwarding entry that includes a mapping relationship between the link global label and the virtual link forwarding information, where the virtual link forwarding information includes the global label corresponding to the link
  • the third processor is configured to: when the first packet received by the forwarding device carries the first link global label, the third processor is configured according to the first link global label Determining the first label forwarding entry corresponding to the first link global label, and determining the forwarding information of the first virtual link corresponding to the first link global label, and the first corresponding to the first link global label Attribute processing, forwarding the first packet from the basic link corresponding to the first link global label.
  • the forwarding device further includes a fourth processor, when the segment routing When the forwarding device determines, as the ingress forwarding device, that the received second packet is to pass through the basic link of the network topology, and is to be forwarded according to the second attribute requirement, the fourth processor is the The second packet is added to the ⁇ network topology ID, the basic link identifier, and the second attribute> the assigned second link global label.
  • the attribute is a multi-protocol label switching tunnel engineering MPLS TE attribute.
  • the MPLS TE attribute includes a bandwidth, an explicit path, a color, a protection, a fast reroute FRR, and a shared risk chain.
  • an embodiment of the present invention provides a network system, where the network system includes at least one a controller and a plurality of forwarding devices, the plurality of forwarding devices constituting a plurality of network topologies, wherein the at least one controller is configured to use the network node according to different attribute requirements of the basic node in the network topology.
  • the basic node in the topology allocates the node global label according to the attribute requirement; and sends the node binding relationship between the node global label and the ⁇ network topology ID, the base node identifier, the attribute> to the multiple forwarding devices;
  • the global label of the node of each virtual link is different; the multiple forwarding devices are configured to receive the node binding relationship, and generate a label including a mapping relationship between the global label of the node and the forwarding information of the virtual node according to the binding relationship of the node.
  • Forwarding the entry, the virtual node forwarding information includes a base node corresponding to the node global label and a specified attribute processing.
  • the link global label includes two or more labels.
  • the controller includes: a node global label allocation module and a node binding relationship sending module,
  • the node global label allocation module is configured to allocate a global node according to an attribute requirement of the basic node in the multiple network topologies according to different attribute requirements of the virtual node to the basic node in the multiple network topologies.
  • the node binding relationship sending module is configured to allocate the global label of the node and the network formed by the global label allocation module of the node
  • the relationship between the topology ID, the base node identifier, and the attribute> node binding relationship is sent to the multiple forwarding devices.
  • the forwarding device includes: a receiving module, a label forwarding entry generating module And a forwarding module, where the receiving module is configured to receive the global label of the node and the ⁇ network topology ID, the base node Node binding relationship between identity, attribute>.
  • the label forwarding entry generating module is configured to generate, according to the node binding relationship, a label forwarding entry that includes a mapping relationship between the node global label and the virtual node forwarding information, where the virtual node forwarding information includes a basic correspondence of the node global label.
  • the forwarding module is configured to: when the first packet received by the receiving module carries the first node global label, the forwarding module searches according to the first node global label Determining the forwarding information of the first virtual node corresponding to the global label of the first node, and determining the forwarding information of the first virtual node corresponding to the global label of the first node, according to the first attribute corresponding to the global label of the first node, according to the first The outbound interface and the next hop information of the base node corresponding to the global label of the node forward the first packet.
  • the forwarding device further includes a node label adding module, when the segment routing segment forwarding is performed, when the When the forwarding device determines that the received second packet is to pass through the basic node of the network topology and is to be forwarded according to the second attribute request, the node label adding module is the The second message is added to the ⁇ network topology ID, the base node identifier, the second attribute> the second node global label of the allocated second virtual node.
  • the controller includes a first processor and a first interface, where the first processing And the first interface is used to allocate the node global label according to the attribute requirement of the base node in the network topology according to different attribute requirements of the virtual node to the basic node in the network topology.
  • the node binding relationship formed by the first processor after allocating the global label of the node is sent to the multiple forwarding devices.
  • the forwarding device includes a second interface, a second a processor and a third processor, wherein The second interface is configured to receive a node binding relationship between the node global label and the ⁇ network topology ID, the base node identifier, and the attribute>; the second processor is configured to generate, according to the node binding relationship a label forwarding entry including a mapping relationship between a node global label and a virtual node forwarding information, where the virtual node forwarding information includes a base node corresponding to the node global label and a specified attribute processing; the third processor is configured to be used by the node When the first packet received by the second interface carries the first node global label, the third processor 1324 searches for the first label forwarding entry corresponding to the first node global label according to the first node global label.
  • the forwarding device further includes a fourth processor, when forwarding the segment routing segment forwarding As the ingress forwarding device determines that the received second packet is to pass through the basic node of the network topology, and is to be forwarded according to the second attribute requirement, the fourth processor adds the second packet to the network topology.
  • the attribute is a multi-protocol label switching tunnel engineering MPLS TE attribute.
  • the MPLS TE attribute includes a bandwidth, an explicit path, a color, a protection, a fast reroute FRR, and a shared risk chain. One or more of the way groups SRLG.
  • the embodiment of the present invention provides a method for forwarding a packet, where the method is applied to a network system including at least one controller and multiple forwarding devices, where the multiple forwarding devices form multiple network topologies, and the method includes : The link binding relationship between the global label of the receiving link and the ⁇ network topology ID, basic link identifier, and attribute>.
  • the link binding relationship is performed by the at least one controller according to different attributes of the basic link in the network topology according to the virtual link, and the basic link in the network topology is attributed according to the attribute Requiring to assign a link global label, and transmitting a link binding relationship between the link global label and the ⁇ network topology ID, the base link identifier, the attribute> to the multiple forwarding devices;
  • the link global label of the virtual link is different.
  • the forwarding device when the first packet received by the forwarding device carries the first link global label, the forwarding device searches according to the first link global label. Determining the forwarding information of the first virtual link corresponding to the first link global label, and determining the forwarding information of the first virtual link corresponding to the first link global label, by using the first attribute corresponding to the first link global label, The basic link corresponding to the first link global label forwards the first packet.
  • the first possible implementation manner of the third aspect in a second possible implementation manner of the third aspect, when the segment routing segment forwarding is performed, when one of the multiple forwarding devices
  • the forwarding device as the ingress forwarding device, determines that the received second packet is to pass through the basic link of the network topology, and needs to be forwarded according to the second attribute, and the packet needs to be added as the network topology ID.
  • Link ID, second attribute > assigned second link global label.
  • the attribute is a multi-protocol label switching tunnel engineering MPLS TE attribute.
  • the MPLS TE attribute includes a bandwidth, an explicit path, a color, a protection, a fast reroute FRR, and a shared risk chain.
  • the embodiment of the present invention provides a method for forwarding a packet, where the method is applied to a network system including at least one controller and multiple forwarding devices, where the multiple forwarding devices form multiple network topologies, and the method includes :
  • the forwarding information includes an outbound interface, a next hop information, and a specified attribute processing of the node corresponding to the global label of the node, and the node binding relationship is performed by the at least one controller according to the virtual node to the network topology.
  • the node global label is assigned to the base node in the network topology according to the attribute requirement, and the node global label is associated with the node relationship between the ⁇ network topology ID, the base node identifier, and the attribute> Transmitted to the plurality of forwarding devices; the global labels assigned to the nodes assigned to each virtual node are different.
  • the forwarding device searches for the first node according to the first node global label.
  • a label forwarding entry corresponding to the global label of the node thereby determining forwarding information of the first virtual node corresponding to the global label of the first node, and processing the first attribute corresponding to the global label of the first node, and the global label from the first node
  • the corresponding base node forwards the first packet.
  • the forwarding device A determines, as the ingress forwarding device, When the second packet to be sent is to pass through the basic node of the network topology and is to be forwarded according to the second attribute requirement, the packet needs to be added as ⁇ network topology ID, base node identifier, second attribute> The second node global label.
  • the attribute is a multi-protocol label switching tunnel engineering MPLS TE attribute.
  • the MPLS TE attribute includes one or more of a bandwidth, an explicit path, a color, a protection, a fast reroute FRR, and a shared risk link group SRLG.
  • the packet forwarding method, the controller, and the forwarding device in the embodiment of the present invention implement the virtualization of the network link and the node by using the IGP extension to distribute the global label, and then the MPLS virtual network can be easily implemented, because the MPLS global label identifier is used.
  • the network completely hides the physical details from the upper layer virtual network.
  • the upper layer network does not need to perceive the following types of interfaces such as Ethemet, POS, or Trunk.
  • These virtual nodes and links can be used according to the outbound interface of the existing routing/LSP forwarding, or can be used according to Source Routing proposed by Segment Routing. Because there is a concept of bandwidth and the like in the virtual link or node here, it is also possible to implement Segment Routing 0 with end-to-end QoS guarantee.
  • FIG. 1 is a schematic structural diagram of a network system according to an embodiment of the present invention
  • FIG. 2A is a schematic diagram of a link binding relationship table according to an embodiment of the present invention
  • FIG. 2B is a node binding relationship table according to an embodiment of the present invention
  • FIG. 3A is a schematic diagram of a link network topology forwarding table according to an embodiment of the present invention
  • FIG. 3B is a schematic diagram of a node network topology forwarding table according to an embodiment of the present invention
  • FIG. 4B is a schematic diagram of another node network topology forwarding table according to an embodiment of the present invention
  • FIG. 5A is a schematic flowchart of a method for forwarding a packet according to an embodiment of the present invention
  • FIG. 5B is a schematic flowchart of another method for forwarding a packet according to an embodiment of the present invention
  • FIG. 6 is a schematic diagram of a format of a TLV according to an example of implementing MPLS network virtualization by using 0SPF extension according to an embodiment of the present invention
  • FIG. 8 is an ISIS in accordance with an embodiment of the present invention
  • FIG. 9 is a schematic diagram of a format of a virtual link sub-TLV in an ISIS according to an embodiment of the present invention
  • FIG. 10 is a schematic diagram of another network system according to an embodiment of the present invention
  • FIG. 11 is a schematic structural diagram of another network system according to an embodiment of the present invention
  • FIG. 12 is a schematic structural diagram of another network system according to an embodiment of the present invention
  • IGP is a protocol that is used to exchange data flow channel information between gateways in an autonomous network system (for example, an autonomous network system within a local community). Internet Protocol (IP) or other network protocols often use these channel information to determine how to transmit data streams.
  • IP Internet Protocol
  • IGP includes: Routing Information Protocol (RIP), Open Shortest Path First (0SPF), Interior Gateway Routing Protocol (IGRP), Enhanced Interior Gateway Routing Protocol (Enhanced Interior) Gateway Routing Protocol (EIGRP) and Intermediate System to Intermediate System (IS-IS).
  • a "virtual link” is a logical link with certain attributes built on the basis of a basic link specifying a network topology (assumed to be the first network topology). After the virtual link is constructed, it can be used in the first network topology or in the second network topology built on the first network topology. Then on this basis, several concepts can be defined: "Base link” refers to the specified link in the network topology; “Virtual link” is built on the base link, with attribute A, or with attribute A The underlying link.
  • a virtual link having the attribute A may be constructed on the N basic links and a link global label may be allocated for the virtual link having the attribute A, or may be constructed on a basic link.
  • M links have virtual links of attribute B, and respectively assign different link global labels to the M virtual links having attribute B, where M and N are both natural numbers.
  • the basic link is a trunk port, it is possible to construct M virtual links with attribute C on the N basic links.
  • the base link can be one or more physical links or another virtual link or multiple virtual links.
  • a "virtual node” is a logical node having certain attributes built on the basis of some or some basic node devices of a specified network topology (assumed to be the first network topology). After the virtual node is constructed, it can be used in the first network topology or in the second network topology built on the first network topology. Then on this basis you can also define several concepts: “Base node” refers to the specified one or more node devices in the network topology; "Virtual node” is built on the base node device, with attribute A, or The base node with attribute A.
  • a virtual node having attribute A may be constructed on the N base nodes and a node global label may be assigned to the virtual node having the attribute A, or M attributes B may be constructed on a base node.
  • the virtual node and assign different node global labels to the M virtual nodes with attribute B, where M and N are both natural numbers.
  • Foundation A node can be one or more physical node devices, such as a forwarding device, or one or more virtual nodes.
  • a network system includes at least one controller and multiple forwarding devices, where the multiple forwarding devices form a plurality of network topologies, and the multiple network topologies may include a physical network topology and Virtual network topology.
  • the at least one controller is configured to allocate a link global label, such as a virtual link, according to an attribute requirement of the basic link in the network topology according to different attribute requirements of the virtual link to the basic link in the network topology.
  • the basic link requirement attribute of the first network topology with the topology ID being ⁇ is ⁇
  • the link global label is allocated according to the attribute ⁇ for the basic link in the first network topology.
  • the link global label L-GL ⁇ represents a virtual link in the first network topology, which is constructed on the base link in the first network topology, with attribute A.
  • the network topology ID, the link global label, the basic link identifier, and the attribute can form a binding relationship between a link global label and a ⁇ network topology ID, a basic link identifier, and an attribute>, and the binding relationship is as follows. Called "link binding relationship.” Specifically, if the attribute is a bandwidth attribute in the MPLS TE attribute, the link binding relationship is a binding relationship between the link global label and the ⁇ network topology ID, the basic link identifier, and the bandwidth>, and the link global label A virtual link is represented that is built on the underlying link of the first network topology with a specified bandwidth.
  • the controller may be an IGP controller, and the attribute may be an MPLS TE attribute, where the MPLS TE attribute may include bandwidth, explicit path, color, protection, FRR (Fast ReRoute), SRLG ( One or more of the Shared Risk Link Groups,
  • the forwarding device may be an IGP client, and the IGP client may be a router, a switch, or a server.
  • the at least one controller sends the link binding relationship to the multiple forwarding devices.
  • the link has a certain attribute requirement, for example, the required bandwidth is 1G. Therefore, the controller needs to allocate a link global label according to the bandwidth requirement of the basic link in the network topology (such as the first network topology), and the link global label. Representing the virtual link, the A virtual link is built on the underlying link of the first network topology with a specified bandwidth.
  • the link global labels assigned to each virtual link are different. That is, the link global label assigned by the controller to the virtual link with attribute A constructed on the base link of the network topology with the topology ID TIDi is L-GL to the virtual network topology with the topology ID TIDi.
  • the link global label of the virtual link link assignment with attribute B constructed on the base link is L-GL 2 , L-GL, which is different from L-GL 2 .
  • the plurality of forwarding devices are configured to receive the link binding relationship, and generate, according to the link binding relationship, a label forwarding entry that includes a mapping relationship between the global label of the link and the virtual link forwarding information, where the virtual link is
  • the forwarding information includes a basic link corresponding to the link global label and a specified attribute processing.
  • the forwarding device searches for the corresponding label forwarding entry according to the first link global label, thereby determining the virtual chain.
  • the forwarding information of the path is forwarded by the specified attribute, and the packet is forwarded from the basic link corresponding to the global label of the link.
  • the forwarding device A determines as the ingress forwarding device that the packet is to pass through the basic link of the network topology, and needs to be forwarded according to the attribute request, the packet needs to be added to the packet.
  • Link global label of the virtual link may include: a link global label, a basic link, and an attribute requirement.
  • the forwarding device receives the packet, it obtains the global label of the link carried in the packet, and forwards the packet according to the specified attribute according to the basic link corresponding to the global label of the link.
  • FIG. 3A the label forwarding entry corresponding to the link global label may include: a link global label, a basic link, and an attribute requirement.
  • the link virtual network topology forwarding table may include a link global label and a basic link. , QoS queue ID.
  • the QoS queue here is generated according to attributes such as bandwidth, can provide a guarantee of the specified bandwidth, and is identified by the QoS queue ID.
  • the forwarding device receives the packet, it obtains the global label of the link carried in the packet (for example, the global label of the link is LG), and the basic link and the QoS attribute corresponding to the global label of the link. Forward the message. Specifically, since the QoS attribute is corresponding, therefore, it is required The message is forwarded according to the QoS queue specified by the QoS queue ID corresponding to the QoS attribute.
  • the global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the global label may be composed of multiple local labels, that is, each global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual network topology, and two or more local labels assigned to a virtual network topology form a global label, and the global label formed is used to identify the virtual label. Network topology.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • the node is represented as a node in the network topology, and the controller may allocate a node according to the attribute requirement according to the forwarding device in the network topology according to different attribute requirements of the virtual node to the basic node in the network topology.
  • a global label for example, in the first network topology with the topology ID being TIDi, requires that the attribute of a node is A, and then a forwarding device in the first network topology allocates a global label of the node according to the attribute A.
  • the node global label represents a virtual node having a first network topology, the virtual node being built on one or some of the forwarding devices in the first network topology, having attributes.
  • the network topology ID, the node global label, the node identifier, and the attribute may constitute a binding relationship between a node global label and a ⁇ virtual network topology ID, a base node identifier, and an attribute>, which is hereinafter referred to as a "node”.
  • Binding relationship Specifically, if the attribute is a bandwidth attribute in the MPLS TE attribute, the binding relationship may be a node binding relationship between the node global label and the ⁇ network topology ID, node identifier, bandwidth>, and the global label of the node indicates A virtual node that is built on the forwarding device of the first network topology and has a specified bandwidth.
  • the controller may be an IGP controller, and the attribute may be an MPLS TE attribute, where the MPLS TE attribute may include bandwidth, explicit path, color, protection, FRR (Fast ReRoute), SRLG ( One or more of the shared risk link group, the forwarding device may be an IGP client, and the IGP client may be a router, Switch or server.
  • the at least one controller sends the node binding relationship to the multiple forwarding devices. For example, there are N forwarding devices in the autonomous system to form X network topologies. For one or more forwarding devices, the virtual node may require one or some forwarding devices in the network topology (such as the first network topology).
  • the controller needs to assign a node global label to one or some forwarding devices in the network topology (such as the first network topology), the node global label represents the A virtual node, the virtual node being built on some or some of the forwarding devices of the first network topology, having a specified bandwidth.
  • the link global labels assigned to each virtual link are different.
  • the global labels assigned to each virtual node are different.
  • SP the node global label of the virtual node with attribute A built on the designated forwarding device assigned by the controller to the network topology with the topology ID TIDi is assigned to the N-GL for the specified forwarding device of the network topology with the topology ID TIDi.
  • the node global label of the virtual node with attribute A is N-GL 2 , and N-GL! is different from ⁇ 01 ⁇ 2 .
  • the plurality of forwarding devices are configured to receive the node binding relationship, and generate, according to the node binding relationship, a label forwarding entry that includes a mapping relationship between the global label of the node and the forwarding information of the virtual node, where the virtual node forwarding information includes the The outbound interface and next hop information of the base node corresponding to the global label of the node and the specified attribute processing.
  • the forwarding device searches for the label forwarding entry corresponding to the global label of the first node according to the global label of the first node, thereby The forwarding information of the virtual node is determined, and the packet is forwarded from the outbound interface and the next hop of the global node corresponding to the global label of the node.
  • the forwarding device A determines as the ingress forwarding device that the packet is to pass through the base node of the network topology, and needs to be forwarded according to the attribute request, the device needs to be added to the packet.
  • the node global label of the virtual node.
  • the first node virtual network topology forwarding entry may include: a node global label, an outbound interface and a next hop reaching the base node, and an attribute request.
  • the forwarding device receives the packet, it obtains the global label of the node carried in the packet, and forwards the packet according to the outbound interface, next hop, and attribute of the global label mapping of the node.
  • the attribute is a bandwidth attribute, that is, a quality of service (QoS) guarantee is required
  • the node virtual network topology forwarding entry may include a node global label, an outbound interface, and a lower One hop and QoS queue ID.
  • the QoS queue here is generated according to attributes such as bandwidth, can provide a guarantee of the specified bandwidth, and is identified by the QoS queue ID.
  • the forwarding device receives the packet, it obtains the global label of the node carried by the packet.
  • the global label of the node is based on the outbound interface 1, the next hop node 1, and the QoS corresponding to the global label NG of the node.
  • the attribute forwards the packet.
  • the NG corresponds to the QoS attribute
  • the QoS queue specified by the QoS queue ID corresponding to the QoS attribute needs to be forwarded.
  • the link identifier in the embodiment of the present invention is generally The lower link identifier is represented by the address of the two ends of the link.
  • the node identifier is represented by the loopback interface address.
  • the virtual link can be identified by using the global label of the link.
  • the virtual node can use the global label of the node to identify This actually forms a nest, which is to continue further virtualization on the virtualized link and the virtualized node.
  • the base link of network topology 1 (such as link 1)
  • the controller in network topology 1 A virtual link of the first link global label (represented by the label L1) may be assigned to the upper layer network topology 2 of the network topology 1 (Represented by XXX), if network topology 2 needs to continue to build a virtual link YYY assigned to the upper layer network topology 3 of network topology 2 on virtual link XXX, then network topology 2 can assign a second link global label (using Label L2 is used to indicate.)
  • the link of network topology 1 can provide end-to-end 1G bandwidth transmission capability, and network topology 1 hopes to provide 100M bandwidth transmission capability for upper layer network topology 2 on link 1, then network topology
  • the controller in 1 assigns the link global label L1 to the upper layer network topology 2
  • the generated link binding relationship is the binding relationship between the link global label and ⁇ network topology 1, link identifier 1, 100M>.
  • the network topology 2 obtains the virtual link 1 corresponding to L1, that is, the transmission capability of 100M on the link 1 is obtained from the network topology 1.
  • the network topology 3 provides a bandwidth of 50 M, and the controller of the network topology 2 assigns a link global label L2 to the upper network topology 3 of the network topology 2, and the link global label L2 identifies the virtual chain of the network topology 2.
  • the network topology 3 provides 50M transmission capability.
  • the link binding relationship of the forwarding device to the controller is the binding between the link global label L1 and ⁇ network topology 2, link identifier 1, 50M>.
  • Relationship providing 50M transmission capability for network topology 3 on virtual link link 1.
  • the method of assigning the global label of the node to the forwarding device and forwarding the packet according to the global label of the node is similar to the case of the global label of the link, and details are not described herein.
  • the global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the global label may be composed of multiple local labels, that is, each global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual network topology, and two or more local labels assigned to a virtual network topology form a global label, and the global label formed is used to identify the virtual label. Network topology.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • the following embodiment is used as an example for the basic link in the network topology to allocate the global label of the link according to the attribute requirement.
  • the processing method for the forwarding device to allocate the global label of the node according to the attribute requirement is similar.
  • the method for forwarding a packet in the embodiment of the present invention is applied to a network system including at least one controller and multiple forwarding devices, where the multiple forwarding devices form multiple network topologies,
  • the network topology can include a physical network topology and a virtual network topology.
  • the method includes:
  • the binding relationship between the global label of the receiving link and the ⁇ network topology ID, the basic link identifier, and the attribute> (the binding relationship is hereinafter referred to as a "link binding relationship"), and is bound according to the link.
  • the relationship generates a label forwarding entry that includes a mapping relationship between the link global label and the virtual link forwarding information, where the virtual link forwarding information includes a basic link corresponding to the link global label and a specified attribute processing.
  • the link binding relationship is configured by the at least one controller to perform different attribute requirements on the basic link in the network topology according to the virtual link, and allocate the chain according to the attribute requirement for the basic link in the network topology.
  • the link global label assigned to each virtual link is different, the link global label representing the virtual link, the virtual link being built on the base link of the first network topology, with specified attributes.
  • S512A Receive a link binding relationship between the global label of the link and the virtual link, and generate a label forwarding entry that includes a mapping relationship between the global label of the link and the virtual link forwarding information according to the link binding relationship, where the virtual
  • the link forwarding information includes a basic link corresponding to the link global label and a specified attribute processing.
  • the forwarding device searches for the corresponding global label of the first link according to the first link global label.
  • the label forwarding entry determines the forwarding information of the virtual link corresponding to the first link global label, and is processed by the first attribute corresponding to the first link global label, and the basic chain corresponding to the first link global label The path forwards the first packet.
  • the forwarding device A determines, as the ingress forwarding device, that the received second packet is to pass through the basic link of the network topology, and needs to be forwarded according to the second attribute requirement,
  • the second packet is added to the ⁇ network topology ID, the basic link identifier, and the second attribute> the assigned second link global label.
  • the controller sends the link binding relationship to the forwarding device, where: the at least one controller is extended by an IGP extension or a Path Computation Element Communication Protocol (PCEP) Send the link binding relationship to the forwarding device in the IGP domain.
  • PCEP Path Computation Element Communication Protocol
  • a method for forwarding a message is applied to a network system including at least one controller and multiple forwarding devices, where the multiple forwarding devices form multiple network topologies.
  • S512B Generate, according to the node binding relationship, a label forwarding entry that includes a mapping relationship between the global label of the node and the forwarding information of the virtual node, where the virtual node forwarding information includes the global node The outbound interface corresponding to the label, the next hop information, and the specified attribute processing corresponding to the label; the node binding relationship is determined by the at least one controller according to different attributes of the virtual node to the basic node in the network topology.
  • the global label assigned to the node assigned to each virtual node is different.
  • the forwarding device searches for the label forwarding entry corresponding to the global label of the first node according to the global label of the first node, thereby determining the The forwarding information of the first virtual node corresponding to the global label of the first node is processed by the first attribute corresponding to the global label of the first node, and is forwarded according to the outbound interface and the next hop information of the basic node corresponding to the global label of the first node.
  • the first message When the first packet received by the forwarding device carries the global label of the first node, the forwarding device searches for the label forwarding entry corresponding to the global label of the first node according to the global label of the first node, thereby determining the The forwarding information of the first virtual node corresponding to the global label of the first node is processed by the first attribute corresponding to the global label of the first node, and is forwarded according to the outbound interface and the next hop information of the basic node corresponding to the global label of the first node.
  • the first message When the first packet received
  • the forwarding device A determines, as the ingress forwarding device, that the received second packet passes through the base node of the network topology, and needs to be forwarded according to the second attribute requirement
  • the message is added to ⁇ Network Topology ID, Base Node ID, Second Attribute> Assigned Second Node Global Label.
  • the attribute is a multi-protocol label switching tunnel engineering MPLS TE attribute.
  • the MPLS TE attribute includes one or more of bandwidth, explicit path, color, protection, fast reroute FRR, and shared risk link group SRLG.
  • FIG. 6 is an example of Open Shortest Path First (OSPF) extension to implement MPLS network virtualization.
  • OSPF Open Shortest Path First
  • TLV Tag-Length-Value
  • the binding relationship between the ID, the MPLS TE attribute, and the MPLS global label is as follows.
  • the link identifier and the global label of the link are used as an example.
  • the node identifier and the global label of the node are similar.
  • the MPLS Label is used to indicate the MPLS global label value assigned to the virtual link.
  • an Opaque LSA (using the 10th class Opaque LSA) carrying the MPLS global label and ⁇ network topology ID, link identifier, MPLS TE attribute> and the MPLS global label.
  • the format of the LSA is as shown in Figure 6, including one or Multiple MPLS Labels and other content. If the MPLS Label is a link global label assigned to a virtual link with a certain attribute in the network topology, the MPLS Label is a global label.
  • the LSA in FIG. 6 may further include one or more TLVs, which are used to indicate the binding relationship between the ⁇ network topology ID, the base link identifier, the MPLS TE attribute>, and the MPLS global label.
  • the TLV includes a TLV value field, and the value of the TLV value field represents a network topology ID, a link identifier, and an MPLS TE attribute corresponding to the MPLS global label. That is, the LSA shown in FIG.
  • TLV1 represents the network topology ID corresponding to the MPLS global label
  • TLV2 represents the MPLS global label corresponding Link ID
  • TLV3 indicates the MPLS TE attribute corresponding to the MPLS global label.
  • the IS-IS Label Mapping TLV includes a virtual sub-TLV (Label sub-TLV) and a forwarding equivalence class sub-TLV (FEC sub-TLV), where the virtual node sub-TLV is used to carry the node.
  • Label sub-TLV label sub-TLV
  • FEC sub-TLV forwarding equivalence class sub-TLV
  • the virtual node sub-TLV includes an MPLS Label, a Multi-Topology ID, a Node Address, and an Attributes of Virtual Node.
  • the value of the multi-topology ID field is used to indicate the virtual network topology ID where the virtual node is located, and the value of the multi-topology ID field may be 32 bits.
  • the value of the node address field is used to represent the node identifier, and the value of the node address field can be 32 bits or 128 bits.
  • the value of the virtual node attribute field is used to represent the attribute of the virtual node, and the value of the value of the virtual node attribute field is variable.
  • the value of the MPLS Label field is used to represent the node label assigned to the virtual node with certain attributes in the virtual network topology. If the MPLS Label assigns a node global label to a virtual node with a certain attribute in the network topology, the MPLS Label is a global label.
  • the virtual link sub-TLV implemented by the ISIS extension is used to carry the link MPLS.
  • the link identifier can be represented by the node address at both ends of the link, that is, the link end source address and the destination end address can be used to identify the link.
  • the virtual link sub-TLV includes MPLS Label, Multi-Topology ID, Source-end Address, and Destination End Address. Virtual Attributes of Attributes of Virtual Node), Class of Type and Bandwith.
  • the value of the multi-topology ID field is used to indicate the virtual network topology ID where the virtual link is located, and the value of the multi-topology ID field may be 32 bits.
  • the value of the source endpoint address field is used to indicate the source endpoint identifier, and the value of the source endpoint address field may be a 32-bit IPv4 address or a 128-bit IPv6 address.
  • the value of the destination endpoint address field is used to indicate the destination endpoint identifier.
  • the value of the destination endpoint address field may be a 32-bit IPv4 address or a 128-bit IPv6 address.
  • the value of the virtual node attribute field is used to represent the attribute of the virtual node, and the value of the value of the virtual node attribute field is variable.
  • the value of the MPLS Label field is used to represent the node label assigned to the virtual node with certain attributes in the virtual network topology. If the MPLS Label allocates a node global label to a virtual node having a certain attribute in the virtual network topology, the MPLS Label is a global label; the global label stack is used to identify a virtual node having a certain attribute in the virtual network topology.
  • the level type field indicates the bandwidth level of the virtual link. The value of the bandwidth domain represents the bandwidth of the virtual link.
  • the global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the global label may be composed of multiple local labels, that is, each global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual network topology, and two or more local labels assigned to a virtual network topology form a global label, and the global label formed is used to identify the virtual label. Network topology.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • virtual links and nodes can participate in the shortest path priority of common routes.
  • the generated forwarding entries include: Network topology ID (using global label T), IP address, mask, and global label value.
  • the meaning of the forwarding entry here is that the global label value corresponding to the forwarding is found according to the destination address and the mask, and the label forwarding entry corresponding to the global label value includes the forwarding information of the virtual link or the virtual node corresponding to the global label.
  • the forwarding information of the virtual link or virtual node has been described in detail above and will not be described here. .
  • the generated forwarding entry may also include a network topology ID (represented by a global label T), an MPLS ingress label, and a Next Hop Label Forwarding Entry (NHLFE), where the NHLFE includes a label, a label operation, and Global tag value.
  • the meaning of the forwarding entry here is that the global label value corresponding to the forwarding is found according to the MPLS ingress label, and the label forwarding entry corresponding to the global label value includes the forwarding information of the virtual link or the virtual node corresponding to the global label.
  • the forwarding information of the virtual link or the virtual node has been described in detail above, and details are not described herein again. .
  • SID SID
  • the SID is the abbreviation of the Segment ID, which is actually the global tag value.
  • the link global label and the node global label in the example of the present invention may represent virtual links and virtual nodes with bandwidth guarantees.
  • IP address mask -> SID (LI) SID (N1) SID (L2) SID (N2) >- Note: The entry here indicates that the index is indexed to a label stack based on the IP address and mask.
  • the label stack represents the representation. A combination of the virtual link and the global label of the node, that is, the virtual link and the virtual node corresponding to the global label values need to be sequentially passed until the corresponding destination IP address is reached.
  • Topology N represented by the global label T
  • the entry here indicates that the index is indexed to a label stack based on the SID (L/T) (ie, the MPLS label).
  • the tag stack represents a combination of global tags representing the virtual link and the node, that is, the virtual link represented by the global tag SID (L/T) corresponds to a set of virtual links or nodes.
  • the virtual link or virtual node identified by the SID has a bandwidth attribute, that is, there is QoS guarantee, so that the end-to-end path of the combination of the virtual link and the virtual node has quality of service guarantee, that is, the end-to-end QoS is constructed. Guaranteed segment routing Segment Routing.
  • a global label identifying the topology in the packet is used to identify different forwarding instances in the forwarding device of the basic network.
  • a network system in an embodiment of the present invention includes at least one controller and a plurality of forwarding devices, where the plurality of forwarding devices constitute a plurality of network topologies, and the plurality of network topologies may include a physical network topology. And virtual network topology.
  • the controller includes: a link global label assigning module 1010 and a link binding relationship sending module 1012, where the link global label assigning module 1010 is configured to use different attributes of the basic link in the network topology according to the virtual link.
  • the basic link in the network topology Requiring, for the basic link in the network topology, to allocate a link global label according to the attribute requirement, for example, the basic link requirement attribute of the first network topology with the topology ID being TIDi is A, where the first network topology is The base link assigns the link global label L-GL 1 according to attribute A.
  • the link global label represents a virtual link in the first network topology, and the virtual link is the base link in the first network topology.
  • the network topology ID, the link global label, the link identifier, and the attribute may form a binding relationship between a link global label and a ⁇ network topology ID, a link identifier, and an attribute>, which is hereinafter referred to as a binding relationship.
  • Link binding relationship Specifically, if the attribute is a bandwidth attribute in the MPLS TE attribute, the link binding relationship is a binding relationship between the link global label and the ⁇ network topology ID, link identifier, bandwidth>, and the link global label indicates A virtual link is constructed on the link of the first network topology with a specified bandwidth. Controller virtualized for each virtual link The global nodes are different.
  • the link binding relationship sending module 1012 is configured to send the link binding relationship formed by the link global label allocation module 1010 to the plurality of forwarding devices.
  • the forwarding device includes: a receiving module 1020, a label forwarding entry generating module 1022, and a forwarding module 1024.
  • the receiving module 1020 is configured to receive a link binding relationship between the global label of the link and the virtual link.
  • the label forwarding entry generating module 1022 is configured to generate, according to the link binding relationship, a label forwarding entry that includes a mapping relationship between the link global label and the virtual link forwarding information, where the virtual link forwarding information includes the link
  • the global link corresponds to the underlying link and the specified attribute processing.
  • the forwarding module 1024 is configured to: when the first packet received by the forwarding device carries the link global label (such as the first link global label), the forwarding module 1024 searches for the corresponding label according to the first link global label.
  • the first label forwarding entry determines the forwarding information of the virtual link corresponding to the first link global label, and performs the attribute processing corresponding to the first link global label, and the basic chain corresponding to the first link global label The road forwards the message.
  • the forwarding device may further include a link label adding module 1026, when the forwarding device is forwarded by the segment routing, when the forwarding device A (one of the multiple forwarding devices) is determined as the ingress forwarding device, the received number is received.
  • the link label adding module 1026 adds the second packet to the network topology ID and the basic link identifier. Second attribute > Assigned second link global label.
  • the link global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the link global label may be composed of multiple local labels, that is, each link global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual link, and two or more local labels assigned to a virtual link form a link global label, and the formed link global label is used to Identify the virtual link.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router -
  • a network system in an embodiment of the present invention includes at least one controller and a plurality of forwarding devices, where the plurality of forwarding devices form a plurality of network topologies, and the plurality of network topologies may include a physical network topology. And virtual network topology.
  • the controller includes: a first processor 1110 and a first interface 1112, where the first processor 1110 is configured to use different attributes of the basic link in the network topology according to the virtual link, where the network topology is The basic link assigns a link global label according to the attribute requirement. For example, if the basic link requirement attribute of the first network topology with the topology ID is TIDi is A, the basic link in the first network topology is allocated according to the attribute A.
  • the global label L-GL such that the link global label LG represents a virtual link in the first network topology, the virtual link being constructed on the base link in the first network topology, with attribute A.
  • the network topology ID, the link global label, the link identifier, and the attribute may form a binding relationship between a link global label and a ⁇ network topology ID, a link identifier, and an attribute>, which is hereinafter referred to as a binding relationship. "Link binding relationship”.
  • the link binding relationship is a binding relationship between the link global label and the ⁇ network topology ID, link identifier, bandwidth>
  • the link global label indicates A virtual link is constructed on the link of the first network topology with a specified bandwidth.
  • the first interface 1112 is configured to send the link binding relationship formed by the first processor 1110 after the link global label is allocated to the multiple forwarding devices.
  • the forwarding device includes: a second interface 1120, a second processor 1122, and a third processor 1124.
  • the second interface 1120 is configured to receive a link binding relationship between the global label of the link and the ⁇ network topology ID, the basic link identifier, and the attribute>.
  • the second processor 1122 is configured to generate, according to the link binding relationship, a global label including a link A label forwarding entry of a mapping relationship of the virtual link forwarding information, where the virtual link forwarding information includes a basic link corresponding to the global label of the link and a specified attribute processing.
  • the third processor 1124 is configured to: when the packet received by the forwarding device carries a link global label (such as a first link global label), the third processor 1124 searches according to the first link global label. Determining the forwarding information of the virtual link corresponding to the first link global label by using the first label forwarding entry corresponding to the first link global label, and performing the first attribute processing corresponding to the first link global label, Forwarding the packet from the basic link corresponding to the first link global label.
  • the forwarding device may further include a fourth processor 1126, when forwarding the segment routing segment, when the forwarding device A (one of the multiple forwarding devices) determines, as the ingress forwarding device, the received second report
  • the fourth processor 1126 adds the second packet to the network topology ID, the basic link identifier, and the second attribute. > Assigned second link global label.
  • the link global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the link global label may be composed of multiple local labels, that is, each link global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual link, and two or more local labels assigned to a virtual link form a link global label, and the formed link global label is used to Identify the virtual link.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • a network system includes at least one controller and a plurality of forwarding devices, where the plurality of forwarding devices constitute a plurality of network topologies, and the plurality of network topologies may include physical Network topology and virtual network topology.
  • the controller includes: a node global label assignment module 1210 and a node binding relationship sending module 1212, where The node global label allocation module 1210 is configured to: according to different attribute requirements of the virtual node to the basic node (some or some forwarding devices) of the multiple network topologies, according to the attribute requirements of the basic node in the network topology The global label of the node is allocated.
  • the node global label NG is allocated according to the attribute A for a node in the first network topology.
  • the node global label NG represents a virtual node in the first network topology, the virtual node being built on one or some of the forwarding devices in the first network topology, having attributes.
  • the network topology ID, the node global label, the node identifier, and the attribute may constitute a binding relationship between a node global label and the ⁇ network topology ID, node identifier, attribute>, which is hereinafter referred to as "node binding.”relationship".
  • the node binding relationship is a binding relationship between the node global label and the ⁇ network topology ID, node identifier, bandwidth>, and the global label of the node indicates a virtual node.
  • the virtual node is constructed on the forwarding device of the first network topology and has a specified bandwidth.
  • the node global labels assigned to the plurality of virtual nodes are different.
  • the node binding relationship sending module 1212 is configured to send the node binding relationship formed by the node global label allocating module 1210 to the node forwarding label.
  • the forwarding device includes: a receiving module 1220, a label forwarding entry generating module 1222, and a forwarding module 1224.
  • the receiving module 1220 is configured to receive a node binding relationship between the global label of the node and the ⁇ network topology ID, the base node identifier, and the attribute>.
  • the label forwarding entry generating module 1222 is configured to generate, according to the node binding relationship, a label forwarding entry that includes a mapping relationship between the global label of the node and the forwarding information of the virtual node, where the virtual node forwarding information includes a basic node corresponding to the global label of the node. (forwarding device) and the specified attribute processing.
  • the forwarding module 1224 is configured to: when the packet received by the receiving module 1220 carries a node global label (such as a first node global label), the forwarding module 1224 searches for the first node according to the first node global label. a label forwarding entry corresponding to the global label of the node, thereby determining forwarding information of the first virtual node corresponding to the global label of the first node, and processing the first attribute corresponding to the global label of the first node, and the global label from the first node Corresponding to the base node
  • the outbound interface and the next hop information are processed according to the first attribute corresponding to the global label of the first node.
  • the forwarding device may further include a node label adding module 1226, when forwarding the segment routing segment forwarding, when the forwarding device A (one of the plurality of forwarding devices) determines, as the ingress forwarding device, the received second When the packet is to pass through the basic node of the network topology and is to be forwarded according to the second attribute requirement, the node label adding module 1226 adds the second packet to the ⁇ network topology ID, node identifier, second attribute> assignment. The node global label of the second virtual node.
  • the global label may be a single global label selected in a global label space shared by all forwarding devices.
  • the global label may be composed of multiple local labels, that is, each global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual network topology, and two or more local labels assigned to a virtual network topology form a global label, and the global label formed is used to identify the virtual label. Network topology.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • a network system in an embodiment of the present invention includes at least one controller and a plurality of forwarding devices, where the plurality of forwarding devices constitute a plurality of network topologies, and the plurality of network topologies may include a physical network topology. And virtual network topology.
  • the controller includes: a first processor 1310 and a first interface 1312, where the first processor 1310 is configured to: according to different attribute requirements of the virtual node to the basic node in the network topology, in the network topology
  • the base node allocates the node global label according to the attribute requirement.
  • the node of the first network topology requires the attribute A, and the node in the first network topology allocates the node global label NG according to the attribute A.
  • the node global tag represents a virtual node in the first network topology, the virtual node being built on a node in the first network topology with attributes.
  • the network topology ID, The node global label, node identifier, and attribute may form a binding relationship between a node global label and a ⁇ network topology ID, a node identifier, and an attribute>, which is hereinafter referred to as a "node binding relationship.”
  • the attribute is a bandwidth attribute in the MPLS TE attribute
  • the node binding relationship is a binding relationship between the node global label and the ⁇ network topology ID, node identifier, bandwidth>
  • the global label of the node indicates a virtual node.
  • the virtual node is built on a node of the first network topology with a specified bandwidth.
  • the first interface 1312 is configured to send the node binding relationship formed by the first processor 1310 to the node global label to the multiple forwarding devices.
  • the forwarding device includes: a second interface 1320, a second processor 1322, and a third processor 1324.
  • the second interface 1320 is configured to receive a node binding relationship between the global label of the node and the ⁇ network topology ID, node identifier, and attribute>.
  • the second processor 1322 is configured to generate, according to the node binding relationship, a label forwarding entry that includes a mapping relationship between the global label of the node and the forwarding information of the virtual node, where the forwarding information of the virtual node includes a basic node corresponding to the global label of the node. Device) and specified attribute handling.
  • the third processor 1324 is configured to: when the packet received by the second interface 1320 carries a node global label (such as a first node global label), the third processor 1324 searches for the global label according to the first node. a first label forwarding entry corresponding to the global label of the first node, so as to determine forwarding information of the virtual node corresponding to the global label of the first node, and processing the first attribute corresponding to the global label of the first node, from the first node globally The outbound interface and the next hop information forwarding packet of the basic node that reaches the basic node corresponding to the label.
  • a node global label such as a first node global label
  • the forwarding device may further include a fourth processor 1326, when the forwarding device A forwards as the ingress forwarding device, determines that the received second packet is to pass the network topology.
  • the fourth processor 1326 adds the second packet to the network topology ID, the base node identifier, and the second attribute, the assigned second node global label.
  • the global label may be selected from a global label space shared by all forwarding devices. A single global label of choice.
  • the global label may be composed of multiple local labels, that is, each global label includes two or more local labels.
  • the controller allocates two or more local labels for each virtual network topology, and two or more local labels assigned to a virtual network topology form a global label, and the global label formed is used to identify the virtual label. Network topology.
  • the forwarding device is a router or a switch.
  • the controller may be a server or a router.
  • the packet forwarding method, the controller, and the forwarding device in the embodiment of the present invention implement the virtualization of the network link and the node by using the IGP extension to distribute the global label, and then the MPLS virtual network can be easily implemented, because the MPLS global label identifier is used.
  • the network completely hides the physical details from the upper layer virtual network.
  • the upper layer network does not need to perceive the following types of interfaces such as Ethemet, POS, or Trunk. This is more secure and the virtual network is easier to operate.
  • These virtual nodes and links can be used according to the outbound interface of the existing routing/LSP forwarding, or can be used according to Source Routing proposed by Segment Routing.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in various embodiments of the present invention may be integrated into one processing unit
  • each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the detector, the transmitter, the receiver, and the acquisition unit can all be implemented by a general-purpose CPU or an Application Specific Integrated Circuit (ASIC) or a Field-Programmable Gate Array (FPGA).
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the software functional units described above are stored in a storage medium and include instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform portions of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a USB flash drive, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program codes. Medium.

Landscapes

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

Abstract

一种网络***包括至少一个控制器和多个转发设备,所述多个转发设备组成多个网络拓扑,所述至少一个控制器,用于根据虚拟链路对所述网络拓扑中基础链路的不同属性要求,为所述网络拓扑中的该基础链路按照属性要求分配链路全局标签;并将所述链路全局标签与<网络拓扑ID,基础链路标识,属性>之间的链路绑定关系发送给所述多个转发设备;分配给每个虚拟链路的链路全局标签不同;所述多个转发设备,用于接收所述链路绑定关系,根据该链路绑定关系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签转发表项,该虚拟链路转发信息包括所述链路全局标签对应的基础链路和指定的属性处理。

Description

转发报文的方法、 控制器、 转发设备和网络*** 技术领域
本发明涉及一种转发报文的方法、 控制器、 转发设备和***。 背景技术
现在虚拟运营商正在兴起, 他们通过基础网络运营商提供的虚拟网络 进行业务运营。 从虚拟运营商的角度, 他们希望能够看到一个独立的网络进行管理维 护并进行业务经营, 但是从基础网络运营商的角度, 他们不希望把基础物 理网络的细节暴露给虚拟运营商。 这样需要网络有更好的方式来实现虚拟 化。 网络的基本构成是链路和节点, 因此如果构建需要网络, 需要有更好 的对于网络节点和链路进行虚拟化的方法。
现在公认的比较好的实现虚拟网络的方法是通过 MPLS技术。 VPN本 身就有虚拟网络的概念, 并且得到大量的部署。 虚拟运营商所需要的不仅 仅是边缘业务网络的虚拟化, 而是要在基础的物理网络上构建虚拟的基础 网络进行运营。
当前虚拟网络运营商 (VNO) 所受的限制:
1、 无法获得内部节点的流量和数据信息, 不能开发增值模型
2、传统 VPN只允许 VNO看到一个大 Pipe, 无法控制和管理内部节点
3、 传统技术无法实现节点和链路虚拟化、 无法提供灵活的虚拟网络
4、 不开放可编程
5、 不能集中控制
现有的网络虚拟化技术对于网络节点和链路虚拟化的粒度太粗, 无法 形成完整的虚拟网络。 发明内容
本发明实施例的目的在于提供一种转发报文的方法、 设备和网络***, 以改善虚拟化网络的效率。 为达到上述目的, 本发明的实施例采用如下技术方案。 第一方面, 本发明实施例提供一种网络***, 该网络***包括至少一 个控制器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 所述至少一个控制器, 用于根据虚拟链路对所述网络拓扑中基础链路 的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路 全局标签; 并将所述链路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 > 之间的链路绑定关系发送给所述多个转发设备; 分配给每个虚拟链路的链 路全局标签不同; 所述多个转发设备, 用于接收所述链路绑定关系, 根据该链路绑定关 系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签转发表 项, 该虚拟链路转发信息包括所述链路全局标签对应的基础链路和指定的 属性处理。 在第一方面的第一种可能的实施方式中, 所述链路全局标签包括两个 或两个以上的标签。 结合第一方面、 第一方面的第一种可能的实施方式, 在第一方面的第 二种可能的实施方式中, 所述控制器包括: 链路全局标签分配模块和链路 绑定关系发送模块, 其中 所述链路全局标签分配模块, 用于根据虚拟链路对所述网络拓扑中基 础链路的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分 配链路全局标签, 所述控制器分配给每个虚拟链路的虚拟全局节点不同; 所述链路绑定关系发送模块, 用于将所述链路全局标签分配模块分配 链路全局标签后形成的所述链路绑定关系发送给所述多个转发设备。 结合第一方面、 第一方面的第一种或第二种可能的实施方式, 在第一 方面的第三种可能的实施方式中, 所述转发设备包括: 接收模块、 标签转 发表项生成模块和转发模块, 其中, 所述接收模块, 用于接收所述链路全局标签和虚拟链路的链路绑定关 系; 所述标签转发表项生成模块, 用于根据该链路绑定关系生成包括链路 全局标签与虚拟链路转发信息的映射关系的标签转发表项; 所述转发模块, 用于当转发设备收到的第一报文中携带有第一链路全 局标签时, 该转发模块根据该第一链路全局标签查找到该第一链路全局标 签对应的第一标签转发表项, 从而确定该第一链路全局标签对应的第一虚 拟链路的转发信息, 经过该第一链路全局标签对应的属性处理, 从该第一 链路全局标签对应的基础链路转发该第一报文。 结合第一方面的第三种可能的实施方式, 在第一方面的第四种可能的 实施方式中, 所述转发设备还包括链路标签增加模块,在分段路由 Segment Routing转发时, 当所述多个转发设备中的一个转发设备作为入口转发设备 确定收到的第二报文要经过所述网络拓扑的所述基础链路, 并要按照第二 属性要求转发时, 所述链路标签增加模块为该第二报文增加为<网络拓扑 ID、 基础链路标识、 第二属性>分配的第二链路全局标签。 结合第一方面、 第一方面的第一种可能的实施方式, 在第一方面的第 五种可能的实施方式中, 所述控制器包括: 第一处理器和第一接口, 其中 所述第一处理器, 用于根据虚拟链路对所述网络拓扑中基础链路的不 同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路全局 标签; 所述第一接口, 用于将所述第一处理器分配链路全局标签后形成的所 述链路绑定关系发送给所述多个转发设备。 结合第一方面、 第一方面的第一种或第二种或第五种可能的实施方式, 在第一方面的第六种可能的实施方式中, 所述转发设备包括: 第二接口、 第二处理器和第三处理器。 其中, 第二接口, 用于接收所述链路全局标签与<网络拓扑 ID, 基础链 路标识, 属性 >之间的链路绑定关系。 第二处理器, 用于根据该链路绑定关系生成包括链路全局标签与虚拟 链路转发信息的映射关系的标签转发表项, 该虚拟链路转发信息包括所述 链路全局标签对应的基础链路和指定的属性处理; 第三处理器, 用于当转发设备收到的第一报文中携带有第一链路全局 标签时, 该第三处理器根据该第一链路全局标签查找到该第一链路全局标 签对应的第一标签转发表项, 从而确定该第一链路全局标签对应的第一虚 拟链路的转发信息, 经过该第一链路全局标签对应的第一属性处理, 从该 第一链路全局标签对应的基础链路转发该第一报文。 结合第一方面的第六种可能的实施方式, 在第一方面的第七种可能的 实施方式中, 该转发设备还包括第四处理器, 在分段路由 Segment Routing 转发时, 当该多个转发设备中的一个转发设备作为入口转发设备确定收到 的第二报文要经过所述网络拓扑的所述基础链路, 并要按照第二属性要求 转发时,所述第四处理器为该第二报文增加为 <网络拓扑 ID,基础链路标识, 第二属性>分配的第二链路全局标签。 结合第一方面、 第一方面的第一种或第二种或第三种或第四种或第五 种或第六种或第七种可能的实施方式, 在第一方面的第八种可能的实施方 式中, 该属性为多协议标签交换隧道工程 MPLS TE属性。 结合第一方面的第八种可能的实施方式, 在第一方面的第九种可能的 实施方式中, 该 MPLS TE属性包括带宽、 显式路径、 颜色、 保护、 快速重 路由 FRR、 共享风险链路组 SRLG中的一个或多个。
第二方面, 本发明实施例提供一种网络***, 该网络***包括至少一 个控制器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 所述至少一个控制器, 用于根据虚拟节点对所述网络拓扑中基础节点 的不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配节点 全局标签; 并将所述节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 > 之间的节点绑定关系发送给所述多个转发设备; 分配给每个虚拟链路的节 点全局标签不同; 所述多个转发设备, 用于接收所述节点绑定关系, 根据该节点绑定关 系生成包括节点全局标签与虚拟节点转发信息的映射关系的标签转发表 项, 该虚拟节点转发信息包括所述节点全局标签对应的基础节点和指定的 属性处理。 在第二方面的第一种可能的实施方式中, 所述链路全局标签包括两个 或两个以上的标签。 结合第二方面、 第二方面的第二种可能的实施方式, 在第二方面的第 二种可能的实施方式中, 所述控制器包括: 节点全局标签分配模块和节点 绑定关系发送模块, 其中 所述节点全局标签分配模块, 用于根据虚拟节点对所述多个网络拓扑 中对所述基础节点的不同属性要求, 为所述多个网络拓扑中的该基础节点 按照属性要求分配节点全局标签; 为所述多个虚拟节点分配的节点全局标 签不同; 所述节点绑定关系发送模块, 用于将所述节点全局标签分配模块分配 节点全局标签后形成的所述节点全局标签与<网络拓扑 ID, 基础节点标识, 属性 >之间节点绑定关系的发送给所述多个转发设备。 结合第二方面、 第二方面的第一种或第二种可能的实施方式, 在第二 方面的第三种可能的实施方式中, 所述转发设备包括: 接收模块、 标签转 发表项生成模块和转发模块; 其中, 所述接收模块,用于接收所述节点全局标签与<网络拓扑 ID,基础节点 标识, 属性 >之间的节点绑定关系。 所述标签转发表项生成模块, 用于根据该节点绑定关系生成包括节点 全局标签与虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转 发信息包括所述节点全局标签对应的基础节点和所述属性处理; 所述转发模块, 用于当所述接收模块收到的第一报文中携带有第一节 点全局标签时, 该所述转发模块根据该第一节点全局标签查找到该第一节 点全局标签对应的标签转发表项, 从而确定该第一节点全局标签对应的第 一虚拟节点的转发信息, 经过所述第一节点全局标签对应的第一属性处理, 根据该第一节点全局标签对应的到达基础节点的出接口和下一跳信息转发 该第一报文。 结合第二方面的第三种可能的实施方式, 在第二方面的第四种可能的 实施方式中, 该转发设备还包括节点标签增加模块, 在分段路由 Segment Routing转发时, 当所述多个转发设备中的一个转发设备作为入口转发设备 确定收到的第二报文要经过所述网络拓扑的所述基础节点, 并要按照第二 属性要求转发时, 所述节点标签增加模块为该第二报文增加为<网络拓扑 ID、 基础节点标识、 第二属性>分配的第二虚拟节点的第二节点全局标签。 结合第二方面、 第二方面的第一种可能的实施方式, 在第二方面的第 五种可能的实施方式中, 该控制器包括第一处理器和第一接口, 其中 所述第一处理器, 用于根据虚拟节点对所述网络拓扑中的基础节点的 不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配节点全 局标签, 所述第一接口, 用于将所述第一处理器分配节点全局标签后形成的所 述节点绑定关系发送给所述多个转发设备。 结合第二方面、 第二方面的第一种或第二种或第五种可能的实施方式, 在第二方面的第六种可能的实施方式中, 所述转发设备包括第二接口、 第 二处理器和第三处理器, 其中 所述第二接口,用于接收所述节点全局标签与<网络拓扑 ID,基础节点 标识, 属性 >之间的节点绑定关系; 所述第二处理器, 用于根据该节点绑定关系生成包括节点全局标签与 虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转发信息包括 所述节点全局标签对应的基础节点和指定的属性处理; 所述第三处理器, 用于当所述第二接口收到的第一报文中携带有第一 节点全局标签时, 该第三处理器 1324根据该第一节点全局标签查找到该第 一节点全局标签对应的第一标签转发表项, 从而确定该第一节点全局标签 对应的第一虚拟节点的转发信息, 经过该第一节点全局标签对应的属性处 理, 根据该第一节点全局标签对应的到达基础节点的出接口和下一跳信息 转发该第一报文。 结合第二方面的第六种可能的实施方式, 在第二方面的第七种可能的 实施方式中,所述转发设备还包括第四处理器,在分段路由 Segment Routing 转发时, 当转发设备作为入口转发设备确定收到的第二报文要经过所述网 络拓扑的所述基础节点, 并要按照第二属性要求转发时, 该第四处理器为 该第二报文增加为 <网络拓扑 ID, 基础节点标识, 第二属性>分配的第二节 点全局标签。 结合第二方面、 第二方面的第一种或第二种或第三种或第四种或第五 种或第六种或第七种可能的实施方式, 在第二方面的第八种可能的实施方 式中, 该属性为多协议标签交换隧道工程 MPLS TE属性。 结合第二方面的第八种可能的实施方式, 在第二方面的第九种可能的 实施方式中, 该 MPLS TE属性包括带宽、 显式路径、 颜色、 保护、 快速重 路由 FRR、 共享风险链路组 SRLG中的一个或多个。
第三方面, 本发明实施例提供一种转发报文的方法, 该方法应用于包 括至少一个控制器和多个转发设备的网络***, 所述多个转发设备组成多 个网络拓扑, 该方法包括: 接收链路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 >的链路绑定 关系,
根据所述链路绑定关系生成包括链路全局标签与虚拟链路转发信息的 映射关系的标签转发表项, 该虚拟链路转发信息包括所述链路全局标签对 应的基础链路和指定的属性处理; 所述链路绑定关系是由所述至少一个控 制器为根据虚拟链路对所述网络拓扑中基础链路的不同属性要求, 为所述 网络拓扑中的该基础链路按照属性要求分配链路全局标签, 并将链路全局 标签与 <网络拓扑 ID, 基础链路标识, 属性 >之间的链路绑定关系发送给所 述多个转发设备的; 分配给分配给每个虚拟链路的链路全局标签不同。 在第三方面的第一种可能的实施方式中, 当所述转发设备收到的第一 报文中携带有第一链路全局标签时, 该转发设备根据该第一链路全局标签 查找到该第一链路全局标签对应的标签转发表项, 从而确定该第一链路全 局标签对应的第一虚拟链路的转发信息, 经过该第一链路全局标签对应的 第一属性处理, 从该第一链路全局标签对应的基础链路转发该第一报文。 结合第三方面、 第三方面的第一种可能的实施方式, 在第三方面的第 二种可能的实施方式中, 在分段路由 Segment Routing转发时, 当所述多个 转发设备中的一个转发设备作为入口转发设备确定收到的第二报文要经过 所述网络拓扑的所述基础链路, 并要按照第二属性要求转发时, 需要为该 报文增加为 <网络拓扑 ID, 基础链路标识, 第二属性>分配的第二链路全局 标签。 结合第三方面、 第三方面的第一种或第二种可能的实施方式, 在第三 方面的第三种可能的实施方式中,该属性为多协议标签交换隧道工程 MPLS TE属性。 结合第三方面的第三种可能的实施方式, 在第三方面的第四种可能的 实施方式中, 该 MPLS TE属性包括带宽、 显式路径、 颜色、 保护、 快速重 路由 FRR、 共享风险链路组 SRLG中的一个或多个。 第四方面, 本发明实施例提供一种转发报文的方法, 该方法应用于包 括至少一个控制器和多个转发设备的网络***, 所述多个转发设备组成多 个网络拓扑, 该方法包括:
接收节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 >的绑定关系, 根据所述节点绑定关系生成包括节点全局标签与虚拟节点转发信息的 映射关系的标签转发表项, 该虚拟节点转发信息包括所述节点全局标签对 应的到达基础节点的出接口、 下一跳信息以及指定的属性处理; 所述节点 绑定关系是由所述至少一个控制器为根据虚拟节点对所述网络拓扑中基础 节点的不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配 节点全局标签, 并将节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 > 之间的节点绑定关系发送给所述多个转发设备的; 分配给分配给每个虚拟 节点的节点全局标签不同。 在第四方面的第一种可能的实施方式中, 当所述转发设备收到的第一 报文中携带有第一节点全局标签时, 该转发设备根据该第一节点全局标签 查找到该第一节点全局标签对应的标签转发表项, 从而确定该第一节点全 局标签对应的第一虚拟节点的转发信息, 经过该第一节点全局标签对应的 第一属性处理, 从该第一节点全局标签对应的基础节点转发该第一报文。 结合第四方面、 第四方面的第一种可能的实施方式, 在第四方面的第 二种可能的实施方式中, 在分段路由 Segment Routing转发时, 当转发设备 A作为入口转发设备确定收到的第二报文要经过所述网络拓扑的所述基础 节点, 并要按照第二属性要求转发时, 需要为该报文增加为 <网络拓扑 ID, 基础节点标识, 第二属性>分配的第二节点全局标签。 结合第四方面、 第四方面的第一种或第二种可能的实施方式, 在第四 方面的第三种可能的实施方式中,该属性为多协议标签交换隧道工程 MPLS TE属性。 结合第四方面的第三种可能的实施方式, 在第四方面的第四种可能的 实施方式中, 该 MPLS TE属性包括带宽、 显式路径、 颜色、 保护、 快速重 路由 FRR、 共享风险链路组 SRLG中的一个或多个。 本发明实施例的报文转发方法、 控制器和转发设备, 通过 IGP扩展分 发全局标签实现网络链路和节点的虚拟化, 之后可以很容易地实现 MPLS 虚拟网络, 因为使用 MPLS全局标签标识, 基础网络对上层虚拟网络完全 隐藏了物理细节,上层网络无需感知下面的链路是 Ethemet、 POS、还是 Trunk 这些不同类型的接口, 这样更安全, 虚拟网络更容易运营。 这些虚拟的节 点和链路可以按照现有的路由/ LSP 转发的出接口链路使用, 也可以按照 Segment Routing提出的 Source Routing使用。 因为这里的虚拟链路或节点 中有带宽等的概念,这样还可以实现有端到端 QoS保证的 Segment Routing 0
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对 实施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。 图 1为本发明实施例的一种网络***的结构示意图; 图 2A为本发明实施例的一种链路绑定关系表的示意图; 图 2B为本发明实施例的一种节点绑定关系表的示意图; 图 3A为本发明实施例的一种链路网络拓扑转发表的示意图; 图 3B为本发明实施例的一种节点网络拓扑转发表的示意图; 图 4A为本发明实施例的另一种链路网络拓扑转发表的示意图; 图 4B为本发明实施例的另一种节点网络拓扑转发表的示意图; 图 5A为本发明实施例的一种转发报文的方法的流程示意图; 图 5B为本发明实施例的另一种转发报文的方法的流程示意图; 图 6为本发明实施例的一种 0SPF扩展实现 MPLS网络虚拟化的一个 实例一种 TLV的格式的示意图; 图 7为本发明实施例的一种表示 <网络拓扑 ID, 基础链路标识, MPLS TE属性 >和 MPLS全局标签的绑定关系的 TLV的格式的示意图; 图 8为本发明实施例的一种 ISIS中的虚拟节点 sub-TLV的格式的示意 图; 图 9为本发明实施例的一种 ISIS中的虚拟链路 sub-TLV的格式的示意 图; 图 10为本发明实施例的另一种网络***的结构示意图; 图 11为本发明实施例的另一种网络***的结构示意图; 图 12为本发明实施例的另一种网络***的结构示意图; 图 13为本发明实施例的又一种网络***的结构示意图。
具体实舫式
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行描述, 显然, 所 描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明 中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获得的 所有其他实施例, 都属于本发明保护的范围。 本发明实施例中提到的"转发设备"、 "客户端"均支持多拓扑
(multi-topology) 技术, 可以为多个拓扑安装 FIB (Forwarding Information Base ) , BP , 每个"转发设备" /"客户端 "上有多个转发实例 (forwarding instance)。 每个转发实例对应一个虚拟网络拓扑 ( virtual network topology ) 或物理拓扑。 IGP是一种专用于一个自治网络***(比如:某个当地社区范围内的一 个自治网络***) 中网关间交换数据流转通道信息的协议。 网络协议 (Internet Protocol, IP)或者其他的网络协议常常通过这些通道信息来确定 怎样传送数据流。 IGP包括: 路由信息协议 (Routing Information Protocol, RIP), 开放最短路径优先 (Open Shortest Path First, 0SPF)、 内部网关路由 选择协议(Interior Gateway Routing Protocol, IGRP)、 增强型内部网关路由 协议 (Enhanced Interior Gateway Routing Protocol, EIGRP) 和中间***到 中间*** (Intermediate System to Intermediate System, IS-IS ) 等。 在本发明实施例中, "虚拟链路"是在指定网络拓扑(假设是第一网络拓 扑) 的基础链路基础上构建的具有某种属性的逻辑链路。 该虚拟链路构建 出来以后, 可以在第一网络拓扑中使用, 也可以在第一网络拓扑之上构建 的第二网络拓扑中使用。 然后在这个基础上还可以定义几个概念: "基础链 路"指的是网络拓扑中的指定链路; "虚拟链路"在基础链路上构建, 具有属 性 A, 或者说是具有属性 A的基础链路。 在本发明的实施例中, 可以在 N 条基础链路上构建一条具有属性 A的虚拟链路并为该具有属性 A的虚拟链 路分配链路全局标签, 也可以在一条基础链路上构建 M条具有属性 B的虚 拟链路,并为该 M条具有属性 B的虚拟链路分别分配不同的链路全局标签, 其中 M和 N均为自然数。 比如基础链路如果是 Trunk口, 就有可能是 N条 基础链路上构建了 M条具有属性 C的虚拟链路。基础链路可以是一条或多 条物理链路, 也可以是另一条或多条虚拟链路。 在本发明实施例中, "虚拟节点"是在指定网络拓扑(假设是第一网络拓 扑) 的某个或某些基础节点设备基础上构建的具有某种属性的逻辑节点。 该虚拟节点构建出来以后, 可以在第一网络拓扑中使用, 也可以在第一网 络拓扑之上构建的第二网络拓扑中使用。 然后在这个基础上还可以定义几 个概念: "基础节点"指的是网络拓扑中的指定的一个或多个节点设备; "虚 拟节点 "在基础节点设备上构建, 具有属性 A, 或者说是具有属性 A的基础 节点。 在本发明的实施例中, 可以在 N个基础节点上构建一个具有属性 A 的虚拟节点并为该具有属性 A的虚拟节点分配节点全局标签, 也可以在一 个基础节点上构建 M个具有属性 B的虚拟节点, 并为该 M个具有属性 B 的虚拟节点分别分配不同的节点全局标签, 其中 M和 N均为自然数。 基础 节点可以是一个或多个物理的节点设备, 比如转发设备, 也可以是一个或 多个虚拟节点。 如图 1 所示, 本发明实施例的一种网络***, 包括至少一个控制器和 多个转发设备, 所述多个转发设备组成多个网络拓扑, 该多个网络拓扑可 以包括物理网络拓扑和虚拟网络拓扑。 所述至少一个控制器, 用于根据虚拟链路对所述网络拓扑中基础链路 的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路 全局标签, 比如虚拟链路对拓扑 ID为 ΤΠ^的第一网络拓扑的基础链路要 求属性为 Α, 则为该第一网络拓扑中的基础链路按照属性 Α分配链路全局 标签 。这样链路全局标签 L-GL ^表了第一网络拓扑中的一个虚拟链 路, 该虚拟链路在所述第一网络拓扑中的基础链路上构建, 具有属性 A。 这样, 网络拓扑 ID、 链路全局标签、 基础链路标识、 属性可以组成一个链 路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 >之间的绑定关系, 该绑 定关系在下文中称为 "链路绑定关系"。 具体地, 如果该属性是 MPLS TE属 性中的带宽属性,则该链路绑定关系是链路全局标签与<网络拓扑 ID,基础 链路标识, 带宽 >的绑定关系, 该链路全局标签表示了一个虚拟链路, 该虚 拟链路在所述第一网络拓扑的基础链路上构建, 具有指定带宽。 可选地,所述控制器可以是 IGP控制器,该属性可以是 MPLS TE属性, 该 MPLS TE属性可以包括带宽、显式路径、颜色、保护、 FRR(Fast ReRoute, 快速重路由) 、 SRLG (Shared Risk Link Group, 共享风险链路组) 中的一 个或多个, 所述转发设备可以是 IGP客户端, 该 IGP客户端可以是路由器、 交换机或服务器。 所述至少一个控制器, 将所述链路绑定关系发送给所述多个转发设备。 例如, 自治***中有 N个转发设备组成 X个网络拓扑, 对于网络拓扑 的 (比如第一网络拓扑) 一段基础链路来说, 由于虚拟链路对于网络拓扑 (比如第一网络拓扑)的基础链路会有某种属性要求, 比如要求带宽为 1G, 因此控制器需要将所述网络拓扑 (比如第一网络拓扑) 中基础链路按照带 宽要求分配一个链路全局标签, 该链路全局标签代表了所述虚拟链路, 该 虚拟链路在所述第一网络拓扑的基础链路上构建, 具有指定带宽。 分配给 每个虚拟链路的链路全局标签不同。 即, 控制器分配给在拓扑 ID为 TIDi 的网络拓扑的基础链路上构建的具有属性 A的虚拟链路分配的的链路全局 标签为 L-GL 给在拓扑 ID为 TIDi的虚拟网络拓扑的基础链路上构建的具 有属性 B 的虚拟链路链路分配的链路全局标签为 L-GL2, L-GL,与 L-GL2 不相同。
所述多个转发设备, 用于接收所述链路绑定关系, 根据该链路绑定关 系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签转发表 项, 该虚拟链路转发信息包括所述链路全局标签对应的基础链路和指定的 属性处理。 当转发设备收到的报文中携带有链路全局标签 (比如第一链路 全局标签) 时, 该转发设备根据该第一链路全局标签查找到对应的标签转 发表项, 从而确定虚拟链路的转发信息, 经过指定的属性处理, 从该链路 全局标签对应的基础链路转发报文。 在分段路由 Segment Routing转发时, 当转发设备 A作为入口转发设备确定该报文要经过所述网络拓扑的所述基 础链路, 并要按照所述属性要求转发时, 需要为该报文增加所述虚拟链路 的链路全局标签。 可选地, 如图 3A所示, 所述链路全局标签对应的标签转发表项可以包 括: 链路全局标签、 基础链路、 属性要求。 当转发设备收到报文时, 获取 该报文携带的链路全局标签, 根据该链路全局标签对应的基础链路, 按照 指定属性要求转发该报文。 可选地, 如图 4A所示, 如果属性为带宽属性, 即需要提供服务质量保 证 (Quality of Service, QoS ) , 则所述链路虚拟网络拓扑转发表可以包括 链路全局标签、 基础链路、 QoS队列 ID。 这里的 QoS队列根据带宽等属性 来生成, 能够提供指定的带宽的保证, 并使用 QoS队列 ID来标识。在这种 情况下, 当转发设备收到报文时, 获取该报文携带的链路全局标签 (比如 链路全局标签为 L-G ), 根据该链路全局标签 对应的基础链路、和 QoS属性转发该报文。 具体地, 由于 对应了 QoS属性, 因此, 需要 按照对应 QoS属性的由 QoS队列 ID指定的 QoS队列来转发该报文。
可选地, 所述全局标签可以是所有转发设备共享的全局标签空间中选 择的单个的全局标签。
可选地, 所述全局标签可以是多个本地标签组成的, 即, 每个全局标 签包括两个或多个本地标签。 控制器为每个虚拟网络拓扑分配两个或两个 以上的本地标签, 分配给某个虚拟网络拓扑的的两个或两个以上本地标签 组成一个全局标签, 组成的全局标签用来标识该虚拟网络拓扑。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。
对于多个转发设备, 在网络拓扑中表现为节点, 根据虚拟节点对所述 网络拓扑中基础节点的不同属性要求, 控制器可以为根据所述网络拓扑中 的该转发设备按照属性要求分配一个节点全局标签, 比如拓扑 ID为 TIDi 的第一网络拓扑中要求某个节点的属性为 A, 则为该第一网络拓扑中的某 个转发设备按照属性 A分配节点全局标签 。其中节点全局标签 代表了具有第一网络拓扑中的一个虚拟节点, 该虚拟节点在所述第一网络 拓扑中的某个或某些转发设备上构建, 具有属性 。 这样, 网络拓扑 ID、 节点全局标签、 节点标识、 属性可以组成一个节点全局标签与 <虚拟网络拓 扑 ID,基础节点标识,属性 >之间的绑定关系,该绑定关系在下文中称为"节 点绑定关系"。 具体地, 如果该属性是 MPLS TE属性中的带宽属性, 则该 绑定关系可以是节点全局标签与 <网络拓扑 ID, 节点标识, 带宽 >之间的节 点绑定关系, 该节点全局标签表示了一个虚拟节点, 该虚拟节点在所述第 一网络拓扑的转发设备上构建, 具有指定带宽。 可选地,所述控制器可以是 IGP控制器,该属性可以是 MPLS TE属性, 该 MPLS TE属性可以包括带宽、显式路径、颜色、保护、 FRR(Fast ReRoute, 快速重路由) 、 SRLG (Shared Risk Link Group, 共享风险链路组) 中的一 个或多个, 所述转发设备可以是 IGP客户端, 该 IGP客户端可以是路由器、 交换机或服务器。 所述至少一个控制器, 将所述节点绑定关系发送给所述多个转发设备。 例如, 自治***中有 N个转发设备组成 X个网络拓扑, 对于一个或多 个转发设备来说, 由于虚拟节点对于网络拓扑 (比如第一网络拓扑) 中的 某个或某些转发设备会要求具有某种属性, 比如要求传输带宽为 1G, 因此 控制器需要将所述网络拓扑 (比如第一网络拓扑) 中某个或某些转发设备 分配一个节点全局标签, 该节点全局标签代表了所述虚拟节点, 该虚拟节 点在所述第一网络拓扑的某个或某些转发设备上构建, 具有指定带宽。 分 配给每个虚拟链路的链路全局标签不同。 分配给每个虚拟节点的节点全局 标签不同。 SP, 控制器分配给拓扑 ID为 TIDi的网络拓扑的指定转发设备 上构建的具有属性 A的虚拟节点的节点全局标签为 N-GL 分配给在拓扑 ID为 TIDi的网络拓扑的指定转发设备上构建的具有属性 A的虚拟节点的 节点全局标签为 N-GL2, N-GL!与 ^01^2不相同。 所述多个转发设备, 用于接收所述节点绑定关系, 根据该节点绑定关 系生成包括节点全局标签与虚拟节点转发信息的映射关系的标签转发表 项, 该虚拟节点转发信息包括所述节点全局标签对应的到达基础节点的出 接口和下一跳信息以及指定的属性处理。 当转发设备收到的报文中携带有 节点全局标签 (比如第一节点全局标签) 时, 该转发设备根据该第一节点 全局标签查找到该第一节点全局标签对应的标签转发表项, 从而确定虚拟 节点的转发信息, 经过指定的属性处理, 从该节点全局标签对应的到达基 础节点的出接口和下一跳转发该报文。在分段路由 Segment Routing转发时, 当转发设备 A作为入口转发设备确定该报文要经过所述网络拓扑的所述基 础节点, 并要按照所述属性要求转发时, 需要为该报文增加所述虚拟节点 的节点全局标签。 可选地,如图 3B所示,所述第一节点虚拟网络拓扑转发表项可以包括: 节点全局标签、 到达基础节点的出接口和下一跳、 以及属性要求。 当转发 设备收到报文时, 获取该报文携带的节点全局标签, 根据该节点全局标签 映射的出接口、 下一跳和属性要求转发该报文。 可选地,如图 4B所示,如果属性为带宽属性,即需要服务质量(Quality of Service, QoS )保证, , 则所述节点虚拟网络拓扑转发表项可以包括节点 全局标签、 出接口、下一跳和 QoS队列 ID。这里的 QoS队列根据带宽等属 性来生成, 能够提供指定的带宽的保证, 并使用 QoS队列 ID来标识。在这 种情况下, 当转发设备收到报文时, 获取该报文携带的节点全局标签 (比 如节点全局标签为 , 根据该节点全局标签 N-G 对应的出接口 1、 下一跳节点 1和 QoS属性转发该报文。具体地, 由于 N-G 对应了 QoS属 性, 因此, 需要按照该 QoS属性对应的 QoS队列 ID指定的 QoS队列来转 发该报文。 本发明实施例中的链路标识, 一般情况下链路标识使用链路两端的地 址来表示,节点标识使用环回 Loopback接口地址来表示,经过虚拟化之后, 虚拟链路可以使用链路全局标签来标识, 虚拟节点可以使用节点全局标签 来标识, 这样实际就形成了嵌套, 就是在虚拟化的链路和虚拟化的节点上 继续进一步虚拟化。 比如对于网络拓扑 1的基础链路(比如链路 1 ) , 网络 拓扑 1中的控制器可以为网络拓扑 1的上层网络拓扑 2分配第一链路全局 标签 (使用标签 L1来表示) 标识的一个虚拟链路 (使用 XXX来表示) , 如果网络拓扑 2需要在虚拟链路 XXX上继续构建一个虚拟链路 YYY分配 给网络拓扑 2的上层网络拓扑 3,那么网络拓扑 2可以分配第二链路全局标 签(使用标签 L2来表示)。假定网络拓扑 1的该链路能够提供端到端的 1G 带宽的传输能力,网络拓扑 1希望在链路 1上为上层的网络拓扑 2提供 100M 的带宽传输能力, 则网络拓扑 1 中的控制器为上层的网络拓扑 2分配链路 全局标签 L1之后,生成的链路绑定关系为链路全局标签 与<网络拓扑 1, 链路标识 1, 100M>之间的绑定关系, 这样网络拓扑 2获得了 L1对应的虚 拟链路 1, 也就是从网络拓扑 1获得了链路 1上的 100M的传输能力。如果 网络拓扑 2要在虚拟链路 1上为网络拓扑 2的上层网络拓扑 3提供 50M的 带宽, 则网络拓扑 2的控制器为网络拓扑 2的上层网络拓扑 3分配链路全 局标签 L2, 该链路全局标签 L2标识网络拓扑 2的虚拟链路 1上为网络拓 扑 3提供 50M传输能力。 这样, 转发设备接收到控制器的链路绑定关系为 链路全局标签 L1与<网络拓扑 2, 链路标识 1, 50M>之间的绑定关系, 在 虚拟链路链路 1上为网络拓扑 3提供 50M的传输能力。 为转发设备分配节点全局标签及根据节点全局标签转发报文的方式与 链路全局标签的情况类似, 在此不再赘述。
可选地, 所述全局标签可以是所有转发设备共享的全局标签空间中选 择的单个的全局标签。
可选地, 所述全局标签可以是多个本地标签组成的, 即, 每个全局标 签包括两个或多个本地标签。 控制器为每个虚拟网络拓扑分配两个或两个 以上的本地标签, 分配给某个虚拟网络拓扑的的两个或两个以上本地标签 组成一个全局标签, 组成的全局标签用来标识该虚拟网络拓扑。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。
以下实施例以为网络拓扑中基础链路按照属性要求分配分配链路全局 标签为例进行说明, 为转发设备按照属性要求分配节点全局标签的处理方 法与此类似。
本发明实施例的一种转发报文的方法如图 5所示, 该方法应用于包括至 少一个控制器和多个转发设备的网络***, 所述多个转发设备组成多个网 络拓扑, 该多个网络拓扑可以包括物理网络拓扑和虚拟网络拓扑。 该方法 包括:
S510A、 接收链路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 >的 绑定关系(该绑定关系在下文中称为 "链路绑定关系"), 并根据所述链路绑 定关系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签转发 表项, 该虚拟链路转发信息包括所述链路全局标签对应的基础链路和指定 的属性处理。 所述链路绑定关系是由所述至少一个控制器为根据虚拟链路 对所述网络拓扑中基础链路的不同属性要求, 为所述网络拓扑中的该基础 链路按照属性要求分配链路全局标签, 并将链路全局标签与 <网络拓扑 ID, 链路标识, 属性 >之间的链路绑定关系发送给所述多个转发设备的; 分配给 分配给每个虚拟链路的链路全局标签不同, 该链路全局标签代表了所述虚 拟链路, 该虚拟链路在所述第一网络拓扑的基础链路上构建, 具有指定属 性。
S512A、接收所述链路全局标签和虚拟链路的链路绑定关系, 根据该链 路绑定关系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签 转发表项, 该虚拟链路转发信息包括所述链路全局标签对应的基础链路和 指定的属性处理。 当转发设备收到的第一报文中携带有链路全局标签 (比如第一链路全 局标签) 时, 该转发设备根据该第一链路全局标签查找到该第一链路全局 标签对应的标签转发表项, 从而确定该第一链路全局标签对应的虚拟链路 的转发信息, 经过该第一链路全局标签对应的第一属性处理, 从该第一链 路全局标签对应的基础链路转发该第一报文。 在分段路由 Segment Routing 转发时, 当转发设备 A作为入口转发设备确定收到的第二报文要经过所述 网络拓扑的所述基础链路, 并要按照第二属性要求转发时, 需要为该第二 报文增加为 <网络拓扑 ID, 基础链路标识, 第二属性>分配的第二链路全局 标签。 可选地, 所述控制器向所述转发设备发送所述链路绑定关系, 具体为: 所述至少一个控制器通过 IGP 扩展或路径计算单元通信协议 (Path Computation Element Communication Protocol, PCEP)扩展发送所述链路绑 定关系给 IGP域内的转发设备。
如图 5B所示, 本发明实施例的一种转发报文的方法, 该方法应用于包 括至少一个控制器和多个转发设备的网络***, 所述多个转发设备组成多 个网络拓扑,
S510B、 接收节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 >的 绑定关系,
S512B、根据所述节点绑定关系生成包括节点全局标签与虚拟节点转发 信息的映射关系的标签转发表项, 该虚拟节点转发信息包括所述节点全局 标签对应的到达基础节点的出接口、 下一跳信息以及指定的属性处理; 所 述节点绑定关系是由所述至少一个控制器为根据虚拟节点对所述网络拓扑 中基础节点的不同属性要求, 为所述网络拓扑中的该基础节点按照属性要 求分配节点全局标签, 并将节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 >之间的节点绑定关系发送给所述多个转发设备的; 分配给分配给每个 虚拟节点的节点全局标签不同。
当所述转发设备收到的第一报文中携带有第一节点全局标签时, 该转 发设备根据该第一节点全局标签查找到该第一节点全局标签对应的标签转 发表项, 从而确定该第一节点全局标签对应的第一虚拟节点的转发信息, 经过该第一节点全局标签对应的第一属性处理, 根据该第一节点全局标签 对应的到达基础节点的出接口和下一跳信息转发该第一报文。 在分段路由 Segment Routing转发时,当转发设备 A作为入口转发设备 确定收到的第二报文要经过所述网络拓扑的所述基础节点, 并要按照第二 属性要求转发时, 需要为该报文增加为 <网络拓扑 ID, 基础节点标识, 第二 属性 >分配的第二节点全局标签。 可选地, 该属性为多协议标签交换隧道工程 MPLS TE属性。 可选地, 该 MPLS TE属性包括带宽、 显式路径、 颜色、 保护、 快速重 路由 FRR、 共享风险链路组 SRLG中的一个或多个。
图 6是开放式最短路径优先 (Open Shortest Path First, OSPF) 扩展实 现 MPLS 网络虚拟化的一个实例, 这里使用一个扩展的标签-长度-值 (Tag-Length- Value, TLV)来表示 <网络拓扑 ID, 基础链路标识, MPLS TE 属性 >和 MPLS全局标签之间的绑定关系, 以下仍以链路标识及链路全局标 签为例进行说明, 节点标识及节点全局标签与之情况类似。 图 6中, MPLS Label用于表示分配给虚拟链路的 MPLS全局标签值。 定义一个携带 MPLS全局标签及 <网络拓扑 ID, 链路标识, MPLS TE 属性 >与该 MPLS全局标签的 Opaque LSA (使用第 10类 Opaque LSA), 该 LSA的格式如图 6所示, 包括一个或多个 MPLS Label及其他内容, 如果 MPLS Label是为网络拓扑中基础链路具有某种属性的虚拟链路分配一个链 路全局标签, 则该 MPLS Label为一个全局标签。 图 6中的 LSA还可以包括一个或多个 TLV, 该 TLV用于表示<网络拓 扑 ID, 基础链路标识, MPLS TE属性 >和 MPLS全局标签的绑定关系。 如 图 7所示,该 TLV包括 TLV值域 Value, TLV值域 Value的值分别表示 MPLS 全局标签对应的网络拓扑 ID、 链路标识、 MPLS TE属性。 也就是说, 图 6 所示的 LSA可以包括多个图 7所示的 TLV: TLVl , TLV2, TLV3, TLV4, TLV1的值表示 MPLS全局标签对应的网络拓扑 ID; TLV2的值表示 MPLS 全局标签对应的链路标识; TLV3的值表示 MPLS全局标签对应的 MPLS TE 属性。
ISIS标签映射 TLV (IS-IS Label Mapping TLV)包括虚拟节点 sub-TLV (Label sub-TLV) 和转发等价类 sub-TLV (FEC sub-TLV), 其中该虚拟节 点 sub-TLV用来携带节点 MPLS全局标签及该节点 MPLS标签与 <网络拓扑 ID, 节点标识, MPLS TE属性 >之间的绑定关系。 如图 8所示, 虚拟节点 sub-TLV包括 MPLS Label、多拓扑 ID (Multi-Topology ID)、节点地址(Node Address)和虚拟节点属性( Attributes of Virtual Node )。 多拓扑 ID域的值用 于表示虚拟节点所在的虚拟网络拓扑 ID, 多拓扑 ID域的值长度可以为 32 比特。 节点地址域的值用于表示节点标识, 节点地址域的值长度可以为 32 比特或 128 比特。 虚拟节点属性域的值用来表示虚拟节点的属性, 该虚拟 节点属性域的值长度可变。 MPLS Label域的值用来表示为虚拟网络拓扑中 具有某种属性的虚拟节点分配的节点标签。如果 MPLS Label是为网络拓扑 中具有某一属性的虚拟节点分配一个节点全局标签,则该 MPLS Label为一 个全局标签。 如图 9所示, ISIS扩展实现的虚拟链路 sub-TLV用来携带链路 MPLS 全局标签及该链路 MPLS标签与 <网络拓扑 ID,链路标识, MPLS TE属性 > 之间的节点绑定关系。 链路标识可以用链路两端的节点地址来表示, 即可 以用链路的源端点地址和目的端地址来标识该链路。 如图 9 所示, 虚拟链路 sub-TLV 包括 MPLS Label , 多拓扑 ID ( Multi-Topology ID )、 源端点地址 (Source-end Address )、 目的端地址 (Destination end Address ) 虚拟节点属性 (Attributes of Virtual Node)、 等 级类型 (Class of Type) 和带宽 (Bandwith)。 多拓扑 ID域的值用于表示虚 拟链路所在的虚拟网络拓扑 ID, 多拓扑 ID域的值长度可以为 32比特。 源 端点地址域的值用于表示源端点标识, 源端点地址域的值长度可以为 32比 特的 IPv4地址或 128比特的 IPv6地址。目的端点地址域的值用于表示目的 端点标识,目的端点地址域的值长度可以为 32比特的 IPv4地址或 128比特 的 IPv6地址。 虚拟节点属性域的值用来表示虚拟节点的属性, 该虚拟节点 属性域的值长度可变。 MPLS Label域的值用来表示为虚拟网络拓扑中具有 某种属性的虚拟节点分配的节点标签。如果 MPLS Label是为虚拟网络拓扑 中具有某一属性的虚拟节点分配一个节点全局标签,则该 MPLS Label为一 个全局标签; 该全局标签栈用来标识虚拟网络拓扑中具有某一属性的虚拟 节点。 等级类型域表示该虚拟链路的带宽等级。 带宽域的值表示该虚拟链 路的带宽。
可选地, 所述全局标签可以是所有转发设备共享的全局标签空间中选 择的单个的全局标签。
可选地, 所述全局标签可以是多个本地标签组成的, 即, 每个全局标 签包括两个或多个本地标签。 控制器为每个虚拟网络拓扑分配两个或两个 以上的本地标签, 分配给某个虚拟网络拓扑的的两个或两个以上本地标签 组成一个全局标签, 组成的全局标签用来标识该虚拟网络拓扑。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。 通过本发明实例虚拟的链路和节点可以参与普通路由的最短路径优先
(Shortest Path First, SPF)计算, 也可以参与 MPLS TE的基于约束的最短 路径优先(Constrained Shortest Path First, CSPF)计算, 生成的转发表项包 括: 网络拓扑 ID (使用全局标签 T来表示)、 IP地址、 掩码和全局标签值。 这里的转发表项的含义是根据目的地址和掩码可以找到对应转发的全局标 签值, 该全局标签值对应的标签转发表项中包含该全局标签对应的虚拟链 路或虚拟节点的转发信息。 该虚拟链路或虚拟节点的转发信息在前面已经 有详细描述, 这里不再赘述。。 生成的转发表项也可以包括网络拓扑 ID (使用全局标签 T来表示)、 MPLS入标签和下一跳标签转发表项 (Next Hop Label Forwarding Entry, NHLFE) , 其中 NHLFE包括出标签、 标签操作和全局标签值。 这里的转发 表项的含义是根据 MPLS入标签可以找到对应转发的全局标签值, 该全局 标签值对应的标签转发表项中包含该全局标签对应的虚拟链路或虚拟节点 的转发信息。 该虚拟链路或虚拟节点的转发信息在前面已经有详细描述, 这里不再赘述。。 分段路由 Segment Routing通过虚拟的链路和节点的组合形成一条完整 的路径, 这些虚拟的链路和节点使用 SID来表示。 SID是 Segment ID的缩 写, 实际就是全局标签值。 本发明实例中的链路全局标签和节点全局标签 可以表示具有带宽保证的虚拟链路和虚拟节点。 通过路径的计算可以得到 如下的转发表项:
1 ) 网络拓扑 N (使用全局标签 T来表示)
IP地址 掩码 -> SID (LI ) SID (N1 ) SID (L2) SID (N2) ……- 注: 这里的表项表示根据 IP地址和掩码索引到一个标签栈, 该标签栈 代表了表示虚拟链路和节点的全局标签的一个组合, 也就是说到到达对应 的目的 IP地址需要按顺序经过这些全局标签值对应的虚拟链路和虚拟节 点。
2) 拓扑 N (使用全局标签 T来表示) SID (L/T) -> SID (LI ) SID (Nl ) SID (L2) SID (N2) 注: 这里的表项表示根据 SID (L/T) (即 MPLS入标签) 索引到一个 标签栈, 该标签栈代表了表示虚拟链路和节点的全局标签的一个组合, 也 就是说该全局标签 SID (L/T)表示的虚拟链路对应了一组虚拟链路或节点。 本发明中 SID标识的虚拟链路或虚拟节点具有带宽属性,也就是有 QoS 保证, 这样这些虚拟链路和虚拟节点组合的端到端路径有服务质量保证, 也就是构建了具有端到端 QoS保证的分段路由 Segment Routing。 另外对于 在特定网络拓扑中转发的报文, 在报文中一个标识拓扑的全局标签, 用于 在基础网络的转发设备中识别不同的转发实例。
如图 10所示, 在本发明的一种实施方式的网络***包括至少一个控制 器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 该多个网络拓 扑可以包括物理网络拓扑和虚拟网络拓扑。 所述控制器包括: 链路全局标签分配模块 1010和链路绑定关系发送模 块 1012, 其中 链路全局标签分配模块 1010, 用于根据虚拟链路对所述网络拓扑中基 础链路的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分 配链路全局标签, 比如拓扑 ID为 TIDi的第一网络拓扑的基础链路要求属 性为 A, 则为该第一网络拓扑中的基础链路按照属性 A分配链路全局标签 L-GL1 o 这样链路全局标签 代表了第一网络拓扑中的一个虚拟链路, 该虚拟链路在所述第一网络拓扑中的基础链路上构建, 具有属性 。 这样, 网络拓扑 ID、 链路全局标签、 链路标识、 属性可以组成一个链路全局标签 与<网络拓扑 ID, 链路标识, 属性 >之间的绑定关系, 该绑定关系在下文中 称为"链路绑定关系"。具体地,如果该属性是 MPLS TE属性中的带宽属性, 则该链路绑定关系是链路全局标签与<网络拓扑 ID, 链路标识, 带宽 >的绑 定关系, 该链路全局标签表示了一个虚拟链路, 该虚拟链路在所述第一网 络拓扑的链路上构建, 具有指定带宽。 控制器分配给每个虚拟链路的虚拟 全局节点不同。 链路绑定关系发送模块 1012,用于将链路全局标签分配模块 1010分配 链路全局标签后形成的所述链路绑定关系发送给所述多个转发设备。 所述转发设备包括: 接收模块 1020、标签转发表项生成模块 1022和转 发模块 1024。 其中, 所述接收模块 1020, 用于接收所述链路全局标签和虚拟链路的 链路绑定关系。 标签转发表项生成模块 1022, 用于, 根据该链路绑定关系生成包括链 路全局标签与虚拟链路转发信息的映射关系的标签转发表项, 该虚拟链路 转发信息包括所述链路全局标签对应的基础链路和指定的属性处理。 转发模块 1024, 用于当转发设备收到的第一报文中携带有链路全局标 签 (比如第一链路全局标签) 时, 该转发模块 1024根据该第一链路全局标 签查找到对应的第一标签转发表项, 从而确定该第一链路全局标签对应的 虚拟链路的转发信息, 经过该第一链路全局标签对应的属性处理, 从该第 一链路全局标签对应的基础链路转发报文。 可选地, 该转发设备还可以包括链路标签增加模块 1026, 在分段路由 Segment Routing转发时, 当转发设备 A (所述多个转发设备中的一个) 作 为入口转发设备确定收到的第二报文要经过所述网络拓扑的所述基础链 路, 并要按照第二属性要求转发时, 链路标签增加模块 1026为该第二报文 增加为 <网络拓扑 ID、基础链路标识、第二属性>分配的第二链路全局标签。
可选地, 所述链路全局标签可以是所有转发设备共享的全局标签空间 中选择的单个的全局标签。
可选地, 所述链路全局标签可以是多个本地标签组成的, 即, 每个链 路全局标签包括两个或多个本地标签。 控制器为每个虚拟链路分配两个或 两个以上的本地标签, 分配给某个虚拟链路的两个或两个以上本地标签组 成一个链路全局标签, 组成的链路全局标签用来标识该虚拟链路。 可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器-
如图 11所示, 在本发明的一种实施方式的网络***包括至少一个控制 器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 该多个网络拓 扑可以包括物理网络拓扑和虚拟网络拓扑。 所述控制器包括: 第一处理器 1110和第一接口 1112, 其中 第一处理器 1110, 用于根据虚拟链路对所述网络拓扑中基础链路的不 同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路全局 标签, 比如拓扑 ID为 TIDi的第一网络拓扑的基础链路要求属性为 A, 则 为该第一网络拓扑中的基础链路按照属性 A分配链路全局标签 L-GL 这 样链路全局标签 L-G 代表了第一网络拓扑中的一个虚拟链路, 该虚拟链 路在所述第一网络拓扑中的基础链路上构建, 具有属性 A。 这样, 网络拓 扑 ID、链路全局标签、链路标识、属性可以组成一个链路全局标签与 <网络 拓扑 ID, 链路标识, 属性 >之间的绑定关系, 该绑定关系在下文中称为"链 路绑定关系"。 具体地, 如果该属性是 MPLS TE属性中的带宽属性, 则该 链路绑定关系是链路全局标签与 <网络拓扑 ID, 链路标识, 带宽 >的绑定关 系, 该链路全局标签表示了一个虚拟链路, 该虚拟链路在所述第一网络拓 扑的链路上构建, 具有指定带宽。 第一接口 1112,用于将第一处理器 1110分配链路全局标签后形成的所 述链路绑定关系发送给所述多个转发设备。 所述转发设备包括: 第二接口 1120、 第二处理器 1122和第三处理器 1124。 其中, 第二接口 1120, 用于接收所述链路全局标签与<网络拓扑 ID, 基础链路标识, 属性 >之间的链路绑定关系。 第二处理器 1122, 用于根据该链路绑定关系生成包括链路全局标签与 虚拟链路转发信息的映射关系的标签转发表项, 该虚拟链路转发信息包括 所述链路全局标签对应的基础链路和指定的属性处理。 第三处理器 1124, 用于当转发设备收到的报文中携带有链路全局标签 (比如第一链路全局标签) 时, 该第三处理器 1124根据该第一链路全局标 签查找到该第一链路全局标签对应的第一标签转发表项, 从而确定该第一 链路全局标签对应的虚拟链路的转发信息, 经过该第一链路全局标签对应 的的第一属性处理, 从该第一链路全局标签对应的基础链路转发报文。 可选地,该转发设备还可以包括第四处理器 1126,在分段路由 Segment Routing转发时, 当转发设备 A (该多个转发设备中的一个) 作为入口转发 设备确定收到的第二报文要经过所述网络拓扑的所述基础链路, 并要按照 第二属性要求转发时,第四处理器 1126为该第二报文增加为 <网络拓扑 ID, 基础链路标识, 第二属性>分配的第二链路全局标签。
可选地, 所述链路全局标签可以是所有转发设备共享的全局标签空间 中选择的单个的全局标签。
可选地, 所述链路全局标签可以是多个本地标签组成的, 即, 每个链 路全局标签包括两个或多个本地标签。 控制器为每个虚拟链路分配两个或 两个以上的本地标签, 分配给某个虚拟链路的两个或两个以上本地标签组 成一个链路全局标签, 组成的链路全局标签用来标识该虚拟链路。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。
如图 12所示, 在本发明的一种实施方式的一种网络***包括至少一个 控制器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 该多个网 络拓扑可以包括物理网络拓扑和虚拟网络拓扑。 所述控制器包括: 节点全局标签分配模块 1210和节点绑定关系发送模 块 1212, 其中 节点全局标签分配模块 1210, 用于根据虚拟节点对所述多个网络拓扑 中对基础节点 (某个或某些转发设备) 的不同属性要求, 为所述网络拓扑 中的该基础节点按照属性要求分配节点全局标签, 比如拓扑 ID为 TIDi的 第一网络拓扑的某个节点要求属性为 A, 则为该第一网络拓扑中的某个节 点按照属性 A分配节点全局标签 N-G 。 这样节点全局标签 N-G 代表了 第一网络拓扑中的一个虚拟节点, 该虚拟节点在所述第一网络拓扑中的某 个或某些转发设备上构建, 具有属性 。 这样, 网络拓扑 ID、 节点全局标 签、节点标识、属性可以组成一个节点全局标签与 <网络拓扑 ID,节点标识, 属性 >之间的绑定关系,该绑定关系在下文中称为"节点绑定关系"。具体地, 如果该属性是 MPLS TE属性中的带宽属性, 则该节点绑定关系是节点全局 标签与 <网络拓扑 ID, 节点标识, 带宽 >的绑定关系, 该节点全局标签表示 了一个虚拟节点, 该虚拟节点在所述第一网络拓扑的转发设备上构建, 具 有指定带宽。 为所述多个虚拟节点分配的节点全局标签不同。 节点绑定关系发送模块 1212,用于将节点全局标签分配模块 1210分配 节点全局标签后形成的所述节点绑定关系发送给所述多个转发设备。 所述转发设备包括: 接收模块 1220、标签转发表项生成模块 1222和转 发模块 1224。 其中, 所述接收模块 1220, 用于接收所述节点全局标签与<网络拓扑 ID, 基础节点标识, 属性 >之间的节点绑定关系。 标签转发表项生成模块 1222, 用于根据该节点绑定关系生成包括节点 全局标签与虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转 发信息包括所述节点全局标签对应的基础节点 (转发设备) 和指定的属性 处理。 转发模块 1224,用于当所述接收模块 1220收到的报文中携带有节点全 局标签 (比如第一节点全局标签) 时, 该所述转发模块 1224根据该第一节 点全局标签查找到该第一节点全局标签对应的标签转发表项, 从而确定该 第一节点全局标签对应的第一虚拟节点的转发信息, 经过该第一节点全局 标签对应的第一属性处理, 从该第一节点全局标签对应的到达基础节点的 出接口、 下一跳信息按照该第一节点全局标签对应的第一属性处理该报文。 可选地, 该转发设备还可以包括节点标签增加模块 1226, 在分段路由 Segment Routing转发时, 当转发设备 A (所述多个转发设备中的一个) 作 为入口转发设备确定收到的第二报文要经过所述网络拓扑的所述基础节 点, 并要按照第二属性要求转发时, 节点标签增加模块 1226为该第二报文 增加为 <网络拓扑 ID、 节点标识、 第二属性>分配的第二虚拟节点的节点全 局标签。
可选地, 所述全局标签可以是所有转发设备共享的全局标签空间中选 择的单个的全局标签。
可选地, 所述全局标签可以是多个本地标签组成的, 即, 每个全局标 签包括两个或多个本地标签。 控制器为每个虚拟网络拓扑分配两个或两个 以上的本地标签, 分配给某个虚拟网络拓扑的的两个或两个以上本地标签 组成一个全局标签, 组成的全局标签用来标识该虚拟网络拓扑。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。
如图 13所示, 在本发明的一种实施方式的网络***包括至少一个控制 器和多个转发设备, 所述多个转发设备组成多个网络拓扑, 该多个网络拓 扑可以包括物理网络拓扑和虚拟网络拓扑。 所述控制器包括: 第一处理器 1310和第一接口 1312, 其中 第一处理器 1310, 用于根据虚拟节点对所述网络拓扑中的基础节点的 不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配节点全 局标签, 比如拓扑 ID为 TID^ 第一网络拓扑的某节点要求属性为 A, 则 为该第一网络拓扑中的某节点按照属性 A分配节点全局标签 N-G 。 这样 节点全局标签 代表了第一网络拓扑中的一个虚拟节点, 该虚拟节点 在所述第一网络拓扑中的某节点上构建, 具有属性 。这样, 网络拓扑 ID、 节点全局标签、节点标识、属性可以组成一个节点全局标签与 <网络拓扑 ID, 节点标识, 属性 >之间的绑定关系, 该绑定关系在下文中称为"节点绑定关 系"。 具体地, 如果该属性是 MPLS TE属性中的带宽属性, 则该节点绑定 关系是节点全局标签与<网络拓扑 ID, 节点标识, 带宽 >的绑定关系, 该节 点全局标签表示了一个虚拟节点, 该虚拟节点在所述第一网络拓扑的节点 上构建, 具有指定带宽。 第一接口 1312,用于将第一处理器 1310分配节点全局标签后形成的所 述节点绑定关系发送给所述多个转发设备。 所述转发设备包括: 第二接口 1320、 第二处理器 1322和第三处理器 1324。 其中, 第二接口 1320, 用于接收所述节点全局标签和<网络拓扑 ID, 节点标识, 属性 >之间的节点绑定关系。 第二处理器 1322, 用于根据该节点绑定关系生成包括节点全局标签与 虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转发信息包括 所述节点全局标签对应的基础节点 (转发设备) 和指定的属性处理。 第三处理器 1324,用于当第二接口 1320收到的报文中携带有节点全局 标签 (比如第一节点全局标签) 时, 该第三处理器 1324根据该第一节点全 局标签查找到该第一节点全局标签对应的第一标签转发表项, 从而确定该 第一节点全局标签对应的虚拟节点的转发信息, 经过该第一节点全局标签 对应的第一属性处理, 从该第一节点全局标签对应的到达基础节点的到达 基础节点的出接口和下一跳信息转发报文。 可选地,该转发设备还可以包括第四处理器 1326,在分段路由 Segment Routing转发时,当转发设备 A作为入口转发设备确定收到的第二报文要经 过所述网络拓扑的所述基础节点, 并要按照第二属性要求转发时, 第四处 理器 1326为该第二报文增加为 <网络拓扑 ID, 基础节点标识, 第二属性> 分配的第二节点全局标签。
可选地, 所述全局标签可以是所有转发设备共享的全局标签空间中选 择的单个的全局标签。
可选地, 所述全局标签可以是多个本地标签组成的, 即, 每个全局标 签包括两个或多个本地标签。 控制器为每个虚拟网络拓扑分配两个或两个 以上的本地标签, 分配给某个虚拟网络拓扑的的两个或两个以上本地标签 组成一个全局标签, 组成的全局标签用来标识该虚拟网络拓扑。
可选地, 所述转发设备为路由器或者交换机。
可选地, 所述控制器可以是服务器或者路由器。 本发明实施例的报文转发方法、 控制器和转发设备, 通过 IGP扩展分 发全局标签实现网络链路和节点的虚拟化, 之后可以很容易地实现 MPLS 虚拟网络, 因为使用 MPLS全局标签标识, 基础网络对上层虚拟网络完全 隐藏了物理细节,上层网络无需感知下面的链路是 Ethemet、 POS、还是 Trunk 这些不同类型的接口, 这样更安全, 虚拟网络更容易运营。 这些虚拟的节 点和链路可以按照现有的路由/ LSP 转发的出接口链路使用, 也可以按照 Segment Routing提出的 Source Routing使用。 因为这里的虚拟链路或节点 中有带宽等的概念,这样还可以实现有端到端 QoS保证的 Segment Routing 0 在本申请所提供的几个实施例中, 应该理解到, 所揭露的***, 装置 和方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅 是示意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实 现时可以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成 到另一个***, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论 的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 装置或单 元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的, 作为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地 方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的 部分或者全部单元来实现本实施例方案的目的。 另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在 一个单元中。 上述集成的单元既可以采用硬件的形式实现, 也可以采用硬 件加软件功能单元的形式实现。 比如, 检测器、 发送器、 接收器、 获得单 元都可以通过通用中央处理器 CPU或专用集成电路 (Application Specific Integrated Circuit, ASIC) 或现场可编程门阵列 (Field— Programmable Gate Array, FPGA) 来实现。 上述以软件功能单元的形式实现的集成的单元, 可以存储在一个计算 机可读取存储介质中。 上述软件功能单元存储在一个存储介质中, 包括若 干指令用以使得一台计算机设备 (可以是个人计算机, 服务器, 或者网络 设备等) 执行本发明各个实施例所述方法的部分步骤。 而前述的存储介质 包括: U盘、 移动硬盘、 只读存储器 (Read-Only Memory, 简称 ROM)、 随机存取存储器 (Random Access Memory, 简称 RAM)、 磁碟或者光盘等 各种可以存储程序代码的介质。 最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修 改, 或者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims

权利要求
1、一种网络***,其特征在于,包括至少一个控制器和多个转发设备,, 所述多个转发设备组成多个网络拓扑, 所述至少一个控制器, 用于根据虚拟链路对所述网络拓扑中基础链路 的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路 全局标签; 并将所述链路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 > 之间的链路绑定关系发送给所述多个转发设备; 分配给每个虚拟链路的链 路全局标签不同; 所述多个转发设备, 用于接收所述链路绑定关系, 根据该链路绑定关 系生成包括链路全局标签与虚拟链路转发信息的映射关系的标签转发表 项, 该虚拟链路转发信息包括所述链路全局标签对应的基础链路和指定的 属性处理。
2、 如权利要求 1所述的网络***, 其特征在于, 所述链路全局标签包 括两个或两个以上的标签。
3、如权利要求 1或 2所述的网络***,其特征在于,所述控制器包括: 链路全局标签分配模块和链路绑定关系发送模块, 其中 所述链路全局标签分配模块, 用于根据虚拟链路对所述网络拓扑中基 础链路的不同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分 配链路全局标签, 所述控制器分配给每个虚拟链路的虚拟全局节点不同; 所述链路绑定关系发送模块, 用于将所述链路全局标签分配模块分配 链路全局标签后形成的所述链路绑定关系发送给所述多个转发设备。
4、 如权利要求 1〜3 中任一所述的网络***, 其特征在于, 所述转发 设备包括: 接收模块、 标签转发表项生成模块和转发模块, 其中, 所述接收模块, 用于接收所述链路全局标签和虚拟链路的链路绑定关 系; 所述标签转发表项生成模块, 用于根据该链路绑定关系生成包括链路 全局标签与虚拟链路转发信息的映射关系的标签转发表项; 所述转发模块, 用于当转发设备收到的第一报文中携带有第一链路全 局标签时, 该转发模块根据该第一链路全局标签查找到该第一链路全局标 签对应的第一标签转发表项, 从而确定该第一链路全局标签对应的第一虚 拟链路的转发信息, 经过该第一链路全局标签对应的属性处理, 从该第一 链路全局标签对应的基础链路转发该第一报文。
5、 如权利要求 4中任一所述的网络***, 其特征在于, 所述转发设备 还包括链路标签增加模块, 在 Segment Routing转发时, 当所述多个转发设 备中的一个转发设备作为入口转发设备确定收到的第二报文要经过所述网 络拓扑的所述基础链路, 并要按照第二属性要求转发时, 所述链路标签增 加模块为该第二报文增加为 <网络拓扑 ID、 基础链路标识、 第二属性>分配 的第二链路全局标签。
6、如权利要求 1或 2所述的网络***,其特征在于,所述控制器包括: 第一处理器和第一接口, 其中 所述第一处理器, 用于根据虚拟链路对所述网络拓扑中基础链路的不 同属性要求, 为所述网络拓扑中的该基础链路按照属性要求分配链路全局 标签; 所述第一接口, 用于将所述第一处理器分配链路全局标签后形成的所 述链路绑定关系发送给所述多个转发设备。
7、 如权利要求 1或 2或 6所述的网络***, 其特征在于, 所述转发设 备包括: 第二接口、 第二处理器和第三处理器。 其中, 第二接口, 用于接收所述链路全局标签与<网络拓扑 ID, 基础链 路标识, 属性 >之间的链路绑定关系。 第二处理器, 用于根据该链路绑定关系生成包括链路全局标签与虚拟 链路转发信息的映射关系的标签转发表项, 该虚拟链路转发信息包括所述 链路全局标签对应的基础链路和指定的属性处理; 第三处理器, 用于当转发设备收到的第一报文中携带有第一链路全局 标签时, 该第三处理器根据该第一链路全局标签查找到该第一链路全局标 签对应的第一标签转发表项, 从而确定该第一链路全局标签对应的第一虚 拟链路的转发信息, 经过该第一链路全局标签对应的第一属性处理, 从该 第一链路全局标签对应的基础链路转发该第一报文。
8、 如权利要求 7所述的网络***, 其特征在于, 该转发设备还包括第 四处理器, 在 Segment Routing转发时, 当该多个转发设备中的一个转发设 备作为入口转发设备确定收到的第二报文要经过所述网络拓扑的所述基础 链路, 并要按照第二属性要求转发时, 所述第四处理器为该第二报文增加 为<网络拓扑 ID, 基础链路标识, 第二属性>分配的第二链路全局标签。
9、 如权利要求 1〜8 中任一所述的网络***, 其特征在于, 该属性为 多协议标签交换隧道工程 MPLS TE属性。
10、 如权利要求 9所述的网络***, 其特征在于, 该 MPLS TE属性包 括带宽、 显式路径、 颜色、 保护、 快速重路由 FRR、 共享风险链路组 SRLG 中的一个或多个。
11、 一种网络***, 其特征在于, 包括至少一个控制器和多个转发设 备, 所述多个转发设备组成多个网络拓扑, 所述至少一个控制器, 用于根据虚拟节点对所述网络拓扑中基础节点 的不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配节点 全局标签; 并将所述节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 > 之间的节点绑定关系发送给所述多个转发设备; 分配给每个虚拟链路的节 点全局标签不同; 所述多个转发设备, 用于接收所述节点绑定关系, 根据该节点绑定关 系生成包括节点全局标签与虚拟节点转发信息的映射关系的标签转发表 项, 该虚拟节点转发信息包括所述节点全局标签对应的基础节点和指定的 属性处理。
12、 如权利要求 11所述的网络***, 其特征在于, 所述链路全局标签 包括两个或两个以上的标签。
13、 如权利要求 11或 12所述的网络***, 其特征在于, 所述控制器 包括: 节点全局标签分配模块和节点绑定关系发送模块, 其中 所述节点全局标签分配模块, 用于根据虚拟节点对所述多个网络拓扑 中对所述基础节点的不同属性要求, 为所述多个网络拓扑中的该基础节点 按照属性要求分配节点全局标签; 为所述多个虚拟节点分配的节点全局标 签不同; 所述节点绑定关系发送模块, 用于将所述节点全局标签分配模块分配 节点全局标签后形成的所述节点全局标签与<网络拓扑 ID, 基础节点标识, 属性 >之间节点绑定关系的发送给所述多个转发设备。
14、 如权利要求 11~13 中任一所述的网络***, 其特征在于, 所述转 发设备包括: 接收模块、 标签转发表项生成模块和转发模块; 其中, 所述接收模块,用于接收所述节点全局标签与<网络拓扑 ID,基础节点 标识, 属性 >之间的节点绑定关系。 所述标签转发表项生成模块, 用于根据该节点绑定关系生成包括节点 全局标签与虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转 发信息包括所述节点全局标签对应的基础节点和所述属性处理; 所述转发模块, 用于当所述接收模块收到的第一报文中携带有第一节 点全局标签时, 该所述转发模块根据该第一节点全局标签查找到该第一节 点全局标签对应的标签转发表项, 从而确定该第一节点全局标签对应的第 一虚拟节点的转发信息, 经过所述第一节点全局标签对应的第一属性处理, 从该第一节点全局标签对应的到达基础节点的出接口和下一跳信息转发该 第一报文。
15、 如权利要求 14所述的网络***, 其特征在于, 该转发设备还包括 节点标签增加模块, 在分段路由 Segment Routing转发时, 当所述多个转发 设备中的一个转发设备作为入口转发设备确定收到的第二报文要经过所述 网络拓扑的所述基础节点, 并要按照第二属性要求转发时, 所述节点标签 增加模块为该第二报文增加为<网络拓扑 ID、 基础节点标识、 第二属性>分 配的第二虚拟节点的第二节点全局标签。
16、 如权利要求 11或 12所述的网络***, 其特征在于, 该控制器包 括第一处理器和第一接口, 其中 所述第一处理器, 用于根据虚拟节点对所述网络拓扑中的基础节点的 不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配节点全 局标签, 所述第一接口, 用于将所述第一处理器分配节点全局标签后形成的所 述节点绑定关系发送给所述多个转发设备。
17、 如权利要求 11或 12或 16所述的网络***, 其特征在于, 所述转 发设备包括第二接口、 第二处理器和第三处理器, 其中 所述第二接口,用于接收所述节点全局标签与<网络拓扑 ID,基础节点 标识, 属性 >之间的节点绑定关系; 所述第二处理器, 用于根据该节点绑定关系生成包括节点全局标签与 虚拟节点转发信息的映射关系的标签转发表项, 该虚拟节点转发信息包括 所述节点全局标签对应的基础节点和指定的属性处理; 所述第三处理器, 用于当所述第二接口收到的第一报文中携带有第一 节点全局标签时, 该第三处理器根据该第一节点全局标签查找到该第一节 点全局标签对应的第一标签转发表项, 从而确定该第一节点全局标签对应 的第一虚拟节点的转发信息, 经过该第一节点全局标签对应的属性处理, 从该第一节点全局标签对应的到达基础节点的出接口和下一跳信息转发该 第一报文。
18、 如权利要求 17所述的网络***, 其特征在于, 所述转发设备还包 括第四处理器, 在分段路由 Segment Routing转发时, 当转发设备作为入口 转发设备确定收到的第二报文要经过所述网络拓扑的所述基础节点, 并要 按照第二属性要求转发时, 该第四处理器为该第二报文增加为 <网络拓扑 ID, 基础节点标识, 第二属性>分配的第二节点全局标签。
19、 如权利要求 11〜18所述的网络***, 其特征在于, 该属性为多协 议标签交换隧道工程 MPLS TE属性。
20、 如权利要求 19所述的网络***, 其特征在于, 该 MPLS TE属性 包括带宽、显式路径、颜色、保护、快速重路由 FRR、共享风险链路组 SRLG 中的一个或多个。
21、 一种转发报文的方法, 其特征在于, 该方法应用于包括至少一个 控制器和多个转发设备的网络***, 所述多个转发设备组成多个网络拓扑, 接收链路全局标签与 <网络拓扑 ID, 基础链路标识, 属性 >的链路绑定 关系,
根据所述链路绑定关系生成包括链路全局标签与虚拟链路转发信息的 映射关系的标签转发表项, 该虚拟链路转发信息包括所述链路全局标签对 应的基础链路和指定的属性处理; 所述链路绑定关系是由所述至少一个控 制器为根据虚拟链路对所述网络拓扑中基础链路的不同属性要求, 为所述 网络拓扑中的该基础链路按照属性要求分配链路全局标签, 并将链路全局 标签与 <网络拓扑 ID, 基础链路标识, 属性 >之间的链路绑定关系发送给所 述多个转发设备的; 分配给分配给每个虚拟链路的链路全局标签不同。
22、 如权利要求 21所示的方法, 其特征在于, 当所述转发设备收到的 第一报文中携带有第一链路全局标签时, 该转发设备根据该第一链路全局 标签查找到该第一链路全局标签对应的标签转发表项, 从而确定该第一链 路全局标签对应的第一虚拟链路的转发信息, 经过该第一链路全局标签对 应的第一属性处理, 从该第一链路全局标签对应的基础链路转发该第一报 文。
23、如权利要求 20或 21所示的方法,其特征在于,在分段路由 Segment Routing转发时, 当所述多个转发设备中的一个转发设备作为入口转发设备 确定收到的第二报文要经过所述网络拓扑的所述基础链路, 并要按照第二 属性要求转发时, 需要为该报文增加为 <网络拓扑 ID, 基础链路标识, 第二 属性 >分配的第二链路全局标签。
24、 如权利要求 21〜23所述的网络***, 其特征在于, 该属性为多协 议标签交换隧道工程 MPLS TE属性。
25、 如权利要求 24所述的网络***, 其特征在于, 该 MPLS TE属性 包括带宽、显式路径、颜色、保护、快速重路由 FRR、共享风险链路组 SRLG 中的一个或多个。
26、 一种转发报文的方法, 其特征在于, 该方法应用于包括至少一个 控制器和多个转发设备的网络***, 所述多个转发设备组成多个网络拓扑, 接收节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 >的绑定关系, 根据所述节点绑定关系生成包括节点全局标签与虚拟节点转发信息的 映射关系的标签转发表项, 该虚拟节点转发信息包括所述节点全局标签对 应的到达基础节点的出接口、 下一跳信息以及指定的属性处理; 所述节点 绑定关系是由所述至少一个控制器为根据虚拟节点对所述网络拓扑中基础 节点的不同属性要求, 为所述网络拓扑中的该基础节点按照属性要求分配 节点全局标签, 并将节点全局标签与 <网络拓扑 ID, 基础节点标识, 属性 > 之间的节点绑定关系发送给所述多个转发设备的; 分配给分配给每个虚拟 节点的节点全局标签不同。
27、 如权利要求 26所示的方法, 其特征在于, 当所述转发设备收到的 第一报文中携带有第一节点全局标签时, 该转发设备根据该第一节点全局 标签查找到该第一节点全局标签对应的标签转发表项, 从而确定该第一节 点全局标签对应的第一虚拟节点的转发信息, 经过该第一节点全局标签对 应的第一属性处理, 从该第一节点全局标签对应的基础节点转发该第一报 文。
28、如权利要求 26或 27所示的方法,其特征在于,在分段路由 Segment Routing转发时,当转发设备 A作为入口转发设备确定收到的第二报文要经 过所述网络拓扑的所述基础节点, 并要按照第二属性要求转发时, 需要为 该报文增加为 <网络拓扑 ID, 基础节点标识, 第二属性>分配的第二节点全 局标签。
29、 如权利要求 26〜28所述的网络***, 其特征在于, 该属性为多协 议标签交换隧道工程 MPLS TE属性。
30、 如权利要求 29所述的网络***, 其特征在于, 该 MPLS TE属性 包括带宽、显式路径、颜色、保护、快速重路由 FRR、共享风险链路组 SRLG
PCT/CN2013/085501 2013-10-18 2013-10-18 转发报文的方法、控制器、转发设备和网络*** WO2015054904A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2013/085501 WO2015054904A1 (zh) 2013-10-18 2013-10-18 转发报文的方法、控制器、转发设备和网络***
EP13895758.4A EP3043519B1 (en) 2013-10-18 2013-10-18 Method, controller, forwarding device, and network system for forwarding packets
CN201380079969.6A CN105594167B (zh) 2013-10-18 2013-10-18 转发报文的方法、控制器、转发设备和网络***
US15/098,790 US10021023B2 (en) 2013-10-18 2016-04-14 Packet forwarding method, controller, forwarding device, and network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/085501 WO2015054904A1 (zh) 2013-10-18 2013-10-18 转发报文的方法、控制器、转发设备和网络***

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/098,790 Continuation US10021023B2 (en) 2013-10-18 2016-04-14 Packet forwarding method, controller, forwarding device, and network system

Publications (1)

Publication Number Publication Date
WO2015054904A1 true WO2015054904A1 (zh) 2015-04-23

Family

ID=52827597

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/085501 WO2015054904A1 (zh) 2013-10-18 2013-10-18 转发报文的方法、控制器、转发设备和网络***

Country Status (4)

Country Link
US (1) US10021023B2 (zh)
EP (1) EP3043519B1 (zh)
CN (1) CN105594167B (zh)
WO (1) WO2015054904A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107370675A (zh) * 2016-05-13 2017-11-21 华为技术有限公司 路由散播的方法和节点
WO2021036334A1 (zh) * 2019-08-27 2021-03-04 南京中兴软件有限责任公司 分段路由流量工程策略的发送及接收方法、装置、网元、计算机可读存储介质

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015015786A1 (ja) * 2013-07-30 2015-02-05 日本電気株式会社 通信システム、通信装置、制御装置、ネットワークデバイス、通信方法、制御方法、および、プログラム
WO2016036305A1 (en) * 2014-09-05 2016-03-10 Telefonaktiebolaget L M Ericsson (Publ) Explicit control of aggregation links via is-is
US10693732B2 (en) 2016-08-03 2020-06-23 Oracle International Corporation Transforming data based on a virtual topology
US10389628B2 (en) 2016-09-02 2019-08-20 Oracle International Corporation Exposing a subset of hosts on an overlay network to components external to the overlay network without exposing another subset of hosts on the overlay network
CN108243106B (zh) 2016-12-23 2020-09-04 华为技术有限公司 控制网络切片的方法、转发设备、控制设备和通信***
US10462013B2 (en) * 2017-02-13 2019-10-29 Oracle International Corporation Implementing a single-addressable virtual topology element in a virtual topology
CN108881014B (zh) * 2017-05-12 2021-10-01 北京猎户星空科技有限公司 一种数据发送***及方法
WO2020036983A1 (en) * 2018-08-17 2020-02-20 Futurewei Technologies, Inc. Source routing tunnel ingress protection
CN110944357B (zh) * 2018-09-25 2023-08-29 中兴通讯股份有限公司 一种网络切片的方法及装置
US10601724B1 (en) 2018-11-01 2020-03-24 Cisco Technology, Inc. Scalable network slice based queuing using segment routing flexible algorithm
CN112398732B (zh) * 2019-08-12 2023-09-12 迈普通信技术股份有限公司 一种报文处理方法、装置及***
CN116723147A (zh) * 2020-03-06 2023-09-08 华为技术有限公司 一种基于分段路由的转发控制方法、报文转发方法及装置
US11477041B2 (en) * 2020-03-31 2022-10-18 Nokia Solutions And Networks Oy Stateless multicast based on local label spaces
CN112134801B (zh) * 2020-08-11 2022-02-15 中盈优创资讯科技有限公司 分段标识sid的处理方法、装置及各节点
CN111935016A (zh) * 2020-08-14 2020-11-13 迈普通信技术股份有限公司 链路标签分配方法、装置、网络设备及可读存储介质
CN114679350B (zh) * 2022-05-30 2022-09-06 南凌科技股份有限公司 基于sd-wan的链路选取方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1531278A (zh) * 2003-03-12 2004-09-22 华为技术有限公司 一种具有流量工程属性链路自动绑定的方法
CN103248572A (zh) * 2012-02-13 2013-08-14 上海贝尔股份有限公司 建立基于接入基础设施网络的虚拟链路的方法和装置
CN103283187A (zh) * 2010-12-28 2013-09-04 日本电气株式会社 信息***、控制装置、虚拟网络的提供方法及程序

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7242665B2 (en) * 2001-01-25 2007-07-10 Ericsson Ab Network device virtual interface
US7212526B2 (en) * 2002-01-18 2007-05-01 Hitachi, Ltd. Method and apparatus for composing virtual links in a label switched network
WO2012055446A1 (en) * 2010-10-29 2012-05-03 Nokia Siemens Networks Gmbh & Co. Kg. Dynamic creation of virtualized network topology
CN102546357B (zh) * 2010-12-09 2014-12-17 华为技术有限公司 报文转发方法及网络设备
CN103023773B (zh) * 2011-09-23 2015-05-27 华为技术有限公司 多拓扑网络中转发报文的方法、装置和***
WO2013126837A1 (en) * 2012-02-24 2013-08-29 Huawei Technologies Co., Ltd. Balancing of forwarding and address resolution in overlay networks
JP5919046B2 (ja) * 2012-03-13 2016-05-18 株式会社日立製作所 パス計算方法
US20140369230A1 (en) * 2013-06-18 2014-12-18 Alcatel-Lucent Usa Inc. Virtual Chassis Topology Management
US9178796B2 (en) * 2013-06-28 2015-11-03 Cisco Technology, Inc. Multi-layer stateful path computation element architecture

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1531278A (zh) * 2003-03-12 2004-09-22 华为技术有限公司 一种具有流量工程属性链路自动绑定的方法
CN103283187A (zh) * 2010-12-28 2013-09-04 日本电气株式会社 信息***、控制装置、虚拟网络的提供方法及程序
CN103248572A (zh) * 2012-02-13 2013-08-14 上海贝尔股份有限公司 建立基于接入基础设施网络的虚拟链路的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3043519A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107370675A (zh) * 2016-05-13 2017-11-21 华为技术有限公司 路由散播的方法和节点
CN107370675B (zh) * 2016-05-13 2021-02-23 华为技术有限公司 路由散播的方法和节点
WO2021036334A1 (zh) * 2019-08-27 2021-03-04 南京中兴软件有限责任公司 分段路由流量工程策略的发送及接收方法、装置、网元、计算机可读存储介质

Also Published As

Publication number Publication date
CN105594167A (zh) 2016-05-18
US10021023B2 (en) 2018-07-10
EP3043519A4 (en) 2016-10-05
US20160234105A1 (en) 2016-08-11
EP3043519A1 (en) 2016-07-13
EP3043519B1 (en) 2019-08-28
CN105594167B (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
US10021023B2 (en) Packet forwarding method, controller, forwarding device, and network system
EP3643022B1 (en) A method for establishing segment routing for ipv6 tunnel
EP3429141B1 (en) Segment routing label switched path for non-segment routing enabled routers
US10164838B2 (en) Seamless segment routing
US11483237B2 (en) BIER traffic engineering (BIER-TE) using unicast MPLS-TE tunnels
US7787380B1 (en) Resource reservation protocol with traffic engineering point to multi-point label switched path hierarchy
CN107026791B (zh) 虚拟专用网络vpn业务优化方法和设备
US10554537B2 (en) Segment routing in a multi-domain network
US8467411B1 (en) Service-specific forwarding in an LDP-RSVP hybrid network
US8488614B1 (en) Upstream label assignment for the label distribution protocol
WO2016115823A1 (zh) 标签构造以及标签报文转发方法及装置
US11743166B2 (en) Provisioning non-colored segment routing label switched paths via segment routing policies in border gateway protocol
CN101243648B (zh) 用于使能标签交换数据分组的路由选择的方法和装置
WO2015192501A1 (zh) 地址信息的发布方法及装置
WO2017211164A1 (zh) 一种确定跨域标签交换路径隧道的方法、设备和***
JP2015159486A (ja) 中継ノード及び経路制御方法
WO2015054902A1 (zh) 转发报文的方法、控制器、转发设备和网络***
CN112118178B (zh) 网络装置和用于ip网络中基于类别的流量工程的方法
US11296973B2 (en) Path information transmission device, path information transmission method and path information transmission program
CN111837368B (zh) 使用内部网关协议通告和编程优选路径路由
WO2009013582A1 (en) System and method for ethernet label distribution
CN113709034A (zh) 使用路由协议的定向信息分布中的位掩码路线目标
WO2020072778A1 (en) Extending border gateway protocol link state for controller
US11303549B2 (en) Segmented traceroute for segment routing traffic engineering
EP3913868A1 (en) Segmented traceroute for segment routing traffic engineering

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

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2013895758

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2013895758

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE