CN111181855B - Multicast method and routing equipment - Google Patents
Multicast method and routing equipment Download PDFInfo
- Publication number
- CN111181855B CN111181855B CN201811348150.6A CN201811348150A CN111181855B CN 111181855 B CN111181855 B CN 111181855B CN 201811348150 A CN201811348150 A CN 201811348150A CN 111181855 B CN111181855 B CN 111181855B
- Authority
- CN
- China
- Prior art keywords
- multicast
- routing
- tunnel
- routing device
- multicast group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
- H04L45/507—Label distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the application discloses a multicast method and routing equipment, wherein the method comprises the following steps: when a multicast group is connected to a first routing device, the first routing device allocates a multicast segment identifier for the multicast group, wherein the multicast segment identifier is used for indicating that the currently-loaded service is a multicast service; the first routing equipment informs other routing equipment in a segment routing domain of a message carrying the multicast segment identifier; after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the first routing equipment receives the multicast data forwarded by the tunnel; wherein the second routing device is a source access node device of the multicast group. By adopting the embodiment of the application, the flexible bearing of the multicast service in the SR network can be realized, and the working efficiency of the SR network is fully exerted.
Description
Technical Field
The present application relates to the field of communications technologies, and in particular, to a multicast method and a routing device.
Background
With the gradual maturity of the related standards of Multi-Protocol Label Switching (MPLS for short), network multimedia applications such as network televisions and video conferences are increasingly widely used. In the MPLS network, Segment Routing (SR) has a very broad development prospect as a novel technology. The control plane advertises a global label through an Internal Gateway Protocol (IGP) and a Border Gateway Protocol (BGP), and the data plane carries a data packet through MPLS or IPv6 packet header extension. The realization of the existing MPLS Label Distribution Protocol (LDP) and the Resource Reservation Protocol (RSVP TE) aiming at the Traffic Engineering extension is simplified, and the Resource occupation is reduced. But more are currently used in the transmission of unicast data packets.
If point-to-multipoint and multipoint-to-multipoint communications can be supported in an MPLS network using multicast techniques, bandwidth consumption can be reduced and quality of service can be improved. For the transmission of Multicast data packets, in the prior art, a pruned Multicast Distribution Tree (MDT) needs to be pre-calculated according to the Multicast group access condition, specifically, the MDT may be pruned by extending a Protocol Independent Multicast (PIM) state machine in an IGP Protocol, and then one or more Segment identifications (Segment identifications, SID) are allocated to the MDT, where the SID is in the same format as a conventional unicast SID. Therefore, in the control plane, an IGP state machine for extending PIM is required to perform processing, and in the forwarding plane, forwarding needs to be performed according to a forwarding table, an SID and a tunnel (tunnel), where the tunnel is used to designate the whole transmission path of a packet, so that an intermediate forwarding node needs to maintain the multicast group state, and a forwarding table entry also needs to be correspondingly sensed, so that the forwarding process of the multicast packet is quite complex, which is contrary to the original purpose of SR protocol design.
Disclosure of Invention
The technical problem to be solved in the embodiments of the present application is to provide a multicast method and a routing device, so as to implement flexible bearer of a multicast service in an SR network.
In a first aspect, an embodiment of the present application provides a multicast method, which may include:
when a multicast group is connected to a first routing device, the first routing device allocates a multicast segment identifier for the multicast group, wherein the multicast segment identifier is used for indicating that the currently-loaded service is a multicast service;
the first routing equipment informs other routing equipment in a segment routing domain of a message carrying the multicast segment identifier;
after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the first routing equipment receives the multicast data forwarded by the tunnel;
wherein the second routing device is a source access node device of the multicast group.
By modifying the multicast SID, a plurality of routing devices adopt the same multicast SID when the same multicast access is carried out, and the source access node device also creates a tunnel according to the multicast SID to carry and forward the multicast data, thereby simplifying the carrying of the multicast service and fully playing the working efficiency of the SR network.
In a possible implementation manner, the message format of the message includes a multicast identification field; or
And the type field in the message format of the message is used for indicating that the type of the multicast segmentation identifier is a multicast type.
The modification of the message can realize that the multicast SID is used for indicating that the current service carried is the multicast service and distinguishing the multicast service from the existing unicast SID.
In one possible implementation, when the first routing device assigns a multicast segment identifier to the multicast group,
distributing according to a preset multicast mapping table, wherein the multicast mapping table is used for storing the mapping relation between multicast groups and multicast segment identifiers; or
And receiving a message carrying a multicast segment identifier, which is notified by the other routing equipment when the multicast group is accessed to the first routing equipment, and allocating the same multicast segment identifier to the multicast group when the multicast group is accessed to the first routing equipment.
In one possible implementation, the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address that is the multicast group IP address or multicast segment identification.
In a possible implementation manner, the multicast SID includes IP address information of a multicast group.
In a second aspect, an embodiment of the present application provides a multicast method, including:
the second routing equipment receives a message carrying a multicast segment identifier, wherein the message carries the multicast segment identifier, and the multicast segment identifier is distributed to the multicast group by the first routing equipment when the multicast group is connected to the first routing equipment and is notified in a segment routing domain through the message;
the second routing equipment creates a tunnel for bearing multicast data according to the message;
the second routing equipment sends multicast data to the first routing equipment and other routing equipment accessed by the multicast group through the tunnel;
wherein the second routing device is a source access node device of the multicast group.
In one possible implementation form of the method,
the message format of the message comprises a multicast identification field; or a type field in the message format of the message is used for indicating that the type of the multicast segment identifier is a multicast type;
the second routing device creates a tunnel for bearing multicast data according to the message, and the tunnel comprises:
and the second routing equipment creates a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
In one possible implementation, the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address of the multicast group IP address or multicast segment identification, wherein a label switched path LSP is created under the P2MP tunnel through the first routing device to the multicast segment identification.
In one possible implementation, if a path needs to be specified in the P2MP tunnel, the LSP specifying the path information is stored in the label stack of the segment route.
In a possible implementation manner, before the sending, by the second routing device, the multicast data to the first routing device and other routing devices accessed by the multicast group through the tunnel, the method further includes:
and the second routing equipment configures a multicast group forwarding table entry, wherein an output interface of the multicast group forwarding table entry is the tunnel or a plurality of LSPs of the tunnel.
In a possible implementation manner, when there is a change in the multicast group, the second routing device changes the corresponding tunnel according to the change in the multicast group, where the change includes updating or deleting.
In a third aspect, an embodiment of the present application provides a routing device, which may include:
the processing unit is used for allocating a multicast segment identifier for the multicast group when a multicast group is accessed on the routing equipment, wherein the multicast segment identifier is used for indicating that the current service carried by the routing equipment is a multicast service;
a receiving and sending unit, configured to notify the packet carrying the multicast segment identifier to other routing devices in a segment routing domain; after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the first routing equipment receives the multicast data forwarded by the tunnel;
wherein the second routing device is a source access node device of the multicast group.
In one possible implementation form of the method,
the message format of the message comprises a multicast identification field; or
And the type field in the message format of the message is used for indicating that the type of the multicast segmentation identifier is a multicast type.
In a possible implementation manner, the processing unit is specifically configured to:
distributing according to a preset multicast mapping table, wherein the multicast mapping table is used for storing the mapping relation between multicast groups and multicast segment identifiers; or
And receiving, by the transceiver unit, a packet carrying a multicast segment identifier, which is notified by the other router device when the multicast group is accessed to the first router device, and allocating the same multicast segment identifier to the multicast group when the multicast group is accessed to the first router device.
In one possible implementation, the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address that is the multicast group IP address or multicast segment identification.
In a fourth aspect, an embodiment of the present application provides a routing device, which may include:
a receiving and sending unit, configured to receive a packet carrying a multicast segment identifier notified by a first routing device, where the multicast segment identifier is allocated to the multicast group by the first routing device and notified in a segment routing domain through the packet when the multicast group accesses the first routing device, and the multicast segment identifier is used to indicate that a currently-carried service is a multicast service;
a processing unit, configured to create a tunnel for carrying multicast data according to the packet;
the receiving and sending unit is further configured to send multicast data to the first routing device and other routing devices accessed by the multicast group through the tunnel;
wherein the routing device is a source access node device of the multicast group.
In a possible implementation manner, the message format of the message includes a multicast identification field; or a type field in the message format of the message is used for indicating that the type of the multicast segment identifier is a multicast type;
the processing unit is specifically configured to:
and creating a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
In one possible implementation, the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address of the multicast group IP address or multicast segment identification, wherein a label switched path LSP is created under the P2MP tunnel through the first routing device to the multicast segment identification.
In one possible implementation, the processing unit is further configured to:
if a path needs to be specified in the P2MP tunnel, the LSP specifying the path information is stored in the label stack of the segment route.
In one possible implementation, the processing unit is further configured to:
configuring a multicast group forwarding table entry, where an output interface of the multicast group forwarding table entry is the tunnel or multiple LSPs of the tunnel.
In one possible implementation, the processing unit is further configured to:
and when the multicast group changes, the second routing equipment changes the corresponding tunnel according to the change of the multicast group, wherein the change comprises updating or deleting.
In a fifth aspect, an embodiment of the present application provides a routing device, which may include:
the processor and the memory are connected through the bus, wherein the memory is used for storing a group of program codes, and the processor is used for calling the program codes stored in the memory and executing the steps in the first aspect of the embodiment of the present application or any implementation manner of the first aspect.
In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores instructions that, when executed on a computer, implement the method according to the first aspect or any implementation manner of the first aspect.
In a seventh aspect, an embodiment of the present application provides a routing device, which may include:
the processor and the memory are connected through the bus, wherein the memory is used for storing a group of program codes, and the processor is used for calling the program codes stored in the memory and executing the steps in the second aspect or any implementation manner of the second aspect of the embodiment of the present application.
In an eighth aspect, embodiments of the present application provide a computer-readable storage medium having instructions stored therein, which when executed on a computer implement the method of any implementation manner of the second aspect or the second aspect.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments or the background art of the present application, the drawings required to be used in the embodiments or the background art of the present application will be described below.
Fig. 1 is a schematic diagram of a system architecture for MPLS multicast according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a multicast method according to an embodiment of the present application;
fig. 3 is a schematic flowchart of another multicast method according to an embodiment of the present application;
fig. 4 is a schematic composition diagram of a routing device according to an embodiment of the present application;
fig. 5 is a schematic composition diagram of another routing device provided in the embodiment of the present application;
fig. 6 is a schematic composition diagram of another routing device provided in the embodiment of the present application;
fig. 7 is a schematic composition diagram of another routing device provided in the embodiment of the present application.
Detailed Description
Embodiments of the present application are described below with reference to the drawings in the embodiments of the present application.
The terms "including" and "having," and any variations thereof, in the description and claims of this application and the drawings described above, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
Referring to fig. 1, fig. 1 is a schematic diagram of a system architecture for MPLS multicast according to an embodiment of the present application; the system may include, but is not limited to, a segment routing Domain (SR Domain) comprised of several routing devices. The routing devices R1-R6 shown in fig. 1 are all node devices that support SR, and if there is multicast access, all of the node devices have an Internet Group Management Protocol (IGMP) multicast identification capability. The source access node device, the intermediate node device and the egress node device can be specifically divided according to the positions of the source access node device, the intermediate node device and the egress node device in the segmented routing domain. For example, the routing device R6 has access to two multicast groups G1 and G2. In fig. 1, indicated as (, G1) and (, G2), node devices may be represented. The routing device R5 has access to a multicast group G1, which may be denoted as (, G1). R2 is the source access node device of the multicast group G1, which may represent (S, G1), S representing the source access node device; r1 is the source access node device of the multicast group G2 and may be denoted as (S, G2). R3 and R4 may act as intermediate node devices. Alternatively, R3 may also become an egress node device when R3 has access to multicast group G1. When G2 needs to be multicast, R5 and R6 may allocate the same multicast SID to G2, and may create two unicast segment routing tunnels with destination addresses R5 and R6 from R1, or create a point-to-multipoint (point 2 multiple point, abbreviated as P2MP) tunnel with destination addresses being multicast group IP addresses or multicast SIDs, and distribute multicast data to R5 and R6 through the created tunnel, where R5 and R6 are egress node devices, and a node device in the tunnel that is a route of multicast data may be regarded as an intermediate node device.
The multicast method of the present application is described in detail below with reference to fig. 2 to 3.
Referring to fig. 2, fig. 2 is a schematic flowchart of a multicast method according to an embodiment of the present application; in order to implement multicast implementation, in this embodiment of the present application, a multicast group simultaneously accesses a first routing device and a third routing device, and a second routing device is a source access node device, where the method specifically includes the following steps:
s201, when a multicast group is connected to a first routing device, the first routing device allocates a multicast segment identifier for the multicast group, and the multicast segment identifier is used for indicating that a currently-loaded service is a multicast service.
S202, the first routing device informs other routing devices in a segment routing domain of the message carrying the multicast segment identifier.
S203, when the multicast group exists on the third routing device, the third routing device allocates the multicast segment identifier which is the same as that of the first routing device to the multicast group.
And S204, the third routing device informs other routing devices in the segmented routing domain of the message carrying the multicast segment identifier.
As can be exemplified in connection with fig. 1, the first routing device is R6 in fig. 1, the third routing device is R5 in fig. 1, and the second routing device is R1 in fig. 1. When there is a multicast group on R6, for example, the multicast group G1 and G2 are accessed, G1 and G2 are different multicast group addresses, R6 assigns a multicast SID, such as Prefix SID1, to G1, and assigns another multicast SID Prefix 2 to G2. A Type-length-value (tlv) triplet may be reconfigured compared to a conventional unicast SID. The length of the T, L field is often fixed (usually 1-4 bytes), and the length of the V field is variable. Wherein, the T field represents the message type, the L field represents the message length, and the V field is often used to store the message content. In the embodiment of the present application, one of Flag identifications may be specified in the Prefix SID to identify that the SID is a multicast SID or a new TYPE to identify that the TYPE SID is a multicast SID; that is, the message format of the message may include a multicast identification field; or a new type field may be configured, and the type field in the packet format of the packet is used to indicate that the type of the multicast segment identifier is a multicast type.
R6 announces the multicast SID of the multicast group carried by itself through IGP protocol; when this multicast group accesses other nodes, the other nodes are assigned the same multicast SID and advertise, e.g., G1 is also assigned the same Prefix SID1 on R5. To realize that different routing devices distribute the same multicast SID to the same multicast group, a preset multicast mapping table can be obtained from an administrator in advance and distributed according to the preset multicast mapping table, wherein the multicast mapping table is used for storing the mapping relation between the multicast group and the multicast segment identifier; for R5, it may alternatively be to receive a multicast segment identifier advertised by R6 during the multicast group, and when the multicast group accesses R5, assign the same multicast segment identifier to the multicast group. After R5 acquires the address information, when a local group with the multicast IP is added, the same multicast SID is automatically allocated to the IP address of the multicast group, and is simultaneously notified through an IGP protocol.
Of course, besides the above two ways of assigning the multicast SID, if the first routing device is to initially assign the multicast SID to the multicast group, or does not receive the packet carrying the multicast SID notified by other routing devices before assigning the multicast SID, the first routing device may also automatically randomly assign an unused SID value to the multicast group from the SID space. Wherein, the SID space is used to represent the range of assignable SID values. Other routing devices such as the third routing device may also perform initial allocation in this manner, which is not described herein again.
S205, the second routing device creates a tunnel for bearing multicast data according to the message.
Optionally, the second routing device may create a tunnel for carrying multicast data according to the multicast identification field or the type field in the message.
As shown in fig. 1, the source access node device of the multicast group G1 is a second routing device, i.e., R2, and according to the routing devices R5 and R6 advertised by the multicast group Prefix SID1, two unicast TUNNELs TUNNEL1 and TUNNEL2 with destination addresses R5 and R6 can be automatically created, and the TUNNELs can be established by the shortest path by default; alternatively, the path may be established according to a specified path. Or, a P2MP (point-to-multipoint) tunnel TUNNELA with the destination address of IP address IP1 of multicast group G1 or multicast SID1 may be automatically created, where each LSP in the tunnel TUNNELA is to the multicast SID through different paths R5 and R6; if additional path specification is needed, the specified path information may be placed in a label stack to direct path forwarding, that is, the Slist label stack of the SR represents LSPs of different paths, for example, LSP1 is list1, label stack information is SID of R5, SID1, LSP2 is list2, and label stack information is SID of R6, SID 1.
Similarly, in fig. 1, the source access node device of the multicast group G2 is R1, and according to the received multicast group Prefix SID2 announced by R5, a TUNNEL1 with the destination address of R5 is created; or create tunnel TUNNELB with destination address being multicast SID2, tunnel B down create LSP through R5 to SID 2.
S206, the second routing device sends multicast data to the first routing device and the third routing device through the tunnel.
After the tunnel carrying the multicast data is established, the multicast data can be sent to the first routing device and the third routing device through the established tunnel.
As shown in fig. 1, the outgoing interface of the multicast group forwarding table entry may be configured as the above-mentioned established TUNNEL, and the next hops from the multicast forwarding table on R2 to Prefix SID1 are TUNNEL1 and TUNNEL 2; or each LSP of tunnella. Similarly, the next hop of the multicast forwarding table on R1 to Prefix SID2 is TUNNEL 1; or TUNNELB.
When multicast is needed, the multicast data can be respectively carried in the tunnel and forwarded to each destination node after being copied and copied in multiple copies according to multiple next hops.
In the embodiment of the present application, the conventional SID is transformed into the multicast SID by modifying the conventional SID, which may indicate that the currently carried service is a multicast service, and multiple routing devices all use the same multicast SID for the same multicast group, and the source access node device of the multicast group may also create a tunnel carrying multicast data according to the multicast SID, thereby implementing carrying and forwarding of multicast data, fully playing the working efficiency of an SR network, simplifying network operation and maintenance and management, and enhancing the path adjustment and control capability.
Referring to fig. 3, fig. 3 is a schematic flowchart of another multicast method provided in the embodiment of the present application; in this embodiment, except that the first routing device and the third routing device access the same multicast group, a fourth routing device is added to access the same multicast group, and the second routing device is a source access node device, steps S301 to S304 of the method are the same as steps S201 to S204 in fig. 2, and after step S304, the method further includes the steps of:
s305, when a user joins the multicast group on a new fourth routing device, the fourth routing device allocates multicast segment identifiers, which are the same as those of the first routing device and the third routing device, to the multicast group.
S306, the fourth routing device informs other routing devices in the segment routing domain of the message carrying the multicast segment identifier.
And S307, the second routing equipment creates a tunnel for bearing multicast data according to the message.
S308, the second routing device sends multicast data to the first routing device, the third routing device and the fourth routing device through the tunnel.
Referring to fig. 1, if there is a user joining the G1 multicast group on the fourth router, i.e., R3, R3 also assigns a Prefix SID1 to G1 and announces the multicast SID carried by itself through IGP protocol;
after receiving the multicast group Prefix SID1 announced by R3, the source access node device R2 of the multicast group G1 automatically creates a Tunnel3 with the destination address of R3; or LSP3 under tunnella, label path R3 to SID1, the data plane may encapsulate the list3 label stack information of the SR.
A Tunnel3 output interface is newly added to the output interface of the multicast group forwarding table entry; or one more LSP 3. Therefore, when multicast is required, the multicast data can be respectively carried in the tunnel and forwarded to the output interface corresponding to each destination node after being copied and copied in multiple copies according to multiple next hops.
S309, when the multicast group is updated or deleted, the second routing device correspondingly updates or deletes the corresponding tunnel.
For example, when the multicast group G1 is deleted, the LSP entries of the corresponding TUNNEL1, TUNNEL2, TUNNEL3 or other P2MP TUNNEL may be deleted accordingly. When the update occurs, the update can be performed accordingly, which is not described herein again.
Please refer to fig. 4, which is a schematic diagram illustrating a routing device according to an embodiment of the present disclosure; can include the following steps:
a processing unit 100, configured to allocate a multicast segment identifier to a multicast group when there is a multicast access on a routing device, where the multicast segment identifier is used to indicate that a currently-loaded service is a multicast service;
a transceiver unit 200, configured to notify the packet carrying the multicast segment identifier to other routing devices in the segment routing domain; after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the first routing equipment receives the multicast data forwarded by the tunnel;
wherein the second routing device is a source access node device of the multicast group.
Optionally, the packet format of the packet includes a multicast identifier field; or
And the type field in the message format of the message is used for indicating that the type of the multicast segmentation identifier is a multicast type.
Optionally, the processing unit 100 is specifically configured to:
distributing according to a preset multicast mapping table, wherein the multicast mapping table is used for storing the mapping relation between multicast groups and multicast segment identifiers; or
Receiving, by the transceiver 200, a packet that carries a multicast segment identifier and is advertised by the other routing device when the multicast group is accessed to the first routing device, and allocating the same multicast segment identifier to the multicast group when the multicast group is accessed to the first routing device.
Optionally, the tunnel is a unicast segment routing tunnel with a destination address of the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address that is the multicast group IP address or multicast segment identification.
For the concepts, explanations, details and other steps related to the technical solution provided in the embodiment of the present application related to the routing device, reference is made to the description of these contents in the foregoing method embodiment, and no further description is given here.
Please refer to fig. 5, which is a schematic diagram illustrating another routing device according to an embodiment of the present disclosure; as shown in fig. 6, the routing device may include a processor 110, a memory 120, and a bus 130. The processor 110 and the memory 120 are connected by a bus 130, the memory 120 is used for storing instructions, and the processor 110 is used for executing the instructions stored by the memory 120 to implement the steps performed by the first routing device in the method corresponding to fig. 2-3.
Further, the routing device may also include an input port 140 and an output port 150. Wherein the processor 110, the memory 120, the input port 140, and the output port 150 may be connected by a bus 130.
The processor 110 is configured to execute the instructions stored in the memory 120 to control the input port 140 to receive signals and control the output port 150 to send signals, so as to implement the steps performed by the routing device in the above-mentioned method. Wherein input port 140 and output port 150 may be the same or different physical entities. When they are the same physical entity, they may be collectively referred to as an input-output port. The memory 120 may be integrated in the processor 110 or may be provided separately from the processor 110.
As an implementation manner, the functions of the input port 140 and the output port 150 may be implemented by a transceiver circuit or a dedicated chip for transceiving. The processor 110 may be considered to be implemented by a dedicated processing chip, processing circuit, processor, or a general-purpose chip.
As another implementation manner, the routing device provided in the embodiment of the present application may be implemented by using a general-purpose computer. Program code that implements the functionality of processor 110, input ports 140 and output ports 150 is stored in memory, and a general purpose processor implements the functionality of processor 110, input ports 140 and output ports 150 by executing the code in memory.
For the concepts, explanations, details and other steps related to the routing device and related to the technical solution provided in the embodiment of the present application, please refer to the description of the first routing device in the foregoing method or other embodiments, which is not described herein again.
Please refer to fig. 6, which is a schematic diagram illustrating a configuration of another routing device according to an embodiment of the present application; can include the following steps:
a transceiver 300, configured to receive a packet carrying a multicast segment identifier notified by a first router, where the multicast segment identifier is allocated to the multicast group by the first router and notified in a segment routing domain through the packet when the multicast group accesses the first router, and the multicast segment identifier is used to indicate that a currently-carried service is a multicast service;
a processing unit 400, configured to create a tunnel for carrying multicast data according to the packet;
the transceiver 300 is further configured to send multicast data to the first routing device and other routing devices accessed by the multicast group through the tunnel;
wherein the routing device is a source access node device of the multicast group.
Optionally, the packet format of the packet includes a multicast identifier field; or a type field in the message format of the message is used for indicating that the type of the multicast segment identifier is a multicast type;
the processing unit 400 is specifically configured to:
and creating a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
And the second routing equipment creates a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
Optionally, the tunnel is a unicast segment routing tunnel with a destination address of the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address of the multicast group IP address or multicast segment identification, wherein a label switched path LSP is created under the P2MP tunnel through the first routing device to the multicast segment identification.
Optionally, the processing unit 400 is further configured to:
if a path needs to be specified in the P2MP tunnel, the LSP specifying the path information is stored in the label stack of the segment route.
Optionally, the processing unit 400 is further configured to:
configuring a multicast group forwarding table entry, where an output interface of the multicast group forwarding table entry is the tunnel or multiple LSPs of the tunnel.
Optionally, the processing unit 400 is further configured to:
and when the multicast group changes, the second routing equipment changes the corresponding tunnel according to the change of the multicast group, wherein the change comprises updating or deleting.
For the concepts, explanations, details and other steps related to the technical solution provided in the embodiment of the present application related to the routing device, reference is made to the description of these contents in the foregoing method embodiment, and no further description is given here.
Please refer to fig. 7, which is a schematic diagram illustrating another routing device according to an embodiment of the present application; as shown in fig. 7, the routing device may include a processor 210, a memory 220, and a bus 230. The processor 210 and the memory 220 are connected by a bus 230, the memory 220 is used for storing instructions, the processor 210 is used for executing the instructions stored by the memory 220 to realize the steps executed by the second routing device in the method corresponding to the above fig. 2-3.
Further, the routing device may also include an input port 240 and an output port 250. Wherein the processor 210, the memory 220, the input 240, and the output 250 may be connected by a bus 230.
The processor 210 is configured to execute the instructions stored in the memory 220 to control the input port 240 to receive signals and the output port 250 to send signals, so as to complete the steps performed by the routing device in the above-mentioned method. Wherein the input port 240 and the output port 250 may be the same or different physical entities. When they are the same physical entity, they may be collectively referred to as an input-output port. The memory 220 may be integrated in the processor 210 or may be provided separately from the processor 210.
As an implementation manner, the functions of the input port 240 and the output port 250 may be realized by a transceiver circuit or a dedicated chip for transceiving. Processor 210 may be considered to be implemented by a dedicated processing chip, processing circuit, processor, or a general-purpose chip.
As another implementation manner, the routing device provided in the embodiment of the present application may be implemented by using a general-purpose computer. Program code that implements the functions of the processor 210, the input ports 240 and the output ports 250 is stored in memory, and a general purpose processor implements the functions of the processor 210, the input ports 240 and the output ports 250 by executing the code in the memory.
For the concepts, explanations, details and other steps related to the routing device and related to the technical solution provided in the embodiment of the present application, please refer to the description of the second routing device in the foregoing method or other embodiments, which is not described herein again.
Those skilled in the art will appreciate that fig. 5 and 7 show only one memory and processor for ease of illustration. In an actual controller, there may be multiple processors and memories. The memory may also be referred to as a storage medium or a storage device, and the like, which is not limited in this application.
It should be understood that in the embodiments of the present application, the processor may be a Central Processing Unit (CPU), and the processor may also be other general-purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory may include both read-only memory and random access memory, and provides instructions and data to the processor. The portion of memory may also include non-volatile random access memory.
The bus may include a power bus, a control bus, a status signal bus, and the like, in addition to the data bus. But for clarity of illustration the various buses are labeled as buses in the figures.
In implementation, the steps of the above method may be performed by integrated logic circuits of hardware in a processor or instructions in the form of software. The steps of a method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware processor, or may be implemented by a combination of hardware and software modules in a processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor. To avoid repetition, it is not described in detail here.
According to the method provided by the embodiment of the present application, a system is further provided by the embodiment of the present application, and includes the aforementioned routing device and one or more network devices.
It should also be understood that reference herein to first, second, third, fourth, and various numerical designations is made only for ease of description and is not intended to limit the scope of the embodiments of the present application.
It should be understood that the term "and/or" herein is merely one type of association relationship that describes an associated object, meaning that three relationships may exist, e.g., a and/or B may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" herein generally indicates that the former and latter related objects are in an "or" relationship.
It should be understood that, in the various embodiments of the present application, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
Those of ordinary skill in the art will appreciate that the various illustrative logical blocks and steps (step) described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the several embodiments provided in the present application, it should be understood that the disclosed system, routing device and method may be implemented in other ways. For example, the above-described embodiments of the routing device are merely illustrative, and for example, the division of the units is only one logical functional division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted or not executed. In addition, the shown or discussed coupling or direct coupling or communication connection between each other may be through some interfaces, indirect coupling or communication connection of routing devices or units, and may be in an electrical, mechanical or other form.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable routing device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (20)
1. A method for multicasting, comprising:
when a multicast group is connected to a first routing device, the first routing device allocates a multicast segment identifier for the multicast group, wherein the multicast segment identifier is used for indicating that the currently-loaded service is a multicast service;
the first routing equipment informs other routing equipment in a segment routing domain of a message carrying the multicast segment identifier;
after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the first routing equipment receives the multicast data forwarded by the tunnel;
wherein the second routing device is a source access node device of the multicast group;
when the first routing equipment allocates the multicast segment identifier for the multicast group, the multicast segment identifier is allocated according to a preset multicast mapping table, and the multicast mapping table is used for storing the mapping relation between the multicast group and the multicast segment identifier; or receiving a message carrying a multicast segment identifier, which is notified by the other routing device when the multicast group is accessed to the first routing device, and allocating the same multicast segment identifier to the multicast group when the multicast group is accessed to the first routing device.
2. The method according to claim 1, wherein the packet format of the packet includes a multicast identification field; or
And the type field in the message format of the message is used for indicating that the type of the multicast segmentation identifier is a multicast type.
3. The method according to claim 1 or 2, wherein the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address that is the multicast group IP address or multicast segment identification.
4. A method for multicasting, comprising:
the second routing equipment receives a message carrying a multicast segment identifier notified by the first routing equipment, wherein the multicast segment identifier is allocated to the multicast group by the first routing equipment according to a preset multicast mapping table or according to a received message carrying the multicast segment identifier notified by other routing equipment during the multicast group access when the multicast group accesses the first routing equipment, and is notified in a segment routing domain through the message, and the multicast segment identifier is used for indicating that a currently carried service is a multicast service;
the second routing equipment creates a tunnel for bearing multicast data according to the message;
the second routing equipment sends multicast data to the first routing equipment and other routing equipment accessed by the multicast group through the tunnel;
wherein the second routing device is a source access node device of the multicast group.
5. The method according to claim 4, wherein the message format of the message comprises a multicast identification field; or a type field in the message format of the message is used for indicating that the type of the multicast segment identifier is a multicast type;
the second routing device creates a tunnel for bearing multicast data according to the message, and the tunnel comprises:
and the second routing equipment creates a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
6. The method of claim 4, wherein the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address of the multicast group IP address or multicast segment identification, wherein a label switched path LSP is created under the P2MP tunnel through the first routing device to the multicast segment identification.
7. The method of claim 6, wherein if a path needs to be specified in the P2MP tunnel, the LSP that specifies the path information is stored in a label stack of a segment route.
8. The method according to any of claims 4-7, wherein before the second routing device sends the multicast data to the first routing device and other routing devices accessed by the multicast group through the tunnel, the method further comprises:
and the second routing equipment configures a multicast group forwarding table entry, wherein an output interface of the multicast group forwarding table entry is the tunnel or a plurality of LSPs of the tunnel.
9. The method of claim 8, wherein when there is a change in the multicast group, the second routing device changes the corresponding tunnel according to the change in the multicast group, and the change includes updating or deleting.
10. A routing device, comprising:
the processing unit is used for allocating a multicast segment identifier for the multicast group when a multicast group is accessed on the routing equipment, wherein the multicast segment identifier is used for indicating that the current service carried by the routing equipment is a multicast service;
a receiving and sending unit, configured to notify the packet carrying the multicast segment identifier to other routing devices in a segment routing domain; after the second routing equipment creates a tunnel for bearing multicast data according to the received message, the routing equipment receives the multicast data forwarded by the tunnel;
wherein the second routing device is a source access node device of the multicast group;
the processing unit is specifically configured to:
distributing according to a preset multicast mapping table, wherein the multicast mapping table is used for storing the mapping relation between multicast groups and multicast segment identifiers; or receiving, by the transceiver unit, a packet carrying a multicast segment identifier, which is notified by the other router device when the multicast group is accessed to the router device, and allocating the same multicast segment identifier to the multicast group when the multicast group is accessed to the router device.
11. The routing device of claim 10, wherein a packet format of the packet includes a multicast identification field; or
And the type field in the message format of the message is used for indicating that the type of the multicast segmentation identifier is a multicast type.
12. The routing device according to claim 10 or 11, wherein the tunnel is a unicast segment routing tunnel addressed to the routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address that is the multicast group IP address or multicast segment identification.
13. A routing device, comprising:
a receiving and sending unit, configured to receive a packet carrying a multicast segment identifier notified by a first routing device, where the multicast segment identifier is allocated to a multicast group by the first routing device according to a preset multicast mapping table or according to a received packet carrying the multicast segment identifier notified by another routing device during the multicast group access, and is notified in a segment routing domain by the packet, and the multicast segment identifier is used to indicate that a currently-carried service is a multicast service;
a processing unit, configured to create a tunnel for carrying multicast data according to the packet;
the receiving and sending unit is further configured to send multicast data to the first routing device and other routing devices accessed by the multicast group through the tunnel;
wherein the routing device is a source access node device of the multicast group.
14. The routing device of claim 13, wherein a packet format of the packet includes a multicast identification field; or a type field in the message format of the message is used for indicating that the type of the multicast segment identifier is a multicast type;
the processing unit is specifically configured to:
and creating a tunnel for bearing multicast data according to the multicast identification field or the type field in the message.
15. The routing device of claim 14, wherein the tunnel is a unicast segment routing tunnel addressed to the first routing device; or
The tunnel is a point-to-multipoint P2MP tunnel with a destination address of the multicast group IP address or multicast segment identification, wherein a label switched path LSP is created under the P2MP tunnel through the first routing device to the multicast segment identification.
16. The routing device of claim 15, wherein the processing unit is further configured to:
if a path needs to be specified in the P2MP tunnel, the LSP specifying the path information is stored in the label stack of the segment route.
17. The routing device of any one of claims 13-16, wherein the processing unit is further configured to:
configuring a multicast group forwarding table entry, where an output interface of the multicast group forwarding table entry is the tunnel or multiple LSPs of the tunnel.
18. The routing device of claim 17, wherein the processing unit is further configured to:
when a multicast group changes, the routing device changes the corresponding tunnel according to the change of the multicast group, wherein the change comprises updating or deleting.
19. A routing device, comprising:
a processor, a memory and a bus, the processor and the memory being connected by the bus, wherein the memory is configured to store a set of program codes, and the processor is configured to call the program codes stored in the memory to perform the steps of any of claims 1-3.
20. A routing device, comprising:
a processor, a memory and a bus, the processor and the memory being connected by the bus, wherein the memory is configured to store a set of program codes, and the processor is configured to call the program codes stored in the memory to perform the steps of any of claims 4-9.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811348150.6A CN111181855B (en) | 2018-11-13 | 2018-11-13 | Multicast method and routing equipment |
PCT/CN2019/117087 WO2020098597A1 (en) | 2018-11-13 | 2019-11-11 | Multicast method and routing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811348150.6A CN111181855B (en) | 2018-11-13 | 2018-11-13 | Multicast method and routing equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111181855A CN111181855A (en) | 2020-05-19 |
CN111181855B true CN111181855B (en) | 2021-06-04 |
Family
ID=70657316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811348150.6A Active CN111181855B (en) | 2018-11-13 | 2018-11-13 | Multicast method and routing equipment |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111181855B (en) |
WO (1) | WO2020098597A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111641561B (en) * | 2020-05-28 | 2022-02-22 | 迈普通信技术股份有限公司 | Message forwarding method and device, tunnel creation method and device and network equipment |
CN111865792B (en) * | 2020-07-29 | 2022-07-12 | 新华三技术有限公司 | BSID management method, routing equipment and readable storage medium |
CN115499366B (en) * | 2021-06-18 | 2024-05-10 | 华为技术有限公司 | Message transmission method and device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064674A (en) * | 2006-04-29 | 2007-10-31 | 华为技术有限公司 | Method for distributing multicasting MPLS label |
CN101599841A (en) * | 2008-06-03 | 2009-12-09 | 华为技术有限公司 | Realize method, router and the system of multicast |
CN102624615A (en) * | 2012-03-02 | 2012-08-01 | 杭州华三通信技术有限公司 | Forwarding method and forwarding device for multicast data messages based on multiple protocol label switching (MPLS) |
CN103444135A (en) * | 2011-06-02 | 2013-12-11 | 惠普发展公司,有限责任合伙企业 | Network virtualization |
CN104283796A (en) * | 2014-10-23 | 2015-01-14 | 杭州华三通信技术有限公司 | Multicast distribution tree establishment method and device |
WO2015116079A1 (en) * | 2014-01-30 | 2015-08-06 | Hewlett-Packard Development Company, L.P. | Sending a data flow |
US9294292B2 (en) * | 2013-11-14 | 2016-03-22 | Cisco Technology, Inc. | Optimized multicast routing in a Clos-like network |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7860122B2 (en) * | 2004-01-28 | 2010-12-28 | Arris Group, Inc. | Method and system for prioritizing initial maintenance of cable modems |
KR100649716B1 (en) * | 2004-12-14 | 2006-11-27 | 한국전자통신연구원 | Method and apparatus for multicast forwarding in broadcast service based on multicast packet |
US8811388B2 (en) * | 2008-11-14 | 2014-08-19 | Rockstar Consortium Us Lp | Service instance applied to MPLS networks |
CN105871565B (en) * | 2015-01-20 | 2019-11-29 | 华为技术有限公司 | Method and device for multicast forwarding |
CN107612835A (en) * | 2016-07-11 | 2018-01-19 | 中兴通讯股份有限公司 | The notifying method of information, the generation method of forwarding entry and device |
-
2018
- 2018-11-13 CN CN201811348150.6A patent/CN111181855B/en active Active
-
2019
- 2019-11-11 WO PCT/CN2019/117087 patent/WO2020098597A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064674A (en) * | 2006-04-29 | 2007-10-31 | 华为技术有限公司 | Method for distributing multicasting MPLS label |
CN101599841A (en) * | 2008-06-03 | 2009-12-09 | 华为技术有限公司 | Realize method, router and the system of multicast |
CN103444135A (en) * | 2011-06-02 | 2013-12-11 | 惠普发展公司,有限责任合伙企业 | Network virtualization |
CN102624615A (en) * | 2012-03-02 | 2012-08-01 | 杭州华三通信技术有限公司 | Forwarding method and forwarding device for multicast data messages based on multiple protocol label switching (MPLS) |
US9294292B2 (en) * | 2013-11-14 | 2016-03-22 | Cisco Technology, Inc. | Optimized multicast routing in a Clos-like network |
WO2015116079A1 (en) * | 2014-01-30 | 2015-08-06 | Hewlett-Packard Development Company, L.P. | Sending a data flow |
CN104283796A (en) * | 2014-10-23 | 2015-01-14 | 杭州华三通信技术有限公司 | Multicast distribution tree establishment method and device |
Non-Patent Citations (3)
Title |
---|
BGP Encodings and procedures for Multicast in MPLS/BGP IP VPNs;R.Aggarwal ET AL;《IETF》;20120229;全文 * |
DIASEAM:一种MPLS网络中新的组播转发机制;胡雪南;周廷显;王永建;《南京理工大学学报(自然科学版)》;20060228;全文 * |
MPLS支持IP组播中标签分配的新机制;张中山; 隆克平; 程时端;《北京邮电大学学报》;20010320;全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2020098597A1 (en) | 2020-05-22 |
CN111181855A (en) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11303470B2 (en) | Bridging of non-capable subnetworks in bit indexed explicit replication | |
JP7208386B2 (en) | Packet transfer method, packet transmitter, and packet receiver | |
EP3896923A1 (en) | Bier packet sending method and apparatus | |
CN112087386B (en) | Message processing method, device and system | |
CN107968750B (en) | Message transmission method, device and node | |
CN110661712B (en) | Supporting multicast over a network domain | |
CN111181855B (en) | Multicast method and routing equipment | |
WO2020052410A1 (en) | Communication method, device, and system | |
CN113300949A (en) | Method for forwarding message, method, device and system for issuing routing information | |
CN111355661B (en) | VPN processing method, PE equipment and system | |
CN110896379B (en) | Message sending method, binding relationship notification method, device and storage medium | |
WO2022184169A1 (en) | Packet forwarding method and system, storage medium, and electronic device | |
WO2021043232A1 (en) | Method by which host network performance requirements may be programmed, device and system | |
WO2021143279A1 (en) | Method and device for segment routing service processing, routing equipment, and storage medium | |
WO2021057530A1 (en) | Method, apparatus and system for determining mapping relationship between routing prefix and segment identification | |
CN107294859B (en) | Information transmission method, device and system | |
US20230308386A1 (en) | Packet Transmission Method and Apparatus | |
EP4336781A1 (en) | Message processing method and related device | |
CN101534210B (en) | A method and equipment for setting priority of multicast IP messages | |
CN112532563B (en) | Message sending method and device | |
JP4599429B2 (en) | Communication system and communication method | |
CN106169969B (en) | Method, related equipment and system for establishing label switching path of virtual private network | |
WO2021179935A1 (en) | Route determination method, apparatus and network device | |
CN105743762A (en) | Message forwarding method and equipment in VPLS network | |
WO2022170877A1 (en) | Message forwarding method, device and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |