(19)
(11)EP 2 940 938 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
27.11.2019 Bulletin 2019/48

(21)Application number: 13874320.8

(22)Date of filing:  06.02.2013
(51)International Patent Classification (IPC): 
H04L 12/18(2006.01)
H04L 12/761(2013.01)
H04L 12/775(2013.01)
H04L 12/46(2006.01)
H04L 12/715(2013.01)
(86)International application number:
PCT/CN2013/071466
(87)International publication number:
WO 2014/121468 (14.08.2014 Gazette  2014/33)

(54)

METHOD AND DEVICE FOR ESTABLISHING MULTICAST DATA CHANNEL IN NETWORK VIRTUALIZATION SYSTEM

VERFAHREN UND VORRICHTUNG ZUM EINRICHTEN EINES MULTICAST-DATENKANALS IN EINEM NETZWERKVIRTUALISIERUNGSSYSTEM

PROCÉDÉ ET DISPOSITIF D'ÉTABLISSEMENT DE CANAL DE DONNÉES DE MULTIDIFFUSION DANS UN SYSTÈME DE VIRTUALISATION DE RÉSEAU


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(43)Date of publication of application:
04.11.2015 Bulletin 2015/45

(73)Proprietor: Huawei Technologies Co., Ltd.
Longgang District Shenzhen, Guangdong 518129 (CN)

(72)Inventors:
  • WANG, Xinping
    Shenzhen Guangdong 518129 (CN)
  • WU, Xiaoqian
    Shenzhen Guangdong 518129 (CN)
  • HU, Jiehui
    Shenzhen Guangdong 518129 (CN)
  • XU, Guoqi
    Shenzhen Guangdong 518129 (CN)

(74)Representative: Goddar, Heinz J. 
Boehmert & Boehmert Anwaltspartnerschaft mbB Pettenkoferstrasse 22
80336 München
80336 München (DE)


(56)References cited: : 
EP-A1- 2 518 949
CN-A- 101 013 950
CN-A- 102 137 000
US-A1- 2009 175 274
EP-A1- 2 518 952
CN-A- 101 035 057
US-A1- 2007 217 415
  
  • MEDVED A MCLACHLAN D MEYER CISCO SYSTEMS J: "MPLS-TP Pseudowire Configuration using OpenFlow 1.3; draft-medved-pwe3-of-config-01.txt", MPLS-TP PSEUDOWIRE CONFIGURATION USING OPENFLOW 1.3; DRAFT-MEDVED-PWE3-OF-CONFIG-01.TXT, INTERNET ENGINEERING TASK FORCE, IETF; STANDARDWORKINGDRAFT, INTERNET SOCIETY (ISOC) 4, RUE DES FALAISES CH- 1205 GENEVA, SWITZERLAND, 11 July 2012 (2012-07-11), pages 1-20, XP015084083, [retrieved on 2012-07-11]
  
Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


Description

TECHNICAL FIELD



[0001] Embodiments of the present invention relate to communications technologies, and in particular, to a method and a device for establishing a multicast data channel in a network virtualization system.

BACKGROUND



[0002] A conventional network architecture has a two-layer or multi-layer structure, and according to a function and a deployment location of each layer, a network may be divided into different layers (including a core layer, a convergence layer, an edge access layer, and a peer layer), where the layers are generally connected to one another by means of dual-homing redundant connections to improve reliability and converge user traffic layer by layer. The access layer is responsible for network access of a user terminal, is used to provide various types of user interfaces, and has widely distributed nodes and a large number of interfaces; the convergence layer is responsible for converging traffic of access nodes, is used to extend a service scope of a core node, and has various interface types, a strong convergence capability, and an integrated service processing capability; and the core layer is responsible for high-speed forwarding and service interworking between regions, and has a small number of nodes.

[0003] To integrate and simplify a network structure and improve resource utilization, in an existing network architecture, during point-to-multipoint packet switching, a method of forming a network virtualization system by using two or more main switching devices at a same network layer is used, thereby reducing complexity caused by use of multiple redundant components, and reducing a cost.

[0004] In addition, currently, to adapt to a huge capacity of data exchange between devices in a cluster, multiple high-end routers are connected to a central switch matrix chassis by using a very short reach optical fiber, to form a network virtualization system, namely, a cluster router, which includes multiple routers, thereby facilitating centralized management.

[0005] Therefore, how to enable the foregoing network virtualization system to support a multicast service becomes a technical problem to be resolved currently.

[0006] US 2009/175274 A1 discloses techniques for transmission of Layer 2 traffic over a point to multi-point (P2MP) label switched path (LSP) within a multi-protocol Label Switching (MPLS) network. A source or ingress network device may implement the techniques to connect multiple L2 interfaces to a P2MP LSP within an MPLS network via a P2MP Pseudo-Wire(PW) mechanism that emulates delivery of L2 data units over a packet switched network, such as the MPLS network. The ingress network device first establishes the P2MP LSP and then connects two or more L2 interfaces to the P2MP LSP via the P2MP PW mechanism. Egress network devices may also implement the techniques to terminate the P2MP LSP and de-multiplex traffic arriving via multiple P2MP PWs carried over the same P2MP LSP.

[0007] EP 2 518 952 A1 discloses a method for increasing forwarding efficiency of a virtual private LAN services network. The method includes: a root node provider edge (PE) in the VPLS network transmitting at least one of broadcast message, multicast message and unknown unicast message to leaf nodes PE in the same VPLS through a point-to-multipoint pseudo wire (P2MP PW). It transmits messages through the P2MP PW between a PE and other PEs, thus decreasing the number of redundant messages on a physical link, increasing the forwarding efficiency of network, and reducing the network operating costs.

SUMMARY



[0008] In view of this, the present invention provides a method and a device for establishing a multicast data channel in a network virtualization system, which are used to resolve a problem in the prior art that a cluster router cannot implement a multicast service.

[0009] According to a first aspect, an embodiment of the present invention provides a method for establishing a multicast data channel in a network virtualization system, which includes a core node, a remote node and a controller, including:

creating, on a controller, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generating, by the controller, a multicast tree tunnel that uses a core node as a root;

obtaining, by the controller, a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquiring, by the controller, a multicast source address and a multicast group address from the multicast protocol packet;

generating, by the controller, a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocating, by the controller, a point-to-multipoint pseudo wire (P2MP PW) label to the multicast source address and the multicast group address;

searching, by the controller, the multicast forwarding table for the external interface of the core node, searching for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generating a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

sending, by the controller, the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0010] With reference to the first aspect, in a first possible implementation manner, the method further includes:

searching, by the controller, the multicast forwarding table for the virtual remote logical interface;

acquiring, by the controller, the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

searching, by the controller, for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

generating, by the controller, a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

sending, by the controller, the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0011] With reference to the first aspect, in a second possible implementation manner, the multicast inbound interface is an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0012] With reference to the first aspect and the foregoing possible implementation manners, in a third possible implementation manner, the obtaining, by the controller, a multicast protocol packet specifically includes:

if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving, by the controller, the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller; or

if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receiving, by the controller, the multicast protocol packet through a control channel between the core node and the controller.



[0013] According to a second aspect, an embodiment of the present invention provides a method for establishing a multicast data channel in a network virtualization system, which includes a core node, a remote node and a controller, including:

creating, on a core node, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generating, by the core node, a multicast tree tunnel that uses the core node as a root;

obtaining, by the core node, a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquiring, by the core node, a multicast source address and a multicast group address from the multicast protocol packet;

generating, by the core node, a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocating, by the core node, a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address;

searching, by the core node, the multicast forwarding table for the external interface of the core node, searching for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generating a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

saving, by the core node, the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0014] With reference to the second aspect, in a first possible implementation manner, the method further includes:

searching, by the core node, the multicast forwarding table for the virtual remote logical interface;

acquiring, by the core node, the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

searching, by the core node, for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

generating, by the core node, a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

sending, by the core node, the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0015] With reference to the second aspect, in a second possible implementation manner, the multicast inbound interface is an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0016] With reference to the second aspect and the foregoing possible implementation manners, in a third possible implementation manner, the obtaining, by the core node, a multicast protocol packet specifically includes:
if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving, by the core node, the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and a controller.

[0017] According to a third aspect, an embodiment of the present invention provides a control device, where the control device is located in a network virtualization system which includes a core node, a remote node and a controller, and the control device includes:

a creating unit, configured to create, on the control device, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

a generating unit, configured to: after the creating unit creates the virtual remote logical interface, generate a multicast tree tunnel that uses a core node as a root;

an obtaining unit, configured to: after the generating unit generates the multicast tree tunnel, obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

an acquiring unit, configured to: after the obtaining unit obtains the multicast protocol packet, acquire a multicast source address and a multicast group address from the multicast protocol packet, where

the generating unit is further configured to: after the acquiring unit acquires the multicast source address and the multicast group address, generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

an allocating unit, configured to allocate a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address;

a search unit, configured to: after the generating unit generates the multicast forwarding table, search the multicast forwarding table for the external interface of the core node, where

the generating unit is further configured to: after the search unit finds the external interface of the core node, search for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

a sending unit, configured to: after the generating unit generates the P2MP PW multicast forwarding table, send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0018] With reference to the third aspect, in a first possible implementation manner,

the search unit is further configured to search the multicast forwarding table for the virtual remote logical interface;

the acquiring unit is further configured to acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

the search unit is further configured to search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

the generating unit is further configured to generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the sending unit is further configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0019] With reference to the third aspect, in a second possible implementation manner, the multicast inbound interface is an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0020] With reference to the third aspect and the foregoing possible implementation manners, in a third possible implementation manner, the obtaining unit is specifically configured to:

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller; or

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receive the multicast protocol packet through a control channel between the core node and the controller.



[0021] According to a fourth aspect, an embodiment of the present invention provides a communications device, where the communications device is located in a network virtualization system which includes a core node, a remote node and a controller, and the communications device includes:

a creating unit, configured to create, on the communications device, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

a generating unit, configured to: after the creating unit creates the virtual remote logical interface, generate a multicast tree tunnel that uses the communications device as a root;

an obtaining unit, configured to: after the generating unit generates the multicast tree tunnel, obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the communications device of the network virtualization system;

an acquiring unit, configured to: after the obtaining unit obtains the multicast protocol packet, acquire a multicast source address and a multicast group address from the multicast protocol packet, where

the generating unit is further configured to: after the acquiring unit acquires the multicast source address and the multicast group address, generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the communications device and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

an allocating unit, configured to allocate a P2MP PW label to the multicast source address and the multicast group address;

a search unit, configured to: after the generating unit generates the multicast forwarding table, search the multicast forwarding table for the external interface of the communications device, and search for an outbound interface of the multicast tree tunnel on the communications device according to the multicast tree tunnel, where

the generating unit is further configured to: after the search unit finds the outbound interface of the communications device, generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the communications device according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the communications device, and the outbound interface of the multicast tree tunnel on the communications device, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

a saving unit, configured to: after the generating unit generates the P2MP PW multicast forwarding table, save the P2MP PW multicast forwarding table of the communications device, so that the communications device forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0022] With reference to the fourth aspect, in a first possible implementation manner, the communications device further includes: a sending unit,

where,

the search unit is further configured to search the multicast forwarding table for the virtual remote logical interface;

the acquiring unit is further configured to acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

the search unit is further configured to search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

the generating unit is further configured to generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the sending unit is configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0023] With reference to the fourth aspect, in a second possible implementation manner, the multicast inbound interface is an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0024] With reference to the fourth aspect and the foregoing possible implementation manners, in a third possible implementation manner, the obtaining unit is specifically configured to:
when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the communications device and the remote node, and through a control channel between the communications device and a controller.

[0025] According to a fifth aspect, an embodiment of the present invention provides a method for sending a multicast data packet in a network virtualization system which includes a core node, an intermediate remote node, a remote node and a controller, including:

if a core node receives a multicast data packet, searching, by the core node, a P2MP PW multicast forwarding table of the core node according to the multicast data packet; and

if it is determined that a forwarding outbound interface of the multicast data packet is an external interface of the core node, sending, by the core node, the multicast data packet directly through the external interface of the core node and also an internal interface for interconnecting internal nodes within the network virtualization system, and wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel, further comprising:

if it is determined that the forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, encapsulating (402), by the core node, a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet; and

sending (402) the first multicast data packet through the internal outbound interface of the core node, wherein the internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node and also an internal interface for interconnecting internal nodes within the network virtualization system, and wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel.



[0026] With reference to the fifth aspect, in a first possible implementation manner, the method further includes:

receiving, by an intermediate remote node, the first multicast data packet, acquiring the P2MP PW label from the first multicast data packet, searching a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquiring a matching multicast forwarding outbound interface;

if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel on the intermediate remote node, swapping, by the intermediate remote node, an incoming label and an outgoing label in the label of the multicast tree tunnel according to the first multicast data packet, to obtain a second multicast data packet; and

sending, by the intermediate remote node, the second multicast data packet through the outbound interface of the multicast tree tunnel on the intermediate remote node.



[0027] With reference to the fifth aspect and the first possible implementation manner, in a second possible implementation manner, the method further includes:
if the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, sending, by the intermediate remote node, the first multicast data packet directly through the external interface of the intermediate remote node.

[0028] With reference to the fifth aspect and the second possible implementation manner, in a third possible implementation manner, the method further includes:

if a remote node receives the second multicast data packet, acquiring the P2MP PW label from the second multicast data packet, searching a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquiring a matching multicast forwarding outbound interface;

decapsulating, by the remote node, the label of the multicast tree tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet; and

sending, by the remote node, the third multicast data packet through the matching multicast forwarding outbound interface.

According to a sixth aspect, an embodiment of the present invention further provides a network virtualization system, including a core node, an intermediate remote node connected to the core node, and a remote node connected to the intermediate remote node, where

the core node is specifically configured to:

receive a multicast data packet, and search a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast data packet;

if it is determined that a forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, encapsulate, by the core node, a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet; and

send the first multicast data packet to the intermediate remote node through the internal outbound interface of the core node, where

the internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node;

the intermediate remote node is specifically configured to:

receive the first multicast data packet, acquire the P2MP PW label from the first multicast data packet, search a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel on the intermediate remote node, swap, by the intermediate remote node, an incoming label and an outgoing label in the label of the multicast tree tunnel according to the first multicast data packet, to obtain a second multicast data packet; and

send, by the intermediate remote node, the second multicast data packet through the outbound interface of the multicast tree tunnel on the intermediate remote node; and

if the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, send, by the intermediate remote node, the first multicast data packet to the remote node directly through the external interface of the intermediate remote node; and

the remote node is specifically configured to:

receive the second multicast data packet, acquire the P2MP PW label from the second multicast data packet, search a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

decapsulate, by the remote node, the label of the multicast tree tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet; and

send, by the remote node, the third multicast data packet through the matching multicast forwarding outbound interface.



[0029] With reference to the eighth aspect, in a first possible implementation manner, the core node is further configured to:
if it is determined that the forwarding outbound interface of the multicast data packet is an external interface of the core node, send, by the core node, the multicast data packet directly through the external interface of the core node.

[0030] It may be know from the foregoing technical solutions that, in the method and the device for establishing a multicast data channel in a network virtualization system in the embodiments of the present invention, when a controller serves as an independent device in the network virtualization system, and after a virtual remote logical interface for an external interface of a remote node is created on the controller, the controller generates a multicast tree tunnel that uses a core node as a root, obtains a multicast protocol packet sent by a device outside the network virtualization system, acquires a multicast source address and a multicast group address from the multicast protocol packet; and generates a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface; the controller allocates a P2MP PW label to the multicast source address and the multicast group address; searches the multicast forwarding table for an external interface of the core node, finds an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generates a P2MP PW multicast forwarding table of the core node on an outbound interface of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the multicast tree tunnel; and sends the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

BRIEF DESCRIPTION OF DRAWINGS



[0031] To describe the technical solutions in the embodiments of the present invention more clearly, the following briefly introduces the accompanying drawings required for describing the embodiments. Apparently, the accompanying drawings in the following description show some embodiments of the present invention, and persons of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.

FIG. 1A to FIG. 1C are architectural diagrams of a network virtualization system according to the present invention;

FIG. 2 is a schematic flowchart of a method for establishing a multicast data channel in a network virtualization system according to an embodiment of the present invention;

FIG. 3 is a schematic flowchart of a method for establishing a multicast data channel in a network virtualization system according to another embodiment of the present invention;

FIG. 4 is a schematic flowchart of a method for sending a multicast data packet according to another embodiment of the present invention;

FIG. 5 is a schematic structural diagram of a control device according to an embodiment of the present invention;

FIG. 6 is a schematic structural diagram of a communications device according to an embodiment of the present invention;

FIG. 7 is a schematic structural diagram of a control device according to another embodiment of the present invention; and

FIG. 8 is a schematic structural diagram of a communications device according to another embodiment of the present invention.


DESCRIPTION OF EMBODIMENTS



[0032] To make the objectives, technical solutions, and advantages of the present invention clearer, the following clearly and completely describes the technical solutions of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the following described embodiments are a part of the embodiments of the present invention.

[0033] Currently, a cluster router is also referred to as a multi-chassis router, for which multiple high-end routers are connected in a certain manner and by using a multi-chassis hardware cluster technology (that is, a multi-level fully switched network technology), to jointly form a multi-level and multi-plane switch matrix system, so that the multiple high-end routers can work cooperatively, and present as one logical router, thereby overcoming limitations of a single chassis on aspects such as a switching capacity, power consumption, and heat dissipation, and smoothly expanding into a cluster routing system with a larger capacity.

[0034] A network virtualization system described in the embodiments of the present invention may be the foregoing cluster routing system, or may be another network virtualization system that includes a remote node and a core node, as shown in FIG. 1A to FIG. 1C.

[0035] FIG. 1A shows an architectural diagram of a network virtualization system. In FIG. 1A, the network virtualization system includes: a core node, a remote node, and a controller. The controller independently serves as a control device in the network virtualization system, and the core node and the remote node only serve as forwarding devices in the network virtualization system. FIG. 1B and FIG. 1C each shows an architectural diagram of another network virtualization system. In FIG. 1B and FIG. 1C, the network virtualization system includes: a core node and a remote node. In this case, the controller is located in the core node and belongs to a unit/module in the core node. Correspondingly, the core node may serve as a control device in the network virtualization system, and may also serve as a forwarding device in the network virtualization system, and the remote node only serves as a forwarding device in the network virtualization system.

[0036] The core node, the remote node, and the controller in the foregoing FIG. 1A to FIG. 1C may be devices such as routers or switches. Generally, when the core node and the remote node only serve as forwarding devices, the core node and the remote node may be low-performance routers or switches, and the controller may be a high-performance router or switch. In addition, the network virtualization system mentioned in the embodiments of the present invention is a system whose control function and forwarding function are separated, and in an initial establishment stage of the network virtualization system, a channel for transmitting a control packet, that is, a control channel, is established between the control device and the forwarding device in the network virtualization system.

[0037] Particularly, after the network virtualization system is established, establishment of a multicast tree tunnel is completed accordingly. The multicast tree tunnel of the network virtualization system is a multicast tree tunnel established by using a core node as a root and all remote nodes as leaves. Methods in the embodiments of the present invention are methods implemented based on a network virtualization system after a multicast tree tunnel is established.

[0038] Specifically, FIG. 1B shows an architectural diagram of a network virtualization system in a dual control scenario, and FIG. 1C shows an architectural diagram of a network virtualization system in a single control scenario.

[0039] For example, in FIG. 1B, a network virtualization system in a dual control scenario includes four core nodes (core nodes A, B, C and D) and 13 remote nodes, and a controller of the network virtualization system is located in a core node.

[0040] The controller of the network virtualization system is located in the core node, and further forms a control end in the core node. In specific application, the network virtualization system may have a primary control end and a secondary control end, where the primary control end may be integrated in the core node A, or may be parasitic in the core node A; and the secondary control end is integrated in the core node B, or is parasitic in the core node B. In addition, an actual network virtualization system may include multiple primary control ends and multiple secondary control ends, for example, another primary control end may further be integrated in the core node C, and another secondary control end may further be integrated in the core node D.

[0041] Generally, the network virtualization system in a dual control scenario refers to that each remote node such as a wireless access point (Access Point, AP for short) may be controlled by control ends of two core nodes (for example, the core node A and the core node B), that is, both the primary control end (for example, the core node A) and the secondary control end (for example, the core node B) control the remote nodes (for example, the remote nodes 1, 2, 3, 4, 5 and 6).

[0042] FIG. 1C shows an architectural diagram of a network virtualization system in a single control scenario. From the perspective of a control layer, two core nodes (for example, the core node A and the core node B) may be virtualized into one core node first, that is, the two core nodes share one primary control end, and each remote node (for example, the remote node 1, 2, 3, 4, 5 or 6) is controlled by only one control end, that is, the primary control end and the secondary control end serve as only one control device.

[0043] The embodiments of the present invention describe a method for establishing a multicast data channel in a network virtualization system by using the foregoing FIG. 1A to FIG. 1C as examples.

[0044] FIG. 2 shows a schematic flowchart of a method for establishing a multicast data channel in a network virtualization system according to an embodiment of the present invention. With reference to FIG. 1A and FIG. 2, the method for establishing a multicast data channel in a network virtualization system in this embodiment is described as follows:
In this embodiment, a network virtualization system is established in advance, and after the establishment of the network virtualization system is completed, the network virtualization system has a P2MP TE (full name in English: Point-To-Multipoint Traffic Engineering) multicast tree tunnel, where the P2MP TE multicast tree tunnel may be understood as a multicast tree tunnel that uses a core node as a root and all remote nodes as leaves. Each core node is corresponding to one P2MP TE multicast tree tunnel.

[0045] For example, the network virtualization system may be a P2MP TE multicast tree tunnel that is established by using each core node (Master) as a root, and all remote nodes (APs) in the network virtualization system as leaves.

[0046] In another embodiment, the multicast tree tunnel may be a Resource Reservation Protocol-Traffic Engineering (full name in English: Resource Reservation Protocol-Traffic Engineering, RSVP-TE for short) multicast tree tunnel, a point-to-multipoint label switching path (full name in English: P2MP Label Switching Path, P2MP LSP for short) multicast tree tunnel of multipoint extensions for Label Distribution Protocol (full name in English: multipoint extensions for Label Distribution Protocol, mLDP for short), or another P2MP tunnel.

[0047] In addition, in a dual control scenario, the number of multicast trees to be established depends on the number of the core nodes. In a single control scenario, the network virtualization system may be two P2MP TE multicast tree tunnels that are established by using a primary core node (Master) and a secondary core node (Master) as a root and all remote nodes (APs) as leaves.

[0048] 201: Create, on a controller, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device.

[0049] The external interface in this embodiment refers to an interface that connects to a network device outside the network virtualization system. The virtual remote logical interface may be a virtual remote logical interface with a multicast function.

[0050] 202: The controller generates a multicast tree tunnel that uses a core node as a root.

[0051] 203: The controller obtains a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by the device outside the network virtualization system by using the remote node or the core node of the network virtualization system.

[0052] For example, the multicast protocol packet may be an Internet Group Management Protocol (full name in English: Internet Group Management Protocol, IGMP for short) packet, or may be a PIM (full name in English: Protocol Independent Multicast) packet.

[0053] It should be understood that, the multicast protocol packet herein may be a multicast protocol packet sent by a user equipment and used to configure the network virtualization system.

[0054] 204: The controller acquires a multicast source address and a multicast group address from the multicast protocol packet.

[0055] 205: The controller generates a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface.

[0056] For example, the multicast inbound interface may be an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address. The unicast forwarding table herein is a forwarding table generated by using an Internet address (full name in English: Internet Protocol, IP for short) routing protocol, which is commonly known.

[0057] 206: The controller allocates a P2MP PW label to the multicast source address and the multicast group address; and the controller searches the multicast forwarding table for the external interface of the core node, finds an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generates a P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node.

[0058] 207: The controller sends the point-to-multipoint pseudo wire (full name in English: Point-To-Multipoint Pseudo Wire, P2MP PW for short) multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0059] For example, the controller sends the P2MP PW multicast forwarding table of the core node to the core node through a control channel of the network virtualization system.

[0060] The control channel is a channel for transmitting a control management packet between the control device and a forwarding device when the network virtualization system is established.

[0061] In an optional application scenario, that "the controller obtains a multicast protocol packet" in the foregoing step 203 may specifically include:

2031: If the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, the controller receives the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller; or

2031': if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, the controller receives the multicast protocol packet through a control channel between the core node and the controller.



[0062] It may be known from the foregoing embodiment that, in the method for establishing a multicast data channel in a network virtualization system in this embodiment, when a controller serves as an independent control device in the network virtualization system, the controller may generate a P2MP PW multicast forwarding table of a core node, and the controller may send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0063] In an optional implementation scenario, the foregoing method for establishing a multicast data channel in a network virtualization system may further include the following step 208 to step 213, which are not shown in the figure.

[0064] 208: The controller searches the multicast forwarding table for the virtual remote logical interface.

[0065] 209: The controller acquires the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node.

[0066] 210: The controller finds an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel.

[0067] 211: The controller generates a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label.

[0068] For example, a label allocation and management unit of the network virtualization system may allocate a P2MP PW label to each P2MP PW multicast tree, and manage the P2MP PW label, for example, maintain a mapping relationship between (S, G) and a P2MP label (label), a MID (multicast ID, full name in English: Multicast Identification), and OutIntf.

[0069] (S, G) is obtained from a multicast protocol packet, where S represents a multicast source address, and G represents a multicast group address such as an Internet protocol (full name in English: Internet Protocol, IP for short) address; and OutIntf represents outbound interface information.

[0070] The foregoing label allocation and management unit may be an independent device in the network virtualization system, or may be parasitic in a controller in the network virtualization system. The foregoing P2MP PW multicast tree is a P2MP PW multicast tree that uses a core node as a root and some or all remote nodes corresponding to an outbound interface in OutIntf as leaves.

[0071] 212: The controller sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0072] For example, the controller sends, through a control channel of the network virtualization system, the P2MP PW multicast forwarding table of the remote node to the remote node corresponding to the virtual remote logical interface.

[0073] The control channel is a channel for transmitting a control management packet between the control device and a forwarding device when the network virtualization system is established.

[0074] It may be known from the foregoing that, in the method for establishing a multicast data channel in a network virtualization system in this embodiment, when a controller serves as an independent control device in the network virtualization system, the controller may generate a P2MP PW multicast forwarding table of a remote node, and the controller may send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the remote node. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0075] In addition, on the basis of the embodiment shown in FIG. 2, the foregoing step 205 may be specifically analyzed as follows:
For example, in step 204, the controller acquires a multicast source address (S) and a multicast group address (G) from the multicast protocol packet, and the controller may also acquire an inbound interface (InIntf) from a preset unicast forwarding table.

[0076] In this case, in step 205, the controller forms an outbound interface (OutIntf) by using an outbound interface of the core node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node.

[0077] That is, the controller generates information about an outbound interface list including the virtual remote logical interface that has a mapping relationship with the external interface of the remote node, and the outbound interface of the core node.

[0078] Then, the multicast forwarding table {(S, G); InIntf; OutIntf} is generated according to the multicast source address, the multicast group address, the multicast inbound interface, and the multicast outbound interface.

[0079] In the method for establishing a multicast data channel in this embodiment, after a network virtualization system is established, a service connection between nodes in the network virtualization system is implemented through an internal data transmission channel, and further, continuity of a multicast service in the network virtualization system is achieved, so that the network virtualization system can support forwarding of a multicast data packet with high efficiency and quality.

[0080] In an exemplary embodiment, the multicast forwarding table may be {(S, G); InIntf; OutIntf}.

[0081] (S, G) is obtained from a multicast protocol packet, where S represents a multicast source address, and G represents a multicast group address.

[0082] In another exemplary embodiment, the foregoing multicast forwarding table may include a tunnel identifier, that is, a virtual private network identification (Virtual Private Network Identification, VPNID for short). For example, the multicast forwarding table may be {VPNID+(S, G); InIntf; OutIntf}.

[0083] FIG. 3 shows a schematic flowchart of a method for establishing a multicast data channel in a network virtualization system according to an embodiment of the present invention. With reference to FIG. 1B, FIG. 1C, and FIG. 3, the method for establishing a multicast data channel in a network virtualization system in this embodiment is described as follows:
In this embodiment, a network virtualization system is established in advance, and after the establishment of the network virtualization system is completed, the network virtualization system has a P2MP TE multicast tree tunnel, where the P2MP TE multicast tree tunnel herein may be understood as a multicast tree tunnel that uses a core node as a root and all remote nodes as leaves. Each core node is corresponding to one P2MP TE multicast tree tunnel.

[0084] For example, the network virtualization system may be a P2MP TE multicast tree tunnel that is established by using each core node (Master) as a root and all remote nodes (APs) in the network virtualization system as leaves.

[0085] In a dual control scenario, the number of multicast trees to be established depends on the number of the core nodes. In a single control scenario, the network virtualization system may be two P2MP TE multicast tree tunnels that are established by using a primary core node (Master) and a secondary core node (Master) as a root and all remote nodes (APs) as leaves.

[0086] 301: Create, on a core node, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device.

[0087] 302: The core node generates a multicast tree tunnel that uses a core node as a root.

[0088] 303: The core node obtains a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system.

[0089] It should be understood that, the multicast protocol packet herein may be a multicast protocol packet sent by a user equipment and used to configure the network virtualization system.

[0090] 304: The core node acquires a multicast source address and a multicast group address from the multicast protocol packet.

[0091] 305: The core node generates a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface.

[0092] For example, the foregoing multicast inbound interface may be an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0093] 306: The core node allocates a P2MP PW label to the multicast source address and the multicast group address; and the core node searches the multicast forwarding table for the external interface of the core node, finds an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generates a P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node.

[0094] For example, the P2MP PW multicast forwarding table of the core node may be: {(S, G); InIntf; OutIntf of the core node}.

[0095] (S, G) is obtained from a multicast protocol packet, where S represents a multicast source address, and G represents a multicast group address; and InIntf represents a multicast inbound interface, and OutIntf of the core node represents information about a list including the external interface of the core node and the outbound interface of the multicast tree tunnel on the core node.

[0096] 307: The core node saves the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0097] In a specific implementation scenario, that "the core node obtains a multicast protocol packet" in the foregoing step 303 may specifically include:
3031: If the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, the core node receives the multicast protocol packet transparently transmitted through a point-to-point pseudo wire (full name in English: Point-To-Point Pseudo Wire, P2P PW for short) established between the core node and the remote node, and through a control channel between the core node and a controller.

[0098] That is, if the core node is a control device, and the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, the core node receives the multicast protocol packet transparently transmitted through the P2P PW established between the core node and the remote node, and through the control channel between the core node and the controller.

[0099] If the core node is a control device, and the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, the core node directly receives the multicast protocol packet.

[0100] It may be known from the foregoing embodiment that, in the method for establishing a multicast data channel in a network virtualization system in this embodiment, when a controller is located inside a core node in the network virtualization system, the core node may generate a P2MP PW multicast forwarding table of the core node, and further save the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0101] In an optional implementation scenario, the foregoing method for establishing a multicast data channel in a network virtualization system may further include the following step 308 to step 313, which are not shown in the figure.

[0102] 308: The core node searches the multicast forwarding table for the virtual remote logical interface.

[0103] 309: The core node acquires the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node.

[0104] 310: The core node finds an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel.

[0105] 311: The core node generates a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label.

[0106] For example, the P2MP PW multicast forwarding table of the remote node may be {P2MP PW label; OutIntf of the remote node}.

[0107] OutIntf of the remote node represents information about a list including the external interface of the remote node and the outbound interface of the multicast tree tunnel on the remote node.

[0108] In addition, in a single control scenario, a control end uniformly allocates two P2MP PW labels to each (S, G), and generates two P2MP PW multicast forwarding tables, which are a primary P2MP PW multicast forwarding table that uses a primary core node as a root, and a secondary P2MP PW multicast forwarding table that uses a secondary core node as a root, respectively.

[0109] 312: The core node sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0110] It may be known from the foregoing that, in the method for establishing a multicast data channel in a network virtualization system in this embodiment, when a controller is located in a core node in the network virtualization system, the core node may generate a P2MP PW multicast forwarding table of a remote node, and further send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0111] In addition, with reference to FIG. 1B, if a primary control end is in the core node A, and a secondary control end is in the core node B, and when the core node that obtains the multicast protocol packet in the foregoing step 303 is the core node A, the core node A further needs to back up the obtained multicast protocol packet into the core node B.

[0112] Alternatively, in a possible implementation manner, if the core node that obtains the multicast protocol packet in the foregoing step 303 is the core node B, the core node B further needs to send the obtained multicast protocol packet to the core node A through a control channel between the core node A and the core node B.

[0113] The foregoing multicast protocol packet is a protocol packet sent by the device outside the network virtualization system by using the remote node or the core node of the network virtualization system.

[0114] In actual application, as shown in FIG. 1B, protocol synchronization is performed between a core node in which a primary control end is located and a core node in which a secondary control end is located. For example, the multicast protocol packet is transparently transmitted to the primary control end through a P2P PW between the remote node and the core node in which the primary control end is located, and the primary control end synchronizes, through a control channel between the core node in which the primary control end is located and the core node in which the secondary control end is located, the multicast protocol packet to a control end of the core node in which the secondary control end is located.

[0115] The control channel between the core node in which the primary control end is located and the core node in which the secondary control end is located is a control channel that is established once a network system is established.

[0116] Certainly, in an architectural diagram of a network virtualization system shown in FIG. 1C, because the primary control end and the secondary control end are located in a same core node, the foregoing step of backing up the multicast protocol packet is not needed.

[0117] It should be noted that, in a dual control scenario, a multicast data channel needs to be established for each core node with a control end, that is, a process from step 301 to step 307 is repeated to obtain a P2MP PW multicast forwarding table of each core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0118] In addition, during a specific application process, if a multicast data channel of each core node in a network virtualization system in a dual control scenario has already been established, a multicast tree receives a multicast data packet at a core node with a primary control end, and transmits the multicast data packet to a core node with a secondary control end for backup. When the multicast data packet of the core node with the primary control end has already been sent through an interface of a multicast tree tunnel or an outbound interface of the core node, or when the multicast data packet has already been delivered to a remote node, the multicast data packet backed up at the core node with the secondary control end is discarded, and otherwise, the backed up multicast data packet is used for subsequent forwarding.

[0119] FIG. 4 shows a schematic flowchart of a method for sending a multicast data packet according to an embodiment of the present invention. As shown in FIG. 4, the method for sending a multicast data packet in this embodiment is described as follows:
401: If a core node receives a multicast data packet, the core node searches a P2MP PW multicast forwarding table of the core node according to the multicast data packet, and if it is determined that a forwarding outbound interface of the multicast data packet is an external interface of the core node, the core node directly sends the multicast data packet through the external interface of the core node.

[0120] 402: If it is determined that the forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, the core node encapsulates a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet, and sends the first multicast data packet through the internal outbound interface of the core node.

[0121] The internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node.

[0122] 403: An intermediate remote node receives the first multicast data packet, acquires the P2MP PW label from the first multicast data packet, searches a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquires a matching multicast forwarding outbound interface; and if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel (such as a P2MP TE tunnel) on the intermediate remote node, for the encapsulated multicast data packet, the intermediate remote node swaps an incoming label and an outgoing label in a label of the P2MP TE tunnel, to obtain a second multicast data packet, and sends the second multicast data packet through the outbound interface of the P2MP TE tunnel on the intermediate remote node.

[0123] If the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, the intermediate remote node sends the first multicast data packet directly through the external interface of the intermediate remote node.

[0124] For example, in FIG. 1B, when a remote node 1 between a core node A and a node 2 is an intermediate remote node, the node 2 is a remote node.

[0125] 404: A remote node receives the second multicast data packet, acquires the P2MP PW label from the second multicast data packet, searches a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquires a matching multicast forwarding outbound interface; and the remote node decapsulates the label of the P2MP TE tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet, and sends the third multicast data packet through the matching multicast forwarding outbound interface.

[0126] Generally, the matching multicast forwarding outbound interface is an external interface of the remote node.

[0127] The foregoing method for sending a multicast data packet may enable a core node, an intermediate remote node, and a remote node in a network virtualization system to implement a multicast service.

[0128] FIG. 5 shows a schematic structural diagram of a control device according to an embodiment of the present invention. As shown in FIG. 5, the control device in this embodiment is located in a network virtualization system, and the control device may include: a creating unit 51, a generating unit 52, an obtaining unit 53, an acquiring unit 54, an allocating unit 55, a search unit 56, and a sending unit 57, where

the creating unit 51 is configured to create, on the control device, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device;

the generating unit 52 is configured to: after the creating unit 51 creates the virtual remote logical interface, generate a multicast tree tunnel that uses a core node as a root;

the obtaining unit 53 is configured to: after the generating unit 52 generates the multicast tree tunnel, obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

the acquiring unit 54 is configured to: after the obtaining unit 53 obtains the multicast protocol packet, acquire a multicast source address and a multicast group address from the multicast protocol packet;

the generating unit 52 is further configured to: after the acquiring unit 54 acquires the multicast source address and the multicast group address, generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface;

the allocating unit 55 is configured to allocate a P2MP PW label to the multicast source address and the multicast group address;

the search unit 56 is configured to: after the generating unit 52 generates the multicast forwarding table, search the multicast forwarding table for the external interface of the core node;

the generating unit 52 is further configured to: after the search unit 56 finds the external interface of the core node, search for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node; and

the sending unit 57 is configured to: after the generating unit generates the P2MP PW multicast forwarding table, send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0129] In an optional implementation scenario,

the search unit 56 is further configured to search the multicast forwarding table for the virtual remote logical interface;

the acquiring unit 54 is further configured to acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

the search unit 56 is further configured to search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

the generating unit 52 is further configured to generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the sending unit 57 is further configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0130] For example, the foregoing multicast inbound interface is an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0131] In an optional implementation scenario, the foregoing obtaining unit 53 may be specifically configured to:

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and a controller; or

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receive the multicast protocol packet through a control channel between the core node and a controller.



[0132] When the control device in this embodiment independently serves as a device in a network virtualization system, the control device may generate a P2MP PW multicast forwarding table of a core node and a P2MP PW multicast forwarding table of a remote node, and further send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the core node, and the control device sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the remote node. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0133] FIG. 6 is a schematic structural diagram of a communications device according to an embodiment of the present invention. As shown in FIG. 6, the communications device is located in a network virtualization system, and the communications device in this embodiment may include: a creating unit 61, a generating unit 62, an obtaining unit 63, an acquiring unit 64, an allocating unit 65, a search unit 66, and a saving unit 67, where

the creating unit 61 is configured to create, on the communications device, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device;

the generating unit 62 is configured to: after the creating unit 61 creates the virtual remote logical interface, generate a multicast tree tunnel that uses the communications device as a root;

the obtaining unit 63 is configured to: after the generating unit 62 generates the multicast tree tunnel, obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the communications device of the network virtualization system;

the acquiring unit 64 is configured to: after the obtaining unit 63 obtains the multicast protocol packet, acquire a multicast source address and a multicast group address from the multicast protocol packet;

the generating unit 62 is further configured to: after the acquiring unit 64 acquires the multicast source address and the multicast group address, generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the communications device and the virtual remote logical interface;

the allocating unit 65 is configured to allocate a P2MP PW label to the multicast source address and the multicast group address;

the search unit 66 is configured to: after the generating unit 62 generates the multicast forwarding table, search the multicast forwarding table for the external interface of the communications device, and search for an outbound interface of the multicast tree tunnel on the communications device according to the multicast tree tunnel;

the generating unit 62 is further configured to: after the search unit 66 finds the outbound interface of the communications device, generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the communications device according to the multicast source address, the multicast group address, the multicast inbound interface, the external interface of the communications device, and the outbound interface of the multicast tree tunnel on the communications device; and

the saving unit 67 is configured to: after the generating unit 62 generates the P2MP PW multicast forwarding table, save the P2MP PW multicast forwarding table of the communications device, so that the communications device forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0134] In a specific implementation manner, the foregoing communications device may further include a sending unit 68, which is not shown in the figure,

where,

the search unit 66 is further configured to search the multicast forwarding table for the virtual remote logical interface;

the acquiring unit 64 is further configured to acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

the search unit 66 is further configured to search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

the generating unit 62 is further configured to generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the sending unit 68 is configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0135] For example, the foregoing multicast inbound interface may be an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0136] In a specific implementation manner, the foregoing obtaining unit 63 may be specifically configured to: when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the communications device and the remote node, and through a control channel between the communications device and a controller.

[0137] When the communications device in this embodiment serves as a control device in a network virtualization system, the communications device may generate a P2MP PW multicast forwarding table of a core node and a P2MP PW multicast forwarding table of a remote node, and further save the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the core node, and the control device sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the remote node. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0138] FIG. 7 is a schematic structural diagram of a control device according to an embodiment of the present invention. As shown in FIG. 7, the control device is located in a network virtualization system, and the control device in this embodiment may include: a processor 71 and a transmitter 72, where

the processor 71 is configured to create a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device; and

the processor is further configured to generate a multicast tree tunnel that uses a core node as a root; and obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquire a multicast source address and a multicast group address from the multicast protocol packet;

generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the core node and the virtual remote logical interface;

allocate a P2MP PW label to the multicast source address and the multicast group address; and

search the multicast forwarding table for the external interface of the core node, search for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node; and

the transmitter 72 is configured to: after the processor 71 generates the P2MP PW multicast forwarding table of the core node, send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0139] In specific application, the foregoing processor 91 is further configured to:

search the multicast forwarding table for the virtual remote logical interface;

acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel; and

generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label.



[0140] The transmitter 92 is further configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0141] For example, the foregoing multicast inbound interface may be an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0142] Further, in actual application, a specific process of obtaining a multicast protocol packet by the processor 71 is as follows:

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and a controller; or

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receiving the multicast protocol packet through a control channel between the core node and a controller.



[0143] When the control device in this embodiment independently serves as a device in a network virtualization system, the control device may generate a P2MP PW multicast forwarding table of a core node and a P2MP PW multicast forwarding table of a remote node, and further send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the core node, and the control device sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the remote node. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0144] FIG. 8 is a schematic structural diagram of a communications device according to an embodiment of the present invention. The communications device is located in a network virtualization system, and as shown in FIG. 8, the communications device in this embodiment may include: a processor 81 and a memory 82, where

the processor 81 is configured to create, on the communications device, a virtual remote logical interface for an external interface of a remote node, where the external interface of the remote node is an interface used to connect to another network device;

generate a multicast tree tunnel that uses the communications device as a root;

obtain a multicast protocol packet, where the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the communications device of the network virtualization system;

acquire a multicast source address and a multicast group address from the multicast protocol packet;

generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, where the multicast outbound interface includes an external interface of the communications device and the virtual remote logical interface;

allocate a P2MP PW label to the multicast source address and the multicast group address; and

search the multicast forwarding table for the external interface of the communications device, search for an outbound interface of the multicast tree tunnel on the communications device according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the communications device according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the communications device, and the outbound interface of the multicast tree tunnel on the communications device; and

the memory 82 is configured to save the P2MP PW multicast forwarding table of the communications device, so that the communications device forwards a multicast data packet according to the P2MP PW multicast forwarding table.



[0145] In a specific application scenario, the processor 81 is further configured to:

search the multicast forwarding table for the virtual remote logical interface;

acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel; and

generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label.



[0146] Further, the communications device further includes a transmitter 83, which is not shown in FIG. 8.

[0147] The transmitter 83 is configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.

[0148] For example, the foregoing multicast inbound interface may be an outbound interface that is corresponding to the multicast source address and in a preset unicast forwarding table searched according to the multicast source address.

[0149] Specifically, a specific process of obtaining a multicast protocol packet by the processor 81 is as follows: when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the communications device and the remote node, and through a control channel between the communications device and a controller.

[0150] When the communications device in this embodiment serves as a control device in a network virtualization system, the communications device may generate a P2MP PW multicast forwarding table of a core node and a P2MP PW multicast forwarding table of a remote node, and further save the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the core node, and the control device sends the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table of the remote node. In this way, the network virtualization system can support a multicast service, thereby resolving a problem in the prior art that a cluster router cannot implement a multicast service.

[0151] It may be known from the foregoing that, the communications device in this embodiment is located in a network virtualization system, a service connection between nodes inside the network virtualization system can be implemented through an internal data transmission channel, and further, continuity of a multicast service in the network virtualization system is achieved, so that the network virtualization system can support forwarding of a multicast data packet with high efficiency and quality.

[0152] In addition, an embodiment of the present invention further provides a network virtualization system, and with reference to FIG. 1A to FIG. 1C, the network virtualization system in this embodiment of the present invention includes: a core node, an intermediate remote node connected to the core node, and a remote node connected to the intermediate remote node, where
the core node is specifically configured to:

receive a multicast data packet, and search a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast data packet;

if it is determined that a forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, encapsulate, by the core node, a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet; and

send the first multicast data packet to the intermediate remote node through the internal outbound interface of the core node, where

the internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node;

the intermediate remote node is specifically configured to:

receive the first multicast data packet, acquire the P2MP PW label from the first multicast data packet, search a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel on the intermediate remote node, swap, by the intermediate remote node, an incoming label and an outgoing label in the label of the multicast tree tunnel according to the first multicast data packet, to obtain a second multicast data packet; and

send, by the intermediate remote node, the second multicast data packet through the outbound interface of the multicast tree tunnel on the intermediate remote node; and

if the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, send, by the intermediate remote node, the first multicast data packet to the remote node directly through the external interface of the intermediate remote node; and

the remote node is specifically configured to:

receive the second multicast data packet, acquire the P2MP PW label from the second multicast data packet, search a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

decapsulate, by the remote node, the label of the multicast tree tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet; and

send, by the remote node, the third multicast data packet through the matching multicast forwarding outbound interface.



[0153] Optionally, the core node is further configured to: if it is determined that the forwarding outbound interface of the multicast data packet is an external interface of the core node, send, by the core node, the multicast data packet directly through the external interface of the core node.

[0154] The foregoing network virtualization system achieves continuity of a multicast service in the network virtualization system, and further a core node, an intermediate remote node, and a remote node in the system can implement a multicast service, that is, support forwarding of a multicast data packet.

[0155] Persons of ordinary skill in the art may understand that all or a part of the steps of the method embodiments may be implemented by a program instructing relevant hardware. The program may be stored in a computer-readable storage medium. When the program runs, the steps of the method embodiments are performed. The foregoing storage medium includes: any medium that can store program code, such as a ROM, a RAM, a magnetic disk, or an optical disc.

[0156] Finally, it should be noted that the foregoing embodiments are merely intended for describing the technical solutions of the present invention rather than limiting the present invention.


Claims

1. A method for establishing a multicast data channel in a network virtualization system, which includes a core node, a remote node and a controller, comprising:

creating (201), on the controller, a virtual remote logical interface for an external interface of the remote node, wherein the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generating (202), by the controller, a multicast tree tunnel that uses the core node as a root;

obtaining (203), by the controller, a multicast protocol packet, wherein the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquiring (204), by the controller, a multicast source address and a multicast group address from the multicast protocol packet;

generating (205), by the controller, a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, wherein the multicast outbound interface comprises an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocating (203), by the controller, a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address;

searching (206), by the controller, the multicast forwarding table for the external interface of the core node, searching for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generating a point-to-multipoint pseudo wire, P2MP PW, multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

sending (207), by the controller, the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
2. The method according to claim 1, wherein the method further comprises:

searching, by the controller, the multicast forwarding table for the virtual remote logical interface;

acquiring, by the controller, the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

searching, by the controller, for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

generating, by the controller, a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

sending, by the controller, the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
3. The method according to any one of claims 1 to 2, wherein the obtaining, by the controller, a multicast protocol packet specifically comprises:

if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving, by the controller, the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller; or

if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receiving, by the controller, the multicast protocol packet through a control channel between the core node and the controller.


 
4. A method for establishing a multicast data channel in a network virtualization system, which includes a core node, a remote node and a controller, comprising:

creating (301), on the core node, a virtual remote logical interface for an external interface of the remote node, wherein the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generating (302), by the core node, a multicast tree tunnel that uses the core node as a root;

obtaining (303), by the core node, a multicast protocol packet, wherein the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquiring (304), by the core node, a multicast source address and a multicast group address from the multicast protocol packet;

generating (305), by the core node, a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, wherein the multicast outbound interface comprises an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocating (306), by the core node, a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address;

searching (306), by the core node, the multicast forwarding table for the external interface of the core node, searching for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generating a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

saving (307), by the core node, the P2MP PW multicast forwarding table of the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
5. The method according to claim 4, wherein the method further comprises:

searching, by the core node, the multicast forwarding table for the virtual remote logical interface;

acquiring, by the core node, the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

searching, by the core node, for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel;

generating, by the core node, a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

sending, by the core node, the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
6. The method according to any one of claims 4 to 5, wherein the obtaining, by the core node, a multicast protocol packet specifically comprises:
if the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receiving, by the core node, the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller.
 
7. A control device, wherein the control device is located in a network virtualization system which includes a core node, a remote node and a controller, and the control device comprises:

a processor (71), configured to create a virtual remote logical interface for an external interface of a remote node, wherein the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generate a multicast tree tunnel that uses the core node as a root;

obtain a multicast protocol packet, wherein the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the core node of the network virtualization system;

acquire a multicast source address and a multicast group address from the multicast protocol packet;

generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, wherein the multicast outbound interface comprises an external interface of the core node and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocate a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address; and

search the multicast forwarding table for the external interface of the core node, search for an outbound interface of the multicast tree tunnel on the core node according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the core node according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the core node, and the outbound interface of the multicast tree tunnel on the core node, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

a transmitter (72), configured to: after the processor (71) generates the P2MP PW multicast forwarding table of the core node, send the P2MP PW multicast forwarding table of the core node to the core node, so that the core node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
8. The device according to claim 7, wherein the processor (71) is further configured to:

search the multicast forwarding table for the virtual remote logical interface;

acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel; and

generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the transmitter (72) is further configured to:
send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
9. The device according to any one of claims 7 to 8, wherein the processor (71) is specifically configured to:

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the core node and the remote node, and through a control channel between the core node and the controller; or

when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the core node, receive the multicast protocol packet through a control channel between the core node and the controller.


 
10. A communications device, wherein the communications device is located in a network virtualization system which includes a core node, a remote node and a controller, and the communications device comprises:

a processor (81), configured to create, on the communications device, a virtual remote logical interface for an external interface of the remote node, wherein the external interface of the remote node is an interface used to connect to another network device outside the network virtualization system and the virtual remote logical interface is a logical interface that corresponds to the external interface of the remote node;

generate a multicast tree tunnel that uses the communications device as a root;

obtain a multicast protocol packet, wherein the multicast protocol packet is a protocol packet sent by a device outside the network virtualization system by using the remote node or the communications device of the network virtualization system;

acquire a multicast source address and a multicast group address from the multicast protocol packet;

generate a multicast forwarding table according to the multicast source address, the multicast group address, a multicast inbound interface, and a multicast outbound interface, wherein the multicast outbound interface comprises an external interface of the communications device and the virtual remote logical interface and wherein the multicast inbound interface is an inbound interface for the multicast protocol packet entering into the network virtualization system and the multicast outbound interface is an outbound interface for the multicast protocol packet departure from the network virtualization system;

allocate a point-to-multipoint pseudo wire, P2MP PW, label to the multicast source address and the multicast group address; and

search the multicast forwarding table for the external interface of the communications device, search for an outbound interface of the multicast tree tunnel on the communications device according to the multicast tree tunnel, and generate a point-to-multipoint pseudo wire P2MP PW multicast forwarding table of the communications device according to the multicast source address, the multicast group address, the P2MP PW label, the multicast inbound interface, the external interface of the communications device, and the outbound interface of the multicast tree tunnel on the communications device, wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel; and

a memory (82), configured to save the P2MP PW multicast forwarding table of the communications device, so that the communications device forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
11. The device according to claim 10, wherein the processor (81) is further configured to:

search the multicast forwarding table for the virtual remote logical interface;

acquire the external interface of the remote node according to a mapping relationship between the virtual remote logical interface and the external interface of the remote node;

search for an outbound interface of the multicast tree tunnel on the remote node according to the multicast tree tunnel; and

generate a P2MP PW multicast forwarding table of the remote node according to the external interface of the remote node, the outbound interface of the multicast tree tunnel on the remote node, and the P2MP PW label; and

the communications device further comprises a transmitter, wherein

the transmitter is configured to send the P2MP PW multicast forwarding table of the remote node to the remote node, so that the remote node forwards a multicast data packet according to the P2MP PW multicast forwarding table.


 
12. The device according to any one of claims 10 to 11, wherein the processor (81) is specifically configured to:
when the multicast protocol packet is a protocol packet that is sent by the device outside the network virtualization system and received by the remote node, receive the multicast protocol packet transparently transmitted through a point-to-point pseudo wire P2P PW established between the communications device and the remote node, and through a control channel between the communications device and the controller.
 
13. A method for sending a multicast data packet, in a network virtualization system which includes a core node, an intermediate remote node, a remote node and a controller, comprising:

if the core node receives a multicast data packet, searching (401), by the core node, a point-to-multipoint pseudo wire, P2MP PW, multicast forwarding table of the core node according to the multicast data packet; and

if it is determined that a forwarding outbound interface of the multicast data packet is an external interface of the core node, sending (401), by the core node, the multicast data packet directly through the external interface of the core node, wherein the forwarding outbound interface is an outbound interface which is used to forward the multicast data packet,

further comprising:

if it is determined that the forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, encapsulating (402), by the core node, a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet; and

sending (402) the first multicast data packet through the internal outbound interface of the core node, wherein the internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node and also an internal interface for interconnecting internal nodes within the network virtualization system, and wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel.


 
14. The method according to claim 13, further comprising:

receiving (403), by the intermediate remote node, the first multicast data packet, acquiring the P2MP PW label from the first multicast data packet, searching a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquiring a matching multicast forwarding outbound interface;

if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel on the intermediate remote node, swapping (403), by the intermediate remote node, an incoming label and an outgoing label in the label of the multicast tree tunnel according to the first multicast data packet, to obtain a second multicast data packet; and

sending (403), by the intermediate remote node, the second multicast data packet through the outbound interface of the multicast tree tunnel on the intermediate remote node.


 
15. The method according to claim 14, further comprising:
if the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, sending, by the intermediate remote node, the first multicast data packet directly through the external interface of the intermediate remote node.
 
16. The method according to claim 15, further comprising:

if the remote node receives (404) the second multicast data packet, acquiring the P2MP PW label from the second multicast data packet, searching a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquiring a matching multicast forwarding outbound interface;

decapsulating (404), by the remote node, the label of the multicast tree tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet; and

sending (404), by the remote node, the third multicast data packet through the matching multicast forwarding outbound interface.


 
17. A network virtualization system, comprising: a core node, an intermediate remote node connected to the core node, and a remote node connected to the intermediate remote node, wherein
the core node is specifically configured to:

receive a multicast data packet, and search a point-to-multipoint pseudo wire, P2MP PW, multicast forwarding table of the core node according to the multicast data packet;

if it is determined that a forwarding outbound interface of the multicast data packet is an internal outbound interface of the core node, encapsulate, by the core node, a P2MP PW label and a label of a multicast tree tunnel into the multicast data packet, to obtain a first multicast data packet, wherein the forwarding outbound interface is an outbound interface which is used to forward the multicast data packet; and

send the first multicast data packet to the intermediate remote node through the internal outbound interface of the core node, wherein

the internal outbound interface of the core node is an outbound interface of the multicast tree tunnel on the core node and also an internal interface for interconnecting internal nodes within the network virtualization system, and wherein the outbound interface of the multicast tree tunnel is an outbound interface on the core node for the multicast tree tunnel;

the intermediate remote node is specifically configured to:

receive the first multicast data packet, acquire the P2MP PW label from the first multicast data packet, search a P2MP PW multicast forwarding table of the intermediate remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

if the matching multicast forwarding outbound interface is an outbound interface of the multicast tree tunnel on the intermediate remote node, swap, by the intermediate remote node, an incoming label and an outgoing label in the label of the multicast tree tunnel according to the first multicast data packet, to obtain a second multicast data packet;

send, by the intermediate remote node, the second multicast data packet through the outbound interface of the multicast tree tunnel on the intermediate remote node; and if the matching multicast forwarding outbound interface is an external interface of the intermediate remote node, send, by the intermediate remote node, the first multicast data packet to the remote node directly through the external interface of the intermediate remote node; and

the remote node is specifically configured to:

receive the second multicast data packet, acquire the P2MP PW label from the second multicast data packet, search a P2MP PW multicast forwarding table of the remote node according to the P2MP PW label, and acquire a matching multicast forwarding outbound interface;

decapsulate, by the remote node, the label of the multicast tree tunnel and the P2MP PW label that are in the second multicast data packet, to obtain a third multicast data packet; and

send, by the remote node, the third multicast data packet through the matching multicast forwarding outbound interface.


 


Ansprüche

1. Verfahren zum Einrichten eines "Multicast"-Datenkanals in einem Netzwerkvirtualisierungssystem, das einen Kernknoten, einen entfernten Knoten und einen "Controller" umfasst, umfassend:

Erstellen (201), auf dem "Controller", einer virtuellen entfernten logischen Schnittstelle für eine externe Schnittstelle des entfernten Knotens, wobei die externe Schnittstelle des entfernten Knotens eine Schnittstelle ist, die verwendet wird, um eine Verbindung mit einer anderen Netzwerkvorrichtung außerhalb des Netzwerkvirtualisierungssystems herzustellen, und die virtuelle entfernte logische Schnittstelle eine logische Schnittstelle ist, die der externen Schnittstelle des entfernten Knotens entspricht;

Erzeugen (202), durch den "Controller", eines "Multicast"-Baumtunnels, der den Kernknoten als Wurzel verwendet;

Erhalten (203), durch den "Controller", eines "Multicast"-Protokollpakets, wobei das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch eine Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet wird, durch Verwendung des entfernten Knotens oder des Kernknotens des Netzwerkvirtualisierungssystems;

Erfassen (204), durch den "Controller", einer "Multicast"-Quelladresse und einer "Multicast"-Gruppenadresse aus dem "Multicast"-Protokollpaket;

Erzeugen (205), durch den "Controller", einer "Multicast"-Weiterleitungstabelle gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, einer "Multicast"-Eingangsschnittstelle und einer "Multicast"-Ausgangsschnittstelle, wobei die "Multicast"-Ausgangsschnittstelle eine externe Schnittstelle des Kernknotens und die virtuelle entfernte logische Schnittstelle umfasst und wobei die "Multicast"-Eingangsschnittstelle eine Eingangsschnittstelle für das "Multicast"-Protokollpaket, das in das Netzwerkvirtualisierungssystem eintritt, ist und die "Multicast"-Ausgangsschnittstelle eine Ausgangsschnittstelle für den "Multicast"-Protokollpaketabgang aus dem Netzwerkvirtualisierungssystem ist;

Zuweisen (203), durch den "Controller", eines Punkt-zu-Mehrpunkt-Pseudodraht-Labels, "P2MP PW"-Labels, zu der "Multicast"-Quelladresse und der "Multicast"-Gruppenadresse;

Absuchen (206), durch den "Controller", der "Multicast"-Weiterleitungstabelle nach der externen Schnittstelle des Kernknotens, Suchen nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten gemäß dem "Multicast"-Baumtunnel, und Erzeugen einer Punkt-zu-Mehrpunkt-Pseudodraht-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, des Kernknotens gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, dem "P2MP PW"-Label, der "Multicast"-Eingangsschnittstelle, der externen Schnittstelle des Kernknotens und der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten, wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist; und

Senden (207), durch den "Controller", der "P2MP PW"-"Multicast"-Weiterleitungstabelle des Kernknotens zu dem Kernknoten, so dass der Kernknoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
2. Verfahren nach Anspruch 1, wobei das Verfahren ferner umfasst:

Absuchen, durch den "Controller", der "Multicast"-Weiterleitungstabelle nach der virtuellen entfernten logischen Schnittstelle;

Erfassen, durch den "Controller", der externen Schnittstelle des entfernten Knotens gemäß einer "Mapping"-Beziehung zwischen der virtuellen entfernten logischen Schnittstelle und der externen Schnittstelle des entfernten Knotens;

Suchen, durch den "Controller", nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten gemäß dem "Multicast"-Baumtunnel;

Erzeugen, durch den "Controller", einer "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß der externen Schnittstelle des entfernten Knotens, der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten und dem "P2MP PW"-Label; und

Senden, durch den "Controller", der "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens zu dem entfernten Knoten, so dass der entfernte Knoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
3. Verfahren nach einem beliebigen der Ansprüche 1 bis 2, wobei das Erhalten, durch den "Controller", eines "Multicast"-Protokollpakets konkret umfasst:

wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet und durch den entfernten Knoten empfangen wird, Empfangen, durch die Steuerung, des "Multicast"-Protokollpakets, das durch einen Punkt-zu-Punkt-Pseudodraht "P2P PW" der zwischen dem Kernknoten und dem entfernten Knoten eingerichtet ist, und durch einen Steuerkanal zwischen dem Kernknoten und dem "Controller" transparent übertragen wird; oder,

wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet und durch den Kernknoten empfangen wird, Empfangen, durch den "Controller", des "Multicast"-Protokollpakets durch einen Steuerkanal zwischen dem Kernknoten und dem "Controller".


 
4. Verfahren zum Einrichten eines "Multicast"-Datenkanals in einem Netzwerkvirtualisierungssystem, das einen Kernknoten, einen entfernten Knoten und einen "Controller" umfasst, umfassend:

Erstellen (301), auf dem Kernknoten, einer virtuellen entfernten logischen Schnittstelle für eine externe Schnittstelle des entfernten Knotens, wobei die externe Schnittstelle des entfernten Knotens eine Schnittstelle ist, die verwendet wird, um eine Verbindung zu einer anderen Netzwerkvorrichtung außerhalb des Netzwerkvirtualisierungssystems herzustellen, und die virtuelle entfernte logische Schnittstelle eine logische Schnittstelle ist, die der externen Schnittstelle des entfernten Knotens entspricht;

Erzeugen (302), durch den Kernknoten, eines "Multicast"-Baumtunnels, der den Kernknoten als Wurzel verwendet;

Erhalten (303), durch den Kernknoten, eines "Multicast"-Protokollpakets, wobei das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch eine Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet wird, durch Verwendung des entfernten Knotens oder des Kernknotens des Netzwerkvirtualisierungssystems;

Erfassen (304), durch den Kernknoten, einer "Multicast"-Quelladresse und einer "Multicast"-Gruppenadresse aus dem "Multicast"-Protokollpaket;

Erzeugen (305), durch den Kernknoten, einer "Multicast"-Weiterleitungstabelle gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, einer "Multicast"-Eingangsschnittstelle und einer "Multicast"-Ausgangsschnittstelle, wobei die "Multicast"-Ausgangsschnittstelle eine externe Schnittstelle des Kernknotens und die virtuelle entfernte logische Schnittstelle umfasst und wobei die "Multicast"-Eingangsschnittstelle eine Eingangsschnittstelle für das "Multicast"-Protokollpaket, das in das Netzwerkvirtualisierungssystem eintritt, ist und die "Multicast"-Ausgangsschnittstelle eine Ausgangsschnittstelle für den "Multicast"-Protokollpaketabgang aus dem Netzwerkvirtualisierungssystem ist;

Zuweisen (306), durch den Kernknoten, eines Punkt-zu-Mehrpunkt-Pseudodraht-Labels, "P2MP PW"-Labels, zu der "Multicast"-Quelladresse und der "Multicast"-Gruppenadresse;

Absuchen (306), durch den Kernknoten, der "Multicast"-Weiterleitungstabelle nach der externen Schnittstelle des Kernknotens, Suchen nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten gemäß dem "Multicast"-Baumtunnel und Erzeugen einer Punkt-zu-Mehrpunkt-Pseudodraht-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, des Kernknotens gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, dem "P2MP PW"-Label, der "Multicast"-Eingangsschnittstelle, der externen Schnittstelle des Kernknotens und der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten, wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist; und

Speichern (307), durch den Kernknoten, der "P2MP PW"-"Multicast"-Weiterleitungstabelle des Kernknotens, so dass der Kernknoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
5. Verfahren nach Anspruch 4, wobei das Verfahren ferner umfasst:

Absuchen, durch den Kernknoten, der "Multicast"-Weiterleitungstabelle nach der virtuellen entfernten logischen Schnittstelle;

Erfassen, durch den Kernknoten, der externen Schnittstelle des entfernten Knotens gemäß einer "Mapping"-Beziehung zwischen der virtuellen entfernten logischen Schnittstelle und der externen Schnittstelle des entfernten Knotens;

Suchen, durch den Kernknoten, nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten gemäß dem "Multicast"-Baumtunnel;

Erzeugen, durch den Kernknoten, einer "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß der externen Schnittstelle des entfernten Knotens, der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten und dem "P2MP PW"-Label; und

Senden, durch den Kernknoten, der "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens zu dem entfernten Knoten, so dass der entfernte Knoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
6. Verfahren nach einem beliebigen der Ansprüche 4 bis 5, wobei das Erhalten, durch den Kernknoten, eines "Multicast"-Protokollpakets konkret umfasst:
wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet und durch den entfernten Knoten empfangen wird, Empfangen, durch den Kernknoten, des "Multicast"-Protokollpakets, das durch einen Punkt-zu-Punkt-Pseudodraht "P2P PW", der zwischen dem Kernknoten und dem entfernten Knoten eingerichtet ist, und durch einen Steuerkanal zwischen dem Kernknoten und dem "Controller" transparent übertragen wird.
 
7. Steuerungsvorrichtung, wobei die Steuerungsvorrichtung in einem Netzwerkvirtualisierungssystem angeordnet ist, das einen Kernknoten, einen entfernten Knoten und einen "Controller" umfasst, und die Steuerungsvorrichtung umfasst:

einen Prozessor (71), der dazu ausgebildet ist, eine virtuelle entfernte logische Schnittstelle für eine externe Schnittstelle eines entfernten Knotens zu erstellen, wobei die externe Schnittstelle des entfernten Knotens eine Schnittstelle ist, die verwendet wird, um eine Verbindung zu einer anderen Netzwerkvorrichtung außerhalb des Netzwerkvirtualisierungssystems herzustellen, und die virtuelle entfernte logische Schnittstelle eine logische Schnittstelle ist, die der externen Schnittstelle des entfernten Knotens entspricht;

einen "Multicast"-Baumtunnel zu erzeugen, der den Kernknoten als Wurzel verwendet;

ein "Multicast"-Protokollpaket zu erhalten, wobei das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch eine Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet wird, durch Verwendung des entfernten Knotens oder des Kernknotens des Netzwerkvirtualisierungssystems;

eine "Multicast"-Quelladresse und eine "Multicast"-Gruppenadresse aus dem "Multicast"-Protokollpaket zu erfassen;

eine "Multicast"-Weiterleitungstabelle gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, einer "Multicast"-Eingangsschnittstelle und einer "Multicast"-Ausgangsschnittstelle zu erzeugen, wobei die "Multicast"-Ausgangsschnittstelle eine externe Schnittstelle des Kernknotens und die virtuelle entfernte logische Schnittstelle umfasst und wobei die "Multicast"-Eingangsschnittstelle eine Eingangsschnittstelle für das "Multicast"-Protokollpaket, das in das Netzwerkvirtualisierungssystem eintritt, ist und die "Multicast"-Ausgangsschnittstelle eine Ausgangsschnittstelle für den "Multicast"-Protokollpaketabgang aus dem Netzwerkvirtualisierungssystem ist;

einen Punkt-zu-Mehrpunkt-Pseudodraht-Label, "P2MP PW"-Label, zu der "Multicast"-Quelladresse und der "Multicast"-Gruppenadresse zuzuweisen;

die "Multicast"-Weiterleitungstabelle nach der externen Schnittstelle des Kernknotens abzusuchen, nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten gemäß dem "Multicast"-Baumtunnel zu suchen und eine Punkt-zu-Mehrpunkt-Pseudodraht-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, des Kernknotens gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, dem "P2MP PW"-Label, der "Multicast"-Eingangsschnittstelle, der externen Schnittstelle des Kernknotens und der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten zu erzeugen, wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist; und

einen Sender (72), der dazu ausgebildet ist: nachdem der Prozessor (71) die "P2MP PW"-"Multicast"-Weiterleitungstabelle des Kernknotens erzeugt, die "P2MP PW"-"Multicast"-Weiterleitungstabelle des Kernknotens zu dem Kernknoten zu senden, so dass der Kernknoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
8. Vorrichtung nach Anspruch 7, wobei der Prozessor (71) ferner dazu ausgebildet ist:

die "Multicast"-Weiterleitungstabelle nach der virtuellen entfernten logischen Schnittstelle abzusuchen;

die externe Schnittstelle des entfernten Knotens gemäß einer "Mapping"-Beziehung zwischen der virtuellen entfernten logischen Schnittstelle und der externen Schnittstelle des entfernten Knotens zu erfassen;

nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten gemäß dem "Multicast"-Baumtunnel zu suchen; und

eine "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß der externen Schnittstelle des entfernten Knotens, der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten und dem "P2MP PW"-Label zu erzeugen; und

der Sender (72) ferner dazu ausgebildet ist:
die "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens zu dem entfernten Knoten zu senden, so dass der entfernte Knoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
9. Vorrichtung nach einem beliebigen der Ansprüche 7 bis 8, wobei der Prozessor (71) konkret dazu ausgebildet ist:

wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet und durch den entfernten Knoten empfangen wird, das "Multicast"-Protokollpaket zu empfangen, das durch einen Punkt-zu-Punkt-Pseudodraht "P2P PW", der zwischen dem Kernknoten und dem entfernten Knoten eingerichtet ist, und durch einen Steuerkanal zwischen dem Kernknoten und dem "Controller" transparent übertragen wird; oder,

wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystem gesendet und durch den Kernknoten empfangen wird, das "Multicast"-Protokollpaket durch einen Steuerkanal zwischen dem Kernknoten und dem "Controller" zu empfangen.


 
10. Kommunikationsvorrichtung, wobei die Kommunikationsvorrichtung in einem Netzwerkvirtualisierungssystem angeordnet ist, das einen Kernknoten, einen entfernten Knoten und einen "Controller" umfasst, und die Kommunikationsvorrichtung umfasst:

einen Prozessor (81), der dazu ausgebildet ist, auf der Kommunikationsvorrichtung eine virtuelle entfernte logische Schnittstelle für eine externe Schnittstelle des entfernten Knotens zu erstellen, wobei die externe Schnittstelle des entfernten Knotens eine Schnittstelle ist, die verwendet wird, um eine Verbindung zu einer anderen Netzwerkvorrichtung außerhalb des Netzwerkvirtualisierungssystems herzustellen, und die virtuelle entfernte logische Schnittstelle eine logische Schnittstelle ist, die der externen Schnittstelle des entfernten Knotens entspricht;

einen "Multicast"-Baumtunnel zu erzeugen, der die Kommunikationsvorrichtung als Wurzel verwendet;

ein "Multicast"-Protokollpaket zu erhalten, wobei das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch eine Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet wird, durch Verwendung des entfernten Knotens oder der Kommunikationsvorrichtung des Netzwerkvirtualisierungssystems;

eine "Multicast"-Quelladresse und eine "Multicast"-Gruppenadresse aus dem "Multicast"-Protokollpaket zu erfassen;

eine "Multicast"-Weiterleitungstabelle gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, einer "Multicast"-Eingangsschnittstelle und einer "Multicast"-Ausgangsschnittstelle zu erzeugen, wobei die "Multicast"-Ausgangsschnittstelle eine externe Schnittstelle der Kommunikationsvorrichtung und die virtuelle entfernte logische Schnittstelle umfasst und wobei die "Multicast"-Eingangsschnittstelle eine Eingangsschnittstelle für das "Multicast"-Protokollpaket, das in das Netzwerkvirtualisierungssystem eintritt, ist und die "Multicast"-Ausgangsschnittstelle eine Ausgangsschnittstelle für den "Multicast"-Protokollpaketabgang aus dem Netzwerkvirtualisierungssystem ist;

einen Punkt-zu-Mehrpunkt-Pseudodraht-Label, "P2MP PW"-Label, zu der "Multicast"-Quelladresse und der "Multicast"-Gruppenadresse zuzuweisen;

die "Multicast"-Weiterleitungstabelle nach der externen Schnittstelle der Kommunikationsvorrichtung abzusuchen, nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf der Kommunikationsvorrichtung gemäß dem "Multicast"-Baumtunnel zu suchen und eine Punkt-zu-Mehrpunkt-Pseudodraht-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, der Kommunikationsvorrichtung gemäß der "Multicast"-Quelladresse, der "Multicast"-Gruppenadresse, dem "P2MP PW"-Label, der "Multicast"-Eingangsschnittstelle, der externen Schnittstelle der Kommunikationsvorrichtung und der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf der Kommunikationsvorrichtung zu erzeugen, wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist; und

einen Speicher (82), der dazu ausgebildet ist, die "P2MP PW"-"Multicast"-Weiterleitungstabelle der Kommunikationsvorrichtung zu speichern, so dass die Kommunikationsvorrichtung ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
11. Vorrichtung nach Anspruch 10, wobei der Prozessor (81) ferner dazu ausgebildet ist:

die "Multicast"-Weiterleitungstabelle nach der virtuellen entfernten logischen Schnittstelle abzusuchen;

die externe Schnittstelle des entfernten Knotens gemäß einer "Mapping"-Beziehung zwischen der virtuellen entfernten logischen Schnittstelle und der externen Schnittstelle des entfernten Knotens zu erfassen;

nach einer Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten gemäß dem "Multicast"-Baumtunnel zu suchen; und

eine "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß der externen Schnittstelle des entfernten Knotens, der Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Knoten und dem "P2MP PW"-Label zu erzeugen; und

wobei die Kommunikationsvorrichtung ferner einen Sender umfasst, wobei der Sender dazu ausgebildet ist, die "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens zu dem entfernten Knoten zu senden, so dass der entfernte Knoten ein "Multicast"-Datenpaket gemäß der "P2MP PW"-"Multicast"-Weiterleitungstabelle weiterleitet.


 
12. Vorrichtung nach einem beliebigen der Ansprüche 10 bis 11, wobei der Prozessor (81) konkret dazu ausgebildet ist:
wenn das "Multicast"-Protokollpaket ein Protokollpaket ist, das durch die Vorrichtung außerhalb des Netzwerkvirtualisierungssystems gesendet und durch den entfernten Knoten empfangen wird, das "Multicast"-Protokollpaket zu empfangen, das durch einen Punkt-zu-Punkt-Pseudodraht "P2P PW", der zwischen der Kommunikationsvorrichtung und dem entfernten Knoten eingerichtet ist, und durch einen Steuerkanal zwischen der Kommunikationsvorrichtung und dem "Controller" transparent übertragen wird.
 
13. Verfahren zum Senden eines "Multicast"-Datenpakets in einem Netzwerkvirtualisierungssystem, das einen Kernknoten, einen entfernten Zwischenknoten, einen entfernten Knoten und einen "Controller" umfasst, umfassend:

wenn der Kernknoten ein "Multicast"-Datenpaket empfängt, Suchen (401), durch den Kernknoten, einer Punkt-zu-Mehrpunkt-Pseudodraht-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, des Kernknotens gemäß dem "Multicast"-Datenpaket; und,

wenn bestimmt wird, dass eine Weiterleitungs-Ausgangsschnittstelle des "Multicast"-Datenpakets eine externe Schnittstelle des Kernknotens ist, Senden (401), durch den Kernknoten, des "Multicast"-Datenpakets direkt durch die externe Schnittstelle des Kernknotens, wobei die Weiterleitungs-Ausgangsschnittstelle eine Ausgangsschnittstelle ist, die verwendet wird, um das "Multicast"-Datenpaket weiterzuleiten,

ferner umfassend:

wenn bestimmt wird, dass die Weiterleitungs-Ausgangsschnittstelle des "Multicast"-Datenpakets eine interne Ausgangsschnittstelle des Kernknotens ist, Einkapseln (402), durch den Kernknoten, eines "P2MP PW"-Labels und eines Labels eines "Multicast"-Baumtunnels in das "Multicast"-Datenpaket, um ein erstes "Multicast"-Datenpaket zu erhalten; und

Senden (402) des ersten "Multicast"-Datenpakets durch die interne Ausgangsschnittstelle des Kernknotens, wobei die interne Ausgangsschnittstelle des Kernknotens eine Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten und auch eine interne Schnittstelle zum Verbinden interner Knoten innerhalb des Netzwerkvirtualisierungssystems miteinander ist, und wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist.


 
14. Verfahren nach Anspruch 13, ferner umfassend:

Empfangen (403), durch den entfernten Zwischenknoten, des ersten "Multicast"-Datenpakets, Erfassen des "P2MP PW"-Labels aus dem ersten "Multicast"-Datenpaket, Suchen einer "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Zwischenknotens gemäß dem "P2MP PW"-Label und Erfassen einer passenden "Multicast"-Weiterleitungs-Ausgangsschnittstelle;

wenn die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle eine Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Zwischenknoten ist, Tauschen (403), durch den entfernten Zwischenknoten, eines eingehenden Labels und eines abgehenden Labels in dem Label des "Multicast"-Baumtunnels gemäß dem ersten "Multicast"-Datenpaket, um ein zweites "Multicast"-Datenpaket zu erhalten; und

Senden (403), durch den entfernten Zwischenknoten, des zweiten "Multicast"-Datenpakets durch die Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Zwischenknoten.


 
15. Verfahren nach Anspruch 14, ferner umfassend:
wenn die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle eine externe Schnittstelle des entfernten Zwischenknotens ist, Senden, durch den entfernten Zwischenknoten, des ersten "Multicast"-Datenpakets direkt durch die externe Schnittstelle des entfernten Zwischenknotens.
 
16. Verfahren nach Anspruch 15, ferner umfassend:

wenn der entfernte Knoten das zweite "Multicast"-Datenpaket empfängt (404), Erfassen des "P2MP PW"-Labels aus dem zweiten "Multicast"-Datenpaket, Suchen einer "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß dem "P2MP PW"-Label und Erfassen einer passenden "Multicast"-Weiterleitungs-Ausgangsschnittstelle;

Entkapseln (404), durch den entfernten Knoten, des Labels des "Multicast"-Baumtunnels und des "P2MP PW"-Labels, die in dem zweiten "Multicast"-Datenpaket sind, um ein drittes "Multicast"-Datenpaket zu erhalten; und

Senden (404), durch den entfernten Knoten, des dritten "Multicast"-Datenpakets durch die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle.


 
17. Netzwerkvirtualisierungssystem, umfassend: einen Kernknoten, einen entfernten Zwischenknoten, der mit dem Kernknoten verbunden ist, und einen entfernten Knoten, der mit dem entfernten Zwischenknoten verbunden ist, wobei der Kernknoten konkret dazu ausgebildet ist:

ein "Multicast"-Datenpaket zu empfangen und eine Punkt-zu-Mehrpunkt-"Multicast"-Weiterleitungstabelle, "P2MP PW"-"Multicast"-Weiterleitungstabelle, des Kernknotens gemäß dem "Multicast"-Datenpaket zu suchen;

wenn bestimmt wird, dass eine Weiterleitungs-Ausgangsschnittstelle des "Multicast"-Datenpakets eine interne Ausgangsschnittstelle des Kernknotens ist, durch den Kernknoten, einen "P2MP PW"-Label und einen Label eines "Multicast"-Baumtunnels in das "Multicast"-Datenpaket einzukapseln, um ein erstes "Multicast"-Datenpaket zu erhalten, wobei die Weiterleitungs-Ausgangsschnittstelle eine Ausgangsschnittstelle ist, die verwendet wird, um das "Multicast"-Datenpaket weiterzuleiten; und

das erste "Multicast"-Datenpaket durch die interne Ausgangsschnittstelle des Kernknotens zu dem entfernten Zwischenknoten zu senden, wobei die interne Ausgangsschnittstelle des Kernknotens eine Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem Kernknoten und auch eine interne Schnittstelle zum Verbinden interner Knoten innerhalb des Netzwerkvirtualisierungssystems miteinander ist, und wobei die Ausgangsschnittstelle des "Multicast"-Baumtunnels eine Ausgangsschnittstelle auf dem Kernknoten für den "Multicast"-Baumtunnel ist;

wobei der entfernte Zwischenknoten konkret dazu ausgebildet ist:

das erste "Multicast"-Datenpaket zu empfangen, den "P2MP PW"-Label aus dem ersten "Multicast"-Datenpaket zu erfassen, eine "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Zwischenknotens gemäß dem "P2MP PW"-Label zu suchen und eine passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle zu erfassen;

wenn die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle eine Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Zwischenknoten ist, durch den entfernten Zwischenknoten, einen eingehenden Label und einen abgehenden Label in dem Label des "Multicast"-Baumtunnels gemäß dem ersten "Multicast"-Datenpaket zu tauschen, um ein zweites "Multicast"-Datenpaket zu erhalten;

durch den entfernten Zwischenknoten das zweite "Multicast"-Datenpaket durch die Ausgangsschnittstelle des "Multicast"-Baumtunnels auf dem entfernten Zwischenknoten zu senden; und,

wenn die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle eine externe Schnittstelle des entfernten Zwischenknotens ist, durch den entfernten Zwischenknoten, das erste "Multicast"-Datenpaket direkt durch die externe Schnittstelle des entfernten Zwischenknotens zu dem entfernten Knoten zu senden; und

wobei der entfernte Knoten konkret dazu ausgebildet ist:

das zweite "Multicast"-Datenpaket zu empfangen, den "P2MP PW"-Label aus dem zweiten "Multicast"-Datenpaket zu erfassen, eine "P2MP PW"-"Multicast"-Weiterleitungstabelle des entfernten Knotens gemäß dem "P2MP PW"-Label zu suchen und eine passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle zu erfassen;

durch den entfernten Knoten den Label des "Multicast"-Baumtunnels und den "P2MP PW"-Label, die in dem zweiten "Multicast"-Datenpaket sind, zu entkapseln, um ein drittes "Multicast"-Datenpaket zu erhalten; und

durch den entfernten Knoten das dritte "Multicast"-Datenpaket durch die passende "Multicast"-Weiterleitungs-Ausgangsschnittstelle zu senden.


 


Revendications

1. Procédé permettant d'établir un canal de données de multidiffusion dans un système de virtualisation de réseau, qui comporte un nœud central, un nœud distant et un contrôleur, comprenant les étapes suivantes :

créer (201), sur le contrôleur, une interface logique distante virtuelle pour une interface externe du nœud distant, l'interface externe du nœud distant étant une interface utilisée pour une connexion à un autre dispositif réseau situé à l'extérieur du système de virtualisation de réseau et l'interface logique distante virtuelle étant une interface logique qui correspond à l'interface externe du nœud distant ;

générer (202), par le contrôleur, un tunnel arborescent de multidiffusion qui utilise le nœud central comme une racine ;

obtenir (203), par le contrôleur, un paquet de protocole de multidiffusion, le paquet de protocole de multidiffusion étant un paquet de protocole envoyé par un dispositif situé à l'extérieur du système de virtualisation de réseau en utilisant le nœud distant ou le nœud central du système de virtualisation de réseau ;

acquérir (204), par le contrôleur, une adresse source de multidiffusion et une adresse de groupe de multidiffusion à partir du paquet de protocole de multidiffusion ;

générer (205), par le contrôleur, une table d'acheminement de multidiffusion selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, une interface d'entrée de multidiffusion, et une interface de sortie de multidiffusion, l'interface de sortie de multidiffusion comportant une interface externe du nœud central et l'interface logique distante virtuelle et l'interface d'entrée de multidiffusion étant une interface d'entrée pour le paquet de protocole de multidiffusion entrant dans le système de virtualisation de réseau et l'interface de sortie de multidiffusion étant une interface de sortie pour le paquet de protocole de multidiffusion sortant du système de virtualisation de réseau ;

attribuer (203), par le contrôleur, une étiquette pseudo-filaire point multipoint, P2MP PW, à l'adresse source de multidiffusion et à l'adresse de groupe de multidiffusion ;

rechercher (206), par le contrôleur, dans la table d'acheminement de multidiffusion l'interface externe du nœud central, rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le nœud central selon le tunnel arborescent de multidiffusion, et générer une table d'acheminement de multidiffusion pseudo-filaire point multipoint, P2MP PW, du nœud central selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, l'étiquette P2MP PW, l'interface d'entrée de multidiffusion, l'interface externe du nœud central, et l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud central, l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion ; et

envoyer (207), par le contrôleur, la table d'acheminement de multidiffusion P2MP PW du nœud central au nœud central, pour que le nœud central transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
2. Procédé selon la revendication 1, dans lequel le procédé comprend en outre :

rechercher, par le contrôleur, dans la table d'acheminement de multidiffusion l'interface logique distante virtuelle ;

acquérir, par le contrôleur, l'interface externe du nœud distant selon une relation de mappage entre l'interface logique distante virtuelle et l'interface externe du nœud distant ;

rechercher, par le contrôleur, une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant selon le tunnel arborescent de multidiffusion ;

générer, par le contrôleur, une table d'acheminement de multidiffusion P2MP PW du nœud distant selon l'interface externe du nœud distant, l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant, et l'étiquette P2MP PW ; et

envoyer, par le contrôleur, la table d'acheminement de multidiffusion P2MP PW du nœud distant au nœud distant, pour que le nœud distant transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
3. Procédé selon l'une quelconque des revendications 1 à 2, dans lequel l'étape d'obtention, par le contrôleur, d'un paquet de protocole de multidiffusion comprend spécifiquement :

si le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud distant, recevoir, par le contrôleur, le paquet de protocole de multidiffusion transmis de façon transparente par l'intermédiaire d'un pseudo fil point à point P2P PW établi entre le nœud central et le nœud distant, et par l'intermédiaire d'un canal de contrôle entre le nœud central et le contrôleur ; ou

si le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud central, recevoir, par le contrôleur, le paquet de protocole de multidiffusion par l'intermédiaire d'un canal de contrôle entre le nœud central et le contrôleur.


 
4. Procédé permettant d'établir un canal de données de multidiffusion dans un système de virtualisation de réseau, qui comporte un nœud central, un nœud distant et un contrôleur, comprenant :

créer (301), sur le nœud central, une interface logique distante virtuelle pour une interface externe du nœud distant, l'interface externe du nœud distant étant une interface utilisée pour une connexion à un autre dispositif réseau situé à l'extérieur du système de virtualisation de réseau et l'interface logique distante virtuelle étant une interface logique qui correspond à l'interface externe du nœud distant ;

générer (302), par le nœud central, un tunnel arborescent de multidiffusion qui utilise le nœud central comme une racine ;

obtenir (303), par le nœud central, un paquet de protocole de multidiffusion, le paquet de protocole de multidiffusion étant un paquet de protocole envoyé par un dispositif situé à l'extérieur du système de virtualisation de réseau en utilisant le nœud distant ou le nœud central du système de virtualisation de réseau ;

acquérir (304), par le nœud central, une adresse source de multidiffusion et une adresse de groupe de multidiffusion à partir du paquet de protocole de multidiffusion ;

générer (305), par le nœud central, une table d'acheminement de multidiffusion selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, une interface d'entrée de multidiffusion, et une interface de sortie de multidiffusion,

l'interface de sortie de multidiffusion comportant une interface externe du nœud central et l'interface logique distante virtuelle et l'interface d'entrée de multidiffusion étant une interface d'entrée pour le paquet de protocole de multidiffusion entrant dans le système de virtualisation de réseau et l'interface de sortie de multidiffusion étant une interface de sortie pour le paquet de protocole de multidiffusion sortant du système de virtualisation de réseau ;

attribuer (306), par le nœud central, une étiquette pseudo-filaire point multipoint, P2MP PW, à l'adresse source de multidiffusion et à l'adresse de groupe de multidiffusion ;

rechercher (306), par le nœud central, dans la table d'acheminement de multidiffusion l'interface externe du nœud central, rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le nœud central selon le tunnel arborescent de multidiffusion, et générer une table d'acheminement de multidiffusion pseudo-filaire point multipoint P2MP PW du nœud central selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, l'étiquette P2MP PW, l'interface d'entrée de multidiffusion, l'interface externe du nœud central, et l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud central, l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion ; et

sauvegarder (307), par le nœud central, la table d'acheminement de multidiffusion P2MP PW du nœud central, pour que le nœud central transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
5. Procédé selon la revendication 4, dans lequel le procédé comprend en outre :

rechercher, par le nœud central, dans la table d'acheminement de multidiffusion l'interface logique distante virtuelle ;

acquérir, par le nœud central, l'interface externe du nœud distant selon une relation de mappage entre l'interface logique distante virtuelle et l'interface externe du nœud distant ;

rechercher, par le nœud central, une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant selon le tunnel arborescent de multidiffusion ;

générer, par le nœud central, une table d'acheminement de multidiffusion P2MP PW du nœud distant selon l'interface externe du nœud distant, l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant, et l'étiquette P2MP PW ; et

envoyer, par le nœud central, la table d'acheminement de multidiffusion P2MP PW du nœud distant au nœud distant, pour que le nœud distant transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
6. Procédé selon l'une quelconque des revendications 4 à 5, dans lequel l'étape d'obtention, par le nœud central, d'un paquet de protocole de multidiffusion comprend spécifiquement :
si le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud distant, recevoir, par le nœud central, le paquet de protocole de multidiffusion transmis de façon transparente par l'intermédiaire d'un pseudo fil point à point P2P PW établi entre le nœud central et le nœud distant, et par l'intermédiaire d'un canal de contrôle entre le nœud central et le contrôleur.
 
7. Dispositif de contrôle, dans lequel le dispositif de contrôle est situé dans un système de virtualisation de réseau qui comporte un nœud central, un nœud distant et un contrôleur, et le dispositif de contrôle comprend :

un processeur (71), configuré pour créer une interface logique distante virtuelle pour une interface externe d'un nœud distant, l'interface externe du nœud distant étant une interface utilisée pour une connexion à un autre dispositif réseau situé à l'extérieur du système de virtualisation de réseau et l'interface logique distante virtuelle étant une interface logique qui correspond à l'interface externe du nœud distant ;

générer un tunnel arborescent de multidiffusion qui utilise le nœud central comme une racine ;

obtenir un paquet de protocole de multidiffusion, le paquet de protocole de multidiffusion étant un paquet de protocole envoyé par un dispositif situé à l'extérieur du système de virtualisation de réseau en utilisant le nœud distant ou le nœud central du système de virtualisation de réseau ;

acquérir une adresse source de multidiffusion et une adresse de groupe de multidiffusion à partir du paquet de protocole de multidiffusion ;

générer une table d'acheminement de multidiffusion selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, une interface d'entrée de multidiffusion, et une interface de sortie de multidiffusion, l'interface de sortie de multidiffusion comportant une interface externe du nœud central et l'interface logique distante virtuelle et l'interface d'entrée de multidiffusion étant une interface d'entrée pour le paquet de protocole de multidiffusion entrant dans le système de virtualisation de réseau et l'interface de sortie de multidiffusion étant une interface de sortie pour le paquet de protocole de multidiffusion sortant du système de virtualisation de réseau ;

attribuer une étiquette pseudo-filaire point multipoint, P2MP PW, à l'adresse source de multidiffusion et à l'adresse de groupe de multidiffusion ; et

rechercher dans la table d'acheminement de multidiffusion l'interface externe du nœud central, rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le nœud central selon le tunnel arborescent de multidiffusion, et générer une table d'acheminement de multidiffusion pseudo-filaire point multipoint, P2MP PW, du nœud central selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, l'étiquette P2MP PW, l'interface d'entrée de multidiffusion, l'interface externe du nœud central, et l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud central, l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion ; et

un transmetteur (72), configuré pour : après que le processeur (71) a généré la table d'acheminement de multidiffusion P2MP PW du nœud central, envoyer la table d'acheminement de multidiffusion P2MP PW du nœud central au nœud central, pour que le nœud central transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
8. Dispositif selon la revendication 7, dans lequel le processeur (71) est en outre configuré pour :

rechercher dans la table d'acheminement de multidiffusion l'interface logique distante virtuelle ;

acquérir l'interface externe du nœud distant selon une relation de mappage entre l'interface logique distante virtuelle et l'interface externe du nœud distant ;

rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant selon le tunnel arborescent de multidiffusion ; et

générer une table d'acheminement de multidiffusion P2MP PW du nœud distant selon l'interface externe du nœud distant, l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant, et l'étiquette P2MP PW ; et

le transmetteur (72) est en outre configuré pour :
envoyer la table d'acheminement de multidiffusion P2MP PW du nœud distant au nœud distant, pour que le nœud distant transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
9. Dispositif selon l'une quelconque des revendications 7 à 8, dans lequel le processeur (71) est configuré spécifiquement pour :

lorsque le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud distant, recevoir le paquet de protocole de multidiffusion transmis de façon transparente par l'intermédiaire d'un pseudo fil point à point P2P PW établi entre le nœud central et le nœud distant, et par l'intermédiaire d'un canal de contrôle entre le nœud central et le contrôleur ; ou

lorsque le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud central, recevoir le paquet de protocole de multidiffusion par l'intermédiaire d'un canal de contrôle entre le nœud central et le contrôleur.


 
10. Dispositif de communication, dans lequel le dispositif de communication est situé dans un système de virtualisation de réseau qui comporte un nœud central, un nœud distant et un contrôleur, et le dispositif de communication comprend :

un processeur (81), configuré pour créer, sur le dispositif de communication, une interface logique distante virtuelle pour une interface externe du nœud distant, l'interface externe du nœud distant étant une interface utilisée pour une connexion à un autre dispositif réseau situé à l'extérieur du système de virtualisation de réseau et l'interface logique distante virtuelle étant une interface logique qui correspond à l'interface externe du nœud distant ;

générer un tunnel arborescent de multidiffusion qui utilise le dispositif de communication comme une racine ;

obtenir un paquet de protocole de multidiffusion, le paquet de protocole de multidiffusion étant un paquet de protocole envoyé par un dispositif situé à l'extérieur du système de virtualisation de réseau en utilisant le nœud distant ou le dispositif de communication du système de virtualisation de réseau ;

acquérir une adresse source de multidiffusion et une adresse de groupe de multidiffusion à partir du paquet de protocole de multidiffusion ;

générer une table d'acheminement de multidiffusion selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, une interface d'entrée de multidiffusion, et une interface de sortie de multidiffusion, l'interface de sortie de multidiffusion comportant une interface externe du dispositif de communication et l'interface logique distante virtuelle et l'interface d'entrée de multidiffusion étant une interface d'entrée pour le paquet de protocole de multidiffusion entrant dans le système de virtualisation de réseau et l'interface de sortie de multidiffusion étant une interface de sortie pour le paquet de protocole de multidiffusion sortant du système de virtualisation de réseau ;

attribuer une étiquette pseudo-filaire point multipoint, P2MP PW, à l'adresse source de multidiffusion et à l'adresse de groupe de multidiffusion ; et

rechercher dans la table d'acheminement de multidiffusion l'interface externe du dispositif de communication, rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le dispositif de communication selon le tunnel arborescent de multidiffusion, et générer une table d'acheminement de multidiffusion pseudo-filaire point multipoint P2MP PW du dispositif de communication selon l'adresse source de multidiffusion, l'adresse de groupe de multidiffusion, l'étiquette P2MP PW, l'interface d'entrée de multidiffusion, l'interface externe du dispositif de communication, et l'interface de sortie du tunnel arborescent de multidiffusion sur le dispositif de communication, l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion ; et

une mémoire (82), configurée pour sauvegarder la table d'acheminement de multidiffusion P2MP PW du dispositif de communication, pour que le dispositif de communication transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
11. Dispositif selon la revendication 10, dans lequel le processeur (81) est en outre configuré pour :

rechercher dans la table d'acheminement de multidiffusion l'interface logique distante virtuelle ;

acquérir l'interface externe du nœud distant selon une relation de mappage entre l'interface logique distante virtuelle et l'interface externe du nœud distant ;

rechercher une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant selon le tunnel arborescent de multidiffusion ; et

générer une table d'acheminement de multidiffusion P2MP PW du nœud distant selon l'interface externe du nœud distant, l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant, et l'étiquette P2MP PW ; et

le dispositif de communication comprend en outre un transmetteur,

le transmetteur étant configuré pour envoyer la table d'acheminement de multidiffusion P2MP PW du nœud distant au nœud distant, pour que le nœud distant transmette un paquet de données de multidiffusion selon la table d'acheminement de multidiffusion P2MP PW.


 
12. Dispositif selon l'une quelconque des revendications 10 à 11, dans lequel le processeur (81) est configuré spécifiquement pour :
lorsque le paquet de protocole de multidiffusion est un paquet de protocole qui est envoyé par le dispositif situé à l'extérieur du système de virtualisation de réseau et reçu par le nœud distant, recevoir le paquet de protocole de multidiffusion transmis de façon transparente par l'intermédiaire d'un pseudo fil point à point P2P PW établi entre le dispositif de communication et le nœud distant, et par l'intermédiaire d'un canal de contrôle entre le dispositif de communication et le contrôleur.
 
13. Procédé permettant d'envoyer un paquet de données de multidiffusion, dans un système de virtualisation de réseau qui comporte un nœud central, un nœud distant intermédiaire, un nœud distant et un contrôleur, comprenant :

si le nœud central reçoit un paquet de données de multidiffusion, rechercher (401), par le nœud central, une table d'acheminement de multidiffusion pseudo-filaire point multipoint, P2MP PW, du nœud central selon le paquet de données de multidiffusion ; et

s'il est déterminé qu'une interface de sortie d'acheminement du paquet de données de multidiffusion est une interface externe du nœud central, envoyer (401), par le nœud central, le paquet de données de multidiffusion directement par l'intermédiaire de l'interface externe du nœud central, l'interface de sortie d'acheminement étant une interface de sortie qui est utilisée pour acheminer le paquet de données de multidiffusion,

comprenant en outre :

s'il est déterminé que l'interface de sortie d'acheminement du paquet de données de multidiffusion est une interface de sortie interne du nœud central, encapsuler (402), par le nœud central, une étiquette P2MP PW et une étiquette d'un tunnel arborescent de multidiffusion dans le paquet de données de multidiffusion, pour obtenir un premier paquet de données de multidiffusion ; et

envoyer (402) le premier paquet de données de multidiffusion par l'intermédiaire de l'interface de sortie interne du nœud central, l'interface de sortie interne du nœud central étant une interface de sortie du tunnel arborescent de multidiffusion sur le nœud central et également une interface interne permettant d'interconnecter des nœuds internes à l'intérieur du système de virtualisation de réseau, et l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion.


 
14. Procédé selon la revendication 13, comprenant en outre :

recevoir (403), par le nœud distant intermédiaire, le premier paquet de données de multidiffusion, acquérir l'étiquette P2MP PW à partir du premier paquet de données de multidiffusion, effectuer une recherche dans une table d'acheminement de multidiffusion P2MP PW du nœud distant intermédiaire selon l'étiquette P2MP PW, et acquérir une interface de sortie d'acheminement de multidiffusion correspondante ; si l'interface de sortie d'acheminement de multidiffusion correspondante est une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant intermédiaire, échanger (403), par le nœud distant intermédiaire, une étiquette entrante et une étiquette sortante dans l'étiquette du tunnel arborescent de multidiffusion selon le premier paquet de données de multidiffusion, pour obtenir un deuxième paquet de données de multidiffusion ; et

envoyer (403), par le nœud distant intermédiaire, le deuxième paquet de données de multidiffusion par le biais de l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant intermédiaire.


 
15. Procédé selon la revendication 14, comprenant en outre :
si l'interface de sortie d'acheminement de multidiffusion correspondante est une interface externe du nœud distant intermédiaire, envoyer, par le nœud distant intermédiaire, le premier paquet de données de multidiffusion directement par le biais de l'interface externe du nœud distant intermédiaire.
 
16. Procédé selon la revendication 15, comprenant en outre :

si le nœud distant reçoit (404) le deuxième paquet de données de multidiffusion, acquérir l'étiquette P2MP PW à partir du deuxième paquet de données de multidiffusion, effectuer une recherche dans une table d'acheminement de multidiffusion P2MP PW du nœud distant selon l'étiquette P2MP PW, et acquérir une interface de sortie d'acheminement de multidiffusion correspondante ;

décapsuler (404), par le nœud distant, l'étiquette du tunnel arborescent de multidiffusion et l'étiquette P2MP PW qui sont dans le deuxième paquet de données de multidiffusion, pour obtenir un troisième paquet de données de multidiffusion ; et

envoyer (404), par le nœud distant, le troisième paquet de données de multidiffusion par l'intermédiaire de l'interface de sortie d'acheminement de multidiffusion correspondante.


 
17. Système de virtualisation de réseau, comprenant : un nœud central, un nœud distant intermédiaire connecté au nœud central, et un nœud distant connecté au nœud distant intermédiaire,
le nœud central étant configuré spécifiquement pour :

recevoir un paquet de données de multidiffusion, et effectuer une recherche dans une table d'acheminement de multidiffusion pseudo-filaire point multipoint, P2MP PW, du nœud central selon le paquet de données de multidiffusion ;

s'il est déterminé qu'une interface de sortie d'acheminement du paquet de données de multidiffusion est une interface de sortie interne du nœud central, encapsuler, par le nœud central, une étiquette P2MP PW et une étiquette d'un tunnel arborescent de multidiffusion dans le paquet de données de multidiffusion, pour obtenir un premier paquet de données de multidiffusion, l'interface de sortie d'acheminement étant une interface de sortie qui est utilisée pour transmettre le paquet de données de multidiffusion ; et

envoyer le premier paquet de données de multidiffusion au nœud distant intermédiaire par le biais de l'interface de sortie interne du nœud central,

l'interface de sortie interne du nœud central étant une interface de sortie du tunnel arborescent de multidiffusion sur le nœud central et également une interface interne permettant d'interconnecter des nœuds internes à l'intérieur du système de virtualisation de réseau, et l'interface de sortie du tunnel arborescent de multidiffusion étant une interface de sortie sur le nœud central pour le tunnel arborescent de multidiffusion ;

le nœud distant intermédiaire est configuré spécifiquement pour :

recevoir le premier paquet de données de multidiffusion, acquérir l'étiquette P2MP PW à partir du premier paquet de données de multidiffusion, effectuer une recherche dans une table d'acheminement de multidiffusion P2MP PW du nœud distant intermédiaire selon l'étiquette P2MP PW, et acquérir une interface de sortie d'acheminement de multidiffusion correspondante ;

si l'interface de sortie d'acheminement de multidiffusion correspondante est une interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant intermédiaire, échanger, par le nœud distant intermédiaire, une étiquette entrante et une étiquette sortante dans l'étiquette du tunnel arborescent de multidiffusion selon le premier paquet de données de multidiffusion, pour obtenir un deuxième paquet de données de multidiffusion ;

envoyer, par le nœud distant intermédiaire, le deuxième paquet de données de multidiffusion par le biais de l'interface de sortie du tunnel arborescent de multidiffusion sur le nœud distant intermédiaire ; et

si l'interface de sortie d'acheminement de multidiffusion correspondante est une interface externe du nœud distant intermédiaire, envoyer, par le nœud distant intermédiaire, le premier paquet de données de multidiffusion au nœud distant directement par le biais de l'interface externe du nœud distant intermédiaire ; et

le nœud distant est configuré spécifiquement pour :

recevoir le deuxième paquet de données de multidiffusion, acquérir l'étiquette P2PM PW à partir du deuxième paquet de données de multidiffusion, effectuer une recherche dans une table d'acheminement de multidiffusion P2PM PW du nœud distant selon l'étiquette P2MP PW, et acquérir une interface de sortie d'acheminement de multidiffusion correspondante ;

décapsuler, par le nœud distant, l'étiquette du tunnel arborescent de multidiffusion et l'étiquette P2MP PW qui sont dans le deuxième paquet de données de multidiffusion, pour obtenir un troisième paquet de données de multidiffusion ; et

envoyer, par le nœud distant, le troisième paquet de données de multidiffusion par l'intermédiaire de l'interface de sortie d'acheminement de multidiffusion correspondante.


 




Drawing


























Cited references

REFERENCES CITED IN THE DESCRIPTION



This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

Patent documents cited in the description