Multicast data forwarding method and device
Patent Information
- Application Number
- CN202310600803.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-22
- Publication Date
- 2026-09-04
- Estimated Expiration
- 2043-05-22
AI Technical Summary
[0006]本申请的有益效果在于,通过为不支持GMRP的客户端代理注册了动态组播MAC地址表项的端口,将组播源的GMRP组播数据报文引流到不支持GMRP的客户端。
Smart Images

Figure CN116708263B_ABST
Abstract
Description
Technical Field
[0001] This application relates to communication technology, specifically a multicast data forwarding method and device. Background Technology
[0002] GMRP (GARP Multicast Registration Protocol) is used to implement Layer 2 multicast forwarding of LAN packets. As an application of GARP (Generic Attribute Registration Protocol), GMRP identifies and propagates GARP messages, enabling switching devices within the Layer 2 broadcast domain to dynamically generate and delete multicast MAC address entries. This reduces the workload of network administrators in manually maintaining multicast MAC address tables and avoids manual configuration errors. Summary of the Invention
[0003] The purpose of this application is to provide a multicast data forwarding method and device that registers a dynamic multicast MAC address table entry for a client agent that does not support GMRP.
[0004] To achieve the above objectives, this application provides a multicast data forwarding method, which includes: receiving GMRP multicast data packets; determining that no matching dynamic multicast MAC address entry is found for the destination MAC address of the GMRP multicast data packet; determining that a GMRP proxy multicast entry is found for the destination MAC address of the GMRP multicast data packet; and sending the GMRP multicast data packet according to the outgoing port and outgoing VLAN of the outgoing port information of the proxy multicast entry.
[0005] To achieve the above objectives, this application also provides a multicast data forwarding device, which includes: a receiving module for receiving GMRP multicast data packets; a multicast forwarding module for determining that no matching dynamic multicast MAC address entry is found for the destination MAC address of the GMRP multicast data packet; finding a GMRP proxy multicast entry based on the destination MAC address of the GMRP multicast data packet; and a sending module for sending the GMRP multicast data packet based on the outgoing port and outgoing VLAN of the outgoing port information of the proxy multicast entry.
[0006] The beneficial effect of this application is that by registering the port of the dynamic multicast MAC address table entry for the proxy of the client that does not support GMRP, the GMRP multicast data packets of the multicast source are diverted to the client that does not support GMRP. Attached Figure Description
[0007] Figure 1 A flowchart illustrating an embodiment of the multicast data forwarding method provided in this application;
[0008] Figure 2 A schematic diagram illustrating an embodiment of a proxy registering a dynamic multicast MAC address table entry, provided in this application.
[0009] Figure 3 This is a schematic diagram of an embodiment of generating dynamic multicast MAC address entries according to an embodiment of this application;
[0010] Figure 4 This is a schematic diagram of an embodiment of a multicast data forwarding device provided in this application. Detailed Implementation
[0011] The following detailed description will be provided with reference to several examples illustrated in the accompanying figures. In this detailed description, numerous specific details are used to provide a comprehensive understanding of the present application. Known methods, steps, components, and circuits are not described in detail in the examples to avoid obscuring their meaning.
[0012] In the terminology used, the term "including" means including but not limited to; the term "containing" means including but not limited to; the terms "above," "within," and "below" include the number itself; the terms "greater than" and "less than" mean not including the number itself. The term "based on" means based on at least a portion of them.
[0013] Figure 1 A flowchart illustrating an embodiment of a multicast data forwarding method provided in this application, the method comprising:
[0014] Step 101: Receive GMRP multicast data packets;
[0015] Step 102: Determine that no matching dynamic multicast MAC address entry was found for the destination MAC address of the GMRP multicast data packet.
[0016] Step 103: Determine the destination MAC address of the GMRP multicast data packet and locate the GMRP proxy multicast entry;
[0017] Step 104: Send GMRP multicast data packets according to the outgoing port and outgoing VLAN of the outgoing port information in the proxy multicast table entry.
[0018] The beneficial effect of this application is that by registering the port of the dynamic multicast MAC address table entry for the proxy of the client that does not support GMRP, the GMRP multicast data packets of the multicast source are diverted to the client that does not support GMRP.
[0019] Figure 2 This is a schematic diagram of an embodiment of a proxy that has registered a dynamic multicast MAC address table entry, as provided in this application.
[0020] Figure 2In this case, terminal 24 does not support the GMRP protocol but needs to receive multicast packets sent by multicast source S1 to multicast MAC address 0180-c300-0001.
[0021] Configure port 221 of device 22 directly connected to terminal 24 as a GMRP proxy port, that is, configure the GMRP proxy function for port 221 belonging to VLAN2, and configure the multicast MAC address 0180-c300-0001 that needs to be registered by proxy.
[0022] Device 22 generates a GMRP proxy multicast table A1 with the key value of multicast MAC address 0180-c300-0001 in the GMRP proxy multicast table A1, and records the outgoing port information of the GMRP proxy multicast table entry as port 221 and VLAN 2.
[0023] Device 22 generates a GMRP join message 201 (registration declaration) for port 221, with the declared attributes being multicast MAC address 0180-c300-0001, and sends it through VLAN 2 on port 223 where the GMRP protocol is enabled.
[0024] Device 21 receives GMRP join message 201 from port 211, registers the attributes in it, and records the key of the dynamic multicast MAC address table entry in the dynamic multicast MAC address table M1 as multicast MAC address 0180-c300-0001, outgoing interface as port 211, and outgoing VLAN as VLAN 2.
[0025] Device 21 sends GMRP join message 201 through port 212 and port 213 of VLAN 2.
[0026] Device 23 receives GMRP join message 201 from port 233, registers the attributes in it, and records the dynamic multicast MAC address table entry in dynamic multicast MAC address table M2 with the multicast MAC address key being 0180-c300-0001, the outgoing interface being port 233, and the outgoing VLAN being VLAN 2; and sends GMRP join message 201 through port 232, which has GMRP enabled and VLAN 2 configured.
[0027] After receiving the GMRP join message 201, when multicast source S1 sends a message with a destination multicast MAC address of 0180-c300-0001 to device 21, device 21 finds a matching dynamic multicast MAC address entry in M1 based on the destination multicast MAC address, and sends the GMRP multicast data packet to device 22 through outgoing port 211 and outgoing VLAN 2.
[0028] When device 22 receives a packet with a destination multicast MAC address of 0180-c300-0001 through port 223, it does not find a matching entry in the dynamic multicast MAC address table M1. Instead, it finds a matching entry in the GMRP proxy multicast table A1. The device then sends a GMRP multicast data packet to terminal 24 through outgoing port 211 and outgoing VLAN 2. Other ports that are not configured with this proxy MAC address do not forward the packet, thus preventing unknown multicast flooding.
[0029] Figure 3 This is a schematic diagram of an embodiment of generating dynamic multicast MAC address entries according to an embodiment of this application.
[0030] Figure 3 In the process, terminal 25 needs to receive multicast data packets with multicast MAC address 0180-c300-0002. Terminal 25 generates a GMRP join message 202 (registration declaration), which declares the multicast MAC address 0180-c300-0002 and sends it to device 22.
[0031] Device 22 receives GMRP join message 202 through port 222 of data VLAN1, records the dynamic multicast MAC address table entry in dynamic multicast MAC address table M3 with the key of multicast MAC address 0180-c300-0002, the outgoing interface as port 222, and the outgoing VLAN as VLAN 1; and sends GMRP join message 201 through port 223, which is also configured with VLAN1.
[0032] Device 21 receives GMRP join message 202 from port 211, registers the attributes in it, and records the key of the dynamic multicast MAC address table entry in the dynamic multicast MAC address table M1 as multicast MAC address 0180-c300-0002, the outgoing interface as port 211, and the outgoing VLAN as VLAN 1.
[0033] Device 21 sends GMRP join message 202 through ports 212 and 213, which are also configured with VLAN 1.
[0034] Device 23 receives GMRP join message 202 from port 233, registers the attributes in it, and records the dynamic multicast MAC address table entry in dynamic multicast MAC address table M2 with the multicast MAC address key being 0180-c300-0002, the outgoing interface being port 233, and the outgoing VLAN being VLAN 1; and sends GMRP join message 202 through port 232, which has GMRP enabled and is also configured with VLAN 1.
[0035] After receiving the GMRP join message 202, multicast source S2 sends a message with a destination multicast MAC address of 0180-c300-0002 to device 23. Device 23 then looks up a matching dynamic multicast MAC address entry in the dynamic multicast MAC address table M2 based on the destination multicast MAC address, and sends the GMRP multicast data packet to device 21 through the outgoing port 233 and outgoing VLAN 1.
[0036] When device 21 receives a packet with a destination multicast MAC address of 0180-c300-0002 through port 212, device 21 searches for a matching dynamic multicast MAC address entry in the dynamic multicast MAC address table M1 based on the destination multicast MAC address, and sends a GMRP multicast data packet to device 22 through outgoing port 211 and outgoing VLAN 1.
[0037] When device 22 receives a packet with a destination multicast MAC address of 0180-c300-0002 through port 223, it looks up a matching entry in the dynamic multicast MAC address table M3 that matches the destination multicast MAC address 0180-c300-0002, and then sends a GMRP multicast data packet to terminal 25 through outgoing port 212 and outgoing VLAN 1.
[0038] Devices 21, 22, and 23 periodically send GMRP query messages. If terminal 25 fails and does not respond to device 22's GMRP query message, device 22 deletes the entry for dynamic multicast MAC address M3.
[0039] When a data packet from multicast source S2 arrives at device 22, device 22 does not find a matching entry for the destination multicast MAC address 0180-c300-0002 in the dynamic multicast MAC address table M3, nor does it find a matching entry in the GMRP proxy multicast table A1, and therefore discards the data packet from multicast source S2.
[0040] Figure 4 This is a schematic diagram of an embodiment of a multicast data forwarding device provided in this application. The device 40 includes at least a network interface, a switching chip, a CPU, and a memory. The switching chip includes at least a receiving module, a multicast forwarding module, and a transmitting module. The processor executes the configuration module by running processor-executable instructions in the memory.
[0041] The receiving module receives the first GMRP multicast data packet; the multicast forwarding module determines that no matching dynamic multicast MAC address entry is found for the destination MAC address of the first GMRP multicast data packet; and determines that a GMRP proxy multicast entry is found for the destination MAC address of the first GMRP multicast data packet; the sending module sends the first GMRP multicast data packet according to the outgoing port and outgoing VLAN of the outgoing port information of the proxy multicast entry.
[0042] The receiving module is also used to receive the second GMRP multicast data packet; the multicast forwarding module determines that no matching dynamic multicast MAC address entry is found in the destination MAC address of the second GMRP multicast data packet; and discards the received second GMRP multicast data packet based on the fact that no GMRP proxy multicast entry is found in the destination MAC address of the second GMRP multicast data packet.
[0043] The receiving module is also used to receive third GMRP multicast data packets; the multicast forwarding module is also used to determine the destination MAC address of the third GMRP multicast data packet and find a matching dynamic multicast MAC address entry; the sending module is also used to send the third GMRP multicast data packet according to the outgoing port and outgoing VLAN of the outgoing port information of the dynamic multicast MAC address entry.
[0044] The configuration module is used to configure the GMRP proxy port; clients directly connected to the GMRP proxy port do not support GMRP; the multicast forwarding module is also used to generate GMRP proxy multicast entries; the key value of the GMRP proxy multicast entry is the multicast group MAC address of the multicast group the client wants to join, and the outgoing port and outgoing VLAN are the GMRP proxy port and its VLAN; the proxy module is used to generate GMRP join messages for the GMRP proxy port; the sending module is also used to send the proxy-generated GMRP join messages through a port in the same VLAN as the GMRP proxy port that has GMRP enabled.
[0045] The receiving module is also used to receive GMRP join messages; the multicast forwarding module generates a dynamic multicast MAC address table entry based on the multicast group address of the received GMRP join message as the key value; and records the outgoing port and outgoing VLAN of the dynamic multicast MAC address table entry as the receiving port and its VLAN of the GMRP join message.
[0046] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A multicast data forwarding method, characterized in that, The method includes, Receive the first GMRP multicast data packet; It was determined that no matching dynamic multicast MAC address entry was found for the destination MAC address of the first GMRP multicast data packet; Determine the destination MAC address of the first GMRP multicast data packet and locate the GMRP proxy multicast entry in the table. The first GMRP multicast data packet is sent according to the outgoing port and outgoing VLAN of the outgoing port information of the proxy multicast table entry; wherein, before receiving the first GMRP multicast data packet, the method further includes, Configure the GMRP proxy port; the client directly connected to the GMRP proxy port does not support GMRP. Generate the GMRP proxy multicast table entry; the key value of the GMRP proxy multicast table entry is the multicast group MAC address of the multicast group that the client wants to join, and the outgoing port and the outgoing VLAN are the GMRP proxy port and its VLAN; Generate GMRP join messages for the GMRP proxy port; The proxy sends a GMRP join message generated by the proxy to a port in the same VLAN as the GMRP proxy port and with GMRP enabled; so that other devices generate dynamic multicast MAC address entries for the ports that receive the GMRP join message generated by the proxy.
2. The method according to claim 1, characterized in that, The method also includes, Receive the second GMRP multicast data packet; It was determined that no matching dynamic multicast MAC address entry was found for the destination MAC address of the second GMRP multicast data packet; It was determined that the destination MAC address of the second GMRP multicast data packet did not contain the GMRP proxy multicast entry; Discard the second GMRP multicast data packet received.
3. The method according to claim 1, characterized in that, The method also includes, Receive third GMRP multicast data packets; The destination MAC address of the third GMRP multicast data packet is determined, and a matching dynamic multicast MAC address entry is found in the table. The third GMRP multicast data packet is sent according to the outgoing port and outgoing VLAN of the outgoing port information of the dynamic multicast MAC address table entry.
4. The method according to claim 3, characterized in that, Before receiving the first GMRP multicast data packet, the method further includes, Receive GMRP join message; The dynamic multicast MAC address table entry is generated based on the multicast group address of the received GMRP join message as the key value. Record the outgoing port and outgoing VLAN of the dynamic multicast MAC address entry as the receiving port and its VLAN for the GMRP add message.
5. A multicast data forwarding device, characterized in that, The device includes, The receiving module receives the first GMRP multicast data packet; The multicast forwarding module determines that no matching dynamic multicast MAC address entry is found in the destination MAC address table for the first GMRP multicast data packet; Determine the destination MAC address of the first GMRP multicast data packet and locate the GMRP proxy multicast entry in the table. The sending module sends the first GMRP multicast data packet according to the outgoing port and outgoing VLAN of the outgoing port information of the proxy multicast table entry; The device also includes a configuration module for configuring the GMRP proxy port; the client directly connected to the GMRP proxy port does not support GMRP. The multicast forwarding module is also used to generate the GMRP proxy multicast table entry; the key value of the GMRP proxy multicast table entry is the multicast group MAC address of the multicast group that the client wants to join, and the outgoing port and the outgoing VLAN are the GMRP proxy port and its VLAN. The proxy module is used to proxy the generation of GMRP join messages for the GMRP proxy port; The sending module is also used to send GMRP join messages generated by the proxy through a port in the same VLAN as the GMRP proxy port and with GMRP enabled.
6. The device according to claim 5, characterized in that, The receiving module is also used to receive a second GMRP multicast data packet; The multicast forwarding module determines that no matching dynamic multicast MAC address entry is found for the destination MAC address of the second GMRP multicast data packet; and discards the second GMRP multicast data packet because no GMRP proxy multicast entry is found for the destination MAC address of the second GMRP multicast data packet.
7. The device according to claim 5, characterized in that, The receiving module is also used to receive a third GMRP multicast data packet; The multicast forwarding module is also used to determine the destination MAC address of the third GMRP multicast data packet and find a matching dynamic multicast MAC address entry in the table. The sending module is further configured to send the third GMRP multicast data packet according to the outgoing port and outgoing VLAN of the outgoing port information of the dynamic multicast MAC address table entry.
8. The device according to claim 5, characterized in that, The device also includes, The receiving module is also used to receive GMRP join messages; The multicast forwarding module generates the dynamic multicast MAC address entry based on the multicast group address of the received GMRP join message as the key value; and records the outgoing port and outgoing VLAN of the dynamic multicast MAC address entry as the receiving port and its VLAN of the GMRP join message.
Citation Information
Patent Citations
Forwarding multicast data packets using bit index explicit replication (BIER) for BIER-incapable network devices
CN111049874A