[go: up one dir, main page]

WO2016095571A1 - Method and device for establishing a multicast channel - Google Patents

Method and device for establishing a multicast channel Download PDF

Info

Publication number
WO2016095571A1
WO2016095571A1 PCT/CN2015/088977 CN2015088977W WO2016095571A1 WO 2016095571 A1 WO2016095571 A1 WO 2016095571A1 CN 2015088977 W CN2015088977 W CN 2015088977W WO 2016095571 A1 WO2016095571 A1 WO 2016095571A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
label
global
multicast
mapping table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2015/088977
Other languages
French (fr)
Chinese (zh)
Inventor
李振斌
陈霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of WO2016095571A1 publication Critical patent/WO2016095571A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks

Definitions

  • the present invention relates to the field of information transmission technologies, and in particular, to a method and an apparatus for establishing a multicast tunnel.
  • the traffic of the VPN can be multicast through the MPLS (Multi-Protocol Label Switching) multicast tunnel.
  • MPLS Multi-Protocol Label Switching
  • the MPLS multicast tunnel is also called an MPLS multicast tree.
  • the root node can establish a P2MP (Point to Multi-point) MPLS multicast tunnel through the RSVP-TE (Resource ReSerVation Protocol-Traffic Engineering) protocol.
  • the specific process is as follows: The node calculates the path of the multicast tunnel according to the internally stored leaf node and its own information and the path calculation constraint information, generates path information, and sends path information along the path to the intermediate node and the leaf node; wherein the intermediate node or the leaf node receives
  • the path information includes the identifier of each node of the path where the node is located and the corresponding outbound interface information; the outbound interface information is used to enable the node to determine the next node corresponding to the node, and the next node corresponding to the node, that is, the multicast tunnel passes through the node.
  • each node generates a forwarding entry according to the path information, wherein the forwarding entry of the root node and the intermediate node includes label operation and label information (including outgoing label and/or inbound label) ) and outgoing interface information, etc., the leaf node's forwarding entry contains label operations and labels. Information (the tag) and the like.
  • each node determines itself as the root node according to the path information, and the intermediate node or the leaf node determines itself as an intermediate node or a leaf node according to the received path information; the leaf node and the intermediate node receive the
  • the path information generates its own ingress label and determines the previous section on the path through the node in the multicast tunnel relative to the node.
  • Point send its own ingress label to the previous node, the previous node uses the ingress label as its own outgoing label; each node generates a forwarding entry according to the path information and its own label information.
  • the root node determines the multicast tunnel to be entered by the multicast data, and transmits the multicast data according to the multicast tunnel.
  • the specific process is as follows: the root node encapsulates the multicast data according to its own label operation. The label is sent out, and the multicast data is sent to the next node corresponding to the interface according to its own outbound interface information; when receiving the multicast data, the intermediate node replaces the label carried by the multicast data with its own label operation. The label is sent out, and the multicast data is sent to the next node corresponding to the interface according to its own outbound interface information.
  • the leaf node receives the multicast data, the leaf node decapsulates the multicast data carrying the label according to its own label operation, and sends the multicast data to the other device. send.
  • the root node When the multicast data is transmitted through the MPLS multicast tunnel, when the root node corresponds to multiple next nodes, the root node needs to replicate multiple pieces of multicast data, and encapsulates one of its own outgoing labels for each of the duplicated multicast data.
  • the intermediate node When the intermediate node corresponds to multiple next nodes, the intermediate node also needs to copy multiple pieces of multicast data when receiving the multicast data carrying the label, and replace one of the duplicated multicast data with one of its own outgoing labels, so that The process of transmitting multicast data in an MPLS multicast tunnel is complicated, resulting in low transmission efficiency.
  • the embodiment of the invention provides a method and a device for establishing a multicast tunnel, which are used to improve the transmission efficiency of multicast data transmitted by the MPLS multicast tunnel.
  • a method for establishing a multicast tunnel including:
  • each node includes a root node, an intermediate node, and a leaf node;
  • the path information includes an identifier and a location of each node The outbound interface information of the root node and the outbound interface information of the intermediate node;
  • the label operation refers to an operation type of operating the multicast data;
  • the label mapping table Sending, by the identifiers of the nodes, the label mapping table to the nodes, so that the nodes obtain forwarding entries that are recognized by the forwarding engine according to the received label mapping table; wherein the forwarding entries are used for Transmitting the multicast data, and the outbound label included in the forwarding entry of the root node and the intermediate node is the global label;
  • the outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.
  • a label mapping table includes:
  • a label mapping table is sent to each node according to the southbound protocol.
  • a method for establishing a multicast tunnel including:
  • the node in the multicast tunnel receives the label mapping table.
  • the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel;
  • the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data;
  • the obtaining, by the label mapping table, a forwarding entry that can be identified by the forwarding engine includes:
  • the global label is used as its own outgoing label
  • the global label is used as its own outgoing label and incoming label
  • the global label is used as its own ingress label.
  • the method after the obtaining, by the label mapping table, a forwarding entry that is recognizable by the forwarding engine, the method also includes:
  • the global label is encapsulated for the multicast data according to the label operation, and the global node is encapsulated according to the outbound interface information to the next node pointed by the outbound interface information.
  • the multicast data after the label or,
  • the node is an intermediate node, forwarding, according to the outbound interface information, the multicast data that carries the global label to a next node that is sent by the outbound interface information;
  • an apparatus for establishing a multicast tunnel including:
  • An acquiring unit configured to acquire path information corresponding to the multicast tunnel and label operations of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node; and the path information includes the foregoing
  • the label operation refers to an operation type of operating the multicast data;
  • An allocating unit configured to allocate a global label to the multicast tunnel
  • a sending unit configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table;
  • the forwarding entry is used to transmit the multicast data, and the outgoing label included in the forwarding entry of the root node and the intermediate node is the global label;
  • the outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.
  • the sending unit is configured to:
  • a label mapping table is sent to each node according to the southbound protocol.
  • a node including:
  • a receiving unit configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node;
  • the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data;
  • a generating unit configured to obtain, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine; wherein the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the node is The outgoing label included in the forwarding entry is the global label.
  • the generating unit is configured to:
  • the global label is used as its own outgoing label
  • the global label is used as its own outgoing label and Enter the label
  • the global label is used as its own ingress label.
  • the node further includes:
  • An operation unit configured to encapsulate the global label for the multicast data according to the label operation, and to the next node pointed to by the outbound interface information according to the outbound interface information, when the node is a root node Transmitting the multicast data after the global label is encapsulated;
  • An operation unit configured to: when the node is an intermediate node, forward the multicast data that carries the global label to a next node that is sent by the outbound interface information according to the outbound interface information; or
  • An operation unit configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.
  • the root is When a node corresponds to multiple next nodes, the root node only needs to encapsulate the received multicast data once, and then copy multiple copies to its corresponding multiple nodes; when the intermediate node corresponds to multiple next nodes If the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.
  • FIG. 1 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 1 of the present invention
  • FIG. 2 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 2 of the present invention
  • FIG. 3 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 3 of the present invention
  • FIG. 4 is a schematic structural diagram of an apparatus for establishing a multicast tunnel according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic structural diagram of an apparatus for establishing a multicast tunnel according to Embodiment 5 of the present invention.
  • FIG. 6 is a schematic structural diagram of a node according to Embodiment 6 of the present invention.
  • FIG. 7 is a schematic structural diagram of another node according to Embodiment 6 of the present invention.
  • FIG. 8 is a schematic structural diagram of a node according to Embodiment 7 of the present invention.
  • the embodiment of the invention provides a method for establishing a multicast tunnel, as shown in FIG. 1 , which includes:
  • each node includes a root node, an intermediate node, and a leaf node; and the path information includes identifiers of the nodes.
  • the execution body of the embodiment of the present invention may be a server.
  • the execution subject is used as a server for exemplary description.
  • the multicast tunnel can be an MPLS multicast tunnel.
  • the MPLS multicast tunnel can be a P2MP MPLS multicast tunnel or an MP2MP (Multi-point to Multi-point) MPLS multicast tunnel.
  • the identifier of the node is used to distinguish different nodes, so that the server sends information to each node according to the identifier of the node.
  • the identifier of each node may be an IP (Internet Protocol) protocol or an ID (Identifier) of each node, and may be other identifiers.
  • the multicast tunnel in step 101 may be composed of multiple paths.
  • the outbound interface information of the root node/intermediate node can include only the outbound interface. It can also include the outbound interface and the next hop.
  • the next hop of the root node/intermediate node may be the address of the next node relative to the root node/intermediate node on the path passing through the root node/intermediate node in the multicast tunnel, and the root node and the intermediate node correspond to There may be more than one next hop.
  • the label operation may be a package (PUSH) operation; for the intermediate node, the label operation may be a forwarding (SWAP) operation; for a leaf node, the label operation may be a decapsulation (POP) operation.
  • PUSH package
  • SWAP forwarding
  • POP decapsulation
  • the server itself can calculate the path information corresponding to the multicast tunnel, and can also receive the path information corresponding to the multicast tunnel sent by other devices.
  • the step 101 may be specifically: obtaining the information of the root node and the leaf node in the multicast tunnel, where the information may be the identifier of the root node and the leaf node, specifically The IP address or ID of the root node and the leaf node; the traffic bandwidth of the multicast tunnel and the display path of the root node to the leaf node are calculated; the constraint information is calculated according to the information of the root node and the leaf node and the path information.
  • the server may obtain the information of the root node and the leaf node and the path calculation constraint information through the artificial configuration, and may also receive the information of the root node and the leaf node and the path calculation constraint information sent by other devices. It should be noted that after calculating the path information corresponding to the multicast tunnel, the server can know which nodes are intermediate nodes.
  • the global label can be represented by GL (Global), of course, it can also be used His logo indicates.
  • step 101 and step 102 are in no particular order, that is, step 101 may be performed first, and then step 102 may be performed; step 102 may be performed first, and then step 101 may be performed; step 101 and step 102 may also be performed simultaneously. .
  • a global label is used to indicate a multicast tunnel, and different multicast tunnels are represented by different global labels.
  • the server only needs to assign a global label to the multicast tunnel.
  • Each node in the multicast tunnel uses the global label. Specifically, the root node in the multicast tunnel uses the global label as its own. After the label is sent, the intermediate node uses the global label as its own inbound label and outbound label, and the leaf node uses the global label as its own ingress label.
  • the intermediate node/leaf node may also be a node in another multicast tunnel. Therefore, there may be multiple forwarding tables in the intermediate node/leaf node.
  • the intermediate node/leaf node needs to compare the label carried by the received multicast data with its own ingress label to determine the forwarding entry corresponding to the multicast data.
  • the outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.
  • the multicast data may be Layer 2 multicast data or Layer 3 multicast data, or may be public network multicast data or VPN multicast data.
  • the server may send the label mapping table to each node at the same time, or may send the label mapping table to each node in sequence.
  • the label mapping table of the root node may further include a tunnel identifier.
  • the method may further include: the server sends a relationship between the multicast address and the tunnel identifier to the root node, where the root node imports the multicast data into the group. Broadcast tunnel, in which the multicast address is included in the multicast data.
  • a network device may be the root node of multiple multicast tunnels. Therefore, when the root node receives the multicast data, it needs to determine which multicast tunnel to import the received multicast data based on the relationship between the multicast address and the multicast tunnel.
  • the step 103 may be: sending a label mapping table to each node according to the southbound protocol.
  • the southbound protocol may be a PCEP (Path Computation Element Protocol), a Netconf (Network Configuration) protocol, an Openflow protocol, or the like.
  • a southbound protocol may be deployed between the server and each node in advance for the server to send a label mapping table to each node according to the southbound protocol.
  • each node after each node receives the label mapping table sent by the server, if the forwarding engine can identify the label mapping table, each node directly uses the received label mapping table as a forwarding entry; if the forwarding engine cannot identify the forwarding table itself; In the label mapping table, each node needs to generate a forwarding entry that the forwarding engine can recognize according to the label mapping table.
  • the root node/intermediate node can determine the next node corresponding to itself according to its outbound interface information; when there are multiple paths through the root node/intermediate node in the multicast tunnel, the root node/intermediate node corresponds to multiple lower nodes. One node.
  • each node when each node generates a forwarding entry, since the labels used by each node are global labels, although there may be multiple nodes corresponding to the intermediate node and the root node, there is only one outgoing label of the intermediate node and the root node. In the prior art, since the outgoing labels of the root node and the intermediate node are from the next node corresponding to the corresponding node, when the intermediate node and the root node correspond to multiple next nodes, the outgoing labels of the intermediate node and the root node also have Multiple.
  • the forwarding engine in the existing node may be partially modified, so that the intermediate node finds that it is received.
  • the label carried by the multicast data is the same as the label of its own, it can be determined according to its own label operation that it does not replace the label carried by the received multicast data, but after copying multiple received multicast data, The plurality of next nodes corresponding to themselves transmit the multicast data.
  • the intermediate node may also replace the received label of the received multicast data with its own outgoing label (still a global label), and then copy the multiple copies of the multicast data and send them to multiple corresponding next nodes.
  • both the intermediate node and the leaf node need to generate their own inbound labels, and the outgoing labels of the root node and the intermediate node are from the next section corresponding to itself.
  • the label allocation process of each node is complicated; on the other hand, when a multicast tunnel in multiple multicast tunnels fails, the labels allocated by each node in the same multicast tunnel may be different.
  • the maintenance personnel need to determine whether the upstream and downstream labels of each node match, which makes the process of determining the faulty multicast tunnel more complicated.
  • the labels of the nodes in the multicast tunnel are global labels, and it is relatively easy for the device maintenance personnel to determine whether the upstream and downstream labels of each node match, so that multiple When a multicast tunnel in a multicast tunnel fails, the faulty multicast tunnel can be determined more quickly.
  • the upstream and downstream label matching of the node means that the outgoing label of the previous node corresponding to the node is the same as the incoming label of the node, and the outgoing label of the node is the same as the incoming label of the next node corresponding to the node.
  • the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes.
  • the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.
  • the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.
  • An embodiment of the present invention provides a method for establishing a multicast tunnel, as shown in FIG. 2, including:
  • the node in the multicast tunnel receives the label mapping table.
  • the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel.
  • the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type for operating the multicast data.
  • the label operation may be an encapsulation operation, and the root node performs encapsulation operation on the received multicast data; for the intermediate node, the label operation may be a forwarding operation, if the intermediate node finds the received group.
  • the label operation may represent that the node does not replace the label with the label carried by the received multicast data; for the leaf node, the label operation may be a decapsulation operation, which represents The leaf node decapsulates the received multicast data carrying the label.
  • the outbound tag included in the item is the global tag.
  • step 202 after the node receives the label mapping table sent by the server, if the forwarding engine can identify the label mapping table, each node directly uses the received label mapping table as a forwarding entry; The forwarding engine cannot identify the label mapping table, and each node needs to generate a forwarding entry that the forwarding engine can recognize according to the label mapping table.
  • the step 202 may be implemented by: when the node is a root node, using the global label as its own outgoing label; or when the node is an intermediate node, using the global label as its own Outbound label and inbound label; or, when the node is a leaf node, the global label is used as its own ingress label.
  • each node in the embodiment of the present invention when each node in the embodiment of the present invention generates a forwarding entry, since the labels used by each node are global labels, although the root node and the intermediate node may have multiple nodes, the root may be There is only one outbound label of the node and the intermediate node; in the prior art, since the outgoing label of the root node and the intermediate node comes from the corresponding next node, when the root node and the intermediate node correspond to multiple next nodes, There are also multiple outbound tags for the root and intermediate nodes.
  • each node may also generate other information (for example, outbound interface information) in the label mapping table to generate a forwarding entry that the forwarding engine can recognize.
  • other information for example, outbound interface information
  • the method may further include:
  • the global label is encapsulated for the multicast data according to the label operation, and the global node is encapsulated according to the outbound interface information to the next node pointed by the outbound interface information.
  • the multicast data after the label or,
  • the outbound interface information is sent according to the outbound interface information.
  • the next node pointed to by the information forwards the multicast data after carrying the global label;
  • the node is a leaf node, receiving the multicast data that carries the global label, and decapsulating the multicast data that carries the global label according to the label operation.
  • the first group receives the received group according to the relationship between the multicast address and the multicast tunnel.
  • the broadcast data is imported into the multicast tunnel, and then the root node encapsulates the global label for the multicast data, and sends the multicast data encapsulated with the global label to the next node corresponding to the root node according to the outbound interface information in the forwarding entry;
  • the intermediate node can determine that the received label is the same as the received label if it finds that the received label carries the same label as its own label.
  • the multicast data is copied and sent to a plurality of next nodes corresponding to the multicast data.
  • the intermediate node may also replace the received label of the received multicast data with its own outgoing label (still a global label), and then copy the multiple copies of the multicast data and send them to multiple corresponding next nodes.
  • the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes.
  • the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.
  • the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.
  • the method for establishing a multicast tunnel may specifically include the following steps:
  • the server obtains the IP address of the root node and the leaf node in the multicast tunnel and the path calculation constraint information of the multicast tunnel.
  • the path calculation constraint information may be a traffic bandwidth on the multicast tunnel, a display path from the root node to the leaf node, and the like.
  • the server calculates the path information corresponding to the multicast tunnel according to the information of the root node and the leaf node and the path calculation constraint information.
  • the server can know which nodes are intermediate nodes.
  • the path information may include: an identifier of each node in the multicast tunnel, an outbound interface information of the root node, and an outbound interface information of the intermediate node.
  • Each node includes a root node, an intermediate node, and a leaf node.
  • the label operation refers to an operation type of performing operation on the multicast data.
  • the server may generate a label operation of each node according to the node role of each node.
  • the node role of the node refers to whether the node is a root node, an intermediate node, or a leaf node in the multicast tunnel.
  • the label operation may be an encapsulation operation, and the root node performs an operation of encapsulating the label for the received multicast data;
  • the label operation may be a forwarding operation, and if the intermediate node finds the received multicast,
  • the label operation may represent that the node does not replace the label carried by the received multicast data;
  • the label operation may be a decapsulation operation, representing the leaf. The node decapsulates the received multicast data carrying the label.
  • the server allocates a global label GL for the multicast tunnel.
  • step 304 can be performed before or after any of the steps before step 305.
  • the server sends a label mapping table to each node according to the PCEP protocol.
  • the labeling table including the label operation of the root node, the outbound interface information of the root node, and the global label is sent to the root node, and the label operation including the intermediate node, the outbound interface information of the intermediate node, and the label mapping of the global label are sent to the intermediate node.
  • the table sends a label mapping table including a label operation of the leaf node and a global label to the leaf node.
  • Each node generates, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine.
  • step 306 may be: the root node uses GL as its own outgoing label; the intermediate node uses GL as its own outgoing label and incoming label; the leaf node uses GL as its own incoming label.
  • the forwarding entry of the root node may be specifically [PUSH, GL, IntfX-IntfY]; wherein PUSH indicates that the label operation of the root node is a package operation; GL indicates an outgoing label of the root node; and IntfX-IntfY is the root node.
  • Interface information specifically, the outbound interface information may be an outbound interface list, and the elements in the outbound interface list may be IntfX, Intf(X+1), ..., Intf(Y-1), IntfY, and each element may be The outbound interface and the next hop are included.
  • the forwarding entry may indicate that the root node encapsulates the GL for the multicast data and sends the encapsulated GL multicast data to a group of next nodes pointed by the IntfX-IntfY.
  • the forwarding entry of the intermediate node may be specifically [SWAP, GL, GL, IntfM-IntfN]; wherein SWAP indicates that the label operation of the intermediate node is a forwarding operation; GL, GL are the inbound label and the outgoing label of the intermediate node, where The label is used to determine the forwarding entry corresponding to the multicast data according to the ingress label when the intermediate node receives the multicast data carrying the GL; the IntfM-IntfN is the outbound interface information of the intermediate node, and specifically, the outbound interface information may be one out
  • the interface list, the elements in the outbound interface list may be IntfM, Intf (M+1), ..., Intf (N-1), IntfN, each element may include an outbound interface and a next hop; the forwarding entry may It indicates that when the label carried by the intermediate node is the same as its own outgoing label, the intermediate node directly sends the multicast data to a group of next nodes pointed by
  • the forwarding entry of the leaf node may be specifically [POP, GL]; wherein POP indicates that the label operation of the leaf node is a decapsulation operation; GL is an ingress label of the leaf node, and is used when the leaf node receives the multicast data carrying the GL.
  • POP indicates that the label operation of the leaf node is a decapsulation operation
  • GL is an ingress label of the leaf node, and is used when the leaf node receives the multicast data carrying the GL.
  • the forwarding entry corresponding to the multicast data is determined according to the ingress label.
  • the forwarding entry may indicate that when the leaf node receives the multicast data, the leaf node decapsulates the received multicast data carrying the label.
  • the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes.
  • the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for each of the multiple multicast data, and the intermediate node does not need to copy the received multicast data for multiple copies before each group.
  • the broadcast data replaces one of its own outgoing tags. Therefore, the transmission efficiency can be improved.
  • the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.
  • the embodiment of the present invention provides a device 40 for establishing a multicast tunnel, which is used to perform the method for establishing a multicast tunnel as shown in FIG. 1.
  • the device 40 for establishing a multicast tunnel includes: an obtaining unit 401, An allocating unit 402 and a transmitting unit 403, wherein:
  • the obtaining unit 401 is configured to obtain path information corresponding to the multicast tunnel and label operations of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node, where the path information includes the The identifier of each node, the outbound interface information of the root node, and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data.
  • the allocating unit 402 is configured to allocate a global label to the multicast tunnel.
  • the sending unit 403 is configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table;
  • the forwarding entry is used to transmit the multicast data, and the outgoing label included in the forwarding entry of the root node and the intermediate node is the global label;
  • the outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.
  • the sending unit 403 is configured to: send a label mapping table to each node according to a southbound protocol.
  • the root node corresponds to the global label of the root node and the intermediate node.
  • the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple.
  • the next node when the intermediate node corresponds to multiple next nodes, if the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data and send it. Give it multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.
  • the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.
  • the sending unit in Embodiment 4 may be a transmitter; other units may be embedded in hardware or independent of the device that establishes the multicast tunnel, or may be stored in software in the device that establishes the multicast tunnel.
  • the processor in order to facilitate the processor to perform the operations corresponding to the above units, the processor may be a central processing unit (CPU), a microprocessor, a single chip microcomputer, or the like.
  • an apparatus 50 for establishing a multicast tunnel for performing the method for establishing a multicast tunnel shown in FIG. 1 according to an embodiment of the present invention.
  • the apparatus 50 for establishing a multicast tunnel includes: a memory 501.
  • the memory 501, the processor 502 and the transmitter 503 are coupled together by a bus system 504.
  • the bus system 504 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 504 in the figure.
  • the memory 501 is configured to store a set of codes.
  • the code stored in memory 501 is used to control processor 502 to perform the following actions:
  • each node includes a root node, an intermediate node, and a leaf node;
  • the path information includes an identifier and a location of each node The outbound interface information of the root node and the outbound interface information of the intermediate node;
  • the label operation refers to an operation type of operating the multicast data;
  • the transmitter 503 is configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table;
  • the forwarding entry is used to transmit multicast data.
  • the outbound label included in the forwarding entry of the root node and the intermediate node is the global label;
  • the outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.
  • the transmitter 503 is configured to: send a label mapping table to each node according to a southbound protocol.
  • the root node corresponds to the global label of the root node and the intermediate node.
  • the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes.
  • the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes.
  • the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.
  • the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.
  • the embodiment of the present invention provides a node 60 for performing the method for establishing a multicast tunnel as shown in FIG. 2.
  • the node 60 includes: a receiving unit 601, and a generating unit 602, where:
  • the receiving unit 601 is configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node;
  • the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data.
  • a generating unit 602 configured to obtain, according to the label mapping table, a forwarding engine capable of And the forwarding entry included in the forwarding entry of the node is the global label, where the forwarding entry is used to transmit multicast data, and the node is a root node or an intermediate node.
  • the generating unit 602 is configured to:
  • the global label is used as its own outgoing label
  • the global label is used as its own outgoing label and incoming label
  • the global label is used as its own ingress label.
  • the node 60 may further include:
  • the operation unit 603 is configured to: when the node is the root node, encapsulate the global label for the multicast data according to the label operation, and point to the next point pointed by the outbound interface information according to the outbound interface information. Sending, by the node, the multicast data after encapsulating the global label; or
  • the operation unit 603 is configured to: when the node is an intermediate node, forward the multicast data that carries the global label to the next node that the outbound interface information points according to the outbound interface information; or
  • the operation unit 603 is configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.
  • the node when the node is a root node and the node corresponds to multiple next nodes, the node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding node.
  • the node When the node is an intermediate node and the node corresponds to multiple next nodes, the node only needs to receive the received package when the received multicast data carries the same label as its own outgoing label. The multicast data after the global label is copied and sent to its corresponding multiple next nodes.
  • the node when the node is the root node, the node does not need to copy the multicast data sent by multiple multicast sources, and then encapsulates one of its own outgoing labels for each multicast data.
  • the node does not need to copy multiple copies of the received multicast data and then replace one of its own outgoing tags for each multicast data. Therefore, the transmission efficiency can be improved.
  • the labels used by each node are global labels. When a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine the faulty multicast tunnel more quickly.
  • the receiving unit in the sixth embodiment may be a receiver; other units may be embedded in the hardware or independent of the node, or may be stored in the memory of the node in software, so that the processor can execute the call.
  • the processor may be a central processing unit (CPU), a microprocessor, a single chip microcomputer, or the like.
  • a node 80 is provided for performing the method for establishing a multicast tunnel shown in FIG. 1 , where the node 80 includes: a receiver 801, a memory 802, a processor 803, and a communication. Interface 804 and bus system 805.
  • Communication interface 804 is used by node 80 to communicate with other nodes.
  • the receiver 801, the memory 802, the processor 803, and the communication interface 804 are coupled together by a bus system 805.
  • the bus system 805 may include a power bus, a control bus, and a status signal in addition to the data bus. Bus, etc. However, for clarity of description, various buses are labeled as bus system 805 in the figure.
  • a receiver 801 configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node;
  • the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data.
  • the memory 802 is configured to store a program.
  • the program can include program code, the program code including computer operating instructions.
  • the processor 803 executes the program stored in the memory 802 to implement the method for establishing a multicast tunnel provided by the embodiment of the present invention, including: obtaining, according to the label mapping table, a forwarding entry that can be identified by the forwarding engine; The forwarding entry is used to transmit multicast data.
  • the node is a root node or an intermediate node
  • the outgoing label included in the forwarding entry of the node is the global label.
  • the processor 803 is configured to: when the node is a root node, use the global label as its own outgoing label; or when the node is an intermediate node, use the global label as its own Outbound label and inbound label; or, when the node is a leaf node, the global label is used as its own ingress label.
  • the processor 803 is configured to: when the node is a root node, encapsulate the global label for the multicast data according to the label operation, and send the global label according to the outbound interface information. The next node pointed to by the information sends the package after the global label is encapsulated Multicast data; or,
  • the processor 803 is configured to, when the node is an intermediate node, forward the multicast data that carries the global label to a next node that is sent by the outbound interface information according to the outbound interface information; or ,
  • the processor 803 is configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.
  • the node when the node is a root node and the node corresponds to multiple next nodes, the node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding node.
  • the node When the node is an intermediate node and the node corresponds to multiple next nodes, the node only needs to receive the received package when the received multicast data carries the same label as its own outgoing label. The multicast data after the global label is copied and sent to its corresponding multiple next nodes.
  • the node when the node is the root node, the node does not need to copy the multicast data sent by multiple multicast sources, and then encapsulates one of its own outgoing labels for each multicast data.
  • the node does not need to copy multiple copies of the received multicast data and then replace one of its own outgoing tags for each multicast data. Therefore, the transmission efficiency can be improved.
  • the labels used by each node are global labels. When a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine the faulty multicast tunnel more quickly.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • 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 each embodiment of the present invention may be integrated into one processing unit, or each unit may be physically included 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 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 U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, and the program code can be stored. Medium.

Landscapes

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

Abstract

An embodiment of the present invention relates to the technical field of information transmission and disclosed are a method and device for establishing a multicast channel for improving a transmission efficiency of an MPLS multicast channel transmitting multicast data. The method for establishing the multicast channel comprises: acquiring path information corresponding to the multicast channel and a label operation of each node in the multicast channel; each node comprises a root node, an intermediate node and a leaf node; the path information comprises identifiers of each node, and outbound interface information of the root node and the intermediate node; the label operation refers to an operation type of an operation performed on the multicast data; allocating a global label to the multicast channel; transmitting a label mapping table to each node according to identifiers of each node so as to enable each node to acquire a forwarding table item which can be identified by a forwarding engine thereof according to the received label mapping table; the forwarding table is used for transmitting the multicast channel, and an outbound label comprised in the forwarding table item of the root node and intermediate node is the global label.

Description

一种建立组播隧道的方法及装置Method and device for establishing multicast tunnel

本申请要求于2014年12月15日提交中国专利局、申请号为CN 201410776810.6、发明名称为“一种建立组播隧道的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese Patent Application filed on Dec. 15, 2014, the Chinese Patent Application No. CN 201410776810.6, entitled "A Method and Apparatus for Establishing a Multicast Tunnel", the entire contents of which are incorporated by reference. In this application.

技术领域Technical field

本发明涉及信息传输技术领域,尤其涉及一种建立组播隧道的方法及装置。The present invention relates to the field of information transmission technologies, and in particular, to a method and an apparatus for establishing a multicast tunnel.

背景技术Background technique

目前,VPN(Virtual Private Network,虚拟专用网络)的流量可以通过MPLS(Multi-Protocol Label Switching,多协议标签交换)组播隧道进行组播。其中,MPLS组播隧道也称为MPLS组播树。At present, the traffic of the VPN (Virtual Private Network) can be multicast through the MPLS (Multi-Protocol Label Switching) multicast tunnel. Among them, the MPLS multicast tunnel is also called an MPLS multicast tree.

根节点可以通过RSVP-TE(Resource ReSerVation Protocol-Traffic Engineering,基于流量工程扩展的资源预留)协议建立P2MP(Point to Multi-point,点对多点)的MPLS组播隧道,具体过程如下:根节点根据内部存储的叶子节点和自身的信息以及路径计算约束信息计算组播隧道的路径,生成路径信息,并沿着路径向中间节点和叶子节点发送路径信息;其中,中间节点或叶子节点接收到的路径信息包含该节点所在路径的各个节点的标识及自身对应的出接口信息;出接口信息用于使节点确定自身对应的下一节点,节点对应的下一节点即组播隧道中经过该节点的路径上的相对于该节点的下一节点;各节点根据路径信息生成转发表项,其中,根节点和中间节点的转发表项中包含标签操作、标签信息(包括出标签和/或入标签)和出接口信息等,叶子节点的转发表项中包含标签操作和标签信息(入标签)等。各节点生成转发表项的具体过程为:根节点根据路径信息确定自身为根节点,中间节点或叶子节点根据接收到的路径信息确定自身为中间节点或叶子节点;叶子节点和中间节点根据接收到的路径信息生成自身的入标签,并确定组播隧道中经过该节点的路径上的相对于该节点的上一节 点,向该上一节点发送自身的入标签,该上一节点将该入标签作为自身的出标签;各节点根据路径信息以及自身的标签信息生成转发表项。The root node can establish a P2MP (Point to Multi-point) MPLS multicast tunnel through the RSVP-TE (Resource ReSerVation Protocol-Traffic Engineering) protocol. The specific process is as follows: The node calculates the path of the multicast tunnel according to the internally stored leaf node and its own information and the path calculation constraint information, generates path information, and sends path information along the path to the intermediate node and the leaf node; wherein the intermediate node or the leaf node receives The path information includes the identifier of each node of the path where the node is located and the corresponding outbound interface information; the outbound interface information is used to enable the node to determine the next node corresponding to the node, and the next node corresponding to the node, that is, the multicast tunnel passes through the node. The next node of the path relative to the node; each node generates a forwarding entry according to the path information, wherein the forwarding entry of the root node and the intermediate node includes label operation and label information (including outgoing label and/or inbound label) ) and outgoing interface information, etc., the leaf node's forwarding entry contains label operations and labels. Information (the tag) and the like. The specific process for each node to generate a forwarding entry is as follows: the root node determines itself as the root node according to the path information, and the intermediate node or the leaf node determines itself as an intermediate node or a leaf node according to the received path information; the leaf node and the intermediate node receive the The path information generates its own ingress label and determines the previous section on the path through the node in the multicast tunnel relative to the node. Point, send its own ingress label to the previous node, the previous node uses the ingress label as its own outgoing label; each node generates a forwarding entry according to the path information and its own label information.

根节点接收到组播数据时,确定该组播数据要进入的组播隧道,根据该组播隧道传输组播数据,具体过程如下:根节点根据自身的标签操作为该组播数据封装自身的出标签,并根据自身的出接口信息向自身对应的下一节点发送该组播数据;中间节点接收到该组播数据时,根据自身的标签操作将该组播数据携带的标签替换为自身的出标签,并根据自身的出接口信息向自身对应的下一节点发送该组播数据;叶子节点接收到该组播数据时,根据自身的标签操作解封装携带标签的组播数据,向其他设备发送。When receiving the multicast data, the root node determines the multicast tunnel to be entered by the multicast data, and transmits the multicast data according to the multicast tunnel. The specific process is as follows: the root node encapsulates the multicast data according to its own label operation. The label is sent out, and the multicast data is sent to the next node corresponding to the interface according to its own outbound interface information; when receiving the multicast data, the intermediate node replaces the label carried by the multicast data with its own label operation. The label is sent out, and the multicast data is sent to the next node corresponding to the interface according to its own outbound interface information. When the leaf node receives the multicast data, the leaf node decapsulates the multicast data carrying the label according to its own label operation, and sends the multicast data to the other device. send.

通过上述MPLS组播隧道传输组播数据时,当根节点对应多个下一节点时,根节点需要复制多份组播数据,并为复制的多份组播数据各封装一个自身的出标签;当中间节点对应多个下一节点时,中间节点接收到携带标签的组播数据时也需要复制多份组播数据,并为复制的多份组播数据各替换一个自身的出标签,这样,MPLS组播隧道传输组播数据的过程较复杂,导致传输效率较低。When the multicast data is transmitted through the MPLS multicast tunnel, when the root node corresponds to multiple next nodes, the root node needs to replicate multiple pieces of multicast data, and encapsulates one of its own outgoing labels for each of the duplicated multicast data. When the intermediate node corresponds to multiple next nodes, the intermediate node also needs to copy multiple pieces of multicast data when receiving the multicast data carrying the label, and replace one of the duplicated multicast data with one of its own outgoing labels, so that The process of transmitting multicast data in an MPLS multicast tunnel is complicated, resulting in low transmission efficiency.

发明内容Summary of the invention

本发明实施例提供一种建立组播隧道的方法及装置,用于提高MPLS组播隧道传输组播数据的传输效率。The embodiment of the invention provides a method and a device for establishing a multicast tunnel, which are used to improve the transmission efficiency of multicast data transmitted by the MPLS multicast tunnel.

为达到上述目的,本发明的实施例采用如下技术方案:In order to achieve the above object, embodiments of the present invention adopt the following technical solutions:

第一方面,提供一种建立组播隧道的方法,包括:In a first aspect, a method for establishing a multicast tunnel is provided, including:

获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型;Acquiring the path information corresponding to the multicast tunnel and the label operation of each node in the multicast tunnel; wherein each node includes a root node, an intermediate node, and a leaf node; the path information includes an identifier and a location of each node The outbound interface information of the root node and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data;

为所述组播隧道分配全局标签;Allocating a global label to the multicast tunnel;

根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签; Sending, by the identifiers of the nodes, the label mapping table to the nodes, so that the nodes obtain forwarding entries that are recognized by the forwarding engine according to the received label mapping table; wherein the forwarding entries are used for Transmitting the multicast data, and the outbound label included in the forwarding entry of the root node and the intermediate node is the global label;

其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.

结合第一方面,在第一种可能的实现方式中,所述向所述各节点发送标签映射表,包括:With reference to the first aspect, in a first possible implementation manner, the sending, to the nodes, a label mapping table includes:

按照南向协议向所述各节点发送标签映射表。A label mapping table is sent to each node according to the southbound protocol.

第二方面,提供一种建立组播隧道的方法,包括:In a second aspect, a method for establishing a multicast tunnel is provided, including:

组播隧道中的节点接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型;The node in the multicast tunnel receives the label mapping table. When the node is the root node or the intermediate node, the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel; When the leaf node is a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data;

根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。Obtaining, according to the label mapping table, a forwarding entry that can be identified by the forwarding engine; wherein the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the forwarding entry of the node is The outbound tag included is the global tag.

结合第二方面,在第一种可能的实现方式中,所述根据所述标签映射表获得自身转发引擎能够识别的转发表项,包括:With reference to the second aspect, in a first possible implementation, the obtaining, by the label mapping table, a forwarding entry that can be identified by the forwarding engine, includes:

当所述节点为根节点时,将所述全局标签作为自身的出标签;或,When the node is a root node, the global label is used as its own outgoing label; or

当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,When the node is an intermediate node, the global label is used as its own outgoing label and incoming label; or

当所述节点为叶子节点时,将所述全局标签作为自身的入标签。When the node is a leaf node, the global label is used as its own ingress label.

结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述根据所述标签映射表获得自身转发引擎能够识别的转发表项之后,所述方法还包括:With reference to the second aspect, or the first possible implementation manner of the second aspect, in the second possible implementation, after the obtaining, by the label mapping table, a forwarding entry that is recognizable by the forwarding engine, The method also includes:

当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,When the node is a root node, the global label is encapsulated for the multicast data according to the label operation, and the global node is encapsulated according to the outbound interface information to the next node pointed by the outbound interface information. The multicast data after the label; or,

当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,And when the node is an intermediate node, forwarding, according to the outbound interface information, the multicast data that carries the global label to a next node that is sent by the outbound interface information; or

当所述节点为叶子节点时,接收携带所述全局标签的所述组播数 据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。Receiving the number of multicasts carrying the global label when the node is a leaf node And, according to the label operation, decapsulating the multicast data carrying the global label.

第三方面,提供一种建立组播隧道的装置,包括:In a third aspect, an apparatus for establishing a multicast tunnel is provided, including:

获取单元,用于获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型;An acquiring unit, configured to acquire path information corresponding to the multicast tunnel and label operations of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node; and the path information includes the foregoing The identifier of the node, the outbound interface information of the root node, and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data;

分配单元,用于为所述组播隧道分配全局标签;An allocating unit, configured to allocate a global label to the multicast tunnel;

发送单元,用于根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;a sending unit, configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table; The forwarding entry is used to transmit the multicast data, and the outgoing label included in the forwarding entry of the root node and the intermediate node is the global label;

其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.

结合第三方面,在第一种可能的实现方式中,所述发送单元用于:In conjunction with the third aspect, in a first possible implementation, the sending unit is configured to:

按照南向协议向所述各节点发送标签映射表。A label mapping table is sent to each node according to the southbound protocol.

第四方面,提供一种节点,其特征在于,包括:In a fourth aspect, a node is provided, including:

接收单元,用于接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型;a receiving unit, configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node; In the case of a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data;

生成单元,用于根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。a generating unit, configured to obtain, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine; wherein the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the node is The outgoing label included in the forwarding entry is the global label.

结合第四方面,在第一种可能的实现方式中,所述生成单元用于:In conjunction with the fourth aspect, in a first possible implementation, the generating unit is configured to:

当所述节点为根节点时,将所述全局标签作为自身的出标签;或,When the node is a root node, the global label is used as its own outgoing label; or

当所述节点为中间节点时,将所述全局标签作为自身的出标签和 入标签;或,When the node is an intermediate node, the global label is used as its own outgoing label and Enter the label; or,

当所述节点为叶子节点时,将所述全局标签作为自身的入标签。When the node is a leaf node, the global label is used as its own ingress label.

结合第四方面或第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述节点还包括:With reference to the fourth aspect, or the first possible implementation manner of the fourth aspect, in a second possible implementation manner, the node further includes:

操作单元,用于当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,An operation unit, configured to encapsulate the global label for the multicast data according to the label operation, and to the next node pointed to by the outbound interface information according to the outbound interface information, when the node is a root node Transmitting the multicast data after the global label is encapsulated; or

操作单元,用于当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,An operation unit, configured to: when the node is an intermediate node, forward the multicast data that carries the global label to a next node that is sent by the outbound interface information according to the outbound interface information; or

操作单元,用于当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。An operation unit, configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.

在利用本发明实施例提供的建立组播隧道的方法及装置建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。When the multicast tunnel is configured to transmit multicast data by using the method and device for establishing a multicast tunnel provided by the embodiment of the present invention, since the outgoing labels of the root node and the intermediate node in the multicast tunnel are global labels, the root is When a node corresponds to multiple next nodes, the root node only needs to encapsulate the received multicast data once, and then copy multiple copies to its corresponding multiple nodes; when the intermediate node corresponds to multiple next nodes If the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes. Compared with the prior art, the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved.

附图说明DRAWINGS

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any creative work.

图1为本发明实施例一提供的一种建立组播隧道的方法的流程图;FIG. 1 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 1 of the present invention;

图2为本发明实施例二提供的一种建立组播隧道的方法的流程图;2 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 2 of the present invention;

图3为本发明实施例三提供的一种建立组播隧道的方法的流程图;FIG. 3 is a flowchart of a method for establishing a multicast tunnel according to Embodiment 3 of the present invention;

图4为本发明实施例四提供的一种建立组播隧道的装置的结构示意图;4 is a schematic structural diagram of an apparatus for establishing a multicast tunnel according to Embodiment 4 of the present invention;

图5为本发明实施例五提供的一种建立组播隧道的装置的结构示意图;FIG. 5 is a schematic structural diagram of an apparatus for establishing a multicast tunnel according to Embodiment 5 of the present invention;

图6为本发明实施例六提供的一种节点的结构示意图;FIG. 6 is a schematic structural diagram of a node according to Embodiment 6 of the present invention; FIG.

图7为本发明实施例六提供的另一种节点的结构示意图;FIG. 7 is a schematic structural diagram of another node according to Embodiment 6 of the present invention; FIG.

图8为本发明实施例七提供的一种节点的结构示意图。FIG. 8 is a schematic structural diagram of a node according to Embodiment 7 of the present invention.

具体实施方式detailed description

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本文中字符“/”,一般表示前后关联对象是一种“或”的关系。另外,本文中的术语“多个”是指两个或两个以上。The term "and/or" in this context is merely an association describing the associated object, indicating that there may be three relationships, for example, A and / or B, which may indicate that A exists separately, and both A and B exist, respectively. B these three situations. The character "/" in this article generally indicates that the contextual object is an "or" relationship. In addition, the term "plurality" herein means two or more.

实施例一Embodiment 1

本发明实施例提供一种建立组播隧道的方法,如图1所示,包括:The embodiment of the invention provides a method for establishing a multicast tunnel, as shown in FIG. 1 , which includes:

101、获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中 间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型。101. Obtain path information corresponding to the multicast tunnel and label operation of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node; and the path information includes identifiers of the nodes. And the outbound interface information of the root node and the middle Outbound interface information of the inter-node; the label operation refers to the type of operation for operating the multicast data.

本发明实施例的执行主体可以为服务器。本发明实施例中均以执行主体为服务器进行示例性说明。“组播隧道”可以为MPLS组播隧道,MPLS组播隧道具体可以为P2MP的MPLS组播隧道,或MP2MP(Multi-point to Multi-point,多点对多点)的MPLS组播隧道。The execution body of the embodiment of the present invention may be a server. In the embodiment of the present invention, the execution subject is used as a server for exemplary description. The multicast tunnel can be an MPLS multicast tunnel. The MPLS multicast tunnel can be a P2MP MPLS multicast tunnel or an MP2MP (Multi-point to Multi-point) MPLS multicast tunnel.

其中,节点的标识用于区分不同的节点,以便于服务器根据节点的标识向各节点发送信息。各节点的标识具体可以为各节点的IP(Internet Protocol,网络之间互连的协议)地址或者ID(Identifier,标识),当然还可以为其他标识。The identifier of the node is used to distinguish different nodes, so that the server sends information to each node according to the identifier of the node. The identifier of each node may be an IP (Internet Protocol) protocol or an ID (Identifier) of each node, and may be other identifiers.

具体的,步骤101中的组播隧道可以由多个路径组成。根节点/中间节点的出接口信息可以只包含出接口;也可以包含出接口和下一跳。其中,根节点/中间节点的下一跳可以为组播隧道中经过该根节点/中间节点的路径上的相对于该根节点/中间节点的下一节点的地址,根节点和中间节点对应的下一跳可能有多个。Specifically, the multicast tunnel in step 101 may be composed of multiple paths. The outbound interface information of the root node/intermediate node can include only the outbound interface. It can also include the outbound interface and the next hop. The next hop of the root node/intermediate node may be the address of the next node relative to the root node/intermediate node on the path passing through the root node/intermediate node in the multicast tunnel, and the root node and the intermediate node correspond to There may be more than one next hop.

示例性的,对于根节点,标签操作可以为封装(PUSH)操作;对于中间节点,标签操作可以为转发(SWAP)操作;对于叶子节点,标签操作可以为解封装(POP)操作。Exemplarily, for the root node, the label operation may be a package (PUSH) operation; for the intermediate node, the label operation may be a forwarding (SWAP) operation; for a leaf node, the label operation may be a decapsulation (POP) operation.

步骤101在具体实现时,服务器自身可以计算组播隧道对应的路径信息,也可以接收其他设备发送的组播隧道对应的路径信息。In the specific implementation, the server itself can calculate the path information corresponding to the multicast tunnel, and can also receive the path information corresponding to the multicast tunnel sent by other devices.

示例性的,当服务器自身计算组播隧道对应的路径信息时,步骤101具体可以实现为:获取组播隧道中根节点和叶子节点的信息,该信息可以为根节点和叶子节点的标识,具体可以为根节点和叶子节点的IP地址或者ID;获取组播隧道上的流量带宽、根节点到叶子节点的显示路径等路径计算约束信息;根据根节点和叶子节点的信息以及路径计算约束信息计算组播隧道对应的路径信息。具体的,服务器可以通过人为配置获取根节点和叶子节点的信息以及路径计算约束信息,也可以接收其他设备发送的根节点和叶子节点的信息以及路径计算约束信息。需要说明的是,在计算组播隧道对应的路径信息之后,服务器即可获知哪些节点为中间节点。Exemplarily, when the server itself calculates the path information corresponding to the multicast tunnel, the step 101 may be specifically: obtaining the information of the root node and the leaf node in the multicast tunnel, where the information may be the identifier of the root node and the leaf node, specifically The IP address or ID of the root node and the leaf node; the traffic bandwidth of the multicast tunnel and the display path of the root node to the leaf node are calculated; the constraint information is calculated according to the information of the root node and the leaf node and the path information. The path information corresponding to the broadcast tunnel. Specifically, the server may obtain the information of the root node and the leaf node and the path calculation constraint information through the artificial configuration, and may also receive the information of the root node and the leaf node and the path calculation constraint information sent by other devices. It should be noted that after calculating the path information corresponding to the multicast tunnel, the server can know which nodes are intermediate nodes.

102、为所述组播隧道分配全局标签102. Assign a global label to the multicast tunnel.

示例性的,全局标签可以用GL(Global)表示,当然,还可以用其 他标识表示。Exemplarily, the global label can be represented by GL (Global), of course, it can also be used His logo indicates.

需要说明的是,步骤101和步骤102的执行顺序不分先后,即可以先执行步骤101,再执行步骤102;也可以先执行步骤102,再执行步骤101;还可以同时执行步骤101和步骤102。It should be noted that the execution sequence of step 101 and step 102 is in no particular order, that is, step 101 may be performed first, and then step 102 may be performed; step 102 may be performed first, and then step 101 may be performed; step 101 and step 102 may also be performed simultaneously. .

本发明实施例中采用全局标签表示组播隧道,不同的组播隧道采用不同的全局标签表示。对于一个组播隧道来说,服务器只需要为组播隧道分配一个全局标签,组播隧道中的各节点均使用该全局标签;具体的:组播隧道中的根节点将该全局标签作为自身的出标签,中间节点将该全局标签作为自身的入标签和出标签,叶子节点将该全局标签作为自身的入标签。In the embodiment of the present invention, a global label is used to indicate a multicast tunnel, and different multicast tunnels are represented by different global labels. For a multicast tunnel, the server only needs to assign a global label to the multicast tunnel. Each node in the multicast tunnel uses the global label. Specifically, the root node in the multicast tunnel uses the global label as its own. After the label is sent, the intermediate node uses the global label as its own inbound label and outbound label, and the leaf node uses the global label as its own ingress label.

需要说明的是,对于一个组播隧道中的中间节点/叶子节点来说,中间节点/叶子节点也可能是其他组播隧道中的节点,因此,中间节点/叶子节点中可以有多个转发表项,中间节点/叶子节点需要根据接收到的组播数据携带的标签与自身的入标签进行比较来确定该组播数据对应的转发表项。It should be noted that, for an intermediate node/leaf node in a multicast tunnel, the intermediate node/leaf node may also be a node in another multicast tunnel. Therefore, there may be multiple forwarding tables in the intermediate node/leaf node. The intermediate node/leaf node needs to compare the label carried by the received multicast data with its own ingress label to determine the forwarding entry corresponding to the multicast data.

103、根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;And sending, by the identifiers of the nodes, the label mapping table to the nodes, so that the nodes obtain forwarding entries that are recognized by the forwarding engine according to the received label mapping table; wherein the forwarding entries are For transmitting the multicast data, the outbound label included in the forwarding entry of the root node and the intermediate node is the global label;

其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.

具体的,组播数据可以是二层组播数据或三层组播数据,还可以是公网组播数据或VPN组播数据。Specifically, the multicast data may be Layer 2 multicast data or Layer 3 multicast data, or may be public network multicast data or VPN multicast data.

步骤103在具体实现时,服务器可以同时向各节点发送标签映射表,也可以先后向各节点发送标签映射表。In the specific implementation, the server may send the label mapping table to each node at the same time, or may send the label mapping table to each node in sequence.

另外,根节点的标签映射表中还可以包括隧道标识,该情况下,所述方法还可以包括:服务器向根节点发送组播地址和隧道标识的关系,用于根节点将组播数据导入组播隧道,其中,组播地址包含在组播数据中。需要说明的是,一个网络设备可能是多个组播隧道的根节 点,因此,在根节点接收到组播数据时,需要根据组播地址和组播隧道的关系确定将接收到的组播数据导入到哪个组播隧道中。In addition, the label mapping table of the root node may further include a tunnel identifier. In this case, the method may further include: the server sends a relationship between the multicast address and the tunnel identifier to the root node, where the root node imports the multicast data into the group. Broadcast tunnel, in which the multicast address is included in the multicast data. It should be noted that a network device may be the root node of multiple multicast tunnels. Therefore, when the root node receives the multicast data, it needs to determine which multicast tunnel to import the received multicast data based on the relationship between the multicast address and the multicast tunnel.

可选的,步骤103在具体实现时可以为:按照南向协议向所述各节点发送标签映射表。Optionally, in step 103, the step 103 may be: sending a label mapping table to each node according to the southbound protocol.

具体的,南向协议可以为PCEP(Path Computation Element Protocol,路径计算单元协议)、Netconf(Network Configuration)协议,Openflow协议等。在步骤103之前,可以预先在服务器与各节点之间部署南向协议,用于服务器按照南向协议向各节点发送标签映射表。Specifically, the southbound protocol may be a PCEP (Path Computation Element Protocol), a Netconf (Network Configuration) protocol, an Openflow protocol, or the like. Before step 103, a southbound protocol may be deployed between the server and each node in advance for the server to send a label mapping table to each node according to the southbound protocol.

需要说明的是,各节点接收到服务器发送的标签映射表之后,若自身转发引擎能够识别该标签映射表,则各节点直接将接收到的标签映射表作为转发表项;若自身转发引擎不能识别该标签映射表,则各节点需要根据标签映射表生成自身转发引擎能够识别的转发表项。It should be noted that, after each node receives the label mapping table sent by the server, if the forwarding engine can identify the label mapping table, each node directly uses the received label mapping table as a forwarding entry; if the forwarding engine cannot identify the forwarding table itself; In the label mapping table, each node needs to generate a forwarding entry that the forwarding engine can recognize according to the label mapping table.

根节点/中间节点根据自身的出接口信息可以确定自身对应的下一节点;当组播隧道中经过该根节点/中间节点的路径有多个时,该根节点/中间节点节点对应多个下一节点。The root node/intermediate node can determine the next node corresponding to itself according to its outbound interface information; when there are multiple paths through the root node/intermediate node in the multicast tunnel, the root node/intermediate node corresponds to multiple lower nodes. One node.

另外,各节点生成转发表项时,由于各节点使用的标签均为全局标签,因此,虽然中间节点和根节点对应的下一节点可能有多个,但是中间节点和根节点的出标签只有一个;而现有技术中,由于根节点和中间节点的出标签来自于自身对应的下一节点,因此,当中间节点和根节点对应多个下一节点时,中间节点和根节点的出标签也有多个。In addition, when each node generates a forwarding entry, since the labels used by each node are global labels, although there may be multiple nodes corresponding to the intermediate node and the root node, there is only one outgoing label of the intermediate node and the root node. In the prior art, since the outgoing labels of the root node and the intermediate node are from the next node corresponding to the corresponding node, when the intermediate node and the root node correspond to multiple next nodes, the outgoing labels of the intermediate node and the root node also have Multiple.

需要说明的是,当中间节点接收到携带全局标签后的组播数据且中间节点对应多个下一节点时,可以对现有的节点中的转发引擎进行部分修改,使得中间节点若发现接收到的组播数据携带的标签和自身的出标签相同时,可以根据自身的标签操作确定自身不对接收到的组播数据携带的标签进行替换,而是复制多份接收到的组播数据后,向自身对应的多个下一节点发送该组播数据。当然,中间节点也可以将接收到的组播数据携带的标签替换为自身的出标签(仍然为全局标签)后,复制多份该组播数据后向其对应的多个下一节点发送。It should be noted that, when the intermediate node receives the multicast data that carries the global label and the intermediate node corresponds to multiple next nodes, the forwarding engine in the existing node may be partially modified, so that the intermediate node finds that it is received. When the label carried by the multicast data is the same as the label of its own, it can be determined according to its own label operation that it does not replace the label carried by the received multicast data, but after copying multiple received multicast data, The plurality of next nodes corresponding to themselves transmit the multicast data. Of course, the intermediate node may also replace the received label of the received multicast data with its own outgoing label (still a global label), and then copy the multiple copies of the multicast data and send them to multiple corresponding next nodes.

还需要说明的是,现有技术中中间节点和叶子节点都需要生成自身的入标签,而根节点和中间节点的出标签来自于自身对应的下一节 点;一方面,各节点的标签分配过程复杂;另一方面,当多个组播隧道中的某个组播隧道出现故障时,由于同一组播隧道中的各节点分配的标签可能不同,设备维护人员在确定出现故障的组播隧道的过程中,需要确定每个节点的上下游标签是否匹配,导致确定出现故障的组播隧道的过程较复杂。而本发明实施例中采用全局标签表示组播隧道时,由于组播隧道中的各节点的标签均为全局标签,设备维护人员比较容易确定每个节点的上下游标签是否匹配,使得当多个组播隧道中的某个组播隧道出现故障时,可以更加快速的确定出出现故障的组播隧道。其中,节点的上下游标签匹配是指:该节点对应的上一节点的出标签与该节点的入标签相同,该节点的出标签与该节点对应的下一节点的入标签与相同。It should also be noted that in the prior art, both the intermediate node and the leaf node need to generate their own inbound labels, and the outgoing labels of the root node and the intermediate node are from the next section corresponding to itself. On the one hand, the label allocation process of each node is complicated; on the other hand, when a multicast tunnel in multiple multicast tunnels fails, the labels allocated by each node in the same multicast tunnel may be different. During the process of determining the faulty multicast tunnel, the maintenance personnel need to determine whether the upstream and downstream labels of each node match, which makes the process of determining the faulty multicast tunnel more complicated. In the embodiment of the present invention, when the global label is used to represent the multicast tunnel, the labels of the nodes in the multicast tunnel are global labels, and it is relatively easy for the device maintenance personnel to determine whether the upstream and downstream labels of each node match, so that multiple When a multicast tunnel in a multicast tunnel fails, the faulty multicast tunnel can be determined more quickly. The upstream and downstream label matching of the node means that the outgoing label of the previous node corresponding to the node is the same as the incoming label of the node, and the outgoing label of the node is the same as the incoming label of the next node corresponding to the node.

在利用本发明实施例提供的建立组播隧道的方法建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,本发明实施例提供的建立组播隧道的方法,为各节点分配标签的过程简单,并且当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。When the multicast tunnel is configured to transmit multicast data by using the method for establishing a multicast tunnel provided by the embodiment of the present invention, the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes. When the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes. Compared with the prior art, the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved. In addition, the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.

实施例二Embodiment 2

本发明实施例提供一种建立组播隧道的方法,如图2所示,包括:An embodiment of the present invention provides a method for establishing a multicast tunnel, as shown in FIG. 2, including:

201、组播隧道中的节点接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型。201. The node in the multicast tunnel receives the label mapping table. When the node is the root node or the intermediate node, the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel. When the node is a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type for operating the multicast data.

需要说明的是,本实施例中的相关解释可以参见上述实施例。 It should be noted that related explanations in this embodiment can be referred to the above embodiments.

示例性的,对于根节点,标签操作可以为封装操作,代表根节点为接收到的组播数据进行封装标签的操作;对于中间节点,标签操作可以为转发操作,若中间节点发现接收到的组播数据携带的标签与自身的出标签相同时,该标签操作可以代表该节点对接收到的组播数据携带的标签进行不替换标签的操作;对于叶子节点,标签操作可以为解封装操作,代表叶子节点解封装接收到的携带标签的组播数据。Exemplarily, for the root node, the label operation may be an encapsulation operation, and the root node performs encapsulation operation on the received multicast data; for the intermediate node, the label operation may be a forwarding operation, if the intermediate node finds the received group. When the label carried by the broadcast data is the same as the outgoing label of the broadcast data, the label operation may represent that the node does not replace the label with the label carried by the received multicast data; for the leaf node, the label operation may be a decapsulation operation, which represents The leaf node decapsulates the received multicast data carrying the label.

202、根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。202. Obtain, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine, where the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the forwarding table of the node The outbound tag included in the item is the global tag.

具体的,步骤202在具体实现时,各节点接收到服务器发送的标签映射表之后,若自身转发引擎能够识别该标签映射表,则各节点直接将接收到的标签映射表作为转发表项;若自身转发引擎不能识别该标签映射表,则各节点需要根据标签映射表生成自身转发引擎能够识别的转发表项。Specifically, in step 202, after the node receives the label mapping table sent by the server, if the forwarding engine can identify the label mapping table, each node directly uses the received label mapping table as a forwarding entry; The forwarding engine cannot identify the label mapping table, and each node needs to generate a forwarding entry that the forwarding engine can recognize according to the label mapping table.

可选的,步骤202具体实现时可以为:当所述节点为根节点时,将所述全局标签作为自身的出标签;或,当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,当所述节点为叶子节点时,将所述全局标签作为自身的入标签。Optionally, the step 202 may be implemented by: when the node is a root node, using the global label as its own outgoing label; or when the node is an intermediate node, using the global label as its own Outbound label and inbound label; or, when the node is a leaf node, the global label is used as its own ingress label.

需要说明的是,本发明实施例中的各节点生成转发表项时,由于各节点使用的标签均为全局标签,因此,虽然根节点和中间节点对应的下一节点可能有多个,但是根节点和中间节点的出标签只有一个;而现有技术中,由于根节点和中间节点的出标签来自于自身对应的下一节点,因此,当根节点和中间节点对应多个下一节点时,根节点和中间节点的出标签也有多个。It should be noted that, when each node in the embodiment of the present invention generates a forwarding entry, since the labels used by each node are global labels, although the root node and the intermediate node may have multiple nodes, the root may be There is only one outbound label of the node and the intermediate node; in the prior art, since the outgoing label of the root node and the intermediate node comes from the corresponding next node, when the root node and the intermediate node correspond to multiple next nodes, There are also multiple outbound tags for the root and intermediate nodes.

具体的,步骤202在具体实现时,各节点还可能将标签映射表中的其他信息(例如,出接口信息)生成自身转发引擎能够识别的转发表项。Specifically, in the specific implementation of the step 202, each node may also generate other information (for example, outbound interface information) in the label mapping table to generate a forwarding entry that the forwarding engine can recognize.

可选的,在步骤202之后,所述方法还可以包括:Optionally, after the step 202, the method may further include:

当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,When the node is a root node, the global label is encapsulated for the multicast data according to the label operation, and the global node is encapsulated according to the outbound interface information to the next node pointed by the outbound interface information. The multicast data after the label; or,

当所述节点为中间节点时,根据所述出接口信息向所述出接口信 息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,When the node is an intermediate node, the outbound interface information is sent according to the outbound interface information. The next node pointed to by the information forwards the multicast data after carrying the global label; or

当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。And when the node is a leaf node, receiving the multicast data that carries the global label, and decapsulating the multicast data that carries the global label according to the label operation.

需要说明的是,利用本发明实施例提供的建立组播隧道的方法建立的组播隧道,当根节点接收到组播数据时,首先根据组播地址和组播隧道的关系将接收到的组播数据导入到组播隧道中,然后根节点为该组播数据封装全局标签,并根据转发表项中的出接口信息向根节点对应的下一节点发送封装全局标签后的组播数据;在对现有的节点中的转发引擎进行部分修改后,可以使得中间节点若发现接收到的组播数据携带的标签和自身的出标签相同时,可以根据自身的标签操作确定自身不对接收到的组播数据携带的标签进行替换,而是复制多份接收到的组播数据后,向自身对应的多个下一节点发送该组播数据。当然,中间节点也可以将接收到的组播数据携带的标签替换为自身的出标签(仍然为全局标签)后,复制多份该组播数据后向其对应的多个下一节点发送。It should be noted that, when a multicast tunnel is established by using the method for establishing a multicast tunnel provided by the embodiment of the present invention, when the root node receives the multicast data, the first group receives the received group according to the relationship between the multicast address and the multicast tunnel. The broadcast data is imported into the multicast tunnel, and then the root node encapsulates the global label for the multicast data, and sends the multicast data encapsulated with the global label to the next node corresponding to the root node according to the outbound interface information in the forwarding entry; After the partial modification of the forwarding engine in the existing node, the intermediate node can determine that the received label is the same as the received label if it finds that the received label carries the same label as its own label. After the tags carried in the broadcast data are replaced, the multicast data is copied and sent to a plurality of next nodes corresponding to the multicast data. Of course, the intermediate node may also replace the received label of the received multicast data with its own outgoing label (still a global label), and then copy the multiple copies of the multicast data and send them to multiple corresponding next nodes.

在利用本发明实施例提供的建立组播隧道的方法建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,本发明实施例提供的建立组播隧道的方法,为各节点分配标签的过程简单,并且当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。When the multicast tunnel is configured to transmit multicast data by using the method for establishing a multicast tunnel provided by the embodiment of the present invention, the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes. When the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes. Compared with the prior art, the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved. In addition, the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.

实施例三Embodiment 3

本实施例对上述实施例提供的建立组播隧道的方法进行示例性说明,相关解释可参见上述实施例。如图3所示,该建立组播隧道的方法具体可以包括以下步骤: This embodiment provides an exemplary description of the method for establishing a multicast tunnel provided by the foregoing embodiment. For related explanation, refer to the foregoing embodiment. As shown in FIG. 3, the method for establishing a multicast tunnel may specifically include the following steps:

301、服务器获取组播隧道中根节点和叶子节点的IP地址和组播隧道的路径计算约束信息。301. The server obtains the IP address of the root node and the leaf node in the multicast tunnel and the path calculation constraint information of the multicast tunnel.

具体的,路径计算约束信息可以为组播隧道上的流量带宽、根节点到叶子节点的显示路径等。Specifically, the path calculation constraint information may be a traffic bandwidth on the multicast tunnel, a display path from the root node to the leaf node, and the like.

302、服务器根据根节点和叶子节点的信息和路径计算约束信息计算组播隧道对应的路径信息。302. The server calculates the path information corresponding to the multicast tunnel according to the information of the root node and the leaf node and the path calculation constraint information.

需要说明的是,服务器在计算组播隧道对应的路径信息之后,服务器即可获知哪些节点为中间节点。It should be noted that after the server calculates the path information corresponding to the multicast tunnel, the server can know which nodes are intermediate nodes.

具体的,路径信息可以包含:组播隧道中的各节点的标识、根节点的出接口信息和中间节点的出接口信息。其中,各节点包括根节点、中间节点和叶子节点。Specifically, the path information may include: an identifier of each node in the multicast tunnel, an outbound interface information of the root node, and an outbound interface information of the intermediate node. Each node includes a root node, an intermediate node, and a leaf node.

303、获取组播隧道中各节点的标签操作;其中,标签操作是指对组播数据进行操作的操作类型。303. Obtain a label operation of each node in the multicast tunnel. The label operation refers to an operation type of performing operation on the multicast data.

步骤303在具体实现时,服务器可以根据各节点的节点角色生成各节点的标签操作,节点的节点角色是指节点在组播隧道中是根节点、中间节点还是叶子节点。In the specific implementation, the server may generate a label operation of each node according to the node role of each node. The node role of the node refers to whether the node is a root node, an intermediate node, or a leaf node in the multicast tunnel.

具体的,对于根节点,标签操作可以为封装操作,代表根节点为接收到的组播数据进行封装标签的操作;对于中间节点,标签操作可以为转发操作,若中间节点发现接收到的组播数据携带的标签与自身的出标签相同时,该标签操作可以代表该节点对接收到的组播数据携带的标签进行不替换标签的操作;对于叶子节点,标签操作可以为解封装操作,代表叶子节点解封装接收到的携带标签的组播数据。Specifically, for the root node, the label operation may be an encapsulation operation, and the root node performs an operation of encapsulating the label for the received multicast data; for the intermediate node, the label operation may be a forwarding operation, and if the intermediate node finds the received multicast, When the label carried by the data is the same as the label of the outgoing label, the label operation may represent that the node does not replace the label carried by the received multicast data; for the leaf node, the label operation may be a decapsulation operation, representing the leaf. The node decapsulates the received multicast data carrying the label.

304、服务器为组播隧道分配全局标签GL。304. The server allocates a global label GL for the multicast tunnel.

具体的,步骤304可以在步骤305之前的任何一个步骤之前或者之后执行。Specifically, step 304 can be performed before or after any of the steps before step 305.

305、服务器按照PCEP协议向各节点发送标签映射表。305. The server sends a label mapping table to each node according to the PCEP protocol.

其中,向根节点发送包含根节点的标签操作、根节点的出接口信息和全局标签的标签映射表,向中间节点发送包含中间节点的标签操作、中间节点的出接口信息和全局标签的标签映射表,向叶子节点发送包含叶子节点的标签操作和全局标签的标签映射表。The labeling table including the label operation of the root node, the outbound interface information of the root node, and the global label is sent to the root node, and the label operation including the intermediate node, the outbound interface information of the intermediate node, and the label mapping of the global label are sent to the intermediate node. The table sends a label mapping table including a label operation of the leaf node and a global label to the leaf node.

306、各节点根据标签映射表生成自身转发引擎能够识别的转发表项。 306. Each node generates, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine.

步骤306具体实现时可以为:根节点将GL作为自身的出标签;中间节点将GL作为自身的出标签和入标签;叶子节点将GL作为自身的入标签。The specific implementation of step 306 may be: the root node uses GL as its own outgoing label; the intermediate node uses GL as its own outgoing label and incoming label; the leaf node uses GL as its own incoming label.

其中,根节点的转发表项具体可以为[PUSH,GL,IntfX-IntfY];其中,PUSH表示根节点的标签操作为封装操作;GL表示根节点的出标签;IntfX-IntfY为根节点的出接口信息,具体的,出接口信息可以为一个出接口列表,该出接口列表中的元素可以为IntfX、Intf(X+1)、…、Intf(Y-1)、IntfY,每个元素都可以包含出接口和下一跳;该转发表项可以表示根节点对组播数据封装GL并向出接口信息为IntfX-IntfY所指向的一组下一节点发送封装GL后的组播数据。The forwarding entry of the root node may be specifically [PUSH, GL, IntfX-IntfY]; wherein PUSH indicates that the label operation of the root node is a package operation; GL indicates an outgoing label of the root node; and IntfX-IntfY is the root node. Interface information, specifically, the outbound interface information may be an outbound interface list, and the elements in the outbound interface list may be IntfX, Intf(X+1), ..., Intf(Y-1), IntfY, and each element may be The outbound interface and the next hop are included. The forwarding entry may indicate that the root node encapsulates the GL for the multicast data and sends the encapsulated GL multicast data to a group of next nodes pointed by the IntfX-IntfY.

中间节点的转发表项具体可以为[SWAP,GL,GL,IntfM-IntfN];其中,SWAP表示中间节点的标签操作为转发操作;GL,GL为中间节点的入标签和出标签,其中,入标签用于中间节点接收到携带GL的组播数据时根据该入标签确定该组播数据对应的转发表项;IntfM-IntfN为中间节点的出接口信息,具体的,出接口信息可以为一个出接口列表,该出接口列表中的元素可以为IntfM、Intf(M+1)、…、Intf(N-1)、IntfN,每个元素都可以包含出接口和下一跳;该转发表项可以表示当中间节点携带的标签与自身的出标签相同时,中间节点直接向出接口信息为IntfM-IntfN所指向的一组下一节点发送该组播数据。The forwarding entry of the intermediate node may be specifically [SWAP, GL, GL, IntfM-IntfN]; wherein SWAP indicates that the label operation of the intermediate node is a forwarding operation; GL, GL are the inbound label and the outgoing label of the intermediate node, where The label is used to determine the forwarding entry corresponding to the multicast data according to the ingress label when the intermediate node receives the multicast data carrying the GL; the IntfM-IntfN is the outbound interface information of the intermediate node, and specifically, the outbound interface information may be one out The interface list, the elements in the outbound interface list may be IntfM, Intf (M+1), ..., Intf (N-1), IntfN, each element may include an outbound interface and a next hop; the forwarding entry may It indicates that when the label carried by the intermediate node is the same as its own outgoing label, the intermediate node directly sends the multicast data to a group of next nodes pointed by the IntfM-IntfN.

叶子节点的转发表项具体可以为[POP,GL];其中,POP表示叶子节点的标签操作为解封装操作;GL即叶子节点的入标签,用于叶子节点接收到携带GL的组播数据时根据该入标签确定该组播数据对应的转发表项;该转发表项可以表示当叶子节点接收到组播数据时,叶子节点解封装接收到的携带标签的组播数据。The forwarding entry of the leaf node may be specifically [POP, GL]; wherein POP indicates that the label operation of the leaf node is a decapsulation operation; GL is an ingress label of the leaf node, and is used when the leaf node receives the multicast data carrying the GL. The forwarding entry corresponding to the multicast data is determined according to the ingress label. The forwarding entry may indicate that when the leaf node receives the multicast data, the leaf node decapsulates the received multicast data carrying the label.

在利用本发明实施例提供的建立组播隧道的方法建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比, 根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,本发明实施例提供的建立组播隧道的方法,为各节点分配标签的过程简单,并且当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。When the multicast tunnel is configured to transmit multicast data by using the method for establishing a multicast tunnel provided by the embodiment of the present invention, the root node and the intermediate node in the multicast tunnel are global labels, so the root node corresponds to When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes. When the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes. Compared with the prior art, The root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for each of the multiple multicast data, and the intermediate node does not need to copy the received multicast data for multiple copies before each group. The broadcast data replaces one of its own outgoing tags. Therefore, the transmission efficiency can be improved. In addition, the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.

实施例四Embodiment 4

本发明实施例提供一种建立组播隧道的装置40,用以执行图1所示的建立组播隧道的方法,如图4所示,该建立组播隧道的装置40包括:获取单元401、分配单元402和发送单元403,其中:The embodiment of the present invention provides a device 40 for establishing a multicast tunnel, which is used to perform the method for establishing a multicast tunnel as shown in FIG. 1. As shown in FIG. 4, the device 40 for establishing a multicast tunnel includes: an obtaining unit 401, An allocating unit 402 and a transmitting unit 403, wherein:

获取单元401,用于获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型。The obtaining unit 401 is configured to obtain path information corresponding to the multicast tunnel and label operations of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node, where the path information includes the The identifier of each node, the outbound interface information of the root node, and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data.

分配单元402,用于为所述组播隧道分配全局标签。The allocating unit 402 is configured to allocate a global label to the multicast tunnel.

发送单元403,用于根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;The sending unit 403 is configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table; The forwarding entry is used to transmit the multicast data, and the outgoing label included in the forwarding entry of the root node and the intermediate node is the global label;

其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.

可选的,所述发送单元403用于:按照南向协议向所述各节点发送标签映射表。Optionally, the sending unit 403 is configured to: send a label mapping table to each node according to a southbound protocol.

在利用本发明实施例提供的建立组播隧道的装置建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个 下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,本发明实施例提供的建立组播隧道的方法,为各节点分配标签的过程简单,并且当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。When the multicast tunnel is configured to transmit the multicast data by using the multicast tunnel established by the device for establishing the multicast tunnel provided by the embodiment of the present invention, the root node corresponds to the global label of the root node and the intermediate node. When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple. The next node; when the intermediate node corresponds to multiple next nodes, if the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data and send it. Give it multiple corresponding next nodes. Compared with the prior art, the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved. In addition, the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.

实施例五Embodiment 5

在硬件实现上,实施例四中的发送单元可以为发送器;其他单元可以以硬件形式内嵌于或独立于建立组播隧道的装置中,也可以以软件形式存储于建立组播隧道的装置的存储器中,以便于处理器调用执行以上各个单元对应的操作,该处理器可以为中央处理单元(CPU)、微处理器、单片机等。In hardware implementation, the sending unit in Embodiment 4 may be a transmitter; other units may be embedded in hardware or independent of the device that establishes the multicast tunnel, or may be stored in software in the device that establishes the multicast tunnel. In the memory, in order to facilitate the processor to perform the operations corresponding to the above units, the processor may be a central processing unit (CPU), a microprocessor, a single chip microcomputer, or the like.

如图5所示,为本发明实施例提供的一种建立组播隧道的装置50,用以执行图1所示的建立组播隧道的方法,该建立组播隧道的装置50包括:存储器501、处理器502、发送器503和总线系统504。As shown in FIG. 5, an apparatus 50 for establishing a multicast tunnel is provided for performing the method for establishing a multicast tunnel shown in FIG. 1 according to an embodiment of the present invention. The apparatus 50 for establishing a multicast tunnel includes: a memory 501. The processor 502, the transmitter 503, and the bus system 504.

其中,存储器501、处理器502和发送器503之间是通过总线系统504耦合在一起的,其中总线系统504除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统504。The memory 501, the processor 502 and the transmitter 503 are coupled together by a bus system 504. The bus system 504 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 504 in the figure.

存储器501,用于存储一组代码。The memory 501 is configured to store a set of codes.

存储器501中存储的代码用于控制处理器502执行以下动作:The code stored in memory 501 is used to control processor 502 to perform the following actions:

获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型;Acquiring the path information corresponding to the multicast tunnel and the label operation of each node in the multicast tunnel; wherein each node includes a root node, an intermediate node, and a leaf node; the path information includes an identifier and a location of each node The outbound interface information of the root node and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data;

为所述组播隧道分配全局标签。Allocating a global label to the multicast tunnel.

发送器503用于,根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所 述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;The transmitter 503 is configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table; The forwarding entry is used to transmit multicast data. The outbound label included in the forwarding entry of the root node and the intermediate node is the global label;

其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node.

可选的,所述发送器503用于:按照南向协议向所述各节点发送标签映射表。Optionally, the transmitter 503 is configured to: send a label mapping table to each node according to a southbound protocol.

在利用本发明实施例提供的建立组播隧道的装置建立的组播隧道传输组播数据时,由于组播隧道中的根节点和中间节点的出标签均为全局标签,因此,当根节点对应多个下一节点时,根节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当中间节点对应多个下一节点时,若中间节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,根节点不需要复制多份接收到的组播数据后再为多份组播数据各封装一个自身的出标签,中间节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,本发明实施例提供的建立组播隧道的方法,为各节点分配标签的过程简单,并且当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。When the multicast tunnel is configured to transmit the multicast data by using the multicast tunnel established by the device for establishing the multicast tunnel provided by the embodiment of the present invention, the root node corresponds to the global label of the root node and the intermediate node. When multiple nodes are in the next node, the root node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding multiple nodes. When the intermediate node corresponds to multiple next nodes, When the intermediate node finds that the received multicast data carries the same label as its own outgoing label, it only needs to copy the received multicast data to multiple corresponding next nodes. Compared with the prior art, the root node does not need to copy multiple received multicast data, and then encapsulates one of its own outgoing labels for multiple multicast data, and the intermediate node does not need to copy the received multicast data. After that, replace each of the multicast data with a separate outgoing label. Therefore, the transmission efficiency can be improved. In addition, the method for establishing a multicast tunnel provided by the embodiment of the present invention, the process of assigning labels to each node is simple, and when a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine more quickly. A failed multicast tunnel.

实施例六Embodiment 6

本发明实施例提供一种节点60,用以执行图2所示的建立组播隧道的方法,如图6所示,该节点60包括:接收单元601、生成单元602,其中:The embodiment of the present invention provides a node 60 for performing the method for establishing a multicast tunnel as shown in FIG. 2. As shown in FIG. 6, the node 60 includes: a receiving unit 601, and a generating unit 602, where:

接收单元601,用于接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型。The receiving unit 601 is configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node; When the leaf node is a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data.

生成单元602,用于根据所述标签映射表获得自身转发引擎能够 识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。a generating unit 602, configured to obtain, according to the label mapping table, a forwarding engine capable of And the forwarding entry included in the forwarding entry of the node is the global label, where the forwarding entry is used to transmit multicast data, and the node is a root node or an intermediate node.

可选的,所述生成单元602用于:Optionally, the generating unit 602 is configured to:

当所述节点为根节点时,将所述全局标签作为自身的出标签;或,When the node is a root node, the global label is used as its own outgoing label; or

当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,When the node is an intermediate node, the global label is used as its own outgoing label and incoming label; or

当所述节点为叶子节点时,将所述全局标签作为自身的入标签。When the node is a leaf node, the global label is used as its own ingress label.

可选的,如图7所示,所述节点60还可以包括:Optionally, as shown in FIG. 7, the node 60 may further include:

操作单元603,用于当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,The operation unit 603 is configured to: when the node is the root node, encapsulate the global label for the multicast data according to the label operation, and point to the next point pointed by the outbound interface information according to the outbound interface information. Sending, by the node, the multicast data after encapsulating the global label; or

操作单元603,用于当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,The operation unit 603 is configured to: when the node is an intermediate node, forward the multicast data that carries the global label to the next node that the outbound interface information points according to the outbound interface information; or

操作单元603,用于当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。The operation unit 603 is configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.

本发明实施例提供的节点,当该节点为根节点且该节点对应多个下一节点时,该节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当该节点为中间节点且该节点对应多个下一节点时,该节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的封装全局标签后的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,当该节点为根节点时,该节点不需要复制多份组播源发送的组播数据后再为多份组播数据各封装一个自身的出标签,当该节点为根节点时,该节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,各节点使用的标签均为全局标签当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。 In the node provided by the embodiment of the present invention, when the node is a root node and the node corresponds to multiple next nodes, the node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding node. When the node is an intermediate node and the node corresponds to multiple next nodes, the node only needs to receive the received package when the received multicast data carries the same label as its own outgoing label. The multicast data after the global label is copied and sent to its corresponding multiple next nodes. Compared with the prior art, when the node is the root node, the node does not need to copy the multicast data sent by multiple multicast sources, and then encapsulates one of its own outgoing labels for each multicast data. At the root node, the node does not need to copy multiple copies of the received multicast data and then replace one of its own outgoing tags for each multicast data. Therefore, the transmission efficiency can be improved. In addition, the labels used by each node are global labels. When a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine the faulty multicast tunnel more quickly.

实施例七Example 7

在硬件实现上,实施例六中的接收单元可以为接收器;其他单元可以以硬件形式内嵌于或独立于节点中,也可以以软件形式存储于节点的存储器中,以便于处理器调用执行以上各个单元对应的操作,该处理器可以为中央处理单元(CPU)、微处理器、单片机等。In the hardware implementation, the receiving unit in the sixth embodiment may be a receiver; other units may be embedded in the hardware or independent of the node, or may be stored in the memory of the node in software, so that the processor can execute the call. For the operations corresponding to the above units, the processor may be a central processing unit (CPU), a microprocessor, a single chip microcomputer, or the like.

如图8所示,为本发明实施例提供的一种节点80,用以执行图1所示的建立组播隧道的方法,该节点80包括:接收器801、存储器802、处理器803、通信接口804和总线系统805。As shown in FIG. 8, a node 80 is provided for performing the method for establishing a multicast tunnel shown in FIG. 1 , where the node 80 includes: a receiver 801, a memory 802, a processor 803, and a communication. Interface 804 and bus system 805.

通信接口804用于节点80与其他节点通信。Communication interface 804 is used by node 80 to communicate with other nodes.

其中,接收器801、存储器802、处理器803和通信接口804之间是通过总线系统805耦合在一起的,其中总线系统805除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统805。The receiver 801, the memory 802, the processor 803, and the communication interface 804 are coupled together by a bus system 805. The bus system 805 may include a power bus, a control bus, and a status signal in addition to the data bus. Bus, etc. However, for clarity of description, various buses are labeled as bus system 805 in the figure.

接收器801,用于接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型。a receiver 801, configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node; When the leaf node is a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data.

存储器802,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。The memory 802 is configured to store a program. In particular, the program can include program code, the program code including computer operating instructions.

处理器803执行所述存储器802存放的程序,以实现本发明实施例提供的建立组播隧道的方法,包括:根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。The processor 803 executes the program stored in the memory 802 to implement the method for establishing a multicast tunnel provided by the embodiment of the present invention, including: obtaining, according to the label mapping table, a forwarding entry that can be identified by the forwarding engine; The forwarding entry is used to transmit multicast data. When the node is a root node or an intermediate node, the outgoing label included in the forwarding entry of the node is the global label.

可选的,所述处理器803用于:当所述节点为根节点时,将所述全局标签作为自身的出标签;或,当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,当所述节点为叶子节点时,将所述全局标签作为自身的入标签。Optionally, the processor 803 is configured to: when the node is a root node, use the global label as its own outgoing label; or when the node is an intermediate node, use the global label as its own Outbound label and inbound label; or, when the node is a leaf node, the global label is used as its own ingress label.

可选的,所述处理器803用于:当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所 述组播数据;或,Optionally, the processor 803 is configured to: when the node is a root node, encapsulate the global label for the multicast data according to the label operation, and send the global label according to the outbound interface information. The next node pointed to by the information sends the package after the global label is encapsulated Multicast data; or,

所述处理器803用于:当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,The processor 803 is configured to, when the node is an intermediate node, forward the multicast data that carries the global label to a next node that is sent by the outbound interface information according to the outbound interface information; or ,

所述处理器803用于:当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。The processor 803 is configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.

本发明实施例提供的节点,当该节点为根节点且该节点对应多个下一节点时,该节点只需要将接收到的组播数据封装一次全局标签后,复制多份发送给其对应的多个下一节点;当该节点为中间节点且该节点对应多个下一节点时,该节点发现接收到的组播数据携带的标签和自身的出标签相同时,只需要将接收到的封装全局标签后的组播数据复制多份后发送给其对应的多个下一节点。与现有技术相比,当该节点为根节点时,该节点不需要复制多份组播源发送的组播数据后再为多份组播数据各封装一个自身的出标签,当该节点为根节点时,该节点也不需要将接收到的组播数据复制多份后再为每份组播数据替换一个自身的出标签。因此,可以提高传输效率。另外,各节点使用的标签均为全局标签当多个组播隧道中的某个组播隧道出现故障时,设备维护人员可以更加快速的确定出出现故障的组播隧道。In the node provided by the embodiment of the present invention, when the node is a root node and the node corresponds to multiple next nodes, the node only needs to encapsulate the received multicast data once and then copy the multiple copies to the corresponding node. When the node is an intermediate node and the node corresponds to multiple next nodes, the node only needs to receive the received package when the received multicast data carries the same label as its own outgoing label. The multicast data after the global label is copied and sent to its corresponding multiple next nodes. Compared with the prior art, when the node is the root node, the node does not need to copy the multicast data sent by multiple multicast sources, and then encapsulates one of its own outgoing labels for each multicast data. At the root node, the node does not need to copy multiple copies of the received multicast data and then replace one of its own outgoing tags for each multicast data. Therefore, the transmission efficiency can be improved. In addition, the labels used by each node are global labels. When a multicast tunnel in multiple multicast tunnels fails, the device maintenance personnel can determine the faulty multicast tunnel more quickly.

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided by the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of the unit is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed. In addition, 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.

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may be physically included 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.

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。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 U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, and the program code can be stored. Medium.

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。 It should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and are not limited thereto; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that The technical solutions described in the foregoing embodiments are modified, or the equivalents of the technical features are replaced. The modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (10)

一种建立组播隧道的方法,其特征在于,包括:A method for establishing a multicast tunnel, comprising: 获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型;Acquiring the path information corresponding to the multicast tunnel and the label operation of each node in the multicast tunnel; wherein each node includes a root node, an intermediate node, and a leaf node; the path information includes an identifier and a location of each node The outbound interface information of the root node and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data; 为所述组播隧道分配全局标签;Allocating a global label to the multicast tunnel; 根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;Sending, by the identifiers of the nodes, the label mapping table to the nodes, so that the nodes obtain forwarding entries that are recognized by the forwarding engine according to the received label mapping table; wherein the forwarding entries are used for Transmitting the multicast data, and the outbound label included in the forwarding entry of the root node and the intermediate node is the global label; 其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node. 根据权利要求1所述的方法,其特征在于,所述向所述各节点发送标签映射表,包括:The method according to claim 1, wherein the sending the label mapping table to the nodes comprises: 按照南向协议向所述各节点发送标签映射表。A label mapping table is sent to each node according to the southbound protocol. 一种建立组播隧道的方法,其特征在于,包括:A method for establishing a multicast tunnel, comprising: 组播隧道中的节点接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型;The node in the multicast tunnel receives the label mapping table. When the node is the root node or the intermediate node, the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel; When the leaf node is a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data; 根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。Obtaining, according to the label mapping table, a forwarding entry that can be identified by the forwarding engine; wherein the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the forwarding entry of the node is The outbound tag included is the global tag. 根据权利要求3所述的方法,其特征在于,所述根据所述标签映射表获得自身转发引擎能够识别的转发表项,包括:The method according to claim 3, wherein the obtaining, according to the label mapping table, a forwarding entry that the forwarding engine can identify, includes: 当所述节点为根节点时,将所述全局标签作为自身的出标签;或, When the node is a root node, the global label is used as its own outgoing label; or 当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,When the node is an intermediate node, the global label is used as its own outgoing label and incoming label; or 当所述节点为叶子节点时,将所述全局标签作为自身的入标签。When the node is a leaf node, the global label is used as its own ingress label. 根据权利要求3或4所述的方法,其特征在于,在所述根据所述标签映射表获得自身转发引擎能够识别的转发表项之后,所述方法还包括:The method according to claim 3 or 4, wherein after the obtaining, according to the label mapping table, a forwarding entry that can be identified by the forwarding engine, the method further includes: 当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,When the node is a root node, the global label is encapsulated for the multicast data according to the label operation, and the global node is encapsulated according to the outbound interface information to the next node pointed by the outbound interface information. The multicast data after the label; or, 当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,And when the node is an intermediate node, forwarding, according to the outbound interface information, the multicast data that carries the global label to a next node that is sent by the outbound interface information; or 当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。And when the node is a leaf node, receiving the multicast data that carries the global label, and decapsulating the multicast data that carries the global label according to the label operation. 一种建立组播隧道的装置,其特征在于,包括:An apparatus for establishing a multicast tunnel, comprising: 获取单元,用于获取组播隧道对应的路径信息和所述组播隧道中各节点的标签操作;其中,所述各节点包含根节点、中间节点和叶子节点;所述路径信息包含所述各节点的标识、所述根节点的出接口信息和所述中间节点的出接口信息;所述标签操作是指对组播数据进行操作的操作类型;An acquiring unit, configured to acquire path information corresponding to the multicast tunnel and label operations of each node in the multicast tunnel, where each node includes a root node, an intermediate node, and a leaf node; and the path information includes the foregoing The identifier of the node, the outbound interface information of the root node, and the outbound interface information of the intermediate node; the label operation refers to an operation type of operating the multicast data; 分配单元,用于为所述组播隧道分配全局标签;An allocating unit, configured to allocate a global label to the multicast tunnel; 发送单元,用于根据所述各节点的标识向所述各节点发送标签映射表,以使得所述各节点根据接收到的标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述根节点和所述中间节点的转发表项中包括的出标签为所述全局标签;a sending unit, configured to send, to the nodes, a label mapping table according to the identifier of each node, so that each node obtains a forwarding entry that the forwarding engine can recognize according to the received label mapping table; The forwarding entry is used to transmit the multicast data, and the outgoing label included in the forwarding entry of the root node and the intermediate node is the global label; 其中,向所述根节点发送包含所述根节点的标签操作、所述根节点的出接口信息和所述全局标签的标签映射表,向所述中间节点发送包含所述中间节点的标签操作、所述中间节点的出接口信息和所述全局标签的标签映射表,向所述叶子节点发送包含所述叶子节点的标签操作和所述全局标签的标签映射表。Transmitting, by the root node, a label operation including the root node, an outbound interface information of the root node, and a label mapping table of the global label, and sending, to the intermediate node, a label operation including the intermediate node, The outbound interface information of the intermediate node and the label mapping table of the global label send a label mapping table including the label operation of the leaf node and the global label to the leaf node. 根据权利要求6所述的装置,其特征在于,所述发送单元用于:The apparatus according to claim 6, wherein said transmitting unit is configured to: 按照南向协议向所述各节点发送标签映射表。A label mapping table is sent to each node according to the southbound protocol. 一种节点,其特征在于,包括: A node, comprising: 接收单元,用于接收标签映射表;其中,所述节点为根节点或中间节点时,所述标签映射表包含标签操作、出接口信息和所述组播隧道对应的全局标签;所述节点为叶子节点时,所述标签映射表包含标签操作和所述组播隧道对应的全局标签;所述标签操作是指对组播数据进行操作的操作类型;a receiving unit, configured to receive a label mapping table, where the label mapping table includes a label operation, an outbound interface information, and a global label corresponding to the multicast tunnel, where the node is a root node or an intermediate node; In the case of a leaf node, the label mapping table includes a label operation and a global label corresponding to the multicast tunnel; and the label operation refers to an operation type of operating the multicast data; 生成单元,用于根据所述标签映射表获得自身转发引擎能够识别的转发表项;其中,所述转发表项用于传输组播数据,所述节点为根节点或中间节点时,所述节点的转发表项中包括的出标签为所述全局标签。a generating unit, configured to obtain, according to the label mapping table, a forwarding entry that is recognized by the forwarding engine; wherein the forwarding entry is used to transmit multicast data, and when the node is a root node or an intermediate node, the node is The outgoing label included in the forwarding entry is the global label. 根据权利要求8所述的节点,其特征在于,所述生成单元用于:The node according to claim 8, wherein said generating unit is configured to: 当所述节点为根节点时,将所述全局标签作为自身的出标签;或,When the node is a root node, the global label is used as its own outgoing label; or 当所述节点为中间节点时,将所述全局标签作为自身的出标签和入标签;或,When the node is an intermediate node, the global label is used as its own outgoing label and incoming label; or 当所述节点为叶子节点时,将所述全局标签作为自身的入标签。When the node is a leaf node, the global label is used as its own ingress label. 根据权利要求8或9所述的节点,其特征在于,所述节点还包括:The node according to claim 8 or 9, wherein the node further comprises: 操作单元,用于当所述节点为根节点时,根据所述标签操作为所述组播数据封装所述全局标签,并根据所述出接口信息向所述出接口信息所指向的下一节点发送封装所述全局标签后的所述组播数据;或,An operation unit, configured to encapsulate the global label for the multicast data according to the label operation, and to the next node pointed to by the outbound interface information according to the outbound interface information, when the node is a root node Transmitting the multicast data after the global label is encapsulated; or 操作单元,用于当所述节点为中间节点时,根据所述出接口信息向所述出接口信息所指向的下一节点转发携带所述全局标签后的所述组播数据;或,An operation unit, configured to: when the node is an intermediate node, forward the multicast data that carries the global label to a next node that is sent by the outbound interface information according to the outbound interface information; or 操作单元,用于当所述节点为叶子节点时,接收携带所述全局标签的所述组播数据,并根据所述标签操作解封装携带所述全局标签的所述组播数据。 An operation unit, configured to: when the node is a leaf node, receive the multicast data that carries the global label, and decapsulate the multicast data that carries the global label according to the label operation.
PCT/CN2015/088977 2014-12-15 2015-09-06 Method and device for establishing a multicast channel Ceased WO2016095571A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410776810.6 2014-12-15
CN201410776810.6A CN105763411B (en) 2014-12-15 2014-12-15 A method and device for establishing a multicast tunnel

Publications (1)

Publication Number Publication Date
WO2016095571A1 true WO2016095571A1 (en) 2016-06-23

Family

ID=56125843

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/088977 Ceased WO2016095571A1 (en) 2014-12-15 2015-09-06 Method and device for establishing a multicast channel

Country Status (2)

Country Link
CN (1) CN105763411B (en)
WO (1) WO2016095571A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106817308B (en) * 2016-12-30 2019-12-24 北京华为数字技术有限公司 System, method and device for forwarding multicast stream
CN109246624B (en) * 2017-07-11 2020-04-03 华为技术有限公司 A kind of multicast forwarding method and related equipment
CN108966039B (en) * 2018-08-29 2021-09-21 迈普通信技术股份有限公司 Multicast method and equipment
CN110838965B (en) * 2019-09-25 2022-02-11 北京华为数字技术有限公司 A kind of tunnel establishment method and receiving node

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7856014B2 (en) * 2006-10-27 2010-12-21 International Business Machines Corporation High capacity multicast forwarding
CN102624615A (en) * 2012-03-02 2012-08-01 杭州华三通信技术有限公司 Forwarding method and forwarding device for multicast data messages based on multiple protocol label switching (MPLS)
CN102882760A (en) * 2012-09-27 2013-01-16 华为技术有限公司 Method, module, equipment and system for message processing in virtual private local area network service network
CN103269315A (en) * 2013-04-27 2013-08-28 华为技术有限公司 Label distribution method, device, system and network equipment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100563203C (en) * 2005-11-11 2009-11-25 华为技术有限公司 Method for network element signal transmission of leaf node of multicast tree in communication network
US8831000B2 (en) * 2012-10-10 2014-09-09 Telefonaktiebolaget L M Ericsson (Publ) IP multicast service join process for MPLS-based virtual private cloud networking

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7856014B2 (en) * 2006-10-27 2010-12-21 International Business Machines Corporation High capacity multicast forwarding
CN102624615A (en) * 2012-03-02 2012-08-01 杭州华三通信技术有限公司 Forwarding method and forwarding device for multicast data messages based on multiple protocol label switching (MPLS)
CN102882760A (en) * 2012-09-27 2013-01-16 华为技术有限公司 Method, module, equipment and system for message processing in virtual private local area network service network
CN103269315A (en) * 2013-04-27 2013-08-28 华为技术有限公司 Label distribution method, device, system and network equipment

Also Published As

Publication number Publication date
CN105763411B (en) 2019-12-13
CN105763411A (en) 2016-07-13

Similar Documents

Publication Publication Date Title
US10320664B2 (en) Cloud overlay for operations administration and management
CN112511444B (en) Multicast traffic transmission method, device, communication node and storage medium
US20210243108A1 (en) Method for implementing network virtualization and related apparatus and communications system
US9608841B2 (en) Method for real-time synchronization of ARP record in RSMLT cluster
EP3313025B1 (en) Data packet forwarding
EP2945330B1 (en) Route management method, route method, network controller and router
WO2020164473A1 (en) Path calculation method, apparatus and device
CN103312611B (en) Message processing method, device label processing method and equipment
CN113411243B (en) Data transmission method and device
CN105099846B (en) The method and supplier edge device of data message transmission
CN104811382B (en) The processing method and device of data packet
CN108768817A (en) A virtualized network networking system and data packet sending method
US10182132B2 (en) Method, apparatus and system for communication between OpenFlow device and IP network device
WO2017197885A1 (en) Communication method and device for use in virtual extensible local area network
CN103685022A (en) Message forwarding method and service provider network edge equipment
WO2015192501A1 (en) Address information publishing method and apparatus
CN103326940A (en) Method for forwarding message in network and edge device of operator
CN108259304B (en) Forwarding table item synchronization method and device
EP3032782B1 (en) Packet transmission method and apparatus
CN109196819A (en) Two-way multicast on virtual port channel
CN106878136A (en) A kind of message forwarding method and device
WO2016095571A1 (en) Method and device for establishing a multicast channel
CN103795630A (en) Message transmitting method and device of label switching network
CN102647328B (en) A kind of label distribution method, equipment and system
CN109218176B (en) Method and device for processing message

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15869082

Country of ref document: EP

Kind code of ref document: A1